From libssh2-devel-bounces@cool.haxx.se  Tue Nov  5 21:44:02 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA5KhS4d029523;
	Tue, 5 Nov 2013 21:43:55 +0100
Received: from mail-we0-f176.google.com (mail-we0-f176.google.com
 [74.125.82.176])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA5KhQwG029369
 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Tue, 5 Nov 2013 21:43:26 +0100
Received: by mail-we0-f176.google.com with SMTP id w62so3987522wes.35
 for <libssh2-devel@cool.haxx.se>; Tue, 05 Nov 2013 12:43:21 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:mime-version:date:message-id:subject:from:to
 :content-type;
 bh=xKRmNpanqrr1Fm8mMStXWshPJSdQQcBornJ/OKpxv88=;
 b=gRmewkJIBhlJz6vOH1y39DyYvjyEXLJSFC1FSCgcWxhFDoCCOvCZRt/Ic6U3o4gSqS
 Yfp/QcXA4rqyJwDP39OvFPWjx8QvGFhAayDP/rUaU3Haq4VKLGa5oYw3vUFHqdN1CMD6
 X3I+qLYIL6GxBMnr1LPp9tjYBnO6zi8TCpuVDYjnW2xX4cJMeFOAOiphX2sT40lCIS5C
 /bE8ZdMuKQu/IIMGXY2Sp4b9uDv4kFA81MCfAzIl479T98/GIh/MObibczbFFzCPZmMr
 5+MiAJ87pRebjiXAOPijESDJVHDODxkxhjPYPZzvJS0hSIz/Gia9BwnJ2+nl8bqR8zkp
 H/sg==
X-Gm-Message-State: ALoCoQkkytPCTX1QWpCgXlWxJQAEbwp1AasHW8RSURUvdCawbggJLziJIMR2+SQAVaZ6SCTHcwbU
MIME-Version: 1.0
X-Received: by 10.194.219.1 with SMTP id pk1mr11085984wjc.36.1383684200224;
 Tue, 05 Nov 2013 12:43:20 -0800 (PST)
Received: by 10.194.133.71 with HTTP; Tue, 5 Nov 2013 12:43:20 -0800 (PST)
Date: Tue, 5 Nov 2013 21:43:20 +0100
Message-ID: <CALyF-eqYkGURMbZbV1KooLf64DEKeN7vi_1M7fmpAe_RM8hMeQ@mail.gmail.com>
Subject: No support for ssh2 stream timeout in WordPress
From: =?UTF-8?Q?Gr=C3=A9goire_Noyelle?= <hello@gregoirenoyelle.com>
To: libssh2-devel@cool.haxx.se
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============1952626780=="
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

--===============1952626780==
Content-Type: multipart/alternative; boundary=001a11c1a2f03c713c04ea7415dd

--001a11c1a2f03c713c04ea7415dd
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Hi
I use on Linode VPS, Centos 6.3.
The update are made by ssh connexion and I install of course lisssh2 v 1.4.=
2
I get many warming in debug mode like this:

``````
stream_set_timeout(): No support for ssh2 stream timeout. Please recompile
 with libssh2 >=3D 1.2.9

``````

Have you an idea?
Thanks

Gr=C3=A9goire

--001a11c1a2f03c713c04ea7415dd
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hi</div><div>I use on Linode VPS, Centos 6.3.</div><d=
iv>The update are made by ssh connexion and I install of course lisssh2 v 1=
.4.2</div><div>I get many warming in debug mode like this:</div><div><br></=
div>
<div>``````</div><div>stream_set_timeout(): No support for ssh2 stream time=
out. Please recompile<br></div><div>=C2=A0with libssh2 &gt;=3D 1.2.9</div><=
div><br></div><div>``````</div><div><br></div><div>Have you an idea?<br></d=
iv>
<div>Thanks</div><div><br></div><div>Gr=C3=A9goire</div></div>

--001a11c1a2f03c713c04ea7415dd--

--===============1952626780==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

--===============1952626780==--

From libssh2-devel-bounces@cool.haxx.se  Tue Nov  5 22:23:37 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA5LNT3T029278;
	Tue, 5 Nov 2013 22:23:35 +0100
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA5LNQ3I029241
 for <libssh2-devel@cool.haxx.se>; Tue, 5 Nov 2013 22:23:27 +0100
Received: from int-mx12.intmail.prod.int.phx2.redhat.com
 (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25])
 by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id rA5LNNYR030708
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK);
 Tue, 5 Nov 2013 16:23:23 -0500
Received: from nbkamil.localnet (vpn1-6-18.ams2.redhat.com [10.36.6.18])
 by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id
 rA5LNM3Q003014; Tue, 5 Nov 2013 16:23:23 -0500
From: Kamil Dudka <kdudka@redhat.com>
To: =?ISO-8859-1?Q?Gr=E9goire?= Noyelle <hello@gregoirenoyelle.com>
Subject: Re: No support for ssh2 stream timeout in WordPress
Date: Tue, 05 Nov 2013 22:21:53 +0100
Message-ID: <49424594.7QmZnRNyBN@nbkamil>
User-Agent: KMail/4.10.5 (Linux/3.10.17-gentoo; KDE/4.10.5; x86_64; ; )
In-Reply-To: <CALyF-eqYkGURMbZbV1KooLf64DEKeN7vi_1M7fmpAe_RM8hMeQ@mail.gmail.com>
References: <CALyF-eqYkGURMbZbV1KooLf64DEKeN7vi_1M7fmpAe_RM8hMeQ@mail.gmail.com>
MIME-Version: 1.0
X-Scanned-By: MIMEDefang 2.68 on 10.5.11.25
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id
 rA5LNQ3I029241
Cc: libssh2-devel@cool.haxx.se
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="iso-8859-1"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id rA5LNT3T029278

On Tuesday, November 05, 2013 21:43:20 Grégoire Noyelle wrote:
> Hi
> I use on Linode VPS, Centos 6.3.
> The update are made by ssh connexion and I install of course lisssh2 v 1.4.2
> I get many warming in debug mode like this:
> 
> ``````
> stream_set_timeout(): No support for ssh2 stream timeout. Please recompile
>  with libssh2 >= 1.2.9
> 
> ``````
> 
> Have you an idea?

You need to recompile the PHP binding of libssh2 against up2date libssh2-devel.

Kamil

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Tue Nov  5 22:32:52 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA5LWmcV006453;
	Tue, 5 Nov 2013 22:32:50 +0100
Received: from mail-we0-f170.google.com (mail-we0-f170.google.com
 [74.125.82.170])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA5LWkrB006387
 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Tue, 5 Nov 2013 22:32:47 +0100
Received: by mail-we0-f170.google.com with SMTP id u57so4123451wes.15
 for <libssh2-devel@cool.haxx.se>; Tue, 05 Nov 2013 13:32:42 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:references:mime-version:in-reply-to:content-type
 :content-transfer-encoding:message-id:cc:from:subject:date:to;
 bh=4vpY3XGxyNN7uXpdfGuFrnJrLUH/SofQMgiBUuZuxxo=;
 b=Uqh0ABXA6inZo8u2F5se+rc40bW73FIdUC20/+izH6XnHUZBOWgZzQPl6syeuYfy28
 nUhbe9Ex56UE69nbcT+thtuwxmcF9jLI5kmTb44GGJWUpN6SH4+bAartpyvmwzJuCU/+
 CwI7lHiT/GF2fBKcfXBwlHgGR59fiIWyWXzdzRknGwVTBtwcxiAaTLTvOMhBEgPgTIPN
 szDef7kma86NEr4cfJ47FLJfBE50p9mxBo8K7C/oDRqzR250lLUgzNq9NkkusGCXayzR
 Xo0Zwkh3hptHmtNDKv9zzEIJLXXu2HFAruKcUDPuGc9WOJk1NMJMOasSQkQa/U6bDE+P
 +PeA==
X-Gm-Message-State: ALoCoQnwFV3Irbi+U9sAvGsINnRD+nHDs9iwIf0OAUtGWTTfGgc7nT6Hedu+x6EvS65gkkbKBS3H
X-Received: by 10.180.39.212 with SMTP id r20mr18583790wik.13.1383687162902;
 Tue, 05 Nov 2013 13:32:42 -0800 (PST)
Received: from [192.168.1.102] ([89.159.226.254])
 by mx.google.com with ESMTPSA id pi6sm17835788wic.3.2013.11.05.13.32.42
 for <multiple recipients>
 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
 Tue, 05 Nov 2013 13:32:42 -0800 (PST)
References: <CALyF-eqYkGURMbZbV1KooLf64DEKeN7vi_1M7fmpAe_RM8hMeQ@mail.gmail.com>
 <49424594.7QmZnRNyBN@nbkamil>
Mime-Version: 1.0 (1.0)
In-Reply-To: <49424594.7QmZnRNyBN@nbkamil>
Message-Id: <8C41121B-3898-4CAD-BB0C-0385CE9B6E03@gregoirenoyelle.com>
X-Mailer: iPad Mail (11B511)
From: =?utf-8?Q?Gr=C3=A9goire_Noyelle?= <hello@gregoirenoyelle.com>
Subject: Re: No support for ssh2 stream timeout in WordPress
Date: Tue, 5 Nov 2013 22:32:42 +0100
To: Kamil Dudka <kdudka@redhat.com>
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id
 rA5LWkrB006387
Cc: "libssh2-devel@cool.haxx.se" <libssh2-devel@cool.haxx.se>
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by giant.haxx.se id rA5LWmcV006453


> 
>> On Tuesday, November 05, 2013 21:43:20 GrÃ©goire Noyelle wrote:
>> Hi
>> I use on Linode VPS, Centos 6.3.
>> The update are made by ssh connexion and I install of course lisssh2 v 1.4.2
>> I get many warming in debug mode like this:
>> 
>> ``````
>> stream_set_timeout(): No support for ssh2 stream timeout. Please recompile
>> with libssh2 >= 1.2.9
>> 
>> ``````
>> 
>> Have you an idea?
> 
> You need to recompile the PHP binding of libssh2 against up2date libssh2-devel.
> 
> Kamil

Thanks a lot Kamil. 

Right now I'm not a console ninja. Have you a tutorial online about that? Or could you explain a little bit more

GrÃ©goire
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Tue Nov  5 22:49:39 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA5LnOeb024697;
	Tue, 5 Nov 2013 22:49:37 +0100
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA5LnLvs024619
 for <libssh2-devel@cool.haxx.se>; Tue, 5 Nov 2013 22:49:22 +0100
Received: from int-mx09.intmail.prod.int.phx2.redhat.com
 (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22])
 by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id rA5LnIcS003006
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK);
 Tue, 5 Nov 2013 16:49:18 -0500
Received: from nbkamil.localnet (vpn1-6-18.ams2.redhat.com [10.36.6.18])
 by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id
 rA5LnHSj019361; Tue, 5 Nov 2013 16:49:17 -0500
From: Kamil Dudka <kdudka@redhat.com>
To: =?ISO-8859-1?Q?Gr=E9goire?= Noyelle <hello@gregoirenoyelle.com>
Subject: Re: No support for ssh2 stream timeout in WordPress
Date: Tue, 05 Nov 2013 22:47:47 +0100
Message-ID: <2456224.UazGvMT8gT@nbkamil>
User-Agent: KMail/4.10.5 (Linux/3.10.17-gentoo; KDE/4.10.5; x86_64; ; )
In-Reply-To: <8C41121B-3898-4CAD-BB0C-0385CE9B6E03@gregoirenoyelle.com>
References: <CALyF-eqYkGURMbZbV1KooLf64DEKeN7vi_1M7fmpAe_RM8hMeQ@mail.gmail.com>
 <49424594.7QmZnRNyBN@nbkamil>
 <8C41121B-3898-4CAD-BB0C-0385CE9B6E03@gregoirenoyelle.com>
MIME-Version: 1.0
X-Scanned-By: MIMEDefang 2.68 on 10.5.11.22
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id
 rA5LnLvs024619
Cc: libssh2-devel@cool.haxx.se
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="iso-8859-1"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id rA5LnOeb024697

On Tuesday, November 05, 2013 22:32:42 Grégoire Noyelle wrote:
> >> On Tuesday, November 05, 2013 21:43:20 Grégoire Noyelle wrote:
> >> Hi
> >> I use on Linode VPS, Centos 6.3.
> >> The update are made by ssh connexion and I install of course lisssh2 v
> >> 1.4.2 I get many warming in debug mode like this:
> >> 
> >> ``````
> >> stream_set_timeout(): No support for ssh2 stream timeout. Please
> >> recompile
> >> with libssh2 >= 1.2.9
> >> 
> >> ``````
> >> 
> >> Have you an idea?
> > 
> > You need to recompile the PHP binding of libssh2 against up2date
> > libssh2-devel.
> > 
> > Kamil
> 
> Thanks a lot Kamil.
> 
> Right now I'm not a console ninja. Have you a tutorial online about that? Or
> could you explain a little bit more

You can find instructions for example here (for CentOS 6.2):

http://php.net/manual/en/ssh2.installation.php

I am not sure what the version of libssh2{,-devel} on your box is, but RHEL-6 
does ship new enough version of libssh2 packages.  Hence the build of libssh2 
from sources is not necessary on an up2date RHEL-6 machine:

http://rhn.redhat.com/errata/RHBA-2013-0329.html

Kamil

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Wed Nov  6 06:37:05 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA65akUT024319;
	Wed, 6 Nov 2013 06:37:00 +0100
Received: from mail-wg0-f54.google.com (mail-wg0-f54.google.com [74.125.82.54])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA65ahTJ024250
 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Wed, 6 Nov 2013 06:36:43 +0100
Received: by mail-wg0-f54.google.com with SMTP id c11so4351145wgh.21
 for <libssh2-devel@cool.haxx.se>; Tue, 05 Nov 2013 21:36:37 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:references:mime-version:in-reply-to:content-type
 :content-transfer-encoding:message-id:cc:from:subject:date:to;
 bh=dkaQnd91QxJUjOORtSKscQogWyupmHTipDx2HCkCuYk=;
 b=A+ihGXz+f/js2cPLcVb+WhUidLHUU6RWj9numrU5Vkuip0dH8yekTPWV97LCPXna8P
 8c6hFAWETf8xPob+059/CTTQUrrXClaKQiIv5SRq+1NJoIwqQuMFj3bwDwV6ZkIj9+rC
 T/F+22VktSIZbMLw3W5FOelHy2caxZAFfmixdkl/jCq+hMpoqa4LYGtWieeTE4lEAgQk
 HyfuwKpNQXRx2ZyGevH8ghjESHv3lv/iqCpj8zcwf/sS5bJEgFULpNpQO3KFFpwfzJn3
 pxpt3rGWue5WpOo8xv3/gUwxLQV813fTXNFqcK+vMVadUp5F+Thwfhku1DylZ9TfdiHb
 OZfQ==
X-Gm-Message-State: ALoCoQlvJCJ2W+jh37Teg40JpsCueOPb+aMyUkDOZOfvUVX3s3SPvJNR9CSM9zvpQVK5BQ6kPz9h
X-Received: by 10.194.20.230 with SMTP id q6mr251065wje.49.1383716197653;
 Tue, 05 Nov 2013 21:36:37 -0800 (PST)
Received: from [192.168.1.102] ([89.159.226.254])
 by mx.google.com with ESMTPSA id dj8sm20596394wid.2.2013.11.05.21.36.36
 for <multiple recipients>
 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
 Tue, 05 Nov 2013 21:36:36 -0800 (PST)
References: <CALyF-eqYkGURMbZbV1KooLf64DEKeN7vi_1M7fmpAe_RM8hMeQ@mail.gmail.com>
 <49424594.7QmZnRNyBN@nbkamil>
 <8C41121B-3898-4CAD-BB0C-0385CE9B6E03@gregoirenoyelle.com>
 <2456224.UazGvMT8gT@nbkamil>
Mime-Version: 1.0 (1.0)
In-Reply-To: <2456224.UazGvMT8gT@nbkamil>
Message-Id: <2FD7287E-B324-4D86-A479-067BB113447D@gregoirenoyelle.com>
X-Mailer: iPad Mail (11B511)
From: =?utf-8?Q?Gr=C3=A9goire_Noyelle?= <hello@gregoirenoyelle.com>
Subject: Re: No support for ssh2 stream timeout in WordPress
Date: Wed, 6 Nov 2013 06:36:37 +0100
To: Kamil Dudka <kdudka@redhat.com>
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id
 rA65ahTJ024250
Cc: "libssh2-devel@cool.haxx.se" <libssh2-devel@cool.haxx.se>
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by giant.haxx.se id rA65akUT024319



> Le 5 nov. 2013 Ã  22:47, Kamil Dudka <kdudka@redhat.com> a Ã©crit :
> 
> On Tuesday, November 05, 2013 22:32:42 GrÃ©goire Noyelle wrote:
>>>> On Tuesday, November 05, 2013 21:43:20 GrÃ©goire Noyelle wrote:
>>>> Hi
>>>> I use on Linode VPS, Centos 6.3.
>>>> The update are made by ssh connexion and I install of course lisssh2 v
>>>> 1.4.2 I get many warming in debug mode like this:
>>>> 
>>>> ``````
>>>> stream_set_timeout(): No support for ssh2 stream timeout. Please
>>>> recompile
>>>> with libssh2 >= 1.2.9
>>>> 
>>>> ``````
>>>> 
>>>> Have you an idea?
>>> 
>>> You need to recompile the PHP binding of libssh2 against up2date
>>> libssh2-devel.
>>> 
>>> Kamil
>> 
>> Thanks a lot Kamil.
>> 
>> Right now I'm not a console ninja. Have you a tutorial online about that? Or
>> could you explain a little bit more
> 
> You can find instructions for example here (for CentOS 6.2):
> 
> http://php.net/manual/en/ssh2.installation.php
> 
> I am not sure what the version of libssh2{,-devel} on your box is, but RHEL-6 
> does ship new enough version of libssh2 packages.  Hence the build of libssh2 
> from sources is not necessary on an up2date RHEL-6 machine:
> 
> http://rhn.redhat.com/errata/RHBA-2013-0329.html
> 
> Kamil

Thanks so much Kamil.
Cheers 
GrÃ©goire 
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Sat Nov  9 11:59:48 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA9AxGCW030258;
	Sat, 9 Nov 2013 11:59:40 +0100
Received: from mx.uxnr.de (mx.uxnr.de
 [IPv6:2a00:1828:2000:378:2525:0:59ee:542f])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rA9AxFiV030155
 for <libssh2-devel@cool.haxx.se>; Sat, 9 Nov 2013 11:59:15 +0100
Received: from [10.1.1.143] (p3EE2DCDA.dip0.t-ipconnect.de [62.226.220.218])
 by mx.uxnr.de (Postfix) with ESMTPSA id 6EDA21C5A334
 for <libssh2-devel@cool.haxx.se>; Sat,  9 Nov 2013 11:59:05 +0100 (CET)
X-DKIM: OpenDKIM Filter v2.6.8 mx.uxnr.de 6EDA21C5A334
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=marc-hoersken.de;
 s=picard; t=1383994745;
 bh=H9NG2y1DogTKbkQisucqD+1yvYQ5mB9CiWiMRWjnLEQ=;
 h=Date:From:To:Subject:References:In-Reply-To:From;
 b=giOE5pdWzANzZkqLMcbPzCEllrSM7RBNf7t9nk2+iiMPboCmyBKxD0+veShgT8ANI
 6Q87LT7Nbj9DvT/2r+LPMP7GaTcH8CZxTOuupXcaCvE9RqcrhlallulOBxczcgzQ5W
 mwkOJYRFVu/vpZYcxJRasArG1t1qlDMmVYr10wb4=
Message-ID: <527E1575.90703@marc-hoersken.de>
Date: Sat, 09 Nov 2013 11:59:01 +0100
From: =?ISO-8859-1?Q?Marc_H=F6rsken?= <info@marc-hoersken.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
 rv:24.0) Gecko/20100101 Thunderbird/24.1.0
MIME-Version: 1.0
To: libssh2 development <libssh2-devel@cool.haxx.se>
Subject: Re: [PATCH] Added Windows Cryptography API: Next Generation backend
References: <CAFJA8CMhx_oDQnJ-Jdb39MzLUVwF3gm2+RQcbkayN9Ckk_p+mQ@mail.gmail.com>
 <20130601231229.11420.qmail@stuge.se>
 <CAFJA8CMupB-pza-UEC8Q7mE6JOdeHEqpFGDzjswe6hWwoED6BA@mail.gmail.com>
 <20130602175922.5525.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
 <20130922151824.23037.qmail@stuge.se> <525A8106.40603@marc-hoersken.de>
 <alpine.DEB.2.00.1310271045560.15605@tvnag.unkk.fr>
In-Reply-To: <alpine.DEB.2.00.1310271045560.15605@tvnag.unkk.fr>
X-Enigmail-Version: 1.6
X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,T_DKIM_INVALID
 autolearn=unavailable version=3.3.2
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on picard.vpn.uxnr.de
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="iso-8859-1"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id rA9AxGCW030258

Am 27.10.2013 10:47, schrieb Daniel Stenberg:
> On Sun, 13 Oct 2013, Marc Hörsken wrote:
>
>>>> I wanted to send you a new patch in order to get an idea.
>>
>> any update on your changes yet?
>
> What is the state of the Windows Cryptography backend right now?
>
> I do want to get back to the release track and I'd prefer to do that
> without getting stabbed in the back by Peter again.

Peter, could you please give us an update on your plans?

My patch is stuck waiting for nearly half a year now.
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Sun Nov 10 23:27:12 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAAMPmjK002664;
	Sun, 10 Nov 2013 23:26:06 +0100
Received: from nm35-vm6.bullet.mail.ir2.yahoo.com
 (nm35-vm6.bullet.mail.ir2.yahoo.com [212.82.97.129])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAAMPkwL002620
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Sun, 10 Nov 2013 23:25:46 +0100
Received: from [212.82.98.126] by nm35.bullet.mail.ir2.yahoo.com with NNFMP;
 10 Nov 2013 22:25:42 -0000
Received: from [212.82.108.243] by tm19.bullet.mail.ir2.yahoo.com with NNFMP;
 10 Nov 2013 22:25:42 -0000
Received: from [127.0.0.1] by omp1008.mail.ird.yahoo.com with NNFMP;
 10 Nov 2013 22:25:42 -0000
X-Yahoo-Newman-Property: ymail-3
X-Yahoo-Newman-Id: 416371.73955.bm@omp1008.mail.ird.yahoo.com
Received: (qmail 96001 invoked by uid 60001); 10 Nov 2013 22:25:42 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s1024;
 t=1384122342; bh=QGQLkde7OBJZAifVfmueOBExjypYXlJNlbB1mDTbyW0=;
 h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:Message-ID:Date:From:Reply-To:Subject:To:MIME-Version:Content-Type:Content-Transfer-Encoding;
 b=N1H5BJ/UA8mC27IQXTjD/MUDh+qjgXk8bCrEg3vov1l2H2bhscGANyjWUFmIUD70H0YNZEm9jnM+Cw+o529KuRMS1qzNR33bt6eBEH4U8svbg2DZTSNOipV9moZpu6t6MKKbLtd194BAVOXZFBipRgM6y51J1q07GFyL5p81Fxk=
DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.co.uk;
 h=X-YMail-OSG:Received:X-Rocket-MIMEInfo:X-Mailer:Message-ID:Date:From:Reply-To:Subject:To:MIME-Version:Content-Type:Content-Transfer-Encoding;
 b=hafrqszN1+VZSrr2doabmH0p98rA6A+5U609lW9s0Vv/pm2+1xUURGN5oahzyMbB0GK584yfRYmnkh2pWJv7gHUM92TLYvXIOf5SVFe1ruNOQVIU522fK/IG1LicktwnfvOwv82gTq2Sr+dnZI62vmOJG65CqknJGc6bdCfoQ3o=;
X-YMail-OSG: 4yroYBYVM1k8tED7DTCkGT7Ot7iExeF93VYcVA7v5DWi4D4
 F9nYDXtGOwk6.ZF0iVvr9SwsYJOat3wCjsa7nqnCZ0WWJj75UHNGmDzPuPHq
 j0Cmz39maXtdv60.6mGxZ6hyk5xHx760kRYtx.2d.ZjzbJVYezBsMBB0f48Q
 JtKLFb.rB5.qMFf6WzzfYOVEgPp.yos5q_cV2qQBzKv6kNsHC3wYTh55dMfH
 OaVY25dzIxoiXyx.G2HAPUJaTkYvW7DdCNoGo4pLTgu9NcN492oPWLyEdbQZ
 bsjB.KimQRefKkqr2N1UqGbXHL2kV4204hpJjb0bWsEpaXM30YZjgkN0YVPl
 xeD8qdUnJjmquyUCD1Bm.HZMN1EmtHhD3KJWsb521hCqoDnkeopYQXtOja11
 gZ.ZCs8Nx6AyICtoIM7UZMZSIkBSfR2_LCImThRbROmOTIK7_jF9116RxXQM
 N0AFcoUDNhEoqKSU36PAuNYk1RiHiFuEucpiPTawg3V..tJ890mqvht.QtjD
 k61pW0mq5IMIouZ_Cg0PpD1ff1IM2P5Tiw4cYX17MBUn.P0WDL1J8tztBXsM
 d3OosaAe.44vIoXDZ8B7QGUtM8H1IgS3UNPQ5ko2yjSBDjO04StrcS25atO6
 bP5avCVfM13z.n1qm8yFm.fI-
Received: from [86.31.253.68] by web172605.mail.ir2.yahoo.com via HTTP;
 Sun, 10 Nov 2013 22:25:42 GMT
X-Rocket-MIMEInfo: 002.001,
 SGksCgpJIGFtIGNyb3NzIGNvbXBpbGluZyBsaWJzc2gyIGZvciB1c2Ugb24gWmF1cnVzIHVzaW5nIHRoZSBBUk0gUXVhbnR1bXN0ZXAgdG9vbGNoYWluLgoKRmlyc3QgSSBidWlsdCB6bGliIGZvciBBUk0gdGhlbiBJIGNvbmZpZ3VyZSBsaWJzc2gyOgoKLi9jb25maWd1cmUgLS1ob3N0IGFybS1xdWFudHVtc3RlcC1saW51eC1nbnUgLS13aXRoLWxpYnotcHJlZml4PS9Vc2Vycy91c2VybmFtZS9aYXVydXMvQnVpbGRTeXN0ZW0gLS13aXRoLWxpYnNzbC1wcmVmaXg9L1VzZXJzL3VzZXJuYW1lL1phdXJ1cy9vcGUBMAEBAQE-
X-Mailer: YahooMailWebService/0.8.163.597
Message-ID: <1384122342.93602.YahooMailNeo@web172605.mail.ir2.yahoo.com>
Date: Sun, 10 Nov 2013 22:25:42 +0000 (GMT)
From: Lyndon Hill <emptystate@yahoo.co.uk>
Subject: Explicit zlib path not used by configure for building tests
To: "libssh2-devel@cool.haxx.se" <libssh2-devel@cool.haxx.se>
MIME-Version: 1.0
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id
 rAAMPkwL002620
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: Lyndon Hill <emptystate@yahoo.co.uk>,
        libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="iso-8859-1"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id rAAMPmjK002664

Hi,

I am cross compiling libssh2 for use on Zaurus using the ARM Quantumstep toolchain.

First I built zlib for ARM then I configure libssh2:

./configure --host arm-quantumstep-linux-gnu --with-libz-prefix=/Users/username/Zaurus/BuildSystem --with-libssl-prefix=/Users/username/Zaurus/openssl-1.0.1e

In my BuildSystem dir you can find subdirectories for include and lib containing zlib headers and libz.so.

However make fails when building the tests:

Making all in tests
/bin/sh ../libtool --tag=CC   --mode=link arm-quantumstep-linux-gnu-gcc  -g -O2   -o ssh2 ssh2.o ../src/libssh2.la -ldl
libtool: link: arm-quantumstep-linux-gnu-gcc -g -O2 -o .libs/ssh2 ssh2.o  ../src/.libs/libssh2.so -ldl -Wl,-rpath -Wl,/usr/local/lib
/Developer/Xtoolchain/i386-apple-darwin/gcc-2.95.3-glibc-2.2.2/arm-quantumstep-linux-gnu/arm-quantumstep-linux-gnu/bin/ld: warning: libz.so.1, needed by ../src/.libs/libssh2.so, not found (try using -rpath or -rpath-link)
../src/.libs/libssh2.so: undefined reference to `deflate'
../src/.libs/libssh2.so: undefined reference to `inflate'
../src/.libs/libssh2.so: undefined reference to `inflateInit_'
../src/.libs/libssh2.so: undefined reference to `deflateInit_'
../src/.libs/libssh2.so: undefined reference to `inflateEnd'
../src/.libs/libssh2.so: undefined reference to `deflateEnd'
collect2: ld returned 1 exit status
make[1]: *** [ssh2] Error 1
make: *** [all-recursive] Error 1

Thanks

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 11 01:33:11 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAB0VsJp011941;
	Mon, 11 Nov 2013 01:32:08 +0100
Received: from foo.stuge.se (qmailr@foo.stuge.se [212.116.89.98])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAB0VqoX011870
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Mon, 11 Nov 2013 01:31:52 +0100
Received: (qmail 2066 invoked by uid 501); 11 Nov 2013 00:31:52 -0000
Message-ID: <20131111003152.2065.qmail@stuge.se>
Date: Mon, 11 Nov 2013 01:31:52 +0100
From: Peter Stuge <peter@stuge.se>
To: libssh2-devel@cool.haxx.se
Subject: Re: Explicit zlib path not used by configure for building tests
Mail-Followup-To: libssh2-devel@cool.haxx.se
References: <1384122342.93602.YahooMailNeo@web172605.mail.ir2.yahoo.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <1384122342.93602.YahooMailNeo@web172605.mail.ir2.yahoo.com>
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

Lyndon Hill wrote:
> I am cross compiling libssh2 for use on Zaurus using the ARM Quantumstep toolchain.
> However make fails when building the tests:

Yes, this looks familiar. I think I may have fixed this in my local
branch with preparations for Marc's WinCNG support. I'll look into
it either tonight or tomorrow.


//Peter
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Tue Nov 12 08:34:01 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAC7XWIj031326;
	Tue, 12 Nov 2013 08:33:53 +0100
Received: from foo.stuge.se (qmailr@foo.stuge.se [212.116.89.98])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAC7XUTF031307
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Tue, 12 Nov 2013 08:33:30 +0100
Received: (qmail 10411 invoked by uid 501); 12 Nov 2013 07:33:30 -0000
Message-ID: <20131112073330.10410.qmail@stuge.se>
Date: Tue, 12 Nov 2013 08:33:30 +0100
From: Peter Stuge <peter@stuge.se>
To: libssh2-devel@cool.haxx.se
Subject: Re: Explicit zlib path not used by configure for building tests
Mail-Followup-To: libssh2-devel@cool.haxx.se
References: <1384122342.93602.YahooMailNeo@web172605.mail.ir2.yahoo.com>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <1384122342.93602.YahooMailNeo@web172605.mail.ir2.yahoo.com>
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

Lyndon Hill wrote:
> make fails when building the tests:

I don't see why this would still happen, at least not with current
git master, but maybe also not with the latest release.

Could you please tar up your libssh2 directory and send the tarball to me?

Then I can actually find out what has gone wrong for you.


//Peter
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Wed Nov 13 01:36:36 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD0aBUg027623;
	Wed, 13 Nov 2013 01:36:30 +0100
Received: from earth.stuge.se (earth.stuge.se [212.116.89.126])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD0a86h027585
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Wed, 13 Nov 2013 01:36:08 +0100
Received: (qmail 28001 invoked from network); 13 Nov 2013 00:35:06 -0000
Received: from unknown (HELO earth.stuge.se) (127.0.0.1)
 by localhost with SMTP; 13 Nov 2013 00:35:06 -0000
MIME-Version: 1.0
From: "libssh2 Trac" <trac@libssh2.stuge.se>
X-Trac-Version: 1.0dev
Precedence: bulk
Auto-Submitted: auto-generated
X-Mailer: Trac 1.0dev, by Edgewall Software
To: mark.mcpherson@emc.com
X-Trac-Project: libssh2
Date: Wed, 13 Nov 2013 00:35:06 -0000
X-URL: https://trac.libssh2.org/
Subject: [libssh2] #279: libssh2 core dumps with FIPS openssl libraries
X-Trac-Ticket-URL: https://trac.libssh2.org/ticket/279
Message-ID: <051.76fa13c8313aee46e9ecea3375356f4a@libssh2.stuge.se>
X-Trac-Ticket-ID: 279
X-MIME-Autoconverted: from base64 to 8bit by giant.haxx.se id rAD0a86h027585
Cc: libssh2-devel@cool.haxx.se
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Reply-To: trac@libssh2.stuge.se,
        libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

#279: libssh2 core dumps with FIPS openssl libraries
----------------------------+--------------------
 Reporter:  Mark_McPherson  |       Owner:
     Type:  defect          |      Status:  new
 Priority:  high            |   Milestone:  1.4.3
Component:  crypto          |     Version:  1.4.2
 Keywords:  FIPS OpenSSL    |  Blocked By:
   Blocks:                  |
----------------------------+--------------------
 Using:
 libssh2 - 1.4.3
 OpenSSL - 1.0.1e
 OpenSSL FIPS module - 2.0.5

 When using the OpenSSL libraries in FIPS mode, the function call
 EVP_DigestInit() is actually #defined to FIPS_digestinit().
 Unfortunately wheres EVP_DigestInit() initialises the context and then
 calls EVP_DigestInit_ex(), this function assumes that the context has been
 pre-initialised and crashes when it isn't.

 The fix is to pre-initialise the context using EVP_MD_CTX_init() before
 calling EVP_DigestInit.

 I attach a patch to openssl.h/.c to fix this problem.

-- 
Ticket URL: <https://trac.libssh2.org/ticket/279>
libssh2 <https://trac.libssh2.org/>
C library for writing portable SSH2 clients

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Wed Nov 13 01:45:29 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD0jPN8001884;
	Wed, 13 Nov 2013 01:45:28 +0100
Received: from giant.haxx.se (dast@localhost.localdomain [127.0.0.1])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD0jMvm001877
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Wed, 13 Nov 2013 01:45:22 +0100
Received: from localhost (dast@localhost)
 by giant.haxx.se (8.14.4/8.14.4/Submit) with ESMTP id rAD0jMBu001874
 for <libssh2-devel@cool.haxx.se>; Wed, 13 Nov 2013 01:45:22 +0100
X-Authentication-Warning: giant.haxx.se: dast owned process doing -bs
Date: Wed, 13 Nov 2013 01:45:22 +0100 (CET)
From: Daniel Stenberg <daniel@haxx.se>
X-X-Sender: dast@giant.haxx.se
To: libssh2 development <libssh2-devel@cool.haxx.se>
Subject: Re: [PATCH] Added Windows Cryptography API: Next Generation
 backend
In-Reply-To: <527E1575.90703@marc-hoersken.de>
Message-ID: <alpine.DEB.2.00.1311130144060.3238@tvnag.unkk.fr>
References: <CAFJA8CMhx_oDQnJ-Jdb39MzLUVwF3gm2+RQcbkayN9Ckk_p+mQ@mail.gmail.com>
 <20130601231229.11420.qmail@stuge.se>
 <CAFJA8CMupB-pza-UEC8Q7mE6JOdeHEqpFGDzjswe6hWwoED6BA@mail.gmail.com>
 <20130602175922.5525.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
 <20130922151824.23037.qmail@stuge.se> <525A8106.40603@marc-hoersken.de>
 <alpine.DEB.2.00.1310271045560.15605@tvnag.unkk.fr>
 <527E1575.90703@marc-hoersken.de>
User-Agent: Alpine 2.00 (DEB 1167 2008-08-23)
X-fromdanielhimself: yes
MIME-Version: 1.0
Content-Type: MULTIPART/MIXED; BOUNDARY="1129329158-910078556-1384303522=:3238"
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--1129329158-910078556-1384303522=:3238
Content-Type: TEXT/PLAIN; charset=iso-8859-1; format=flowed
Content-Transfer-Encoding: 8BIT

On Sat, 9 Nov 2013, Marc Hörsken wrote:

> Peter, could you please give us an update on your plans?
>
> My patch is stuck waiting for nearly half a year now.

Marc, can you please update us the state of your work and what it would take 
or require to not wait for Peter?

-- 

  / daniel.haxx.se
--1129329158-910078556-1384303522=:3238
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

--1129329158-910078556-1384303522=:3238--

From libssh2-devel-bounces@cool.haxx.se  Wed Nov 13 03:06:45 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD26YCt013162;
	Wed, 13 Nov 2013 03:06:44 +0100
Received: from foo.stuge.se (qmailr@foo.stuge.se [212.116.89.98])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD26VIn013155
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Wed, 13 Nov 2013 03:06:31 +0100
Received: (qmail 28470 invoked by uid 501); 13 Nov 2013 02:06:32 -0000
Message-ID: <20131113020632.28469.qmail@stuge.se>
Date: Wed, 13 Nov 2013 03:06:32 +0100
From: Peter Stuge <peter@stuge.se>
To: libssh2 development <libssh2-devel@cool.haxx.se>
Subject: Re: [PATCH] Added Windows Cryptography API: Next Generation backend
Mail-Followup-To: libssh2 development <libssh2-devel@cool.haxx.se>
References: <20130601231229.11420.qmail@stuge.se>
 <CAFJA8CMupB-pza-UEC8Q7mE6JOdeHEqpFGDzjswe6hWwoED6BA@mail.gmail.com>
 <20130602175922.5525.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
 <20130922151824.23037.qmail@stuge.se>
 <CAFJA8CMhx_oDQnJ-Jdb39MzLUVwF3gm2+RQcbkayN9Ckk_p+mQ@mail.gmail.com>
 <20130601231229.11420.qmail@stuge.se>
 <CAFJA8CMupB-pza-UEC8Q7mE6JOdeHEqpFGDzjswe6hWwoED6BA@mail.gmail.com>
 <20130602175922.5525.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <alpine.DEB.2.00.1311130144060.3238@tvnag.unkk.fr>
 <20130922151824.23037.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by giant.haxx.se id rAD26YCt013162

Peter Stuge wrote:
> > Please take a look and tell me if it fits your approach.
> 
> It does, but current master still needs to be fixed. I'll push the
> suggested update I had for it in a bit.

I've pushed that fix now, it moves the conditional out of the shared
Makefile.inc into Makefile.am.


> I'll also send you some more comments on this patch, there are a
> few small things to take care of still.

See below.


> It also seems that we need to do a bit of preparatory work in pem.c.

This one may be more tricky, or not.

It's not reasonable to have crypto ifdefs anywhere outside crypto.c
and crypto.h. A suitable abstraction for pem.c would be good. We can
possibly take advantage of the fact that all non-autotools build
systems only support OpenSSL anyway.


Daniel Stenberg wrote:
> Marc, can you please update us the state of your work and what it
> would take or require to not wait for Peter?

Why don't you too review Marc's patch, and see for yourself?


Marc HÃ¶rsken wrote:
> From e4b794c78c4566c2f6811bcaa1dadda7b5e93a86 Mon Sep 17 00:00:00 2001
> From: Marc Hoersken <info@marc-hoersken.de>
> Date: Sun, 22 Sep 2013 10:04:15 +0200
> Subject: [PATCH] Added Windows Cryptography API: Next Generation based backend
..
> +++ b/configure.ac
..
>  if test "$found_crypto" = "none"; then
>    AC_MSG_ERROR([No crypto library found!
> -Try --with-libssl-prefix=PATH\
> - or --with-libgcrypt-prefix=PATH\
> +Try --with-libssl-prefix=PATH
> + or --with-libgcrypt-prefix=PATH
> + or --with-wincng on Windows\
>  ])

Marc, please only add new lines into the above block. Remember to
check that they end with a backslash.


> @@ -167,6 +197,13 @@ if test "$GEX_NEW" != "no"; then
>    AC_DEFINE(LIBSSH2_DH_GEX_NEW, 1, [Enable newer diffie-hellman-group-exchange-sha1 syntax])
>  fi
>  
> +AC_ARG_ENABLE(memory-overwrite,
> +  AC_HELP_STRING([--disable-memory-overwrite],[Disable memory overwrite before being freed]),
> +  [MEMORY_OVERWRITE=$enableval])
> +if test "$MEMORY_OVERWRITE" != "no"; then
> +  AC_DEFINE(LIBSSH2_MEMORY_OVERWRITE, 1, [Enable memory overwrite before being freed])
> +fi
> +

This isn't specific for WinCNG crypto so I think it needs to be in a
separate commit, and that commit should of course add the feature to
all crypto code.

Or alternatively, make it clear that this a WinCNG-specific option.
Maybe call it --disable-wincng-memory-clear (I like 'clear' because
it's shorter than 'overwrite' but if you prefer the latter then go
for that.)


> @@ -252,7 +289,7 @@ AM_CONDITIONAL([BUILD_EXAMPLES], [test "x$build_examples" != "xno"])
>  # AC_HEADER_STDC
>  AC_CHECK_HEADERS([errno.h fcntl.h stdio.h stdlib.h unistd.h sys/uio.h])
>  AC_CHECK_HEADERS([sys/select.h sys/socket.h sys/ioctl.h sys/time.h])
> -AC_CHECK_HEADERS([arpa/inet.h netinet/in.h])
> +AC_CHECK_HEADERS([arpa/inet.h netinet/in.h math.h])
>  AC_CHECK_HEADERS([sys/un.h], [have_sys_un_h=yes], [have_sys_un_h=no])
>  AM_CONDITIONAL([HAVE_SYS_UN_H], test "x$have_sys_un_h" = xyes)
..
> +#ifdef HAVE_MATH_H
> +#include <math.h>
> +#endif

Is the header required to build with WinCNG crypto? I expect WinCNG
to stay Windows-specific, so maybe windows.h is the only include file
really needed? Do you think other crypto wrappers may need math.h too?
If not, no need to check for it in configure.ac, and then it can be
included unconditionally or not included at all in the WinCNG code.


> +++ b/src/pem.c
> @@ -38,7 +38,8 @@
>  
>  #include "libssh2_priv.h"
>  
> -#ifdef LIBSSH2_LIBGCRYPT /* compile only if we build with libgcrypt */
> +/* compile only if we build with libgcrypt or wincng */
> +#if defined(LIBSSH2_LIBGCRYPT) || defined(LIBSSH2_WINCNG)
>  
>  static int
>  readline(char *line, int line_size, FILE * fp)
> @@ -113,6 +114,11 @@ _libssh2_pem_parse(LIBSSH2_SESSION * session,
>      return ret;
>  }
>  
> +#endif /* LIBSSH2_LIBGCRYPT or LIBSSH2_WINCNG */
> +
> +/* compile only if we build with libgcrypt */
> +#ifdef LIBSSH2_LIBGCRYPT
> +
>  static int
>  read_asn1_length(const unsigned char *data,
>                   unsigned int datalen, unsigned int *len)

I think we need to figure something better out here. Is there a reason
not to simply always compile those first few functions in pem.c?


> diff --git a/src/wincng.c b/src/wincng.c
> new file mode 100644
..
> diff --git a/src/wincng.h b/src/wincng.h
> new file mode 100644

I haven't looked at these too closely - if they work then all is good!


//Peter
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Wed Nov 13 03:13:53 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD2DpY9000568;
	Wed, 13 Nov 2013 03:13:53 +0100
Received: from giant.haxx.se (dast@localhost.localdomain [127.0.0.1])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD2Dn51000562
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Wed, 13 Nov 2013 03:13:49 +0100
Received: from localhost (dast@localhost)
 by giant.haxx.se (8.14.4/8.14.4/Submit) with ESMTP id rAD2Dn0h000556
 for <libssh2-devel@cool.haxx.se>; Wed, 13 Nov 2013 03:13:49 +0100
X-Authentication-Warning: giant.haxx.se: dast owned process doing -bs
Date: Wed, 13 Nov 2013 03:13:49 +0100 (CET)
From: Daniel Stenberg <daniel@haxx.se>
X-X-Sender: dast@giant.haxx.se
To: libssh2 development <libssh2-devel@cool.haxx.se>
Subject: Re: [PATCH] Added Windows Cryptography API: Next Generation
 backend
In-Reply-To: <20131113020632.28469.qmail@stuge.se>
Message-ID: <alpine.DEB.2.00.1311130311130.3238@tvnag.unkk.fr>
References: <20130601231229.11420.qmail@stuge.se>
 <CAFJA8CMupB-pza-UEC8Q7mE6JOdeHEqpFGDzjswe6hWwoED6BA@mail.gmail.com>
 <20130602175922.5525.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
 <20130922151824.23037.qmail@stuge.se>
 <CAFJA8CMhx_oDQnJ-Jdb39MzLUVwF3gm2+RQcbkayN9Ckk_p+mQ@mail.gmail.com>
 <20130601231229.11420.qmail@stuge.se>
 <CAFJA8CMupB-pza-UEC8Q7mE6JOdeHEqpFGDzjswe6hWwoED6BA@mail.gmail.com>
 <20130602175922.5525.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
 <20131113020632.28469.qmail@stuge.se>
User-Agent: Alpine 2.00 (DEB 1167 2008-08-23)
X-fromdanielhimself: yes
MIME-Version: 1.0
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

On Wed, 13 Nov 2013, Peter Stuge wrote:

> Daniel Stenberg wrote:
>> Marc, can you please update us the state of your work and what it
>> would take or require to not wait for Peter?
>
> Why don't you too review Marc's patch, and see for yourself?

Then I'm missing something. Is it only reviewing and polishing Marc's patch 
we're talking about? I thought you had some work pending. Did I get that 
wrong?

-- 

  / daniel.haxx.se
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Wed Nov 13 03:19:40 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD2Ja4i003989;
	Wed, 13 Nov 2013 03:19:39 +0100
Received: from foo.stuge.se (qmailr@foo.stuge.se [212.116.89.98])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAD2JYM6003968
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Wed, 13 Nov 2013 03:19:34 +0100
Received: (qmail 29895 invoked by uid 501); 13 Nov 2013 02:19:36 -0000
Message-ID: <20131113021936.29894.qmail@stuge.se>
Date: Wed, 13 Nov 2013 03:19:36 +0100
From: Peter Stuge <peter@stuge.se>
To: libssh2-devel@cool.haxx.se
Subject: Re: [PATCH] Added Windows Cryptography API: Next Generation backend
Mail-Followup-To: libssh2-devel@cool.haxx.se
References: <20130602175922.5525.qmail@stuge.se>
 <523EA678.8010707@marc-hoersken.de> <20130922151824.23037.qmail@stuge.se>
 <CAFJA8CMhx_oDQnJ-Jdb39MzLUVwF3gm2+RQcbkayN9Ckk_p+mQ@mail.gmail.com>
 <20130601231229.11420.qmail@stuge.se>
 <CAFJA8CMupB-pza-UEC8Q7mE6JOdeHEqpFGDzjswe6hWwoED6BA@mail.gmail.com>
 <20130602175922.5525.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
 <20131113020632.28469.qmail@stuge.se>
 <alpine.DEB.2.00.1311130311130.3238@tvnag.unkk.fr>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <alpine.DEB.2.00.1311130311130.3238@tvnag.unkk.fr>
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

Daniel Stenberg wrote:
>>> Marc, can you please update us the state of your work and what it
>>> would take or require to not wait for Peter?
>>
>> Why don't you too review Marc's patch, and see for yourself?
>
> Then I'm missing something. Is it only reviewing and polishing Marc's
> patch we're talking about? I thought you had some work pending. Did I
> get that wrong?

I had finished the fix for the Makefile.inc conditional but not
pushed it yet. I've done that now, so at this point it's "just"
about making pem.c independent of crypto code and the minor things
I pointed out in Marc's patch.

The other ongoing work I have is support for axTLS but that's not
ready now and not a blocker. The improved crypto abstraction is all
in master.


//Peter
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 00:43:36 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAHNh7id012938;
	Mon, 18 Nov 2013 00:43:28 +0100
Received: from mx.uxnr.de (mx.uxnr.de [89.238.84.47])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAHNh5Gj012757
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 00:43:05 +0100
Received: from [10.2.2.10] (p5B0A7BB3.dip0.t-ipconnect.de [91.10.123.179])
 by mx.uxnr.de (Postfix) with ESMTPSA id 657F21C5A377
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 00:42:56 +0100 (CET)
X-DKIM: OpenDKIM Filter v2.6.8 mx.uxnr.de 657F21C5A377
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=marc-hoersken.de;
 s=picard; t=1384731776;
 bh=1u8zo7qSLYMrh5hBMVR54rWcSEGLcIJyXWlC0d7qTPY=;
 h=Date:From:To:Subject:References:In-Reply-To:From;
 b=0aiFg/tO5InK4dn0IrQ22wXn5wPIYrICidIewpVSezdP3K5kYCuYlyeWbgg1dlcN+
 0X6swrAGPWKsK6NL/JUSH+u/Hx7xNfd4noBs2jTv4rY/Rx4zF44pVOWtipYfl6meII
 uP1LBZWvZv+yhBA269hEjTKwXFu3VM0ovM47XGqI=
Message-ID: <52895481.30407@marc-hoersken.de>
Date: Mon, 18 Nov 2013 00:42:57 +0100
From: =?UTF-8?B?TWFyYyBIw7Zyc2tlbg==?= <info@marc-hoersken.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
 rv:24.0) Gecko/20100101 Thunderbird/24.1.0
MIME-Version: 1.0
To: libssh2 development <libssh2-devel@cool.haxx.se>
Subject: Re: [PATCH] Added Windows Cryptography API: Next Generation backend
References: <20130601231229.11420.qmail@stuge.se>
 <CAFJA8CMupB-pza-UEC8Q7mE6JOdeHEqpFGDzjswe6hWwoED6BA@mail.gmail.com>
 <20130602175922.5525.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
 <20130922151824.23037.qmail@stuge.se>
 <CAFJA8CMhx_oDQnJ-Jdb39MzLUVwF3gm2+RQcbkayN9Ckk_p+mQ@mail.gmail.com>
 <20130601231229.11420.qmail@stuge.se>
 <CAFJA8CMupB-pza-UEC8Q7mE6JOdeHEqpFGDzjswe6hWwoED6BA@mail.gmail.com>
 <20130602175922.5525.qmail@stuge.se> <523EA678.8010707@marc-hoersken.de>
 <20131113020632.28469.qmail@stuge.se>
In-Reply-To: <20131113020632.28469.qmail@stuge.se>
X-Enigmail-Version: 1.6
Content-Type: multipart/mixed; boundary="------------090107000908000703060304"
X-Spam-Status: No, score=-1.1 required=5.0 tests=ALL_TRUSTED,DKIM_SIGNED,
 DKIM_VALID,DKIM_VALID_AU autolearn=unavailable version=3.3.2
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on picard.vpn.uxnr.de
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

This is a multi-part message in MIME format.
--------------090107000908000703060304
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

Hi Peter,

thanks for your feedback. Attached you will find a refined and rebased
patch that includes your feedback/comments. My answers can be found
inline, too.

Am 13.11.2013 03:06, schrieb Peter Stuge:
> Peter Stuge wrote:
>>> Please take a look and tell me if it fits your approach.
>> It does, but current master still needs to be fixed. I'll push the
>> suggested update I had for it in a bit.
> I've pushed that fix now, it moves the conditional out of the shared
> Makefile.inc into Makefile.am.
Thanks, I adopted my patch to the new style.
>
>> I'll also send you some more comments on this patch, there are a
>> few small things to take care of still.
> See below.
Thanks again.
>
>> It also seems that we need to do a bit of preparatory work in pem.c.
> This one may be more tricky, or not.
>
> It's not reasonable to have crypto ifdefs anywhere outside crypto.c
> and crypto.h. A suitable abstraction for pem.c would be good. We can
> possibly take advantage of the fact that all non-autotools build
> systems only support OpenSSL anyway.
For now I didn't touch my previous changes to pem.c. If you have any
ideas or made a strategic decision yet, we can of course refactor again.
>
>>  if test "$found_crypto" = "none"; then
>>    AC_MSG_ERROR([No crypto library found!
>> -Try --with-libssl-prefix=PATH\
>> - or --with-libgcrypt-prefix=PATH\
>> +Try --with-libssl-prefix=PATH
>> + or --with-libgcrypt-prefix=PATH
>> + or --with-wincng on Windows\
>>  ])
> Marc, please only add new lines into the above block. Remember to
> check that they end with a backslash.
If I would do that, the line wouldn't fit onto one terminal row. I think
it looks cleaner with those intentional newlines after each option.
>
>> @@ -167,6 +197,13 @@ if test "$GEX_NEW" != "no"; then
>>    AC_DEFINE(LIBSSH2_DH_GEX_NEW, 1, [Enable newer diffie-hellman-group-exchange-sha1 syntax])
>>  fi
>>  
>> +AC_ARG_ENABLE(memory-overwrite,
>> +  AC_HELP_STRING([--disable-memory-overwrite],[Disable memory overwrite before being freed]),
>> +  [MEMORY_OVERWRITE=$enableval])
>> +if test "$MEMORY_OVERWRITE" != "no"; then
>> +  AC_DEFINE(LIBSSH2_MEMORY_OVERWRITE, 1, [Enable memory overwrite before being freed])
>> +fi
>> +
> This isn't specific for WinCNG crypto so I think it needs to be in a
> separate commit, and that commit should of course add the feature to
> all crypto code.
For now I have removed this feature/functionality from my patch since it
is not required in order to have a WinCNG backend.
> Or alternatively, make it clear that this a WinCNG-specific option.
> Maybe call it --disable-wincng-memory-clear (I like 'clear' because
> it's shorter than 'overwrite' but if you prefer the latter then go
> for that.)
Once WinCNG has been accepted and merged, I could refactor this part in
order to include all backends and be more generic, yes.
>
>> @@ -252,7 +289,7 @@ AM_CONDITIONAL([BUILD_EXAMPLES], [test "x$build_examples" != "xno"])
>>  # AC_HEADER_STDC
>>  AC_CHECK_HEADERS([errno.h fcntl.h stdio.h stdlib.h unistd.h sys/uio.h])
>>  AC_CHECK_HEADERS([sys/select.h sys/socket.h sys/ioctl.h sys/time.h])
>> -AC_CHECK_HEADERS([arpa/inet.h netinet/in.h])
>> +AC_CHECK_HEADERS([arpa/inet.h netinet/in.h math.h])
>>  AC_CHECK_HEADERS([sys/un.h], [have_sys_un_h=yes], [have_sys_un_h=no])
>>  AM_CONDITIONAL([HAVE_SYS_UN_H], test "x$have_sys_un_h" = xyes)
> ..
>> +#ifdef HAVE_MATH_H
>> +#include <math.h>
>> +#endif
> Is the header required to build with WinCNG crypto? I expect WinCNG
> to stay Windows-specific, so maybe windows.h is the only include file
> really needed? Do you think other crypto wrappers may need math.h too?
> If not, no need to check for it in configure.ac, and then it can be
> included unconditionally or not included at all in the WinCNG code.
As you suggested I have now removed the conditional check for math.h
since it is currently required in order to build WinCNG.
>
>> +++ b/src/pem.c
>> @@ -38,7 +38,8 @@
>>  
>>  #include "libssh2_priv.h"
>>  
>> -#ifdef LIBSSH2_LIBGCRYPT /* compile only if we build with libgcrypt */
>> +/* compile only if we build with libgcrypt or wincng */
>> +#if defined(LIBSSH2_LIBGCRYPT) || defined(LIBSSH2_WINCNG)
>>  
>>  static int
>>  readline(char *line, int line_size, FILE * fp)
>> @@ -113,6 +114,11 @@ _libssh2_pem_parse(LIBSSH2_SESSION * session,
>>      return ret;
>>  }
>>  
>> +#endif /* LIBSSH2_LIBGCRYPT or LIBSSH2_WINCNG */
>> +
>> +/* compile only if we build with libgcrypt */
>> +#ifdef LIBSSH2_LIBGCRYPT
>> +
>>  static int
>>  read_asn1_length(const unsigned char *data,
>>                   unsigned int datalen, unsigned int *len)
> I think we need to figure something better out here. Is there a reason
> not to simply always compile those first few functions in pem.c?
I will leave this decision up to you. As long as they are available for
WinCNG to use, everything should be fine.
>
>> diff --git a/src/wincng.c b/src/wincng.c
>> new file mode 100644
> ..
>> diff --git a/src/wincng.h b/src/wincng.h
>> new file mode 100644
> I haven't looked at these too closely - if they work then all is good!
I have tested the WinCNG backend against OpenSSHd and Bitvise WinSSHd
servers using the previously mentioned supported algorithms and features.

The most intensive testing was done using the libssh2 examples against a
WinSSHd instance on my local machine. I verified that the following
features work:
 - Cryptophic functionality:
   - RSA authentication
   - DSA authentication
   - MD5 hash algorithm with HMAC support
   - SHA1 hash algorithm with HMAC support
   - AES CBC 128, 192 and 256 bit block cipher
   - RC4 128 bit stream cipher
   - 3DES 192 bit block cipher
 - Generic functionality:
   - Loading private key from file (currently plain-text only)
   - Extracting public key from private key file (currently plain-text only)

I am open for and appreciate any further feedback and comments.

Best regards,
Marc

--------------090107000908000703060304
Content-Type: text/plain; charset=windows-1252;
 name="0001-Added-Windows-Cryptography-API-Next-Generation-based.patch"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename*0="0001-Added-Windows-Cryptography-API-Next-Generation-based.pa";
 filename*1="tch"

RnJvbSBiNmViZWM5MzJiMGFjY2Q5M2U1ZjVhOWJjNjZkMThhZWIwODQ1NzNhIE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJjIEhvZXJza2VuIDxpbmZvQG1hcmMtaG9lcnNr
ZW4uZGU+CkRhdGU6IE1vbiwgMTggTm92IDIwMTMgMDA6Mjc6MDEgKzAxMDAKU3ViamVjdDog
W1BBVENIXSBBZGRlZCBXaW5kb3dzIENyeXB0b2dyYXBoeSBBUEk6IE5leHQgR2VuZXJhdGlv
biBiYXNlZCBiYWNrZW5kCgotLS0KIE1ha2VmaWxlLldpbkNORy5pbmMgfCAgICAyICsKIGNv
bmZpZ3VyZS5hYyAgICAgICAgfCAgIDM0ICstCiBzcmMvTWFrZWZpbGUuYW0gICAgIHwgICAg
MyArCiBzcmMvY3J5cHRvLmggICAgICAgIHwgICAgNCArCiBzcmMvcGVtLmMgICAgICAgICAg
IHwgICAgOCArLQogc3JjL3dpbmNuZy5jICAgICAgICB8IDE3ODIgKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmMvd2luY25nLmggICAg
ICAgIHwgIDMyNyArKysrKysrKysrCiA3IGZpbGVzIGNoYW5nZWQsIDIxNTcgaW5zZXJ0aW9u
cygrKSwgMyBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBNYWtlZmlsZS5XaW5D
TkcuaW5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjL3dpbmNuZy5jCiBjcmVhdGUgbW9kZSAx
MDA2NDQgc3JjL3dpbmNuZy5oCgpkaWZmIC0tZ2l0IGEvTWFrZWZpbGUuV2luQ05HLmluYyBi
L01ha2VmaWxlLldpbkNORy5pbmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uYzE4MzUwZQotLS0gL2Rldi9udWxsCisrKyBiL01ha2VmaWxlLldpbkNORy5pbmMKQEAg
LTAsMCArMSwyIEBACitDUllQVE9fQ1NPVVJDRVMgPSB3aW5jbmcuYworQ1JZUFRPX0hIRUFE
RVJTID0gd2luY25nLmgKZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5h
YwppbmRleCBiMjRhY2UyLi5iYTRkZDdhIDEwMDY0NAotLS0gYS9jb25maWd1cmUuYWMKKysr
IGIvY29uZmlndXJlLmFjCkBAIC04OSw2ICs4OSw5IEBAIEFDX0FSR19XSVRIKG9wZW5zc2ws
CiBBQ19BUkdfV0lUSChsaWJnY3J5cHQsCiAgIEFDX0hFTFBfU1RSSU5HKFstLXdpdGgtbGli
Z2NyeXB0XSxbVXNlIGxpYmdjcnlwdCBmb3IgY3J5cHRvXSksCiAgIHVzZV9saWJnY3J5cHQ9
JHdpdGh2YWwsdXNlX2xpYmdjcnlwdD1hdXRvKQorQUNfQVJHX1dJVEgod2luY25nLAorICBB
Q19IRUxQX1NUUklORyhbLS13aXRoLXdpbmNuZ10sW1VzZSBXaW5kb3dzIENORyBmb3IgY3J5
cHRvXSksCisgIHVzZV93aW5jbmc9JHdpdGh2YWwsdXNlX3dpbmNuZz1hdXRvKQogQUNfQVJH
X1dJVEgobGlieiwKICAgQUNfSEVMUF9TVFJJTkcoWy0td2l0aC1saWJ6XSxbVXNlIHpsaWIg
Zm9yIGNvbXByZXNzaW9uXSksCiAgIHVzZV9saWJ6PSR3aXRodmFsLHVzZV9saWJ6PWF1dG8p
CkBAIC0xMjUsMTAgKzEyOCwzNyBAQCBpZiB0ZXN0ICIkYWNfY3ZfbGliZ2NyeXB0IiA9ICJ5
ZXMiOyB0aGVuCiBmaQogQU1fQ09ORElUSU9OQUwoTElCR0NSWVBULCB0ZXN0ICIkYWNfY3Zf
bGliZ2NyeXB0IiA9ICJ5ZXMiKQogCisjIExvb2sgZm9yIFdpbmRvd3MgQ3J5cHRvZ3JhcGh5
IEFQSTogTmV4dCBHZW5lcmF0aW9uCitpZiB0ZXN0ICIkZm91bmRfY3J5cHRvIiA9ICJub25l
IiAmJiB0ZXN0ICIkdXNlX3dpbmNuZyIgIT0gIm5vIjsgdGhlbgorICBBQ19MSUJfSEFWRV9M
SU5LRkxBR1MoW2JjcnlwdF0sIFtdLCBbCisgICAgI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyAg
ICAjaW5jbHVkZSA8YmNyeXB0Lmg+CisgIF0pCisgIEFDX0xJQl9IQVZFX0xJTktGTEFHUyhb
Y3J5cHQzMl0sIFtdLCBbCisgICAgI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyAgICAjaW5jbHVk
ZSA8d2luY3J5cHQuaD4KKyAgXSkKKyAgQUNfQ0hFQ0tfSEVBREVSUyhbbnRkZWYuaCBudHN0
YXR1cy5oXSwgW10sIFtdLCBbCisgICAgI2luY2x1ZGUgPHdpbmRvd3MuaD4KKyAgXSkKK2Zp
CitpZiB0ZXN0ICIkYWNfY3ZfbGliYmNyeXB0IiA9ICJ5ZXMiOyB0aGVuCisgIEFDX0RFRklO
RShMSUJTU0gyX1dJTkNORywgMSwgW1VzZSBXaW5kb3dzIENOR10pCisgIExJQlNSRVFVSVJF
RD0gIyB3aW5jbmcgZG9lc24ndCBwcm92aWRlIGEgLnBjIGZpbGUuIHNhZCBmYWNlLgorICBM
SUJTPSIkTElCUyAtbGJjcnlwdCIKKyAgaWYgdGVzdCAiJGFjX2N2X2xpYmNyeXB0MzIiID0g
InllcyI7IHRoZW4KKyAgICBMSUJTPSIkTElCUyAtbGNyeXB0MzIiCisgIGZpCisgIGZvdW5k
X2NyeXB0bz0iV2luZG93cyBDcnlwdG9ncmFwaHkgQVBJOiBOZXh0IEdlbmVyYXRpb24iCitm
aQorQU1fQ09ORElUSU9OQUwoV0lOQ05HLCB0ZXN0ICIkYWNfY3ZfbGliYmNyeXB0IiA9ICJ5
ZXMiKQorCisjIENoZWNrIGlmIGNyeXB0byBsaWJyYXJ5IHdhcyBmb3VuZAogaWYgdGVzdCAi
JGZvdW5kX2NyeXB0byIgPSAibm9uZSI7IHRoZW4KICAgQUNfTVNHX0VSUk9SKFtObyBjcnlw
dG8gbGlicmFyeSBmb3VuZCEKLVRyeSAtLXdpdGgtbGlic3NsLXByZWZpeD1QQVRIXAotIG9y
IC0td2l0aC1saWJnY3J5cHQtcHJlZml4PVBBVEhcCitUcnkgLS13aXRoLWxpYnNzbC1wcmVm
aXg9UEFUSAorIG9yIC0td2l0aC1saWJnY3J5cHQtcHJlZml4PVBBVEgKKyBvciAtLXdpdGgt
d2luY25nIG9uIFdpbmRvd3NcCiBdKQogZmkKIApkaWZmIC0tZ2l0IGEvc3JjL01ha2VmaWxl
LmFtIGIvc3JjL01ha2VmaWxlLmFtCmluZGV4IGRhN2JlYjUuLjU5NzlhMjcgMTAwNjQ0Ci0t
LSBhL3NyYy9NYWtlZmlsZS5hbQorKysgYi9zcmMvTWFrZWZpbGUuYW0KQEAgLTgsNiArOCw5
IEBAIGVuZGlmCiBpZiBMSUJHQ1JZUFQKIGluY2x1ZGUgLi4vTWFrZWZpbGUubGliZ2NyeXB0
LmluYwogZW5kaWYKK2lmIFdJTkNORworaW5jbHVkZSAuLi9NYWtlZmlsZS5XaW5DTkcuaW5j
CitlbmRpZgogCiAjIE1ha2VmaWxlLmluYyBwcm92aWRlcyB0aGUgQ1NPVVJDRVMgYW5kIEhI
RUFERVJTIGRlZmluZXMKIGluY2x1ZGUgLi4vTWFrZWZpbGUuaW5jCmRpZmYgLS1naXQgYS9z
cmMvY3J5cHRvLmggYi9zcmMvY3J5cHRvLmgKaW5kZXggOWEwNTJlMy4uYTYxNWJiMSAxMDA2
NDQKLS0tIGEvc3JjL2NyeXB0by5oCisrKyBiL3NyYy9jcnlwdG8uaApAQCAtNDYsNiArNDYs
MTAgQEAKICNpbmNsdWRlICJsaWJnY3J5cHQuaCIKICNlbmRpZgogCisjaWZkZWYgTElCU1NI
Ml9XSU5DTkcKKyNpbmNsdWRlICJ3aW5jbmcuaCIKKyNlbmRpZgorCiBpbnQgX2xpYnNzaDJf
cnNhX25ldyhsaWJzc2gyX3JzYV9jdHggKiogcnNhLAogICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgdW5zaWduZWQgY2hhciAqZWRhdGEsCiAgICAgICAgICAgICAgICAgICAgICB1bnNp
Z25lZCBsb25nIGVsZW4sCmRpZmYgLS1naXQgYS9zcmMvcGVtLmMgYi9zcmMvcGVtLmMKaW5k
ZXggNTc0OWJjOC4uMzc0ODcwYiAxMDA2NDQKLS0tIGEvc3JjL3BlbS5jCisrKyBiL3NyYy9w
ZW0uYwpAQCAtMzgsNyArMzgsOCBAQAogCiAjaW5jbHVkZSAibGlic3NoMl9wcml2LmgiCiAK
LSNpZmRlZiBMSUJTU0gyX0xJQkdDUllQVCAvKiBjb21waWxlIG9ubHkgaWYgd2UgYnVpbGQg
d2l0aCBsaWJnY3J5cHQgKi8KKy8qIGNvbXBpbGUgb25seSBpZiB3ZSBidWlsZCB3aXRoIGxp
YmdjcnlwdCBvciB3aW5jbmcgKi8KKyNpZiBkZWZpbmVkKExJQlNTSDJfTElCR0NSWVBUKSB8
fCBkZWZpbmVkKExJQlNTSDJfV0lOQ05HKQogCiBzdGF0aWMgaW50CiByZWFkbGluZShjaGFy
ICpsaW5lLCBpbnQgbGluZV9zaXplLCBGSUxFICogZnApCkBAIC0xMTMsNiArMTE0LDExIEBA
IF9saWJzc2gyX3BlbV9wYXJzZShMSUJTU0gyX1NFU1NJT04gKiBzZXNzaW9uLAogICAgIHJl
dHVybiByZXQ7CiB9CiAKKyNlbmRpZiAvKiBMSUJTU0gyX0xJQkdDUllQVCBvciBMSUJTU0gy
X1dJTkNORyAqLworCisvKiBjb21waWxlIG9ubHkgaWYgd2UgYnVpbGQgd2l0aCBsaWJnY3J5
cHQgKi8KKyNpZmRlZiBMSUJTU0gyX0xJQkdDUllQVAorCiBzdGF0aWMgaW50CiByZWFkX2Fz
bjFfbGVuZ3RoKGNvbnN0IHVuc2lnbmVkIGNoYXIgKmRhdGEsCiAgICAgICAgICAgICAgICAg
IHVuc2lnbmVkIGludCBkYXRhbGVuLCB1bnNpZ25lZCBpbnQgKmxlbikKZGlmZiAtLWdpdCBh
L3NyYy93aW5jbmcuYyBiL3NyYy93aW5jbmcuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi5hNDc1MzQxCi0tLSAvZGV2L251bGwKKysrIGIvc3JjL3dpbmNuZy5jCkBA
IC0wLDAgKzEsMTc4MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBNYXJjIEhvZXJz
a2VuIDxpbmZvQG1hcmMtaG9lcnNrZW4uZGU+CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y
bXMsCisgKiB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkCisgKiB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgbWV0OgorICoK
KyAqICAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZQorICogICBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlCisgKiAgIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICoKKyAqICAgUmVkaXN0cmli
dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogICBj
b3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZworICogICBkaXNjbGFpbWVyIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMKKyAqICAgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqICAgTmVpdGhlciB0aGUgbmFtZSBvZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3IgdGhl
IG5hbWVzCisgKiAgIG9mIGFueSBvdGhlciBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8g
ZW5kb3JzZSBvcgorICogICBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNv
ZnR3YXJlIHdpdGhvdXQKKyAqICAgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBI
T0xERVJTIEFORAorICogQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywKKyAqIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTCisgKiBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFCisgKiBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVCBPV05FUiBPUgorICogQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBT
UEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H
LAorICogQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SCisgKiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S
IEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkg
VEhFT1JZIE9GIExJQUJJTElUWSwKKyAqIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORworICogTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFCisgKiBVU0UgT0YgVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWQorICogT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI2luY2x1ZGUgImxpYnNzaDJfcHJpdi5oIgorCisjaWZkZWYgTElC
U1NIMl9XSU5DTkcgLyogY29tcGlsZSBvbmx5IGlmIHdlIGJ1aWxkIHdpdGggd2luY25nICov
CisKKyNpbmNsdWRlIDxtYXRoLmg+CisKKyNpZmRlZiBIQVZFX1NURExJQl9ICisjaW5jbHVk
ZSA8c3RkbGliLmg+CisjZW5kaWYKKyNpZmRlZiBIQVZFX0xJQkNSWVBUMzIKKyNpbmNsdWRl
IDx3aW5jcnlwdC5oPgorI2VuZGlmCisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKgorICogV2lu
ZG93cyBDTkcgYmFja2VuZDogTWlzc2luZyBkZWZpbml0aW9ucyAoZm9yIE1pbkdXWy13NjRd
KQorICovCisjaWZuZGVmIEJDUllQVF9STkdfQUxHT1JJVEhNCisjZGVmaW5lIEJDUllQVF9S
TkdfQUxHT1JJVEhNIEwiUk5HIgorI2VuZGlmCisKKyNpZm5kZWYgQkNSWVBUX01ENV9BTEdP
UklUSE0KKyNkZWZpbmUgQkNSWVBUX01ENV9BTEdPUklUSE0gTCJNRDUiCisjZW5kaWYKKwor
I2lmbmRlZiBCQ1JZUFRfU0hBMV9BTEdPUklUSE0KKyNkZWZpbmUgQkNSWVBUX1NIQTFfQUxH
T1JJVEhNIEwiU0hBMSIKKyNlbmRpZgorCisjaWZuZGVmIEJDUllQVF9SU0FfQUxHT1JJVEhN
CisjZGVmaW5lIEJDUllQVF9SU0FfQUxHT1JJVEhNIEwiUlNBIgorI2VuZGlmCisKKyNpZm5k
ZWYgQkNSWVBUX0RTQV9BTEdPUklUSE0KKyNkZWZpbmUgQkNSWVBUX0RTQV9BTEdPUklUSE0g
TCJEU0EiCisjZW5kaWYKKworI2lmbmRlZiBCQ1JZUFRfQUVTX0FMR09SSVRITQorI2RlZmlu
ZSBCQ1JZUFRfQUVTX0FMR09SSVRITSBMIkFFUyIKKyNlbmRpZgorCisjaWZuZGVmIEJDUllQ
VF9SQzRfQUxHT1JJVEhNCisjZGVmaW5lIEJDUllQVF9SQzRfQUxHT1JJVEhNIEwiUkM0Igor
I2VuZGlmCisKKyNpZm5kZWYgQkNSWVBUXzNERVNfQUxHT1JJVEhNCisjZGVmaW5lIEJDUllQ
VF8zREVTX0FMR09SSVRITSBMIjNERVMiCisjZW5kaWYKKworI2lmbmRlZiBCQ1JZUFRfQUxH
X0hBTkRMRV9ITUFDX0ZMQUcKKyNkZWZpbmUgQkNSWVBUX0FMR19IQU5ETEVfSE1BQ19GTEFH
IDB4MDAwMDAwMDgKKyNlbmRpZgorCisjaWZuZGVmIEJDUllQVF9EU0FfUFVCTElDX0JMT0IK
KyNkZWZpbmUgQkNSWVBUX0RTQV9QVUJMSUNfQkxPQiBMIkRTQVBVQkxJQ0JMT0IiCisjZW5k
aWYKKworI2lmbmRlZiBCQ1JZUFRfRFNBX1BVQkxJQ19NQUdJQworI2RlZmluZSBCQ1JZUFRf
RFNBX1BVQkxJQ19NQUdJQyAweDQyNTA1MzQ0IC8qIERTUEIgKi8KKyNlbmRpZgorCisjaWZu
ZGVmIEJDUllQVF9EU0FfUFJJVkFURV9CTE9CCisjZGVmaW5lIEJDUllQVF9EU0FfUFJJVkFU
RV9CTE9CIEwiRFNBUFJJVkFURUJMT0IiCisjZW5kaWYKKworI2lmbmRlZiBCQ1JZUFRfRFNB
X1BSSVZBVEVfTUFHSUMKKyNkZWZpbmUgQkNSWVBUX0RTQV9QUklWQVRFX01BR0lDIDB4NTY1
MDUzNDQgLyogRFNQViAqLworI2VuZGlmCisKKyNpZm5kZWYgQkNSWVBUX1JTQVBVQkxJQ19C
TE9CCisjZGVmaW5lIEJDUllQVF9SU0FQVUJMSUNfQkxPQiBMIlJTQVBVQkxJQ0JMT0IiCisj
ZW5kaWYKKworI2lmbmRlZiBCQ1JZUFRfUlNBUFVCTElDX01BR0lDCisjZGVmaW5lIEJDUllQ
VF9SU0FQVUJMSUNfTUFHSUMgMHgzMTQxNTM1MiAvKiBSU0ExICovCisjZW5kaWYKKworI2lm
bmRlZiBCQ1JZUFRfUlNBRlVMTFBSSVZBVEVfQkxPQgorI2RlZmluZSBCQ1JZUFRfUlNBRlVM
TFBSSVZBVEVfQkxPQiBMIlJTQUZVTExQUklWQVRFQkxPQiIKKyNlbmRpZgorCisjaWZuZGVm
IEJDUllQVF9SU0FGVUxMUFJJVkFURV9NQUdJQworI2RlZmluZSBCQ1JZUFRfUlNBRlVMTFBS
SVZBVEVfTUFHSUMgMHgzMzQxNTM1MiAvKiBSU0EzICovCisjZW5kaWYKKworI2lmbmRlZiBC
Q1JZUFRfS0VZX0RBVEFfQkxPQgorI2RlZmluZSBCQ1JZUFRfS0VZX0RBVEFfQkxPQiBMIktl
eURhdGFCbG9iIgorI2VuZGlmCisKKyNpZm5kZWYgQkNSWVBUX01FU1NBR0VfQkxPQ0tfTEVO
R1RICisjZGVmaW5lIEJDUllQVF9NRVNTQUdFX0JMT0NLX0xFTkdUSCBMIk1lc3NhZ2VCbG9j
a0xlbmd0aCIKKyNlbmRpZgorCisjaWZuZGVmIEJDUllQVF9OT19LRVlfVkFMSURBVElPTgor
I2RlZmluZSBCQ1JZUFRfTk9fS0VZX1ZBTElEQVRJT04gMHgwMDAwMDAwOAorI2VuZGlmCisK
KyNpZm5kZWYgQkNSWVBUX0JMT0NLX1BBRERJTkcKKyNkZWZpbmUgQkNSWVBUX0JMT0NLX1BB
RERJTkcgMHgwMDAwMDAwMQorI2VuZGlmCisKKyNpZm5kZWYgQkNSWVBUX1BBRF9OT05FCisj
ZGVmaW5lIEJDUllQVF9QQURfTk9ORSAweDAwMDAwMDAxCisjZW5kaWYKKworI2lmbmRlZiBC
Q1JZUFRfUEFEX1BLQ1MxCisjZGVmaW5lIEJDUllQVF9QQURfUEtDUzEgMHgwMDAwMDAwMgor
I2VuZGlmCisKKyNpZm5kZWYgQkNSWVBUX1BBRF9PQUVQCisjZGVmaW5lIEJDUllQVF9QQURf
T0FFUCAweDAwMDAwMDA0CisjZW5kaWYKKworI2lmbmRlZiBCQ1JZUFRfUEFEX1BTUworI2Rl
ZmluZSBCQ1JZUFRfUEFEX1BTUyAweDAwMDAwMDA4CisjZW5kaWYKKworI2lmbmRlZiBDUllQ
VF9TVFJJTkdfQU5ZCisjZGVmaW5lIENSWVBUX1NUUklOR19BTlkgMHgwMDAwMDAwNworI2Vu
ZGlmCisKKyNpZm5kZWYgTEVHQUNZX1JTQVBSSVZBVEVfQkxPQgorI2RlZmluZSBMRUdBQ1lf
UlNBUFJJVkFURV9CTE9CIEwiQ0FQSVBSSVZBVEVCTE9CIgorI2VuZGlmCisKKyNpZm5kZWYg
UEtDU19SU0FfUFJJVkFURV9LRVkKKyNkZWZpbmUgUEtDU19SU0FfUFJJVkFURV9LRVkgKExQ
Q1NUUik0MworI2VuZGlmCisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKgorICogV2luZG93cyBD
TkcgYmFja2VuZDogR2VuZXJpYyBmdW5jdGlvbnMKKyAqLworCit2b2lkCitfbGlic3NoMl93
aW5jbmdfaW5pdCh2b2lkKQoreworICAgIGludCByZXQ7CisKKyAgICBCQ3J5cHRPcGVuQWxn
b3JpdGhtUHJvdmlkZXIoJl9saWJzc2gyX3dpbmNuZy5oQWxnUk5HLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBCQ1JZUFRfUk5HX0FMR09SSVRITSwgTlVMTCwgMCk7CisK
KyAgICBCQ3J5cHRPcGVuQWxnb3JpdGhtUHJvdmlkZXIoJl9saWJzc2gyX3dpbmNuZy5oQWxn
SGFzaE1ENSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQkNSWVBUX01ENV9B
TEdPUklUSE0sIE5VTEwsIDApOworICAgIEJDcnlwdE9wZW5BbGdvcml0aG1Qcm92aWRlcigm
X2xpYnNzaDJfd2luY25nLmhBbGdIYXNoU0hBMSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgQkNSWVBUX1NIQTFfQUxHT1JJVEhNLCBOVUxMLCAwKTsKKworICAgIEJDcnlw
dE9wZW5BbGdvcml0aG1Qcm92aWRlcigmX2xpYnNzaDJfd2luY25nLmhBbGdIbWFjTUQ1LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCQ1JZUFRfTUQ1X0FMR09SSVRITSwg
TlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQkNSWVBUX0FMR19IQU5E
TEVfSE1BQ19GTEFHKTsKKyAgICBCQ3J5cHRPcGVuQWxnb3JpdGhtUHJvdmlkZXIoJl9saWJz
c2gyX3dpbmNuZy5oQWxnSG1hY1NIQTEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEJDUllQVF9TSEExX0FMR09SSVRITSwgTlVMTCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgQkNSWVBUX0FMR19IQU5ETEVfSE1BQ19GTEFHKTsKKworICAgIEJDcnlw
dE9wZW5BbGdvcml0aG1Qcm92aWRlcigmX2xpYnNzaDJfd2luY25nLmhBbGdSU0EsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJDUllQVF9SU0FfQUxHT1JJVEhNLCBOVUxM
LCAwKTsKKyAgICBCQ3J5cHRPcGVuQWxnb3JpdGhtUHJvdmlkZXIoJl9saWJzc2gyX3dpbmNu
Zy5oQWxnRFNBLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCQ1JZUFRfRFNB
X0FMR09SSVRITSwgTlVMTCwgMCk7CisKKyAgICByZXQgPSBCQ3J5cHRPcGVuQWxnb3JpdGht
UHJvdmlkZXIoJl9saWJzc2gyX3dpbmNuZy5oQWxnQUVTX0NCQywKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgQkNSWVBUX0FFU19BTEdPUklUSE0sIE5VTEwsIDAp
OworICAgIGlmIChyZXQgPT0gU1RBVFVTX1NVQ0NFU1MpIHsKKyAgICAgICAgcmV0ID0gQkNy
eXB0U2V0UHJvcGVydHkoX2xpYnNzaDJfd2luY25nLmhBbGdBRVNfQ0JDLCBCQ1JZUFRfQ0hB
SU5JTkdfTU9ERSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFBCWVRFKUJD
UllQVF9DSEFJTl9NT0RFX0NCQywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
c2l6ZW9mKEJDUllQVF9DSEFJTl9NT0RFX0NCQyksIDApOworICAgICAgICBpZiAocmV0ICE9
IFNUQVRVU19TVUNDRVNTKSB7CisgICAgICAgICAgICBCQ3J5cHRDbG9zZUFsZ29yaXRobVBy
b3ZpZGVyKF9saWJzc2gyX3dpbmNuZy5oQWxnQUVTX0NCQywgMCk7CisgICAgICAgIH0KKyAg
ICB9CisKKyAgICByZXQgPSBCQ3J5cHRPcGVuQWxnb3JpdGhtUHJvdmlkZXIoJl9saWJzc2gy
X3dpbmNuZy5oQWxnUkM0X05BLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBCQ1JZUFRfUkM0X0FMR09SSVRITSwgTlVMTCwgMCk7CisgICAgaWYgKHJldCA9PSBT
VEFUVVNfU1VDQ0VTUykgeworICAgICAgICByZXQgPSBCQ3J5cHRTZXRQcm9wZXJ0eShfbGli
c3NoMl93aW5jbmcuaEFsZ1JDNF9OQSwgQkNSWVBUX0NIQUlOSU5HX01PREUsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIChQQllURSlCQ1JZUFRfQ0hBSU5fTU9ERV9OQSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKEJDUllQVF9DSEFJTl9N
T0RFX05BKSwgMCk7CisgICAgICAgIGlmIChyZXQgIT0gU1RBVFVTX1NVQ0NFU1MpIHsKKyAg
ICAgICAgICAgIEJDcnlwdENsb3NlQWxnb3JpdGhtUHJvdmlkZXIoX2xpYnNzaDJfd2luY25n
LmhBbGdSQzRfTkEsIDApOworICAgICAgICB9CisgICAgfQorCisgICAgcmV0ID0gQkNyeXB0
T3BlbkFsZ29yaXRobVByb3ZpZGVyKCZfbGlic3NoMl93aW5jbmcuaEFsZzNERVNfQ0JDLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCQ1JZUFRfM0RFU19BTEdP
UklUSE0sIE5VTEwsIDApOworICAgIGlmIChyZXQgPT0gU1RBVFVTX1NVQ0NFU1MpIHsKKyAg
ICAgICAgcmV0ID0gQkNyeXB0U2V0UHJvcGVydHkoX2xpYnNzaDJfd2luY25nLmhBbGczREVT
X0NCQywgQkNSWVBUX0NIQUlOSU5HX01PREUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIChQQllURSlCQ1JZUFRfQ0hBSU5fTU9ERV9DQkMsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHNpemVvZihCQ1JZUFRfQ0hBSU5fTU9ERV9DQkMpLCAwKTsKKyAg
ICAgICAgaWYgKHJldCAhPSBTVEFUVVNfU1VDQ0VTUykgeworICAgICAgICAgICAgQkNyeXB0
Q2xvc2VBbGdvcml0aG1Qcm92aWRlcihfbGlic3NoMl93aW5jbmcuaEFsZzNERVNfQ0JDLCAw
KTsKKyAgICAgICAgfQorICAgIH0KK30KKwordm9pZAorX2xpYnNzaDJfd2luY25nX2ZyZWUo
dm9pZCkKK3sKKyAgICBCQ3J5cHRDbG9zZUFsZ29yaXRobVByb3ZpZGVyKF9saWJzc2gyX3dp
bmNuZy5oQWxnUk5HLCAwKTsKKyAgICBCQ3J5cHRDbG9zZUFsZ29yaXRobVByb3ZpZGVyKF9s
aWJzc2gyX3dpbmNuZy5oQWxnSGFzaE1ENSwgMCk7CisgICAgQkNyeXB0Q2xvc2VBbGdvcml0
aG1Qcm92aWRlcihfbGlic3NoMl93aW5jbmcuaEFsZ0hhc2hTSEExLCAwKTsKKyAgICBCQ3J5
cHRDbG9zZUFsZ29yaXRobVByb3ZpZGVyKF9saWJzc2gyX3dpbmNuZy5oQWxnSG1hY01ENSwg
MCk7CisgICAgQkNyeXB0Q2xvc2VBbGdvcml0aG1Qcm92aWRlcihfbGlic3NoMl93aW5jbmcu
aEFsZ0htYWNTSEExLCAwKTsKKyAgICBCQ3J5cHRDbG9zZUFsZ29yaXRobVByb3ZpZGVyKF9s
aWJzc2gyX3dpbmNuZy5oQWxnUlNBLCAwKTsKKyAgICBCQ3J5cHRDbG9zZUFsZ29yaXRobVBy
b3ZpZGVyKF9saWJzc2gyX3dpbmNuZy5oQWxnRFNBLCAwKTsKKyAgICBCQ3J5cHRDbG9zZUFs
Z29yaXRobVByb3ZpZGVyKF9saWJzc2gyX3dpbmNuZy5oQWxnQUVTX0NCQywgMCk7CisgICAg
QkNyeXB0Q2xvc2VBbGdvcml0aG1Qcm92aWRlcihfbGlic3NoMl93aW5jbmcuaEFsZ1JDNF9O
QSwgMCk7CisgICAgQkNyeXB0Q2xvc2VBbGdvcml0aG1Qcm92aWRlcihfbGlic3NoMl93aW5j
bmcuaEFsZzNERVNfQ0JDLCAwKTsKKworICAgIG1lbXNldCgmX2xpYnNzaDJfd2luY25nLCAw
LCBzaXplb2YoX2xpYnNzaDJfd2luY25nKSk7Cit9CisKK2ludAorX2xpYnNzaDJfd2luY25n
X3JhbmRvbSh2b2lkICpidWYsIGludCBsZW4pCit7CisgICAgcmV0dXJuIEJDcnlwdEdlblJh
bmRvbShfbGlic3NoMl93aW5jbmcuaEFsZ1JORywgYnVmLCBsZW4sIDApCisgICAgICAgICAg
ID09IFNUQVRVU19TVUNDRVNTID8gMCA6IC0xOworfQorCisKKy8qKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwor
LyoKKyAqIFdpbmRvd3MgQ05HIGJhY2tlbmQ6IEhhc2ggZnVuY3Rpb25zCisgKi8KKworaW50
CitfbGlic3NoMl93aW5jbmdfaGFzaF9pbml0KF9saWJzc2gyX3dpbmNuZ19oYXNoX2N0eCAq
Y3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICBCQ1JZUFRfQUxHX0hBTkRMRSBoQWxn
LCB1bnNpZ25lZCBsb25nIGhhc2hsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgIHVu
c2lnbmVkIGNoYXIgKmtleSwgdW5zaWduZWQgbG9uZyBrZXlsZW4pCit7CisgICAgQkNSWVBU
X0hBU0hfSEFORExFIGhIYXNoOworICAgIHVuc2lnbmVkIGNoYXIgKnBiSGFzaE9iamVjdDsK
KyAgICB1bnNpZ25lZCBsb25nIGR3SGFzaE9iamVjdCwgZHdIYXNoLCBjYkRhdGE7CisgICAg
aW50IHJldDsKKworICAgIHJldCA9IEJDcnlwdEdldFByb3BlcnR5KGhBbGcsIEJDUllQVF9I
QVNIX0xFTkdUSCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAodW5zaWduZWQgY2hh
ciAqKSZkd0hhc2gsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGR3SGFz
aCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNiRGF0YSwgMCk7CisgICAgaWYg
KHJldCAhPSBTVEFUVVNfU1VDQ0VTUyB8fCBkd0hhc2ggIT0gaGFzaGxlbikgeworICAgICAg
ICByZXR1cm4gLTE7CisgICAgfQorCisgICAgcmV0ID0gQkNyeXB0R2V0UHJvcGVydHkoaEFs
ZywgQkNSWVBUX09CSkVDVF9MRU5HVEgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
KHVuc2lnbmVkIGNoYXIgKikmZHdIYXNoT2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNpemVvZihkd0hhc2hPYmplY3QpLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICZjYkRhdGEsIDApOworICAgIGlmIChyZXQgIT0gU1RBVFVTX1NVQ0NFU1MpIHsKKyAg
ICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIHBiSGFzaE9iamVjdCA9IG1hbGxvYyhk
d0hhc2hPYmplY3QpOworICAgIGlmICghcGJIYXNoT2JqZWN0KSB7CisgICAgICAgIHJldHVy
biAtMTsKKyAgICB9CisKKworICAgIHJldCA9IEJDcnlwdENyZWF0ZUhhc2goaEFsZywgJmhI
YXNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgcGJIYXNoT2JqZWN0LCBkd0hhc2hP
YmplY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXksIGtleWxlbiwgMCk7Cisg
ICAgaWYgKHJldCAhPSBTVEFUVVNfU1VDQ0VTUykgeworICAgICAgICBmcmVlKHBiSGFzaE9i
amVjdCk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKworICAgIGN0eC0+aEhhc2gg
PSBoSGFzaDsKKyAgICBjdHgtPnBiSGFzaE9iamVjdCA9IHBiSGFzaE9iamVjdDsKKyAgICBj
dHgtPmR3SGFzaE9iamVjdCA9IGR3SGFzaE9iamVjdDsKKyAgICBjdHgtPmNiSGFzaCA9IGR3
SGFzaDsKKworICAgIHJldHVybiAwOworfQorCitpbnQKK19saWJzc2gyX3dpbmNuZ19oYXNo
X3VwZGF0ZShfbGlic3NoMl93aW5jbmdfaGFzaF9jdHggKmN0eCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpkYXRhLCB1bnNpZ25lZCBsb25nIGRhdGFs
ZW4pCit7CisgICAgcmV0dXJuIEJDcnlwdEhhc2hEYXRhKGN0eC0+aEhhc2gsIGRhdGEsIGRh
dGFsZW4sIDApCisgICAgICAgICAgID09IFNUQVRVU19TVUNDRVNTID8gMCA6IC0xOworfQor
CitpbnQKK19saWJzc2gyX3dpbmNuZ19oYXNoX2ZpbmFsKF9saWJzc2gyX3dpbmNuZ19oYXNo
X2N0eCAqY3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAq
aGFzaCkKK3sKKyAgICBpbnQgcmV0OworCisgICAgcmV0ID0gQkNyeXB0RmluaXNoSGFzaChj
dHgtPmhIYXNoLCBoYXNoLCBjdHgtPmNiSGFzaCwgMCk7CisKKyAgICBCQ3J5cHREZXN0cm95
SGFzaChjdHgtPmhIYXNoKTsKKworICAgIGlmIChjdHgtPnBiSGFzaE9iamVjdCkKKyAgICAg
ICAgZnJlZShjdHgtPnBiSGFzaE9iamVjdCk7CisKKyAgICBtZW1zZXQoY3R4LCAwLCBzaXpl
b2YoX2xpYnNzaDJfd2luY25nX2hhc2hfY3R4KSk7CisKKyAgICByZXR1cm4gcmV0OworfQor
CitpbnQKK19saWJzc2gyX3dpbmNuZ19oYXNoKHVuc2lnbmVkIGNoYXIgKmRhdGEsIHVuc2ln
bmVkIGxvbmcgZGF0YWxlbiwKKyAgICAgICAgICAgICAgICAgICAgIEJDUllQVF9BTEdfSEFO
RExFIGhBbGcsCisgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpoYXNoLCB1
bnNpZ25lZCBsb25nIGhhc2hsZW4pCit7CisgICAgX2xpYnNzaDJfd2luY25nX2hhc2hfY3R4
IGN0eDsKKworICAgIGlmICghX2xpYnNzaDJfd2luY25nX2hhc2hfaW5pdCgmY3R4LCBoQWxn
LCBoYXNobGVuLCBOVUxMLCAwKSkgeworICAgICAgICBpZiAoIV9saWJzc2gyX3dpbmNuZ19o
YXNoX3VwZGF0ZSgmY3R4LCBkYXRhLCBkYXRhbGVuKSkgeworICAgICAgICAgICAgaWYgKCFf
bGlic3NoMl93aW5jbmdfaGFzaF9maW5hbCgmY3R4LCBoYXNoKSkgeworICAgICAgICAgICAg
ICAgIHJldHVybiAwOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAg
cmV0dXJuIC0xOworfQorCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoKKyAqIFdpbmRvd3MgQ05H
IGJhY2tlbmQ6IEhNQUMgZnVuY3Rpb25zCisgKi8KKworaW50CitfbGlic3NoMl93aW5jbmdf
aG1hY19maW5hbChfbGlic3NoMl93aW5jbmdfaGFzaF9jdHggKmN0eCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmhhc2gpCit7CisgICAgcmV0dXJuIEJD
cnlwdEZpbmlzaEhhc2goY3R4LT5oSGFzaCwgaGFzaCwgY3R4LT5jYkhhc2gsIDApCisgICAg
ICAgICAgID09IFNUQVRVU19TVUNDRVNTID8gMCA6IC0xOworfQorCit2b2lkCitfbGlic3No
Ml93aW5jbmdfaG1hY19jbGVhbnVwKF9saWJzc2gyX3dpbmNuZ19oYXNoX2N0eCAqY3R4KQor
eworICAgIEJDcnlwdERlc3Ryb3lIYXNoKGN0eC0+aEhhc2gpOworCisgICAgaWYgKGN0eC0+
cGJIYXNoT2JqZWN0KQorICAgICAgICBmcmVlKGN0eC0+cGJIYXNoT2JqZWN0KTsKKworICAg
IG1lbXNldChjdHgsIDAsIHNpemVvZihfbGlic3NoMl93aW5jbmdfaGFzaF9jdHgpKTsKK30K
KworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKi8KKy8qCisgKiBXaW5kb3dzIENORyBiYWNrZW5kOiBLZXkg
ZnVuY3Rpb25zCisgKi8KKworaW50CitfbGlic3NoMl93aW5jbmdfa2V5X3NoYTFfdmVyaWZ5
KF9saWJzc2gyX3dpbmNuZ19rZXlfY3R4ICpjdHgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNpZywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBzaWdfbGVuLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICptLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIG1fbGVuLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIGZsYWdzKQoreworICAgIEJDUllQ
VF9QS0NTMV9QQURESU5HX0lORk8gcGFkZGluZ0luZm9QS0NTMTsKKyAgICB2b2lkICpwUGFk
ZGluZ0luZm87CisgICAgdW5zaWduZWQgY2hhciAqZGF0YSwgKmhhc2g7CisgICAgdW5zaWdu
ZWQgbG9uZyBkYXRhbGVuLCBoYXNobGVuOworICAgIGludCByZXQ7CisKKyAgICBkYXRhbGVu
ID0gbV9sZW47CisgICAgZGF0YSA9IG1hbGxvYyhkYXRhbGVuKTsKKyAgICBpZiAoIWRhdGEp
IHsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGhhc2hsZW4gPSBTSEFfRElH
RVNUX0xFTkdUSDsKKyAgICBoYXNoID0gbWFsbG9jKGhhc2hsZW4pOworICAgIGlmICghaGFz
aCkgeworICAgICAgICBmcmVlKGRhdGEpOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQor
CisgICAgbWVtY3B5KGRhdGEsIG0sIGRhdGFsZW4pOworCisgICAgcmV0ID0gX2xpYnNzaDJf
d2luY25nX2hhc2goZGF0YSwgZGF0YWxlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBfbGlic3NoMl93aW5jbmcuaEFsZ0hhc2hTSEExLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGhhc2gsIGhhc2hsZW4pOworCisgICAgZnJlZShkYXRhKTsKKworICAg
IGlmIChyZXQpIHsKKyAgICAgICAgZnJlZShoYXNoKTsKKyAgICAgICAgcmV0dXJuIC0xOwor
ICAgIH0KKworICAgIGRhdGFsZW4gPSBzaWdfbGVuOworICAgIGRhdGEgPSBtYWxsb2MoZGF0
YWxlbik7CisgICAgaWYgKCFkYXRhKSB7CisgICAgICAgIGZyZWUoaGFzaCk7CisgICAgICAg
IHJldHVybiAtMTsKKyAgICB9CisKKyAgICBpZiAoZmxhZ3MgJiBCQ1JZUFRfUEFEX1BLQ1Mx
KSB7CisgICAgICAgIHBhZGRpbmdJbmZvUEtDUzEucHN6QWxnSWQgPSBCQ1JZUFRfU0hBMV9B
TEdPUklUSE07CisgICAgICAgIHBQYWRkaW5nSW5mbyA9ICZwYWRkaW5nSW5mb1BLQ1MxOwor
ICAgIH0KKworICAgIG1lbWNweShkYXRhLCBzaWcsIGRhdGFsZW4pOworCisgICAgcmV0ID0g
QkNyeXB0VmVyaWZ5U2lnbmF0dXJlKGN0eC0+aEtleSwgcFBhZGRpbmdJbmZvLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNoLCBoYXNobGVuLCBkYXRhLCBkYXRhbGVu
LCBmbGFncyk7CisKKyAgICBmcmVlKGhhc2gpOworICAgIGZyZWUoZGF0YSk7CisKKyAgICBy
ZXR1cm4gcmV0ID09IFNUQVRVU19TVUNDRVNTID8gMCA6IC0xOworfQorCisjaWZkZWYgSEFW
RV9MSUJDUllQVDMyCitzdGF0aWMgaW50CitfbGlic3NoMl93aW5jbmdfbG9hZF9wZW0oTElC
U1NIMl9TRVNTSU9OICpzZXNzaW9uLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IGNoYXIgKmZpbGVuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIg
KnBhc3NwaHJhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaGVh
ZGVyYmVnaW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqaGVhZGVy
ZW5kLAorICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKipkYXRhLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCAqZGF0YWxlbikKK3sKKyAg
ICBGSUxFICpmcDsKKyAgICBpbnQgcmV0OworCisgICAgKHZvaWQpcGFzc3BocmFzZTsKKwor
ICAgIGZwID0gZm9wZW4oZmlsZW5hbWUsICJyIik7CisgICAgaWYgKCFmcCkgeworICAgICAg
ICByZXR1cm4gLTE7CisgICAgfQorCisgICAgcmV0ID0gX2xpYnNzaDJfcGVtX3BhcnNlKHNl
c3Npb24sIGhlYWRlcmJlZ2luLCBoZWFkZXJlbmQsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGZwLCBkYXRhLCBkYXRhbGVuKTsKKworICAgIGZjbG9zZShmcCk7CisKKyAgICBy
ZXR1cm4gcmV0OworfQorCitzdGF0aWMgaW50CitfbGlic3NoMl93aW5jbmdfbG9hZF9wcml2
YXRlKExJQlNTSDJfU0VTU0lPTiAqc2Vzc2lvbiwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgY29uc3QgY2hhciAqZmlsZW5hbWUsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IGNoYXIgKnBhc3NwaHJhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGNoYXIgKipwcGJFbmNvZGVkLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBsb25nICpwY2JFbmNvZGVkKQoreworICAgIHVuc2lnbmVkIGNo
YXIgKmRhdGE7CisgICAgaW50IHJldCwgZGF0YWxlbjsKKworICAgIHJldCA9IF9saWJzc2gy
X3dpbmNuZ19sb2FkX3BlbShzZXNzaW9uLCBmaWxlbmFtZSwgcGFzc3BocmFzZSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIi0tLS0tQkVHSU4gUlNBIFBSSVZBVEUg
S0VZLS0tLS0iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS0tLS1F
TkQgUlNBIFBSSVZBVEUgS0VZLS0tLS0iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmZGF0YSwgJmRhdGFsZW4pOworCisgICAgaWYgKHJldCkgeworICAgICAgICBy
ZXQgPSBfbGlic3NoMl93aW5jbmdfbG9hZF9wZW0oc2Vzc2lvbiwgZmlsZW5hbWUsIHBhc3Nw
aHJhc2UsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS0tLS1C
RUdJTiBEU0EgUFJJVkFURSBLRVktLS0tLSIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAiLS0tLS1FTkQgRFNBIFBSSVZBVEUgS0VZLS0tLS0iLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmRhdGEsICZkYXRhbGVuKTsKKyAg
ICB9CisKKyAgICBpZiAoIXJldCkgeworICAgICAgICAqcHBiRW5jb2RlZCA9IGRhdGE7Cisg
ICAgICAgICpwY2JFbmNvZGVkID0gZGF0YWxlbjsKKyAgICB9CisKKyAgICByZXR1cm4gcmV0
OworfQorCitzdGF0aWMgaW50CitfbGlic3NoMl93aW5jbmdfYXNuX2RlY29kZSh1bnNpZ25l
ZCBjaGFyICpwYkVuY29kZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25l
ZCBsb25nIGNiRW5jb2RlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIExQQ1NUUiBs
cHN6U3RydWN0VHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNo
YXIgKipwcGJEZWNvZGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
bG9uZyAqcGNiRGVjb2RlZCkKK3sKKyAgICB1bnNpZ25lZCBjaGFyICpwYkRlY29kZWQ7Cisg
ICAgdW5zaWduZWQgbG9uZyBjYkRlY29kZWQ7CisgICAgaW50IHJldDsKKworICAgIHJldCA9
IENyeXB0RGVjb2RlT2JqZWN0RXgoWDUwOV9BU05fRU5DT0RJTkcgfCBQS0NTXzdfQVNOX0VO
Q09ESU5HLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHBzelN0cnVjdFR5cGUs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYkVuY29kZWQsIGNiRW5jb2RlZCwg
MCwgTlVMTCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsICZjYkRlY29k
ZWQpOworICAgIGlmICghcmV0KSB7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAg
ICBwYkRlY29kZWQgPSBtYWxsb2MoY2JEZWNvZGVkKTsKKyAgICBpZiAoIXBiRGVjb2RlZCkg
eworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgcmV0ID0gQ3J5cHREZWNvZGVP
YmplY3RFeChYNTA5X0FTTl9FTkNPRElORyB8IFBLQ1NfN19BU05fRU5DT0RJTkcsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBscHN6U3RydWN0VHlwZSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHBiRW5jb2RlZCwgY2JFbmNvZGVkLCAwLCBOVUxMLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcGJEZWNvZGVkLCAmY2JEZWNvZGVkKTsKKyAg
ICBpZiAoIXJldCkgeworICAgICAgICBmcmVlKHBiRGVjb2RlZCk7CisgICAgICAgIHJldHVy
biAtMTsKKyAgICB9CisKKworICAgICpwcGJEZWNvZGVkID0gcGJEZWNvZGVkOworICAgICpw
Y2JEZWNvZGVkID0gY2JEZWNvZGVkOworCisgICAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBp
bnQKK19saWJzc2gyX3dpbmNuZ19ibl9sdG9iKHVuc2lnbmVkIGNoYXIgKnBiSW5wdXQsCisg
ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIGNiSW5wdXQsCisgICAgICAg
ICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICoqcHBiT3V0cHV0LAorICAgICAgICAg
ICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyAqcGNiT3V0cHV0KQoreworICAgIHVuc2ln
bmVkIGNoYXIgKnBiT3V0cHV0OworICAgIHVuc2lnbmVkIGxvbmcgY2JPdXRwdXQsIGluZGV4
LCBvZmZzZXQsIGxlbmd0aDsKKworICAgIGlmIChjYklucHV0IDwgMSkgeworICAgICAgICBy
ZXR1cm4gMDsKKyAgICB9CisKKyAgICBvZmZzZXQgPSAwOworICAgIGxlbmd0aCA9IGNiSW5w
dXQgLSAxOworICAgIGNiT3V0cHV0ID0gY2JJbnB1dDsKKyAgICBpZiAocGJJbnB1dFtsZW5n
dGhdICYgKDEgPDwgNykpIHsKKyAgICAgICAgb2Zmc2V0Kys7CisgICAgICAgIGNiT3V0cHV0
Kys7CisgICAgfQorCisgICAgcGJPdXRwdXQgPSBtYWxsb2MoY2JPdXRwdXQpOworICAgIGlm
ICghcGJPdXRwdXQpIHsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIHBiT3V0
cHV0WzBdID0gMDsKKyAgICBmb3IgKGluZGV4ID0gMDsgaW5kZXggPCBjYklucHV0OyBpbmRl
eCsrKSB7CisgICAgICAgIHBiT3V0cHV0W2luZGV4ICsgb2Zmc2V0XSA9IHBiSW5wdXRbbGVu
Z3RoIC0gaW5kZXhdOworICAgIH0KKworCisgICAgKnBwYk91dHB1dCA9IHBiT3V0cHV0Owor
ICAgICpwY2JPdXRwdXQgPSBjYk91dHB1dDsKKworICAgIHJldHVybiAwOworfQorCitzdGF0
aWMgaW50CitfbGlic3NoMl93aW5jbmdfYXNuX2RlY29kZV9ibih1bnNpZ25lZCBjaGFyICpw
YkVuY29kZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25n
IGNiRW5jb2RlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNo
YXIgKipwcGJEZWNvZGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgbG9uZyAqcGNiRGVjb2RlZCkKK3sKKyAgICB1bnNpZ25lZCBjaGFyICpwYkRlY29kZWQs
ICpwYkludGVnZXI7CisgICAgdW5zaWduZWQgbG9uZyBjYkRlY29kZWQsIGNiSW50ZWdlcjsK
KyAgICBpbnQgcmV0OworCisgICAgcmV0ID0gX2xpYnNzaDJfd2luY25nX2Fzbl9kZWNvZGUo
cGJFbmNvZGVkLCBjYkVuY29kZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgWDUwOV9NVUxUSV9CWVRFX1VJTlQsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJnBiSW50ZWdlciwgJmNiSW50ZWdlcik7CisgICAgaWYgKCFyZXQpIHsK
KyAgICAgICAgcmV0ID0gX2xpYnNzaDJfd2luY25nX2JuX2x0b2IoKChQQ1JZUFRfREFUQV9C
TE9CKXBiSW50ZWdlciktPnBiRGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgKChQQ1JZUFRfREFUQV9CTE9CKXBiSW50ZWdlciktPmNiRGF0YSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnBiRGVjb2RlZCwgJmNiRGVjb2Rl
ZCk7CisgICAgICAgIGlmICghcmV0KSB7CisgICAgICAgICAgICAqcHBiRGVjb2RlZCA9IHBi
RGVjb2RlZDsKKyAgICAgICAgICAgICpwY2JEZWNvZGVkID0gY2JEZWNvZGVkOworICAgICAg
ICB9CisgICAgICAgIGZyZWUocGJJbnRlZ2VyKTsKKyAgICB9CisKKyAgICByZXR1cm4gcmV0
OworfQorCitzdGF0aWMgaW50CitfbGlic3NoMl93aW5jbmdfYXNuX2RlY29kZV9ibnModW5z
aWduZWQgY2hhciAqcGJFbmNvZGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHVuc2lnbmVkIGxvbmcgY2JFbmNvZGVkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHVuc2lnbmVkIGNoYXIgKioqcHJwYkRlY29kZWQsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdW5zaWduZWQgbG9uZyAqKnByY2JEZWNvZGVkLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgKnBjYkNvdW50KQoreworICAgIFBD
UllQVF9ERVJfQkxPQiBwQmxvYjsKKyAgICB1bnNpZ25lZCBjaGFyICpwYkRlY29kZWQsICoq
cnBiRGVjb2RlZDsKKyAgICB1bnNpZ25lZCBsb25nIGNiRGVjb2RlZCwgKnJjYkRlY29kZWQs
IGluZGV4LCBsZW5ndGg7CisgICAgaW50IHJldDsKKworICAgIHJldCA9IF9saWJzc2gyX3dp
bmNuZ19hc25fZGVjb2RlKHBiRW5jb2RlZCwgY2JFbmNvZGVkLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFg1MDlfU0VRVUVOQ0VfT0ZfQU5ZLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwYkRlY29kZWQsICZjYkRlY29kZWQpOwor
ICAgIGlmICghcmV0KSB7CisgICAgICAgIGxlbmd0aCA9ICgoUENSWVBUX0RBVEFfQkxPQilw
YkRlY29kZWQpLT5jYkRhdGE7CisKKyAgICAgICAgcnBiRGVjb2RlZCA9IG1hbGxvYyhzaXpl
b2YoUEJZVEUpICogbGVuZ3RoKTsKKyAgICAgICAgaWYgKHJwYkRlY29kZWQpIHsKKyAgICAg
ICAgICAgIHJjYkRlY29kZWQgPSBtYWxsb2Moc2l6ZW9mKERXT1JEKSAqIGxlbmd0aCk7Cisg
ICAgICAgICAgICBpZiAocmNiRGVjb2RlZCkgeworICAgICAgICAgICAgICAgIGZvciAoaW5k
ZXggPSAwOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKykgeworICAgICAgICAgICAgICAgICAg
ICBwQmxvYiA9ICYoKFBDUllQVF9ERVJfQkxPQikKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICgoUENSWVBUX0RBVEFfQkxPQilwYkRlY29kZWQpLT5wYkRhdGEpW2luZGV4XTsK
KyAgICAgICAgICAgICAgICAgICAgcmV0ID0gX2xpYnNzaDJfd2luY25nX2Fzbl9kZWNvZGVf
Ym4ocEJsb2ItPnBiRGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcEJsb2ItPmNiRGF0YSwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJwYkRlY29kZWRbaW5k
ZXhdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAmcmNiRGVjb2RlZFtpbmRleF0pOworICAgICAgICAgICAgICAgICAgICBpZiAo
cmV0KQorICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAg
fQorCisgICAgICAgICAgICAgICAgaWYgKHJldCkgeworICAgICAgICAgICAgICAgICAgICBm
b3IgKGxlbmd0aCA9IDA7IGxlbmd0aCA8IGluZGV4OyBsZW5ndGgrKykgeworICAgICAgICAg
ICAgICAgICAgICAgICAgaWYgKHJwYkRlY29kZWRbbGVuZ3RoXSkgeworICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZyZWUocnBiRGVjb2RlZFtsZW5ndGhdKTsKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBycGJEZWNvZGVkW2xlbmd0aF0gPSBOVUxMOworICAgICAgICAg
ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgKnBycGJEZWNvZGVkID0gcnBiRGVj
b2RlZDsKKyAgICAgICAgICAgICAgICAgICAgKnByY2JEZWNvZGVkID0gcmNiRGVjb2RlZDsK
KyAgICAgICAgICAgICAgICAgICAgKnBjYkNvdW50ID0gbGVuZ3RoOworICAgICAgICAgICAg
ICAgIH0KKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgZnJlZShycGJE
ZWNvZGVkKTsKKyAgICAgICAgICAgICAgICByZXQgPSAtMTsKKyAgICAgICAgICAgIH0KKwor
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgcmV0ID0gLTE7CisgICAgICAgIH0KKwor
ICAgICAgICBmcmVlKHBiRGVjb2RlZCk7CisgICAgfQorCisgICAgcmV0dXJuIHJldDsKK30K
KyNlbmRpZiAvKiBIQVZFX0xJQkNSWVBUMzIgKi8KKworc3RhdGljIHVuc2lnbmVkIGxvbmcK
K19saWJzc2gyX3dpbmNuZ19ibl9zaXplKGNvbnN0IHVuc2lnbmVkIGNoYXIgKmJpZ251bSwK
KyAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgbGVuZ3RoKQoreworICAg
IHVuc2lnbmVkIGxvbmcgb2Zmc2V0OworCisgICAgaWYgKCFiaWdudW0pCisgICAgICAgIHJl
dHVybiAwOworCisgICAgbGVuZ3RoLS07CisKKyAgICBvZmZzZXQgPSAwOworICAgIHdoaWxl
ICghKCooYmlnbnVtICsgb2Zmc2V0KSkgJiYgKG9mZnNldCA8IGxlbmd0aCkpCisgICAgICAg
IG9mZnNldCsrOworCisgICAgbGVuZ3RoKys7CisKKyAgICByZXR1cm4gbGVuZ3RoIC0gb2Zm
c2V0OworfQorCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoKKyAqIFdpbmRvd3MgQ05HIGJhY2tl
bmQ6IFJTQSBmdW5jdGlvbnMKKyAqLworCitpbnQKK19saWJzc2gyX3dpbmNuZ19yc2FfbmV3
KGxpYnNzaDJfcnNhX2N0eCAqKnJzYSwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IHVuc2lnbmVkIGNoYXIgKmVkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu
ZWQgbG9uZyBlbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQg
Y2hhciAqbmRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIG5s
ZW4sCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpkZGF0
YSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgZGxlbiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnBkYXRhLAorICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBwbGVuLAorICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcWRhdGEsCisgICAgICAgICAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBsb25nIHFsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCB1bnNpZ25lZCBjaGFyICplMWRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICB1
bnNpZ25lZCBsb25nIGUxbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5z
aWduZWQgY2hhciAqZTJkYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
bG9uZyBlMmxlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNo
YXIgKmNvZWZmZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcg
Y29lZmZsZW4pCit7CisgICAgQkNSWVBUX0tFWV9IQU5ETEUgaEtleTsKKyAgICBCQ1JZUFRf
UlNBS0VZX0JMT0IgKnJzYWtleTsKKyAgICBMUENXU1RSIGxwc3pCbG9iVHlwZTsKKyAgICB1
bnNpZ25lZCBjaGFyICprZXk7CisgICAgdW5zaWduZWQgbG9uZyBrZXlsZW4sIG9mZnNldCwg
bWxlbiwgcDFsZW4sIHAybGVuOworICAgIGludCByZXQ7CisKKyAgICBtbGVuID0gbWF4KF9s
aWJzc2gyX3dpbmNuZ19ibl9zaXplKG5kYXRhLCBubGVuKSwKKyAgICAgICAgICAgICAgIF9s
aWJzc2gyX3dpbmNuZ19ibl9zaXplKGRkYXRhLCBkbGVuKSk7CisgICAgb2Zmc2V0ID0gc2l6
ZW9mKEJDUllQVF9SU0FLRVlfQkxPQik7CisgICAga2V5bGVuID0gb2Zmc2V0ICsgZWxlbiAr
IG1sZW47CisgICAgaWYgKGRkYXRhICYmIGRsZW4gPiAwKSB7CisgICAgICAgIHAxbGVuID0g
bWF4KF9saWJzc2gyX3dpbmNuZ19ibl9zaXplKHBkYXRhLCBwbGVuKSwKKyAgICAgICAgICAg
ICAgICAgICAgX2xpYnNzaDJfd2luY25nX2JuX3NpemUoZTFkYXRhLCBlMWxlbikpOworICAg
ICAgICBwMmxlbiA9IG1heChfbGlic3NoMl93aW5jbmdfYm5fc2l6ZShxZGF0YSwgcWxlbiks
CisgICAgICAgICAgICAgICAgICAgIF9saWJzc2gyX3dpbmNuZ19ibl9zaXplKGUyZGF0YSwg
ZTJsZW4pKTsKKyAgICAgICAga2V5bGVuICs9IHAxbGVuICogMyArIHAybGVuICogMiArIG1s
ZW47CisgICAgfQorCisgICAga2V5ID0gbWFsbG9jKGtleWxlbik7CisgICAgaWYgKCFrZXkp
IHsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIG1lbXNldChrZXksIDAsIGtl
eWxlbik7CisKKworICAgIC8qIGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vbGlicmFyeS93
aW5kb3dzL2Rlc2t0b3AvYWEzNzU1MzEuYXNweCAqLworICAgIHJzYWtleSA9IChCQ1JZUFRf
UlNBS0VZX0JMT0IgKilrZXk7CisgICAgcnNha2V5LT5CaXRMZW5ndGggPSBtbGVuICogODsK
KyAgICByc2FrZXktPmNiUHVibGljRXhwID0gZWxlbjsKKyAgICByc2FrZXktPmNiTW9kdWx1
cyA9IG1sZW47CisKKyAgICBtZW1jcHkoa2V5ICsgb2Zmc2V0LCBlZGF0YSwgZWxlbik7Cisg
ICAgb2Zmc2V0ICs9IGVsZW47CisKKyAgICBpZiAobmxlbiA8IG1sZW4pCisgICAgICAgIG1l
bWNweShrZXkgKyBvZmZzZXQgKyBtbGVuIC0gbmxlbiwgbmRhdGEsIG5sZW4pOworICAgIGVs
c2UKKyAgICAgICAgbWVtY3B5KGtleSArIG9mZnNldCwgbmRhdGEgKyBubGVuIC0gbWxlbiwg
bWxlbik7CisKKyAgICBpZiAoZGRhdGEgJiYgZGxlbiA+IDApIHsKKyAgICAgICAgb2Zmc2V0
ICs9IG1sZW47CisKKyAgICAgICAgaWYgKHBsZW4gPCBwMWxlbikKKyAgICAgICAgICAgIG1l
bWNweShrZXkgKyBvZmZzZXQgKyBwMWxlbiAtIHBsZW4sIHBkYXRhLCBwbGVuKTsKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgbWVtY3B5KGtleSArIG9mZnNldCwgcGRhdGEgKyBwbGVu
IC0gcDFsZW4sIHAxbGVuKTsKKyAgICAgICAgb2Zmc2V0ICs9IHAxbGVuOworCisgICAgICAg
IGlmIChxbGVuIDwgcDJsZW4pCisgICAgICAgICAgICBtZW1jcHkoa2V5ICsgb2Zmc2V0ICsg
cDJsZW4gLSBxbGVuLCBxZGF0YSwgcWxlbik7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAg
IG1lbWNweShrZXkgKyBvZmZzZXQsIHFkYXRhICsgcWxlbiAtIHAybGVuLCBwMmxlbik7Cisg
ICAgICAgIG9mZnNldCArPSBwMmxlbjsKKworICAgICAgICBpZiAoZTFsZW4gPCBwMWxlbikK
KyAgICAgICAgICAgIG1lbWNweShrZXkgKyBvZmZzZXQgKyBwMWxlbiAtIGUxbGVuLCBlMWRh
dGEsIGUxbGVuKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbWVtY3B5KGtleSArIG9m
ZnNldCwgZTFkYXRhICsgZTFsZW4gLSBwMWxlbiwgcDFsZW4pOworICAgICAgICBvZmZzZXQg
Kz0gcDFsZW47CisKKyAgICAgICAgaWYgKGUybGVuIDwgcDJsZW4pCisgICAgICAgICAgICBt
ZW1jcHkoa2V5ICsgb2Zmc2V0ICsgcDJsZW4gLSBlMmxlbiwgZTJkYXRhLCBlMmxlbik7Cisg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1lbWNweShrZXkgKyBvZmZzZXQsIGUyZGF0YSAr
IGUybGVuIC0gcDJsZW4sIHAybGVuKTsKKyAgICAgICAgb2Zmc2V0ICs9IHAybGVuOworCisg
ICAgICAgIGlmIChjb2VmZmxlbiA8IHAxbGVuKQorICAgICAgICAgICAgbWVtY3B5KGtleSAr
IG9mZnNldCArIHAxbGVuIC0gY29lZmZsZW4sIGNvZWZmZGF0YSwgY29lZmZsZW4pOworICAg
ICAgICBlbHNlCisgICAgICAgICAgICBtZW1jcHkoa2V5ICsgb2Zmc2V0LCBjb2VmZmRhdGEg
KyBjb2VmZmxlbiAtIHAxbGVuLCBwMWxlbik7CisgICAgICAgIG9mZnNldCArPSBwMWxlbjsK
KworICAgICAgICBpZiAoZGxlbiA8IG1sZW4pCisgICAgICAgICAgICBtZW1jcHkoa2V5ICsg
b2Zmc2V0ICsgbWxlbiAtIGRsZW4sIGRkYXRhLCBkbGVuKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgbWVtY3B5KGtleSArIG9mZnNldCwgZGRhdGEgKyBkbGVuIC0gbWxlbiwgbWxl
bik7CisKKyAgICAgICAgbHBzekJsb2JUeXBlID0gQkNSWVBUX1JTQUZVTExQUklWQVRFX0JM
T0I7CisgICAgICAgIHJzYWtleS0+TWFnaWMgPSBCQ1JZUFRfUlNBRlVMTFBSSVZBVEVfTUFH
SUM7CisgICAgICAgIHJzYWtleS0+Y2JQcmltZTEgPSBwMWxlbjsKKyAgICAgICAgcnNha2V5
LT5jYlByaW1lMiA9IHAybGVuOworICAgIH0gZWxzZSB7CisgICAgICAgIGxwc3pCbG9iVHlw
ZSA9IEJDUllQVF9SU0FQVUJMSUNfQkxPQjsKKyAgICAgICAgcnNha2V5LT5NYWdpYyA9IEJD
UllQVF9SU0FQVUJMSUNfTUFHSUM7CisgICAgICAgIHJzYWtleS0+Y2JQcmltZTEgPSAwOwor
ICAgICAgICByc2FrZXktPmNiUHJpbWUyID0gMDsKKyAgICB9CisKKworICAgIHJldCA9IEJD
cnlwdEltcG9ydEtleVBhaXIoX2xpYnNzaDJfd2luY25nLmhBbGdSU0EsIE5VTEwsIGxwc3pC
bG9iVHlwZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZoS2V5LCBrZXksIGtl
eWxlbiwgMCk7CisgICAgaWYgKHJldCAhPSBTVEFUVVNfU1VDQ0VTUykgeworICAgICAgICBm
cmVlKGtleSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKworICAgICpyc2EgPSBt
YWxsb2Moc2l6ZW9mKGxpYnNzaDJfcnNhX2N0eCkpOworICAgIGlmICghKCpyc2EpKSB7Cisg
ICAgICAgIEJDcnlwdERlc3Ryb3lLZXkoaEtleSk7CisgICAgICAgIGZyZWUoa2V5KTsKKyAg
ICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgICgqcnNhKS0+aEtleSA9IGhLZXk7Cisg
ICAgKCpyc2EpLT5wYktleU9iamVjdCA9IGtleTsKKyAgICAoKnJzYSktPmNiS2V5T2JqZWN0
ID0ga2V5bGVuOworCisgICAgcmV0dXJuIDA7Cit9CisKK2ludAorX2xpYnNzaDJfd2luY25n
X3JzYV9uZXdfcHJpdmF0ZShsaWJzc2gyX3JzYV9jdHggKipyc2EsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIExJQlNTSDJfU0VTU0lPTiAqc2Vzc2lvbiwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqZmlsZW5hbWUsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnBhc3NwaHJh
c2UpCit7CisjaWZkZWYgSEFWRV9MSUJDUllQVDMyCisgICAgQkNSWVBUX0tFWV9IQU5ETEUg
aEtleTsKKyAgICB1bnNpZ25lZCBjaGFyICpwYkVuY29kZWQsICpwYlN0cnVjdEluZm87Cisg
ICAgdW5zaWduZWQgbG9uZyBjYkVuY29kZWQsIGNiU3RydWN0SW5mbzsKKyAgICBpbnQgcmV0
OworCisgICAgKHZvaWQpc2Vzc2lvbjsKKworICAgIHJldCA9IF9saWJzc2gyX3dpbmNuZ19s
b2FkX3ByaXZhdGUoc2Vzc2lvbiwgZmlsZW5hbWUsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAoY29uc3QgY2hhciAqKXBhc3NwaHJhc2UsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcGJFbmNvZGVkLCAmY2JFbmNvZGVkKTsK
KyAgICBpZiAocmV0KSB7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICByZXQg
PSBfbGlic3NoMl93aW5jbmdfYXNuX2RlY29kZShwYkVuY29kZWQsIGNiRW5jb2RlZCwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQS0NTX1JTQV9QUklWQVRFX0tF
WSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcGJTdHJ1Y3RJbmZv
LCAmY2JTdHJ1Y3RJbmZvKTsKKworICAgIGZyZWUocGJFbmNvZGVkKTsKKworICAgIGlmIChy
ZXQpIHsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworCisgICAgcmV0ID0gQkNyeXB0
SW1wb3J0S2V5UGFpcihfbGlic3NoMl93aW5jbmcuaEFsZ1JTQSwgTlVMTCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIExFR0FDWV9SU0FQUklWQVRFX0JMT0IsICZoS2V5LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGJTdHJ1Y3RJbmZvLCBjYlN0cnVjdElu
Zm8sIDApOworICAgIGlmIChyZXQgIT0gU1RBVFVTX1NVQ0NFU1MpIHsKKyAgICAgICAgZnJl
ZShwYlN0cnVjdEluZm8pOworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisKKyAgICAq
cnNhID0gbWFsbG9jKHNpemVvZihsaWJzc2gyX3JzYV9jdHgpKTsKKyAgICBpZiAoISgqcnNh
KSkgeworICAgICAgICBCQ3J5cHREZXN0cm95S2V5KGhLZXkpOworICAgICAgICBmcmVlKHBi
U3RydWN0SW5mbyk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisKKyAgICAoKnJzYSkt
PmhLZXkgPSBoS2V5OworICAgICgqcnNhKS0+cGJLZXlPYmplY3QgPSBwYlN0cnVjdEluZm87
CisgICAgKCpyc2EpLT5jYktleU9iamVjdCA9IGNiU3RydWN0SW5mbzsKKworICAgIHJldHVy
biAwOworI2Vsc2UKKyAgICAodm9pZClyc2E7CisgICAgKHZvaWQpZmlsZW5hbWU7CisgICAg
KHZvaWQpcGFzc3BocmFzZTsKKworICAgIHJldHVybiBfbGlic3NoMl9lcnJvcihzZXNzaW9u
LCBMSUJTU0gyX0VSUk9SX0ZJTEUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICJVbmFi
bGUgdG8gbG9hZCBSU0Ega2V5IGZyb20gcHJpdmF0ZSBrZXkgZmlsZTogIgorICAgICAgICAg
ICAgICAgICAgICAgICAgICAiTWV0aG9kIHVuc3VwcG9ydGVkIGluIFdpbmRvd3MgQ05HIGJh
Y2tlbmQiKTsKKyNlbmRpZiAvKiBIQVZFX0xJQkNSWVBUMzIgKi8KK30KKworaW50CitfbGli
c3NoMl93aW5jbmdfcnNhX3NoYTFfdmVyaWZ5KGxpYnNzaDJfcnNhX2N0eCAqcnNhLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzaWcs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgc2lnX2xl
biwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hh
ciAqbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbG9uZyBt
X2xlbikKK3sKKyAgICByZXR1cm4gX2xpYnNzaDJfd2luY25nX2tleV9zaGExX3ZlcmlmeShy
c2EsIHNpZywgc2lnX2xlbiwgbSwgbV9sZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgQkNSWVBUX1BBRF9QS0NTMSk7Cit9CisKK2ludAorX2xpYnNz
aDJfd2luY25nX3JzYV9zaGExX3NpZ24oTElCU1NIMl9TRVNTSU9OICpzZXNzaW9uLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlic3NoMl9yc2FfY3R4ICpyc2EsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpoYXNoLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGhhc2hfbGVuLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqKnNpZ25hdHVyZSwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCAqc2lnbmF0dXJlX2xlbikKK3sK
KyAgICBCQ1JZUFRfUEtDUzFfUEFERElOR19JTkZPIHBhZGRpbmdJbmZvOworICAgIHVuc2ln
bmVkIGNoYXIgKmRhdGEsICpzaWc7CisgICAgdW5zaWduZWQgbG9uZyBjYkRhdGEsIGRhdGFs
ZW4sIHNpZ2xlbjsKKyAgICBpbnQgcmV0OworCisgICAgZGF0YWxlbiA9IGhhc2hfbGVuOwor
ICAgIGRhdGEgPSBtYWxsb2MoZGF0YWxlbik7CisgICAgaWYgKCFkYXRhKSB7CisgICAgICAg
IHJldHVybiAtMTsKKyAgICB9CisKKyAgICBwYWRkaW5nSW5mby5wc3pBbGdJZCA9IEJDUllQ
VF9TSEExX0FMR09SSVRITTsKKworICAgIG1lbWNweShkYXRhLCBoYXNoLCBkYXRhbGVuKTsK
KworICAgIHJldCA9IEJDcnlwdFNpZ25IYXNoKHJzYS0+aEtleSwgJnBhZGRpbmdJbmZvLAor
ICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEsIGRhdGFsZW4sIE5VTEwsIDAsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgJmNiRGF0YSwgQkNSWVBUX1BBRF9QS0NTMSk7CisgICAg
aWYgKHJldCA9PSBTVEFUVVNfU1VDQ0VTUykgeworICAgICAgICBzaWdsZW4gPSBjYkRhdGE7
CisgICAgICAgIHNpZyA9IExJQlNTSDJfQUxMT0Moc2Vzc2lvbiwgc2lnbGVuKTsKKyAgICAg
ICAgaWYgKHNpZykgeworICAgICAgICAgICAgcmV0ID0gQkNyeXB0U2lnbkhhc2gocnNhLT5o
S2V5LCAmcGFkZGluZ0luZm8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBk
YXRhLCBkYXRhbGVuLCBzaWcsIHNpZ2xlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICZjYkRhdGEsIEJDUllQVF9QQURfUEtDUzEpOworICAgICAgICAgICAgaWYgKHJl
dCA9PSBTVEFUVVNfU1VDQ0VTUykgeworICAgICAgICAgICAgICAgICpzaWduYXR1cmVfbGVu
ID0gc2lnbGVuOworICAgICAgICAgICAgICAgICpzaWduYXR1cmUgPSBzaWc7CisgICAgICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgIExJQlNTSDJfRlJFRShzZXNzaW9uLCBz
aWcpOworICAgICAgICAgICAgfQorICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIHJldCA9
IFNUQVRVU19OT19NRU1PUlk7CisgICAgfQorCisgICAgZnJlZShkYXRhKTsKKworICAgIHJl
dHVybiByZXQgPT0gU1RBVFVTX1NVQ0NFU1MgPyAwIDogLTE7Cit9CisKK3ZvaWQKK19saWJz
c2gyX3dpbmNuZ19yc2FfZnJlZShsaWJzc2gyX3JzYV9jdHggKnJzYSkKK3sKKyAgICBpZiAo
IXJzYSkKKyAgICAgICAgcmV0dXJuOworCisgICAgQkNyeXB0RGVzdHJveUtleShyc2EtPmhL
ZXkpOworCisgICAgaWYgKHJzYS0+cGJLZXlPYmplY3QpCisgICAgICAgIGZyZWUocnNhLT5w
YktleU9iamVjdCk7CisKKyAgICBtZW1zZXQocnNhLCAwLCBzaXplb2YobGlic3NoMl9yc2Ff
Y3R4KSk7CisgICAgZnJlZShyc2EpOworfQorCisKKy8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoKKyAq
IFdpbmRvd3MgQ05HIGJhY2tlbmQ6IERTQSBmdW5jdGlvbnMKKyAqLworCisjaWYgTElCU1NI
Ml9EU0EKK2ludAorX2xpYnNzaDJfd2luY25nX2RzYV9uZXcobGlic3NoMl9kc2FfY3R4ICoq
ZHNhLAorICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcGRh
dGEsCisgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIHBsZW4sCisgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpxZGF0YSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgcWxlbiwKKyAgICAgICAgICAgICAg
ICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmdkYXRhLAorICAgICAgICAgICAgICAg
ICAgICAgICAgdW5zaWduZWQgbG9uZyBnbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAg
Y29uc3QgdW5zaWduZWQgY2hhciAqeWRhdGEsCisgICAgICAgICAgICAgICAgICAgICAgICB1
bnNpZ25lZCBsb25nIHlsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNp
Z25lZCBjaGFyICp4ZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxv
bmcgeGxlbikKK3sKKyAgICBCQ1JZUFRfS0VZX0hBTkRMRSBoS2V5OworICAgIEJDUllQVF9E
U0FfS0VZX0JMT0IgKmRzYWtleTsKKyAgICBMUENXU1RSIGxwc3pCbG9iVHlwZTsKKyAgICB1
bnNpZ25lZCBjaGFyICprZXk7CisgICAgdW5zaWduZWQgbG9uZyBrZXlsZW4sIG9mZnNldCwg
bGVuZ3RoOworICAgIGludCByZXQ7CisKKyAgICBsZW5ndGggPSBtYXgobWF4KF9saWJzc2gy
X3dpbmNuZ19ibl9zaXplKHBkYXRhLCBwbGVuKSwKKyAgICAgICAgICAgICAgICAgICAgIF9s
aWJzc2gyX3dpbmNuZ19ibl9zaXplKGdkYXRhLCBnbGVuKSksCisgICAgICAgICAgICAgICAg
IF9saWJzc2gyX3dpbmNuZ19ibl9zaXplKHlkYXRhLCB5bGVuKSk7CisgICAgb2Zmc2V0ID0g
c2l6ZW9mKEJDUllQVF9EU0FfS0VZX0JMT0IpOworICAgIGtleWxlbiA9IG9mZnNldCArIGxl
bmd0aCAqIDM7CisgICAgaWYgKHhkYXRhICYmIHhsZW4gPiAwKQorICAgICAgICBrZXlsZW4g
Kz0gMjA7CisKKyAgICBrZXkgPSBtYWxsb2Moa2V5bGVuKTsKKyAgICBpZiAoIWtleSkgewor
ICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgbWVtc2V0KGtleSwgMCwga2V5bGVu
KTsKKworCisgICAgLyogaHR0cDovL21zZG4ubWljcm9zb2Z0LmNvbS9saWJyYXJ5L3dpbmRv
d3MvZGVza3RvcC9hYTgzMzEyNi5hc3B4ICovCisgICAgZHNha2V5ID0gKEJDUllQVF9EU0Ff
S0VZX0JMT0IgKilrZXk7CisgICAgZHNha2V5LT5jYktleSA9IGxlbmd0aDsKKworICAgIG1l
bXNldChkc2FrZXktPkNvdW50LCAtMSwgc2l6ZW9mKGRzYWtleS0+Q291bnQpKTsKKyAgICBt
ZW1zZXQoZHNha2V5LT5TZWVkLCAtMSwgc2l6ZW9mKGRzYWtleS0+U2VlZCkpOworCisgICAg
aWYgKHFsZW4gPCAyMCkKKyAgICAgICAgbWVtY3B5KGRzYWtleS0+cSArIDIwIC0gcWxlbiwg
cWRhdGEsIHFsZW4pOworICAgIGVsc2UKKyAgICAgICAgbWVtY3B5KGRzYWtleS0+cSwgcWRh
dGEgKyBxbGVuIC0gMjAsIDIwKTsKKworICAgIGlmIChwbGVuIDwgbGVuZ3RoKQorICAgICAg
ICBtZW1jcHkoa2V5ICsgb2Zmc2V0ICsgbGVuZ3RoIC0gcGxlbiwgcGRhdGEsIHBsZW4pOwor
ICAgIGVsc2UKKyAgICAgICAgbWVtY3B5KGtleSArIG9mZnNldCwgcGRhdGEgKyBwbGVuIC0g
bGVuZ3RoLCBsZW5ndGgpOworICAgIG9mZnNldCArPSBsZW5ndGg7CisKKyAgICBpZiAoZ2xl
biA8IGxlbmd0aCkKKyAgICAgICAgbWVtY3B5KGtleSArIG9mZnNldCArIGxlbmd0aCAtIGds
ZW4sIGdkYXRhLCBnbGVuKTsKKyAgICBlbHNlCisgICAgICAgIG1lbWNweShrZXkgKyBvZmZz
ZXQsIGdkYXRhICsgZ2xlbiAtIGxlbmd0aCwgbGVuZ3RoKTsKKyAgICBvZmZzZXQgKz0gbGVu
Z3RoOworCisgICAgaWYgKHlsZW4gPCBsZW5ndGgpCisgICAgICAgIG1lbWNweShrZXkgKyBv
ZmZzZXQgKyBsZW5ndGggLSB5bGVuLCB5ZGF0YSwgeWxlbik7CisgICAgZWxzZQorICAgICAg
ICBtZW1jcHkoa2V5ICsgb2Zmc2V0LCB5ZGF0YSArIHlsZW4gLSBsZW5ndGgsIGxlbmd0aCk7
CisKKyAgICBpZiAoeGRhdGEgJiYgeGxlbiA+IDApIHsKKyAgICAgICAgb2Zmc2V0ICs9IGxl
bmd0aDsKKworICAgICAgICBpZiAoeGxlbiA8IDIwKQorICAgICAgICAgICAgbWVtY3B5KGtl
eSArIG9mZnNldCArIDIwIC0geGxlbiwgeGRhdGEsIHhsZW4pOworICAgICAgICBlbHNlCisg
ICAgICAgICAgICBtZW1jcHkoa2V5ICsgb2Zmc2V0LCB4ZGF0YSArIHhsZW4gLSAyMCwgMjAp
OworCisgICAgICAgIGxwc3pCbG9iVHlwZSA9IEJDUllQVF9EU0FfUFJJVkFURV9CTE9COwor
ICAgICAgICBkc2FrZXktPmR3TWFnaWMgPSBCQ1JZUFRfRFNBX1BSSVZBVEVfTUFHSUM7Cisg
ICAgfSBlbHNlIHsKKyAgICAgICAgbHBzekJsb2JUeXBlID0gQkNSWVBUX0RTQV9QVUJMSUNf
QkxPQjsKKyAgICAgICAgZHNha2V5LT5kd01hZ2ljID0gQkNSWVBUX0RTQV9QVUJMSUNfTUFH
SUM7CisgICAgfQorCisKKyAgICByZXQgPSBCQ3J5cHRJbXBvcnRLZXlQYWlyKF9saWJzc2gy
X3dpbmNuZy5oQWxnRFNBLCBOVUxMLCBscHN6QmxvYlR5cGUsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAmaEtleSwga2V5LCBrZXlsZW4sIDApOworICAgIGlmIChyZXQgIT0g
U1RBVFVTX1NVQ0NFU1MpIHsKKyAgICAgICAgZnJlZShrZXkpOworICAgICAgICByZXR1cm4g
LTE7CisgICAgfQorCisKKyAgICAqZHNhID0gbWFsbG9jKHNpemVvZihsaWJzc2gyX2RzYV9j
dHgpKTsKKyAgICBpZiAoISgqZHNhKSkgeworICAgICAgICBCQ3J5cHREZXN0cm95S2V5KGhL
ZXkpOworICAgICAgICBmcmVlKGtleSk7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisK
KyAgICAoKmRzYSktPmhLZXkgPSBoS2V5OworICAgICgqZHNhKS0+cGJLZXlPYmplY3QgPSBr
ZXk7CisgICAgKCpkc2EpLT5jYktleU9iamVjdCA9IGtleWxlbjsKKworICAgIHJldHVybiAw
OworfQorCitpbnQKK19saWJzc2gyX3dpbmNuZ19kc2FfbmV3X3ByaXZhdGUobGlic3NoMl9k
c2FfY3R4ICoqZHNhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMSUJTU0gy
X1NFU1NJT04gKnNlc3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IGNoYXIgKmZpbGVuYW1lLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCB1bnNpZ25lZCBjaGFyICpwYXNzcGhyYXNlKQoreworI2lmZGVmIEhBVkVfTElCQ1JZ
UFQzMgorICAgIHVuc2lnbmVkIGNoYXIgKnBiRW5jb2RlZCwgKipycGJEZWNvZGVkOworICAg
IHVuc2lnbmVkIGxvbmcgY2JFbmNvZGVkLCAqcmNiRGVjb2RlZCwgaW5kZXgsIGxlbmd0aDsK
KyAgICBpbnQgcmV0OworCisgICAgKHZvaWQpc2Vzc2lvbjsKKworICAgIHJldCA9IF9saWJz
c2gyX3dpbmNuZ19sb2FkX3ByaXZhdGUoc2Vzc2lvbiwgZmlsZW5hbWUsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY29uc3QgY2hhciAqKXBhc3NwaHJhc2Us
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcGJFbmNvZGVkLCAm
Y2JFbmNvZGVkKTsKKyAgICBpZiAocmV0KSB7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9
CisKKyAgICByZXQgPSBfbGlic3NoMl93aW5jbmdfYXNuX2RlY29kZV9ibnMocGJFbmNvZGVk
LCBjYkVuY29kZWQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICZycGJEZWNvZGVkLCAmcmNiRGVjb2RlZCwgJmxlbmd0aCk7CisKKyAgICBmcmVlKHBiRW5j
b2RlZCk7CisKKyAgICBpZiAocmV0KSB7CisgICAgICAgIHJldHVybiAtMTsKKyAgICB9CisK
KworICAgIGlmIChsZW5ndGggPT0gNikgeworICAgICAgICByZXQgPSBfbGlic3NoMl93aW5j
bmdfZHNhX25ldyhkc2EsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHJwYkRlY29kZWRbMV0sIHJjYkRlY29kZWRbMV0sCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJwYkRlY29kZWRbMl0sIHJjYkRlY29kZWRbMl0sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJwYkRlY29kZWRbM10sIHJjYkRlY29k
ZWRbM10sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJwYkRlY29k
ZWRbNF0sIHJjYkRlY29kZWRbNF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHJwYkRlY29kZWRbNV0sIHJjYkRlY29kZWRbNV0pOworICAgIH0gZWxzZSB7Cisg
ICAgICAgIHJldCA9IC0xOworICAgIH0KKworICAgIGZvciAoaW5kZXggPSAwOyBpbmRleCA8
IGxlbmd0aDsgaW5kZXgrKykgeworICAgICAgICBpZiAocnBiRGVjb2RlZFtpbmRleF0pIHsK
KyAgICAgICAgICAgIGZyZWUocnBiRGVjb2RlZFtpbmRleF0pOworICAgICAgICAgICAgcnBi
RGVjb2RlZFtpbmRleF0gPSBOVUxMOworICAgICAgICB9CisgICAgfQorCisgICAgZnJlZShy
cGJEZWNvZGVkKTsKKyAgICBmcmVlKHJjYkRlY29kZWQpOworCisgICAgcmV0dXJuIHJldDsK
KyNlbHNlCisgICAgKHZvaWQpZHNhOworICAgICh2b2lkKWZpbGVuYW1lOworICAgICh2b2lk
KXBhc3NwaHJhc2U7CisKKyAgICByZXR1cm4gX2xpYnNzaDJfZXJyb3Ioc2Vzc2lvbiwgTElC
U1NIMl9FUlJPUl9GSUxFLAorICAgICAgICAgICAgICAgICAgICAgICAgICAiVW5hYmxlIHRv
IGxvYWQgRFNBIGtleSBmcm9tIHByaXZhdGUga2V5IGZpbGU6ICIKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIk1ldGhvZCB1bnN1cHBvcnRlZCBpbiBXaW5kb3dzIENORyBiYWNrZW5k
Iik7CisjZW5kaWYgLyogSEFWRV9MSUJDUllQVDMyICovCit9CisKK2ludAorX2xpYnNzaDJf
d2luY25nX2RzYV9zaGExX3ZlcmlmeShsaWJzc2gyX2RzYV9jdHggKmRzYSwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqc2lnX2ZpeGVk
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFy
ICptLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBsb25nIG1f
bGVuKQoreworICAgIHJldHVybiBfbGlic3NoMl93aW5jbmdfa2V5X3NoYTFfdmVyaWZ5KGRz
YSwgc2lnX2ZpeGVkLCA0MCwgbSwgbV9sZW4sIDApOworfQorCitpbnQKK19saWJzc2gyX3dp
bmNuZ19kc2Ffc2hhMV9zaWduKGxpYnNzaDJfZHNhX2N0eCAqZHNhLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqaGFzaCwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgaGFzaF9sZW4sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpzaWdfZml4ZWQpCit7Cisg
ICAgdW5zaWduZWQgY2hhciAqZGF0YSwgKnNpZzsKKyAgICB1bnNpZ25lZCBsb25nIGNiRGF0
YSwgZGF0YWxlbiwgc2lnbGVuOworICAgIGludCByZXQ7CisKKyAgICBkYXRhbGVuID0gaGFz
aF9sZW47CisgICAgZGF0YSA9IG1hbGxvYyhkYXRhbGVuKTsKKyAgICBpZiAoIWRhdGEpIHsK
KyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIG1lbWNweShkYXRhLCBoYXNoLCBk
YXRhbGVuKTsKKworICAgIHJldCA9IEJDcnlwdFNpZ25IYXNoKGRzYS0+aEtleSwgTlVMTCwg
ZGF0YSwgZGF0YWxlbiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAwLCAmY2JE
YXRhLCAwKTsKKyAgICBpZiAocmV0ID09IFNUQVRVU19TVUNDRVNTKSB7CisgICAgICAgIHNp
Z2xlbiA9IGNiRGF0YTsKKyAgICAgICAgaWYgKHNpZ2xlbiA9PSA0MCkgeworICAgICAgICAg
ICAgc2lnID0gbWFsbG9jKHNpZ2xlbik7CisgICAgICAgICAgICBpZiAoc2lnKSB7CisgICAg
ICAgICAgICAgICAgcmV0ID0gQkNyeXB0U2lnbkhhc2goZHNhLT5oS2V5LCBOVUxMLCBkYXRh
LCBkYXRhbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpZywg
c2lnbGVuLCAmY2JEYXRhLCAwKTsKKyAgICAgICAgICAgICAgICBpZiAocmV0ID09IFNUQVRV
U19TVUNDRVNTKSB7CisgICAgICAgICAgICAgICAgICAgIG1lbWNweShzaWdfZml4ZWQsIHNp
Zywgc2lnbGVuKTsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBmcmVl
KHNpZyk7CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICByZXQgPSBTVEFU
VVNfTk9fTUVNT1JZOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIHJldCA9IFNUQVRV
U19OT19NRU1PUlk7CisgICAgfQorCisgICAgZnJlZShkYXRhKTsKKworICAgIHJldHVybiBy
ZXQgPT0gU1RBVFVTX1NVQ0NFU1MgPyAwIDogLTE7Cit9CisKK3ZvaWQKK19saWJzc2gyX3dp
bmNuZ19kc2FfZnJlZShsaWJzc2gyX2RzYV9jdHggKmRzYSkKK3sKKyAgICBpZiAoIWRzYSkK
KyAgICAgICAgcmV0dXJuOworCisgICAgQkNyeXB0RGVzdHJveUtleShkc2EtPmhLZXkpOwor
CisgICAgaWYgKGRzYS0+cGJLZXlPYmplY3QpCisgICAgICAgIGZyZWUoZHNhLT5wYktleU9i
amVjdCk7CisKKyAgICBtZW1zZXQoZHNhLCAwLCBzaXplb2YobGlic3NoMl9kc2FfY3R4KSk7
CisgICAgZnJlZShkc2EpOworfQorI2VuZGlmCisKKworLyoqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisvKgor
ICogV2luZG93cyBDTkcgYmFja2VuZDogS2V5IGZ1bmN0aW9ucworICovCisKK3N0YXRpYyB1
bnNpZ25lZCBsb25nCitfbGlic3NoMl93aW5jbmdfcHViX3ByaXZfd3JpdGUodW5zaWduZWQg
Y2hhciAqa2V5LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxv
bmcgb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2ln
bmVkIGNoYXIgKmJpZ251bSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25z
dCB1bnNpZ25lZCBsb25nIGxlbmd0aCkKK3sKKyAgICBfbGlic3NoMl9odG9udTMyKGtleSAr
IG9mZnNldCwgbGVuZ3RoKTsKKyAgICBvZmZzZXQgKz0gNDsKKworICAgIG1lbWNweShrZXkg
KyBvZmZzZXQsIGJpZ251bSwgbGVuZ3RoKTsKKyAgICBvZmZzZXQgKz0gbGVuZ3RoOworCisg
ICAgcmV0dXJuIG9mZnNldDsKK30KKworaW50CitfbGlic3NoMl93aW5jbmdfcHViX3ByaXZf
a2V5ZmlsZShMSUJTU0gyX1NFU1NJT04gKnNlc3Npb24sCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICoqbWV0aG9kLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2l6ZV90ICptZXRob2RfbGVuLAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqKnB1YmtleWRhdGEsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgKnB1YmtleWRhdGFfbGVuLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqcHJpdmF0ZWtleSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnBhc3NwaHJh
c2UpCit7CisjaWZkZWYgSEFWRV9MSUJDUllQVDMyCisgICAgdW5zaWduZWQgY2hhciAqcGJF
bmNvZGVkLCAqKnJwYkRlY29kZWQ7CisgICAgdW5zaWduZWQgbG9uZyBjYkVuY29kZWQsICpy
Y2JEZWNvZGVkOworICAgIHVuc2lnbmVkIGNoYXIgKmtleSwgKm10aDsKKyAgICB1bnNpZ25l
ZCBsb25nIGtleWxlbiwgbXRobGVuLCBpbmRleCwgb2Zmc2V0LCBsZW5ndGg7CisgICAgaW50
IHJldDsKKworICAgIHJldCA9IF9saWJzc2gyX3dpbmNuZ19sb2FkX3ByaXZhdGUoc2Vzc2lv
biwgcHJpdmF0ZWtleSwgcGFzc3BocmFzZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICZwYkVuY29kZWQsICZjYkVuY29kZWQpOworICAgIGlmIChyZXQpIHsK
KyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIHJldCA9IF9saWJzc2gyX3dpbmNu
Z19hc25fZGVjb2RlX2JucyhwYkVuY29kZWQsIGNiRW5jb2RlZCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJwYkRlY29kZWQsICZyY2JEZWNvZGVkLCAm
bGVuZ3RoKTsKKworICAgIGZyZWUocGJFbmNvZGVkKTsKKworICAgIGlmIChyZXQpIHsKKyAg
ICAgICAgcmV0dXJuIC0xOworICAgIH0KKworCisgICAgaWYgKGxlbmd0aCA9PSA5KSB7IC8q
IHByaXZhdGUgUlNBIGtleSAqLworICAgICAgICBtdGhsZW4gPSA3OworICAgICAgICBtdGgg
PSBMSUJTU0gyX0FMTE9DKHNlc3Npb24sIG10aGxlbik7CisgICAgICAgIGlmIChtdGgpIHsK
KyAgICAgICAgICAgIG1lbWNweShtdGgsICJzc2gtcnNhIiwgbXRobGVuKTsKKyAgICAgICAg
fSBlbHNlIHsKKyAgICAgICAgICAgIHJldCA9IC0xOworICAgICAgICB9CisKKworICAgICAg
ICBrZXlsZW4gPSA0ICsgbXRobGVuICsgNCArIHJjYkRlY29kZWRbMl0gKyA0ICsgcmNiRGVj
b2RlZFsxXTsKKyAgICAgICAga2V5ID0gTElCU1NIMl9BTExPQyhzZXNzaW9uLCBrZXlsZW4p
OworICAgICAgICBpZiAoa2V5KSB7CisgICAgICAgICAgICBvZmZzZXQgPSBfbGlic3NoMl93
aW5jbmdfcHViX3ByaXZfd3JpdGUoa2V5LCAwLCBtdGgsIG10aGxlbik7CisKKyAgICAgICAg
ICAgIG9mZnNldCA9IF9saWJzc2gyX3dpbmNuZ19wdWJfcHJpdl93cml0ZShrZXksIG9mZnNl
dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBycGJEZWNvZGVkWzJdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHJjYkRlY29kZWRbMl0pOworCisgICAgICAgICAgICBfbGlic3No
Ml93aW5jbmdfcHViX3ByaXZfd3JpdGUoa2V5LCBvZmZzZXQsCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgcnBiRGVjb2RlZFsxXSwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByY2JEZWNvZGVkWzFdKTsKKyAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJldCA9IC0xOworICAgICAgICB9CisKKyAgICB9
IGVsc2UgaWYgKGxlbmd0aCA9PSA2KSB7IC8qIHByaXZhdGUgRFNBIGtleSAqLworICAgICAg
ICBtdGhsZW4gPSA3OworICAgICAgICBtdGggPSBMSUJTU0gyX0FMTE9DKHNlc3Npb24sIG10
aGxlbik7CisgICAgICAgIGlmIChtdGgpIHsKKyAgICAgICAgICAgIG1lbWNweShtdGgsICJz
c2gtZHNzIiwgbXRobGVuKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJldCA9
IC0xOworICAgICAgICB9CisKKyAgICAgICAga2V5bGVuID0gNCArIG10aGxlbiArIDQgKyBy
Y2JEZWNvZGVkWzFdICsgNCArIHJjYkRlY29kZWRbMl0KKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICArIDQgKyByY2JEZWNvZGVkWzNdICsgNCArIHJjYkRlY29kZWRbNF07CisgICAg
ICAgIGtleSA9IExJQlNTSDJfQUxMT0Moc2Vzc2lvbiwga2V5bGVuKTsKKyAgICAgICAgaWYg
KGtleSkgeworICAgICAgICAgICAgb2Zmc2V0ID0gX2xpYnNzaDJfd2luY25nX3B1Yl9wcml2
X3dyaXRlKGtleSwgMCwgbXRoLCBtdGhsZW4pOworCisgICAgICAgICAgICBvZmZzZXQgPSBf
bGlic3NoMl93aW5jbmdfcHViX3ByaXZfd3JpdGUoa2V5LCBvZmZzZXQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnBiRGVjb2RlZFsx
XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICByY2JEZWNvZGVkWzFdKTsKKworICAgICAgICAgICAgb2Zmc2V0ID0gX2xpYnNzaDJfd2lu
Y25nX3B1Yl9wcml2X3dyaXRlKGtleSwgb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJwYkRlY29kZWRbMl0sCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmNiRGVjb2Rl
ZFsyXSk7CisKKyAgICAgICAgICAgIG9mZnNldCA9IF9saWJzc2gyX3dpbmNuZ19wdWJfcHJp
dl93cml0ZShrZXksIG9mZnNldCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBycGJEZWNvZGVkWzNdLAorICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJjYkRlY29kZWRbM10pOworCisg
ICAgICAgICAgICBfbGlic3NoMl93aW5jbmdfcHViX3ByaXZfd3JpdGUoa2V5LCBvZmZzZXQs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnBiRGVjb2Rl
ZFs0XSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByY2JE
ZWNvZGVkWzRdKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJldCA9IC0xOwor
ICAgICAgICB9CisKKyAgICB9IGVsc2UgeworICAgICAgICByZXQgPSAtMTsKKyAgICB9CisK
KworICAgIGZvciAoaW5kZXggPSAwOyBpbmRleCA8IGxlbmd0aDsgaW5kZXgrKykgeworICAg
ICAgICBpZiAocnBiRGVjb2RlZFtpbmRleF0pIHsKKyAgICAgICAgICAgIGZyZWUocnBiRGVj
b2RlZFtpbmRleF0pOworICAgICAgICAgICAgcnBiRGVjb2RlZFtpbmRleF0gPSBOVUxMOwor
ICAgICAgICB9CisgICAgfQorCisgICAgZnJlZShycGJEZWNvZGVkKTsKKyAgICBmcmVlKHJj
YkRlY29kZWQpOworCisKKyAgICBpZiAocmV0KSB7CisgICAgICAgIGlmIChtdGgpCisgICAg
ICAgICAgICBMSUJTU0gyX0ZSRUUoc2Vzc2lvbiwgbXRoKTsKKyAgICAgICAgaWYgKGtleSkK
KyAgICAgICAgICAgIExJQlNTSDJfRlJFRShzZXNzaW9uLCBrZXkpOworICAgIH0gZWxzZSB7
CisgICAgICAgICptZXRob2QgPSBtdGg7CisgICAgICAgICptZXRob2RfbGVuID0gbXRobGVu
OworICAgICAgICAqcHVia2V5ZGF0YSA9IGtleTsKKyAgICAgICAgKnB1YmtleWRhdGFfbGVu
ID0ga2V5bGVuOworICAgIH0KKworICAgIHJldHVybiByZXQ7CisjZWxzZQorICAgICh2b2lk
KW1ldGhvZDsKKyAgICAodm9pZCltZXRob2RfbGVuOworICAgICh2b2lkKXB1YmtleWRhdGE7
CisgICAgKHZvaWQpcHVia2V5ZGF0YV9sZW47CisgICAgKHZvaWQpcHJpdmF0ZWtleTsKKyAg
ICAodm9pZClwYXNzcGhyYXNlOworCisgICAgcmV0dXJuIF9saWJzc2gyX2Vycm9yKHNlc3Np
b24sIExJQlNTSDJfRVJST1JfRklMRSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIlVu
YWJsZSB0byBsb2FkIHB1YmxpYyBrZXkgZnJvbSBwcml2YXRlIGtleSBmaWxlOiAiCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICJNZXRob2QgdW5zdXBwb3J0ZWQgaW4gV2luZG93cyBD
TkcgYmFja2VuZCIpOworI2VuZGlmIC8qIEhBVkVfTElCQ1JZUFQzMiAqLworfQorCisKKy8q
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqLworLyoKKyAqIFdpbmRvd3MgQ05HIGJhY2tlbmQ6IENpcGhlciBmdW5j
dGlvbnMKKyAqLworCitpbnQKK19saWJzc2gyX3dpbmNuZ19jaXBoZXJfaW5pdChfbGlic3No
Ml9jaXBoZXJfY3R4ICpjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2xpYnNz
aDJfY2lwaGVyX3R5cGUodHlwZSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z
aWduZWQgY2hhciAqaXYsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQg
Y2hhciAqc2VjcmV0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBlbmNyeXB0
KQoreworICAgIEJDUllQVF9LRVlfSEFORExFIGhLZXk7CisgICAgQkNSWVBUX0tFWV9EQVRB
X0JMT0JfSEVBREVSICpoZWFkZXI7CisgICAgdW5zaWduZWQgY2hhciAqcGJLZXlPYmplY3Qs
ICpwYklWLCAqa2V5OworICAgIHVuc2lnbmVkIGxvbmcgZHdLZXlPYmplY3QsIGR3SVYsIGR3
QmxvY2tMZW5ndGgsIGNiRGF0YSwga2V5bGVuOworICAgIGludCByZXQ7CisKKyAgICAodm9p
ZCllbmNyeXB0OworCisgICAgcmV0ID0gQkNyeXB0R2V0UHJvcGVydHkoKnR5cGUucGhBbGcs
IEJDUllQVF9PQkpFQ1RfTEVOR1RILAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICh1
bnNpZ25lZCBjaGFyICopJmR3S2V5T2JqZWN0LAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNpemVvZihkd0tleU9iamVjdCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
JmNiRGF0YSwgMCk7CisgICAgaWYgKHJldCAhPSBTVEFUVVNfU1VDQ0VTUykgeworICAgICAg
ICByZXR1cm4gLTE7CisgICAgfQorCisgICAgcmV0ID0gQkNyeXB0R2V0UHJvcGVydHkoKnR5
cGUucGhBbGcsIEJDUllQVF9CTE9DS19MRU5HVEgsCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgKHVuc2lnbmVkIGNoYXIgKikmZHdCbG9ja0xlbmd0aCwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzaXplb2YoZHdCbG9ja0xlbmd0aCksCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgJmNiRGF0YSwgMCk7CisgICAgaWYgKHJldCAhPSBTVEFUVVNfU1VDQ0VT
UykgeworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisgICAgcGJLZXlPYmplY3QgPSBt
YWxsb2MoZHdLZXlPYmplY3QpOworICAgIGlmICghcGJLZXlPYmplY3QpIHsKKyAgICAgICAg
cmV0dXJuIC0xOworICAgIH0KKworCisgICAga2V5bGVuID0gc2l6ZW9mKEJDUllQVF9LRVlf
REFUQV9CTE9CX0hFQURFUikgKyB0eXBlLmR3S2V5TGVuZ3RoOworICAgIGtleSA9IG1hbGxv
YyhrZXlsZW4pOworICAgIGlmICgha2V5KSB7CisgICAgICAgIGZyZWUocGJLZXlPYmplY3Qp
OworICAgICAgICByZXR1cm4gLTE7CisgICAgfQorCisKKyAgICBoZWFkZXIgPSAoQkNSWVBU
X0tFWV9EQVRBX0JMT0JfSEVBREVSICopa2V5OworICAgIGhlYWRlci0+ZHdNYWdpYyA9IEJD
UllQVF9LRVlfREFUQV9CTE9CX01BR0lDOworICAgIGhlYWRlci0+ZHdWZXJzaW9uID0gQkNS
WVBUX0tFWV9EQVRBX0JMT0JfVkVSU0lPTjE7CisgICAgaGVhZGVyLT5jYktleURhdGEgPSB0
eXBlLmR3S2V5TGVuZ3RoOworCisgICAgbWVtY3B5KGtleSArIHNpemVvZihCQ1JZUFRfS0VZ
X0RBVEFfQkxPQl9IRUFERVIpLAorICAgICAgICAgICBzZWNyZXQsIHR5cGUuZHdLZXlMZW5n
dGgpOworCisgICAgcmV0ID0gQkNyeXB0SW1wb3J0S2V5KCp0eXBlLnBoQWxnLCBOVUxMLCBC
Q1JZUFRfS0VZX0RBVEFfQkxPQiwgJmhLZXksCisgICAgICAgICAgICAgICAgICAgICAgICAg
IHBiS2V5T2JqZWN0LCBkd0tleU9iamVjdCwga2V5LCBrZXlsZW4sIDApOworCisgICAgZnJl
ZShrZXkpOworCisgICAgaWYgKHJldCAhPSBTVEFUVVNfU1VDQ0VTUykgeworICAgICAgICBm
cmVlKHBiS2V5T2JqZWN0KTsKKyAgICAgICAgcmV0dXJuIC0xOworICAgIH0KKworICAgIGlm
ICh0eXBlLmR3VXNlSVYpIHsKKyAgICAgICAgcGJJViA9IG1hbGxvYyhkd0Jsb2NrTGVuZ3Ro
KTsKKyAgICAgICAgaWYgKCFwYklWKSB7CisgICAgICAgICAgICBCQ3J5cHREZXN0cm95S2V5
KGhLZXkpOworICAgICAgICAgICAgZnJlZShwYktleU9iamVjdCk7CisgICAgICAgICAgICBy
ZXR1cm4gLTE7CisgICAgICAgIH0KKyAgICAgICAgZHdJViA9IGR3QmxvY2tMZW5ndGg7Cisg
ICAgICAgIG1lbWNweShwYklWLCBpdiwgZHdJVik7CisgICAgfSBlbHNlIHsKKyAgICAgICAg
cGJJViA9IE5VTEw7CisgICAgICAgIGR3SVYgPSAwOworICAgIH0KKworCisgICAgY3R4LT5o
S2V5ID0gaEtleTsKKyAgICBjdHgtPnBiS2V5T2JqZWN0ID0gcGJLZXlPYmplY3Q7CisgICAg
Y3R4LT5wYklWID0gcGJJVjsKKyAgICBjdHgtPmR3S2V5T2JqZWN0ID0gZHdLZXlPYmplY3Q7
CisgICAgY3R4LT5kd0lWID0gZHdJVjsKKyAgICBjdHgtPmR3QmxvY2tMZW5ndGggPSBkd0Js
b2NrTGVuZ3RoOworCisgICAgcmV0dXJuIDA7Cit9CisKK2ludAorX2xpYnNzaDJfd2luY25n
X2NpcGhlcl9jcnlwdChfbGlic3NoMl9jaXBoZXJfY3R4ICpjdHgsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIF9saWJzc2gyX2NpcGhlcl90eXBlKHR5cGUpLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbnQgZW5jcnlwdCwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgdW5zaWduZWQgY2hhciAqYmxvY2ssCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHNpemVfdCBibG9ja2xlbikKK3sKKyAgICB1bnNpZ25lZCBjaGFyICpwYk91dHB1
dDsKKyAgICB1bnNpZ25lZCBsb25nIGNiT3V0cHV0OworICAgIGludCByZXQ7CisKKyAgICAo
dm9pZCl0eXBlOworCisgICAgaWYgKGVuY3J5cHQpIHsKKyAgICAgICAgcmV0ID0gQkNyeXB0
RW5jcnlwdChjdHgtPmhLZXksIGJsb2NrLCBibG9ja2xlbiwgTlVMTCwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjdHgtPnBiSVYsIGN0eC0+ZHdJViwgTlVMTCwgMCwgJmNiT3V0
cHV0LCAwKTsKKyAgICB9IGVsc2UgeworICAgICAgICByZXQgPSBCQ3J5cHREZWNyeXB0KGN0
eC0+aEtleSwgYmxvY2ssIGJsb2NrbGVuLCBOVUxMLAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGN0eC0+cGJJViwgY3R4LT5kd0lWLCBOVUxMLCAwLCAmY2JPdXRwdXQsIDApOwor
ICAgIH0KKyAgICBpZiAocmV0ID09IFNUQVRVU19TVUNDRVNTKSB7CisgICAgICAgIHBiT3V0
cHV0ID0gbWFsbG9jKGNiT3V0cHV0KTsKKyAgICAgICAgaWYgKHBiT3V0cHV0KSB7CisgICAg
ICAgICAgICBpZiAoZW5jcnlwdCkgeworICAgICAgICAgICAgICAgIHJldCA9IEJDcnlwdEVu
Y3J5cHQoY3R4LT5oS2V5LCBibG9jaywgYmxvY2tsZW4sIE5VTEwsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjdHgtPnBiSVYsIGN0eC0+ZHdJViwKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBiT3V0cHV0LCBjYk91dHB1dCwgJmNiT3V0
cHV0LCAwKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgcmV0ID0g
QkNyeXB0RGVjcnlwdChjdHgtPmhLZXksIGJsb2NrLCBibG9ja2xlbiwgTlVMTCwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN0eC0+cGJJViwgY3R4LT5kd0lWLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGJPdXRwdXQsIGNiT3V0cHV0
LCAmY2JPdXRwdXQsIDApOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKHJldCA9
PSBTVEFUVVNfU1VDQ0VTUykgeworICAgICAgICAgICAgICAgIG1lbWNweShibG9jaywgcGJP
dXRwdXQsIGNiT3V0cHV0KTsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgZnJlZShw
Yk91dHB1dCk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgcmV0ID0gU1RBVFVTX05P
X01FTU9SWTsKKyAgICB9CisKKyAgICByZXR1cm4gcmV0ID09IFNUQVRVU19TVUNDRVNTID8g
MCA6IC0xOworfQorCit2b2lkCitfbGlic3NoMl93aW5jbmdfY2lwaGVyX2R0b3IoX2xpYnNz
aDJfY2lwaGVyX2N0eCAqY3R4KQoreworICAgIEJDcnlwdERlc3Ryb3lLZXkoY3R4LT5oS2V5
KTsKKworICAgIGlmIChjdHgtPnBiS2V5T2JqZWN0KSB7CisgICAgICAgIGZyZWUoY3R4LT5w
YktleU9iamVjdCk7CisgICAgICAgIGN0eC0+cGJLZXlPYmplY3QgPSBOVUxMOworICAgIH0K
KworICAgIG1lbXNldChjdHgsIDAsIHNpemVvZihfbGlic3NoMl9jaXBoZXJfY3R4KSk7Cit9
CisKKworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKiovCisvKgorICogV2luZG93cyBDTkcgYmFja2VuZDogQmln
TnVtYmVyIGZ1bmN0aW9ucworICovCisKK19saWJzc2gyX2JuICoKK19saWJzc2gyX3dpbmNu
Z19iaWdudW1faW5pdCh2b2lkKQoreworICAgIF9saWJzc2gyX2JuICpiaWdudW07CisKKyAg
ICBiaWdudW0gPSBtYWxsb2Moc2l6ZW9mKF9saWJzc2gyX2JuKSk7CisgICAgYmlnbnVtLT5i
aWdudW0gPSBOVUxMOworICAgIGJpZ251bS0+bGVuZ3RoID0gMDsKKworICAgIHJldHVybiBi
aWdudW07Cit9CisKK3N0YXRpYyBpbnQKK19saWJzc2gyX3dpbmNuZ19iaWdudW1fcmVzaXpl
KF9saWJzc2gyX2JuICpibiwgdW5zaWduZWQgbG9uZyBsZW5ndGgpCit7CisgICAgdW5zaWdu
ZWQgY2hhciAqYmlnbnVtOworCisgICAgaWYgKCFibikKKyAgICAgICAgcmV0dXJuIC0xOwor
CisgICAgaWYgKGxlbmd0aCA9PSBibi0+bGVuZ3RoKQorICAgICAgICByZXR1cm4gMDsKKwor
ICAgIGJpZ251bSA9IHJlYWxsb2MoYm4tPmJpZ251bSwgbGVuZ3RoKTsKKyAgICBpZiAoIWJp
Z251bSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgYm4tPmJpZ251bSA9IGJpZ251bTsK
KyAgICBibi0+bGVuZ3RoID0gbGVuZ3RoOworCisgICAgcmV0dXJuIDA7Cit9CisKK2ludAor
X2xpYnNzaDJfd2luY25nX2JpZ251bV9yYW5kKF9saWJzc2gyX2JuICpybmQsIGludCBiaXRz
LCBpbnQgdG9wLCBpbnQgYm90dG9tKQoreworICAgIHVuc2lnbmVkIGNoYXIgKmJpZ251bTsK
KyAgICB1bnNpZ25lZCBsb25nIGxlbmd0aDsKKworICAgIGlmICghcm5kKQorICAgICAgICBy
ZXR1cm4gLTE7CisKKyAgICBsZW5ndGggPSBjZWlsKChmbG9hdCliaXRzIC8gOCkgKiBzaXpl
b2YodW5zaWduZWQgY2hhcik7CisgICAgaWYgKF9saWJzc2gyX3dpbmNuZ19iaWdudW1fcmVz
aXplKHJuZCwgbGVuZ3RoKSkKKyAgICAgICAgcmV0dXJuIC0xOworCisgICAgYmlnbnVtID0g
cm5kLT5iaWdudW07CisKKyAgICBpZiAoX2xpYnNzaDJfd2luY25nX3JhbmRvbShiaWdudW0s
IGxlbmd0aCkpCisgICAgICAgIHJldHVybiAtMTsKKworICAgIC8qIGNhbGN1bGF0ZSBzaWdu
aWZpY2FudCBiaXRzIGluIG1vc3Qgc2lnbmlmaWNhbnQgYnl0ZSAqLworICAgIGJpdHMgJT0g
ODsKKworICAgIC8qIGZpbGwgbW9zdCBzaWduaWZpY2FudCBieXRlIHdpdGggemVybyBwYWRk
aW5nICovCisgICAgYmlnbnVtWzBdICY9ICgxIDw8ICg4IC0gYml0cykpIC0gMTsKKworICAg
IC8qIHNldCBzb21lIHNwZWNpYWwgbGFzdCBiaXRzIGluIG1vc3Qgc2lnbmlmaWNhbnQgYnl0
ZSAqLworICAgIGlmICh0b3AgPT0gMCkKKyAgICAgICAgYmlnbnVtWzBdIHw9ICgxIDw8ICg3
IC0gYml0cykpOworICAgIGVsc2UgaWYgKHRvcCA9PSAxKQorICAgICAgICBiaWdudW1bMF0g
fD0gKDMgPDwgKDYgLSBiaXRzKSk7CisKKyAgICAvKiBtYWtlIG9kZCBieSBzZXR0aW5nIGZp
cnN0IGJpdCBpbiBsZWFzdCBzaWduaWZpY2FudCBieXRlICovCisgICAgaWYgKGJvdHRvbSkK
KyAgICAgICAgYmlnbnVtW2xlbmd0aCAtIDFdIHw9IDE7CisKKyAgICByZXR1cm4gMDsKK30K
KworaW50CitfbGlic3NoMl93aW5jbmdfYmlnbnVtX21vZF9leHAoX2xpYnNzaDJfYm4gKnIs
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX2xpYnNzaDJfYm4gKmEsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgX2xpYnNzaDJfYm4gKnAsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgX2xpYnNzaDJfYm4gKm0sCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgX2xpYnNzaDJfYm5fY3R4ICpibmN0eCkKK3sKKyAgICBCQ1JZUFRf
S0VZX0hBTkRMRSBoS2V5OworICAgIEJDUllQVF9SU0FLRVlfQkxPQiAqcnNha2V5OworICAg
IHVuc2lnbmVkIGNoYXIgKmtleSwgKmJpZ251bTsKKyAgICB1bnNpZ25lZCBsb25nIGtleWxl
biwgb2Zmc2V0LCBsZW5ndGg7CisgICAgaW50IHJldDsKKworICAgICh2b2lkKWJuY3R4Owor
CisgICAgaWYgKCFyIHx8ICFhIHx8ICFwIHx8ICFtKQorICAgICAgICByZXR1cm4gLTE7CisK
KyAgICBvZmZzZXQgPSBzaXplb2YoQkNSWVBUX1JTQUtFWV9CTE9CKTsKKyAgICBrZXlsZW4g
PSBvZmZzZXQgKyBwLT5sZW5ndGggKyBtLT5sZW5ndGg7CisKKyAgICBrZXkgPSBtYWxsb2Mo
a2V5bGVuKTsKKyAgICBpZiAoIWtleSkKKyAgICAgICAgcmV0dXJuIC0xOworCisKKyAgICAv
KiBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2xpYnJhcnkvd2luZG93cy9kZXNrdG9wL2Fh
Mzc1NTMxLmFzcHggKi8KKyAgICByc2FrZXkgPSAoQkNSWVBUX1JTQUtFWV9CTE9CICopa2V5
OworICAgIHJzYWtleS0+TWFnaWMgPSBCQ1JZUFRfUlNBUFVCTElDX01BR0lDOworICAgIHJz
YWtleS0+Qml0TGVuZ3RoID0gbS0+bGVuZ3RoICogODsKKyAgICByc2FrZXktPmNiUHVibGlj
RXhwID0gcC0+bGVuZ3RoOworICAgIHJzYWtleS0+Y2JNb2R1bHVzID0gbS0+bGVuZ3RoOwor
ICAgIHJzYWtleS0+Y2JQcmltZTEgPSAwOworICAgIHJzYWtleS0+Y2JQcmltZTIgPSAwOwor
CisgICAgbWVtY3B5KGtleSArIG9mZnNldCwgcC0+YmlnbnVtLCBwLT5sZW5ndGgpOworICAg
IG9mZnNldCArPSBwLT5sZW5ndGg7CisKKyAgICBtZW1jcHkoa2V5ICsgb2Zmc2V0LCBtLT5i
aWdudW0sIG0tPmxlbmd0aCk7CisKKyAgICByZXQgPSBCQ3J5cHRJbXBvcnRLZXlQYWlyKF9s
aWJzc2gyX3dpbmNuZy5oQWxnUlNBLCBOVUxMLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgQkNSWVBUX1JTQVBVQkxJQ19CTE9CLCAmaEtleSwga2V5LCBrZXlsZW4sCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBCQ1JZUFRfTk9fS0VZX1ZBTElEQVRJT04pOwor
CisgICAgaWYgKHJldCA9PSBTVEFUVVNfU1VDQ0VTUykgeworICAgICAgICByZXQgPSBCQ3J5
cHRFbmNyeXB0KGhLZXksIGEtPmJpZ251bSwgYS0+bGVuZ3RoLCBOVUxMLCBOVUxMLCAwLAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIDAsICZsZW5ndGgsIEJDUllQVF9Q
QURfTk9ORSk7CisgICAgICAgIGlmIChyZXQgPT0gU1RBVFVTX1NVQ0NFU1MpIHsKKyAgICAg
ICAgICAgIGlmICghX2xpYnNzaDJfd2luY25nX2JpZ251bV9yZXNpemUociwgbGVuZ3RoKSkg
eworICAgICAgICAgICAgICAgIGxlbmd0aCA9IG1heChhLT5sZW5ndGgsIGxlbmd0aCk7Cisg
ICAgICAgICAgICAgICAgYmlnbnVtID0gbWFsbG9jKGxlbmd0aCk7CisgICAgICAgICAgICAg
ICAgaWYgKGJpZ251bSkgeworICAgICAgICAgICAgICAgICAgICBvZmZzZXQgPSBsZW5ndGgg
LSBhLT5sZW5ndGg7CisgICAgICAgICAgICAgICAgICAgIG1lbXNldChiaWdudW0sIDAsIG9m
ZnNldCk7CisgICAgICAgICAgICAgICAgICAgIG1lbWNweShiaWdudW0gKyBvZmZzZXQsIGEt
PmJpZ251bSwgYS0+bGVuZ3RoKTsKKworICAgICAgICAgICAgICAgICAgICByZXQgPSBCQ3J5
cHRFbmNyeXB0KGhLZXksIGJpZ251bSwgbGVuZ3RoLCBOVUxMLCBOVUxMLCAwLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHItPmJpZ251bSwgci0+bGVuZ3Ro
LCAmb2Zmc2V0LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJD
UllQVF9QQURfTk9ORSk7CisKKyAgICAgICAgICAgICAgICAgICAgZnJlZShiaWdudW0pOwor
CisgICAgICAgICAgICAgICAgICAgIGlmIChyZXQgPT0gU1RBVFVTX1NVQ0NFU1MpIHsKKyAg
ICAgICAgICAgICAgICAgICAgICAgIF9saWJzc2gyX3dpbmNuZ19iaWdudW1fcmVzaXplKHIs
IG9mZnNldCk7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9IGVs
c2UKKyAgICAgICAgICAgICAgICAgICAgcmV0ID0gU1RBVFVTX05PX01FTU9SWTsKKyAgICAg
ICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgIHJldCA9IFNUQVRVU19OT19NRU1PUlk7
CisgICAgICAgIH0KKworICAgICAgICBCQ3J5cHREZXN0cm95S2V5KGhLZXkpOworICAgIH0K
KworICAgIGZyZWUoa2V5KTsKKworICAgIHJldHVybiByZXQgPT0gU1RBVFVTX1NVQ0NFU1Mg
PyAwIDogLTE7Cit9CisKK2ludAorX2xpYnNzaDJfd2luY25nX2JpZ251bV9zZXRfd29yZChf
bGlic3NoMl9ibiAqYm4sIHVuc2lnbmVkIGxvbmcgd29yZCkKK3sKKyAgICB1bnNpZ25lZCBs
b25nIG9mZnNldCwgbnVtYmVyLCBiaXRzLCBsZW5ndGg7CisKKyAgICBpZiAoIWJuKQorICAg
ICAgICByZXR1cm4gLTE7CisKKyAgICBudW1iZXIgPSB3b3JkOworICAgIHdoaWxlIChudW1i
ZXIgPj49IDEpCisgICAgICAgIGJpdHMrKzsKKworICAgIGxlbmd0aCA9IGNlaWwoKGRvdWJs
ZSkoYml0cysxKSAvIDgpICogc2l6ZW9mKHVuc2lnbmVkIGNoYXIpOworICAgIGlmIChfbGli
c3NoMl93aW5jbmdfYmlnbnVtX3Jlc2l6ZShibiwgbGVuZ3RoKSkKKyAgICAgICAgcmV0dXJu
IC0xOworCisgICAgZm9yIChvZmZzZXQgPSAwOyBvZmZzZXQgPCBsZW5ndGg7IG9mZnNldCsr
KQorICAgICAgICBibi0+YmlnbnVtW29mZnNldF0gPSAod29yZCA+PiAob2Zmc2V0ICogOCkp
ICYgMHhmZjsKKworICAgIHJldHVybiAwOworfQorCit1bnNpZ25lZCBsb25nCitfbGlic3No
Ml93aW5jbmdfYmlnbnVtX2JpdHMoY29uc3QgX2xpYnNzaDJfYm4gKmJuKQoreworICAgIHVu
c2lnbmVkIGNoYXIgbnVtYmVyOworICAgIHVuc2lnbmVkIGxvbmcgb2Zmc2V0LCBsZW5ndGgs
IGJpdHM7CisKKyAgICBpZiAoIWJuKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGxlbmd0
aCA9IGJuLT5sZW5ndGggLSAxOworCisgICAgb2Zmc2V0ID0gMDsKKyAgICB3aGlsZSAoISgq
KGJuLT5iaWdudW0gKyBvZmZzZXQpKSAmJiAob2Zmc2V0IDwgbGVuZ3RoKSkKKyAgICAgICAg
b2Zmc2V0Kys7CisKKyAgICBiaXRzID0gKGxlbmd0aCAtIG9mZnNldCkgKiA4OworICAgIG51
bWJlciA9IGJuLT5iaWdudW1bb2Zmc2V0XTsKKworICAgIHdoaWxlIChudW1iZXIgPj49IDEp
CisgICAgICAgIGJpdHMrKzsKKworICAgIGJpdHMrKzsKKworICAgIHJldHVybiBiaXRzOwor
fQorCit2b2lkCitfbGlic3NoMl93aW5jbmdfYmlnbnVtX2Zyb21fYmluKF9saWJzc2gyX2Ju
ICpibiwgdW5zaWduZWQgbG9uZyBsZW4sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmJpbikKK3sKKyAgICB1bnNpZ25lZCBjaGFyICpi
aWdudW07CisgICAgdW5zaWduZWQgbG9uZyBvZmZzZXQsIGxlbmd0aCwgYml0czsKKworICAg
IGlmIChibiAmJiBiaW4gJiYgbGVuID4gMCkgeworICAgICAgICBpZiAoIV9saWJzc2gyX3dp
bmNuZ19iaWdudW1fcmVzaXplKGJuLCBsZW4pKSB7CisgICAgICAgICAgICBtZW1jcHkoYm4t
PmJpZ251bSwgYmluLCBsZW4pOworCisgICAgICAgICAgICBiaXRzID0gX2xpYnNzaDJfd2lu
Y25nX2JpZ251bV9iaXRzKGJuKTsKKyAgICAgICAgICAgIGxlbmd0aCA9IGNlaWwoKGRvdWJs
ZSliaXRzIC8gOCkgKiBzaXplb2YodW5zaWduZWQgY2hhcik7CisKKyAgICAgICAgICAgIG9m
ZnNldCA9IGJuLT5sZW5ndGggLSBsZW5ndGg7CisgICAgICAgICAgICBpZiAob2Zmc2V0ID4g
MCkgeworICAgICAgICAgICAgICAgIG1lbW1vdmUoYm4tPmJpZ251bSwgYm4tPmJpZ251bSAr
IG9mZnNldCwgbGVuZ3RoKTsKKworICAgICAgICAgICAgICAgIGJpZ251bSA9IHJlYWxsb2Mo
Ym4tPmJpZ251bSwgbGVuZ3RoKTsKKyAgICAgICAgICAgICAgICBpZiAoYmlnbnVtKSB7Cisg
ICAgICAgICAgICAgICAgICAgIGJuLT5iaWdudW0gPSBiaWdudW07CisgICAgICAgICAgICAg
ICAgICAgIGJuLT5sZW5ndGggPSBsZW5ndGg7CisgICAgICAgICAgICAgICAgfQorICAgICAg
ICAgICAgfQorICAgICAgICB9CisgICAgfQorfQorCit2b2lkCitfbGlic3NoMl93aW5jbmdf
YmlnbnVtX3RvX2Jpbihjb25zdCBfbGlic3NoMl9ibiAqYm4sIHVuc2lnbmVkIGNoYXIgKmJp
bikKK3sKKyAgICBpZiAoYmluICYmIGJuICYmIGJuLT5iaWdudW0gJiYgYm4tPmxlbmd0aCA+
IDApIHsKKyAgICAgICAgbWVtY3B5KGJpbiwgYm4tPmJpZ251bSwgYm4tPmxlbmd0aCk7Cisg
ICAgfQorfQorCit2b2lkCitfbGlic3NoMl93aW5jbmdfYmlnbnVtX2ZyZWUoX2xpYnNzaDJf
Ym4gKmJuKQoreworICAgIGlmIChibikgeworICAgICAgICBpZiAoYm4tPmJpZ251bSkgewor
ICAgICAgICAgICAgZnJlZShibi0+YmlnbnVtKTsKKyAgICAgICAgICAgIGJuLT5iaWdudW0g
PSBOVUxMOworICAgICAgICB9CisgICAgICAgIGJuLT5sZW5ndGggPSAwOworICAgICAgICBm
cmVlKGJuKTsKKyAgICB9Cit9CisKKworLyoKKyAqIFdpbmRvd3MgQ05HIGJhY2tlbmQ6IG90
aGVyIGZ1bmN0aW9ucworICovCisKK3ZvaWQgX2xpYnNzaDJfaW5pdF9hZXNfY3RyKHZvaWQp
Cit7CisgICAgLyogbm8gaW1wbGVtZW50YXRpb24gKi8KKyAgICAodm9pZCkwOworfQorCisj
ZW5kaWYgLyogTElCU1NIMl9XSU5DTkcgKi8KZGlmZiAtLWdpdCBhL3NyYy93aW5jbmcuaCBi
L3NyYy93aW5jbmcuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMzI3
YjU1Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjL3dpbmNuZy5oCkBAIC0wLDAgKzEsMzI3IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIE1hcmMgSG9lcnNrZW4gPGluZm9AbWFyYy1o
b2Vyc2tlbi5kZT4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3JtcywKKyAqIHdpdGggb3Ig
d2l0aG91dCBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQKKyAqIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZSBtZXQ6CisgKgorICogICBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlCisgKiAgIGNvcHly
aWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUKKyAqICAgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKgorICogICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiAgIGNvcHlyaWdodCBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nCisgKiAgIGRpc2Ns
YWltZXIgaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscworICog
ICBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogICBOZWl0aGVyIHRo
ZSBuYW1lIG9mIHRoZSBjb3B5cmlnaHQgaG9sZGVyIG5vciB0aGUgbmFtZXMKKyAqICAgb2Yg
YW55IG90aGVyIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yCisgKiAg
IHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dAor
ICogICBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5ECisgKiBD
T05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLAorICogSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMKKyAqIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBU
SEUgQ09QWVJJR0hUIE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsCisgKiBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IKKyAqIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklM
SVRZLAorICogV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S
VCAoSU5DTFVESU5HCisgKiBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUKKyAqIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE
VklTRUQgT0YgVEhFIFBPU1NJQklMSVRZCisgKiBPRiBTVUNIIERBTUFHRS4KKyAqLworCisj
dW5kZWYgX1dJTjMyX1dJTk5UCisjZGVmaW5lIF9XSU4zMl9XSU5OVCAweDA2MDAKKworI2lm
ZGVmIEhBVkVfV0lORE9XU19ICisjaW5jbHVkZSA8d2luZG93cy5oPgorI2VuZGlmCisjaWZk
ZWYgSEFWRV9OVERFRl9ICisjaW5jbHVkZSA8bnRkZWYuaD4KKyNlbmRpZgorI2lmZGVmIEhB
VkVfTlRTVEFUVVNfSAorI2luY2x1ZGUgPG50c3RhdHVzLmg+CisjZW5kaWYKKworI2luY2x1
ZGUgPGJjcnlwdC5oPgorCisKKyNkZWZpbmUgTElCU1NIMl9NRDUgMQorCisjZGVmaW5lIExJ
QlNTSDJfSE1BQ19SSVBFTUQgMAorCisjZGVmaW5lIExJQlNTSDJfQUVTIDEKKyNkZWZpbmUg
TElCU1NIMl9BRVNfQ1RSIDAKKyNkZWZpbmUgTElCU1NIMl9CTE9XRklTSCAwCisjZGVmaW5l
IExJQlNTSDJfUkM0IDEKKyNkZWZpbmUgTElCU1NIMl9DQVNUIDAKKyNkZWZpbmUgTElCU1NI
Ml8zREVTIDEKKworI2RlZmluZSBMSUJTU0gyX1JTQSAxCisjZGVmaW5lIExJQlNTSDJfRFNB
IDEKKworI2RlZmluZSBNRDVfRElHRVNUX0xFTkdUSCAxNgorI2RlZmluZSBTSEFfRElHRVNU
X0xFTkdUSCAyMAorCisKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLworLyoKKyAqIFdpbmRvd3MgQ05HIGJh
Y2tlbmQ6IEdsb2JhbCBjb250ZXh0IGhhbmRsZXMKKyAqLworCitzdHJ1Y3QgX2xpYnNzaDJf
d2luY25nX2N0eCB7CisgICAgQkNSWVBUX0FMR19IQU5ETEUgaEFsZ1JORzsKKyAgICBCQ1JZ
UFRfQUxHX0hBTkRMRSBoQWxnSGFzaE1ENTsKKyAgICBCQ1JZUFRfQUxHX0hBTkRMRSBoQWxn
SGFzaFNIQTE7CisgICAgQkNSWVBUX0FMR19IQU5ETEUgaEFsZ0htYWNNRDU7CisgICAgQkNS
WVBUX0FMR19IQU5ETEUgaEFsZ0htYWNTSEExOworICAgIEJDUllQVF9BTEdfSEFORExFIGhB
bGdSU0E7CisgICAgQkNSWVBUX0FMR19IQU5ETEUgaEFsZ0RTQTsKKyAgICBCQ1JZUFRfQUxH
X0hBTkRMRSBoQWxnQUVTX0NCQzsKKyAgICBCQ1JZUFRfQUxHX0hBTkRMRSBoQWxnUkM0X05B
OworICAgIEJDUllQVF9BTEdfSEFORExFIGhBbGczREVTX0NCQzsKK307CisKK3N0cnVjdCBf
bGlic3NoMl93aW5jbmdfY3R4IF9saWJzc2gyX3dpbmNuZzsKKworCisvKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
Ki8KKy8qCisgKiBXaW5kb3dzIENORyBiYWNrZW5kOiBHZW5lcmljIGZ1bmN0aW9ucworICov
CisKK3ZvaWQgX2xpYnNzaDJfd2luY25nX2luaXQodm9pZCk7Cit2b2lkIF9saWJzc2gyX3dp
bmNuZ19mcmVlKHZvaWQpOworCisjZGVmaW5lIGxpYnNzaDJfY3J5cHRvX2luaXQoKSBcCisg
IF9saWJzc2gyX3dpbmNuZ19pbml0KCkKKyNkZWZpbmUgbGlic3NoMl9jcnlwdG9fZXhpdCgp
IFwKKyAgX2xpYnNzaDJfd2luY25nX2ZyZWUoKQorCisjZGVmaW5lIF9saWJzc2gyX3JhbmRv
bShidWYsIGxlbikgXAorICBfbGlic3NoMl93aW5jbmdfcmFuZG9tKGJ1ZiwgbGVuKQorCisK
Ky8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqLworLyoKKyAqIFdpbmRvd3MgQ05HIGJhY2tlbmQ6IEhhc2ggc3Ry
dWN0dXJlCisgKi8KKworc3RydWN0IF9saWJzc2gyX3dpbmNuZ19oYXNoX2N0eCB7CisgICAg
QkNSWVBUX0hBU0hfSEFORExFIGhIYXNoOworICAgIHVuc2lnbmVkIGNoYXIgKnBiSGFzaE9i
amVjdDsKKyAgICB1bnNpZ25lZCBsb25nIGR3SGFzaE9iamVjdDsKKyAgICB1bnNpZ25lZCBs
b25nIGNiSGFzaDsKK307CisKKyNkZWZpbmUgX2xpYnNzaDJfd2luY25nX2hhc2hfY3R4IHN0
cnVjdCBfbGlic3NoMl93aW5jbmdfaGFzaF9jdHgKKworLyoKKyAqIFdpbmRvd3MgQ05HIGJh
Y2tlbmQ6IEhhc2ggZnVuY3Rpb25zCisgKi8KKworI2RlZmluZSBsaWJzc2gyX3NoYTFfY3R4
IF9saWJzc2gyX3dpbmNuZ19oYXNoX2N0eAorI2RlZmluZSBsaWJzc2gyX3NoYTFfaW5pdChj
dHgpIFwKKyAgX2xpYnNzaDJfd2luY25nX2hhc2hfaW5pdChjdHgsIF9saWJzc2gyX3dpbmNu
Zy5oQWxnSGFzaFNIQTEsIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBTSEFfRElH
RVNUX0xFTkdUSCwgTlVMTCwgMCkKKyNkZWZpbmUgbGlic3NoMl9zaGExX3VwZGF0ZShjdHgs
IGRhdGEsIGRhdGFsZW4pIFwKKyAgX2xpYnNzaDJfd2luY25nX2hhc2hfdXBkYXRlKCZjdHgs
IGRhdGEsIGRhdGFsZW4pCisjZGVmaW5lIGxpYnNzaDJfc2hhMV9maW5hbChjdHgsIGhhc2gp
IFwKKyAgX2xpYnNzaDJfd2luY25nX2hhc2hfZmluYWwoJmN0eCwgaGFzaCkKKyNkZWZpbmUg
bGlic3NoMl9zaGExKGRhdGEsIGRhdGFsZW4sIGhhc2gpIFwKKyAgX2xpYnNzaDJfd2luY25n
X2hhc2goZGF0YSwgZGF0YWxlbiwgX2xpYnNzaDJfd2luY25nLmhBbGdIYXNoU0hBMSwgXAor
ICAgICAgICAgICAgICAgICAgICAgICBoYXNoLCBTSEFfRElHRVNUX0xFTkdUSCkKKworI2Rl
ZmluZSBsaWJzc2gyX21kNV9jdHggX2xpYnNzaDJfd2luY25nX2hhc2hfY3R4CisjZGVmaW5l
IGxpYnNzaDJfbWQ1X2luaXQoY3R4KSBcCisgIF9saWJzc2gyX3dpbmNuZ19oYXNoX2luaXQo
Y3R4LCBfbGlic3NoMl93aW5jbmcuaEFsZ0hhc2hNRDUsIFwKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBNRDVfRElHRVNUX0xFTkdUSCwgTlVMTCwgMCkKKyNkZWZpbmUgbGlic3No
Ml9tZDVfdXBkYXRlKGN0eCwgZGF0YSwgZGF0YWxlbikgXAorICBfbGlic3NoMl93aW5jbmdf
aGFzaF91cGRhdGUoJmN0eCwgZGF0YSwgZGF0YWxlbikKKyNkZWZpbmUgbGlic3NoMl9tZDVf
ZmluYWwoY3R4LCBoYXNoKSBcCisgIF9saWJzc2gyX3dpbmNuZ19oYXNoX2ZpbmFsKCZjdHgs
IGhhc2gpCisjZGVmaW5lIGxpYnNzaDJfbWQ1KGRhdGEsIGRhdGFsZW4sIGhhc2gpIFwKKyAg
X2xpYnNzaDJfd2luY25nX2hhc2goZGF0YSwgZGF0YWxlbiwgX2xpYnNzaDJfd2luY25nLmhB
bGdIYXNoTUQ1LCBcCisgICAgICAgICAgICAgICAgICAgICAgIGhhc2gsIE1ENV9ESUdFU1Rf
TEVOR1RIKQorCisvKgorICogV2luZG93cyBDTkcgYmFja2VuZDogSE1BQyBmdW5jdGlvbnMK
KyAqLworCisjZGVmaW5lIGxpYnNzaDJfaG1hY19jdHggX2xpYnNzaDJfd2luY25nX2hhc2hf
Y3R4CisjZGVmaW5lIGxpYnNzaDJfaG1hY19zaGExX2luaXQoY3R4LCBrZXksIGtleWxlbikg
XAorICBfbGlic3NoMl93aW5jbmdfaGFzaF9pbml0KGN0eCwgX2xpYnNzaDJfd2luY25nLmhB
bGdIbWFjU0hBMSwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNIQV9ESUdFU1Rf
TEVOR1RILCBrZXksIGtleWxlbikKKyNkZWZpbmUgbGlic3NoMl9obWFjX21kNV9pbml0KGN0
eCwga2V5LCBrZXlsZW4pIFwKKyAgX2xpYnNzaDJfd2luY25nX2hhc2hfaW5pdChjdHgsIF9s
aWJzc2gyX3dpbmNuZy5oQWxnSG1hY01ENSwgXAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIE1ENV9ESUdFU1RfTEVOR1RILCBrZXksIGtleWxlbikKKyNkZWZpbmUgbGlic3NoMl9o
bWFjX3JpcGVtZDE2MF9pbml0KGN0eCwga2V5LCBrZXlsZW4pCisgIC8qIG5vdCBpbXBsZW1l
bnRlZCAqLworI2RlZmluZSBsaWJzc2gyX2htYWNfdXBkYXRlKGN0eCwgZGF0YSwgZGF0YWxl
bikgXAorICBfbGlic3NoMl93aW5jbmdfaGFzaF91cGRhdGUoJmN0eCwgZGF0YSwgZGF0YWxl
bikKKyNkZWZpbmUgbGlic3NoMl9obWFjX2ZpbmFsKGN0eCwgaGFzaCkgXAorICBfbGlic3No
Ml93aW5jbmdfaG1hY19maW5hbCgmY3R4LCBoYXNoKQorI2RlZmluZSBsaWJzc2gyX2htYWNf
Y2xlYW51cChjdHgpIFwKKyAgX2xpYnNzaDJfd2luY25nX2htYWNfY2xlYW51cChjdHgpCisK
KworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKiovCisvKgorICogV2luZG93cyBDTkcgYmFja2VuZDogS2V5IENv
bnRleHQgc3RydWN0dXJlCisgKi8KKworc3RydWN0IF9saWJzc2gyX3dpbmNuZ19rZXlfY3R4
IHsKKyAgICBCQ1JZUFRfS0VZX0hBTkRMRSBoS2V5OworICAgIHVuc2lnbmVkIGNoYXIgKnBi
S2V5T2JqZWN0OworICAgIHVuc2lnbmVkIGxvbmcgY2JLZXlPYmplY3Q7Cit9OworCisjZGVm
aW5lIF9saWJzc2gyX3dpbmNuZ19rZXlfY3R4IHN0cnVjdCBfbGlic3NoMl93aW5jbmdfa2V5
X2N0eAorCisvKgorICogV2luZG93cyBDTkcgYmFja2VuZDogUlNBIGZ1bmN0aW9ucworICov
CisKKyNkZWZpbmUgbGlic3NoMl9yc2FfY3R4IF9saWJzc2gyX3dpbmNuZ19rZXlfY3R4Cisj
ZGVmaW5lIF9saWJzc2gyX3JzYV9uZXcocnNhY3R4LCBlLCBlX2xlbiwgbiwgbl9sZW4sIFwK
KyAgICAgICAgICAgICAgICAgICAgICAgICBkLCBkX2xlbiwgcCwgcF9sZW4sIHEsIHFfbGVu
LCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgZTEsIGUxX2xlbiwgZTIsIGUyX2xlbiwg
YywgY19sZW4pIFwKKyAgX2xpYnNzaDJfd2luY25nX3JzYV9uZXcocnNhY3R4LCBlLCBlX2xl
biwgbiwgbl9sZW4sIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZCwgZF9sZW4sIHAs
IHBfbGVuLCBxLCBxX2xlbiwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICBlMSwgZTFf
bGVuLCBlMiwgZTJfbGVuLCBjLCBjX2xlbikKKyNkZWZpbmUgX2xpYnNzaDJfcnNhX25ld19w
cml2YXRlKHJzYWN0eCwgcywgZmlsZW5hbWUsIHBhc3NwaHJhc2UpIFwKKyAgX2xpYnNzaDJf
d2luY25nX3JzYV9uZXdfcHJpdmF0ZShyc2FjdHgsIHMsIGZpbGVuYW1lLCBwYXNzcGhyYXNl
KQorI2RlZmluZSBfbGlic3NoMl9yc2Ffc2hhMV9zaWduKHMsIHJzYWN0eCwgaGFzaCwgaGFz
aF9sZW4sIHNpZywgc2lnX2xlbikgXAorICBfbGlic3NoMl93aW5jbmdfcnNhX3NoYTFfc2ln
bihzLCByc2FjdHgsIGhhc2gsIGhhc2hfbGVuLCBzaWcsIHNpZ19sZW4pCisjZGVmaW5lIF9s
aWJzc2gyX3JzYV9zaGExX3ZlcmlmeShyc2FjdHgsIHNpZywgc2lnX2xlbiwgbSwgbV9sZW4p
IFwKKyAgX2xpYnNzaDJfd2luY25nX3JzYV9zaGExX3ZlcmlmeShyc2FjdHgsIHNpZywgc2ln
X2xlbiwgbSwgbV9sZW4pCisjZGVmaW5lIF9saWJzc2gyX3JzYV9mcmVlKHJzYWN0eCkgXAor
ICBfbGlic3NoMl93aW5jbmdfcnNhX2ZyZWUocnNhY3R4KQorCisvKgorICogV2luZG93cyBD
TkcgYmFja2VuZDogRFNBIGZ1bmN0aW9ucworICovCisKKyNkZWZpbmUgbGlic3NoMl9kc2Ff
Y3R4IF9saWJzc2gyX3dpbmNuZ19rZXlfY3R4CisjZGVmaW5lIF9saWJzc2gyX2RzYV9uZXco
ZHNhY3R4LCBwLCBwX2xlbiwgcSwgcV9sZW4sIFwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICBnLCBnX2xlbiwgeSwgeV9sZW4sIHgsIHhfbGVuKSBcCisgIF9saWJzc2gyX3dpbmNuZ19k
c2FfbmV3KGRzYWN0eCwgcCwgcF9sZW4sIHEsIHFfbGVuLCBcCisgICAgICAgICAgICAgICAg
ICAgICAgICAgIGcsIGdfbGVuLCB5LCB5X2xlbiwgeCwgeF9sZW4pCisjZGVmaW5lIF9saWJz
c2gyX2RzYV9uZXdfcHJpdmF0ZShyc2FjdHgsIHMsIGZpbGVuYW1lLCBwYXNzcGhyYXNlKSBc
CisgIF9saWJzc2gyX3dpbmNuZ19kc2FfbmV3X3ByaXZhdGUocnNhY3R4LCBzLCBmaWxlbmFt
ZSwgcGFzc3BocmFzZSkKKyNkZWZpbmUgX2xpYnNzaDJfZHNhX3NoYTFfc2lnbihkc2FjdHgs
IGhhc2gsIGhhc2hfbGVuLCBzaWcpIFwKKyAgX2xpYnNzaDJfd2luY25nX2RzYV9zaGExX3Np
Z24oZHNhY3R4LCBoYXNoLCBoYXNoX2xlbiwgc2lnKQorI2RlZmluZSBfbGlic3NoMl9kc2Ff
c2hhMV92ZXJpZnkoZHNhY3R4LCBzaWcsIG0sIG1fbGVuKSBcCisgIF9saWJzc2gyX3dpbmNu
Z19kc2Ffc2hhMV92ZXJpZnkoZHNhY3R4LCBzaWcsIG0sIG1fbGVuKQorI2RlZmluZSBfbGli
c3NoMl9kc2FfZnJlZShkc2FjdHgpIFwKKyAgX2xpYnNzaDJfd2luY25nX2RzYV9mcmVlKGRz
YWN0eCkKKworLyoKKyAqIFdpbmRvd3MgQ05HIGJhY2tlbmQ6IEtleSBmdW5jdGlvbnMKKyAq
LworCisjZGVmaW5lIF9saWJzc2gyX3B1Yl9wcml2X2tleWZpbGUocywgbSwgbV9sZW4sIHAs
IHBfbGVuLCBwaywgcHcpIFwKKyAgX2xpYnNzaDJfd2luY25nX3B1Yl9wcml2X2tleWZpbGUo
cywgbSwgbV9sZW4sIHAsIHBfbGVuLCBwaywgcHcpCisKKworLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisv
KgorICogV2luZG93cyBDTkcgYmFja2VuZDogQ2lwaGVyIENvbnRleHQgc3RydWN0dXJlCisg
Ki8KKworc3RydWN0IF9saWJzc2gyX3dpbmNuZ19jaXBoZXJfY3R4IHsKKyAgICBCQ1JZUFRf
S0VZX0hBTkRMRSBoS2V5OworICAgIHVuc2lnbmVkIGNoYXIgKnBiS2V5T2JqZWN0OworICAg
IHVuc2lnbmVkIGNoYXIgKnBiSVY7CisgICAgdW5zaWduZWQgbG9uZyBkd0tleU9iamVjdDsK
KyAgICB1bnNpZ25lZCBsb25nIGR3SVY7CisgICAgdW5zaWduZWQgbG9uZyBkd0Jsb2NrTGVu
Z3RoOworfTsKKworI2RlZmluZSBfbGlic3NoMl9jaXBoZXJfY3R4IHN0cnVjdCBfbGlic3No
Ml93aW5jbmdfY2lwaGVyX2N0eAorCisvKgorICogV2luZG93cyBDTkcgYmFja2VuZDogQ2lw
aGVyIFR5cGUgc3RydWN0dXJlCisgKi8KKworc3RydWN0IF9saWJzc2gyX3dpbmNuZ19jaXBo
ZXJfdHlwZSB7CisgICAgQkNSWVBUX0FMR19IQU5ETEUgKnBoQWxnOworICAgIHVuc2lnbmVk
IGxvbmcgZHdLZXlMZW5ndGg7CisgICAgdW5zaWduZWQgbG9uZyBkd1VzZUlWOworfTsKKwor
I2RlZmluZSBfbGlic3NoMl9jaXBoZXJfdHlwZSh0eXBlKSBzdHJ1Y3QgX2xpYnNzaDJfd2lu
Y25nX2NpcGhlcl90eXBlIHR5cGUKKworI2RlZmluZSBfbGlic3NoMl9jaXBoZXJfYWVzMjU2
Y3RyIHsgTlVMTCwgMzIsIDEgfSAvKiBub3Qgc3VwcG9ydGVkICovCisjZGVmaW5lIF9saWJz
c2gyX2NpcGhlcl9hZXMxOTJjdHIgeyBOVUxMLCAyNCwgMSB9IC8qIG5vdCBzdXBwb3J0ZWQg
Ki8KKyNkZWZpbmUgX2xpYnNzaDJfY2lwaGVyX2FlczEyOGN0ciB7IE5VTEwsIDE2LCAxIH0g
Lyogbm90IHN1cHBvcnRlZCAqLworI2RlZmluZSBfbGlic3NoMl9jaXBoZXJfYWVzMjU2IHsg
Jl9saWJzc2gyX3dpbmNuZy5oQWxnQUVTX0NCQywgMzIsIDEgfQorI2RlZmluZSBfbGlic3No
Ml9jaXBoZXJfYWVzMTkyIHsgJl9saWJzc2gyX3dpbmNuZy5oQWxnQUVTX0NCQywgMjQsIDEg
fQorI2RlZmluZSBfbGlic3NoMl9jaXBoZXJfYWVzMTI4IHsgJl9saWJzc2gyX3dpbmNuZy5o
QWxnQUVTX0NCQywgMTYsIDEgfQorI2RlZmluZSBfbGlic3NoMl9jaXBoZXJfYmxvd2Zpc2gg
eyBOVUxMLCAxNiwgMCB9IC8qIG5vdCBzdXBwb3J0ZWQgKi8KKyNkZWZpbmUgX2xpYnNzaDJf
Y2lwaGVyX2FyY2ZvdXIgeyAmX2xpYnNzaDJfd2luY25nLmhBbGdSQzRfTkEsIDE2LCAwIH0K
KyNkZWZpbmUgX2xpYnNzaDJfY2lwaGVyX2Nhc3Q1IHsgTlVMTCwgMTYsIDAgfSAvKiBub3Qg
c3VwcG9ydGVkICovCisjZGVmaW5lIF9saWJzc2gyX2NpcGhlcl8zZGVzIHsgJl9saWJzc2gy
X3dpbmNuZy5oQWxnM0RFU19DQkMsIDI0LCAxIH0KKworLyoKKyAqIFdpbmRvd3MgQ05HIGJh
Y2tlbmQ6IENpcGhlciBmdW5jdGlvbnMKKyAqLworCisjZGVmaW5lIF9saWJzc2gyX2NpcGhl
cl9pbml0KGN0eCwgdHlwZSwgaXYsIHNlY3JldCwgZW5jcnlwdCkgXAorICBfbGlic3NoMl93
aW5jbmdfY2lwaGVyX2luaXQoY3R4LCB0eXBlLCBpdiwgc2VjcmV0LCBlbmNyeXB0KQorI2Rl
ZmluZSBfbGlic3NoMl9jaXBoZXJfY3J5cHQoY3R4LCB0eXBlLCBlbmNyeXB0LCBibG9jaywg
YmxvY2tsZW4pIFwKKyAgX2xpYnNzaDJfd2luY25nX2NpcGhlcl9jcnlwdChjdHgsIHR5cGUs
IGVuY3J5cHQsIGJsb2NrLCBibG9ja2xlbikKKyNkZWZpbmUgX2xpYnNzaDJfY2lwaGVyX2R0
b3IoY3R4KSBcCisgIF9saWJzc2gyX3dpbmNuZ19jaXBoZXJfZHRvcihjdHgpCisKKy8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqLworLyoKKyAqIFdpbmRvd3MgQ05HIGJhY2tlbmQ6IEJpZ051bWJlciBDb250
ZXh0CisgKi8KKworI2RlZmluZSBfbGlic3NoMl9ibl9jdHggaW50IC8qIG5vdCB1c2VkICov
CisjZGVmaW5lIF9saWJzc2gyX2JuX2N0eF9uZXcoKSAwIC8qIG5vdCB1c2VkICovCisjZGVm
aW5lIF9saWJzc2gyX2JuX2N0eF9mcmVlKGJuY3R4KSAoKHZvaWQpMCkgLyogbm90IHVzZWQg
Ki8KKworCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKi8KKy8qCisgKiBXaW5kb3dzIENORyBiYWNrZW5kOiBC
aWdOdW1iZXIgc3RydWN0dXJlCisgKi8KKworc3RydWN0IF9saWJzc2gyX3dpbmNuZ19iaWdu
dW0geworICAgIHVuc2lnbmVkIGNoYXIgKmJpZ251bTsKKyAgICB1bnNpZ25lZCBsb25nIGxl
bmd0aDsKK307CisKKyNkZWZpbmUgX2xpYnNzaDJfYm4gc3RydWN0IF9saWJzc2gyX3dpbmNu
Z19iaWdudW0KKworLyoKKyAqIFdpbmRvd3MgQ05HIGJhY2tlbmQ6IEJpZ051bWJlciBmdW5j
dGlvbnMKKyAqLworCitfbGlic3NoMl9ibiAqX2xpYnNzaDJfd2luY25nX2JpZ251bV9pbml0
KHZvaWQpOworCisjZGVmaW5lIF9saWJzc2gyX2JuX2luaXQoKSBcCisgIF9saWJzc2gyX3dp
bmNuZ19iaWdudW1faW5pdCgpCisjZGVmaW5lIF9saWJzc2gyX2JuX3JhbmQoYm4sIGJpdHMs
IHRvcCwgYm90dG9tKSBcCisgIF9saWJzc2gyX3dpbmNuZ19iaWdudW1fcmFuZChibiwgYml0
cywgdG9wLCBib3R0b20pCisjZGVmaW5lIF9saWJzc2gyX2JuX21vZF9leHAociwgYSwgcCwg
bSwgY3R4KSBcCisgIF9saWJzc2gyX3dpbmNuZ19iaWdudW1fbW9kX2V4cChyLCBhLCBwLCBt
LCBjdHgpCisjZGVmaW5lIF9saWJzc2gyX2JuX3NldF93b3JkKGJuLCB3b3JkKSBcCisgIF9s
aWJzc2gyX3dpbmNuZ19iaWdudW1fc2V0X3dvcmQoYm4sIHdvcmQpCisjZGVmaW5lIF9saWJz
c2gyX2JuX2Zyb21fYmluKGJuLCBsZW4sIGJpbikgXAorICBfbGlic3NoMl93aW5jbmdfYmln
bnVtX2Zyb21fYmluKGJuLCBsZW4sIGJpbikKKyNkZWZpbmUgX2xpYnNzaDJfYm5fdG9fYmlu
KGJuLCBiaW4pIFwKKyAgX2xpYnNzaDJfd2luY25nX2JpZ251bV90b19iaW4oYm4sIGJpbikK
KyNkZWZpbmUgX2xpYnNzaDJfYm5fYnl0ZXMoYm4pIGJuLT5sZW5ndGgKKyNkZWZpbmUgX2xp
YnNzaDJfYm5fYml0cyhibikgXAorICBfbGlic3NoMl93aW5jbmdfYmlnbnVtX2JpdHMoYm4p
CisjZGVmaW5lIF9saWJzc2gyX2JuX2ZyZWUoYm4pIFwKKyAgX2xpYnNzaDJfd2luY25nX2Jp
Z251bV9mcmVlKGJuKQotLSAKMS44LjEubXN5c2dpdC4xCgo=
--------------090107000908000703060304
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

--------------090107000908000703060304--

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 16:38:29 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIFc4ZU025981;
	Mon, 18 Nov 2013 16:38:22 +0100
Received: from mx.uxnr.de (mx.uxnr.de
 [IPv6:2a00:1828:2000:378:2525:0:59ee:542f])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIFc3Wj025778
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 16:38:03 +0100
Received: from [10.2.2.10] (p5B0A7BB3.dip0.t-ipconnect.de [91.10.123.179])
 by mx.uxnr.de (Postfix) with ESMTPSA id CD2C01C5A336
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 16:37:57 +0100 (CET)
X-DKIM: OpenDKIM Filter v2.6.8 mx.uxnr.de CD2C01C5A336
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=marc-hoersken.de;
 s=picard; t=1384789077;
 bh=CnCJGYIdQ4z+bQGjpBvB4300flepQkTKqXQwh5lj5IY=;
 h=Date:From:To:Subject:From;
 b=Nqs4BsepaoDq4mB6lAptviI1sJkusKebw0wsHWCoLLo4DRrhlFtRxOZBGAYyP2qdt
 pCN0NJK7AMZ7IgkNzIdfSrPAfsHVq3dCVtYK0OPUqTei7eysJEAS7gqKLJo12c1DmL
 jKNBplCXdg22V2WnE6eYDpVndkzODn21IrT1DKHc=
Message-ID: <528A3457.8090708@marc-hoersken.de>
Date: Mon, 18 Nov 2013 16:37:59 +0100
From: =?ISO-8859-15?Q?Marc_H=F6rsken?= <info@marc-hoersken.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
 rv:24.0) Gecko/20100101 Thunderbird/24.1.0
MIME-Version: 1.0
To: libssh2 development <libssh2-devel@cool.haxx.se>
Subject: [PATCH] .gitignore: Ignore files like src/libssh2_config.h.in~
X-Enigmail-Version: 1.6
Content-Type: multipart/mixed; boundary="------------030007000801040407000807"
X-Spam-Status: No, score=-1.1 required=5.0 tests=ALL_TRUSTED,DKIM_SIGNED,
 DKIM_VALID,DKIM_VALID_AU autolearn=unavailable version=3.3.2
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on picard.vpn.uxnr.de
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

This is a multi-part message in MIME format.
--------------030007000801040407000807
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: 7bit

---
 .gitignore | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.gitignore b/.gitignore
index 19c973c..055de4d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -33,3 +33,4 @@ mkinstalldirs
 tags
 libssh2.pc
 TAGS
+*~
-- 
1.8.1.msysgit.1


--------------030007000801040407000807
Content-Type: text/plain; charset=windows-1252;
 name="0001-.gitignore-Ignore-files-like-src-libssh2_config.h.in.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename*0="0001-.gitignore-Ignore-files-like-src-libssh2_config.h.in.pa";
 filename*1="tch"

From bd1863eb3dc4453c0a909b4bcad3cdedfa19892d Mon Sep 17 00:00:00 2001
From: Marc Hoersken <info@marc-hoersken.de>
Date: Mon, 18 Nov 2013 16:36:16 +0100
Subject: [PATCH] .gitignore: Ignore files like src/libssh2_config.h.in~

---
 .gitignore | 1 +
 1 file changed, 1 insertion(+)

diff --git a/.gitignore b/.gitignore
index 19c973c..055de4d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -33,3 +33,4 @@ mkinstalldirs
 tags
 libssh2.pc
 TAGS
+*~
-- 
1.8.1.msysgit.1


--------------030007000801040407000807
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

--------------030007000801040407000807--

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 17:04:57 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIG4qFv021644;
	Mon, 18 Nov 2013 17:04:56 +0100
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIG4mBe021567
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 17:04:49 +0100
Received: from int-mx12.intmail.prod.int.phx2.redhat.com
 (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25])
 by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id rAIG4lUK011024
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK);
 Mon, 18 Nov 2013 11:04:47 -0500
Received: from kdudka.brq.redhat.com (kdudka.brq.redhat.com [10.34.4.67])
 by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id
 rAIG4lf2026472; Mon, 18 Nov 2013 11:04:47 -0500
From: Kamil Dudka <kdudka@redhat.com>
To: Marc =?iso-8859-1?q?H=F6rsken?= <info@marc-hoersken.de>
Subject: Re: [PATCH] .gitignore: Ignore files like src/libssh2_config.h.in~
Date: Mon, 18 Nov 2013 17:04:34 +0100
User-Agent: KMail/1.12.4 (Linux/2.6.32-428.el6.x86_64; KDE/4.3.4; x86_64; ; )
References: <528A3457.8090708@marc-hoersken.de>
In-Reply-To: <528A3457.8090708@marc-hoersken.de>
MIME-Version: 1.0
Message-Id: <201311181704.34750.kdudka@redhat.com>
X-Scanned-By: MIMEDefang 2.68 on 10.5.11.25
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id
 rAIG4mBe021567
Cc: libssh2-devel@cool.haxx.se
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="iso-8859-1"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id rAIG4qFv021644

On Monday 18 November 2013 16:37:59 Marc Hörsken wrote:
> +*~

I do not see any connection with the libssh2 project and the above pattern.  
Are any such files generated during the build?

If those files are created by your favorite editor, you can make them ignored 
in your own profile instead of patching all the projects you contribute to:

$ echo '*~' >> ~/.gitignore
$ git config --global core.excludesfile ~/.gitignore

Kamil

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 17:27:47 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIGRd3p009667;
	Mon, 18 Nov 2013 17:27:45 +0100
Received: from mx.uxnr.de (mx.uxnr.de
 [IPv6:2a00:1828:2000:378:2525:0:59ee:542f])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIGRcGf009620
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 17:27:38 +0100
Received: from [10.2.2.10] (p5B0A7BB3.dip0.t-ipconnect.de [91.10.123.179])
 by mx.uxnr.de (Postfix) with ESMTPSA id 405FD1C5A336
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 17:27:33 +0100 (CET)
X-DKIM: OpenDKIM Filter v2.6.8 mx.uxnr.de 405FD1C5A336
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=marc-hoersken.de;
 s=picard; t=1384792053;
 bh=wbhiQ4/m7ybYoFAjSNohPpn3MEsT6UlyEjfSLe3+pr0=;
 h=Date:From:To:Subject:References:In-Reply-To:From;
 b=p1go21X9pTL6b067u8FJqkj+WxcZOcBn3f8oEOSGXGOYu02S32zaXZ61sDk6MkZsl
 kkjVkBiri7bBY7X+dCNqTuyzilaByBefSIAqJMnDx4hphoV/xAGOuop4B+fJ1xrtIf
 SPU6+bmJwmbMfZh2OxlkhjTiTVfhnOOGNZ+Uc/3A=
Message-ID: <528A3FF7.4090701@marc-hoersken.de>
Date: Mon, 18 Nov 2013 17:27:35 +0100
From: =?ISO-8859-1?Q?Marc_H=F6rsken?= <info@marc-hoersken.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
 rv:24.0) Gecko/20100101 Thunderbird/24.1.0
MIME-Version: 1.0
To: libssh2 development <libssh2-devel@cool.haxx.se>
Subject: Re: [PATCH] .gitignore: Ignore files like src/libssh2_config.h.in~
References: <528A3457.8090708@marc-hoersken.de>
 <201311181704.34750.kdudka@redhat.com>
In-Reply-To: <201311181704.34750.kdudka@redhat.com>
X-Enigmail-Version: 1.6
X-Spam-Status: No, score=-1.1 required=5.0 tests=ALL_TRUSTED,DKIM_SIGNED,
 DKIM_VALID,DKIM_VALID_AU autolearn=unavailable version=3.3.2
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on picard.vpn.uxnr.de
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="iso-8859-1"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id rAIGRd3p009667

Am 18.11.2013 17:04, schrieb Kamil Dudka:
> On Monday 18 November 2013 16:37:59 Marc Hörsken wrote:
>> +*~
> I do not see any connection with the libssh2 project and the above pattern.  
> Are any such files generated during the build?
The file was created by some part of the build process, but
unfortunately I am now unable to reproduce it.
> If those files are created by your favorite editor, you can make them ignored 
> in your own profile instead of patching all the projects you contribute to:
>
> $ echo '*~' >> ~/.gitignore
> $ git config --global core.excludesfile ~/.gitignore
Thanks for that information. I am on Windows right now and Notepad++
should not create files like this.
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 17:45:06 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIGiqbX024858;
	Mon, 18 Nov 2013 17:45:04 +0100
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIGinX2024845
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 17:44:51 +0100
Received: from int-mx12.intmail.prod.int.phx2.redhat.com
 (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25])
 by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id rAIGimRh032473
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK);
 Mon, 18 Nov 2013 11:44:48 -0500
Received: from kdudka.brq.redhat.com (kdudka.brq.redhat.com [10.34.4.67])
 by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id
 rAIGilEA021604; Mon, 18 Nov 2013 11:44:48 -0500
From: Kamil Dudka <kdudka@redhat.com>
To: Marc =?iso-8859-1?q?H=F6rsken?= <info@marc-hoersken.de>
Subject: Re: [PATCH] .gitignore: Ignore files like src/libssh2_config.h.in~
Date: Mon, 18 Nov 2013 17:44:35 +0100
User-Agent: KMail/1.12.4 (Linux/2.6.32-428.el6.x86_64; KDE/4.3.4; x86_64; ; )
References: <528A3457.8090708@marc-hoersken.de>
 <201311181704.34750.kdudka@redhat.com> <528A3FF7.4090701@marc-hoersken.de>
In-Reply-To: <528A3FF7.4090701@marc-hoersken.de>
MIME-Version: 1.0
Message-Id: <201311181744.35599.kdudka@redhat.com>
X-Scanned-By: MIMEDefang 2.68 on 10.5.11.25
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id
 rAIGinX2024845
Cc: libssh2-devel@cool.haxx.se
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="iso-8859-1"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id rAIGiqbX024858

On Monday 18 November 2013 17:27:35 Marc Hörsken wrote:
> Am 18.11.2013 17:04, schrieb Kamil Dudka:
> > On Monday 18 November 2013 16:37:59 Marc Hörsken wrote:
> >> +*~
> >
> > I do not see any connection with the libssh2 project and the above
> > pattern. Are any such files generated during the build?
> 
> The file was created by some part of the build process, but
> unfortunately I am now unable to reproduce it.

Then it indeed makes sense to ignore them.  Which files exactly were created?

Kamil

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 17:47:39 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIGlcH0027107;
	Mon, 18 Nov 2013 17:47:39 +0100
Received: from mx.uxnr.de (mx.uxnr.de
 [IPv6:2a00:1828:2000:378:2525:0:59ee:542f])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIGla1t027046
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 17:47:37 +0100
Received: from [10.2.2.10] (p5B0A7BB3.dip0.t-ipconnect.de [91.10.123.179])
 by mx.uxnr.de (Postfix) with ESMTPSA id E5A261C5A3A4;
 Mon, 18 Nov 2013 17:47:31 +0100 (CET)
X-DKIM: OpenDKIM Filter v2.6.8 mx.uxnr.de E5A261C5A3A4
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=marc-hoersken.de;
 s=picard; t=1384793252;
 bh=+oYhpK9PX8GAKOtwWqNOrbowvtU2QOym/lvZvT81+JU=;
 h=Date:From:To:CC:Subject:References:In-Reply-To:From;
 b=curGnAw37O5HLxXe4dN99vwsJQ3rCl9s9jhIgIQq/QRTWe3qcu4/Mfs5Au2DsLGcm
 cSspZN4bJCXQQkC2oqUlzMoOAGDdoLPrISUbqrPbEEqW9fF8IjDQVlsP28FocRLfqv
 haToPZe1RHsvNC/pJdh0+7J86YG4qwjUc5313EHw=
Message-ID: <528A44A5.9060403@marc-hoersken.de>
Date: Mon, 18 Nov 2013 17:47:33 +0100
From: =?ISO-8859-1?Q?Marc_H=F6rsken?= <info@marc-hoersken.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
 rv:24.0) Gecko/20100101 Thunderbird/24.1.0
MIME-Version: 1.0
To: Kamil Dudka <kdudka@redhat.com>
Subject: Re: [PATCH] .gitignore: Ignore files like src/libssh2_config.h.in~
References: <528A3457.8090708@marc-hoersken.de>
 <201311181704.34750.kdudka@redhat.com> <528A3FF7.4090701@marc-hoersken.de>
 <201311181744.35599.kdudka@redhat.com>
In-Reply-To: <201311181744.35599.kdudka@redhat.com>
X-Enigmail-Version: 1.6
X-Spam-Status: No, score=-1.1 required=5.0 tests=ALL_TRUSTED,DKIM_SIGNED,
 DKIM_VALID,DKIM_VALID_AU autolearn=unavailable version=3.3.2
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on picard.vpn.uxnr.de
Cc: libssh2 development <libssh2-devel@cool.haxx.se>
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

Am 18.11.2013 17:44, schrieb Kamil Dudka:
> Then it indeed makes sense to ignore them. Which files exactly were
> created? Kamil 
Just the following:
    src/libssh2_config.h.in~

Since other projects (e.g. curl) also use the *~ pattern to ignore such
files, I thought it might be a good idea to use that pattern here, too.
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 17:58:46 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIGwfl9002213;
	Mon, 18 Nov 2013 17:58:45 +0100
Received: from mx.uxnr.de (mx.uxnr.de
 [IPv6:2a00:1828:2000:378:2525:0:59ee:542f])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIGweug002177
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 17:58:40 +0100
Received: from [10.2.2.10] (p5B0A7BB3.dip0.t-ipconnect.de [91.10.123.179])
 by mx.uxnr.de (Postfix) with ESMTPSA id CBFF81C5A336
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 17:58:35 +0100 (CET)
X-DKIM: OpenDKIM Filter v2.6.8 mx.uxnr.de CBFF81C5A336
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=marc-hoersken.de;
 s=picard; t=1384793915;
 bh=qMSlou4NuZC4fCtHkjk2bMZrkIrk7v0cjHolx+Ymor0=;
 h=Date:From:To:Subject:From;
 b=ly30ZmbefcpSvrUgDPrYO3DXBFlvrzQpOzYdIc0MFZN4LSaPZ6jyQYRRZYwU9+QZ9
 tWkZghm0PFxHjVXFq8qVJRZbivlzBPYbSxGrR9uDBtNwG09yOekV9VOBrmXbLo1bqW
 eP5ktrVtyVr8HfOqOdJJ2iSf9BZQmK1fuB7g/mo8=
Message-ID: <528A473E.2050102@marc-hoersken.de>
Date: Mon, 18 Nov 2013 17:58:38 +0100
From: =?ISO-8859-15?Q?Marc_H=F6rsken?= <info@marc-hoersken.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
 rv:24.0) Gecko/20100101 Thunderbird/24.1.0
MIME-Version: 1.0
To: libssh2 development <libssh2-devel@cool.haxx.se>
Subject: [PATCH] win32: Make it possible to compile using OpenSSL for now
X-Enigmail-Version: 1.6
Content-Type: multipart/mixed; boundary="------------060205070404010602090906"
X-Spam-Status: No, score=-1.1 required=5.0 tests=ALL_TRUSTED,DKIM_SIGNED,
 DKIM_VALID,DKIM_VALID_AU autolearn=unavailable version=3.3.2
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on picard.vpn.uxnr.de
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

This is a multi-part message in MIME format.
--------------060205070404010602090906
Content-Type: text/plain; charset=ISO-8859-15
Content-Transfer-Encoding: 7bit

Hello everyone,

I noticed that it is currently not possible to compile using any of the
win32-specific build systems since the required OpenSSL define
LIBSSH2_OPENSSL is not defined since commit
d512b25f69a1b6778881f6b4b5ff9cfc6023be42.

This patch adds LIBSSH2_OPENSSL to these build systems since they do not
support different crypto libraries as of now.

Best regards,
Marc

--------------060205070404010602090906
Content-Type: text/plain; charset=windows-1252;
 name="0001-win32-Make-it-possible-to-compile-using-OpenSSL-for-.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename*0="0001-win32-Make-it-possible-to-compile-using-OpenSSL-for-.pa";
 filename*1="tch"

From 9136ee4480955170d01288df9e1209b5251c5918 Mon Sep 17 00:00:00 2001
From: Marc Hoersken <info@marc-hoersken.de>
Date: Mon, 18 Nov 2013 17:55:09 +0100
Subject: [PATCH] win32: Make it possible to compile using OpenSSL for now

Commit d512b25f69a1b6778881f6b4b5ff9cfc6023be42 changed the way
crypto libraries are detected and makes it necessary to define
LIBSSH2_OPENSSL in order to compile against OpenSSL. Since the
win32 makefiles NMakefile and GNUmakefile only support OpenSSL
the define can be hardcoded for now.
---
 win32/GNUmakefile | 2 +-
 win32/config.mk   | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/win32/GNUmakefile b/win32/GNUmakefile
index c0cc20a..fd99e12 100644
--- a/win32/GNUmakefile
+++ b/win32/GNUmakefile
@@ -99,7 +99,7 @@ endif
 -include $(OBJDIR)/version.inc
 
 # Global flags for all compilers
-CFLAGS	= $(OPT) -D$(DB) -DLIBSSH2_WIN32 # -DHAVE_CONFIG_H
+CFLAGS	= $(OPT) -D$(DB) -DLIBSSH2_WIN32 -DLIBSSH2_OPENSSL # -DHAVE_CONFIG_H
 ifeq ($(ARCH),w64)
 CFLAGS	+= -D_AMD64_
 endif
diff --git a/win32/config.mk b/win32/config.mk
index 4c8eb2a..7495684 100644
--- a/win32/config.mk
+++ b/win32/config.mk
@@ -1,4 +1,4 @@
-
+# This file is used by NMakefile-based builds
 # Tweak these for your system
 !if "$(OPENSSLINC)" == ""
 OPENSSLINC=..\openssl-0.9.8x\inc32
@@ -29,7 +29,7 @@ CPPFLAGS=/Oi /O2 /Oy /GF /Y- /MD /DNDEBUG
 DLLFLAGS=/DEBUG /LD
 !endif
 
-CPPFLAGS=/nologo /GL /Zi /EHsc $(CPPFLAGS) /Iwin32 /Iinclude /I$(OPENSSLINC) $(ZLIBINC)
+CPPFLAGS=/nologo /GL /Zi /EHsc $(CPPFLAGS) /Iwin32 /Iinclude -DLIBSSH2_OPENSSL /I$(OPENSSLINC) $(ZLIBINC)
 CFLAGS=$(CPPFLAGS)
 RCFLAGS=/Iinclude
 DLLFLAGS=$(CFLAGS) $(DLLFLAGS)
-- 
1.8.1.msysgit.1


--------------060205070404010602090906
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

--------------060205070404010602090906--

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 18:07:25 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIH7M07010529;
	Mon, 18 Nov 2013 18:07:25 +0100
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIH7K7k010516
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 18:07:20 +0100
Received: from int-mx01.intmail.prod.int.phx2.redhat.com
 (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11])
 by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id rAIH7J6q018197
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK);
 Mon, 18 Nov 2013 12:07:19 -0500
Received: from kdudka.brq.redhat.com (kdudka.brq.redhat.com [10.34.4.67])
 by int-mx01.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id
 rAIH7Ick022202; Mon, 18 Nov 2013 12:07:19 -0500
From: Kamil Dudka <kdudka@redhat.com>
To: Marc =?iso-8859-1?q?H=F6rsken?= <info@marc-hoersken.de>
Subject: Re: [PATCH] .gitignore: Ignore files like src/libssh2_config.h.in~
Date: Mon, 18 Nov 2013 18:07:06 +0100
User-Agent: KMail/1.12.4 (Linux/2.6.32-428.el6.x86_64; KDE/4.3.4; x86_64; ; )
References: <528A3457.8090708@marc-hoersken.de>
 <201311181744.35599.kdudka@redhat.com> <528A44A5.9060403@marc-hoersken.de>
In-Reply-To: <528A44A5.9060403@marc-hoersken.de>
MIME-Version: 1.0
Message-Id: <201311181807.06525.kdudka@redhat.com>
X-Scanned-By: MIMEDefang 2.67 on 10.5.11.11
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id
 rAIH7K7k010516
Cc: libssh2 development <libssh2-devel@cool.haxx.se>
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="iso-8859-1"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id rAIH7M07010529

On Monday 18 November 2013 17:47:33 Marc Hörsken wrote:
> Am 18.11.2013 17:44, schrieb Kamil Dudka:
> > Then it indeed makes sense to ignore them. Which files exactly were
> > created? Kamil
> 
> Just the following:
>     src/libssh2_config.h.in~

This one is created by autoheader.  I am able to reproduce it locally.

> Since other projects (e.g. curl) also use the *~ pattern to ignore such
> files, I thought it might be a good idea to use that pattern here, too.

Yes, I agree on that.

Kamil

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 18:28:04 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIHRxs9028606;
	Mon, 18 Nov 2013 18:28:03 +0100
Received: from foo.stuge.se (qmailr@foo.stuge.se [212.116.89.98])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIHRvJF028601
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 18:27:57 +0100
Received: (qmail 22394 invoked by uid 501); 18 Nov 2013 17:27:58 -0000
Message-ID: <20131118172758.22393.qmail@stuge.se>
Date: Mon, 18 Nov 2013 18:27:58 +0100
From: Peter Stuge <peter@stuge.se>
To: libssh2-devel@cool.haxx.se
Subject: Re: [PATCH] win32: Make it possible to compile using OpenSSL for now
Mail-Followup-To: libssh2-devel@cool.haxx.se
References: <528A473E.2050102@marc-hoersken.de>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <528A473E.2050102@marc-hoersken.de>
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from base64 to 8bit by giant.haxx.se id rAIHRxs9028606

Marc HÃ¶rsken wrote:
> I noticed that it is currently not possible to compile using any of the
> win32-specific build systems since the required OpenSSL define
> LIBSSH2_OPENSSL is not defined since commit
> d512b25f69a1b6778881f6b4b5ff9cfc6023be42.

Thanks for catching that. It needs to be added to all build systems
actually, not just for win32. I'm fine with doing that or if you want
to maybe you can send an updated patch to fix them all.

If I hear nothing I'll do it a little later tonight.


//Peter
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Mon Nov 18 18:35:40 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIHZasU001542;
	Mon, 18 Nov 2013 18:35:38 +0100
Received: from mx.uxnr.de (mx.uxnr.de [89.238.84.47])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAIHZY96001521
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 18:35:34 +0100
Received: from [10.2.2.10] (pD9E627B8.dip0.t-ipconnect.de [217.230.39.184])
 by mx.uxnr.de (Postfix) with ESMTPSA id 89DF91C5A377
 for <libssh2-devel@cool.haxx.se>; Mon, 18 Nov 2013 18:35:28 +0100 (CET)
X-DKIM: OpenDKIM Filter v2.6.8 mx.uxnr.de 89DF91C5A377
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=marc-hoersken.de;
 s=picard; t=1384796128;
 bh=o0CQgSLDROXAjd70F2xR/ABNaF6ohUNaKJZEuMDUkXk=;
 h=Date:From:To:Subject:References:In-Reply-To:From;
 b=rwTn1PqfE+4iBCeTi3fTde1n8sfuj+hpeWb5TZJHNIt7vNl1qbr4vbAIdNeTQKWTD
 NZ4xTzoMmbdRDtY2BvGVh2e7ACqVam7azSSuZNRNuDlS0BuRUfEu6OoGXgNx9mtLWw
 tASiuYUpLvqUnr9L/6r+eopt9x9JjmAwnmIimjW4=
Message-ID: <528A4FE2.7020007@marc-hoersken.de>
Date: Mon, 18 Nov 2013 18:35:30 +0100
From: =?UTF-8?B?TWFyYyBIw7Zyc2tlbg==?= <info@marc-hoersken.de>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
 rv:24.0) Gecko/20100101 Thunderbird/24.1.0
MIME-Version: 1.0
To: libssh2 development <libssh2-devel@cool.haxx.se>
Subject: Re: [PATCH] win32: Make it possible to compile using OpenSSL for now
References: <528A473E.2050102@marc-hoersken.de>
 <20131118172758.22393.qmail@stuge.se>
In-Reply-To: <20131118172758.22393.qmail@stuge.se>
X-Enigmail-Version: 1.6
X-Spam-Status: No, score=-1.1 required=5.0 tests=ALL_TRUSTED,DKIM_SIGNED,
 DKIM_VALID,DKIM_VALID_AU autolearn=unavailable version=3.3.2
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on picard.vpn.uxnr.de
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

Am 18.11.2013 18:27, schrieb Peter Stuge:
> Thanks for catching that. It needs to be added to all build systems
> actually, not just for win32. I'm fine with doing that or if you want
> to maybe you can send an updated patch to fix them all.

Since I am unable to test/verify other build systems as I do not use
them, you are welcome to fix the others.
>
> If I hear nothing I'll do it a little later tonight.
>
If you would like to, just go ahead and merge my patch as a starting point.
_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Wed Nov 20 14:28:26 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAKDRvhh023735;
	Wed, 20 Nov 2013 14:28:19 +0100
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAKDRtYF023724
 for <libssh2-devel@cool.haxx.se>; Wed, 20 Nov 2013 14:27:56 +0100
Received: from int-mx09.intmail.prod.int.phx2.redhat.com
 (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22])
 by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id rAKDRpwu012393
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK);
 Wed, 20 Nov 2013 08:27:52 -0500
Received: from kdudka.brq.redhat.com (kdudka.brq.redhat.com [10.34.4.67])
 by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id
 rAKDRnXv008943; Wed, 20 Nov 2013 08:27:50 -0500
From: Kamil Dudka <kdudka@redhat.com>
To: Marc =?iso-8859-1?q?H=F6rsken?= <info@marc-hoersken.de>
Subject: Re: [PATCH] .gitignore: Ignore files like src/libssh2_config.h.in~
Date: Wed, 20 Nov 2013 14:27:34 +0100
User-Agent: KMail/1.12.4 (Linux/2.6.32-428.el6.x86_64; KDE/4.3.4; x86_64; ; )
References: <528A3457.8090708@marc-hoersken.de>
 <528A44A5.9060403@marc-hoersken.de> <201311181807.06525.kdudka@redhat.com>
In-Reply-To: <201311181807.06525.kdudka@redhat.com>
MIME-Version: 1.0
Message-Id: <201311201427.34798.kdudka@redhat.com>
X-Scanned-By: MIMEDefang 2.68 on 10.5.11.22
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id
 rAKDRtYF023724
Cc: libssh2-devel@cool.haxx.se
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="iso-8859-1"
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>
Content-Transfer-Encoding: 8bit
X-MIME-Autoconverted: from quoted-printable to 8bit by giant.haxx.se id rAKDRvhh023735

On Monday 18 November 2013 18:07:06 Kamil Dudka wrote:
> On Monday 18 November 2013 17:47:33 Marc Hörsken wrote:
> > Am 18.11.2013 17:44, schrieb Kamil Dudka:
> > > Then it indeed makes sense to ignore them. Which files exactly were
> > > created? Kamil
> >
> > Just the following:
> >     src/libssh2_config.h.in~
> 
> This one is created by autoheader.  I am able to reproduce it locally.
> 
> > Since other projects (e.g. curl) also use the *~ pattern to ignore such
> > files, I thought it might be a good idea to use that pattern here, too.
> 
> Yes, I agree on that.

I have pushed it:

http://git.libssh2.org/?p=libssh2.git;a=commitdiff;h=d808080d

Thanks for the patch!

Kamil

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Thu Nov 21 02:04:05 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAL13iP0019753;
	Thu, 21 Nov 2013 02:04:00 +0100
Received: from earth.stuge.se (earth.stuge.se [212.116.89.126])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rAL13gjw019710
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Thu, 21 Nov 2013 02:03:42 +0100
Received: (qmail 19093 invoked from network); 21 Nov 2013 01:02:42 -0000
Received: from unknown (HELO earth.stuge.se) (127.0.0.1)
 by localhost with SMTP; 21 Nov 2013 01:02:42 -0000
MIME-Version: 1.0
From: "libssh2 Trac" <trac@libssh2.stuge.se>
X-Trac-Version: 1.0dev
Precedence: bulk
Auto-Submitted: auto-generated
X-Mailer: Trac 1.0dev, by Edgewall Software
To: mark.mcpherson@emc.com, kdudka@redhat.com
X-Trac-Project: libssh2
Date: Thu, 21 Nov 2013 01:02:42 -0000
X-URL: https://trac.libssh2.org/
Subject: Re: [libssh2] #279: libssh2 core dumps with FIPS openssl libraries
X-Trac-Ticket-URL: https://trac.libssh2.org/ticket/279#comment:1
Message-ID: <066.d4a0fb54cddbb77d8d89ae7dae162db0@libssh2.stuge.se>
References: <051.76fa13c8313aee46e9ecea3375356f4a@libssh2.stuge.se>
X-Trac-Ticket-ID: 279
In-Reply-To: <051.76fa13c8313aee46e9ecea3375356f4a@libssh2.stuge.se>
X-MIME-Autoconverted: from base64 to 8bit by giant.haxx.se id rAL13gjw019710
Cc: libssh2-devel@cool.haxx.se
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Reply-To: trac@libssh2.stuge.se,
        libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

#279: libssh2 core dumps with FIPS openssl libraries
-----------------------------+--------------------------
  Reporter:  Mark_McPherson  |      Owner:  kdudka
      Type:  defect          |     Status:  accepted
  Priority:  high            |  Milestone:  1.4.3
 Component:  crypto          |    Version:  1.4.2
Resolution:                  |   Keywords:  FIPS OpenSSL
Blocked By:                  |     Blocks:
-----------------------------+--------------------------
Changes (by kdudka):

 * owner:   => kdudka
 * status:  new => accepted


Comment:

 Looks good to me.  Thanks for the patch!  Could you please send me (kdudka
 at redhat com) your name and e-mail so that I can commit the patch on your
 behalf?

-- 
Ticket URL: <https://trac.libssh2.org/ticket/279#comment:1>
libssh2 <https://trac.libssh2.org/>
C library for writing portable SSH2 clients

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Thu Nov 21 12:36:03 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rALBZeGt029149;
	Thu, 21 Nov 2013 12:35:58 +0100
Received: from earth.stuge.se (earth.stuge.se [212.116.89.126])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rALBZcRW029141
 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Thu, 21 Nov 2013 12:35:38 +0100
Received: (qmail 17929 invoked from network); 21 Nov 2013 11:34:37 -0000
Received: from unknown (HELO earth.stuge.se) (127.0.0.1)
 by localhost with SMTP; 21 Nov 2013 11:34:37 -0000
MIME-Version: 1.0
From: "libssh2 Trac" <trac@libssh2.stuge.se>
X-Trac-Version: 1.0dev
Precedence: bulk
Cc: libssh2-devel@cool.haxx.se
Auto-Submitted: auto-generated
X-Mailer: Trac 1.0dev, by Edgewall Software
X-Trac-Project: libssh2
Date: Thu, 21 Nov 2013 11:34:37 -0000
X-URL: https://trac.libssh2.org/
Subject: Re: [libssh2] #279: libssh2 core dumps with FIPS openssl libraries
X-Trac-Ticket-URL: https://trac.libssh2.org/ticket/279#comment:2
Message-ID: <066.6dba9e0fae33f5d9e8ffcadbad24c85c@libssh2.stuge.se>
References: <051.76fa13c8313aee46e9ecea3375356f4a@libssh2.stuge.se>
X-Trac-Ticket-ID: 279
In-Reply-To: <051.76fa13c8313aee46e9ecea3375356f4a@libssh2.stuge.se>
X-MIME-Autoconverted: from base64 to 8bit by giant.haxx.se id rALBZcRW029141
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Reply-To: trac@libssh2.stuge.se,
        libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

#279: libssh2 core dumps with FIPS openssl libraries
-----------------------------+--------------------------
  Reporter:  Mark_McPherson  |      Owner:  kdudka
      Type:  defect          |     Status:  closed
  Priority:  high            |  Milestone:  1.4.3
 Component:  crypto          |    Version:  1.4.2
Resolution:  fixed           |   Keywords:  FIPS OpenSSL
Blocked By:                  |     Blocks:
-----------------------------+--------------------------
Changes (by Mark_McPherson):

 * status:  accepted => closed
 * resolution:   => fixed


Comment:

 In [changeset:"61df22c4601cd806dcc190f1252a8fbf01e67f7b/libssh2"]:
 {{{
 #!CommitTicketReference repository="libssh2"
 revision="61df22c4601cd806dcc190f1252a8fbf01e67f7b"
 openssl: initialise the digest context before calling EVP_DigestInit()

 When using the OpenSSL libraries in FIPS mode, the function call
 EVP_DigestInit() is actually #defined to FIPS_digestinit().
 Unfortunately wheres EVP_DigestInit() initialises the context and then
 calls EVP_DigestInit_ex(), this function assumes that the context has
 been pre-initialised and crashes when it isn't.

 Bug: https://trac.libssh2.org/ticket/279

 Fixes #279
 }}}

-- 
Ticket URL: <https://trac.libssh2.org/ticket/279#comment:2>
libssh2 <https://trac.libssh2.org/>
C library for writing portable SSH2 clients

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

From libssh2-devel-bounces@cool.haxx.se  Wed Nov 27 19:20:11 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rARIJYd8024199;
	Wed, 27 Nov 2013 19:20:00 +0100
Received: from mail-vb0-x241.google.com (mail-vb0-x241.google.com
 [IPv6:2607:f8b0:400c:c02::241])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rARIJW4I024009
 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Wed, 27 Nov 2013 19:19:33 +0100
Received: by mail-vb0-f65.google.com with SMTP id f12so806057vbg.8
 for <libssh2-devel@cool.haxx.se>; Wed, 27 Nov 2013 10:19:28 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=mime-version:date:message-id:subject:from:to:content-type;
 bh=iWgCvVCkIExDLUswqoecLzy+L41KHXf1wqKDId2U8QM=;
 b=MW3COxqnKrIFnfNKB1GYInZZfaoAeBklBUufe0lTPqOdeIdKJpe1L2Rpa3RJd47NRw
 DlRuIZfAl6P1r989wGPGt6mat+uWWmO7ypkBYJsGTm3mjAzZOXdD4xMDw7Uvi0hZEqn3
 HTDT5TUahGnWqgmWM8FYTLDE2QuerxT3fdJGJXJA+uyCaPjw1g2RcxM82O4q7K5MHP9S
 gFrrCqiOjpKm2olLy30cZX9fejaNrbvW+HawO7hp9XPraor3K4OqFCJs3irE+b1FVoK1
 +dGNFaSoJHBz7jxmaAGyLFykl8Z0MUJ/Z6Opsg2moB8zn5KGkcsWguT0m3zIe8pBHOen
 XIbA==
MIME-Version: 1.0
X-Received: by 10.52.121.16 with SMTP id lg16mr205722vdb.68.1385576368539;
 Wed, 27 Nov 2013 10:19:28 -0800 (PST)
Received: by 10.220.179.198 with HTTP; Wed, 27 Nov 2013 10:19:28 -0800 (PST)
Date: Wed, 27 Nov 2013 19:19:28 +0100
Message-ID: <CAOP4-92OoU2=N5rfmOA44rsa9LUpiHcQYOeYpCvoNDGbsfBNAw@mail.gmail.com>
Subject: Patch - datacount
From: =?ISO-8859-2?B?Smn47SCpZXbo7Ws=?= <jsevcik14@gmail.com>
To: libssh2-devel@cool.haxx.se
Content-Type: multipart/mixed; boundary=089e013a0a7441a2ef04ec2ca3b0
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

--089e013a0a7441a2ef04ec2ca3b0
Content-Type: multipart/alternative; boundary=089e013a0a7441a2ea04ec2ca3ae

--089e013a0a7441a2ea04ec2ca3ae
Content-Type: text/plain; charset=ISO-8859-1

Hello,
For monitoring of the total count of transferred data during the connection
tto the server, we created patch that added two functions:
libssh2_session_recv_data(LIBSSH2_SESSION *session) and
libssh2_session_recv_data(LIBSSH2_SESSION *session).
In this patch was added to session structure two counters (datatype long
long)
Incrementation of these counters is performed at
_libssh2_recv/_libssh2_send.
where was added next input parameter - current session.

My question: is this patch correct and applicable and could't it cause any
problems in future?

--089e013a0a7441a2ea04ec2ca3ae
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hello,=A0</div><div>For monitoring of the total count=
 of transferred data during the connection tto the server, we created patch=
 that added two functions:</div><div>libssh2_session_recv_data(LIBSSH2_SESS=
ION *session) and libssh2_session_recv_data(LIBSSH2_SESSION *session).</div=
>
<div>In this patch was added to session structure two counters (datatype lo=
ng long)</div><div>Incrementation of these counters is performed at _libssh=
2_recv/_libssh2_send.</div><div>where was added next input parameter - curr=
ent session.</div>
<div><br></div><div>My question: is this patch correct and applicable and c=
ould&#39;t it cause any problems in future?</div></div>

--089e013a0a7441a2ea04ec2ca3ae--
--089e013a0a7441a2ef04ec2ca3b0
Content-Type: text/x-patch; charset=US-ASCII; name="libssh2-1.4.3_datacount.patch"
Content-Disposition: attachment; filename="libssh2-1.4.3_datacount.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hoiwdxox0

ZGlmZiAtTmF1ciBsaWJzc2gyLTEuNC4zL2luY2x1ZGUvbGlic3NoMi5oIGxpYnNzaDItMS40LjNf
ZGF0YWNvdW50L2luY2x1ZGUvbGlic3NoMi5oCi0tLSBsaWJzc2gyLTEuNC4zL2luY2x1ZGUvbGli
c3NoMi5oCTIwMTMtMTEtMjAgMTA6MDQ6MDIuOTg1NzgwODE0ICswMTAwCisrKyBsaWJzc2gyLTEu
NC4zX2RhdGFjb3VudC9pbmNsdWRlL2xpYnNzaDIuaAkyMDEzLTExLTIyIDEzOjE1OjEwLjg3MDEz
MTkwNSArMDEwMApAQCAtMjQxLDEwICsyNDEsMTAgQEAKIC8qIEkvTyBjYWxsYmFja3MgKi8KICNk
ZWZpbmUgTElCU1NIMl9SRUNWX0ZVTkMobmFtZSkgIHNzaXplX3QgbmFtZShsaWJzc2gyX3NvY2tl
dF90IHNvY2tldCwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHZvaWQgKmJ1ZmZlciwgc2l6ZV90IGxlbmd0aCwgXAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBmbGFncywgdm9pZCAqKmFic3RyYWN0KQorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBmbGFncywgdm9p
ZCAqKmFic3RyYWN0LCBMSUJTU0gyX1NFU1NJT04gKnNlc3Npb24pCiAjZGVmaW5lIExJQlNTSDJf
U0VORF9GVU5DKG5hbWUpICBzc2l6ZV90IG5hbWUobGlic3NoMl9zb2NrZXRfdCBzb2NrZXQsIFwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lk
ICpidWZmZXIsIHNpemVfdCBsZW5ndGgsXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGludCBmbGFncywgdm9pZCAqKmFic3RyYWN0KQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBmbGFncywgdm9pZCAqKmFic3Ry
YWN0LCBMSUJTU0gyX1NFU1NJT04gKnNlc3Npb24pCiAKIC8qIGxpYnNzaDJfc2Vzc2lvbl9jYWxs
YmFja19zZXQoKSBjb25zdGFudHMgKi8KICNkZWZpbmUgTElCU1NIMl9DQUxMQkFDS19JR05PUkUg
ICAgICAgICAgICAgMApAQCAtMzI5LDkgKzMyOSw5IEBACiAjZGVmaW5lIExJQlNTSDJfSE9TVEtF
WV9IQVNIX1NIQTEgICAgICAgICAgICAgICAgICAgICAgICAgICAyCiAKIC8qIEhvc3RrZXkgVHlw
ZXMgKi8KLSNkZWZpbmUgTElCU1NIMl9IT1NUS0VZX1RZUEVfVU5LTk9XTiAgICAgICAgICAwCi0j
ZGVmaW5lIExJQlNTSDJfSE9TVEtFWV9UWVBFX1JTQSAgICAgICAgICAxCi0jZGVmaW5lIExJQlNT
SDJfSE9TVEtFWV9UWVBFX0RTUyAgICAgICAgICAyCisjZGVmaW5lIExJQlNTSDJfSE9TVEtFWV9U
WVBFX1VOS05PV04JCQkgICAgMAorI2RlZmluZSBMSUJTU0gyX0hPU1RLRVlfVFlQRV9SU0EJCQkg
ICAgMQorI2RlZmluZSBMSUJTU0gyX0hPU1RLRVlfVFlQRV9EU1MJCQkgICAgMgogCiAvKiBEaXNj
b25uZWN0IENvZGVzIChkZWZpbmVkIGJ5IFNTSCBwcm90b2NvbCkgKi8KICNkZWZpbmUgU1NIX0RJ
U0NPTk5FQ1RfSE9TVF9OT1RfQUxMT1dFRF9UT19DT05ORUNUICAgICAgICAgIDEKQEAgLTExNTks
NiArMTE1OSwxMiBAQAogTElCU1NIMl9BUEkgaW50IGxpYnNzaDJfc2VuZCAoTElCU1NIMl9TRVNT
SU9OICpzZXNzaW9uLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu
dCAqc2Vjb25kc190b19uZXh0KTsKIAorTElCU1NIMl9BUEkgbG9uZyBsb25nIAorbGlic3NoMl9z
ZXNzaW9uX3JlY3ZfZGF0YShMSUJTU0gyX1NFU1NJT04gKnNlc3Npb24pOworCitMSUJTU0gyX0FQ
SSBsb25nIGxvbmcKK2xpYnNzaDJfc2Vzc2lvbl9zZW5kX2RhdGEoTElCU1NIMl9TRVNTSU9OICpz
ZXNzaW9uKTsKKwogLyogTk9URSBOT1RFIE5PVEUKICAgIGxpYnNzaDJfdHJhY2UoKSBoYXMgbm8g
ZnVuY3Rpb24gaW4gYnVpbGRzIHRoYXQgYXJlbid0IGJ1aWx0IHdpdGggZGVidWcKICAgIGVuYWJs
ZWQKZGlmZiAtTmF1ciBsaWJzc2gyLTEuNC4zL3NyYy9saWJzc2gyX3ByaXYuaCBsaWJzc2gyLTEu
NC4zX2RhdGFjb3VudC9zcmMvbGlic3NoMl9wcml2LmgKLS0tIGxpYnNzaDItMS40LjMvc3JjL2xp
YnNzaDJfcHJpdi5oCTIwMTMtMTEtMTQgMTA6MTU6MjQuMDAwMDAwMDAwICswMTAwCisrKyBsaWJz
c2gyLTEuNC4zX2RhdGFjb3VudC9zcmMvbGlic3NoMl9wcml2LmgJMjAxMy0xMS0yMiAxMzozNzoy
MS41NDM4NjA2OTcgKzAxMDAKQEAgLTE4NCw5ICsxODQsOSBAQAogICAgICAgICAgICAgICAgICAg
ICAgIChjaGFubmVsKSwgJihjaGFubmVsKS0+YWJzdHJhY3QpCiAKICNkZWZpbmUgTElCU1NIMl9T
RU5EX0ZEKHNlc3Npb24sIGZkLCBidWZmZXIsIGxlbmd0aCwgZmxhZ3MpIFwKLSAgICBzZXNzaW9u
LT5zZW5kKGZkLCBidWZmZXIsIGxlbmd0aCwgZmxhZ3MsICZzZXNzaW9uLT5hYnN0cmFjdCkKKyAg
ICBzZXNzaW9uLT5zZW5kKGZkLCBidWZmZXIsIGxlbmd0aCwgZmxhZ3MsICZzZXNzaW9uLT5hYnN0
cmFjdCwgc2Vzc2lvbikKICNkZWZpbmUgTElCU1NIMl9SRUNWX0ZEKHNlc3Npb24sIGZkLCBidWZm
ZXIsIGxlbmd0aCwgZmxhZ3MpIFwKLSAgICBzZXNzaW9uLT5yZWN2KGZkLCBidWZmZXIsIGxlbmd0
aCwgZmxhZ3MsICZzZXNzaW9uLT5hYnN0cmFjdCkKKyAgICBzZXNzaW9uLT5yZWN2KGZkLCBidWZm
ZXIsIGxlbmd0aCwgZmxhZ3MsICZzZXNzaW9uLT5hYnN0cmFjdCwgc2Vzc2lvbikKIAogI2RlZmlu
ZSBMSUJTU0gyX1NFTkQoc2Vzc2lvbiwgYnVmZmVyLCBsZW5ndGgsIGZsYWdzKSAgXAogICAgIExJ
QlNTSDJfU0VORF9GRChzZXNzaW9uLCBzZXNzaW9uLT5zb2NrZXRfZmQsIGJ1ZmZlciwgbGVuZ3Ro
LCBmbGFncykKQEAgLTgxMCw2ICs4MTAsOCBAQAogICAgIGludCBrZWVwYWxpdmVfd2FudF9yZXBs
eTsKICAgICB0aW1lX3Qga2VlcGFsaXZlX2xhc3Rfc2VudDsKICAgICB1bnNpZ25lZCBpbnQga2Vl
cGFsaXZlX2NvdW50OworICAgIGxvbmcgbG9uZyByZWN2X2RhdGE7CisgICAgbG9uZyBsb25nIHNl
bmRfZGF0YTsKIH07CiAKIC8qIHNlc3Npb24uc3RhdGUgYml0cyAqLwpAQCAtMTAwMSw5ICsxMDAz
LDkgQEAKICNkZWZpbmUgU1NIX09QRU5fUkVTT1VSQ0VfU0hPUlRBR0UgICAgICAgICAgIDQKIAog
c3NpemVfdCBfbGlic3NoMl9yZWN2KGxpYnNzaDJfc29ja2V0X3Qgc29ja2V0LCB2b2lkICpidWZm
ZXIsCi0gICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGxlbmd0aCwgaW50IGZsYWdzLCB2b2lk
ICoqYWJzdHJhY3QpOworICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBsZW5ndGgsIGludCBm
bGFncywgdm9pZCAqKmFic3RyYWN0LCBMSUJTU0gyX1NFU1NJT04gKnNlc3Npb24pOwogc3NpemVf
dCBfbGlic3NoMl9zZW5kKGxpYnNzaDJfc29ja2V0X3Qgc29ja2V0LCBjb25zdCB2b2lkICpidWZm
ZXIsCi0gICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGxlbmd0aCwgaW50IGZsYWdzLCB2b2lk
ICoqYWJzdHJhY3QpOworICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBsZW5ndGgsIGludCBm
bGFncywgdm9pZCAqKmFic3RyYWN0LCBMSUJTU0gyX1NFU1NJT04gKnNlc3Npb24pOwogCiAjZGVm
aW5lIExJQlNTSDJfUkVBRF9USU1FT1VUIDYwIC8qIGdlbmVyaWMgdGltZW91dCBpbiBzZWNvbmRz
IHVzZWQgd2hlbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YWl0aW5nIGZv
ciBtb3JlIGRhdGEgdG8gYXJyaXZlICovCmRpZmYgLU5hdXIgbGlic3NoMi0xLjQuMy9zcmMvbWlz
Yy5jIGxpYnNzaDItMS40LjNfZGF0YWNvdW50L3NyYy9taXNjLmMKLS0tIGxpYnNzaDItMS40LjMv
c3JjL21pc2MuYwkyMDExLTA4LTI1IDE5OjU5OjQ3LjAwMDAwMDAwMCArMDIwMAorKysgbGlic3No
Mi0xLjQuM19kYXRhY291bnQvc3JjL21pc2MuYwkyMDEzLTExLTIyIDExOjI1OjM5LjAwMDAwMDAw
MCArMDEwMApAQCAtOTQsNyArOTQsNyBAQAogICogUmVwbGFjZW1lbnQgZm9yIHRoZSBzdGFuZGFy
ZCByZWN2LCByZXR1cm4gLWVycm5vIG9uIGZhaWx1cmUuCiAgKi8KIHNzaXplX3QKLV9saWJzc2gy
X3JlY3YobGlic3NoMl9zb2NrZXRfdCBzb2NrLCB2b2lkICpidWZmZXIsIHNpemVfdCBsZW5ndGgs
IGludCBmbGFncywgdm9pZCAqKmFic3RyYWN0KQorX2xpYnNzaDJfcmVjdihsaWJzc2gyX3NvY2tl
dF90IHNvY2ssIHZvaWQgKmJ1ZmZlciwgc2l6ZV90IGxlbmd0aCwgaW50IGZsYWdzLCB2b2lkICoq
YWJzdHJhY3QsIExJQlNTSDJfU0VTU0lPTiAqc2Vzc2lvbikKIHsKICAgICBzc2l6ZV90IHJjID0g
cmVjdihzb2NrLCBidWZmZXIsIGxlbmd0aCwgZmxhZ3MpOwogI2lmZGVmIFdJTjMyCkBAIC0xMTcs
NiArMTE3LDcgQEAKICAgICAgICAgICAgIHJldHVybiAtZXJybm87CiAgICAgfQogI2VuZGlmCisg
ICAgc2Vzc2lvbi0+cmVjdl9kYXRhICs9IHJjOwogICAgIHJldHVybiByYzsKIH0KIApAQCAtMTI2
LDcgKzEyNyw3IEBACiAgKi8KIHNzaXplX3QKIF9saWJzc2gyX3NlbmQobGlic3NoMl9zb2NrZXRf
dCBzb2NrLCBjb25zdCB2b2lkICpidWZmZXIsIHNpemVfdCBsZW5ndGgsCi0gICAgICAgICAgICAg
IGludCBmbGFncywgdm9pZCAqKmFic3RyYWN0KQorICAgICAgICAgICAgICBpbnQgZmxhZ3MsIHZv
aWQgKiphYnN0cmFjdCwgTElCU1NIMl9TRVNTSU9OICpzZXNzaW9uKQogewogICAgIHNzaXplX3Qg
cmMgPSBzZW5kKHNvY2ssIGJ1ZmZlciwgbGVuZ3RoLCBmbGFncyk7CiAjaWZkZWYgV0lOMzIKQEAg
LTE0Myw2ICsxNDQsNyBAQAogICAgIGlmIChyYyA8IDAgKQogICAgICAgICByZXR1cm4gLWVycm5v
OwogI2VuZGlmCisgICAgc2Vzc2lvbi0+c2VuZF9kYXRhICs9IHJjOwogICAgIHJldHVybiByYzsK
IH0KIApkaWZmIC1OYXVyIGxpYnNzaDItMS40LjMvc3JjL3Nlc3Npb24uYyBsaWJzc2gyLTEuNC4z
X2RhdGFjb3VudC9zcmMvc2Vzc2lvbi5jCi0tLSBsaWJzc2gyLTEuNC4zL3NyYy9zZXNzaW9uLmMJ
MjAxMi0wNy0yNSAwMTowMzoyNy4wMDAwMDAwMDAgKzAyMDAKKysrIGxpYnNzaDItMS40LjNfZGF0
YWNvdW50L3NyYy9zZXNzaW9uLmMJMjAxMy0xMS0yMiAxMToyODowMC4wMDAwMDAwMDAgKzAxMDAK
QEAgLTE3NDksMyArMTc0OSwyMCBAQAogCiAgICAgcmV0dXJuIChjb25zdCBjaGFyICopIHNlc3Np
b24tPnJlbW90ZS5iYW5uZXI7CiB9CisKK0xJQlNTSDJfQVBJIGxvbmcgbG9uZyAKK2xpYnNzaDJf
c2Vzc2lvbl9yZWN2X2RhdGEoTElCU1NIMl9TRVNTSU9OICpzZXNzaW9uKQoreworICAgIGxvbmcg
bG9uZyByZWN2OworICAgIHJlY3YgPSBzZXNzaW9uLT5yZWN2X2RhdGE7CisgICAgc2Vzc2lvbi0+
cmVjdl9kYXRhID0gMDsKKyAgICByZXR1cm4gcmVjdjsKK30KKworTElCU1NIMl9BUEkgbG9uZyBs
b25nCitsaWJzc2gyX3Nlc3Npb25fc2VuZF9kYXRhKExJQlNTSDJfU0VTU0lPTiAqc2Vzc2lvbil7
CisgICAgbG9uZyBsb25nIHNlbmQ7CisgICAgc2VuZCA9IHNlc3Npb24tPnNlbmRfZGF0YTsKKyAg
ICBzZXNzaW9uLT5zZW5kX2RhdGEgPSAwOworICAgIHJldHVybiBzZW5kOworfQpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKCg==
--089e013a0a7441a2ef04ec2ca3b0
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

--089e013a0a7441a2ef04ec2ca3b0--

From libssh2-devel-bounces@cool.haxx.se  Thu Nov 28 11:40:55 2013
Return-Path: <libssh2-devel-bounces@cool.haxx.se>
Received: from www.haxx.se (list@localhost.localdomain [127.0.0.1])
	by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rASAeT2w026586;
	Thu, 28 Nov 2013 11:40:50 +0100
Received: from mail-ve0-x242.google.com (mail-ve0-x242.google.com
 [IPv6:2607:f8b0:400c:c01::242])
 by giant.haxx.se (8.14.4/8.14.4/Debian-4.1) with ESMTP id rASAeQTX026544
 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT)
 for <libssh2-devel@cool.haxx.se>; Thu, 28 Nov 2013 11:40:26 +0100
Received: by mail-ve0-f194.google.com with SMTP id jw12so927799veb.1
 for <libssh2-devel@cool.haxx.se>; Thu, 28 Nov 2013 02:40:21 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=mime-version:date:message-id:subject:from:to:content-type;
 bh=ILbNRrPheBHr34P0WqaKI6n5I/kVAwSeHp37lgYXED0=;
 b=Ez12Owzp7+Dq9D8pnvV8xwN9F0L790gYFY9UPmVaii5LdXfHl0UyLOX8CG7AN+vJ2n
 Ux+W3pEo+ptqmjjcqWwCFyqcVlst2Odm5mTep+ynJxIwc2myzqmbUehLpXP/5p/KNQMJ
 rzHg6F9h5lCWi8EAIJwIoC3/sS8XWXywOfM2moTZyrBMdy6yzFX8sYIoQ9nSCqg07uMC
 +rjXhtKXoBd1r77C8/pCF0heHpq4gSi2KDqOVXew1Va8uRtH25sV8Gq7oTKxW2RcSuuq
 iyOXHO+o7xgrHOulDwSz/fn+imU7I3WNTwRbou6aOdnPQyDAYpoEGMRBgLpL2qWGfkF7
 OzkA==
MIME-Version: 1.0
X-Received: by 10.58.100.244 with SMTP id fb20mr37435266veb.6.1385635221496;
 Thu, 28 Nov 2013 02:40:21 -0800 (PST)
Received: by 10.220.114.210 with HTTP; Thu, 28 Nov 2013 02:40:21 -0800 (PST)
Date: Thu, 28 Nov 2013 11:40:21 +0100
Message-ID: <CAOP4-936TNhoE6PWPpk6WQW4dEJHDgeVhuSXtVd3y93Rq-RzCg@mail.gmail.com>
Subject: Patch - keepalive packet
From: =?ISO-8859-2?B?Smn47SCpZXbo7Ws=?= <jsevcik14@gmail.com>
To: libssh2-devel@cool.haxx.se
Content-Type: multipart/mixed; boundary=089e013a27082a7b2604ec3a570b
X-BeenThere: libssh2-devel@cool.haxx.se
X-Mailman-Version: 2.1.16rc2
Precedence: list
Reply-To: libssh2 development <libssh2-devel@cool.haxx.se>
List-Id: libssh2 development <libssh2-devel.cool.haxx.se>
List-Unsubscribe: <http://cool.haxx.se/cgi-bin/mailman/options/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=unsubscribe>
List-Archive: <http://cool.haxx.se/pipermail/libssh2-devel/>
List-Post: <mailto:libssh2-devel@cool.haxx.se>
List-Help: <mailto:libssh2-devel-request@cool.haxx.se?subject=help>
List-Subscribe: <http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel>, 
 <mailto:libssh2-devel-request@cool.haxx.se?subject=subscribe>
Errors-To: libssh2-devel-bounces@cool.haxx.se
Sender: "libssh2-devel" <libssh2-devel-bounces@cool.haxx.se>

--089e013a27082a7b2604ec3a570b
Content-Type: multipart/alternative; boundary=089e013a27082a7b2004ec3a5709

--089e013a27082a7b2004ec3a5709
Content-Type: text/plain; charset=ISO-8859-1

Hello againg!
After various problems with sending and receiving keepalive in nonblocking
state(typically: - send keepalive to server through
 libssh2_keepalive_send() function and server reply OR server send
keepalive.In both cases, the event is triggered (through epoll()) and we
must handle this event.) we've created another patch that added
libssh2_check_keepalive(LIBSSH2_SESSION * session) function and adds new
parameter to LIBSSH_SESSION - keepalive_count for storing count of received
keepalives.
Problem occurs when session receives keepalive reply. This packet is
decoded as SSH_MSG_REQUEST_FAILURE but in packet type switch in packet.c
file isn't handled as this type. to resolve this, we've added new case to
handle this packet which deletes and set packAdd_state to
libssh2_NB_state_idle.
I'm not sure if this last change may affect next session state. My question
is the same, as in my previous query with datacount patch, is this patch
correct and applicable?

--089e013a27082a7b2004ec3a5709
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Hello againg!</div><div>After various problems with s=
ending and receiving keepalive in nonblocking state(typically: - send keepa=
live to server through =A0libssh2_keepalive_send() function and server repl=
y OR server send keepalive.In both cases, the event is triggered (through e=
poll()) and we must handle this event.) we&#39;ve created another patch tha=
t added libssh2_check_keepalive(LIBSSH2_SESSION * session) function and add=
s new parameter to LIBSSH_SESSION - keepalive_count for storing count of re=
ceived keepalives.</div>
<div>Problem occurs when session receives keepalive reply. This packet is d=
ecoded as SSH_MSG_REQUEST_FAILURE but in packet type switch in packet.c fil=
e isn&#39;t handled as this type. to resolve this, we&#39;ve added new case=
 to handle this packet which deletes and set packAdd_state to libssh2_NB_st=
ate_idle.</div>
<div>I&#39;m not sure if this last change may affect next session state. My=
 question is the same, as in my previous query with datacount patch, is thi=
s patch correct and applicable?</div></div>

--089e013a27082a7b2004ec3a5709--
--089e013a27082a7b2604ec3a570b
Content-Type: text/x-patch; charset=US-ASCII; name="libssh2-1.4.3_keepalive.patch"
Content-Disposition: attachment; filename="libssh2-1.4.3_keepalive.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hojvf6zy0

ZGlmZiAtTmF1ciBsaWJzc2gyLTEuNC4zL2luY2x1ZGUvbGlic3NoMi5oIGxpYnNzaDItMS40LjNf
a2VlcGFsaXZlL2luY2x1ZGUvbGlic3NoMi5oCi0tLSBsaWJzc2gyLTEuNC4zL2luY2x1ZGUvbGli
c3NoMi5oCTIwMTItMTEtMjcgMjI6NDU6MjEuMDAwMDAwMDAwICswMTAwCisrKyBsaWJzc2gyLTEu
NC4zX2tlZXBhbGl2ZS9pbmNsdWRlL2xpYnNzaDIuaAkyMDEzLTExLTIwIDEwOjA0OjAyLjk4NTc4
MDgxNCArMDEwMApAQCAtMzI5LDkgKzMyOSw5IEBACiAjZGVmaW5lIExJQlNTSDJfSE9TVEtFWV9I
QVNIX1NIQTEgICAgICAgICAgICAgICAgICAgICAgICAgICAyCiAKIC8qIEhvc3RrZXkgVHlwZXMg
Ki8KLSNkZWZpbmUgTElCU1NIMl9IT1NUS0VZX1RZUEVfVU5LTk9XTgkJCSAgICAwCi0jZGVmaW5l
IExJQlNTSDJfSE9TVEtFWV9UWVBFX1JTQQkJCSAgICAxCi0jZGVmaW5lIExJQlNTSDJfSE9TVEtF
WV9UWVBFX0RTUwkJCSAgICAyCisjZGVmaW5lIExJQlNTSDJfSE9TVEtFWV9UWVBFX1VOS05PV04g
ICAgICAgICAgMAorI2RlZmluZSBMSUJTU0gyX0hPU1RLRVlfVFlQRV9SU0EgICAgICAgICAgMQor
I2RlZmluZSBMSUJTU0gyX0hPU1RLRVlfVFlQRV9EU1MgICAgICAgICAgMgogCiAvKiBEaXNjb25u
ZWN0IENvZGVzIChkZWZpbmVkIGJ5IFNTSCBwcm90b2NvbCkgKi8KICNkZWZpbmUgU1NIX0RJU0NP
Tk5FQ1RfSE9TVF9OT1RfQUxMT1dFRF9UT19DT05ORUNUICAgICAgICAgIDEKQEAgLTExMjgsNiAr
MTEyOCw4IEBACiBMSUJTU0gyX0FQSSB2b2lkCiBsaWJzc2gyX2FnZW50X2ZyZWUoTElCU1NIMl9B
R0VOVCAqYWdlbnQpOwogCitMSUJTU0gyX0FQSSBpbnQKK2xpYnNzaDJfY2hlY2tfa2VlcGFsaXZl
KExJQlNTSDJfU0VTU0lPTiAqIHNlc3Npb24pOwogCiAvKgogICogbGlic3NoMl9rZWVwYWxpdmVf
Y29uZmlnKCkKZGlmZiAtTmF1ciBsaWJzc2gyLTEuNC4zL3NyYy9rZWVwYWxpdmUuYyBsaWJzc2gy
LTEuNC4zX2tlZXBhbGl2ZS9zcmMva2VlcGFsaXZlLmMKLS0tIGxpYnNzaDItMS40LjMvc3JjL2tl
ZXBhbGl2ZS5jCTIwMTAtMTItMDUgMDA6MTc6MTQuMDAwMDAwMDAwICswMTAwCisrKyBsaWJzc2gy
LTEuNC4zX2tlZXBhbGl2ZS9zcmMva2VlcGFsaXZlLmMJMjAxMy0xMS0xNCAxMDo1MjoxOC4wMDAw
MDAwMDAgKzAxMDAKQEAgLTk2LDMgKzk2LDIyIEBACiAKICAgICByZXR1cm4gMDsKIH0KKworTElC
U1NIMl9BUEkgaW50CitsaWJzc2gyX2NoZWNrX2tlZXBhbGl2ZShMSUJTU0gyX1NFU1NJT04gKiBz
ZXNzaW9uKQoreworICBpbnQgcmMgPSAxOworICAKKyAgd2hpbGUgKHJjID4gMCkgeworICAgICAg
ICByYyA9IF9saWJzc2gyX3RyYW5zcG9ydF9yZWFkKHNlc3Npb24pOworICB9CisKKyAgaWYgKHJj
IDwgMCAmJiAocmMgIT0gTElCU1NIMl9FUlJPUl9FQUdBSU4pKXsKKyAgICAgIHJldHVybiBfbGli
c3NoMl9lcnJvcihzZXNzaW9uLCByYywgInRyYW5zcG9ydCByZWFkIik7CisgICAgICAgIHJldHVy
biByYzsKKyAgfQorCisgIHJjID0gc2Vzc2lvbi0+a2VlcGFsaXZlX2NvdW50OworICBzZXNzaW9u
LT5rZWVwYWxpdmVfY291bnQgPSAwOworICByZXR1cm4gcmM7Cit9CmRpZmYgLU5hdXIgbGlic3No
Mi0xLjQuMy9zcmMvbGlic3NoMl9wcml2LmggbGlic3NoMi0xLjQuM19rZWVwYWxpdmUvc3JjL2xp
YnNzaDJfcHJpdi5oCi0tLSBsaWJzc2gyLTEuNC4zL3NyYy9saWJzc2gyX3ByaXYuaAkyMDEyLTEw
LTA4IDE0OjU0OjMwLjAwMDAwMDAwMCArMDIwMAorKysgbGlic3NoMi0xLjQuM19rZWVwYWxpdmUv
c3JjL2xpYnNzaDJfcHJpdi5oCTIwMTMtMTEtMTQgMTA6MTU6MjQuMDAwMDAwMDAwICswMTAwCkBA
IC04MDksNiArODA5LDcgQEAKICAgICBpbnQga2VlcGFsaXZlX2ludGVydmFsOwogICAgIGludCBr
ZWVwYWxpdmVfd2FudF9yZXBseTsKICAgICB0aW1lX3Qga2VlcGFsaXZlX2xhc3Rfc2VudDsKKyAg
ICB1bnNpZ25lZCBpbnQga2VlcGFsaXZlX2NvdW50OwogfTsKIAogLyogc2Vzc2lvbi5zdGF0ZSBi
aXRzICovCmRpZmYgLU5hdXIgbGlic3NoMi0xLjQuMy9zcmMvcGFja2V0LmMgbGlic3NoMi0xLjQu
M19rZWVwYWxpdmUvc3JjL3BhY2tldC5jCi0tLSBsaWJzc2gyLTEuNC4zL3NyYy9wYWNrZXQuYwky
MDEyLTA1LTE0IDIyOjQyOjI5LjAwMDAwMDAwMCArMDIwMAorKysgbGlic3NoMi0xLjQuM19rZWVw
YWxpdmUvc3JjL3BhY2tldC5jCTIwMTMtMTEtMjAgMDk6NTQ6NDkuOTIxODQ2NzE3ICswMTAwCkBA
IC01NjgsNiArNTY4LDE1IEBACiAgICAgICAgICAgICAgIC4uLi4gICAgICByZXF1ZXN0LXNwZWNp
ZmljIGRhdGEgZm9sbG93cwogICAgICAgICAgICAgKi8KIAorICAgICAgICBjYXNlIFNTSF9NU0df
UkVRVUVTVF9GQUlMVVJFOgorICAgICAgICAgICAgX2xpYnNzaDJfZGVidWcoc2Vzc2lvbiwKKyAg
ICAgICAgICAgICAgICBMSUJTU0gyX1RSQUNFX0NPTk4sCisgICAgICAgICAgICAgICAgIlJlY2Vp
dmVkIGtlZXBhbGl2ZSByZXNwb25zZSIpOworCisgICAgICAgICAgICBMSUJTU0gyX0ZSRUUoc2Vz
c2lvbiwgZGF0YSk7CisgICAgICAgICAgICBzZXNzaW9uLT5wYWNrQWRkX3N0YXRlID0gbGlic3No
Ml9OQl9zdGF0ZV9pZGxlOworICAgICAgICAgICAgcmV0dXJuIDA7CisKICAgICAgICAgY2FzZSBT
U0hfTVNHX0dMT0JBTF9SRVFVRVNUOgogICAgICAgICAgICAgaWYoZGF0YWxlbiA+PSA1KSB7CiAg
ICAgICAgICAgICAgICAgdWludDMyX3QgbGVuID0wOwpAQCAtNTc5LDE0ICs1ODgsMzAgQEAKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCU1NIMl9UUkFDRV9DT05OLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmVjZWl2ZWQgZ2xvYmFsIHJlcXVlc3Qg
dHlwZSAlLipzICh3ciAlWCkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBs
ZW4sIGRhdGEgKyA1LCB3YW50X3JlcGx5KTsKLSAgICAgICAgICAgICAgICB9CisJCSAgICAgICAg
fQorICAgICAgICAgICAgICAgIGlmICh3YW50X3JlcGx5KSB7CisgICAgICAgICAgICAgICAgICAg
IGludCByZXQgPSAtMTsKKyAgICAgICAgICAgICAgICAgICAgY2hhciAqa2VlcF9tZXNzYWdlID0g
ImtlZXBhbGl2ZUAiOwogCisgICAgICAgICAgICAgICAgICAgIHJldCA9IG1lbWNtcCgoZGF0YSAr
IDUpLCBrZWVwX21lc3NhZ2UsIDEwKTsKKworICAgICAgICAgICAgICAgICAgICBpZihkYXRhbGVu
ID49IDE1KSB7CisgICAgICAgICAgICAgICAgICAgICAgICBpZihyZXQgPT0gMCl7CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgc2Vzc2lvbi0+a2VlcGFsaXZlX2NvdW50Kys7CisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgX2xpYnNzaDJfZGVidWcoc2Vzc2lvbiwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCU1NIMl9UUkFDRV9DT05OLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiUmVjZWl2ZWQga2VlcGFs
aXZlIHBhY2tldCIpOworICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ICAgICB9CiAKLSAgICAgICAgICAgICAgICBpZiAod2FudF9yZXBseSkgewogICAgICAgICAgICAg
ICAgICAgICB1bnNpZ25lZCBjaGFyIHBhY2tldCA9IFNTSF9NU0dfUkVRVUVTVF9GQUlMVVJFOwot
ICAgICAgICAgICAgICAgICAgbGlic3NoMl9wYWNrZXRfYWRkX2p1bXBfcG9pbnQ1OgorICAgICAg
ICAgICAgICAgICAgIGxpYnNzaDJfcGFja2V0X2FkZF9qdW1wX3BvaW50NToKICAgICAgICAgICAg
ICAgICAgICAgc2Vzc2lvbi0+cGFja0FkZF9zdGF0ZSA9IGxpYnNzaDJfTkJfc3RhdGVfanVtcDU7
CiAgICAgICAgICAgICAgICAgICAgIHJjID0gX2xpYnNzaDJfdHJhbnNwb3J0X3NlbmQoc2Vzc2lv
biwgJnBhY2tldCwgMSwgTlVMTCwgMCk7CisgICAgICAgICAgICAgICAgICAgIF9saWJzc2gyX2Rl
YnVnKHNlc3Npb24sCisgICAgICAgICAgICAgICAgICAgICAgICBMSUJTU0gyX1RSQUNFX0NPTk4s
CisgICAgICAgICAgICAgICAgICAgICAgICAiS0VFUEFMSVZFIFNFTkQgUkMgJWkiLCByYyk7CisK
ICAgICAgICAgICAgICAgICAgICAgaWYgKHJjID09IExJQlNTSDJfRVJST1JfRUFHQUlOKQogICAg
ICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJjOwogICAgICAgICAgICAgICAgIH0K
--089e013a27082a7b2604ec3a570b
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel

--089e013a27082a7b2604ec3a570b--

