From libssh2-devel-bounces@cool.haxx.se Thu Apr 1 01:28:29 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o2VNSEPn001770; Thu, 1 Apr 2010 01:28:26 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o2VNSC4D001766 for ; Thu, 1 Apr 2010 01:28:12 +0200 Received: (qmail 4870 invoked by uid 501); 31 Mar 2010 23:28:21 -0000 Message-ID: <20100331232821.4869.qmail@stuge.se> Date: Thu, 1 Apr 2010 01:28:21 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: Issues with using LibSSH2 Mail-Followup-To: libssh2-devel@cool.haxx.se References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Kalyan Polasi wrote: > Could you please suggest me the current working version Try this: http://josefsson.org/gnutls4win/libssh2-1.2.4.zip Also see the page http://josefsson.org/gnutls4win/ under "Using the GnuTLS DLL from your Visual Studio program" for more information about how you can use those binaries in your own programs. > for port-forwarding? The direct_tcpip.c example demonstrates how to do it. You can hopefully download that file and compile it, using Simon's instructions on the page linked above. > or can you help me with the simple example to connect to other > machine using Libssh2? Included in every release you can find multiple very simple examples that will show how you can use libssh2 to connect to a remote host. As an alternative to using the pre-built gnutls4win binaries, you could also download the libssh2-1.2.4 release and try to build the library binaries yourself, along with all the examples. That is more difficult, but does have the examples. > I was also not able to make use of libssh2_session_init(). Can you > please tell me why I does I am getting that linker error? If you are getting a linker error then your linker can not find some symbol you are using. None of the members in this group are experts with Visual Studio, so we can't help much. Basically you have to be the expert on that, so that you can configure your build environment correctly. When building libssh2 some MSVC project files should also be built - maybe those can help. //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 1 13:13:56 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o31BDdsf017867; Thu, 1 Apr 2010 13:13:53 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o31BDals017856 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 1 Apr 2010 13:13:36 +0200 Received: (qmail 6975 invoked from network); 1 Apr 2010 11:13:40 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 1 Apr 2010 11:13:40 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Thu, 01 Apr 2010 11:13:40 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #167: Unable to init SFTP session vs SSH-2.0-SSHD X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/167#comment:3 Message-ID: <049.360f7d348dd7ec639060f0b91dc92411@libssh2.stuge.se> References: <040.b3944a7034e0353dd801d2508d9c873d@libssh2.stuge.se> X-Trac-Ticket-ID: 167 In-Reply-To: <040.b3944a7034e0353dd801d2508d9c873d@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #167: Unable to init SFTP session vs SSH-2.0-SSHD --------------------+------------------------------------------------------- Reporter: ptjm | Owner: bagder Type: defect | Status: assigned Priority: normal | Milestone: Component: SFTP | Version: 1.2.5 Keywords: | Blocking: Blockedby: | --------------------+------------------------------------------------------- Comment(by bagder): LIBSSH2_ERROR_EAGAIN is -37, on all systems. Don't confuse that with the errno value EAGAIN. Right, so there was no more window left to send data to so it stopped and returned a value less than 9, right? That only makes my comment about us having to fix sftp_init() more important. Doesn't it? -- Ticket URL: libssh2 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 Apr 1 20:24:49 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o31IOaKE017238; Thu, 1 Apr 2010 20:24:46 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o31IOYAM017196 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 1 Apr 2010 20:24:34 +0200 Received: (qmail 815 invoked from network); 1 Apr 2010 18:24:41 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 1 Apr 2010 18:24:41 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Thu, 01 Apr 2010 18:24:40 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #167: Unable to init SFTP session vs SSH-2.0-SSHD X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/167#comment:4 Message-ID: <049.cba94b04e33c692f23a054ea1559e51a@libssh2.stuge.se> References: <040.b3944a7034e0353dd801d2508d9c873d@libssh2.stuge.se> X-Trac-Ticket-ID: 167 In-Reply-To: <040.b3944a7034e0353dd801d2508d9c873d@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #167: Unable to init SFTP session vs SSH-2.0-SSHD --------------------+------------------------------------------------------- Reporter: ptjm | Owner: bagder Type: defect | Status: assigned Priority: normal | Milestone: Component: SFTP | Version: 1.2.5 Keywords: | Blocking: Blockedby: | --------------------+------------------------------------------------------- Comment(by ptjm): Thanks. I applied that patch to SSH-2.0-libssh2_1.2.5-20100401 and it appears to have fixed the problem. At least, sftpdir works correctly vs this server. -- Ticket URL: libssh2 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 Apr 1 20:27:05 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o31IR3UY021321; Thu, 1 Apr 2010 20:27:05 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o31IR1iJ021235 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 1 Apr 2010 20:27:01 +0200 Received: (qmail 978 invoked from network); 1 Apr 2010 18:27:08 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 1 Apr 2010 18:27:08 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Thu, 01 Apr 2010 18:27:08 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #167: Unable to init SFTP session vs SSH-2.0-SSHD X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/167#comment:5 Message-ID: <049.de5d84ace32fd8ae265c544b6d1b5a69@libssh2.stuge.se> References: <040.b3944a7034e0353dd801d2508d9c873d@libssh2.stuge.se> X-Trac-Ticket-ID: 167 In-Reply-To: <040.b3944a7034e0353dd801d2508d9c873d@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #167: Unable to init SFTP session vs SSH-2.0-SSHD ---------------------+------------------------------------------------------ Reporter: ptjm | Owner: bagder Type: defect | Status: closed Priority: normal | Milestone: 1.2.5 Component: SFTP | Version: 1.2.5 Resolution: fixed | Keywords: Blocking: | Blockedby: ---------------------+------------------------------------------------------ Changes (by bagder): * status: assigned => closed * resolution: => fixed * milestone: => 1.2.5 Comment: Great! This fix is now pushed to the git repo and I'm closing this report. Thanks for your help! -- Ticket URL: libssh2 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 Sat Apr 3 01:01:43 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o32N1UIG008269; Sat, 3 Apr 2010 01:01:40 +0200 Received: from mail-fx0-f225.google.com (mail-fx0-f225.google.com [209.85.220.225]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o32N1TZ8008076 for ; Sat, 3 Apr 2010 01:01:29 +0200 Received: by fxm25 with SMTP id 25so799968fxm.3 for ; Fri, 02 Apr 2010 16:01:32 -0700 (PDT) MIME-Version: 1.0 Received: by 10.239.161.16 with HTTP; Fri, 2 Apr 2010 16:01:32 -0700 (PDT) Date: Fri, 2 Apr 2010 19:01:32 -0400 Received: by 10.239.185.8 with SMTP id a8mr235867hbh.11.1270249292165; Fri, 02 Apr 2010 16:01:32 -0700 (PDT) Message-ID: Subject: small patch to userauth.c From: Jose Baars To: libssh2-devel@cool.haxx.se Content-Type: multipart/mixed; boundary=001485f79622d5f3db048348f54e X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --001485f79622d5f3db048348f54e Content-Type: multipart/alternative; boundary=001485f79622d5f3d1048348f54c --001485f79622d5f3d1048348f54c Content-Type: text/plain; charset=ISO-8859-1 Hi, I got several compiler warnings when compiling userauth.c caused by missing or incorrect casts. I have added a patch that solves these. Regards, Jose --001485f79622d5f3d1048348f54c Content-Type: text/html; charset=ISO-8859-1 Hi,

I got several compiler warnings when compiling userauth.c
caused by missing or incorrect casts.

I have added a patch that solves these.

Regards,
Jose



--001485f79622d5f3d1048348f54c-- --001485f79622d5f3db048348f54e Content-Type: application/octet-stream; name="0001-Added-several-casts-to-char-when-assigning-a-value-t.patch" Content-Disposition: attachment; filename="0001-Added-several-casts-to-char-when-assigning-a-value-t.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g7jygbxc0 RnJvbSAxOWMzY2QwMjE5ODgxN2IxM2Y5OTkwZjZmZDliYjZmMTA3ZTE5YmQ2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb3NlIEJhYXJzIDxwZXV0QGRvcmEubG9jYWxkb21haW4+CkRh dGU6IEZyaSwgMiBBcHIgMjAxMCAxNzo1NDo1MCAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIEFkZGVk IHNldmVyYWwgY2FzdHMgdG8gY2hhciAqIHdoZW4gYXNzaWduaW5nIGEgdmFsdWUgdG8gZGF0YXZl Yy5pb3ZfYmFzZQoKLS0tCiBzcmMvdXNlcmF1dGguYyB8ICAgMTAgKysrKystLS0tLQogMSBmaWxl cyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjL3VzZXJhdXRoLmMgYi9zcmMvdXNlcmF1dGguYwppbmRleCA5OTNiYzAwLi4yNjljODNmIDEw MDY0NAotLS0gYS9zcmMvdXNlcmF1dGguYworKysgYi9zcmMvdXNlcmF1dGguYwpAQCAtNjQ5LDgg KzY0OSw4IEBAIHNpZ25fZnJvbWZpbGUoTElCU1NIMl9TRVNTSU9OICpzZXNzaW9uLCB1bnNpZ25l ZCBjaGFyICoqc2lnLCBzaXplX3QgKnNpZ19sZW4sCiAgICAgaWYocmMpCiAgICAgICAgIHJldHVy biByYzsKIAotICAgIGRhdGF2ZWMuaW92X2Jhc2UgPSAodW5zaWduZWQgY2hhciAqKWRhdGE7Ci0g ICAgZGF0YXZlYy5pb3ZfbGVuID0gZGF0YV9sZW47CisgICAgZGF0YXZlYy5pb3ZfYmFzZSA9IChj aGFyICopZGF0YTsKKyAgICBkYXRhdmVjLmlvdl9sZW4gID0gZGF0YV9sZW47CiAKICAgICBpZiAo cHJpdmtleW9iai0+c2lnbnYoc2Vzc2lvbiwgc2lnLCAodW5zaWduZWQgbG9uZyAqKXNpZ19sZW4s IDEsICZkYXRhdmVjLAogICAgICAgICAgICAgICAgICAgICAgICAgICAmaG9zdGtleV9hYnN0cmFj dCkpIHsKQEAgLTc4NiwxMSArNzg2LDExIEBAIHVzZXJhdXRoX2hvc3RiYXNlZF9mcm9tZmlsZShM SUJTU0gyX1NFU1NJT04gKnNlc3Npb24sCiAgICAgICAgIH0KIAogICAgICAgICBfbGlic3NoMl9o dG9udTMyKGJ1Ziwgc2Vzc2lvbi0+c2Vzc2lvbl9pZF9sZW4pOwotICAgICAgICBkYXRhdmVjWzBd Lmlvdl9iYXNlID0gYnVmOworICAgICAgICBkYXRhdmVjWzBdLmlvdl9iYXNlID0gKGNoYXIgKili dWY7CiAgICAgICAgIGRhdGF2ZWNbMF0uaW92X2xlbiA9IDQ7Ci0gICAgICAgIGRhdGF2ZWNbMV0u aW92X2Jhc2UgPSBzZXNzaW9uLT5zZXNzaW9uX2lkOworICAgICAgICBkYXRhdmVjWzFdLmlvdl9i YXNlID0gKGNoYXIgKilzZXNzaW9uLT5zZXNzaW9uX2lkOwogICAgICAgICBkYXRhdmVjWzFdLmlv dl9sZW4gPSBzZXNzaW9uLT5zZXNzaW9uX2lkX2xlbjsKLSAgICAgICAgZGF0YXZlY1syXS5pb3Zf YmFzZSA9IHNlc3Npb24tPnVzZXJhdXRoX2hvc3RfcGFja2V0OworICAgICAgICBkYXRhdmVjWzJd Lmlvdl9iYXNlID0gKGNoYXIgKilzZXNzaW9uLT51c2VyYXV0aF9ob3N0X3BhY2tldDsKICAgICAg ICAgZGF0YXZlY1syXS5pb3ZfbGVuID0gc2Vzc2lvbi0+dXNlcmF1dGhfaG9zdF9wYWNrZXRfbGVu OwogCiAgICAgICAgIGlmIChwcml2a2V5b2JqLT5zaWdudihzZXNzaW9uLCAmc2lnLCAmc2lnX2xl biwgMywgZGF0YXZlYywgJmFic3RyYWN0KSkgewotLSAKMS42LjYuMQoK --001485f79622d5f3db048348f54e 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 --001485f79622d5f3db048348f54e-- From libssh2-devel-bounces@cool.haxx.se Sun Apr 4 23:35:15 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o34LYvFD019678; Sun, 4 Apr 2010 23:35:10 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o34LYtbU019673 for ; Sun, 4 Apr 2010 23:34:55 +0200 Date: Sun, 4 Apr 2010 23:34:55 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: small patch to userauth.c In-Reply-To: Message-ID: References: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Fri, 2 Apr 2010, Jose Baars wrote: > I got several compiler warnings when compiling userauth.c caused by missing > or incorrect casts. > > I have added a patch that solves these. Thanks, but the iov_base field within the struct iovec is said to be a 'void *' in POSIX and in my linux headers, so why not typecast to that? -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 5 20:25:42 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o35IPSvt013749; Mon, 5 Apr 2010 20:25:39 +0200 Received: from n9a.bullet.mail.mud.yahoo.com (n9a.bullet.mail.mud.yahoo.com [209.191.87.108]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o35IPP3p013548 for ; Mon, 5 Apr 2010 20:25:26 +0200 Received: from [68.142.200.224] by n9.bullet.mail.mud.yahoo.com with NNFMP; 05 Apr 2010 18:25:26 -0000 Received: from [68.142.201.253] by t5.bullet.mud.yahoo.com with NNFMP; 05 Apr 2010 18:25:26 -0000 Received: from [127.0.0.1] by omp414.mail.mud.yahoo.com with NNFMP; 05 Apr 2010 18:25:26 -0000 X-Yahoo-Newman-Id: 680050.36397.bm@omp414.mail.mud.yahoo.com Received: (qmail 49981 invoked from network); 5 Apr 2010 18:25:26 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com.hk; h=DKIM-Signature:Received:X-Yahoo-SMTP:X-YMail-OSG:X-Yahoo-Newman-Property:From:Content-Type:Content-Transfer-Encoding:Subject:Date:Message-Id:To:Mime-Version:X-Mailer; b=La/WAYLP9rhALlj+fSj4hPi+pcFi8Zxu4W/W23lDKX2eEKARhE5VmX7mbqTnSf6j55buOrlPwRe0n00oo9VRBF54XsBKyWVO/mC1FK0sBNGhDyHiJDdU7yapY2yPBMtIyR8xs/49BgM9jNter3PQxjkRQdiIrs5+cD8Jt2ivRd0= ; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com.hk; s=s1024; t=1270491926; bh=gEc9yftBPYk2J9HamO2PnKufVrfOjs7hMKIOIvEdALY=; h=Received:X-Yahoo-SMTP:X-YMail-OSG:X-Yahoo-Newman-Property:From:Content-Type:Content-Transfer-Encoding:Subject:Date:Message-Id:To:Mime-Version:X-Mailer; b=nQu8aePhIkNpxg39irkjVacX7dts5XAAQG0kDTs59tOg3XCxLMPpRG1dpmSy3t2OHp9ahuQ3no7GsLVLi8O/ewCCAISFXPf4Rd62XGy01ZsMHeBdrnVZAObUAifE7diNH9frmu/NJWygJS7ceB2UCfTXzso9phdu7ltuAU+FHaI= Received: from [192.168.1.3] (lillian28poon@219.77.233.222 with plain) by smtp124.plus.mail.sp1.yahoo.com with SMTP; 05 Apr 2010 11:25:25 -0700 PDT X-Yahoo-SMTP: 9FuLWjyswBDLiJ7boqOUclOwpAAiDuamVc8- X-YMail-OSG: Z0kbsj4VM1mcMq1d3vBVTXn8Ovapxi4bPrxhGSVJGEmtfG1 qodUY6N87OANyLH0PS6SE1lYd2VooMm5_UyGhmIHZUKp4PNTdFrrBu4l.c30 .joDBMyUI7HWQ1WBmNgI6OO4G7Um1DQ5ANB6ux4O.d2jHnokZJJE85qrWQQ5 q..yuy9EdXES_C9vU9kLjfkXiDt8kVgdONXnAbi4PByT3Y.Zdnfp55wIuMlK hqvC8RJNARBd6Y265VHLM2bXNNCBj588AQ72wrbWcO1BYcSWlP9jNzNDyPg4 yYbgEklFqmKc85qYyB2sYX907nS7oA.JNSpC1LohRHhQ- X-Yahoo-Newman-Property: ymail-3 From: Lillian Poon Subject: Issues on using libssh2_channel_direct_tcpip Date: Tue, 6 Apr 2010 02:25:23 +0800 Message-Id: To: libssh2-devel@cool.haxx.se Mime-Version: 1.0 (Apple Message framework v1078) X-Mailer: Apple Mail (2.1078) X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi Team, I have been using libssh2 v1.2 to implement a custom SSH client on MacOS 10.6.x and it works well. Recently I started to add SSH tunneling function by using libssh2_channel_direct_tcpip but saw frequent disconnection, and still got no luck after switching to v1.2.4. I then tested using the direct_tcpip sample code and observed similar situation. Basically, my test is establishing a tunnel between local port 9188 and port 9288 on the remote host which has an Apache proxy server listening to port 9288 -- by running the sample program "direct_tcpip x.x.x.x 127.0.0.1 9188 localhost 9288". Then I configure proxy setting on Firefox to use http proxy on localhost port 9188, expecting it to exchange data with the remote proxy server. It is seen that connection usually breaks after fetching a few pages and the error message "The server at localhost:9288 disconnected!" is shown. However, if I run openssh on Mac by "ssh -L 9188:localhost:9288 x.x.x.x" instead of the direct_tcpip binary, everything works perfectly fine. I am grateful if somebody may tell me if there are any ways to turn on debugging on Libssh2 to check where the problem lies. Any kind of instructions/advice will be highly appreciated. Thanks in advance. Regards, Lillian Poon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 5 20:35:46 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o35IZfqc019878; Mon, 5 Apr 2010 20:35:45 +0200 Received: from mail.gmx.net (mail.gmx.net [213.165.64.20]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o35IZedv019855 for ; Mon, 5 Apr 2010 20:35:40 +0200 Received: (qmail invoked by alias); 05 Apr 2010 18:35:41 -0000 Received: from xdsl-188-155-149-216.adslplus.ch (EHLO [192.168.1.65]) [188.155.149.216] by mail.gmx.net (mp060) with SMTP; 05 Apr 2010 20:35:41 +0200 X-Authenticated: #1568940 X-Provags-ID: V01U2FsdGVkX18XvfY8QB0Xoej2fwOL+4hlSHY+bS9ojkqzdl1Gs/ +n3Nd1IJXExk2T Message-ID: <4BBA2D77.3040505@gmx.at> Date: Mon, 05 Apr 2010 20:35:35 +0200 From: double User-Agent: Thunderbird 2.0.0.24 (X11/20100317) MIME-Version: 1.0 To: libssh2 development Subject: Getting filetype X-Y-GMX-Trusted: 0 X-FuHaFi: 0.70999999999999996 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hello, How can I determine if a remote file is a directory? There is a "LIBSSH2_SFTP_TYPE_DIRECTORY" defined, but this is nowhere used in the source. And the struct LIBSSH2_SFTP_ATTRIBUTES does not contain a "type" element. Thanks a lot Marcus _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 6 00:38:51 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o35Mca8Z001537; Tue, 6 Apr 2010 00:38:48 +0200 Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.153]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o35McYRE001533 for ; Tue, 6 Apr 2010 00:38:35 +0200 Received: by fg-out-1718.google.com with SMTP id 22so666038fge.11 for ; Mon, 05 Apr 2010 15:38:42 -0700 (PDT) MIME-Version: 1.0 Received: by 10.239.161.16 with HTTP; Mon, 5 Apr 2010 15:38:42 -0700 (PDT) In-Reply-To: References: Date: Mon, 5 Apr 2010 18:38:42 -0400 Received: by 10.239.189.12 with SMTP id r12mr576316hbh.81.1270507122488; Mon, 05 Apr 2010 15:38:42 -0700 (PDT) Message-ID: Subject: Re: small patch to userauth.c From: Jose Baars To: libssh2 development Content-Type: multipart/mixed; boundary=001485f63082b877aa048384fd2b X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --001485f63082b877aa048384fd2b Content-Type: multipart/alternative; boundary=001485f63082b877a1048384fd29 --001485f63082b877a1048384fd29 Content-Type: text/plain; charset=ISO-8859-1 Oops! Believed the compiler when it said : *In this statement, the referenced type of the pointer value "session->userauth_host_packet" is "unsigned char", which is not compatible with "char" because they differ by signed/unsigned attribute. *Attached a new patch with casts to void *. Jose 2010/4/4 Daniel Stenberg > On Fri, 2 Apr 2010, Jose Baars wrote: > > I got several compiler warnings when compiling userauth.c caused by >> missing or incorrect casts. >> >> I have added a patch that solves these. >> > > Thanks, but the iov_base field within the struct iovec is said to be a > 'void *' in POSIX and in my linux headers, so why not typecast to that? > > -- > > / daniel.haxx.se > > _______________________________________________ > libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel > --001485f63082b877a1048384fd29 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Oops! Believed the compiler when it said :

In this statement, the= referenced type of the pointer value "session->userauth_host_packe= t" is "unsigned char", which is not compatible with "ch= ar" because they differ by signed/unsigned attribute.

Attached a new patch with casts to void *.

Jose


<= div class=3D"gmail_quote">2010/4/4 Daniel Stenberg <daniel@haxx.se>
On Fri, 2 Apr 2010, Jose Baars wrote:

I got several compiler warnings when compiling userauth.c caused by missing= or incorrect casts.

I have added a patch that solves these.

Thanks, but the iov_base field within the struct iovec is said to be a '= ;void *' in POSIX and in my linux headers, so why not typecast to that?=

--

=A0/ daniel.haxx.se=

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

--001485f63082b877a1048384fd29-- --001485f63082b877aa048384fd2b Content-Type: application/octet-stream; name="0001-cast-all-assignments-to-vec.iov_base-to-void.patch" Content-Disposition: attachment; filename="0001-cast-all-assignments-to-vec.iov_base-to-void.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g7nv4rwp0 RnJvbSAwNjY1MWNmOTEwZTdhYjllNjVjMmZkYmY3YzkyOWQ2MzYyNjllNWJlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb3NlIEJhYXJzIDxwZXV0QGRvcmEubG9jYWxkb21haW4+CkRh dGU6IE1vbiwgNSBBcHIgMjAxMCAxODozMTozMSAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIGNhc3Qg YWxsIGFzc2lnbm1lbnRzIHRvICB2ZWMuaW92X2Jhc2UgdG8gdm9pZCAqCgotLS0KIHNyYy91c2Vy YXV0aC5jIHwgICAxMCArKysrKy0tLS0tCiAxIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygr KSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvdXNlcmF1dGguYyBiL3NyYy91c2Vy YXV0aC5jCmluZGV4IDk5M2JjMDAuLjdhY2M4ZjkgMTAwNjQ0Ci0tLSBhL3NyYy91c2VyYXV0aC5j CisrKyBiL3NyYy91c2VyYXV0aC5jCkBAIC02NDksOCArNjQ5LDggQEAgc2lnbl9mcm9tZmlsZShM SUJTU0gyX1NFU1NJT04gKnNlc3Npb24sIHVuc2lnbmVkIGNoYXIgKipzaWcsIHNpemVfdCAqc2ln X2xlbiwKICAgICBpZihyYykKICAgICAgICAgcmV0dXJuIHJjOwogCi0gICAgZGF0YXZlYy5pb3Zf YmFzZSA9ICh1bnNpZ25lZCBjaGFyICopZGF0YTsKLSAgICBkYXRhdmVjLmlvdl9sZW4gPSBkYXRh X2xlbjsKKyAgICBkYXRhdmVjLmlvdl9iYXNlID0gKHZvaWQgKilkYXRhOworICAgIGRhdGF2ZWMu aW92X2xlbiAgPSBkYXRhX2xlbjsKIAogICAgIGlmIChwcml2a2V5b2JqLT5zaWdudihzZXNzaW9u LCBzaWcsICh1bnNpZ25lZCBsb25nICopc2lnX2xlbiwgMSwgJmRhdGF2ZWMsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICZob3N0a2V5X2Fic3RyYWN0KSkgewpAQCAtNzg2LDExICs3ODYsMTEg QEAgdXNlcmF1dGhfaG9zdGJhc2VkX2Zyb21maWxlKExJQlNTSDJfU0VTU0lPTiAqc2Vzc2lvbiwK ICAgICAgICAgfQogCiAgICAgICAgIF9saWJzc2gyX2h0b251MzIoYnVmLCBzZXNzaW9uLT5zZXNz aW9uX2lkX2xlbik7Ci0gICAgICAgIGRhdGF2ZWNbMF0uaW92X2Jhc2UgPSBidWY7CisgICAgICAg IGRhdGF2ZWNbMF0uaW92X2Jhc2UgPSAodm9pZCAqKWJ1ZjsKICAgICAgICAgZGF0YXZlY1swXS5p b3ZfbGVuID0gNDsKLSAgICAgICAgZGF0YXZlY1sxXS5pb3ZfYmFzZSA9IHNlc3Npb24tPnNlc3Np b25faWQ7CisgICAgICAgIGRhdGF2ZWNbMV0uaW92X2Jhc2UgPSAodm9pZCAqKXNlc3Npb24tPnNl c3Npb25faWQ7CiAgICAgICAgIGRhdGF2ZWNbMV0uaW92X2xlbiA9IHNlc3Npb24tPnNlc3Npb25f aWRfbGVuOwotICAgICAgICBkYXRhdmVjWzJdLmlvdl9iYXNlID0gc2Vzc2lvbi0+dXNlcmF1dGhf aG9zdF9wYWNrZXQ7CisgICAgICAgIGRhdGF2ZWNbMl0uaW92X2Jhc2UgPSAodm9pZCAqKXNlc3Np b24tPnVzZXJhdXRoX2hvc3RfcGFja2V0OwogICAgICAgICBkYXRhdmVjWzJdLmlvdl9sZW4gPSBz ZXNzaW9uLT51c2VyYXV0aF9ob3N0X3BhY2tldF9sZW47CiAKICAgICAgICAgaWYgKHByaXZrZXlv YmotPnNpZ252KHNlc3Npb24sICZzaWcsICZzaWdfbGVuLCAzLCBkYXRhdmVjLCAmYWJzdHJhY3Qp KSB7Ci0tIAoxLjYuNi4xCgo= --001485f63082b877aa048384fd2b 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 --001485f63082b877aa048384fd2b-- From libssh2-devel-bounces@cool.haxx.se Tue Apr 6 23:32:14 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o36LW0mN016784; Tue, 6 Apr 2010 23:32:12 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o36LVwYd016744 for ; Tue, 6 Apr 2010 23:31:58 +0200 Date: Tue, 6 Apr 2010 23:31:58 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Time for release! Message-ID: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi friends, In 7 days, on April 13th, I plan to ship the next release of libssh2. Please don't push any new features until then, but feel free to fix bugs if you find any! -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 7 21:31:27 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o37JVARg018961; Wed, 7 Apr 2010 21:31:23 +0200 Received: from smtp-relay.mediaways.net (smtp-relay.mediaways.net [193.189.224.115]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o37JV91T018919 for ; Wed, 7 Apr 2010 21:31:09 +0200 Received: (qmail 21624 invoked by uid 4218); 7 Apr 2010 19:31:12 -0000 Received: from pdbn-4d08036a.pool.mediaways.net (HELO goethe.stevennet.de) (77.8.3.106) by smtp-relay.mediaways.net with SMTP; 7 Apr 2010 19:31:12 -0000 Received: from mail.stevennet.de ([192.168.1.5]) by goethe.stevennet.de with esmtp (Exim 4.71) (envelope-from ) id 1Nzaxr-0006Nl-Jt for libssh2-devel@cool.haxx.se; Wed, 07 Apr 2010 21:31:03 +0200 Message-ID: <4BBCDD74.2030800@nexgo.de> Date: Wed, 07 Apr 2010 21:31:00 +0200 From: Heiner Steven Organization: Shell Programming? Heiner's SHELLdorado: http://www.shelldorado.com/ User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.7) Gecko/20060927 Thunderbird/1.5.0.7 Mnenhy/0.7.4.666 MIME-Version: 1.0 To: libssh2-devel@cool.haxx.se Subject: Re: Getting filetype References: <4BBA2D77.3040505@gmx.at> In-Reply-To: <4BBA2D77.3040505@gmx.at> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On 04/05/2010 08:35 PM, double wrote: [...] > How can I determine if a remote file is a directory? There is a > "LIBSSH2_SFTP_TYPE_DIRECTORY" defined, but this is nowhere > used in the source. And the struct LIBSSH2_SFTP_ATTRIBUTES > does not contain a "type" element. Have a look at the libssh2_sftp_fstat_ex(3) manual page. the attributes are similar to what you'd expect in struct stat, stat(2) system call. Heiner _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 7 23:29:21 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o37LTBAS013298; Wed, 7 Apr 2010 23:29:20 +0200 Received: from mail.gmx.net (mail.gmx.net [213.165.64.20]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o37LTAB9013285 for ; Wed, 7 Apr 2010 23:29:10 +0200 Received: (qmail invoked by alias); 07 Apr 2010 21:29:13 -0000 Received: from xdsl-188-155-149-216.adslplus.ch (EHLO [192.168.1.65]) [188.155.149.216] by mail.gmx.net (mp048) with SMTP; 07 Apr 2010 23:29:13 +0200 X-Authenticated: #1568940 X-Provags-ID: V01U2FsdGVkX1+fy2Ah3G2fIxIsYa5B34f3lVf3CZXo/366E7D4ML Jh8vJFSIH1Fs99 Message-ID: <4BBCF928.8060105@gmx.at> Date: Wed, 07 Apr 2010 23:29:12 +0200 From: double User-Agent: Thunderbird 2.0.0.24 (X11/20100317) MIME-Version: 1.0 To: libssh2 development Subject: Re: Getting filetype References: <4BBA2D77.3040505@gmx.at> <4BBCDD74.2030800@nexgo.de> In-Reply-To: <4BBCDD74.2030800@nexgo.de> X-Y-GMX-Trusted: 0 X-FuHaFi: 0.56999999999999995 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi Heiner, Heiner Steven schrieb: > Have a look at the libssh2_sftp_fstat_ex(3) manual page. the attributes > are similar to what you'd expect in struct stat, stat(2) system call. Thanks a lot for your answer. "libssh2_sftp_fstat_ex()" returns this structure, but none of them contains the filetype: struct _LIBSSH2_SFTP_ATTRIBUTES { unsigned long flags; /* which of the down below elements are valid... */ libssh2_uint64_t filesize; unsigned long uid, gid; unsigned long permissions; unsigned long atime, mtime; }; In "stat()" you will have a element "st_mode", so you could check: S_ISDIR(buffer.st_mode) Thanks a lot Marcus _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 8 11:37:21 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o389b7Vg016014; Thu, 8 Apr 2010 11:37:19 +0200 Received: from mail-pw0-f54.google.com (mail-pw0-f54.google.com [209.85.160.54]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o389b5U4015831 for ; Thu, 8 Apr 2010 11:37:05 +0200 Received: by pwi9 with SMTP id 9so1817388pwi.41 for ; Thu, 08 Apr 2010 02:37:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:received:message-id:subject:from:to:content-type; bh=TqoL4CUNAbih4gQrME+Gd8EIwRdQoXm8QEkAPD6dbJM=; b=b572pwwBsxCqg2dbPCF8n7uLg0OOMym/sCM39iIk8YP/yETlHlOtERCvnK7Gyo8dvS Yqzl51HNbZjcESblWxf4kNjQIi1iQSWa4l1RyWsuJd9Dulam1D5Rc5qodPbjHzIZMz5X rUKfal6fPPfY2Iib9gq8Mx1lECnFf08QJNBd4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=P/byGkGWhs6VEAa8SRJ0hMecs8Vo38I0VdMu0p/RKDHq+6gdoUtAsVS1mPZEY60u3+ quwxk5un6dP9sqkxAQoQGzb3N1qiAd5mTQQKtbFMkICQMPrezyJc6u+TZHU6njsHWL+R GTQFUIIp9P23tmVRHas3wfae/fhR461E0pGvY= MIME-Version: 1.0 Received: by 10.142.157.17 with HTTP; Thu, 8 Apr 2010 02:37:01 -0700 (PDT) In-Reply-To: <4BB235A3.3070308@fritz-elfert.de> References: <20100330142419.18258.qmail@stuge.se> <4BB22045.5000803@fritz-elfert.de> <20100330161722.4124.qmail@stuge.se> <4BB235A3.3070308@fritz-elfert.de> Date: Thu, 8 Apr 2010 15:07:01 +0530 Received: by 10.142.3.34 with SMTP id 34mr4056393wfc.193.1270719421835; Thu, 08 Apr 2010 02:37:01 -0700 (PDT) Message-ID: Subject: Re: Character conversion for sftp From: NAGASEKHAR BHUVANAGIRI To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1270905652==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============1270905652== Content-Type: multipart/alternative; boundary=00504502ad00bf69950483b66be6 --00504502ad00bf69950483b66be6 Content-Type: text/plain; charset=ISO-8859-1 Hi, Thank you for the inputs. The verbose mode execution of sftp connection using curl command line utility is as follows: $ curl -v sftp://user2:password2@10.176.XXX.XXX/ * About to connect() to 10.176.XXX.XXX port 22 (#0) * Trying 10.176.XXX.XXX... connected * Connected to 10.176.XXX.XXX (10.176.XXX.XXX) port 22 (#0) * SFTP 0x39639930 state change from SSH_STOP to SSH_S_STARTUP * Failure establishing ssh session * SFTP 0x39639930 state change from SSH_S_STARTUP to SSH_SESSION_FREE * SFTP 0x39639930 state change from SSH_SESSION_FREE to SSH_STOP * SSH DISCONNECT starts now * SFTP 0x39639930 state change from SSH_STOP to SSH_SFTP_SHUTDOWN * SFTP 0x39639930 state change from SSH_SFTP_SHUTDOWN to SSH_SESSION_DISCONNECT * SFTP 0x39639930 state change from SSH_SESSION_DISCONNECT to SSH_SESSION_FREE * SFTP 0x39639930 state change from SSH_SESSION_FREE to SSH_STOP * SSH DISCONNECT is done * Closing connection #0 curl: (2) Failure establishing ssh session We had same problem with libcurl porting to z-OS. But, we were able to resolve the issue by defining the CURL_DOES_CONVERSION and HAVE_ICONV macros, as done for TPF. But, it doesn't do the same for libssh2. When I used same sftp server (freesshd) for testing from different OS, banner_receive method in session.c receives "SSH-2.0-WeOnlyDo 2.1.3" text, where as same text is garbled to "..........|>%`.?........" when used in z-OS. My question is, is there any way to convert the EBCDIC characters to ASCII before sending the request to server (banner_send) and viceversa in banner_receive for sftp? Is there any method provided with licurl/libssh2 to handle conversion for sftp, as libcurl has for ftp/ftps etc (by defining CURL_DOES_CONVERSION and HAVE_ICONV). Thanks, Nagasekhar --00504502ad00bf69950483b66be6 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Hi,
Thank you for the inputs.
The verbose mode execution of sftp conne= ction using curl command line utility is as follows:
$ curl -v sftp://us= er2:password2@10.176.XXX.XXX/
* About to connect() to 10.176.XXX.XXX por= t 22 (#0)
*=A0=A0 Trying 10.176.XXX.XXX... connected
* Connected to 10.176.XXX.XXX= (10.176.XXX.XXX) port 22 (#0)
* SFTP 0x39639930 state change from SSH_S= TOP to SSH_S_STARTUP
* Failure establishing ssh session
* SFTP 0x3963= 9930 state change from SSH_S_STARTUP to SSH_SESSION_FREE
* SFTP 0x39639930 state change from SSH_SESSION_FREE to SSH_STOP
* SSH D= ISCONNECT starts now
* SFTP 0x39639930 state change from SSH_STOP to SSH= _SFTP_SHUTDOWN
* SFTP 0x39639930 state change from SSH_SFTP_SHUTDOWN to = SSH_SESSION_DISCONNECT
* SFTP 0x39639930 state change from SSH_SESSION_DISCONNECT to SSH_SESSION_F= REE
* SFTP 0x39639930 state change from SSH_SESSION_FREE to SSH_STOP
= * SSH DISCONNECT is done
* Closing connection #0
curl: (2) Failure es= tablishing ssh session


We had same problem with libcurl porting to z-OS. But, we were able= to resolve the issue by defining the CURL_DOES_CONVERSION and HAVE_ICONV macros, as done for TPF. But, it doesn't do the same = for libssh2.
When I used same sftp server (freesshd) for testing f= rom different OS,=A0=A0banner_receive method in session.c receives "SS= H-2.0-WeOnlyDo 2.1.3"=A0 text, where as same text is garbled to
"..........|>%`.?........"=A0 when used = in z-OS.

My question is, =A0is there any way to convert the EBCDIC c= haracters to ASCII before sending the request to server (banner_send) and v= iceversa in banner_receive for sftp?

Is there any method provided with licurl/libssh2 to handle conversion f= or sftp, as libcurl has for ftp/ftps etc (by defining CURL_DOES_CONVERSION = and HAVE_ICONV).

Thanks,
Nagasekhar
--00504502ad00bf69950483b66be6-- --===============1270905652== 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 --===============1270905652==-- From libssh2-devel-bounces@cool.haxx.se Thu Apr 8 11:48:56 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o389mqoX029889; Thu, 8 Apr 2010 11:48:55 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o389moIj029869 for ; Thu, 8 Apr 2010 11:48:50 +0200 Date: Thu, 8 Apr 2010 11:48:50 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Character conversion for sftp In-Reply-To: Message-ID: References: <20100330142419.18258.qmail@stuge.se> <4BB22045.5000803@fritz-elfert.de> <20100330161722.4124.qmail@stuge.se> <4BB235A3.3070308@fritz-elfert.de> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 8 Apr 2010, NAGASEKHAR BHUVANAGIRI wrote: > My question is, is there any way to convert the EBCDIC characters to ASCII > before sending the request to server (banner_send) and viceversa in > banner_receive for sftp? > > Is there any method provided with licurl/libssh2 to handle conversion for > sftp, as libcurl has for ftp/ftps etc (by defining CURL_DOES_CONVERSION and > HAVE_ICONV). No, there's currently so such method in libssh2 but we would like to have one, and in my view it makes sense to get inspired or even to clone the way libcurl does it. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 8 17:17:21 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o38FH8t7030494; Thu, 8 Apr 2010 17:17:18 +0200 Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.153]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o38FH5Ye030486 for ; Thu, 8 Apr 2010 17:17:06 +0200 Received: by fg-out-1718.google.com with SMTP id l26so859934fgb.11 for ; Thu, 08 Apr 2010 08:17:10 -0700 (PDT) MIME-Version: 1.0 Received: by 10.239.161.16 with HTTP; Thu, 8 Apr 2010 08:17:10 -0700 (PDT) In-Reply-To: <4BBCF928.8060105@gmx.at> References: <4BBA2D77.3040505@gmx.at> <4BBCDD74.2030800@nexgo.de> <4BBCF928.8060105@gmx.at> Date: Thu, 8 Apr 2010 17:17:10 +0200 Received: by 10.239.186.133 with SMTP id g5mr30200hbh.118.1270739830525; Thu, 08 Apr 2010 08:17:10 -0700 (PDT) Message-ID: Subject: Re: Getting filetype From: Jose Baars To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1219808539==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============1219808539== Content-Type: multipart/alternative; boundary=001485f453343351680483bb2c30 --001485f453343351680483bb2c30 Content-Type: text/plain; charset=ISO-8859-1 Hi, On my system, this works: If you test attrs.permissions with S_ISDIR, you find out if it is a directory or not, like this : ....loop... rc = libssh2_sftp_readdir_ex(sftp_handle, mem, sizeof(mem), NULL,0, &attrs); if(attrs.flags & LIBSSH2_SFTP_ATTR_PERMISSIONS) { printf("%s%x08 ", S_ISDIR(attrs.permissions)?"d":" " ,attrs.permissions); ... Good luck, Jose 2010/4/7 double > Hi Heiner, > > Heiner Steven schrieb: > > Have a look at the libssh2_sftp_fstat_ex(3) manual page. the attributes >> are similar to what you'd expect in struct stat, stat(2) system call. >> > > Thanks a lot for your answer. > > "libssh2_sftp_fstat_ex()" returns this structure, but none of them contains > the filetype: > > struct _LIBSSH2_SFTP_ATTRIBUTES { > unsigned long flags; /* which of the down below elements are > valid... */ > libssh2_uint64_t filesize; > unsigned long uid, gid; > unsigned long permissions; > unsigned long atime, mtime; > }; > > In "stat()" you will have a element "st_mode", so you could > check: S_ISDIR(buffer.st_mode) > > Thanks a lot > Marcus > > > > _______________________________________________ > libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel > --001485f453343351680483bb2c30 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hi,

On my system, this works:

If you test attrs.permissions w= ith S_ISDIR, you find out if it is a directory or not,
like this :
....loop...
=A0=A0=A0=A0=A0=A0=A0 rc =3D libssh2_sftp_readdir_ex(sftp_= handle, mem, sizeof(mem),
=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 NULL,0, &attrs);
=A0=A0=A0=A0=A0= =A0=A0 if(attrs.flags & LIBSSH2_SFTP_ATTR_PERMISSIONS) {

=A0=A0= =A0=A0=A0=A0=A0 printf("%s%x08 ", S_ISDIR(attrs.permissions)?&quo= t;d":" " ,attrs.permissions);
...

Good luck,
Jose



20= 10/4/7 double <ninive= @gmx.at>
Hi Heiner,

Heiner Steven schrieb:

Have a look at the libssh2_sftp_fstat_ex(3) manual page. the attributes
are similar to what you'd expect in struct stat, stat(2) system call.

Thanks a lot for your answer.

"libssh2_sftp_fstat_ex()" returns this structure, but none of the= m contains
the filetype:

struct _LIBSSH2_SFTP_ATTRIBUTES {
=A0 unsigned long flags; =A0 =A0 =A0 =A0 =A0 =A0/* which of the down below= elements are valid... */
=A0 libssh2_uint64_t filesize;
=A0 unsigned long uid, gid;
=A0 unsigned long permissions;
=A0 unsigned long atime, mtime;
};

In "stat()" you will have a element "st_mode", so you c= ould
check: =A0S_ISDIR(buffer.st_mode)

Thanks a lot
Marcus



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

--001485f453343351680483bb2c30-- --===============1219808539== 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 --===============1219808539==-- From libssh2-devel-bounces@cool.haxx.se Sat Apr 10 04:19:31 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3A2JE1X006533; Sat, 10 Apr 2010 04:19:26 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3A2JCBN006505 for ; Sat, 10 Apr 2010 04:19:12 +0200 Received: (qmail 9870 invoked by uid 501); 10 Apr 2010 02:19:12 -0000 Message-ID: <20100410021912.9869.qmail@stuge.se> Date: Sat, 10 Apr 2010 04:19:12 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: Character conversion for sftp Mail-Followup-To: libssh2-devel@cool.haxx.se References: <20100330142419.18258.qmail@stuge.se> <4BB22045.5000803@fritz-elfert.de> <20100330161722.4124.qmail@stuge.se> <4BB235A3.3070308@fritz-elfert.de> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi, NAGASEKHAR BHUVANAGIRI wrote: > The verbose mode execution of sftp connection using curl command > line utility is as follows: This output is not useful. Please provide a libssh2 debug trace from such an execution. That may require you to recompile libssh2 with tracing enabled, and to modify curl so that it calls libssh2_trace(session,~0); after return from libssh2_session_init(). //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sun Apr 11 08:44:03 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3B6hlso003315; Sun, 11 Apr 2010 08:43:59 +0200 Received: from mail.gmx.net (mail.gmx.net [213.165.64.20]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3B6hj2u003138 for ; Sun, 11 Apr 2010 08:43:46 +0200 Received: (qmail invoked by alias); 11 Apr 2010 06:43:41 -0000 Received: from xdsl-188-155-199-210.adslplus.ch (EHLO [192.168.1.64]) [188.155.199.210] by mail.gmx.net (mp064) with SMTP; 11 Apr 2010 08:43:41 +0200 X-Authenticated: #1568940 X-Provags-ID: V01U2FsdGVkX19oxMoc4F1oRIBkAKOb1XrUmgs4w6waUUg+aJ/07y Xu9yUQuCvsAA7A Message-ID: <4BC16F9B.5040403@gmx.at> Date: Sun, 11 Apr 2010 08:43:39 +0200 From: double User-Agent: Thunderbird 2.0.0.24 (X11/20100317) MIME-Version: 1.0 To: libssh2 development Subject: Re: Getting filetype References: <4BBA2D77.3040505@gmx.at> <4BBCDD74.2030800@nexgo.de> <4BBCF928.8060105@gmx.at> In-Reply-To: X-Y-GMX-Trusted: 0 X-FuHaFi: 0.5,0.5 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============0815322488==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se This is a multi-part message in MIME format. --===============0815322488== Content-Type: multipart/alternative; boundary="------------010904030907070400060505" This is a multi-part message in MIME format. --------------010904030907070400060505 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hi Jose, You are right - thanks a lot! Marcus Jose Baars schrieb: > Hi, > > On my system, this works: > > If you test attrs.permissions with S_ISDIR, you find out if it is a > directory or not, > like this : > > ....loop... > rc = libssh2_sftp_readdir_ex(sftp_handle, mem, sizeof(mem), > NULL,0, &attrs); > if(attrs.flags & LIBSSH2_SFTP_ATTR_PERMISSIONS) { > > printf("%s%x08 ", S_ISDIR(attrs.permissions)?"d":" " > ,attrs.permissions); > ... > > Good luck, > Jose > > > > 2010/4/7 double > > > Hi Heiner, > > Heiner Steven schrieb: > > Have a look at the libssh2_sftp_fstat_ex(3) manual page. the > attributes > are similar to what you'd expect in struct stat, stat(2) > system call. > > > Thanks a lot for your answer. > > "libssh2_sftp_fstat_ex()" returns this structure, but none of them > contains > the filetype: > > struct _LIBSSH2_SFTP_ATTRIBUTES { > unsigned long flags; /* which of the down below > elements are valid... */ > libssh2_uint64_t filesize; > unsigned long uid, gid; > unsigned long permissions; > unsigned long atime, mtime; > }; > > In "stat()" you will have a element "st_mode", so you could > check: S_ISDIR(buffer.st_mode) > > Thanks a lot > Marcus > > > > _______________________________________________ > libssh2-devel > http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel > > > ------------------------------------------------------------------------ > > _______________________________________________ > libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel > --------------010904030907070400060505 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Hi Jose,

You are right - thanks a lot!

Marcus


Jose Baars schrieb:
Hi,

On my system, this works:

If you test attrs.permissions with S_ISDIR, you find out if it is a directory or not,
like this :

....loop...
        rc = libssh2_sftp_readdir_ex(sftp_handle, mem, sizeof(mem),
                                     NULL,0, &attrs);
        if(attrs.flags & LIBSSH2_SFTP_ATTR_PERMISSIONS) {

        printf("%s%x08 ", S_ISDIR(attrs.permissions)?"d":" " ,attrs.permissions);
...

Good luck,
Jose



2010/4/7 double <ninive@gmx.at>
Hi Heiner,

Heiner Steven schrieb:

Have a look at the libssh2_sftp_fstat_ex(3) manual page. the attributes
are similar to what you'd expect in struct stat, stat(2) system call.

Thanks a lot for your answer.

"libssh2_sftp_fstat_ex()" returns this structure, but none of them contains
the filetype:

struct _LIBSSH2_SFTP_ATTRIBUTES {
  unsigned long flags;            /* which of the down below elements are valid... */
  libssh2_uint64_t filesize;
  unsigned long uid, gid;
  unsigned long permissions;
  unsigned long atime, mtime;
};

In "stat()" you will have a element "st_mode", so you could
check:  S_ISDIR(buffer.st_mode)

Thanks a lot
Marcus



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


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

--------------010904030907070400060505-- --===============0815322488== 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 --===============0815322488==-- From libssh2-devel-bounces@cool.haxx.se Sun Apr 11 11:00:38 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3B90ThA001174; Sun, 11 Apr 2010 11:00:37 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3B90SZ9001131 for ; Sun, 11 Apr 2010 11:00:28 +0200 Date: Sun, 11 Apr 2010 11:00:28 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Getting filetype In-Reply-To: Message-ID: References: <4BBA2D77.3040505@gmx.at> <4BBCDD74.2030800@nexgo.de> <4BBCF928.8060105@gmx.at> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 8 Apr 2010, Jose Baars wrote: > If you test attrs.permissions with S_ISDIR, you find out if it is a > directory or not, like this : I don't like to depend on a system macro such as S_ISDIR to check for libssh2-specific bits, so I'm gonna introduce a set of LIBSSH2_SFTP_S_IS***() macros that mirror the functionality. And I'll add something to the man page for libssh2_sftp_fstat_ex() about it all. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sun Apr 11 12:44:34 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3BAiLKR014385; Sun, 11 Apr 2010 12:44:32 +0200 Received: from mail-ew0-f215.google.com (mail-ew0-f215.google.com [209.85.219.215]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3BAiJ4W014258 for ; Sun, 11 Apr 2010 12:44:19 +0200 Received: by ewy7 with SMTP id 7so1280635ewy.11 for ; Sun, 11 Apr 2010 03:44:17 -0700 (PDT) Received: by 10.213.37.67 with SMTP id w3mr764894ebd.69.1270982657575; Sun, 11 Apr 2010 03:44:17 -0700 (PDT) Received: from [192.168.0.35] (96-160.ftth.onsbrabantnet.nl [88.159.160.96]) by mx.google.com with ESMTPS id 16sm2032275ewy.15.2010.04.11.03.44.16 (version=SSLv3 cipher=RC4-MD5); Sun, 11 Apr 2010 03:44:16 -0700 (PDT) Message-ID: <4BC1A7FF.6040606@peut.org> Date: Sun, 11 Apr 2010 12:44:15 +0200 From: Jose Baars User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; nl; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: libssh2-devel@cool.haxx.se Subject: Re: Getting filetype References: <4BBA2D77.3040505@gmx.at> <4BBCDD74.2030800@nexgo.de> <4BBCF928.8060105@gmx.at> In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1808849696==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se This is a cryptographically signed message in MIME format. --===============1808849696== Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha1; boundary="------------ms090509090000020308040905" This is a cryptographically signed message in MIME format. --------------ms090509090000020308040905 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Op 4/11/2010 11:00 AM, Daniel Stenberg schreef: > On Thu, 8 Apr 2010, Jose Baars wrote: > >> If you test attrs.permissions with S_ISDIR, you find out if it is a=20 >> directory or not, like this : > > I don't like to depend on a system macro such as S_ISDIR to check for=20 > libssh2-specific bits, so I'm gonna introduce a set of=20 > LIBSSH2_SFTP_S_IS***() macros that mirror the functionality. > > And I'll add something to the man page for libssh2_sftp_fstat_ex()=20 > about it all. > I thought they were POSIX defined macro's? Most C-compilers would=20 support those then, wouldn't they? --------------ms090509090000020308040905 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIO1DCC BEYwggOvoAMCAQICEGb9R+PCGeToms2Z3fU6yyQwDQYJKoZIhvcNAQEFBQAwXzELMAkGA1UE BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1Ymxp YyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA1MTAyODAwMDAwMFoXDTE1 MTAyNzIzNTk1OVowgd0xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEf MB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNl IGF0IGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEgKGMpMDUxHjAcBgNVBAsTFVBlcnNv bmEgTm90IFZhbGlkYXRlZDE3MDUGA1UEAxMuVmVyaVNpZ24gQ2xhc3MgMSBJbmRpdmlkdWFs IFN1YnNjcmliZXIgQ0EgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMnf rOfq+PgDFMQAktXBfjbCPO98chXLwKuMPRyVzm8eECw/AO2XJua2x+atQx0/pIdHR0w+VPhs +Mf8sZ69MHC8l7EDBeqV8a1AxUR6SwWi8mD81zplYu//EHuiVrvFTnAt1qIfPO2wQuhejVch rKaZ2RHp0hoHwHRHQgv8xTTq/ea6JNEdCBU3otdzzwFBL2OyOj++pRpu9MlKWz2VphW7NQIZ +dTvvI8OcXZZu0u2Ptb8Whb01g6J8kn+bAztFenZiHWcec5gJ925rXXOL3OVekA6hXVJsLjf aLyrzROChRFQo+A8C67AClPN1zBvhTJGG+RJEMJs4q8fef/btLUCAwEAAaOB/zCB/DASBgNV HRMBAf8ECDAGAQH/AgEAMEQGA1UdIAQ9MDswOQYLYIZIAYb4RQEHFwEwKjAoBggrBgEFBQcC ARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYTALBgNVHQ8EBAMCAQYwEQYJYIZIAYb4 QgEBBAQDAgEGMC4GA1UdEQQnMCWkIzAhMR8wHQYDVQQDExZQcml2YXRlTGFiZWwzLTIwNDgt MTU1MB0GA1UdDgQWBBQRfV4ZfTwE32ps1qKKGj8x2DuUUjAxBgNVHR8EKjAoMCagJKAihiBo dHRwOi8vY3JsLnZlcmlzaWduLmNvbS9wY2ExLmNybDANBgkqhkiG9w0BAQUFAAOBgQA8o9oC YzrEk6qrctPcrVA4HgyeFkqIt+7r2f8PjZWg1rv6aguuYYTYaEeJ70+ssh9JQZtJM3aTi55u uUMcYL3C3Ioth8FFwBFyBBprJCpsb+f8BxMp0Hc6I+f1wYVoGb/GAVQgGa41gsxiPGEJxvTV 67APpp8zhZrTcY5Qj5ndYjCCBUEwggQpoAMCAQICEEJLgZ2m/5im8G2Mp6IuBpMwDQYJKoZI hvcNAQEFBQAwgd0xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0G A1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNlIGF0 IGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEgKGMpMDUxHjAcBgNVBAsTFVBlcnNvbmEg Tm90IFZhbGlkYXRlZDE3MDUGA1UEAxMuVmVyaVNpZ24gQ2xhc3MgMSBJbmRpdmlkdWFsIFN1 YnNjcmliZXIgQ0EgLSBHMjAeFw0wOTExMTIwMDAwMDBaFw0xMDExMTIyMzU5NTlaMIIBCjEX MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv cmsxRjBEBgNVBAsTPXd3dy52ZXJpc2lnbi5jb20vcmVwb3NpdG9yeS9SUEEgSW5jb3JwLiBi eSBSZWYuLExJQUIuTFREKGMpOTgxHjAcBgNVBAsTFVBlcnNvbmEgTm90IFZhbGlkYXRlZDEz MDEGA1UECxMqRGlnaXRhbCBJRCBDbGFzcyAxIC0gTmV0c2NhcGUgRnVsbCBTZXJ2aWNlMRMw EQYDVQQDFApKb3NlIEJhYXJzMRwwGgYJKoZIhvcNAQkBFg1wZXV0QHBldXQub3JnMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAosfMiN5BS5n2BJc2UqrLqe/Nmo3rr90wEsp/ JlHxq569mltTO4zeL5TPP+/7FS/PN6x/pFj81UOCE2K31uUBcR/ggarV9BdcbEtQOwEfMWSL PKO/7DMVdsTkl2BCV5Sj+F1VmPKFPkyh+XVmGfQSfaZCfONGsoqqiPz9zB6pru70tpzw7vGG RWvuOhLVpBmyU48xXZ61OSZnbnad+33dW7TbLESJKs7QznkDk2meqUvUao4ZjbllbYGbnCoa OnPUH9obRs/AC/eTKrbRdjmWC/QJV2YYyXCDDmmQVY7sC6MF/5GC9paNb8lBrd3mcUpGUfyA n5EMI9QSqRWRhbTOVwIDAQABo4HMMIHJMAkGA1UdEwQCMAAwRAYDVR0gBD0wOzA5BgtghkgB hvhFAQcXATAqMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy52ZXJpc2lnbi5jb20vcnBhMAsG A1UdDwQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDBAYIKwYBBQUHAwIwSgYDVR0fBEMwQTA/ oD2gO4Y5aHR0cDovL0luZEMxRGlnaXRhbElELWNybC52ZXJpc2lnbi5jb20vSW5kQzFEaWdp dGFsSUQuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQAXLjg+EMDK1yYA/M7wlgUYwarEC159Mm6q y2R5XInO/pbLQJdOn4u3xg9/tTa3KeFSJpMlLyUBLxUr5AfvzLfJDlUnbfnomCCJyrf5QZEs 8tLGq3bIdLuyH3ILfp5i2WFvms74l5w+FTTKnkPUCGTx0lIVg3tyAOTUmBOIX6sF1+XNdx5Z aqVHF0ZliBgPTD6/UkMWdI4OzBVLGVYBvX+U7AN8iBJr1ILrcl+hkc2UC/sJVspkc4f1wO49 kJ2JPiD5TUByetjBx5QCOPMt7LEl8EfIX2x+HtLMPvHs7oe/OTrhTASN6ocZUF+ME/Pr/Kyh 7Yi3HXaCKIVjNCA/iHThMIIFQTCCBCmgAwIBAgIQQkuBnab/mKbwbYynoi4GkzANBgkqhkiG 9w0BAQUFADCB3TELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYD VQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2UgYXQg aHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykwNTEeMBwGA1UECxMVUGVyc29uYSBO b3QgVmFsaWRhdGVkMTcwNQYDVQQDEy5WZXJpU2lnbiBDbGFzcyAxIEluZGl2aWR1YWwgU3Vi c2NyaWJlciBDQSAtIEcyMB4XDTA5MTExMjAwMDAwMFoXDTEwMTExMjIzNTk1OVowggEKMRcw FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29y azFGMEQGA1UECxM9d3d3LnZlcmlzaWduLmNvbS9yZXBvc2l0b3J5L1JQQSBJbmNvcnAuIGJ5 IFJlZi4sTElBQi5MVEQoYyk5ODEeMBwGA1UECxMVUGVyc29uYSBOb3QgVmFsaWRhdGVkMTMw MQYDVQQLEypEaWdpdGFsIElEIENsYXNzIDEgLSBOZXRzY2FwZSBGdWxsIFNlcnZpY2UxEzAR BgNVBAMUCkpvc2UgQmFhcnMxHDAaBgkqhkiG9w0BCQEWDXBldXRAcGV1dC5vcmcwggEiMA0G CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCix8yI3kFLmfYElzZSqsup782ajeuv3TASyn8m UfGrnr2aW1M7jN4vlM8/7/sVL883rH+kWPzVQ4ITYrfW5QFxH+CBqtX0F1xsS1A7AR8xZIs8 o7/sMxV2xOSXYEJXlKP4XVWY8oU+TKH5dWYZ9BJ9pkJ840ayiqqI/P3MHqmu7vS2nPDu8YZF a+46EtWkGbJTjzFdnrU5Jmdudp37fd1btNssRIkqztDOeQOTaZ6pS9RqjhmNuWVtgZucKho6 c9Qf2htGz8AL95MqttF2OZYL9AlXZhjJcIMOaZBVjuwLowX/kYL2lo1vyUGt3eZxSkZR/ICf kQwj1BKpFZGFtM5XAgMBAAGjgcwwgckwCQYDVR0TBAIwADBEBgNVHSAEPTA7MDkGC2CGSAGG +EUBBxcBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEwCwYD VR0PBAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMEBggrBgEFBQcDAjBKBgNVHR8EQzBBMD+g PaA7hjlodHRwOi8vSW5kQzFEaWdpdGFsSUQtY3JsLnZlcmlzaWduLmNvbS9JbmRDMURpZ2l0 YWxJRC5jcmwwDQYJKoZIhvcNAQEFBQADggEBABcuOD4QwMrXJgD8zvCWBRjBqsQLXn0ybqrL ZHlcic7+lstAl06fi7fGD3+1Nrcp4VImkyUvJQEvFSvkB+/Mt8kOVSdt+eiYIInKt/lBkSzy 0sardsh0u7Ifcgt+nmLZYW+azviXnD4VNMqeQ9QIZPHSUhWDe3IA5NSYE4hfqwXX5c13Hllq pUcXRmWIGA9MPr9SQxZ0jg7MFUsZVgG9f5TsA3yIEmvUgutyX6GRzZQL+wlWymRzh/XA7j2Q nYk+IPlNQHJ62MHHlAI48y3ssSXwR8hfbH4e0sw+8ezuh785OuFMBI3qhxlQX4wT8+v8rKHt iLcddoIohWM0ID+IdOExggTsMIIE6AIBATCB8jCB3TELMAkGA1UEBhMCVVMxFzAVBgNVBAoT DlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYD VQQLEzJUZXJtcyBvZiB1c2UgYXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykw NTEeMBwGA1UECxMVUGVyc29uYSBOb3QgVmFsaWRhdGVkMTcwNQYDVQQDEy5WZXJpU2lnbiBD bGFzcyAxIEluZGl2aWR1YWwgU3Vic2NyaWJlciBDQSAtIEcyAhBCS4Gdpv+YpvBtjKeiLgaT MAkGBSsOAwIaBQCgggLOMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkF MQ8XDTEwMDQxMTEwNDQxNVowIwYJKoZIhvcNAQkEMRYEFD4rCDgxHaPDwjxjUeud3u+PaZq1 MF8GCSqGSIb3DQEJDzFSMFAwCwYJYIZIAWUDBAECMAoGCCqGSIb3DQMHMA4GCCqGSIb3DQMC AgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzANBggqhkiG9w0DAgIBKDCCAQMGCSsGAQQB gjcQBDGB9TCB8jCB3TELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8w HQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2Ug YXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykwNTEeMBwGA1UECxMVUGVyc29u YSBOb3QgVmFsaWRhdGVkMTcwNQYDVQQDEy5WZXJpU2lnbiBDbGFzcyAxIEluZGl2aWR1YWwg U3Vic2NyaWJlciBDQSAtIEcyAhBCS4Gdpv+YpvBtjKeiLgaTMIIBBQYLKoZIhvcNAQkQAgsx gfWggfIwgd0xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UE CxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNlIGF0IGh0 dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEgKGMpMDUxHjAcBgNVBAsTFVBlcnNvbmEgTm90 IFZhbGlkYXRlZDE3MDUGA1UEAxMuVmVyaVNpZ24gQ2xhc3MgMSBJbmRpdmlkdWFsIFN1YnNj cmliZXIgQ0EgLSBHMgIQQkuBnab/mKbwbYynoi4GkzANBgkqhkiG9w0BAQEFAASCAQAnjkcz WKeB33OLtK9yyJ5u4oZHpqL9aWJvbYFzG0xtDEgNFqO5U+O3reY2eKDoGkZuyy+YCXeskiv2 6u1IHPuDztuSWYukOSOubKdTvH98+UEh3Id3t/ZJ9IwYf2/wpuKCJcS6SJWXAYLtJ3AUTUKj zhV0kQD2TFZWBbUgNYhTJbZmVX8vllElCrEvfZMsNY4HmfI/A8S6yVhT9Z8p7EpIQyEyTN+x G9xkfowav5Ul1WCw63wfGaAozlYvRTBKyZ8u9ADPOY5UW/3+iUZEL7kJcasuGLExy7aQrYtr gvHz/kzr2BRmDHWn5kXz8OSvo3AxPNqQoCN1u9/k3npglVaeAAAAAAAA --------------ms090509090000020308040905-- --===============1808849696== 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 --===============1808849696==-- From libssh2-devel-bounces@cool.haxx.se Sun Apr 11 14:50:55 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3BCokUu001701; Sun, 11 Apr 2010 14:50:54 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3BCoinX001696 for ; Sun, 11 Apr 2010 14:50:44 +0200 Date: Sun, 11 Apr 2010 14:50:44 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Getting filetype In-Reply-To: <4BC1A7FF.6040606@peut.org> Message-ID: References: <4BBA2D77.3040505@gmx.at> <4BBCDD74.2030800@nexgo.de> <4BBCF928.8060105@gmx.at> <4BC1A7FF.6040606@peut.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Sun, 11 Apr 2010, Jose Baars wrote: >> libssh2-specific bits, so I'm gonna introduce a set of >> LIBSSH2_SFTP_S_IS***() macros that mirror the functionality. >> > I thought they were POSIX defined macro's? Most C-compilers would support > those then, wouldn't they? Right, on most systems this isn't needed. But: 1. the struct and data libssh2 returns in libssh2_sftp_fstat_ex() is not fully POSIX compliant which may cause subtle differences somewher and perhaps most importantly: 2. libssh2 isn't limited to working on POSIX compliant platforms, so by providing its own set of defines and macros applications can remain the same when using libssh2 in a portable fashion. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 12 17:11:32 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3CFBGJF028735; Mon, 12 Apr 2010 17:11:27 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3CFB40q028703 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Mon, 12 Apr 2010 17:11:06 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3CFB6Uq015724 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Mon, 12 Apr 2010 17:11:07 +0200 From: Simon Josefsson To: libssh2 development Subject: Re: Time for release! References: OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100412:libssh2-devel@cool.haxx.se::Q/OptrRIITF89YCu:eKye Date: Mon, 12 Apr 2010 17:11:06 +0200 In-Reply-To: (Daniel Stenberg's message of "Tue, 6 Apr 2010 23:31:58 +0200 (CEST)") Message-ID: <87aat8hfjp.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=-0.9 required=5.0 tests=AWL,BAYES_00, DATE_IN_FUTURE_96_XX,RDNS_DYNAMIC,SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg writes: > Hi friends, > > In 7 days, on April 13th, I plan to ship the next release of > libssh2. Please don't push any new features until then, but feel free > to fix bugs if you find any! Does 'make check' pass for you? It doesn't for me. I'm concerned we introduced an busy loop (or infloop, I forgot) when we made libssh2 use poll instead of select when available, and I don't recall any followup on that issue. /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 12 17:31:27 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3CFVKrA004001; Mon, 12 Apr 2010 17:31:26 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3CFVJGx003995 for ; Mon, 12 Apr 2010 17:31:19 +0200 Date: Mon, 12 Apr 2010 17:31:19 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Time for release! In-Reply-To: <87aat8hfjp.fsf@mocca.josefsson.org> Message-ID: References: <87aat8hfjp.fsf@mocca.josefsson.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Mon, 12 Apr 2010, Simon Josefsson wrote: > Does 'make check' pass for you? It doesn't for me. I'm concerned we > introduced an busy loop (or infloop, I forgot) when we made libssh2 use poll > instead of select when available, and I don't recall any followup on that > issue. I must admit I haven't tried it in a while, but I guess I now know what to do tonight... :-) -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 12 22:15:44 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3CKFQ2a003637; Mon, 12 Apr 2010 22:15:39 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3CKFORR003614 for ; Mon, 12 Apr 2010 22:15:24 +0200 Date: Mon, 12 Apr 2010 22:15:24 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Time for release! In-Reply-To: <87aat8hfjp.fsf@mocca.josefsson.org> Message-ID: References: <87aat8hfjp.fsf@mocca.josefsson.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Mon, 12 Apr 2010, Simon Josefsson wrote: > Does 'make check' pass for you? It doesn't for me. Uhm, this whole make check target is very magic to me. How do I invoke and run the test case with gdb ? -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 09:05:46 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D75YSE014816; Tue, 13 Apr 2010 09:05:44 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D75VSj014731 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Tue, 13 Apr 2010 09:05:32 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3D75Uug005503 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Tue, 13 Apr 2010 09:05:32 +0200 From: Simon Josefsson To: libssh2 development Subject: Re: Time for release! References: <87aat8hfjp.fsf@mocca.josefsson.org> OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100413:libssh2-devel@cool.haxx.se::PM+2/gieyTHSwFB3:8MSn Date: Tue, 13 Apr 2010 09:05:30 +0200 In-Reply-To: (Daniel Stenberg's message of "Mon, 12 Apr 2010 22:15:24 +0200 (CEST)") Message-ID: <871vejde85.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_00,RDNS_DYNAMIC, SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg writes: > On Mon, 12 Apr 2010, Simon Josefsson wrote: > >> Does 'make check' pass for you? It doesn't for me. > > Uhm, this whole make check target is very magic to me. How do I invoke > and run the test case with gdb ? What I do is typically add some code in ssh2.c that will hang, like: getchar () and then do M-x gdb to attach to the running process, add some breakpoint, and then do 'c' in gdb and then start to debug it. I did this some time ago, and then it hang when tearing down the connection in the new poll() code. Of course, it is possible that the ssh2.c self test code is buggy, but still, it used to work so something we changed in the library likely broke it. I am sorry I don't have time to look into this further myself right now, I'm just returning from vacation and there is plenty of things to catch up on... You could also just disable the self check and release anyway. /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 09:30:26 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D7UMKT003340; Tue, 13 Apr 2010 09:30:26 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D7ULf5003321 for ; Tue, 13 Apr 2010 09:30:21 +0200 Date: Tue, 13 Apr 2010 09:30:21 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Time for release! In-Reply-To: <871vejde85.fsf@mocca.josefsson.org> Message-ID: References: <87aat8hfjp.fsf@mocca.josefsson.org> <871vejde85.fsf@mocca.josefsson.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Tue, 13 Apr 2010, Simon Josefsson wrote: > What I do is typically add some code in ssh2.c that will hang, like: > > getchar () > > and then do M-x gdb to attach to the running process, add some breakpoint, > and then do 'c' in gdb and then start to debug it. Ah, neat trick - thanks. In this particular case I could also just run the test and attach gdb as it would hang in _libssh2_wait_socket() ... :-O > I did this some time ago, and then it hang when tearing down the connection > in the new poll() code. Of course, it is possible that the ssh2.c self test > code is buggy, but still, it used to work so something we changed in the > library likely broke it. Yeah. Switching to the select() code doesn't change the behavior. > You could also just disable the self check and release anyway. I might do that. I'll dig around some further first to see if I can figure it out. We do run tests all the time with curl using libssh2 and they run just fine, so I have reason to believe that most of it is still functional... -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 09:42:29 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D7gNbq014687; Tue, 13 Apr 2010 09:42:27 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D7gMPK014649 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Tue, 13 Apr 2010 09:42:22 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3D7gMFd006663 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Tue, 13 Apr 2010 09:42:24 +0200 From: Simon Josefsson To: libssh2 development Subject: Re: Time for release! References: <87aat8hfjp.fsf@mocca.josefsson.org> <871vejde85.fsf@mocca.josefsson.org> OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100413:libssh2-devel@cool.haxx.se::YkDZhDwoKW4QocIu:EzrC Date: Tue, 13 Apr 2010 09:42:23 +0200 In-Reply-To: (Daniel Stenberg's message of "Tue, 13 Apr 2010 09:30:21 +0200 (CEST)") Message-ID: <874ojfbxy8.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_00,RDNS_DYNAMIC, SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg writes: > On Tue, 13 Apr 2010, Simon Josefsson wrote: > >> What I do is typically add some code in ssh2.c that will hang, like: >> >> getchar () >> >> and then do M-x gdb to attach to the running process, add some >> breakpoint, and then do 'c' in gdb and then start to debug it. > > Ah, neat trick - thanks. In this particular case I could also just run > the test and attach gdb as it would hang in _libssh2_wait_socket() > ... :-O Heh, true. >> I did this some time ago, and then it hang when tearing down the >> connection in the new poll() code. Of course, it is possible that >> the ssh2.c self test code is buggy, but still, it used to work so >> something we changed in the library likely broke it. > > Yeah. Switching to the select() code doesn't change the behavior. Ouch. Then it must have broken earlier... >> You could also just disable the self check and release anyway. > > I might do that. I'll dig around some further first to see if I can > figure it out. We do run tests all the time with curl using libssh2 > and they run just fine, so I have reason to believe that most of it is > still functional... Yup. Having working self-checks inside libssh2 would be useful, though, since it makes regression testing easier for those not running libssh2 under curl self-checks. For the todo list... /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 09:53:42 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D7rbib023710; Tue, 13 Apr 2010 09:53:41 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D7rb6s023705 for ; Tue, 13 Apr 2010 09:53:37 +0200 Date: Tue, 13 Apr 2010 09:53:37 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: libssh2 hangs in channel_close() Message-ID: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi The problem with the self test is the code in channel_close() that unconditionally waits for the remote EOF to arrive. Quite clearly it is simply not coming here, and thus libssh2 hangs there waiting for it. This was introduced by Peter in commit 16af813b812aca09c73045288040ddf1a03a2b86: Send and receive channel EOF before sending SSH_MSG_CHANNEL_CLOSE Sending SSH_MSG_CHANNEL_CLOSE without channel EOF is explicitly allowed in RFC 4254, but some non-conforming servers will hang or time out when the channel is closed before EOF. Other common clients send and receive EOF before closing, there are no drawbacks, and some servers need it to work correctly. Is there really anything we can do about this? I mean, if we're about to close the channel, we can't sit and waiting for an EOF that might not come! -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 10:06:38 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D86VD7003364; Tue, 13 Apr 2010 10:06:38 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D86Tho003315 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Tue, 13 Apr 2010 10:06:29 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3D86T9I007367 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Tue, 13 Apr 2010 10:06:31 +0200 From: Simon Josefsson To: libssh2 development Subject: Re: libssh2 hangs in channel_close() References: OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100413:libssh2-devel@cool.haxx.se::dWJzWu0K00/h6NZj:E1+R Date: Tue, 13 Apr 2010 10:06:29 +0200 In-Reply-To: (Daniel Stenberg's message of "Tue, 13 Apr 2010 09:53:37 +0200 (CEST)") Message-ID: <87ochnai9m.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_00,RDNS_DYNAMIC, SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg writes: > Hi > > The problem with the self test is the code in channel_close() that > unconditionally waits for the remote EOF to arrive. Quite clearly it > is simply not coming here, and thus libssh2 hangs there waiting for > it. > > This was introduced by Peter in commit > 16af813b812aca09c73045288040ddf1a03a2b86: > > Send and receive channel EOF before sending SSH_MSG_CHANNEL_CLOSE > > Sending SSH_MSG_CHANNEL_CLOSE without channel EOF is explicitly allowed > in RFC 4254, but some non-conforming servers will hang or time out when > the channel is closed before EOF. > > Other common clients send and receive EOF before closing, there are no > drawbacks, and some servers need it to work correctly. > > Is there really anything we can do about this? I mean, if we're about > to close the channel, we can't sit and waiting for an EOF that might > not come! If OpenSSH server doesn't send EOF, I think libssh2 need to do something so that it interops with it. I'm using OpenSSH 5.3p1 from debian, which is fairly modern. Maybe we can SEND the EOF but not wait for one? It seems like a bug in these other servers to me, if the RFC permits our old behaviour. Peter, which servers are these? Naming them, with version numbers, is useful in discussions like this. /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 10:24:11 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D8O7JD016332; Tue, 13 Apr 2010 10:24:10 +0200 Received: from mo.mxl.2iij.net (mo502.mxl.2iij.net [210.149.48.20]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D8O45p016259 for ; Tue, 13 Apr 2010 10:24:05 +0200 Received: by mo.mxl.2iij.net (mxl-mo502) id o3D8O47Q007961; Tue, 13 Apr 2010 17:24:04 +0900 Received: from unknown [192.26.96.20] (EHLO mx20.fujixerox.co.jp) by mas502a.mxl.2iij.net (mxl_mta-5.7.1-5) with ESMTP id 42a24cb4.3716950928.287042.00-017.261104.mas502a.mxl.2iij.net (envelope-from ); Tue, 13 Apr 2010 17:24:04 +0900 (JST) Received: from isvw20.fujixerox.co.jp ([129.249.27.140]) by mx20.fujixerox.co.jp with ESMTP id o3D8O3PP000171 for ; Tue, 13 Apr 2010 17:24:03 +0900 (JST) Received: from ms21.fujixerox.co.jp (localhost [127.0.0.1]) by isvw20.fujixerox.co.jp with ESMTP id o3D8O36G003839 for ; Tue, 13 Apr 2010 17:24:03 +0900 (JST) Received: from mailgw1.fujixerox.com ([13.198.8.180]) by ms21.fujixerox.co.jp with ESMTP id o3D8O24o014427 for ; Tue, 13 Apr 2010 17:24:03 +0900 (JST) X-IronPort-AV: E=Sophos;i="4.52,196,1270396800"; d="scan'208";a="122943340" Received: from sgpaphq-exhub01.dc01.fujixerox.net ([13.198.8.235]) by mailgw1.fujixerox.com with ESMTP; 13 Apr 2010 16:24:02 +0800 Received: from SGPAPHQ-EXSCC01.dc01.fujixerox.net ([13.198.8.229]) by sgpaphq-exhub01.dc01.fujixerox.net ([13.198.8.235]) with mapi; Tue, 13 Apr 2010 16:24:02 +0800 From: "Xu, Qiang (FXSGSC)" To: libssh2 development Date: Tue, 13 Apr 2010 16:24:01 +0800 Subject: RE: libssh2 hangs in channel_close() Thread-Topic: libssh2 hangs in channel_close() Thread-Index: Acra4FIbV7wq8yR4Qo+Sol7RQqR5kQAAqh9Q Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> In-Reply-To: <87ochnai9m.fsf@mocca.josefsson.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US MIME-Version: 1.0 X-Spam: exempt X-MAIL-FROM: X-SOURCE-IP: [192.26.96.20] X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se > -----Original Message----- > From: libssh2-devel-bounces@cool.haxx.se > [mailto:libssh2-devel-bounces@cool.haxx.se] On Behalf Of > Simon Josefsson > Sent: Tuesday, April 13, 2010 4:06 PM > To: libssh2 development > Subject: Re: libssh2 hangs in channel_close() > > If OpenSSH server doesn't send EOF, I think libssh2 need to > do something so that it interops with it. I'm using OpenSSH > 5.3p1 from debian, which is fairly modern. > > Maybe we can SEND the EOF but not wait for one? > > It seems like a bug in these other servers to me, if the RFC > permits our old behaviour. Peter, which servers are these? > Naming them, with version numbers, is useful in discussions like this. It is CoreFTP server v1.0: http://www.coreftp.com/server/. And latest FileZilla server also exhibits the same behavior. Peter's check-in is to fix the ticket http://libssh2.stuge.se/ticket/159. Thanks, Xu Qiang _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 10:27:46 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D8RiQe021102; Tue, 13 Apr 2010 10:27:45 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D8RhKt021095 for ; Tue, 13 Apr 2010 10:27:43 +0200 Date: Tue, 13 Apr 2010 10:27:43 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: RE: libssh2 hangs in channel_close() In-Reply-To: Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Tue, 13 Apr 2010, Xu, Qiang (FXSGSC) wrote: >> It seems like a bug in these other servers to me, if the RFC permits our >> old behaviour. Peter, which servers are these? Naming them, with version >> numbers, is useful in discussions like this. > > It is CoreFTP server v1.0: http://www.coreftp.com/server/. And latest > FileZilla server also exhibits the same behavior. Peter's check-in is to fix > the ticket http://libssh2.stuge.se/ticket/159. Exhibit what behavior exactly? If libssh2 skips the waiting for the remote EOF, what happens? Peter's fix added both sending and waiting, and I think what we suggest is that we drop the waiting. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 11:26:14 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9Q4FN004699; Tue, 13 Apr 2010 11:26:12 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9Q3BV004605 for ; Tue, 13 Apr 2010 11:26:03 +0200 Date: Tue, 13 Apr 2010 11:26:03 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: RE: libssh2 hangs in channel_close() In-Reply-To: Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Tue, 13 Apr 2010, Daniel Stenberg wrote: > Exhibit what behavior exactly? If libssh2 skips the waiting for the remote > EOF, what happens? Peter's fix added both sending and waiting, and I think > what we suggest is that we drop the waiting. Here's the specific change I suggest: --- a/src/channel.c +++ b/src/channel.c @@ -2221,9 +2221,8 @@ channel_close(LIBSSH2_CHANNEL * channel) if ((retcode = channel_send_eof(channel))) return retcode; - if (!channel->remote.eof) - if ((retcode = channel_wait_eof(channel))) - return retcode; + /* ignore if we have received a remote eof or not, as it is now too + late for us to wait for it. Continue closing! */ if (channel->close_state == libssh2_NB_state_idle) { _libssh2_debug(session, LIBSSH2_TRACE_CONN, "Closing channel %lu/%lu", -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 11:35:07 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9Z3Zo009748; Tue, 13 Apr 2010 11:35:06 +0200 Received: from mo.mxl.2iij.net (mo503.mxl.2iij.net [210.149.48.21]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9Z0RI009417 for ; Tue, 13 Apr 2010 11:35:01 +0200 Received: by mo.mxl.2iij.net (mxl-mo503) id o3D9Z1nu008956; Tue, 13 Apr 2010 18:35:01 +0900 Received: from unknown [192.26.96.21] (EHLO mx21.fujixerox.co.jp) by mas501a.mxl.2iij.net (mxl_mta-5.7.1-5) with ESMTP id 5ca34cb4.3610180496.8777.00-025.8462.mas501a.mxl.2iij.net (envelope-from ); Tue, 13 Apr 2010 18:35:01 +0900 (JST) Received: from isvw21.fujixerox.co.jp ([129.249.27.141]) by mx21.fujixerox.co.jp with ESMTP id o3D9Z1jt016430 for ; Tue, 13 Apr 2010 18:35:01 +0900 (JST) Received: from ms21.fujixerox.co.jp (localhost [127.0.0.1]) by isvw21.fujixerox.co.jp with ESMTP id o3D9Z0w4006130 for ; Tue, 13 Apr 2010 18:35:00 +0900 (JST) Received: from mailgw2.fujixerox.com ([13.198.8.181]) by ms21.fujixerox.co.jp with ESMTP id o3D9Yx2a023750 for ; Tue, 13 Apr 2010 18:35:00 +0900 (JST) X-IronPort-AV: E=Sophos;i="4.52,196,1270396800"; d="scan'208";a="83725829" Received: from sgpaphq-exhub01.dc01.fujixerox.net ([13.198.8.235]) by mailgw2.fujixerox.com with ESMTP; 13 Apr 2010 17:34:59 +0800 Received: from SGPAPHQ-EXSCC01.dc01.fujixerox.net ([13.198.8.229]) by sgpaphq-exhub01.dc01.fujixerox.net ([13.198.8.235]) with mapi; Tue, 13 Apr 2010 17:34:59 +0800 From: "Xu, Qiang (FXSGSC)" To: libssh2 development Date: Tue, 13 Apr 2010 17:34:59 +0800 Subject: RE: libssh2 hangs in channel_close() Thread-Topic: libssh2 hangs in channel_close() Thread-Index: Acra40NcwjTxH/gdQICN1KKOPw1iIQACWhgA Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US MIME-Version: 1.0 X-Spam: exempt X-MAIL-FROM: X-SOURCE-IP: [192.26.96.21] X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se > -----Original Message----- > From: libssh2-devel-bounces@cool.haxx.se > [mailto:libssh2-devel-bounces@cool.haxx.se] On Behalf Of > Daniel Stenberg > Sent: Tuesday, April 13, 2010 4:28 PM > To: libssh2 development > Subject: RE: libssh2 hangs in channel_close() > > Exhibit what behavior exactly? If libssh2 skips the waiting > for the remote EOF, what happens? Peter's fix added both > sending and waiting, and I think what we suggest is that we > drop the waiting. Sorry for taking so long to reply. I haven't touched CoreFTP Server for several months. It takes me a long time to re-install it, configure it, and re-build libssh2-1.2.4 (without waiting for the remote eof). So far, so good. It seems quite OK to discard the waiting in my testing. Still, I hope Peter can give some comment on this issue. By the way, the behavior of CoreFTP Server and FileZilla Server is already documented at http://libssh2.stuge.se/ticket/159, please click it to get the detail. Thanks, Xu Qiang _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 11:38:49 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9clD1010613; Tue, 13 Apr 2010 11:38:48 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9cjAK010591 for ; Tue, 13 Apr 2010 11:38:45 +0200 Date: Tue, 13 Apr 2010 11:38:45 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: RE: libssh2 hangs in channel_close() In-Reply-To: Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Tue, 13 Apr 2010, Xu, Qiang (FXSGSC) wrote: > the behavior of CoreFTP Server and FileZilla Server is already documented at > http://libssh2.stuge.se/ticket/159, please click it to get the detail. Right, but that conclusion lumps together the *sending* of SSH_MSG_CHANNEL_EOF with the *waiting* for SSH_MSG_CHANNEL_EOF, and I'm curious if that really has any merit. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 11:45:21 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9jIuB019054; Tue, 13 Apr 2010 11:45:20 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9j24H018058 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Tue, 13 Apr 2010 11:45:02 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3D9j1VS009928 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Tue, 13 Apr 2010 11:45:03 +0200 From: Simon Josefsson To: libssh2 development Subject: Re: libssh2 hangs in channel_close() References: <87ochnai9m.fsf@mocca.josefsson.org> OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100413:libssh2-devel@cool.haxx.se::bupM61KmnY42eWOd:6YXA Date: Tue, 13 Apr 2010 11:45:01 +0200 In-Reply-To: (Daniel Stenberg's message of "Tue, 13 Apr 2010 11:38:45 +0200 (CEST)") Message-ID: <87k4sbeleq.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_00,RDNS_DYNAMIC, SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se I wonder why the curl self-tests for libssh2 didn't trigger this problem too? Don't they use libssh2_channel_free? What server is used? /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 11:48:35 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9mXCb022183; Tue, 13 Apr 2010 11:48:34 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9mV0b022174 for ; Tue, 13 Apr 2010 11:48:31 +0200 Date: Tue, 13 Apr 2010 11:48:31 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: libssh2 hangs in channel_close() In-Reply-To: <87k4sbeleq.fsf@mocca.josefsson.org> Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> <87k4sbeleq.fsf@mocca.josefsson.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Tue, 13 Apr 2010, Simon Josefsson wrote: > I wonder why the curl self-tests for libssh2 didn't trigger this problem > too? Don't they use libssh2_channel_free? What server is used? libcurl uses libssh2_channel_free, yes and we run all SCP/SFTP tests against OpenSSH. The only likely reason I can think of is that in the curl case we don't close down the connection/channel quite as fast so that we get the remote EOF before libssh2_channel_free is called. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 11:48:48 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9mlvP022270; Tue, 13 Apr 2010 11:48:48 +0200 Received: from mo.mxl.2iij.net (mo502.mxl.2iij.net [210.149.48.20]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9mix5022262 for ; Tue, 13 Apr 2010 11:48:45 +0200 Received: by mo.mxl.2iij.net (mxl-mo502) id o3D9mkhg018036; Tue, 13 Apr 2010 18:48:46 +0900 Received: from unknown [192.26.96.21] (EHLO mx21.fujixerox.co.jp) by mas506a.mxl.2iij.net (mxl_mta-5.7.1-5) with ESMTP id efd34cb4.3622624144.22881.00-047.20966.mas506a.mxl.2iij.net (envelope-from ); Tue, 13 Apr 2010 18:48:46 +0900 (JST) Received: from isvw21.fujixerox.co.jp ([129.249.27.141]) by mx21.fujixerox.co.jp with ESMTP id o3D9mkx9018844 for ; Tue, 13 Apr 2010 18:48:46 +0900 (JST) Received: from ms21.fujixerox.co.jp (localhost [127.0.0.1]) by isvw21.fujixerox.co.jp with ESMTP id o3D9mk6m010434 for ; Tue, 13 Apr 2010 18:48:46 +0900 (JST) Received: from mailgw2.fujixerox.com ([13.198.8.181]) by ms21.fujixerox.co.jp with ESMTP id o3D9mjo6025632 for ; Tue, 13 Apr 2010 18:48:45 +0900 (JST) X-IronPort-AV: E=Sophos;i="4.52,196,1270396800"; d="scan'208";a="83726630" Received: from sgpaphq-exhub01.dc01.fujixerox.net ([13.198.8.235]) by mailgw2.fujixerox.com with ESMTP; 13 Apr 2010 17:48:44 +0800 Received: from SGPAPHQ-EXSCC01.dc01.fujixerox.net ([13.198.8.229]) by sgpaphq-exhub01.dc01.fujixerox.net ([13.198.8.235]) with mapi; Tue, 13 Apr 2010 17:48:43 +0800 From: "Xu, Qiang (FXSGSC)" To: libssh2 development Date: Tue, 13 Apr 2010 17:48:41 +0800 Subject: RE: libssh2 hangs in channel_close() Thread-Topic: libssh2 hangs in channel_close() Thread-Index: Acra7TGEMy4CifFqRHikz2j8hiwoQgAAZZkQ Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US MIME-Version: 1.0 X-Spam: exempt X-MAIL-FROM: X-SOURCE-IP: [192.26.96.21] X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se > -----Original Message----- > From: libssh2-devel-bounces@cool.haxx.se > [mailto:libssh2-devel-bounces@cool.haxx.se] On Behalf Of > Daniel Stenberg > Sent: Tuesday, April 13, 2010 5:39 PM > To: libssh2 development > Subject: RE: libssh2 hangs in channel_close() > > Right, but that conclusion lumps together the *sending* of > SSH_MSG_CHANNEL_EOF with the *waiting* for > SSH_MSG_CHANNEL_EOF, and I'm curious if that really has any merit. Just take a look at http://www.ietf.org/rfc/rfc4254.txt, and found it said "A party MAY send SSH_MSG_CHANNEL_CLOSE without having sent or received SSH_MSG_CHANNEL_EOF". Maybe Peter added the waiting code to cater to latter part of "sent or received SSH_MSG_CHANNEL_EOF". Peter, any comment? Thanks, Xu Qiang _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 11:52:22 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9qJTi023977; Tue, 13 Apr 2010 11:52:21 +0200 Received: from mo.mxl.2iij.net (mo503.mxl.2iij.net [210.149.48.21]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9qGXJ023974 for ; Tue, 13 Apr 2010 11:52:17 +0200 Received: by mo.mxl.2iij.net (mxl-mo503) id o3D9qJqf024064; Tue, 13 Apr 2010 18:52:19 +0900 Received: from unknown [192.26.96.21] (EHLO mx21.fujixerox.co.jp) by mas503a.mxl.2iij.net (mxl_mta-5.7.1-5) with ESMTP id 3de34cb4.3602406288.7749.00-001.7141.mas503a.mxl.2iij.net (envelope-from ); Tue, 13 Apr 2010 18:52:19 +0900 (JST) Received: from isvw21.fujixerox.co.jp ([129.249.27.141]) by mx21.fujixerox.co.jp with ESMTP id o3D9qIbo019363 for ; Tue, 13 Apr 2010 18:52:18 +0900 (JST) Received: from ms21.fujixerox.co.jp (localhost [127.0.0.1]) by isvw21.fujixerox.co.jp with ESMTP id o3D9qIcI011662 for ; Tue, 13 Apr 2010 18:52:18 +0900 (JST) Received: from mailgw2.fujixerox.com ([13.198.8.181]) by ms21.fujixerox.co.jp with ESMTP id o3D9qHpM026082 for ; Tue, 13 Apr 2010 18:52:18 +0900 (JST) X-IronPort-AV: E=Sophos;i="4.52,196,1270396800"; d="scan'208";a="83726739" Received: from sgpaphq-exhub02.dc01.fujixerox.net ([13.198.8.236]) by mailgw2.fujixerox.com with ESMTP; 13 Apr 2010 17:52:17 +0800 Received: from SGPAPHQ-EXSCC01.dc01.fujixerox.net ([13.198.8.229]) by sgpaphq-exhub02.dc01.fujixerox.net ([13.198.8.236]) with mapi; Tue, 13 Apr 2010 17:52:17 +0800 From: "Xu, Qiang (FXSGSC)" To: libssh2 development Date: Tue, 13 Apr 2010 17:52:16 +0800 Subject: RE: libssh2 hangs in channel_close() Thread-Topic: libssh2 hangs in channel_close() Thread-Index: Acra7h4WELBizInCS+ClwllvOKA6HgAAVBoA Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> <87k4sbeleq.fsf@mocca.josefsson.org> In-Reply-To: <87k4sbeleq.fsf@mocca.josefsson.org> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US MIME-Version: 1.0 X-Spam: exempt X-MAIL-FROM: X-SOURCE-IP: [192.26.96.21] X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se > -----Original Message----- > From: libssh2-devel-bounces@cool.haxx.se > [mailto:libssh2-devel-bounces@cool.haxx.se] On Behalf Of > Simon Josefsson > Sent: Tuesday, April 13, 2010 5:45 PM > To: libssh2 development > Subject: Re: libssh2 hangs in channel_close() > > I wonder why the curl self-tests for libssh2 didn't trigger > this problem too? Don't they use libssh2_channel_free? What > server is used? It seems the most popular sftp server, OpenSSH, works well without Peter's fix for ticket 159. That is to say, OpenSSH sftp server works according to RFC4254, while FileZilla and CoreFTP server don't. Regards, Xu Qiang _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 11:59:32 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9xTVM026761; Tue, 13 Apr 2010 11:59:32 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3D9xRgU026740 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Tue, 13 Apr 2010 11:59:27 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3D9xP1A010316 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Tue, 13 Apr 2010 11:59:30 +0200 From: Simon Josefsson To: libssh2 development Subject: Re: libssh2 hangs in channel_close() References: <87ochnai9m.fsf@mocca.josefsson.org> <87k4sbeleq.fsf@mocca.josefsson.org> OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100413:libssh2-devel@cool.haxx.se::1C2eB9GfsJihgml9:3o22 Date: Tue, 13 Apr 2010 11:59:25 +0200 In-Reply-To: (Qiang Xu's message of "Tue, 13 Apr 2010 17:52:16 +0800") Message-ID: <87d3y3ekqq.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=-1.5 required=5.0 tests=AWL,BAYES_00, DATE_IN_FUTURE_03_06,RDNS_DYNAMIC,SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se "Xu, Qiang (FXSGSC)" writes: >> -----Original Message----- >> From: libssh2-devel-bounces@cool.haxx.se >> [mailto:libssh2-devel-bounces@cool.haxx.se] On Behalf Of >> Simon Josefsson >> Sent: Tuesday, April 13, 2010 5:45 PM >> To: libssh2 development >> Subject: Re: libssh2 hangs in channel_close() >> >> I wonder why the curl self-tests for libssh2 didn't trigger >> this problem too? Don't they use libssh2_channel_free? What >> server is used? > > It seems the most popular sftp server, OpenSSH, works well without > Peter's fix for ticket 159. That is to say, OpenSSH sftp server works > according to RFC4254, while FileZilla and CoreFTP server don't. I'm using OpenSSH (5.3p1) and the libssh2 self check fails every time with it, suggesting that OpenSSH doesn't send the EOF. I don't use SFTP though. Maybe timing issues are involved, as Daniel suggested. /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 18:53:50 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3DGrZJe031907; Tue, 13 Apr 2010 18:53:47 +0200 Received: from donder.nssi.telus.com (donder.nssi.telus.com [208.38.59.82]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3DDIAfv012675 for ; Tue, 13 Apr 2010 15:18:11 +0200 DomainKey-Signature: s=donder.nssi; d=telus.com; c=nofws; q=dns; h=X-IronPort-Anti-Spam-Filtered: X-IronPort-Anti-Spam-Result:X-IronPort-AV:Received: Received:From:To:Date:Subject:Thread-Topic:Thread-Index: Message-ID:Accept-Language:Content-Language: X-MS-Has-Attach:X-MS-TNEF-Correlator:acceptlanguage: Content-Type:MIME-Version; b=GmQh5ABUlNKujK74vW4XLceOJD97+Xp4vyBMi//K5/fqaBNQeAf6P2gP a/1brzjxnQwjqxKw0gbP+q+hCz4TQOYMPC6OUh1glZv39petdxVS6XsdR ytDkNauUIWjQLlmqfpR/x8zWEaqrmJCezsci4NbdHxusOnUq+LcX+X4t8 w=; X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApYLAHkLxEuOP4Bp/2dsb2JhbABwT5oJcbwXgnSCGQQ X-IronPort-AV: E=Sophos;i="4.52,197,1270425600"; d="gif'147?scan'147,208,217,147";a="123254866" Received: from unknown (HELO WP40057.corp.ads) ([142.63.128.105]) by donder-o.nssi.telus.com with ESMTP/TLS/AES128-SHA; 13 Apr 2010 13:18:14 +0000 Received: from wp40066.corp.ads ([::1]) by WP40057.corp.ads ([::1]) with mapi; Tue, 13 Apr 2010 09:18:13 -0400 From: Robert-Jean Denault To: "'libssh2-devel@cool.haxx.se'" Date: Tue, 13 Apr 2010 09:18:11 -0400 Subject: How do you setup a proxy http tunnel for ssh2 and sftp Thread-Topic: How do you setup a proxy http tunnel for ssh2 and sftp Thread-Index: AcrbC8PnoM/qgmcYTfCLdOue2+0QkQ== Message-ID: <349D8F9FFE9C194B956A7A170DA67BDB43233D7400@WP40066.corp.ads> Accept-Language: en-US, en-CA Content-Language: fr-FR X-MS-Has-Attach: yes X-MS-TNEF-Correlator: acceptlanguage: en-US, en-CA MIME-Version: 1.0 X-Mailman-Approved-At: Tue, 13 Apr 2010 18:53:33 +0200 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1391889527==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============1391889527== Content-Language: fr-FR Content-Type: multipart/related; boundary="_004_349D8F9FFE9C194B956A7A170DA67BDB43233D7400WP40066corpad_"; type="multipart/alternative" --_004_349D8F9FFE9C194B956A7A170DA67BDB43233D7400WP40066corpad_ Content-Type: multipart/alternative; boundary="_000_349D8F9FFE9C194B956A7A170DA67BDB43233D7400WP40066corpad_" --_000_349D8F9FFE9C194B956A7A170DA67BDB43233D7400WP40066corpad_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable I have a server hidden behind a firewall. This server has access to an HTT= P proxy (squid). The ssh man pages describe how to setup a proxyTunnel, bu= t I would like to do the same thing programmatically. Any suggestions? Regards, Robert Denault Programmeur-analyste principal / Senior Programmer-Analyst TELUS Solutions en sant=E9 | avec l'expertise d'Emergis TELUS Health Solutions | backed by Emergis T : (450) 928 6000 x 3740 T : 1 (866) 363 7447 x 3740 robert.denault@telus.com telussante.com telushealth.com [cid:image001.gif@01CADAEA.3949F0F0] L'information contenue dans ce message, y compris les fichiers joints, est = de nature exclusive et confidentielle, et ne doit =EAtre utilis=E9e que par= le destinataire. Ce message peut contenir des renseignements r=E9serv=E9s,= sujets aux dispositions des lois sur la confidentialit=E9. En conservant e= t en utilisant les renseignements contenus dans ce message, le destinataire= autoris=E9 s'engage =E0 prot=E9ger l'information qu'il contient contre la = perte, la divulgation, le vol ou l'exposition =E0 tout risque, en appliquan= t des pr=E9cautions au moins =E9gales =E0 celles qu'il utilise pour la prot= ection de ses propres renseignements personnels. Toute diffusion ou utilisa= tion de l'information contenue dans ce message par une personne autre que s= on destinataire explicite constitue un acte non autoris=E9 et potentielleme= nt illicite. Si vous avez re=E7u ce message par erreur, veuillez nous avise= r en r=E9pondant =E0 l'exp=E9diteur et d=E9truire toutes les copies du mess= age en votre possession. The information contained herein, including any attachments, is proprietary= and confidential and is intended for the exclusive use of the addressee. I= t also may contain privileged information and/or personal information subje= ct to privacy legislation. The authorized addressee of this information, by= its retention and use, agrees to protect the information contained herein = from loss, disclosure, theft or compromise with at least the same care it e= mploys to protect its own confidential information. Any dissemination or us= e of this information by a person other than the intended recipient is unau= thorized and may be illegal. If you have received this e-mail in error, ple= ase notify us immediately by reply e-mail and destroy all copies. --_000_349D8F9FFE9C194B956A7A170DA67BDB43233D7400WP40066corpad_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable

I have a server hidden behind a firewall.=A0 This serv= er has access to an HTTP proxy (squid).=A0 The ssh man pages describe how to setup= a proxyTunnel, but I would like to do the same thing programmatically.=A0 Any suggestions?

 

Regards,

R= obert Denault
Programmeur-analyste principal / Senior Programmer-Analyst

T= ELUS Solutions en sant=E9 | avec l’expertise d’Emergis
TELUS Health Solutions | backed by Emergis
T : (450) 928 6000 x 3740
T : 1 (866) 363 7447 x 3740
robert.denault@telus.com 
telussante.com  telushealth.com

 

3D"http://emergisweb/emergis/communications/promo/THS_bbE_Fre_RGB.gif"=

L'information contenue dans ce message, y compris les fichiers joints, est de nature exclusive et confidentielle, et ne doit =EAtre utilis=E9e que par le destin= ataire. Ce message peut contenir des renseignements r=E9serv=E9s, sujets aux dispos= itions des lois sur la confidentialit=E9. En conservant et en utilisant les renseignements contenus dans ce message, le destinataire autoris=E9 s'engag= e =E0 prot=E9ger l'information qu'il contient contre la perte, la divulgation, le= vol ou l'exposition =E0 tout risque, en appliquant des pr=E9cautions au moins = =E9gales =E0 celles qu'il utilise pour la protection de ses propres renseignements personnels. Toute diffusion ou utilisation de l'information contenue dans c= e message par une personne autre que son destinataire explicite constitue un = acte non autoris=E9 et potentiellement illicite. Si vous avez re=E7u ce message = par erreur, veuillez nous aviser en r=E9pondant =E0 l'exp=E9diteur et d=E9truir= e toutes les copies du message en votre possession.<= /p>

Th= e information contained herein, including any attachments, is proprietary and confidential and is intended for the exclusive use of the addressee. It als= o may contain privileged information and/or personal information subject to privacy legislation. The authorized addressee of this information, by its retention and use, agrees to protect the information contained herein from loss, disclosure, theft or compromise with at least the same care it employ= s to protect its own confidential information. Any dissemination or use of this information by a person other than the intended recipient is unauthorized a= nd may be illegal. If you have received this e-mail in error, please notify us immediately by reply e-mail and destroy all copies.

 

--_000_349D8F9FFE9C194B956A7A170DA67BDB43233D7400WP40066corpad_-- --_004_349D8F9FFE9C194B956A7A170DA67BDB43233D7400WP40066corpad_ Content-Type: image/gif; name="image001.gif" Content-Description: image001.gif Content-Disposition: inline; filename="image001.gif"; size=1420; creation-date="Tue, 13 Apr 2010 09:18:05 GMT"; modification-date="Tue, 13 Apr 2010 09:18:05 GMT" Content-ID: Content-Transfer-Encoding: base64 R0lGODlh4AAiANUrAPTx9oJfm5l8rbuoyd3U5I5upGbMAOnj7ce30rCav2Azf2tCiNnywKDfYIzZ QHnSIIPWMOz54FQldvb88LPmgHDPENDvsLzpkKnicMbsoJbcUOP20JLFXVc7aG7DF1NaRFBDUWNK cZuIpmCpFICJb4yjcmihK9LF26SLtkkWbXdQkv///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACsALAAAAADgACIAAAb/wJVw SCwah5ZHZXIUEgYoQHNKrVqv2Kx2y+16v8OG4WGIEJ8ClQpFALvf8Lh8ThdOIIYLBIJWpRYCCFJ1 hIWGh4hWdyMkHAYgf4GDRANqlpYCQ5WXakWWbUafQpuZRCd+KakKbJUoia+wcwcIAiGpHwYcglQo qb6+KkO9v6lFvidHx0LDwUMnxKonCykCB7HX2FcAJygBEr4dAiUGDVfcKKirKAPCqijvrkTKRvPM RAHRBAgFCQAHJ6CyCRRIIEGBacBEmPCwAQO5LfaKREyWChm9istSNROSbtfAjwTTEFtjEY8FDQ8h ajQy7JfFIfOMYVwxcUUBYoAmgdx56GYK/wkBULwUIqYBmQtdamYkNnRFTHkzawJA9UuCNZ5YCfEL WMSCga8QNnhRStPdu6swZ8pMYZEsgW7fUsXLSjcRgwoGKlCoMsHCFLJk07KlmILdCgErh6BdAcBX qbqQ6zBw8FWDGSoZHFw+Atjsu7UF4BleocCdgLgBiBSQwI+WrwSRY8fJQObrEioMIGCo0hna2l8b B0D7yTUuTp2yk2eZQKG2AzG7m0x+wMAKKSObOHnipOLxihMBSv8psHjFPoQpVMBWzh4LAzFfHVSn YKC6kckGKDBpz78/lgjNfWWAfENckB8REVxAhmb+NejgEQ4J2MBmQkSAFwQUYIDHgPY96P/hg3g9 cMF+RmyAUnwUUPjhivxl0IBfLMYoI0/bnGDjjTjmqOOOPPboY1MzBinkkEQWaeSRSCapJFZcLRnj XJrQNJBFU3EFZBcqcAMGO1BaYaMrAVwyVl0nDLLNMqGscNUJaBFw1ZlFlOkMcnKq+dIBoMQzwGhC NMXmEXVuo5MKCMAGpxF1fjeomn2+CSSeNmbS5ZkABJSoEHhiypicoYWGzVTdIAAeOm9JuYIKAygA BagFDHAKCgUggEBQKgxywBoBIAArOm/iKiutKwCCggCV7EnrJEP5mtphCOAKkLNDZFnpGlkuMC06 3Qxwa6jYqnNqNwkQQG1AApSbJQKmckT/a2gBgBoAFMKGliUK26pQUJhdJkLAsicUIMUBnsYTTDAo JIDuCgGcsN4a7PxJUxsABGWNlivsu2kpmSxL8KmjjPbSE2rCak131gBQgL+MjdZMu2oWIG6tKBwc FMRBIbMxywOwDLAQJi9jUZhqpCFFrafuKURQ7DSTADda/gPSrFluFJSpA9M0l1AW1ZpAACyfikk8 FK+QcwAFyWuqK64oYInHigkQGhuBJHCJAPlyjDAmp0p6VQFzCyzlPrkC3V2fYLdFRDOIo7CAJUKZ +uUKW7v8kT6MqYAywK6UogDH6xiWcNZRmGcYG4xN/V08BCAzFeJnH2a30X0Kg4yWlgNQqQ1jJ//7 2MpSmAxFAdwcTFLpfrMihAA6F8Cz8ocZHi1HHME+PNEJr9PGAXXDwuoA4vLqCrubB5AAmMi7mvWr AbxJa6mn84xrzuaOj6YACQxQAPLIOhNUmGIrXy8B++LV8ypGq1lVDnnZihip4rErhLmNDesTxv2y dDTt2K1WAUgDFJBBgJMJgBvbypWTDnGlOmRvJygj3QhhUUI68Iku/aLbCmOBnBlmIQgAOw== --_004_349D8F9FFE9C194B956A7A170DA67BDB43233D7400WP40066corpad_-- --===============1391889527== 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 --===============1391889527==-- From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 23:05:27 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3DL5Fbo007757; Tue, 13 Apr 2010 23:05:25 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3DL5EsX007736 for ; Tue, 13 Apr 2010 23:05:14 +0200 Date: Tue, 13 Apr 2010 23:05:14 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: RE: libssh2 hangs in channel_close() In-Reply-To: Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Tue, 13 Apr 2010, Daniel Stenberg wrote: > Here's the specific change I suggest: I've pushed this change now and I intend to proceed and make a release that looks like this. We should of course continue working on improve libssh2, and we'll soon make another release anyway. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 13 23:27:17 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3DLRCYO024553; Tue, 13 Apr 2010 23:27:16 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3DLRBWi024472 for ; Tue, 13 Apr 2010 23:27:11 +0200 Date: Tue, 13 Apr 2010 23:27:11 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: ANNOUNCE: libssh2 1.2.5 Message-ID: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi friends, I'm happy to once again announce a libssh2 release. Version 1.2.5 was just uploaded to the web site at http://www.libssh2.org/ This release includes the following changes: o Added Add keep-alive support: libssh2_keepalive_config() and libssh2_keepalive_send() o Added libssh2_knownhost_addc(), libssh2_init() and libssh2_exit() o Added LIBSSH2_SFTP_S_IS***() macros This release includes the following bugfixes: o fix memory leak in libssh2_session_startup() o added missing error codes - shown as hangs in blocking mode o fix memory leak in userauth_keyboard_interactive() o libssh2_knownhost_del: fix write to freed memory o Send and receive channel EOF before sending SSH_MSG_CHANNEL_CLOSE o Use AES-CTR from OpenSSL when available o Fixed gettimeofday to compile with Visual C++ 6 o NULL dereference when window adjusting a non-existing channel o avoid using poll on interix and mac os x systems o fix scp memory leak o Correctly clear blocking flag after sending multipart packet o Reduce used window sizes by factor 10 o libssh2_userauth_publickey_fromfile_ex() handles a NULL password o sftp_init() deal with _libssh2_channel_write() short returns This release would not have looked like this without help, code, reports and advice from friends like these: Peter Stuge, Simon Josefsson, Alexander Lamaison, Paul Querna, Suyog Jadhav, Lars Nordin Thanks! (and sorry if I forgot to mention someone) -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 14 00:19:03 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3DMIt1s028962; Wed, 14 Apr 2010 00:19:02 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3DMIrv7028944 for ; Wed, 14 Apr 2010 00:18:53 +0200 Date: Wed, 14 Apr 2010 00:18:53 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: How do you setup a proxy http tunnel for ssh2 and sftp In-Reply-To: <349D8F9FFE9C194B956A7A170DA67BDB43233D7400@WP40066.corp.ads> Message-ID: References: <349D8F9FFE9C194B956A7A170DA67BDB43233D7400@WP40066.corp.ads> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Tue, 13 Apr 2010, Robert-Jean Denault wrote: > I have a server hidden behind a firewall. This server has access to an HTTP > proxy (squid). The ssh man pages describe how to setup a proxyTunnel, but I > would like to do the same thing programmatically. Any suggestions? Sure. A common way is to do the HTTP CONNECT request to the proxy to get a "tunnel" through, as once you've got that you can hand over the socket to libssh2 and it can continue on from there just fine. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 14 07:56:07 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3E5trgo008087; Wed, 14 Apr 2010 07:56:05 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3E5tqtu008083 for ; Wed, 14 Apr 2010 07:55:52 +0200 Received: (qmail 24547 invoked by uid 501); 14 Apr 2010 05:55:53 -0000 Message-ID: <20100414055553.24546.qmail@stuge.se> Date: Wed, 14 Apr 2010 07:55:53 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: ANNOUNCE: libssh2 1.2.5 Mail-Followup-To: libssh2-devel@cool.haxx.se References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg wrote: > This release includes the following bugfixes: > > o Send and receive channel EOF before sending SSH_MSG_CHANNEL_CLOSE Oops. //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 14 10:36:31 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3E8aKI2009818; Wed, 14 Apr 2010 10:36:30 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3E8aJxi009811 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Wed, 14 Apr 2010 10:36:19 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3E8aJEt011532 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Wed, 14 Apr 2010 10:36:21 +0200 From: Simon Josefsson To: libssh2 development Subject: ANNOUNCE: Windows build for libssh2 1.2.5 References: OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100414:libssh2-devel@cool.haxx.se::oqrT0WO+xJoUB6j1:ibK Date: Wed, 14 Apr 2010 10:36:19 +0200 In-Reply-To: (Daniel Stenberg's message of "Tue, 13 Apr 2010 23:27:11 +0200 (CEST)") Message-ID: <87ochm4eik.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=0.0 required=5.0 tests=AWL,BAYES_00, DATE_IN_FUTURE_24_48,RDNS_DYNAMIC,SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg writes: > Hi friends, > > I'm happy to once again announce a libssh2 release. Version 1.2.5 was > just uploaded to the web site at http://www.libssh2.org/ Congratulations! Building version 1.2.5 with MinGW and running its self-tests under Wine worked fine, so I prepared Windows binaries for the release: http://josefsson.org/gnutls4win/libssh2-1.2.5.zip http://josefsson.org/gnutls4win/libssh2-1.2.5.zip.sig http://josefsson.org/gnutls4win/mingw32-libssh2_1.2.5-1_all.deb Happy hacking, /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 14 13:58:06 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EBvqYN032122; Wed, 14 Apr 2010 13:58:03 +0200 Received: from goalkeeper.city-fan.org (goalkeeper.city-fan.org [212.56.100.58]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EANdVV030431 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Wed, 14 Apr 2010 12:23:40 +0200 Received: from roary.uk.virtensys.com (outbound-nat-153.uk.virtensys.com [86.15.121.153]) (authenticated bits=0) by goalkeeper.city-fan.org (8.14.4/8.14.4) with ESMTP id o3EANfRI005216 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO) for ; Wed, 14 Apr 2010 11:23:42 +0100 Message-ID: <4BC597AD.3000408@city-fan.org> Date: Wed, 14 Apr 2010 11:23:41 +0100 From: Paul Howarth User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100330 Fedora/3.0.4-1.fc12 Thunderbird/3.0.4 MIME-Version: 1.0 To: libssh2-devel@cool.haxx.se Subject: AES-CTR check in libssh2 1.2.5 checking for wrong function? Content-Type: multipart/mixed; boundary="------------040308050006050405050406" X-Mailman-Approved-At: Wed, 14 Apr 2010 13:57:51 +0200 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se This is a multi-part message in MIME format. --------------040308050006050405050406 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, I noticed when building libssh2 1.2.5 on Fedora that AES-CTR was disabled so I poked around a bit to find out why. It seems that Fedora (and, judging from list archives, some other distributions too) disable these functions so it's not surprising that libssh2 can't find them at configure time. However, I believe the configure script is checking for the wrong function anyway, namely EVP_aes128_ctr instead of EVP_aes_128_ctr. Patch attached, though I've no test system available that provides this function to check that it does actually detect the function correctly. Cheers, Paul. --------------040308050006050405050406 Content-Type: text/x-patch; name="libssh2-1.2.5-AES-CTR.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="libssh2-1.2.5-AES-CTR.patch" diff -up libssh2-1.2.5/src/openssl.c.orig libssh2-1.2.5/src/openssl.c --- libssh2-1.2.5/src/openssl.c.orig 2010-03-23 20:59:12.000000000 +0000 +++ libssh2-1.2.5/src/openssl.c 2010-04-14 09:47:51.030100005 +0100 @@ -201,7 +201,7 @@ _libssh2_cipher_crypt(_libssh2_cipher_ct return ret == 1 ? 0 : 1; } -#if LIBSSH2_AES_CTR && !defined(HAVE_EVP_AES128_CTR) +#if LIBSSH2_AES_CTR && !defined(HAVE_EVP_AES_128_CTR) #include diff -up libssh2-1.2.5/src/openssl.h.orig libssh2-1.2.5/src/openssl.h --- libssh2-1.2.5/src/openssl.h.orig 2010-03-23 20:59:12.000000000 +0000 +++ libssh2-1.2.5/src/openssl.h 2010-04-14 09:46:50.134101178 +0100 @@ -199,7 +199,7 @@ int _libssh2_dsa_sha1_sign(libssh2_dsa_c #define _libssh2_cipher_aes256 EVP_aes_256_cbc #define _libssh2_cipher_aes192 EVP_aes_192_cbc #define _libssh2_cipher_aes128 EVP_aes_128_cbc -#ifdef HAVE_EVP_AES128_CTR +#ifdef HAVE_EVP_AES_128_CTR #define _libssh2_cipher_aes128ctr EVP_aes_128_ctr #define _libssh2_cipher_aes192ctr EVP_aes_192_ctr #define _libssh2_cipher_aes256ctr EVP_aes_256_ctr diff -up libssh2-1.2.5/configure.ac.orig libssh2-1.2.5/configure.ac --- libssh2-1.2.5/configure.ac.orig 2010-03-23 21:42:58.000000000 +0000 +++ libssh2-1.2.5/configure.ac 2010-04-14 09:45:07.397100515 +0100 @@ -115,7 +115,7 @@ AM_CONDITIONAL(LIBGCRYPT, test "$ac_cv_l if test "$ac_cv_libssl" = "yes"; then save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS $LIBSSL" - AC_CHECK_FUNCS(EVP_aes128_ctr) + AC_CHECK_FUNCS(EVP_aes_128_ctr) LDFLAGS="$save_LDFLAGS" fi @@ -295,7 +295,7 @@ AC_MSG_NOTICE([summary of build options: Compiler: ${CC} Compiler flags: ${CFLAGS} Library types: Shared=${enable_shared}, Static=${enable_static} - Crypto library: openssl: ${ac_cv_libssl:-no} (AES-CTR: ${ac_cv_func_EVP_aes128_ctr:-N/A}) libgcrypt: ${ac_cv_libgcrypt:-no} + Crypto library: openssl: ${ac_cv_libssl:-no} (AES-CTR: ${ac_cv_func_EVP_aes_128_ctr:-N/A}) libgcrypt: ${ac_cv_libgcrypt:-no} Debug build: $enable_debug Path to sshd: $ac_cv_path_SSHD (only for self-tests) libz compression: $ac_cv_libz --------------040308050006050405050406 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 --------------040308050006050405050406-- From libssh2-devel-bounces@cool.haxx.se Wed Apr 14 14:05:50 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EC5l0T011833; Wed, 14 Apr 2010 14:05:50 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EC5k6M011752 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Wed, 14 Apr 2010 14:05:46 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3EC5kps017265 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Wed, 14 Apr 2010 14:05:48 +0200 From: Simon Josefsson To: libssh2 development Subject: Re: AES-CTR check in libssh2 1.2.5 checking for wrong function? References: <4BC597AD.3000408@city-fan.org> OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100414:libssh2-devel@cool.haxx.se::CghQu1kjAyrJUMR1:6Qzo Date: Wed, 14 Apr 2010 14:05:46 +0200 In-Reply-To: <4BC597AD.3000408@city-fan.org> (Paul Howarth's message of "Wed, 14 Apr 2010 11:23:41 +0100") Message-ID: <87k4sa1bol.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=0.0 required=5.0 tests=AWL,BAYES_00, DATE_IN_FUTURE_24_48,RDNS_DYNAMIC,SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Paul Howarth writes: > Hi, > > I noticed when building libssh2 1.2.5 on Fedora that AES-CTR was > disabled so I poked around a bit to find out why. It seems that Fedora > (and, judging from list archives, some other distributions too) > disable these functions so it's not surprising that libssh2 can't find > them at configure time. However, I believe the configure script is > checking for the wrong function anyway, namely EVP_aes128_ctr instead > of EVP_aes_128_ctr. Patch attached, though I've no test system > available that provides this function to check that it does actually > detect the function correctly. Thanks! I pushed this. I'm not sure where EVP_aes128_ctr comes from, I can't find any reference to it in OpenSSL. /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 14 15:18:29 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EDIKYq026202; Wed, 14 Apr 2010 15:18:28 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EDHZVt025889 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Wed, 14 Apr 2010 15:17:35 +0200 Received: (qmail 636 invoked from network); 14 Apr 2010 13:17:39 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 14 Apr 2010 13:17:39 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Wed, 14 Apr 2010 13:17:39 -0000 X-URL: http://libssh2.stuge.se/ Subject: [libssh2] #170: Test on Solaris 10 amd64 hangs X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/170 Message-ID: <108.c156adf5583e28b0179ff7f63c885e19@libssh2.stuge.se> X-Trac-Ticket-ID: 170 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #170: Test on Solaris 10 amd64 hangs --------------------------------------------------------------------------------------+ Reporter: www.google.com/accounts/o8/id?id=AItOawmzyrEUkUDbHXFBqjFbBoB5p8Ik5X9sR1A | Owner: Type: defect | Status: new Priority: normal | Milestone: Component: tests | Version: 1.2.5 Keywords: | Blocking: Blockedby: | --------------------------------------------------------------------------------------+ The second test on Solaris 10 w/Sun Studio 12 for amd64 hangs: {{{ 26093 /bin/bash -c failed=0; all=0; xfail=0; xpass=0; skip=0; \ srcdir=.; export srcd 26111 /bin/sh ./ssh2.sh 26114 /opt/csw/sbin/sshd -f /dev/null -h /home/dam/mgar/pkg/libssh2/trunk/work/solari 26131 /opt/csw/sbin/sshd -f /dev/null -h /home/dam/mgar/pkg/libssh2/trunk/work/solari 26133 -zsh 26116 /home/dam/mgar/pkg/libssh2/trunk/work/solaris9-i386/build-isa- amd64/libssh2-1.2 current10x% pstack 26116 26116: /home/dam/mgar/pkg/libssh2/trunk/work/solaris9-i386/build-isa- amd64/li 00007fffffb4c6ca pollsys (fffffd7fffdff1b8, 1, 0, 0) 00007fffffaeee02 poll () + 52 00007ffffff766f0 _libssh2_wait_socket () + 80 00007ffffff6c2c0 libssh2_channel_free () + 30 0000000000401535 main () + 375 000000000040106c ???????? () current10x% pargs -l 26131 /opt/csw/sbin/sshd -f /dev/null -h /home/dam/mgar/pkg/libssh2/trunk/work/solaris9-i386/build-isa- amd64/libssh2-1.2.5/tests/etc/host -o 'Port 4711' -o 'Protocol 2' -o 'AuthorizedKeysFile /home/dam/mgar/pkg/libssh2/trunk/work/solaris9-i386 /build-isa-amd64/libssh2-1.2.5/tests/etc/user.pub' -o 'UsePrivilegeSeparation no' -o 'StrictModes no' -D -R }}} -- Ticket URL: libssh2 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 Apr 14 22:52:40 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EKqPvB018315; Wed, 14 Apr 2010 22:52:37 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EKqNpW018295 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Wed, 14 Apr 2010 22:52:23 +0200 Received: (qmail 27244 invoked from network); 14 Apr 2010 20:52:30 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 14 Apr 2010 20:52:30 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Wed, 14 Apr 2010 20:52:30 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #170: Test on Solaris 10 amd64 hangs X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/170#comment:1 Message-ID: <117.7042133c8d75c6061dde1369d5c656bc@libssh2.stuge.se> References: <108.c156adf5583e28b0179ff7f63c885e19@libssh2.stuge.se> X-Trac-Ticket-ID: 170 In-Reply-To: <108.c156adf5583e28b0179ff7f63c885e19@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #170: Test on Solaris 10 amd64 hangs --------------------------------------------------------------------------------------+ Reporter: www.google.com/accounts/o8/id?id=AItOawmzyrEUkUDbHXFBqjFbBoB5p8Ik5X9sR1A | Owner: Type: defect | Status: new Priority: normal | Milestone: Component: tests | Version: 1.2.5 Keywords: | Blocking: Blockedby: | --------------------------------------------------------------------------------------+ Comment(by bagder): What SSH server and version is that using? -- Ticket URL: libssh2 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 Apr 14 23:25:53 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ELPkdu008133; Wed, 14 Apr 2010 23:25:53 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ELPhwQ008099 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Wed, 14 Apr 2010 23:25:44 +0200 Received: (qmail 29368 invoked from network); 14 Apr 2010 21:25:51 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 14 Apr 2010 21:25:51 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Wed, 14 Apr 2010 21:25:51 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #114: libssh2_scp_send_ex in libssh2 1.2 doesn't work X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/114#comment:12 Message-ID: <054.1f6770dbdc957892dade0c52c1a2a8c5@libssh2.stuge.se> References: <045.febe1b6c741233701c6b8a8da373ce93@libssh2.stuge.se> X-Trac-Ticket-ID: 114 In-Reply-To: <045.febe1b6c741233701c6b8a8da373ce93@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #114: libssh2_scp_send_ex in libssh2 1.2 doesn't work ------------------------+--------------------------------------------------- Reporter: anonymous | Owner: bagder Type: defect | Status: assigned Priority: normal | Milestone: Component: SCP | Version: 1.2.2 Resolution: | Keywords: Blocking: | Blockedby: ------------------------+--------------------------------------------------- Comment(by bagder): This issue will be closed soon unless we get further details. -- Ticket URL: libssh2 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 Apr 14 23:36:19 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ELaDk1012271; Wed, 14 Apr 2010 23:36:17 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ELaCgO012213 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Wed, 14 Apr 2010 23:36:13 +0200 Received: (qmail 30079 invoked from network); 14 Apr 2010 21:36:19 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 14 Apr 2010 21:36:19 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Wed, 14 Apr 2010 21:36:19 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #126: _libssh2_channel_write returns erroneous value X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/126#comment:2 Message-ID: <057.d80b19a89004d3d597366b39db7ef764@libssh2.stuge.se> References: <048.d8217cb34bc907016a9c7f28d2f83d1e@libssh2.stuge.se> X-Trac-Ticket-ID: 126 In-Reply-To: <048.d8217cb34bc907016a9c7f28d2f83d1e@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #126: _libssh2_channel_write returns erroneous value ---------------------------+------------------------------------------------ Reporter: dseanrussell | Owner: bagder Type: defect | Status: closed Priority: normal | Milestone: Component: | Version: Resolution: fixed | Keywords: Blocking: | Blockedby: ---------------------------+------------------------------------------------ Changes (by bagder): * status: assigned => closed * resolution: => fixed Comment: I've pushed a fix for this as I suggested, available as commit 8b63dc9e59c676991ce62316d203849bc56e2a6c -- Ticket URL: libssh2 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 Apr 15 00:49:18 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EMn6bC025329; Thu, 15 Apr 2010 00:49:17 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EMn4uV025299 for ; Thu, 15 Apr 2010 00:49:04 +0200 Date: Thu, 15 Apr 2010 00:49:04 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: a bit broken Message-ID: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hey commit 8b63dc9e59c676991ce62316d203849bc56e2a6c is not the correct fix, but even if I revert that, my scp_write tests that uploads 800MB to localhost fails, in that the uploaded file ends up MUCH too small!! I'll work on it. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 01:04:49 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3EN4hvZ003108; Thu, 15 Apr 2010 01:04:48 +0200 Received: from web27608.mail.ukl.yahoo.com (web27608.mail.ukl.yahoo.com [217.146.177.227]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3EN4guL002926 for ; Thu, 15 Apr 2010 01:04:42 +0200 Received: (qmail 90875 invoked by uid 60001); 14 Apr 2010 23:04:45 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s1024; t=1271286284; bh=2wl8IGwzQHL3HLvWmU2DVO8Q6TdgFt6evwrCZf1tXv4=; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=RSsfxKoMq+BkUGl/ZmNxLWon/kP3lMqKmsOa6U1XrDUaem6luc0RxecjnmHyqsxQT9T1DGdbbb6KBor8G9AprHFy8duH5KLadzHScN5nKAKenbpf4GCTAa9BxGovzvi7axdSV78SHM7kFmZuhCL1GF/g0Mx4c97SkLL3nax2VF4= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.co.uk; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=O8GO+SzkVOrDHvwioXxM+luN6k6jCyLoLojUrHlahbCZwOcJehfMIceeCPd/HhUrwTWMlxtBSuCDZwFCf6R/k00yrEHBiPrlGaCGMBV7RQb1G1NRB4AxODQIGwhFoETjoS+CkYurfLz43l+U14K6+j+recKULBjHZhF/bw8WJKE=; Message-ID: <997902.89259.qm@web27608.mail.ukl.yahoo.com> X-YMail-OSG: IoGDqOsVM1n0UM2vZ.FoQ2OUiuv26t8x174hAdZkWRHLbxH _fz8DUEx5WW6CAV_K8G56E2KXl4o2Vj5hHD0XgH97CqqU_YJ33JlFZYjPPro EqzrMS.WZgb21a0jWBIRFP6f3BL4gI.KSzeXbPp7dtLsSvIScHhobDaJgCZ7 1E7WWJL42Z6n5VNplK5holX8tlofTwEivjh18NiJNZBnrBehYw9G7gCLWq1h J5XS1YFnJ5N27Jc8p2a4in8EGn_DuCe6TaRpzGS9vQteak5MY3jt3mc3.7hs - Received: from [82.0.89.54] by web27608.mail.ukl.yahoo.com via HTTP; Wed, 14 Apr 2010 23:04:44 GMT X-Mailer: YahooMailClassic/10.1.9 YahooMailWebService/0.8.100.260964 Date: Wed, 14 Apr 2010 23:04:44 +0000 (GMT) From: Lyndon Hill Subject: Compile problem To: libssh2-devel@cool.haxx.se MIME-Version: 1.0 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi I'm trying to cross compile libssh2-1.2.5 for ARMv4 on my Mac but there is an error during the build: libtool: compile: arm-quantumstep-linux-gnu-gcc -DHAVE_CONFIG_H -I../include -I../src -I/Users/lyndon/Zaurus/openssl-1.0.0/include -I/Users/lyndon/Zaurus/zlib-1.2.3/include -g -O2 -c session.c -Wp,-MD,.deps/session.TPlo -fPIC -DPIC -o .libs/session.o session.c: In function `_libssh2_wait_socket': session.c:532: parse error before `struct' My configure line was: $ ./configure --host arm-quantumstep-linux-gnu --with-libz-prefix=/Users/lyndon/Zaurus/zlib-1.2.3 --with-libssl-prefix=/Users/lyndon/Zaurus/openssl-1.0.0 I don't know anything about libssh2 or it's build system, I'm trying to build it so I can link curl to it. I previously compiled libssh2-1.2.2 with OpenSSL 0.9.8l. Thanks! _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 01:19:15 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ENJAcu011215; Thu, 15 Apr 2010 01:19:14 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ENJ8XO011182 for ; Thu, 15 Apr 2010 01:19:08 +0200 Date: Thu, 15 Apr 2010 01:19:08 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: a bit broken In-Reply-To: Message-ID: References: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 15 Apr 2010, Daniel Stenberg wrote: > commit 8b63dc9e59c676991ce62316d203849bc56e2a6c is not the correct fix, but > even if I revert that, my scp_write tests that uploads 800MB to localhost > fails, in that the uploaded file ends up MUCH too small!! Ok, that was mostly a false alarm as it turned out my test case was instead broken and the code worked pretty good. Sorry for this. The commit mentioned above did however have a problem that I've now tried to adress (by adding and using a new _libssh2_transport_drain function). I've failed to actually trigger that code path in my tests so it's a bit theoretical still... -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 01:22:02 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ENM0NB012602; Thu, 15 Apr 2010 01:22:02 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ENLwiF012541 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 15 Apr 2010 01:21:58 +0200 Received: (qmail 4487 invoked from network); 14 Apr 2010 23:22:06 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 14 Apr 2010 23:22:06 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Wed, 14 Apr 2010 23:22:06 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #158: libssh2_sftp_write returns incorrect value X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/158#comment:4 Message-ID: <051.983cf97f9c107db8fa7d41af393214aa@libssh2.stuge.se> References: <042.cc741e9fa450ff795d5980e747278e75@libssh2.stuge.se> X-Trac-Ticket-ID: 158 In-Reply-To: <042.cc741e9fa450ff795d5980e747278e75@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #158: libssh2_sftp_write returns incorrect value ---------------------+------------------------------------------------------ Reporter: mstrsn | Owner: bagder Type: defect | Status: closed Priority: normal | Milestone: Component: SFTP | Version: 1.2.4 Resolution: fixed | Keywords: Blocking: | Blockedby: ---------------------+------------------------------------------------------ Changes (by bagder): * status: assigned => closed * resolution: => fixed Comment: commit e22cdcea77cc454b309b4555cb397047a16a64bc now has a fix for this case -- Ticket URL: libssh2 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 Apr 15 01:22:57 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ENMu36012808; Thu, 15 Apr 2010 01:22:57 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ENMtpU012784 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 15 Apr 2010 01:22:55 +0200 Received: (qmail 4591 invoked from network); 14 Apr 2010 23:23:02 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 14 Apr 2010 23:23:02 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Wed, 14 Apr 2010 23:23:02 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #158: libssh2_sftp_write returns incorrect value X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/158#comment:5 Message-ID: <051.e43b62a15352ef1200fe10945897c0ce@libssh2.stuge.se> References: <042.cc741e9fa450ff795d5980e747278e75@libssh2.stuge.se> X-Trac-Ticket-ID: 158 In-Reply-To: <042.cc741e9fa450ff795d5980e747278e75@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #158: libssh2_sftp_write returns incorrect value ---------------------+------------------------------------------------------ Reporter: mstrsn | Owner: bagder Type: defect | Status: closed Priority: normal | Milestone: 1.2.6 Component: SFTP | Version: 1.2.4 Resolution: fixed | Keywords: Blocking: | Blockedby: ---------------------+------------------------------------------------------ Changes (by bagder): * milestone: => 1.2.6 Comment: wrong commit, I meant 7f740368f4410ebe336673204507607018da9549 -- Ticket URL: libssh2 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 Apr 15 01:23:49 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ENNlj7013052; Thu, 15 Apr 2010 01:23:49 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3ENNk9g013034 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 15 Apr 2010 01:23:46 +0200 Received: (qmail 4660 invoked from network); 14 Apr 2010 23:23:54 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 14 Apr 2010 23:23:54 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Wed, 14 Apr 2010 23:23:54 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #131: Error in sftp_readdir X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/131#comment:4 Message-ID: <054.ac6a83859a2b925be951f0fbe3bb5991@libssh2.stuge.se> References: <045.b06aa85e5eac8d610e8616bca36bfd98@libssh2.stuge.se> X-Trac-Ticket-ID: 131 In-Reply-To: <045.b06aa85e5eac8d610e8616bca36bfd98@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #131: Error in sftp_readdir ------------------------+--------------------------------------------------- Reporter: dietmar10 | Owner: bagder Type: defect | Status: closed Priority: normal | Milestone: 1.2.6 Component: SFTP | Version: 1.2.2 Resolution: fixed | Keywords: Blocking: | Blockedby: ------------------------+--------------------------------------------------- Changes (by bagder): * status: assigned => closed * resolution: => fixed * milestone: => 1.2.6 Comment: I cleaned up the function and fixed your problem in commit e22cdcea77cc454b309b4555cb397047a16a64bc -- Ticket URL: libssh2 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 Apr 15 03:11:19 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F1B48P026857; Thu, 15 Apr 2010 03:11:16 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3F1B18m025342 for ; Thu, 15 Apr 2010 03:11:01 +0200 Received: (qmail 21316 invoked by uid 501); 15 Apr 2010 01:11:09 -0000 Message-ID: <20100415011109.21315.qmail@stuge.se> Date: Thu, 15 Apr 2010 03:11:09 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: libssh2 hangs in channel_close() Mail-Followup-To: libssh2-devel@cool.haxx.se References: <87ochnai9m.fsf@mocca.josefsson.org> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg wrote: > If libssh2 skips the waiting for the remote EOF, what happens? > Peter's fix added both sending and waiting, and I think what we > suggest is that we drop the waiting. I don't think that this is for the best. The topic recently came up also on the OpenSSH list: http://lists.mindrot.org/pipermail/openssh-unix-dev/2010-April/028537.html http://anoncvs.mindrot.org/index.cgi/openssh/PROTOCOL?revision=1.14&view=markup#l40 From this wording (and the RFC) it is clear to me that it is not so polite to CLOSE without first sending and receiving EOF - even if it *is* allowed. To me it makes a lot of sense to first clean up, and then CLOSE. So I implemented what I consider polite and more correct client behavior. And, OpenSSH works like that. commit 0ecd0eb37c02216bcb0c34797beb645bf14cf4bb removed the waiting for EOF and I believe this change originates in a somewhat different philosophy - one of more forcibly terminating the connection and shutting down more like *NOW*. I can understand the desire to not want to care about the server, but I don't think that it is the best we can do. It seems a bad idea to consciously do something in libssh2 that *could* upset servers, even though it is allowed by protocol. I've seen several sensitive servers mentioned on the OpenSSH list, and in any case I think it's best to take as few risks as possible. So, I do not think that it is what libssh2 should do by default! Actually - I don't think libssh2 should do it at all. If the calling app wants to just close down ASAP then they could close() the socket and move on. Or even exit(). In summary I don't think we should encourage apps to CLOSE early. Be tolerant on input (API) but strict with output (protocol) is one way to explain it. If there are problems with two-way EOF then let's investigate them thoroughly and learn what the problem is, rather than yank code that happens to trigger the symptom. I guess noone else will look into what the actual problem is with the testcase, so I'll try to do it, but I'm not sure when I'll find time. //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 03:24:14 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F1O9jr029784; Thu, 15 Apr 2010 03:24:12 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3F1O86f029750 for ; Thu, 15 Apr 2010 03:24:08 +0200 Received: (qmail 23386 invoked by uid 501); 15 Apr 2010 01:24:17 -0000 Message-ID: <20100415012417.23385.qmail@stuge.se> Date: Thu, 15 Apr 2010 03:24:17 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: libssh2 master 77fa740... Fix OpenSSL AES-128-CTR detection. Mail-Followup-To: libssh2-devel@cool.haxx.se References: <20100414120515.28267.qmail@earth.stuge.se> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20100414120515.28267.qmail@earth.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se libssh2@git.stuge.se wrote: > - Log ----------------------------------------------------------------- > commit 77fa7406741bd09eb13b6865b98fbdd30c28b396 > Author: Simon Josefsson > Commit: Simon Josefsson > > Fix OpenSSL AES-128-CTR detection. > > Patch from Paul Howarth . Please remember to use --author so it looks all pretty! :) //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 03:49:24 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F1nHNu032374; Thu, 15 Apr 2010 03:49:23 +0200 Received: from m13-26.163.com (m13-26.163.com [220.181.13.26]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F1nE9W032080 for ; Thu, 15 Apr 2010 03:49:15 +0200 Received: from drswinghead ( [117.79.242.234] ) by ajax-webmail-wmsvr26 (Coremail) ; Thu, 15 Apr 2010 09:49:20 +0800 (CST) Date: Thu, 15 Apr 2010 09:49:20 +0800 (CST) From: drswinghead To: "libssh2 development" Message-ID: <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> In-Reply-To: References: Subject: compile error win32 msvc 2005 command line MIME-Version: 1.0 X-Originating-IP: [117.79.242.234] X-Priority: 3 X-Mailer: Coremail Webmail Server Version SP_ntes V3.5 build 100402(10246.2986.2982) Copyright (c) 2002-2010 www.mailtech.cn 163com X-CM-CTRLDATA: rijtDGZvb3Rlcl9odG09MjUyOjQ0 X-CM-TRANSID: GsGowKDLX9WhcMZLWyEWAA--.4935W X-CM-SenderInfo: 5guv4x5qjkvtrg6rljoofrz/1tbiOx2zekuutoimsQACsh X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1804258371==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============1804258371== Content-Type: multipart/alternative; boundary="----=_Part_23866_730399004.1271296160976" ------=_Part_23866_730399004.1271296160976 Content-Type: text/plain; charset=gbk Content-Transfer-Encoding: 7bit v1.2.5 .\session.c(546) : error C2275: 'fd_set' : illegal use of this type as an expres sion C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winsock2.h(1 35) : see declaration of 'fd_set' ------=_Part_23866_730399004.1271296160976 Content-Type: text/html; charset=gbk Content-Transfer-Encoding: 7bit

v1.2.5


.\session.c(546) : error C2275: 'fd_set' : illegal use of this type as an expres
sion
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winsock2.h(1
35) : see declaration of 'fd_set'



------=_Part_23866_730399004.1271296160976-- --===============1804258371== 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 --===============1804258371==-- From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 05:15:52 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F3Fgtu025248; Thu, 15 Apr 2010 05:15:51 +0200 Received: from hrndva-omtalb.mail.rr.com (hrndva-omtalb.mail.rr.com [71.74.56.125]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F3FdVt025231 for ; Thu, 15 Apr 2010 05:15:40 +0200 X-Authority-Analysis: v=1.1 cv=gKJQ3Gb1PwwcvLAUMhHvsTUlxXKuwkA/GVcTkdHRkTo= c=1 sm=0 a=py4blSLs-VkA:10 a=O-pu0537hIgA:10 a=kj9zAlcOel0A:10 a=9At4Jy2cJ7Ox3H4DxHCJAg==:17 a=-k1URHtaV0qiLGTqCMoA:9 a=LKepyvvE1hJiuwPE4El9ajmsi_IA:4 a=CjuIK1q_8ugA:10 a=9At4Jy2cJ7Ox3H4DxHCJAg==:117 X-Cloudmark-Score: 0 X-Originating-IP: 70.116.71.237 Received: from [70.116.71.237] ([70.116.71.237:40972] helo=dc7100.roadrunn.com) by hrndva-oedge03.mail.rr.com (envelope-from ) (ecelerity 2.2.2.39 r()) with ESMTP id F8/FE-16894-6D486CB4; Thu, 15 Apr 2010 03:15:35 +0000 Received: by dc7100.roadrunn.com (Postfix, from userid 501) id 396B8830A2D; Wed, 14 Apr 2010 22:15:11 -0500 (CDT) X-Spam-Checker-Version: SpamAssassin 3.2.4 (2008-01-01) on dc7100.roadrunn.com X-Spam-Level: X-Spam-Status: No, score=-4.3 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.2.4 Received: from ngierman3 (dc7100 [192.168.1.6]) by dc7100.roadrunn.com (Postfix) with ESMTP id 94083830A2D for ; Wed, 14 Apr 2010 22:15:09 -0500 (CDT) From: "Neil Gierman" To: "'libssh2 development'" References: <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> In-Reply-To: <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> Subject: RE: compile error win32 msvc 2005 command line Date: Wed, 14 Apr 2010 22:15:31 -0500 Message-ID: <000601cadc49$e83bb1b0$b8b31510$@com> MIME-Version: 1.0 X-Mailer: Microsoft Office Outlook 12.0 Thread-Index: AcrcP1+x3wjIzgCcTySnHeXr6nluLQACj8nQ Content-Language: en-us X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se > v1.2.5 > > .\session.c(546) : error C2275: 'fd_set' : illegal use of this type as an expres > sion > C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winsock2.h(1 > 35) : see declaration of 'fd_set' What is your command line? Are you using msbuild, or devenv to start the build? Does it work if you start the build from within the VC IDE? _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 05:47:14 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F3l8DU017781; Thu, 15 Apr 2010 05:47:13 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3F3l5hx017777 for ; Thu, 15 Apr 2010 05:47:05 +0200 Received: (qmail 11698 invoked by uid 501); 15 Apr 2010 03:47:06 -0000 Message-ID: <20100415034706.11697.qmail@stuge.se> Date: Thu, 15 Apr 2010 05:47:06 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: compile error win32 msvc 2005 command line Mail-Followup-To: libssh2-devel@cool.haxx.se References: <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="LpQ9ahxlCli8rRTG" Content-Disposition: inline In-Reply-To: <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --LpQ9ahxlCli8rRTG Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hello, Thank you for the report! drswinghead wrote: > v1.2.5 > > .\session.c(546) : error C2275: 'fd_set' : illegal use of this type > as an expression > C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winsock2.h > (135) : see declaration of 'fd_set' I had fixed this, but basically forgot that I had changes in my tree that should be pushed. Please try the attached patch and report back if it 1. allows you to compile and 2. actually works for you If it works well for you I will push this change. I'd also appreciate hearing from Sebastien if this helps RTOS-32. Thanks! //Peter --LpQ9ahxlCli8rRTG Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="0001-_libssh2_wait_socket-select-on-separate-fd_sets-for-.patch" From 9c97bb7ee43c6ab233b6953388b5a219e1511c0f Mon Sep 17 00:00:00 2001 From: Peter Stuge Date: Thu, 15 Apr 2010 04:59:21 +0200 Subject: [PATCH] _libssh2_wait_socket: select() on separate fd_sets for read and write select(2) on Linux is not so explicit about this, but I am certain that it is required, or at least a really good idea, and it has always worked very well for me. If one fd_set is used for watching both for read and for write, then it becomes impossible to determine if FD_ISSET() means that an fd is available for read or for write when select() has returned. That would render select() mostly useless and is clearly not how it was meant to be used. "Three independent sets of file descriptors are watched." Sebastien Fricker further reports that RTOS-32 requires separate fd_sets, or select() simply doesn't work at all. Compilation on MSVC 2005 is fixed as a side effect of some code cleanup. MSVC choked on fd_sets being declared after keepalive code that had been added to the beginning of the function. Finally a typo/thinko fix for the poll() timeout, which confused a millisecond with 1000 seconds. --- src/session.c | 71 +++++++++++++++++++++++++++++--------------------------- 1 files changed, 37 insertions(+), 34 deletions(-) diff --git a/src/session.c b/src/session.c index 6559990..8008cb0 100644 --- a/src/session.c +++ b/src/session.c @@ -517,55 +517,58 @@ libssh2_session_callback_set(LIBSSH2_SESSION * session, */ int _libssh2_wait_socket(LIBSSH2_SESSION *session) { - int rc; - int dir; - int seconds_to_next; + int rc, dir, seconds_to_next; +#if HAVE_POLL + struct pollfd sockets[1]; +#else + fd_set rfd, wfd, *readfd = NULL, *writefd = NULL; + struct timeval tv; +#endif rc = libssh2_keepalive_send (session, &seconds_to_next); if (rc < 0) return rc; - else { - /* figure out what to wait for */ - dir = libssh2_session_block_directions(session); -#ifdef HAVE_POLL - struct pollfd sockets[1]; + /* We could allow the app to override the seconds_to_next timeout with + * a shorter timeout here. Suggest settling on struct timeval also for + * _keepalive_send() in that case, so that the full resolution of + * poll() and select() is accessible to apps that are using libssh2. + */ - sockets[0].fd = session->socket_fd; - sockets[0].events = 0; - sockets[0].revents = 0; +#if HAVE_POLL + sockets[0].fd = session->socket_fd; + sockets[0].events = 0; + sockets[0].revents = 0; - if(dir & LIBSSH2_SESSION_BLOCK_INBOUND) - sockets[0].events |= POLLIN; + dir = libssh2_session_block_directions(session); - if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND) - sockets[0].events |= POLLOUT; + if(dir & LIBSSH2_SESSION_BLOCK_INBOUND) + sockets[0].events |= POLLIN; - rc = poll(sockets, 1, seconds_to_next ? seconds_to_next / 1000 : -1); -#else - fd_set fd; - fd_set *writefd = NULL; - fd_set *readfd = NULL; - struct timeval tv; + if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND) + sockets[0].events |= POLLOUT; - tv.tv_sec = seconds_to_next; - tv.tv_usec = 0; + rc = poll(sockets, 1, seconds_to_next ? seconds_to_next * 1000 : -1); +#else + tv.tv_sec = seconds_to_next; + tv.tv_usec = 0; - FD_ZERO(&fd); - FD_SET(session->socket_fd, &fd); + FD_ZERO(&rfd); + FD_ZERO(&wfd); - if(dir & LIBSSH2_SESSION_BLOCK_INBOUND) - readfd = &fd; + if(dir & LIBSSH2_SESSION_BLOCK_INBOUND) { + FD_SET(session->socket_fd, &rfd); + readfd = &rfd; + } - if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND) - writefd = &fd; + if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND) { + FD_SET(session->socket_fd, &wfd); + writefd = &wfd; + } - /* Note that this COULD be made to use a timeout that perhaps could be - customizable by the app or something... */ - rc = select(session->socket_fd + 1, readfd, writefd, NULL, - seconds_to_next ? &tv : NULL); + rc = select(session->socket_fd + 1, readfd, writefd, NULL, + seconds_to_next ? &tv : NULL); #endif - } if(rc <= 0) { /* timeout (or error), bail out with a timeout error */ -- 1.6.3.3 --LpQ9ahxlCli8rRTG 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 --LpQ9ahxlCli8rRTG-- From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 05:51:20 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F3pIf6019224; Thu, 15 Apr 2010 05:51:20 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3F3pGLK019173 for ; Thu, 15 Apr 2010 05:51:16 +0200 Received: (qmail 12268 invoked by uid 501); 15 Apr 2010 03:51:17 -0000 Message-ID: <20100415035117.12267.qmail@stuge.se> Date: Thu, 15 Apr 2010 05:51:17 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: Compile problem Mail-Followup-To: libssh2-devel@cool.haxx.se References: <997902.89259.qm@web27608.mail.ukl.yahoo.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <997902.89259.qm@web27608.mail.ukl.yahoo.com> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Lyndon Hill wrote: > I'm trying to cross compile libssh2-1.2.5 for ARMv4 on my Mac but > there is an error during the build: .. > session.c: In function `_libssh2_wait_socket': > session.c:532: parse error before `struct' This is probably the same problem as with MSVC 2005. Please try the patch that I attached to my previous email to the list and report back if it works or not. Thanks! //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 06:02:16 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F42BlU025565; Thu, 15 Apr 2010 06:02:15 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F429HE025519 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 15 Apr 2010 06:02:09 +0200 Received: (qmail 20969 invoked from network); 15 Apr 2010 04:02:09 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 15 Apr 2010 04:02:09 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Thu, 15 Apr 2010 04:02:09 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #170: Test on Solaris 10 amd64 hangs X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/170#comment:2 Message-ID: <117.872b1d31af5e2c104d533a42b96c1c9e@libssh2.stuge.se> References: <108.c156adf5583e28b0179ff7f63c885e19@libssh2.stuge.se> X-Trac-Ticket-ID: 170 In-Reply-To: <108.c156adf5583e28b0179ff7f63c885e19@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #170: Test on Solaris 10 amd64 hangs --------------------------------------------------------------------------------------+ Reporter: www.google.com/accounts/o8/id?id=AItOawmzyrEUkUDbHXFBqjFbBoB5p8Ik5X9sR1A | Owner: stuge Type: defect | Status: assigned Priority: normal | Milestone: Component: API | Version: 1.2.5 Keywords: select, timeout, hang | Blocking: Blockedby: | --------------------------------------------------------------------------------------+ Changes (by stuge): * keywords: => select, timeout, hang * owner: => stuge * status: new => assigned * component: tests => API Comment: I believe this is the same issue that has been reported as compile failure on MSVC and ARM. Please try the patch that I just attached to the ticket, which has a bunch of fixes to _libssh2_wait_socket(). Grab it from: http://libssh2.stuge.se/attachment/ticket/170/0001-_libssh2_wait_socket- select-on-separate-fd_sets-for-.patch Please let us know if this solves the problem. -- Ticket URL: libssh2 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 Apr 15 08:51:23 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F6pBSi032327; Thu, 15 Apr 2010 08:51:21 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F6p18D032257 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 15 Apr 2010 08:51:02 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3F6p0Sc016699 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Thu, 15 Apr 2010 08:51:01 +0200 From: Simon Josefsson To: libssh2-devel@cool.haxx.se Subject: Re: libssh2 hangs in channel_close() References: <87ochnai9m.fsf@mocca.josefsson.org> <20100415011109.21315.qmail@stuge.se> OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100415:libssh2-devel@cool.haxx.se::UPCWilM3OMO6Ab5S:KWcD Date: Thu, 15 Apr 2010 08:51:00 +0200 In-Reply-To: <20100415011109.21315.qmail@stuge.se> (Peter Stuge's message of "Thu, 15 Apr 2010 03:11:09 +0200") Message-ID: <87aat5w6nf.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=0.0 required=5.0 tests=AWL,BAYES_00, DATE_IN_FUTURE_24_48,RDNS_DYNAMIC,SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Peter Stuge writes: > Daniel Stenberg wrote: >> If libssh2 skips the waiting for the remote EOF, what happens? >> Peter's fix added both sending and waiting, and I think what we >> suggest is that we drop the waiting. > > I don't think that this is for the best. The topic recently came up > also on the OpenSSH list: > > http://lists.mindrot.org/pipermail/openssh-unix-dev/2010-April/028537.html > http://anoncvs.mindrot.org/index.cgi/openssh/PROTOCOL?revision=1.14&view=markup#l40 > > From this wording (and the RFC) it is clear to me that it is not so > polite to CLOSE without first sending and receiving EOF - even if it > *is* allowed. To me it makes a lot of sense to first clean up, and > then CLOSE. So I implemented what I consider polite and more correct > client behavior. And, OpenSSH works like that. > > > commit 0ecd0eb37c02216bcb0c34797beb645bf14cf4bb removed the waiting > for EOF and I believe this change originates in a somewhat different > philosophy - one of more forcibly terminating the connection and > shutting down more like *NOW*. > > I can understand the desire to not want to care about the server, but > I don't think that it is the best we can do. > > It seems a bad idea to consciously do something in libssh2 that > *could* upset servers, even though it is allowed by protocol. I've > seen several sensitive servers mentioned on the OpenSSH list, and in > any case I think it's best to take as few risks as possible. > > So, I do not think that it is what libssh2 should do by default! > > Actually - I don't think libssh2 should do it at all. > > If the calling app wants to just close down ASAP then they could > close() the socket and move on. Or even exit(). > > In summary I don't think we should encourage apps to CLOSE early. > Be tolerant on input (API) but strict with output (protocol) is one > way to explain it. > > > If there are problems with two-way EOF then let's investigate them > thoroughly and learn what the problem is, rather than yank code that > happens to trigger the symptom. > > I guess noone else will look into what the actual problem is with the > testcase, so I'll try to do it, but I'm not sure when I'll find time. The problem with our self test, which uses OpenSSH, appears to be that OpenSSH never sends the EOF so libssh2 waits forever. At least this is the conclusion I made from the discussion so far. /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 08:51:33 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F6pWm3032429; Thu, 15 Apr 2010 08:51:33 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F6pVvn032426 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 15 Apr 2010 08:51:31 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3F6pVTx016715 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Thu, 15 Apr 2010 08:51:32 +0200 From: Simon Josefsson To: libssh2-devel@cool.haxx.se Subject: Re: libssh2 master 77fa740... Fix OpenSSL AES-128-CTR detection. References: <20100414120515.28267.qmail@earth.stuge.se> <20100415012417.23385.qmail@stuge.se> OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100415:libssh2-devel@cool.haxx.se::bdX3w51a9Ycvi5nX:HBfN Date: Thu, 15 Apr 2010 08:51:31 +0200 In-Reply-To: <20100415012417.23385.qmail@stuge.se> (Peter Stuge's message of "Thu, 15 Apr 2010 03:24:17 +0200") Message-ID: <87633tw6mk.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=0.0 required=5.0 tests=AWL,BAYES_00, DATE_IN_FUTURE_24_48,RDNS_DYNAMIC,SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Peter Stuge writes: > libssh2@git.stuge.se wrote: >> - Log ----------------------------------------------------------------- >> commit 77fa7406741bd09eb13b6865b98fbdd30c28b396 >> Author: Simon Josefsson >> Commit: Simon Josefsson >> >> Fix OpenSSL AES-128-CTR detection. >> >> Patch from Paul Howarth . > > Please remember to use --author so it looks all pretty! :) Darn, again! Thanks for the reminder. /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 09:25:21 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F7PEvL029081; Thu, 15 Apr 2010 09:25:20 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F7PDqs029052 for ; Thu, 15 Apr 2010 09:25:13 +0200 Date: Thu, 15 Apr 2010 09:25:13 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: libssh2 hangs in channel_close() In-Reply-To: <20100415011109.21315.qmail@stuge.se> Message-ID: References: <87ochnai9m.fsf@mocca.josefsson.org> <20100415011109.21315.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 15 Apr 2010, Peter Stuge wrote: > commit 0ecd0eb37c02216bcb0c34797beb645bf14cf4bb removed the waiting for EOF > and I believe this change originates in a somewhat different philosophy - > one of more forcibly terminating the connection and shutting down more like > *NOW*. > > I can understand the desire to not want to care about the server, but I > don't think that it is the best we can do. The change originates from the phiolosophy that libssh2 should NEVER end up in an endless wait, which it quite obviously would previously. > If there are problems with two-way EOF then let's investigate them > thoroughly and learn what the problem is, rather than yank code that happens > to trigger the symptom. I agree with you that the nice thing to do here is to properly wait for the EOF before shutting everything down, but clearly the previous change alone wasn't good enough to do that, and therefore I think a half-baked "fix" is not what we need. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 09:37:45 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F7bfSS004341; Thu, 15 Apr 2010 09:37:45 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F7bevA004331 for ; Thu, 15 Apr 2010 09:37:40 +0200 Date: Thu, 15 Apr 2010 09:37:40 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: compile error win32 msvc 2005 command line In-Reply-To: <20100415034706.11697.qmail@stuge.se> Message-ID: References: <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> <20100415034706.11697.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 15 Apr 2010, Peter Stuge wrote: > I had fixed this, but basically forgot that I had changes in my tree that > should be pushed. > > Please try the attached patch and report back if it > If it works well for you I will push this change. I'd also appreciate > hearing from Sebastien if this helps RTOS-32. This change should be pushed indeed, but it looked like you did a little too much in this patch, possibly due to the merge with my recent edits of that function. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 09:41:07 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F7f4Jq007024; Thu, 15 Apr 2010 09:41:06 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F7f2Ax006959 for ; Thu, 15 Apr 2010 09:41:02 +0200 Date: Thu, 15 Apr 2010 09:41:02 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Compile problem In-Reply-To: <997902.89259.qm@web27608.mail.ukl.yahoo.com> Message-ID: References: <997902.89259.qm@web27608.mail.ukl.yahoo.com> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Wed, 14 Apr 2010, Lyndon Hill wrote: > session.c: In function `_libssh2_wait_socket': > session.c:532: parse error before `struct' This might just be a lack of a #include in src/session.c, isn't it? -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 10:53:28 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F8rIOX031660; Thu, 15 Apr 2010 10:53:26 +0200 Received: from m13-34.163.com (m13-34.163.com [220.181.13.34]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F8rFiT031626 for ; Thu, 15 Apr 2010 10:53:16 +0200 Received: from drswinghead ( [117.79.242.234] ) by ajax-webmail-wmsvr34 (Coremail) ; Thu, 15 Apr 2010 16:53:11 +0800 (CST) Date: Thu, 15 Apr 2010 16:53:11 +0800 (CST) From: drswinghead To: "libssh2 development" Message-ID: <148911.74e1.12800ac00b6.Coremail.drswinghead@163.com> In-Reply-To: <20100415034706.11697.qmail@stuge.se> References: <20100415034706.11697.qmail@stuge.se> <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> Subject: Re:Re: compile error win32 msvc 2005 command line MIME-Version: 1.0 X-Originating-IP: [117.79.242.234] X-Priority: 3 X-Mailer: Coremail Webmail Server Version SP_ntes V3.5 build 100402(10246.2986.2982) Copyright (c) 2002-2010 www.mailtech.cn 163com X-CM-CTRLDATA: FYz0kWZvb3Rlcl9odG09MjEzODo0NA== X-CM-TRANSID: IsGowLCrKwP508ZLcjUPAA--.1002W X-CM-SenderInfo: 5guv4x5qjkvtrg6rljoofrz/1tbiTAizekj9ikay9wAAsx X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1053541233==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============1053541233== Content-Type: multipart/alternative; boundary="----=_Part_78428_1568148.1271321591990" ------=_Part_78428_1568148.1271321591990 Content-Type: text/plain; charset=gbk Content-Transfer-Encoding: base64 aSBwYXRjaGVkIHRoaXMgZmlsZSAob2YgY291c2UgZHJvcCBzZXZlcmFsIGxpbmUgYXQgYmVnaW4g YW5kIGVuZCBvZiB0aGlzIHBhdGNoIGZpbGUpICB0byB2MS4yLjUsIAoKCnRoZSByZXN1bHQgaXMg CiAgICAgY29tcGlsZSBvaywgYnV0IG15IHByb2dyYW0gY2FuJ3Qgd29yay4gICBhbmQgcHJpdmlv dXMgdjEuMi40ICB3b3JrcyBmaW5lIGluIG15IHByb2dyYW0uCgoKCnByb2JsZW0gc2hvd3MgdGhh dDoKCgp0aGlzLT5zZXNzID0gbGlic3NoMl9zZXNzaW9uX2luaXQoKTsgICAvLyBvawppbnQgcmV0 ID0gbGlic3NoMl9zZXNzaW9uX3N0YXJ0dXAodGhpcy0+c2VzcywgdGhpcy0+c29jayk7ICAgICAg Ly8gZXJyb3Igd2l0aDogIC05IEZhaWxlZCBnZXR0aW5nICAgYmFubmVyCgoKaSBhbSB1c2luZyBi bG9jayBtb2RlIG9mIGxpYnNzaDIuCgoKYnR3LCAgIHNpZW5jZSBpIG9ubHkgaGF2ZSB2aXN1YWwg c3R1ZGlvIDIwMDUsIGkgY2FuIG5vdCBvcGVuIHdpbjMyL2xpYnNzaDIuZHN3IHByb3Blcmx5LiBp IHRoaW5rIHRoaXMgcHJvamVjdCBmaWxlIAoKCmlzIGZvciB2YysrIDYuMC4gaXQgdG9vIG9sZCBm b3IgbXN2YzIwMDUuICAgaSBhbSB1c2luZyBxbWFrZSdzIC5wcm8gZmlsZSB0byBtYW5hZ2VyIGxp YnNzaDIgb24gd2luZG93cyB4cC4KCgrU2jIwMTAtMDQtMTWjrCJQZXRlciBTdHVnZSIgPHBldGVy QHN0dWdlLnNlPiDQtLXAo7oKPkhlbGxvLAo+Cj5UaGFuayB5b3UgZm9yIHRoZSByZXBvcnQhCj4K PmRyc3dpbmdoZWFkIHdyb3RlOgo+PiB2MS4yLjUKPj4gCj4+IC5cc2Vzc2lvbi5jKDU0NikgOiBl cnJvciBDMjI3NTogJ2ZkX3NldCcgOiBpbGxlZ2FsIHVzZSBvZiB0aGlzIHR5cGUKPj4gYXMgYW4g ZXhwcmVzc2lvbgo+PiBDOlxQcm9ncmFtIEZpbGVzICh4ODYpXE1pY3Jvc29mdCBTREtzXFdpbmRv d3NcdjcuMEFcaW5jbHVkZVx3aW5zb2NrMi5oCj4+ICgxMzUpIDogc2VlIGRlY2xhcmF0aW9uIG9m ICdmZF9zZXQnCj4KPkkgaGFkIGZpeGVkIHRoaXMsIGJ1dCBiYXNpY2FsbHkgZm9yZ290IHRoYXQg SSBoYWQgY2hhbmdlcyBpbiBteSB0cmVlCj50aGF0IHNob3VsZCBiZSBwdXNoZWQuCj4KPlBsZWFz ZSB0cnkgdGhlIGF0dGFjaGVkIHBhdGNoIGFuZCByZXBvcnQgYmFjayBpZiBpdAo+Cj4xLiBhbGxv d3MgeW91IHRvIGNvbXBpbGUKPmFuZAo+Mi4gYWN0dWFsbHkgd29ya3MgZm9yIHlvdQo+Cj5JZiBp dCB3b3JrcyB3ZWxsIGZvciB5b3UgSSB3aWxsIHB1c2ggdGhpcyBjaGFuZ2UuIEknZCBhbHNvIGFw cHJlY2lhdGUKPmhlYXJpbmcgZnJvbSBTZWJhc3RpZW4gaWYgdGhpcyBoZWxwcyBSVE9TLTMyLgo+ Cj4KPlRoYW5rcyEKPgo+Ly9QZXRlcgo= ------=_Part_78428_1568148.1271321591990 Content-Type: text/html; charset=gbk Content-Transfer-Encoding: base64 aSBwYXRjaGVkIHRoaXMgZmlsZSAob2YgY291c2UgZHJvcCBzZXZlcmFsIGxpbmUgYXQgYmVnaW4g YW5kIGVuZCBvZiB0aGlzIHBhdGNoIGZpbGUpICZuYnNwO3RvIHYxLjIuNSwmbmJzcDs8ZGl2Pjxi cj48L2Rpdj48ZGl2PnRoZSByZXN1bHQgaXMmbmJzcDs8L2Rpdj48ZGl2PiZuYnNwOyZuYnNwOyAm bmJzcDsgY29tcGlsZSBvaywgYnV0IG15IHByb2dyYW0gY2FuJ3Qgd29yay4gJm5ic3A7IGFuZCBw cml2aW91cyB2MS4yLjQgJm5ic3A7d29ya3MgZmluZSBpbiBteSBwcm9ncmFtLjxicj48ZGl2Pjwv ZGl2Pjxicj48L2Rpdj48ZGl2PnByb2JsZW0gc2hvd3MgdGhhdDo8L2Rpdj48ZGl2Pjxicj48L2Rp dj48ZGl2PnRoaXMtJmd0O3Nlc3MgPSBsaWJzc2gyX3Nlc3Npb25faW5pdCgpOyAmbmJzcDsgLy8g b2s8L2Rpdj48ZGl2PmludCByZXQgPSBsaWJzc2gyX3Nlc3Npb25fc3RhcnR1cCh0aGlzLSZndDtz ZXNzLCB0aGlzLSZndDtzb2NrKTsgJm5ic3A7ICZuYnNwOyAmbmJzcDsvLyBlcnJvciB3aXRoOiAm bmJzcDstOSBGYWlsZWQgZ2V0dGluZyAmbmJzcDsgYmFubmVyPC9kaXY+PGRpdj48YnI+PC9kaXY+ PGRpdj5pIGFtIHVzaW5nIGJsb2NrIG1vZGUgb2YgbGlic3NoMi48L2Rpdj48ZGl2Pjxicj48L2Rp dj48ZGl2PmJ0dywgJm5ic3A7IHNpZW5jZSBpIG9ubHkgaGF2ZSB2aXN1YWwgc3R1ZGlvIDIwMDUs IGkgY2FuIG5vdCBvcGVuIHdpbjMyL2xpYnNzaDIuZHN3IHByb3Blcmx5LiBpIHRoaW5rIHRoaXMg cHJvamVjdCBmaWxlJm5ic3A7PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5pcyBmb3IgdmMrKyA2 LjAuIGl0IHRvbyBvbGQgZm9yIG1zdmMyMDA1LiAmbmJzcDsgaSBhbSB1c2luZyBxbWFrZSdzIC5w cm8gZmlsZSB0byBtYW5hZ2VyIGxpYnNzaDIgb24gd2luZG93cyB4cC48YnI+PHByZT48YnI+1Noy MDEwLTA0LTE1o6wiUGV0ZXImbmJzcDtTdHVnZSImbmJzcDsmbHQ7cGV0ZXJAc3R1Z2Uuc2UmZ3Q7 Jm5ic3A70LS1wKO6CiZndDtIZWxsbywKJmd0OwomZ3Q7VGhhbmsmbmJzcDt5b3UmbmJzcDtmb3Im bmJzcDt0aGUmbmJzcDtyZXBvcnQhCiZndDsKJmd0O2Ryc3dpbmdoZWFkJm5ic3A7d3JvdGU6CiZn dDsmZ3Q7Jm5ic3A7djEuMi41CiZndDsmZ3Q7Jm5ic3A7CiZndDsmZ3Q7Jm5ic3A7LlxzZXNzaW9u LmMoNTQ2KSZuYnNwOzombmJzcDtlcnJvciZuYnNwO0MyMjc1OiZuYnNwOydmZF9zZXQnJm5ic3A7 OiZuYnNwO2lsbGVnYWwmbmJzcDt1c2UmbmJzcDtvZiZuYnNwO3RoaXMmbmJzcDt0eXBlCiZndDsm Z3Q7Jm5ic3A7YXMmbmJzcDthbiZuYnNwO2V4cHJlc3Npb24KJmd0OyZndDsmbmJzcDtDOlxQcm9n cmFtJm5ic3A7RmlsZXMmbmJzcDsoeDg2KVxNaWNyb3NvZnQmbmJzcDtTREtzXFdpbmRvd3Ncdjcu MEFcaW5jbHVkZVx3aW5zb2NrMi5oCiZndDsmZ3Q7Jm5ic3A7KDEzNSkmbmJzcDs6Jm5ic3A7c2Vl Jm5ic3A7ZGVjbGFyYXRpb24mbmJzcDtvZiZuYnNwOydmZF9zZXQnCiZndDsKJmd0O0kmbmJzcDto YWQmbmJzcDtmaXhlZCZuYnNwO3RoaXMsJm5ic3A7YnV0Jm5ic3A7YmFzaWNhbGx5Jm5ic3A7Zm9y Z290Jm5ic3A7dGhhdCZuYnNwO0kmbmJzcDtoYWQmbmJzcDtjaGFuZ2VzJm5ic3A7aW4mbmJzcDtt eSZuYnNwO3RyZWUKJmd0O3RoYXQmbmJzcDtzaG91bGQmbmJzcDtiZSZuYnNwO3B1c2hlZC4KJmd0 OwomZ3Q7UGxlYXNlJm5ic3A7dHJ5Jm5ic3A7dGhlJm5ic3A7YXR0YWNoZWQmbmJzcDtwYXRjaCZu YnNwO2FuZCZuYnNwO3JlcG9ydCZuYnNwO2JhY2smbmJzcDtpZiZuYnNwO2l0CiZndDsKJmd0OzEu Jm5ic3A7YWxsb3dzJm5ic3A7eW91Jm5ic3A7dG8mbmJzcDtjb21waWxlCiZndDthbmQKJmd0OzIu Jm5ic3A7YWN0dWFsbHkmbmJzcDt3b3JrcyZuYnNwO2ZvciZuYnNwO3lvdQomZ3Q7CiZndDtJZiZu YnNwO2l0Jm5ic3A7d29ya3MmbmJzcDt3ZWxsJm5ic3A7Zm9yJm5ic3A7eW91Jm5ic3A7SSZuYnNw O3dpbGwmbmJzcDtwdXNoJm5ic3A7dGhpcyZuYnNwO2NoYW5nZS4mbmJzcDtJJ2QmbmJzcDthbHNv Jm5ic3A7YXBwcmVjaWF0ZQomZ3Q7aGVhcmluZyZuYnNwO2Zyb20mbmJzcDtTZWJhc3RpZW4mbmJz cDtpZiZuYnNwO3RoaXMmbmJzcDtoZWxwcyZuYnNwO1JUT1MtMzIuCiZndDsKJmd0OwomZ3Q7VGhh bmtzIQomZ3Q7CiZndDsvL1BldGVyCjwvcHJlPjwvZGl2Pjxicj48YnI+PHNwYW4gdGl0bGU9Im5l dGVhc2Vmb290ZXIiLz48L3NwYW4+ ------=_Part_78428_1568148.1271321591990-- --===============1053541233== 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 --===============1053541233==-- From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 11:06:18 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F96Ew4010604; Thu, 15 Apr 2010 11:06:17 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F96DxG010577 for ; Thu, 15 Apr 2010 11:06:13 +0200 Date: Thu, 15 Apr 2010 11:06:13 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re:Re: compile error win32 msvc 2005 command line In-Reply-To: <148911.74e1.12800ac00b6.Coremail.drswinghead@163.com> Message-ID: References: <20100415034706.11697.qmail@stuge.se> <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> <148911.74e1.12800ac00b6.Coremail.drswinghead@163.com> User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) X-fromdanielhimself: yes MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-1470944514-1934246602-1271322373=:21264" X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: 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. ---1470944514-1934246602-1271322373=:21264 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed On Thu, 15 Apr 2010, drswinghead wrote: > i patched this file (of couse drop several line at begin and end of this > patch file) to v1.2.5, I have an alternative patch in how I think we should fix the two problems. The first one is me breaking C89/C90 compliance, and the other is the more subtle one to make select() use two different fd_sets. Does this fix the msvc build problem? -- / daniel.haxx.se ---1470944514-1934246602-1271322373=:21264 Content-Type: TEXT/x-diff; name=0001-wait_socket-make-c89-compliant-and-use-two-fd_sets-f.patch Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename=0001-wait_socket-make-c89-compliant-and-use-two-fd_sets-f.patch RnJvbSAyZjljMTA1ZWMyM2Y0NmIzNjE2YTQyNGE4Mjg0MTgwN2EzNzYwZWRk IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogRGFuaWVsIFN0ZW5i ZXJnIDxkYW5pZWxAaGF4eC5zZT4NCkRhdGU6IFRodSwgMTUgQXByIDIwMTAg MTE6MDI6NDEgKzAyMDANClN1YmplY3Q6IFtQQVRDSF0gd2FpdF9zb2NrZXQ6 IG1ha2UgYzg5IGNvbXBsaWFudCBhbmQgdXNlIHR3byBmZF9zZXRzIGZvciBz ZWxlY3QoKQ0KDQotLS0NCiBzcmMvc2Vzc2lvbi5jIHwgICA2MiArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0KIDEgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMjgg ZGVsZXRpb25zKC0pDQoNCmRpZmYgLS1naXQgYS9zcmMvc2Vzc2lvbi5jIGIv c3JjL3Nlc3Npb24uYw0KaW5kZXggNjU1OTk5MC4uN2JhYmE3ZCAxMDA2NDQN Ci0tLSBhL3NyYy9zZXNzaW9uLmMNCisrKyBiL3NyYy9zZXNzaW9uLmMNCkBA IC01MjgsNDMgKzUyOCw0OSBAQCBpbnQgX2xpYnNzaDJfd2FpdF9zb2NrZXQo TElCU1NIMl9TRVNTSU9OICpzZXNzaW9uKQ0KICAgICAgICAgLyogZmlndXJl IG91dCB3aGF0IHRvIHdhaXQgZm9yICovDQogICAgICAgICBkaXIgPSBsaWJz c2gyX3Nlc3Npb25fYmxvY2tfZGlyZWN0aW9ucyhzZXNzaW9uKTsNCiANCisg ICAgICAgIHsNCiAjaWZkZWYgSEFWRV9QT0xMDQotICAgICAgICBzdHJ1Y3Qg cG9sbGZkIHNvY2tldHNbMV07DQorICAgICAgICAgICAgc3RydWN0IHBvbGxm ZCBzb2NrZXRzWzFdOw0KIA0KLSAgICAgICAgc29ja2V0c1swXS5mZCA9IHNl c3Npb24tPnNvY2tldF9mZDsNCi0gICAgICAgIHNvY2tldHNbMF0uZXZlbnRz ID0gMDsNCi0gICAgICAgIHNvY2tldHNbMF0ucmV2ZW50cyA9IDA7DQorICAg ICAgICAgICAgc29ja2V0c1swXS5mZCA9IHNlc3Npb24tPnNvY2tldF9mZDsN CisgICAgICAgICAgICBzb2NrZXRzWzBdLmV2ZW50cyA9IDA7DQorICAgICAg ICAgICAgc29ja2V0c1swXS5yZXZlbnRzID0gMDsNCiANCi0gICAgICAgIGlm KGRpciAmIExJQlNTSDJfU0VTU0lPTl9CTE9DS19JTkJPVU5EKQ0KLSAgICAg ICAgICAgIHNvY2tldHNbMF0uZXZlbnRzIHw9IFBPTExJTjsNCisgICAgICAg ICAgICBpZihkaXIgJiBMSUJTU0gyX1NFU1NJT05fQkxPQ0tfSU5CT1VORCkN CisgICAgICAgICAgICAgICAgc29ja2V0c1swXS5ldmVudHMgfD0gUE9MTElO Ow0KIA0KLSAgICAgICAgaWYoZGlyICYgTElCU1NIMl9TRVNTSU9OX0JMT0NL X09VVEJPVU5EKQ0KLSAgICAgICAgICAgIHNvY2tldHNbMF0uZXZlbnRzIHw9 IFBPTExPVVQ7DQorICAgICAgICAgICAgaWYoZGlyICYgTElCU1NIMl9TRVNT SU9OX0JMT0NLX09VVEJPVU5EKQ0KKyAgICAgICAgICAgICAgICBzb2NrZXRz WzBdLmV2ZW50cyB8PSBQT0xMT1VUOw0KIA0KLSAgICAgICAgcmMgPSBwb2xs KHNvY2tldHMsIDEsIHNlY29uZHNfdG9fbmV4dCA/IHNlY29uZHNfdG9fbmV4 dCAvIDEwMDAgOiAtMSk7DQorICAgICAgICAgICAgcmMgPSBwb2xsKHNvY2tl dHMsIDEsIHNlY29uZHNfdG9fbmV4dCA/IHNlY29uZHNfdG9fbmV4dCAvIDEw MDAgOiAtMSk7DQogI2Vsc2UNCi0gICAgICAgIGZkX3NldCBmZDsNCi0gICAg ICAgIGZkX3NldCAqd3JpdGVmZCA9IE5VTEw7DQotICAgICAgICBmZF9zZXQg KnJlYWRmZCA9IE5VTEw7DQotICAgICAgICBzdHJ1Y3QgdGltZXZhbCB0djsN Ci0NCi0gICAgICAgIHR2LnR2X3NlYyA9IHNlY29uZHNfdG9fbmV4dDsNCi0g ICAgICAgIHR2LnR2X3VzZWMgPSAwOw0KLQ0KLSAgICAgICAgRkRfWkVSTygm ZmQpOw0KLSAgICAgICAgRkRfU0VUKHNlc3Npb24tPnNvY2tldF9mZCwgJmZk KTsNCi0NCi0gICAgICAgIGlmKGRpciAmIExJQlNTSDJfU0VTU0lPTl9CTE9D S19JTkJPVU5EKQ0KLSAgICAgICAgICAgIHJlYWRmZCA9ICZmZDsNCisgICAg ICAgICAgICBmZF9zZXQgcmZkOw0KKyAgICAgICAgICAgIGZkX3NldCB3ZmQ7 DQorICAgICAgICAgICAgZmRfc2V0ICp3cml0ZWZkID0gTlVMTDsNCisgICAg ICAgICAgICBmZF9zZXQgKnJlYWRmZCA9IE5VTEw7DQorICAgICAgICAgICAg c3RydWN0IHRpbWV2YWwgdHY7DQorDQorICAgICAgICAgICAgdHYudHZfc2Vj ID0gc2Vjb25kc190b19uZXh0Ow0KKyAgICAgICAgICAgIHR2LnR2X3VzZWMg PSAwOw0KKw0KKyAgICAgICAgICAgIGlmKGRpciAmIExJQlNTSDJfU0VTU0lP Tl9CTE9DS19JTkJPVU5EKSB7DQorICAgICAgICAgICAgICAgIEZEX1pFUk8o JnJmZCk7DQorICAgICAgICAgICAgICAgIEZEX1NFVChzZXNzaW9uLT5zb2Nr ZXRfZmQsICZyZmQpOw0KKyAgICAgICAgICAgICAgICByZWFkZmQgPSAmcmZk Ow0KKyAgICAgICAgICAgIH0NCiANCi0gICAgICAgIGlmKGRpciAmIExJQlNT SDJfU0VTU0lPTl9CTE9DS19PVVRCT1VORCkNCi0gICAgICAgICAgICB3cml0 ZWZkID0gJmZkOw0KKyAgICAgICAgICAgIGlmKGRpciAmIExJQlNTSDJfU0VT U0lPTl9CTE9DS19PVVRCT1VORCkgew0KKyAgICAgICAgICAgICAgICBGRF9a RVJPKCZ3ZmQpOw0KKyAgICAgICAgICAgICAgICBGRF9TRVQoc2Vzc2lvbi0+ c29ja2V0X2ZkLCAmd2ZkKTsNCisgICAgICAgICAgICAgICAgd3JpdGVmZCA9 ICZ3ZmQ7DQorICAgICAgICAgICAgfQ0KIA0KLSAgICAgICAgLyogTm90ZSB0 aGF0IHRoaXMgQ09VTEQgYmUgbWFkZSB0byB1c2UgYSB0aW1lb3V0IHRoYXQg cGVyaGFwcyBjb3VsZCBiZQ0KLSAgICAgICAgICAgY3VzdG9taXphYmxlIGJ5 IHRoZSBhcHAgb3Igc29tZXRoaW5nLi4uICovDQotICAgICAgICByYyA9IHNl bGVjdChzZXNzaW9uLT5zb2NrZXRfZmQgKyAxLCByZWFkZmQsIHdyaXRlZmQs IE5VTEwsDQotICAgICAgICAgICAgICAgICAgICBzZWNvbmRzX3RvX25leHQg PyAmdHYgOiBOVUxMKTsNCisgICAgICAgICAgICAvKiBOb3RlIHRoYXQgdGhp cyBDT1VMRCBiZSBtYWRlIHRvIHVzZSBhIHRpbWVvdXQgdGhhdCBwZXJoYXBz DQorICAgICAgICAgICAgICAgY291bGQgYmUgY3VzdG9taXphYmxlIGJ5IHRo ZSBhcHAgb3Igc29tZXRoaW5nLi4uICovDQorICAgICAgICAgICAgcmMgPSBz ZWxlY3Qoc2Vzc2lvbi0+c29ja2V0X2ZkICsgMSwgcmVhZGZkLCB3cml0ZWZk LCBOVUxMLA0KKyAgICAgICAgICAgICAgICAgICAgICAgIHNlY29uZHNfdG9f bmV4dCA/ICZ0diA6IE5VTEwpOw0KICNlbmRpZg0KKyAgICAgICAgfQ0KICAg ICB9DQogDQogICAgIGlmKHJjIDw9IDApIHsNCi0tIA0KMS43LjANCg0K ---1470944514-1934246602-1271322373=:21264 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 ---1470944514-1934246602-1271322373=:21264-- From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 11:10:58 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F9AuUd012979; Thu, 15 Apr 2010 11:10:58 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F9AtLl012974 for ; Thu, 15 Apr 2010 11:10:55 +0200 Date: Thu, 15 Apr 2010 11:10:55 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Compile problem In-Reply-To: Message-ID: References: <997902.89259.qm@web27608.mail.ukl.yahoo.com> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 15 Apr 2010, Daniel Stenberg wrote: >> session.c: In function `_libssh2_wait_socket': >> session.c:532: parse error before `struct' > > This might just be a lack of a #include in src/session.c, isn't it? Nah that's not the problem. The problem was me who made the code use a C99ism and the suggested fix is the one I posted in the msvc build problem thread. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 11:47:15 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F9l8dt009482; Thu, 15 Apr 2010 11:47:13 +0200 Received: from m13-34.163.com (m13-34.163.com [220.181.13.34]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3F9l5et009475 for ; Thu, 15 Apr 2010 11:47:06 +0200 Received: from drswinghead ( [117.79.242.234] ) by ajax-webmail-wmsvr34 (Coremail) ; Thu, 15 Apr 2010 17:47:05 +0800 (CST) Date: Thu, 15 Apr 2010 17:47:05 +0800 (CST) From: drswinghead To: "libssh2 development" Message-ID: <6f6d6f.802c.12800dd56f2.Coremail.drswinghead@163.com> In-Reply-To: References: <20100415034706.11697.qmail@stuge.se> <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> <148911.74e1.12800ac00b6.Coremail.drswinghead@163.com> Subject: Re:Re:Re: compile error win32 msvc 2005 command line MIME-Version: 1.0 X-Originating-IP: [117.79.242.234] X-Priority: 3 X-Mailer: Coremail Webmail Server Version SP_ntes V3.5 build 100402(10246.2986.2982) Copyright (c) 2002-2010 www.mailtech.cn 163com X-CM-CTRLDATA: i8QZ2WZvb3Rlcl9odG09Nzk0OjQ0 X-CM-TRANSID: IsGowLB7AQSZ4MZLbUQPAA--.1134W X-CM-SenderInfo: 5guv4x5qjkvtrg6rljoofrz/1tbi7BqzekoknQVrCwABso X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============0385965329==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============0385965329== Content-Type: multipart/alternative; boundary="----=_Part_85998_27680658.1271324825330" ------=_Part_85998_27680658.1271324825330 Content-Type: text/plain; charset=gbk Content-Transfer-Encoding: 7bit >I have an alternative patch in how I think we should fix the two problems. The >first one is me breaking C89/C90 compliance, and the other is the more subtle >one to make select() use two different fd_sets. > >Does this fix the msvc build problem? yes, this fix the msvc build problem. also i got another problem, there is a random faild when call libssh2_session_startup and userauth related call.these calls works fine, but faild sometimes. i will check my code first. thanks. ------=_Part_85998_27680658.1271324825330 Content-Type: text/html; charset=gbk Content-Transfer-Encoding: 7bit
>I have an alternative patch in how I think we should fix the two problems. The 
>first one is me breaking C89/C90 compliance, and the other is the more subtle 
>one to make select() use two different fd_sets.
>
>Does this fix the msvc build problem?

yes, this fix the msvc build problem. 
also i got another problem,  there is a random faild when call libssh2_session_startup and userauth related call.
these calls works fine, but faild sometimes. 
i will check my code first. 

thanks.


------=_Part_85998_27680658.1271324825330-- --===============0385965329== 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 --===============0385965329==-- From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 12:09:48 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FA9dtG025482; Thu, 15 Apr 2010 12:09:46 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3FA9c2R025479 for ; Thu, 15 Apr 2010 12:09:38 +0200 Received: (qmail 20457 invoked by uid 501); 15 Apr 2010 10:09:41 -0000 Message-ID: <20100415100941.20456.qmail@stuge.se> Date: Thu, 15 Apr 2010 12:09:41 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: compile error win32 msvc 2005 command line Mail-Followup-To: libssh2-devel@cool.haxx.se References: <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> <20100415034706.11697.qmail@stuge.se> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg wrote: >> I had fixed this, > > This change should be pushed indeed, but it looked like you did a > little too much in this patch, What do you mean by too much? Please send a patch and explain rather than immediately pushing your own variant of my patch! //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 12:18:16 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FAIBdR028194; Thu, 15 Apr 2010 12:18:16 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FAIAN5028188 for ; Thu, 15 Apr 2010 12:18:10 +0200 Date: Thu, 15 Apr 2010 12:18:10 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: compile error win32 msvc 2005 command line In-Reply-To: <20100415100941.20456.qmail@stuge.se> Message-ID: References: <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> <20100415034706.11697.qmail@stuge.se> <20100415100941.20456.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 15 Apr 2010, Peter Stuge wrote: > What do you mean by too much? Please send a patch and explain rather than > immediately pushing your own variant of my patch! I don't understand your agression here. I read your patch and to me it looked like it wasn't enough and I then commented on it. I didn't then proceed to do any careful analyze of it, it was just from my quick read of the diff in the mail. When it was reported that it didn't fix the problem, I checked how the code looked like and I felt bad I had left the code in that shape, so I edited up the code to a form I shoudl've done it in the first place and posted that patch. My patch was then confirmed to fix the problem, and as I believe this was a decent fix for the problem I pushed it. If you feel I did you any wrong or bad, then I applogize and I'm sorry. I did not mean to step on any toes, I was just eager to get this problem fixed. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 12:28:00 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FARuis007044; Thu, 15 Apr 2010 12:27:59 +0200 Received: from mail-pz0-f184.google.com (mail-pz0-f184.google.com [209.85.222.184]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FARri7007022 for ; Thu, 15 Apr 2010 12:27:54 +0200 Received: by pzk14 with SMTP id 14so372815pzk.8 for ; Thu, 15 Apr 2010 03:27:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:received:message-id:subject:from:to:content-type; bh=tVmxpkF3FSRVl4r1UVabdCbo34gt2pZG9HE3QQoln+M=; b=VzFTdmZ/e8kBDlDrlrdjD3iELA0EzsW7OTwtZv6s8f94gX90cd8puPykZIFC+bSO+J ktLV0m/ABZ7jCpSG3STgURCBXAlYZBVujPDv0CBvBtiBlIX5CCYCQ8S4M9E8OWAXo2P6 n9Cg5NukgfV//KjYDWY6NyTUmTbnPCu/30CW4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=Atm1gkeAV72THyFDsILMXS1DeMsWX33CRq1KgXJ7tCNDYAueuUzAqQx3yly2zP1Cmh HfF2nJlL4MpCyUBWO5xgNKh0/vQQniD5jOTl9Q3uN7Zh1/Gu5e1xKqqZlVii/oqcI+WR ZyAAM7lJbAHWs1h7+4zKMy+jfRuCAAyyrjAVA= MIME-Version: 1.0 Received: by 10.142.157.17 with HTTP; Thu, 15 Apr 2010 03:27:50 -0700 (PDT) In-Reply-To: <20100410021912.9869.qmail@stuge.se> References: <20100330142419.18258.qmail@stuge.se> <4BB22045.5000803@fritz-elfert.de> <20100330161722.4124.qmail@stuge.se> <4BB235A3.3070308@fritz-elfert.de> <20100410021912.9869.qmail@stuge.se> Date: Thu, 15 Apr 2010 15:57:50 +0530 Received: by 10.142.202.7 with SMTP id z7mr4012251wff.267.1271327270708; Thu, 15 Apr 2010 03:27:50 -0700 (PDT) Message-ID: Subject: Re: Character conversion for sftp From: NAGASEKHAR BHUVANAGIRI To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============2090739405==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============2090739405== Content-Type: multipart/alternative; boundary=000e0cd32dc85d27e0048443f24a --000e0cd32dc85d27e0048443f24a Content-Type: text/plain; charset=ISO-8859-1 On Sat, Apr 10, 2010 at 7:49 AM, Peter Stuge wrote: > Hi, > > NAGASEKHAR BHUVANAGIRI wrote: > > The verbose mode execution of sftp connection using curl command > > line utility is as follows: > > This output is not useful. > > Please provide a libssh2 debug trace from such an execution. > That may require you to recompile libssh2 with tracing enabled, and > to modify curl so that it calls libssh2_trace(session,~0); after > return from libssh2_session_init(). > > > //Peter > _______________________________________________ > libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel > Following is the trace output: $ curl -v sftp://user2:password2@10.176.XXX.XXX/ * About to connect() to 10.176.XXX.XXX port 22 (#0) * Trying 10.176.XXX.XXX... connected * Connected to 10.176.XXX.XXX (10.176.XXX.XXX) port 22 (#0) * User: user2 * Password: password2 * SSH socket: 3 * SFTP 0x38cc6930 state change from SSH_STOP to SSH_S_STARTUP [libssh2] 0.608980 Transport: session_startup for socket 3 [libssh2] 0.609023 Transport: Sending Banner: SSH-2.0-libssh2_1.1 [libssh2] 0.609169 Failure Event: -2 - Timeout waiting for banner * Failure establishing ssh session * SFTP 0x38cc6930 state change from SSH_S_STARTUP to SSH_SESSION_FREE [libssh2] 0.609514 Transport: Freeing session resource * SFTP 0x38cc6930 state change from SSH_SESSION_FREE to SSH_STOP * SSH DISCONNECT starts now * SFTP 0x38cc6930 state change from SSH_STOP to SSH_SFTP_SHUTDOWN * SFTP 0x38cc6930 state change from SSH_SFTP_SHUTDOWN to SSH_SESSION_DISCONNECT * SFTP 0x38cc6930 state change from SSH_SESSION_DISCONNECT to SSH_SESSION_FREE * SFTP 0x38cc6930 state change from SSH_SESSION_FREE to SSH_STOP * SSH DISCONNECT is done * Closing connection #0 curl: (2) Failure establishing ssh session $ Thanks, Nagasekhar --000e0cd32dc85d27e0048443f24a Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

On Sat, Apr 10, 2010 at 7:49 AM, Peter Stuge <peter@stuge.se>= wrote:
Hi,

NAGASEKHAR BHUVANAGIRI wrote:
> The verbose mod= e execution of sftp connection using curl command
> line utility is a= s follows:

This output is not useful.

Please provide a = libssh2 debug trace from such an execution.
That may require you to recompile libssh2 with tracing enabled, and
to m= odify curl so that it calls libssh2_trace(session,~0); after
return from= libssh2_session_init().


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


Following is the trace output:
$ curl -v sftp://user2:passw= ord2@10.176.XXX.XXX/
* About to connect() to 10.176.XXX.XXX port 22 (#0)=
*=A0=A0 Trying 10.176.XXX.XXX... connected
* Connected to 10.176.XXX= .XXX (10.176.XXX.XXX) port 22 (#0)
* User: user2
* Password: password2
* SSH socket: 3
* SFTP 0x38cc6= 930 state change from SSH_STOP to SSH_S_STARTUP
[libssh2] 0.608980 Trans= port: session_startup for socket 3
[libssh2] 0.609023 Transport: Sending= Banner: SSH-2.0-libssh2_1.1
[libssh2] 0.609169 Failure Event: -2 - Timeout waiting for banner
* Fail= ure establishing ssh session
* SFTP 0x38cc6930 state change from SSH_S_S= TARTUP to SSH_SESSION_FREE
[libssh2] 0.609514 Transport: Freeing session= resource
* SFTP 0x38cc6930 state change from SSH_SESSION_FREE to SSH_STOP
* SSH D= ISCONNECT starts now
* SFTP 0x38cc6930 state change from SSH_STOP to SSH= _SFTP_SHUTDOWN
* SFTP 0x38cc6930 state change from SSH_SFTP_SHUTDOWN to = SSH_SESSION_DISCONNECT
* SFTP 0x38cc6930 state change from SSH_SESSION_DISCONNECT to SSH_SESSION_F= REE
* SFTP 0x38cc6930 state change from SSH_SESSION_FREE to SSH_STOP
= * SSH DISCONNECT is done
* Closing connection #0
curl: (2) Failure es= tablishing ssh session
$
Thanks,
Nagasekhar
--000e0cd32dc85d27e0048443f24a-- --===============2090739405== 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 --===============2090739405==-- From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 12:30:23 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FAUL2G008052; Thu, 15 Apr 2010 12:30:23 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FAUKIg008046 for ; Thu, 15 Apr 2010 12:30:20 +0200 Date: Thu, 15 Apr 2010 12:30:20 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Character conversion for sftp In-Reply-To: Message-ID: References: <20100330142419.18258.qmail@stuge.se> <4BB22045.5000803@fritz-elfert.de> <20100330161722.4124.qmail@stuge.se> <4BB235A3.3070308@fritz-elfert.de> <20100410021912.9869.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 15 Apr 2010, NAGASEKHAR BHUVANAGIRI wrote: >> Please provide a libssh2 debug trace from such an execution. >> That may require you to recompile libssh2 with tracing enabled, and >> to modify curl so that it calls libssh2_trace(session,~0); after >> return from libssh2_session_init(). > > Following is the trace output: Please be aware that we're talking libssh2 here and Peter asked for "a libssh2 debug trace". Although we already know that libssh2 currently has no way to map ASCII to other character sets, as mentioned several times. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 16:12:46 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FECY3V001310; Thu, 15 Apr 2010 16:12:45 +0200 Received: from hrndva-omtalb.mail.rr.com (hrndva-omtalb.mail.rr.com [71.74.56.122]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FECWcX001275 for ; Thu, 15 Apr 2010 16:12:32 +0200 X-Authority-Analysis: v=1.1 cv=1q2Jdmkya6HpgEM2jHRumxnsV1n7rNYmAqK1mJgD7XY= c=1 sm=0 a=Bg-3_jAn5lkA:10 a=O-pu0537hIgA:10 a=8nJEP1OIZ-IA:10 a=9At4Jy2cJ7Ox3H4DxHCJAg==:17 a=K5zlkraWTCoUfhO6JkMA:9 a=vYI8nhCwMJILhr255D-uncLkFIwA:4 a=wPNLvfGTeEIA:10 a=9At4Jy2cJ7Ox3H4DxHCJAg==:117 X-Cloudmark-Score: 0 X-Originating-IP: 70.116.71.237 Received: from [70.116.71.237] ([70.116.71.237:41221] helo=dc7100.roadrunn.com) by hrndva-oedge04.mail.rr.com (envelope-from ) (ecelerity 2.2.2.39 r()) with ESMTP id DE/B3-12392-ECE17CB4; Thu, 15 Apr 2010 14:12:30 +0000 Received: by dc7100.roadrunn.com (Postfix, from userid 501) id 0D4C5830A2D; Thu, 15 Apr 2010 09:12:07 -0500 (CDT) X-Spam-Checker-Version: SpamAssassin 3.2.4 (2008-01-01) on dc7100.roadrunn.com X-Spam-Level: X-Spam-Status: No, score=-4.3 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.2.4 Received: from ngierman3 (dc7100 [192.168.1.6]) by dc7100.roadrunn.com (Postfix) with ESMTP id D9F3B830A2D for ; Thu, 15 Apr 2010 09:12:05 -0500 (CDT) From: "Neil Gierman" To: "'libssh2 development'" References: <20100415034706.11697.qmail@stuge.se> <395c6099.23b5.127ff27f4d1.Coremail.drswinghead@163.com> <148911.74e1.12800ac00b6.Coremail.drswinghead@163.com> In-Reply-To: <148911.74e1.12800ac00b6.Coremail.drswinghead@163.com> Subject: RE: Re: compile error win32 msvc 2005 command line Date: Thu, 15 Apr 2010 09:12:25 -0500 Message-ID: <002101cadca5$ac5497a0$04fdc6e0$@com> MIME-Version: 1.0 X-Mailer: Microsoft Office Outlook 12.0 Thread-Index: AcrcegwQfoaCpUFaQ3+lLXyvpnhtTQAK0vDw Content-Language: en-us X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se > btw, =A0 sience i only have visual studio 2005, i can not open win32/libssh2.dsw properly. i think this project file=A0 > > is for vc++ 6.0. it too old for msvc2005. =A0 i am using qmake's .pro file to manager libssh2 on windows xp. Visual Studio 2005 should be able to open the dsp file and start the conversion to a vcproj file for VS2005. _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 16:59:21 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FExEEt000424; Thu, 15 Apr 2010 16:59:19 +0200 Received: from fleet.seacon.co.uk (fleet.seacon.co.uk [193.164.116.153]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FCkSHa004840 for ; Thu, 15 Apr 2010 14:46:31 +0200 Received: from [192.168.123.100] (helo=seacon.co.uk) by fleet.seacon.co.uk with smtp (Exim 4.63) (envelope-from ) id 1O2OSU-00059v-Jn for libssh2-devel@cool.haxx.se; Thu, 15 Apr 2010 13:46:14 +0100 Date: Thu, 15 Apr 2010 13:46:06 +0100 To: libssh2-devel@cool.haxx.se From: "t.clarke" Message-ID: X-Organisation: Seacon Terminals Ltd, Registered in England, Company No. 1547396 X-Registered-Office: Tower Wharf, Northfleet, Kent, DA11 9BD, UK Subject: Openserver 6 X-Mailman-Approved-At: Thu, 15 Apr 2010 16:59:13 +0200 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se From: Tim Clarke SEACON GROUP LTD, Tower Wharf, Northfleet, Kent, DA11 9BD Telephone: +44 (0)1474 320000 Web: www.seacon.co.uk Hi I am trying to compile ssh2 on Openserver 6, with little success! I need the libraries, basically, in order to compile 'curl' for use with sftp. 'Configure' works fine, but make falls over with a number of errors, eg: ../include/libssh2.h no macro replacement session.c line 479(etc) assignment type mismatch I assume the seesion.c errors are the result of the 'no macro replacement' messages (?) Has anyone succeeded in making the libraries for Openserver 6 and if so, what do I need to change in the source-files ? many thanks Tim -------------------------------------------------------------------------------- This E-Mail (and any files transmitted with it) is intended solely for the use of the individual or entity to whom it is addressed. If you have received it in error please notify the sender and delete the message. Seacon Terminals Ltd, Company No. 1547396, registered in England and Wales Registered Office: Tower Wharf, Northfleet, Kent, DA11 9BD, England _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 20:15:04 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FIEp4n012507; Thu, 15 Apr 2010 20:15:01 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FIEoJl012486 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 15 Apr 2010 20:14:50 +0200 Received: (qmail 14609 invoked from network); 15 Apr 2010 18:14:56 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 15 Apr 2010 18:14:56 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Thu, 15 Apr 2010 18:14:56 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #170: Test on Solaris 10 amd64 hangs X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/170#comment:3 Message-ID: <117.bc6a8b94d39cef6a822966537b9171e3@libssh2.stuge.se> References: <108.c156adf5583e28b0179ff7f63c885e19@libssh2.stuge.se> X-Trac-Ticket-ID: 170 In-Reply-To: <108.c156adf5583e28b0179ff7f63c885e19@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #170: Test on Solaris 10 amd64 hangs --------------------------------------------------------------------------------------+ Reporter: www.google.com/accounts/o8/id?id=AItOawmzyrEUkUDbHXFBqjFbBoB5p8Ik5X9sR1A | Owner: stuge Type: defect | Status: assigned Priority: normal | Milestone: Component: API | Version: 1.2.5 Keywords: select, timeout, hang | Blocking: Blockedby: | --------------------------------------------------------------------------------------+ Comment(by bagder): His libssh2 uses poll as that stack trace shows... -- Ticket URL: libssh2 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 Apr 15 20:20:53 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FIKpIc016180; Thu, 15 Apr 2010 20:20:53 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FIKmtU016119 for ; Thu, 15 Apr 2010 20:20:48 +0200 Date: Thu, 15 Apr 2010 20:20:48 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Openserver 6 In-Reply-To: Message-ID: References: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 15 Apr 2010, t.clarke wrote: > 'Configure' works fine, but make falls over with a number of errors, eg: > ../include/libssh2.h no macro replacement > session.c line 479(etc) assignment type mismatch > > I assume the seesion.c errors are the result of the 'no macro replacement' > messages (?) I believe this is the same problem we've talked about in other threads. I messed up. I think this problem is reason enough to make another release soon enough. Try this patch: http://www.libssh2.org/mail/libssh2-devel-archive-2010-04/att-0069/0001-wait_socket-make-c89-compliant-and-use-two-fd_sets-f.patch -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 15 20:42:51 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FIgkPU001167; Thu, 15 Apr 2010 20:42:50 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3FIgjVL001148 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Thu, 15 Apr 2010 20:42:45 +0200 Received: (qmail 16559 invoked from network); 15 Apr 2010 18:42:51 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 15 Apr 2010 18:42:51 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Thu, 15 Apr 2010 18:42:51 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #165: size_t conversion X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/165#comment:2 Message-ID: <053.3b5a9a217f96d34265ac4c21754e4acc@libssh2.stuge.se> References: <044.e1ec2089c65b3d0192e00f84b5cdb6b5@libssh2.stuge.se> X-Trac-Ticket-ID: 165 In-Reply-To: <044.e1ec2089c65b3d0192e00f84b5cdb6b5@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #165: size_t conversion -------------------------+-------------------------------------------------- Reporter: roadrunn | Owner: Type: enhancement | Status: new Priority: normal | Milestone: Component: API | Version: 1.2.4 Keywords: | Blocking: Blockedby: | -------------------------+-------------------------------------------------- Comment(by bagder): I would like the patch to start with introducing something like a define that we can alter. Like where 'int' is used but 'size_t' is prefered we do #if 1 /* like today #define INT2SIZE_T int #else #define INT2SIZE_T size_t #endif ... and then we update the public definitions and prototypes to use this define for all those ints. This then makes it very easy for us to do test- builds with the refined API vs the old API. Also, by using a unique define name, we can eventually just do a search & replace for it and get the new type properly once we've taken that step. -- Ticket URL: libssh2 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 Fri Apr 16 09:47:37 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G7lMeG032244; Fri, 16 Apr 2010 09:47:33 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G7lKVi032207 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Fri, 16 Apr 2010 09:47:20 +0200 Received: (qmail 19778 invoked from network); 16 Apr 2010 07:47:23 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 16 Apr 2010 07:47:23 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Fri, 16 Apr 2010 07:47:23 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #170: Test on Solaris 10 amd64 hangs X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/170#comment:4 Message-ID: <117.74b330069aeb519c1350c30418ac8006@libssh2.stuge.se> References: <108.c156adf5583e28b0179ff7f63c885e19@libssh2.stuge.se> X-Trac-Ticket-ID: 170 In-Reply-To: <108.c156adf5583e28b0179ff7f63c885e19@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #170: Test on Solaris 10 amd64 hangs --------------------------------------------------------------------------------------+ Reporter: www.google.com/accounts/o8/id?id=AItOawmzyrEUkUDbHXFBqjFbBoB5p8Ik5X9sR1A | Owner: stuge Type: defect | Status: assigned Priority: normal | Milestone: Component: API | Version: 1.2.5 Keywords: select, timeout, hang | Blocking: Blockedby: | --------------------------------------------------------------------------------------+ Comment(by www.google.com/accounts/o8/id?id=AItOawmzyrEUkUDbHXFBqjFbBoB5p8Ik5X9sR1A): The attached patch unfortunately does not fix the problem, the test still hangs. The SSH version on the system is {{{ debug1: sshd version Sun_SSH_1.1.1 }}} Interestingly, the hang occurs on Solaris 10 x86 64 bit only. On Solaris 10 Sparc it works fine with 32 and 64 bit and also on Solaris 10 x86 with 32 bit. If it would help I can give you an upstream account on the OpenCSW buildfarm to ensure longtem Solaris compatibility. -- Ticket URL: libssh2 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 Fri Apr 16 10:17:00 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G8Grsq018830; Fri, 16 Apr 2010 10:16:58 +0200 Received: from susano.oderland.com (susano.oderland.com [91.201.63.143]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G8Gq0u018793 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Fri, 16 Apr 2010 10:16:52 +0200 Received: from c-03abe355.128-12-64736c13.cust.bredbandsbolaget.se ([85.227.171.3]) by susano.oderland.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from ) id 1O2gjK-00028c-Fa for libssh2-devel@cool.haxx.se; Fri, 16 Apr 2010 10:16:50 +0200 Message-ID: <4BC81CEF.8080601@Strombergson.com> Date: Fri, 16 Apr 2010 10:16:47 +0200 From: =?UTF-8?B?Sm9hY2hpbSBTdHLDtm1iZXJnc29u?= Organization: Kryptologik User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: "'libssh2 development'" Subject: Build status on Mac with gcc and clang X-Enigmail-Version: 1.0.1 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - susano.oderland.com X-AntiAbuse: Original Domain - cool.haxx.se X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - Strombergson.com X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: Joachim@strombergson.com, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEExCgpBbG9oYSEKCkZZ STogMS4yLjUuIGJ1aWxkcyBuaWNlbHkgb24gTWFjT1NYIDEwLjYuMyB3aXRoIHRoZSBkZWZhdWx0 IGdjYyBjb21waWxlcgo0LjIuMS4KCgpJbiBvcmRlciB0byBjaGVjayBidWlsZCBzeXN0ZW0gcG9y dGFiaWxpdHkgYWxzbyB0cmllZCB3aXRoIHRoZSBuZXcgbGx2bQpiYXNlZCBjbGFuZyBjb21waWxl ci4KCmh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ2xhbmcKClRoZSByZXN1bHQgd2FzIGFj dHVhbGx5IHF1aXRlIGJvcmluZyAtIGl0IGp1c3Qgd2VudCB0aHJvdWdoIHRoZSBidWlsZAp3aXRo b3V0IGFueSBwcm9ibGVtcy4gVGhlIG9ubHkgd2FybmluZyBJIGdldCBpcyBkdXJpbmcgYnVpbGQg b2YgZXhhbXBsZXM6CgpjbGFuZzogd2FybmluZzogYXJndW1lbnQgdW51c2VkIGR1cmluZyBjb21w aWxhdGlvbjogJy1ETElCU1NIMl9EQVJXSU4nCgpUaGUgY2xhbmcgY29tcGlsZXIgKGFuZCBiYWNr ZW4pIGRvZXMgKGltaG8pIGEgbXVjaCBiZXR0ZXIgam9iIGF0dAp0cmFja2luZyBkb3duIHByb2Js ZW1zIHRoYW4gZ2NjLCBhbmQgaXQgaW5jbHVkZXMgYW1vbmcgb3RoZXIgdGhpbmcgYQp2ZXJ5IGdv b2Qgc3RhdGljIGFuYWx5emVyLiBJIHRob3VnaHQgaXQgbWlnaHQgYmUgaW50ZXJlc3RpbmcgZm9y IHRoZQpsaWJic2gyIHByb2plY3QgdG8gZ2V0IGZlZWRiYWNrIGZyb20gYSBidWlsZCB3aXRoIGFs bCBjaGVja3MgcnVubmluZy4KCkkgdHJpZWQgdG8gc2V0IENGTEFHUz1XYWxsIGFzIHBhcmFtZXRl ciB0byB0aGUgY29uZmlndXJlIHNjcmlwdCwgYnV0CnRoZW4gaXQgZGlkbid0IHdhbnQgdG8gY3Jl YXRlIGEgd29ya2luZyBidWlsZCBlbnY6CgpjaGVja2luZyBmb3Igc3R5bGUgb2YgaW5jbHVkZSB1 c2VkIGJ5IG1ha2UuLi4gR05VCmNoZWNraW5nIGZvciBnY2MuLi4gY2xhbmcKY2hlY2tpbmcgd2hl dGhlciB0aGUgQyBjb21waWxlciB3b3Jrcy4uLiBubwpjb25maWd1cmU6IGVycm9yOiBpbiBgL1Vz ZXJzL2pzL3RtcC91bnRhci9saWJzc2gyLTEuMi41JzoKY29uZmlndXJlOiBlcnJvcjogQyBjb21w aWxlciBjYW5ub3QgY3JlYXRlIGV4ZWN1dGFibGVzCgpEYXJuLgoKSXMgdGhpcyB0aGUgcmlnaHQg d2F5IHRvIGVuYWJsZSB3YXJuaW5nIGZsYWdzLCBwZWRhbnRpYyBldGMgdG8gdGhlCmxpYnNzaDIg YnVpbGQ/CgotIC0tIApNZWQgdsOkbmxpZyBow6Rsc25pbmcsIFlvdXJzCgpKb2FjaGltIFN0csO2 bWJlcmdzb24gLSBBbGx0aWQgaSBoYXJtb25pc2sgc3bDpG5nbmluZy4KPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 CktyeXB0b2Jsb2cgLSBJVC1zw6RrZXJoZXQgcMOlIHN2ZW5za2EKaHR0cDovL3d3dy5zdHJvbWJl cmdzb24uY29tL2tyeXB0b2Jsb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0tQkVHSU4gUEdQIFNJR05B VFVSRS0tLS0tClZlcnNpb246IEdudVBHIHYxLjQuOSAoRGFyd2luKQpDb21tZW50OiBVc2luZyBH bnVQRyB3aXRoIE1vemlsbGEgLSBodHRwOi8vZW5pZ21haWwubW96ZGV2Lm9yZy8KCmlFWUVBUkVD QUFZRkFrdklITzhBQ2drUVpvUHI4SFQzMFFFbnN3Q2czbWxTSklnMjJ2dW9tSVgvZHdIZFZGY1kK ZFBjQW5qa0w5Qm9DeXovRXZrSUtlUHBxNUVycXpLdWYKPTJONi8KLS0tLS1FTkQgUEdQIFNJR05B VFVSRS0tLS0tCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmxpYnNzaDItZGV2ZWwgaHR0cDovL2Nvb2wuaGF4eC5zZS9jZ2ktYmluL21haWxtYW4vbGlzdGlu Zm8vbGlic3NoMi1kZXZlbAo= From libssh2-devel-bounces@cool.haxx.se Fri Apr 16 10:30:05 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G8TxSm031763; Fri, 16 Apr 2010 10:30:04 +0200 Received: from susano.oderland.com (susano.oderland.com [91.201.63.143]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G8Tw1E031756 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Fri, 16 Apr 2010 10:29:58 +0200 Received: from c-03abe355.128-12-64736c13.cust.bredbandsbolaget.se ([85.227.171.3]) by susano.oderland.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from ) id 1O2gvz-00038B-R6; Fri, 16 Apr 2010 10:29:56 +0200 Message-ID: <4BC82001.5060007@Strombergson.com> Date: Fri, 16 Apr 2010 10:29:53 +0200 From: =?UTF-8?B?Sm9hY2hpbSBTdHLDtm1iZXJnc29u?= Organization: Kryptologik User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: Joachim@strombergson.com, libssh2 development Subject: Re: Build status on Mac with gcc and clang References: <4BC81CEF.8080601@Strombergson.com> In-Reply-To: <4BC81CEF.8080601@Strombergson.com> X-Enigmail-Version: 1.0.1 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - susano.oderland.com X-AntiAbuse: Original Domain - cool.haxx.se X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - Strombergson.com X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: Joachim@strombergson.com, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEExCgpBbG9oYSEKCk9u IDIwMTAtMDQtMTYgMTA6MTYsIEpvYWNoaW0gU3Ryw7ZtYmVyZ3NvbiB3cm90ZToKPiBJcyB0aGlz IHRoZSByaWdodCB3YXkgdG8gZW5hYmxlIHdhcm5pbmcgZmxhZ3MsIHBlZGFudGljIGV0YyB0byB0 aGUKPiBsaWJzc2gyIGJ1aWxkPwoKRG9oOiBDRkxBR1M9Jy1XYWxsJyB3b3JrcyBtdWNoIGJldHRl ci4KCi0gLS0gCk1lZCB2w6RubGlnIGjDpGxzbmluZywgWW91cnMKCkpvYWNoaW0gU3Ryw7ZtYmVy Z3NvbiAtIEFsbHRpZCBpIGhhcm1vbmlzayBzdsOkbmduaW5nLgo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KS3J5 cHRvYmxvZyAtIElULXPDpGtlcmhldCBww6Ugc3ZlbnNrYQpodHRwOi8vd3d3LnN0cm9tYmVyZ3Nv bi5jb20va3J5cHRvYmxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJF LS0tLS0KVmVyc2lvbjogR251UEcgdjEuNC45IChEYXJ3aW4pCkNvbW1lbnQ6IFVzaW5nIEdudVBH IHdpdGggTW96aWxsYSAtIGh0dHA6Ly9lbmlnbWFpbC5tb3pkZXYub3JnLwoKaUVZRUFSRUNBQVlG QWt2SUlBRUFDZ2tRWm9QcjhIVDMwUUYxWFFDZU02V0VZcTN5QTFXMFBWQUtxM2xrbU85cgpONzhB b0pzcTl2QlhITWJMZnJEZHo4YnpJUi8rUE50awo9YTF1YQotLS0tLUVORCBQR1AgU0lHTkFUVVJF LS0tLS0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGli c3NoMi1kZXZlbCBodHRwOi8vY29vbC5oYXh4LnNlL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9s aWJzc2gyLWRldmVsCg== From libssh2-devel-bounces@cool.haxx.se Fri Apr 16 11:16:38 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G9GQr3001445; Fri, 16 Apr 2010 11:16:36 +0200 Received: from susano.oderland.com (susano.oderland.com [91.201.63.143]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G9GPSt001433 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Fri, 16 Apr 2010 11:16:25 +0200 Received: from c-03abe355.128-12-64736c13.cust.bredbandsbolaget.se ([85.227.171.3]) by susano.oderland.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from ) id 1O2hex-0006e4-Ku for libssh2-devel@cool.haxx.se; Fri, 16 Apr 2010 11:16:23 +0200 Message-ID: <4BC82AE4.1090108@Strombergson.com> Date: Fri, 16 Apr 2010 11:16:20 +0200 From: =?UTF-8?B?Sm9hY2hpbSBTdHLDtm1iZXJnc29u?= Organization: Kryptologik User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: libssh2 development Subject: Results from running the scan-build on libssh2 1.2.5 X-Enigmail-Version: 1.0.1 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - susano.oderland.com X-AntiAbuse: Original Domain - cool.haxx.se X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - Strombergson.com X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: Joachim@strombergson.com, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEExCgpBbG9oYSEKCkkg Z290IHRoZSBjbGFuZy9sbHZtIHN0YXRpYyBhbmFseXplciBbMV0gdG8gd29yayBvbiBsaWJzc2gg MS4yLjUuIFRoZQp0b29sIGZvdW5kIGluIHRvdGFsIDY2IGJ1Z3MuIE9mIHRoZXNlIDExIGFyZSBk ZWFkIGFzc2lnbWVudCBhbmQgMzggZGVhZAppbmNyZW1lbnRzLiBUaGVyZSBhcmUgaG93ZXZlciBh IGNvdXBsZSBvZiBsb2dpY2FsIGVycm9ycyB0aGF0IGxvb2tzCnBsYXVzaWJsZSAobm90IGZhbHNl IHBvc2l0aXZlcykuCgp0aGUgdG9vbCBnZW5lcmF0ZXMgcmVwb3J0IGFzIGEgYnVuY2ggb2YgSFRN TCBmaWxlcy4gSSd2ZSBjcmVhdGVkIGEKdGFyYmFsbCBvZiB0aGUgSFRNTCByZXBvcnQgYW5kIHBs YWNlZCBpdCBvbiBLcnlwdG9ibG9nOgoKaHR0cDovL3d3dy5zdHJvbWJlcmdzb24uY29tL2tyeXB0 b2Jsb2cvd3AtY29udGVudC9yZXBvcnRzX3NjYW4tYnVpbGQtMjAxMC0wNC0xNi0xLnRhci5negoK V2hhdCB3b3VsZCBiZSBhIGdvb2QgbmV4dCBzdGVwPwoKWzFdIENsYW5nIFN0YXRpYyBBbmFseXpl cgpodHRwOi8vY2xhbmctYW5hbHl6ZXIubGx2bS5vcmcvCi0gLS0gCk1lZCB2w6RubGlnIGjDpGxz bmluZywgWW91cnMKCkpvYWNoaW0gU3Ryw7ZtYmVyZ3NvbiAtIEFsbHRpZCBpIGhhcm1vbmlzayBz dsOkbmduaW5nLgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KS3J5cHRvYmxvZyAtIElULXPDpGtlcmhldCBww6Ug c3ZlbnNrYQpodHRwOi8vd3d3LnN0cm9tYmVyZ3Nvbi5jb20va3J5cHRvYmxvZwo9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KLS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0KVmVyc2lvbjogR251UEcgdjEuNC45 IChEYXJ3aW4pCkNvbW1lbnQ6IFVzaW5nIEdudVBHIHdpdGggTW96aWxsYSAtIGh0dHA6Ly9lbmln bWFpbC5tb3pkZXYub3JnLwoKaUVZRUFSRUNBQVlGQWt2SUt1UUFDZ2tRWm9QcjhIVDMwUUVYM1FD ZEVrYjUwRXN5dDQvQ1BFVFNJWCt2SU5JYwpnSEFBb05UemZGUmJHbm8yeHhXMXJnM0EzZzYwL2xl ZAo9V2xnQwotLS0tLUVORCBQR1AgU0lHTkFUVVJFLS0tLS0KX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KbGlic3NoMi1kZXZlbCBodHRwOi8vY29vbC5oYXh4 LnNlL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9saWJzc2gyLWRldmVsCg== From libssh2-devel-bounces@cool.haxx.se Fri Apr 16 11:48:53 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G9mnE5028793; Fri, 16 Apr 2010 11:48:53 +0200 Received: from susano.oderland.com (susano.oderland.com [91.201.63.143]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G9lCW6028086 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Fri, 16 Apr 2010 11:47:13 +0200 Received: from c-03abe355.128-12-64736c13.cust.bredbandsbolaget.se ([85.227.171.3]) by susano.oderland.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from ) id 1O2i8l-0000rV-F3 for libssh2-devel@cool.haxx.se; Fri, 16 Apr 2010 11:47:11 +0200 Message-ID: <4BC8321C.8020903@Strombergson.com> Date: Fri, 16 Apr 2010 11:47:08 +0200 From: =?UTF-8?B?Sm9hY2hpbSBTdHLDtm1iZXJnc29u?= Organization: Kryptologik User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: libssh2 development Subject: New scan-build w debug and verbosity X-Enigmail-Version: 1.0.1 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - susano.oderland.com X-AntiAbuse: Original Domain - cool.haxx.se X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - Strombergson.com X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: Joachim@strombergson.com, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEExCgpBbG9oYSEKCkp1 c3QgdG8gY29uZnVzZSB5b3Ugc29tZSBtb3JlIEkndmUgZG9uZSBhIHNlY29uZCBydW4gd2l0aCB0 aGUgc3RhdGljCmFuYWx5emVyIG9uIHRoZSAxLjIuNSBjb2RlIGJhc2UsIHRoaXMgdGltZSB3aXRo IGRlYnVnIGZsYWdzIGVuYWJsZWQKZHJpbmcgYnVpbGQgYW5kIHZlcmJvc2l0eSBlbmFibGVkIGlu IHRoZSBzY2FubmVyLiBUaGUgcmVzdWx0cyBpcyBhbG1vc3QKdGhlIHNhbWUsIDY3IHByb2JsZW1z IGNvbXBhcmVkIHRvIDY2LiBJJ3ZlIHVwbG9hZGVkIGEgc2Vjb25kIHRhcmJhbGwKd2l0aCB0aGUg cmVwb3J0czoKCmh0dHA6Ly93d3cuc3Ryb21iZXJnc29uLmNvbS9rcnlwdG9ibG9nL3dwLWNvbnRl bnQvcmVwb3J0c19zY2FuLWJ1aWxkLTIwMTAtMDQtMTYtMi50YXIuZ3oKCi0gLS0gCk1lZCB2w6Ru bGlnIGjDpGxzbmluZywgWW91cnMKCkpvYWNoaW0gU3Ryw7ZtYmVyZ3NvbiAtIEFsbHRpZCBpIGhh cm1vbmlzayBzdsOkbmduaW5nLgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KS3J5cHRvYmxvZyAtIElULXPDpGtl cmhldCBww6Ugc3ZlbnNrYQpodHRwOi8vd3d3LnN0cm9tYmVyZ3Nvbi5jb20va3J5cHRvYmxvZwo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KLS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0KVmVyc2lvbjogR251 UEcgdjEuNC45IChEYXJ3aW4pCkNvbW1lbnQ6IFVzaW5nIEdudVBHIHdpdGggTW96aWxsYSAtIGh0 dHA6Ly9lbmlnbWFpbC5tb3pkZXYub3JnLwoKaUVZRUFSRUNBQVlGQWt2SU1od0FDZ2tRWm9QcjhI VDMwUUhHR1FDZEd5ZFJvbHlRL0ZhcFNlblAwSlZhT1lEUAo5Y29BbkFtTlJYZnBVUnlGSWluV08v NExZWkRZVWluaAo9a3NOOQotLS0tLUVORCBQR1AgU0lHTkFUVVJFLS0tLS0KX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGlic3NoMi1kZXZlbCBodHRwOi8v Y29vbC5oYXh4LnNlL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9saWJzc2gyLWRldmVsCg== From libssh2-devel-bounces@cool.haxx.se Fri Apr 16 12:08:37 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3GA8VDM013941; Fri, 16 Apr 2010 12:08:35 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3GA8V5U013935; Fri, 16 Apr 2010 12:08:31 +0200 Date: Fri, 16 Apr 2010 12:08:31 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: Joachim@strombergson.com, libssh2 development Subject: Re: Results from running the scan-build on libssh2 1.2.5 In-Reply-To: <4BC82AE4.1090108@Strombergson.com> Message-ID: References: <4BC82AE4.1090108@Strombergson.com> User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) X-fromdanielhimself: yes MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-1470944514-1016260540-1271409686=:24000" Content-ID: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: 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. ---1470944514-1016260540-1271409686=:24000 Content-Type: TEXT/PLAIN; CHARSET=ISO-8859-15; FORMAT=flowed Content-Transfer-Encoding: 8BIT Content-ID: On Fri, 16 Apr 2010, Joachim Strömbergson wrote: > I got the clang/llvm static analyzer [1] to work on libssh 1.2.5. The tool > found in total 66 bugs. Of these 11 are dead assigment and 38 dead > increments. There are however a couple of logical errors that looks > plausible (not false positives). > > What would be a good next step? I think we should work on fixing ALL the warnings. Even fixing the silly ones make the actual ones stand out better and get proper notice. I'll grab your tarballs and start going over them. Oh, and thanks! -- / daniel.haxx.se ---1470944514-1016260540-1271409686=:24000 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 ---1470944514-1016260540-1271409686=:24000-- From libssh2-devel-bounces@cool.haxx.se Fri Apr 16 22:34:49 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3GKYacg020077; Fri, 16 Apr 2010 22:34:47 +0200 Received: from web27608.mail.ukl.yahoo.com (web27608.mail.ukl.yahoo.com [217.146.177.227]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3GKYZ9F020046 for ; Fri, 16 Apr 2010 22:34:35 +0200 Received: (qmail 12538 invoked by uid 60001); 16 Apr 2010 20:34:37 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s1024; t=1271450077; bh=5c+Hto9mOc0/gdt+MIX8ZLdvWsSsWkRgc+QZrlDib6k=; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=OTWe9umUuT0uudVt+YM2cAdonjpU/UmKsVvFFoeau4+Z8NqK3Fab4ykVAZIQR/Ft6ov4ukO8+dMXi5IkXKZF9Tuan4ANBGAshbgQ+zGR/qJX+JSdksLNZ4WUjRbTPb4oK0CWAYx6mG/lctyM/UGvRsKXstOG0HuYMG+msH7VI/g= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.co.uk; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=G/+zFdeU7ly6vtCsySinPu2YJwreIB72q7nb+b7gWrEwbCz0W/dvW5Xhw8pViGneBMA6f76TiTnZP/ilfC0ZmL+rUMx1JmzXm5DDk8ty2j9jAX2SJvcgBNHtEr95K5U1wIPJSLh0GYQ1xg37mOQhNerEtaqClIuBBoF/XwjsUfc=; Message-ID: <833915.9776.qm@web27608.mail.ukl.yahoo.com> X-YMail-OSG: OkUy6tMVM1kvC5HgPFMI5unZS7U7b7X_Qwgboj.ZaWa5jpR 9XjeUHXeEiMNHhX3gvDpshqA9NB6BzaslnE7l1HaHuR9WcRtx9aUhNN8KlZl fxH7cg6NaaB4Xb1vwehU3TwlGUQB8ZSQ.E3XKJsye4oViEpppER97Vh.WJCm cEq.TLE6A3cQHXTtS0RkRRjTV0t_fnX8cwVYUvzx4eh437e8X4f7iGp8OUm_ Ec5IXjCDjYkD60GlRMYRAdbibs_KzWIFfsisT8F1ibz7aw3m_K2ihYNPSvn0 - Received: from [81.97.128.251] by web27608.mail.ukl.yahoo.com via HTTP; Fri, 16 Apr 2010 20:34:37 GMT X-Mailer: YahooMailClassic/10.1.9 YahooMailWebService/0.8.100.260964 Date: Fri, 16 Apr 2010 20:34:37 +0000 (GMT) From: Lyndon Hill Subject: Re: Compile Problem To: libssh2-devel@cool.haxx.se MIME-Version: 1.0 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi, Can someone please send me Peter's patch ? It doesn't show up in the mail archive and I only subscribed to this list recently. Thanks! _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Fri Apr 16 22:39:15 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3GKdENx022102; Fri, 16 Apr 2010 22:39:15 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3GKdDCm022097 for ; Fri, 16 Apr 2010 22:39:13 +0200 Date: Fri, 16 Apr 2010 22:39:13 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Compile Problem In-Reply-To: <833915.9776.qm@web27608.mail.ukl.yahoo.com> Message-ID: References: <833915.9776.qm@web27608.mail.ukl.yahoo.com> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Fri, 16 Apr 2010, Lyndon Hill wrote: > Can someone please send me Peter's patch ? It doesn't show up in the mail > archive and I only subscribed to this list recently. First, you could try the current git/daily snapshot which should have the problem fixed. But if you still want Peter's patch, it is in trac for issue #170: http://libssh2.stuge.se/attachment/ticket/170/0001-_libssh2_wait_socket-select-on-separate-fd_sets-for-.patch -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 06:01:04 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3H40mvH024825; Sat, 17 Apr 2010 06:01:00 +0200 Received: from m13-181.163.com (m13-181.163.com [220.181.13.181]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3H40jq8024693 for ; Sat, 17 Apr 2010 06:00:46 +0200 Received: from drswinghead ( [117.79.246.3] ) by ajax-webmail-wmsvr181 (Coremail) ; Sat, 17 Apr 2010 12:00:33 +0800 (CST) Date: Sat, 17 Apr 2010 12:00:33 +0800 (CST) From: drswinghead To: "libssh2 development" Message-ID: <1150606.2ab0.12809eccb83.Coremail.drswinghead@163.com> In-Reply-To: References: <833915.9776.qm@web27608.mail.ukl.yahoo.com> Subject: libssh2_sftp_symlink_ex's manual has problem MIME-Version: 1.0 X-Originating-IP: [117.79.246.3] X-Priority: 3 X-Mailer: Coremail Webmail Server Version SP_ntes V3.5 build 100402(10246.2986.2982) Copyright (c) 2002-2010 www.mailtech.cn 163com X-CM-CTRLDATA: 64xIxWZvb3Rlcl9odG09MjM5OjQ0 X-CM-TRANSID: tcGowKB75upiMslLw4oYAA--.2089W X-CM-SenderInfo: 5guv4x5qjkvtrg6rljoofrz/1tbiage1ekokoKv5xQAAs7 X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1328883081==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============1328883081== Content-Type: multipart/alternative; boundary="----=_Part_28374_17316570.1271476833155" ------=_Part_28374_17316570.1271476833155 Content-Type: text/plain; charset=gbk Content-Transfer-Encoding: 7bit in http://www.libssh2.org//libssh2_sftp_symlink_ex.html, the manual says it retrun 0 on success, but i read source code, it readly retrun the link_len. when will it return 0 ? what's mean when return 0? ------=_Part_28374_17316570.1271476833155 Content-Type: text/html; charset=gbk Content-Transfer-Encoding: 7bit
in http://www.libssh2.org//libssh2_sftp_symlink_ex.html, the manual says it retrun 0 on success, but i read source code, it readly retrun the link_len.
when will it return 0 ? what's mean when return 0?



------=_Part_28374_17316570.1271476833155-- --===============1328883081== 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 --===============1328883081==-- From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 09:47:02 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3H7kopQ004105; Sat, 17 Apr 2010 09:47:00 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3H7kmVp004054 for ; Sat, 17 Apr 2010 09:46:48 +0200 Date: Sat, 17 Apr 2010 09:46:48 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: libssh2_sftp_symlink_ex's manual has problem In-Reply-To: <1150606.2ab0.12809eccb83.Coremail.drswinghead@163.com> Message-ID: References: <833915.9776.qm@web27608.mail.ukl.yahoo.com> <1150606.2ab0.12809eccb83.Coremail.drswinghead@163.com> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Sat, 17 Apr 2010, drswinghead wrote: > in http://www.libssh2.org//libssh2_sftp_symlink_ex.html, the manual says it > retrun 0 on success, but i read source code, it readly retrun the link_len. Yes! For all "normal" read cases it certainly seems to return link_len. > when will it return 0 ? what's mean when return 0? There's only one way for it to return 0. That happens if server responds SSH_FXP_STATUS OK to the command, instead of a SSH_FXP_NAME and data. I guess the _creation_ of a symlink then returns this if successful. I'll update the man page! -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 13:08:44 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HB8U4r024003; Sat, 17 Apr 2010 13:08:41 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HB8UZJ023994 for ; Sat, 17 Apr 2010 13:08:30 +0200 Date: Sat, 17 Apr 2010 13:08:30 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: spring cleaning step #1 Message-ID: User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) X-fromdanielhimself: yes MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-1470944514-888216128-1271494513=:21501" Content-ID: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: 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. ---1470944514-888216128-1271494513=:21501 Content-Type: TEXT/PLAIN; FORMAT=flowed; CHARSET=ISO-8859-15 Content-Transfer-Encoding: 8BIT Content-ID: Hey I started going through the clang-analyzer report Joachim Strömbergson posted, only to realize that a bunch of the warnings there are artifacts of some internal designs we could fix up all over. So I decided I'll postpone analyzer work and do some general cleanups first. I'll introduce a new internal function set named _libssh2_store_u32 _libssh2_store_u64 _libssh2_store_str That can be used all through the library to build binary outgoing packets. Using these instead of the current approach removes hundreds of lines from the library while at the same time greatly enhances readability. I've not yet fully converted everything to use these functions. I've converted LOTS of 'unsigned long' to 'size_t' where data/string lengths are dealt with internally. This is The Right Thing and it will help us make the transition to our size_t-polished API later on as well. I'm removing the PACKET_* error codes. They were originally introduced as a set of separate error codes from the transport layer, but having its own set of errors turned out to be very awkward and they were then converted into a set of #defines that simply maps them to the global libssh2 error codes instead. Now, I'l take the next logical step and simply replace the PACKET_* defines with the actual LIBSSH2_ERROR_* defines. It will increase readability and decrease confusion. I'll appreciate some extra eyeballs on the builds after I've pushed this monster: $ git diff --stat Makefile.inc | 2 +- src/agent.c | 20 ++-- src/channel.c | 280 ++++++++++++++++------------------------------- src/hostkey.c | 20 ++-- src/keepalive.c | 2 +- src/kex.c | 28 +++--- src/libgcrypt.c | 4 +- src/libssh2_priv.h | 156 +++++++++----------------- src/misc.c | 21 ++++- src/misc.h | 7 + src/openssl.c | 4 +- src/openssl.h | 4 +- src/packet.c | 62 +++++----- src/publickey.c | 40 ++++---- src/scp.c | 34 +++--- src/session.c | 37 ++---- src/sftp.c | 291 ++++++++++++++++++------------------------------- src/transport.c | 62 +++++----- src/transport.h | 1 + src/userauth.c | 310 ++++++++++++++++------------------------------------ tests/ssh2.sh | 2 +- 21 files changed, 524 insertions(+), 863 deletions(-) -- / daniel.haxx.se ---1470944514-888216128-1271494513=:21501 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 ---1470944514-888216128-1271494513=:21501-- From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 13:45:00 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HBisIn013343; Sat, 17 Apr 2010 13:45:00 +0200 Received: from mail-wy0-f182.google.com (mail-wy0-f182.google.com [74.125.82.182]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HBiqLh013287 for ; Sat, 17 Apr 2010 13:44:52 +0200 Received: by wyf28 with SMTP id 28so289197wyf.41 for ; Sat, 17 Apr 2010 04:44:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:received:message-id:subject :from:to:content-type; bh=DGX9W1ntGkjk9a9sFaSBQ16xnY1jQrJIIaYdVWbFxMk=; b=p3lXX+dlWmEH2ODNM7ymGRNO0r/dmNYmCuymD746waxB7Nv2qYs2RY1PWSLm3YyB+b ntz76vpkh/OKLt7vTaaROY93el1V86RiGUtb7ephXA6b1+T7ZcukYkhY7Y8dUB+5oMWj dqFmj6OwXeIe7VGusyJ2ecIYvQgaPRJ16k/nw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type; b=CrZicg7QzSIlBpIMAMFZnEvV6hWo0S8bg8axKtxVnNo38S81OcEyLeRgDIEk8sCoLL BPGStLgyeNdWwU5+Fe7FgAktV9j2Vgc6kAKpS0+GOyvbhCuVqC4qGBc6aEdPexWDK/X7 cfDZqYsXjl1XofXg6bw/0YZw3Z2Fk96nvLUuY= MIME-Version: 1.0 Received: by 10.216.70.16 with HTTP; Sat, 17 Apr 2010 04:44:51 -0700 (PDT) In-Reply-To: References: Date: Sat, 17 Apr 2010 12:44:51 +0100 X-Google-Sender-Auth: 2a41927bf5048ac2 Received: by 10.216.155.17 with SMTP id i17mr3697682wek.4.1271504691147; Sat, 17 Apr 2010 04:44:51 -0700 (PDT) Message-ID: Subject: Re: spring cleaning step #1 From: Alexander Lamaison To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On 17 April 2010 12:08, Daniel Stenberg wrote: > > I've converted LOTS of 'unsigned long' to 'size_t' where data/string lengths > are dealt with internally. This is The Right Thing and it will help us make > the transition to our size_t-polished API later on as well. I notice also that you changed many non-size unsigned longs to ints. What was the motivation for this? (I'm not suggesting its wrong - just that my understanding of the practical implications of signed v unsigned in C is hazy at best). Alex _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 16:41:46 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEfTOj003234; Sat, 17 Apr 2010 16:41:41 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEfSTr003194 for ; Sat, 17 Apr 2010 16:41:28 +0200 Date: Sat, 17 Apr 2010 16:41:28 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: spring cleaning step #1 In-Reply-To: Message-ID: References: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Sat, 17 Apr 2010, Alexander Lamaison wrote: > I notice also that you changed many non-size unsigned longs to ints. What > was the motivation for this? (I'm not suggesting its wrong - just that my > understanding of the practical implications of signed v unsigned in C is > hazy at best). I changed the types according to this: 'size_t' - for all data sizes, as they often are calculated using pointer arithmetic and long is not portable enough for this. 'uint32_t' - for variables that are known to be exactly 32 bits, mostly those are data fields specific to the actual SSH protocol. 'int' - for variables that are just counters and generic values that are not likely to be extremely large (ie they will always be less than 2 billion). As this is mostly manual edits I may of course have done it wrongly at some place, but I've tried to apply the guidelines above. There are still a bunch of 'unsigned long' left in the code, and most of them can be changed to one of the above over time. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 16:44:21 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEiKhK007427; Sat, 17 Apr 2010 16:44:21 +0200 Received: from mail-ww0-f54.google.com (mail-ww0-f54.google.com [74.125.82.54]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEiIZx007246 for ; Sat, 17 Apr 2010 16:44:18 +0200 Received: by wwa36 with SMTP id 36so2024985wwa.41 for ; Sat, 17 Apr 2010 07:44:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:received:message-id:subject :from:to:content-type:content-transfer-encoding; bh=Ycs6QuoYp+RWvysCsklzrXMAF1+FAYXXEm6QVlTWtoE=; b=iqPC7dGWNO9qvbnD0QeVHD9BCc91Aov0J027vlAAtG+z+L8Sz7SGszN8nu3eCX0TAr mCv3FlbxddfKMoLVzeG1gnN2InMNm29TdnEOmgnPDK9cVV21XiMWIOAWrQQIVCjdxef4 31XXyAPdms9bviRpbj7mVFN491wdAquev0ObI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type :content-transfer-encoding; b=oVhVjBXn+l/zimPbtQOjgrAcMMp95FmqTUKk5IleBGz0GU3WuKJVfKH5Lh0zd2Zmlf ExinD6MlUZRbh2Lk8DOkDnR8KiblWgjzyQf5F1Ze2QyFjkTbL1yZijIHEl47jSQvKWeU Tl+mDanIDoKLbVC+CqXptIHBsdjFx3rgm40lA= MIME-Version: 1.0 Received: by 10.216.70.16 with HTTP; Sat, 17 Apr 2010 07:44:17 -0700 (PDT) In-Reply-To: References: Date: Sat, 17 Apr 2010 15:44:17 +0100 X-Google-Sender-Auth: 9487dfe0c085f8a4 Received: by 10.216.157.202 with SMTP id o52mr3705308wek.212.1271515457902; Sat, 17 Apr 2010 07:44:17 -0700 (PDT) Message-ID: Subject: Re: spring cleaning step #1 From: Alexander Lamaison To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On 17 April 2010 15:41, Daniel Stenberg wrote: > On Sat, 17 Apr 2010, Alexander Lamaison wrote: > >> I notice also that you changed many non-size unsigned longs to ints. What >> was the motivation for this? =A0(I'm not suggesting its wrong - just tha= t my >> understanding of the practical implications of signed v unsigned in C is >> hazy at best). > > I changed the types according to this: > 'int' - for variables that are just counters and generic values that are = not > likely to be extremely large (ie they will always be less than 2 billion). My question relates to this change. Why is int better than unsigned long? Alex _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 16:46:39 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEka4w011412; Sat, 17 Apr 2010 16:46:39 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEkZ9r011397 for ; Sat, 17 Apr 2010 16:46:36 +0200 Date: Sat, 17 Apr 2010 16:46:35 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: spring cleaning step #1 In-Reply-To: Message-ID: References: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Sat, 17 Apr 2010, Alexander Lamaison wrote: >> 'int' - for variables that are just counters and generic values that are not >> likely to be extremely large (ie they will always be less than 2 billion). > > My question relates to this change. Why is int better than unsigned long? Because 'int' is defined to be the "natural" data size for the architecture. Thus it is generally faster and make better generated code than forcing it to be another type. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 16:48:14 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEmCaW012686; Sat, 17 Apr 2010 16:48:13 +0200 Received: from mail-wy0-f182.google.com (mail-wy0-f182.google.com [74.125.82.182]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEmCuY012665 for ; Sat, 17 Apr 2010 16:48:12 +0200 Received: by wyf28 with SMTP id 28so336780wyf.41 for ; Sat, 17 Apr 2010 07:48:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:received:message-id:subject :from:to:content-type:content-transfer-encoding; bh=eNBT/7vUDdrR6VT5+g5ncOOSo4pXkM5W5jQ6TqJRTfY=; b=TvV4RgPpNFedZiH3GR1JvEaAe5y2CoYX7IwRMcUQxLHelnYNDSlSn/lLOU5dF7Kq/z qzMQYQS7+1nfAMUJDcNZvCx8Lh91ESaYcgudrXVRi/a+pdqQXay5ZSMdeuKCih87dMS7 dJOiqyLs6ft77VGpURm83hVK++bulv6Pn2peU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type :content-transfer-encoding; b=rsAeIk2EwFWOkH8eTpQ8XOLMUyq0SncfV+zXVm+g1ustgROC2d6oSxDyxRi6Q19y0I NL54kPlUQhpSz3wfrvy4pgUo9yNVdSCpnAYe1V4Gh/6+Uli5hQ8cxoX/R8yGW+a2nk3o EmNE5DJ1iZghX3B7XyC7XgWwtW1t9n6h0Qbk0= MIME-Version: 1.0 Received: by 10.216.70.16 with HTTP; Sat, 17 Apr 2010 07:48:11 -0700 (PDT) In-Reply-To: References: Date: Sat, 17 Apr 2010 15:48:11 +0100 X-Google-Sender-Auth: bb5fbe810f46049e Received: by 10.216.157.145 with SMTP id o17mr3852695wek.125.1271515691798; Sat, 17 Apr 2010 07:48:11 -0700 (PDT) Message-ID: Subject: Re: spring cleaning step #1 From: Alexander Lamaison To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On 17 April 2010 15:46, Daniel Stenberg wrote: > On Sat, 17 Apr 2010, Alexander Lamaison wrote: > >>> 'int' - for variables that are just counters and generic values that are >>> not >>> likely to be extremely large (ie they will always be less than 2 >>> billion). >> >> My question relates to this change. =A0Why is int better than unsigned l= ong? > > Because 'int' is defined to be the "natural" data size for the architectu= re. > Thus it is generally faster and make better generated code than forcing it > to be another type. I wasn't aware of that. What about the signedness? Is that significant? Alex _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 16:49:57 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEntKI013793; Sat, 17 Apr 2010 16:49:57 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEnrSa013784 for ; Sat, 17 Apr 2010 16:49:53 +0200 Date: Sat, 17 Apr 2010 16:49:53 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: spring cleaning step #1 In-Reply-To: Message-ID: References: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Sat, 17 Apr 2010, Alexander Lamaison wrote: >> Because 'int' is defined to be the "natural" data size for the >> architecture. Thus it is generally faster and make better generated code >> than forcing it to be another type. > > I wasn't aware of that. What about the signedness? Is that significant? Signedness can be important and significant, but unless it is important I tend to just prefer plain (signed) 'int'. I don't think I removed the unsignedness from anything that need it. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 16:57:09 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEv5ru021700; Sat, 17 Apr 2010 16:57:08 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HEv3xe021683; Sat, 17 Apr 2010 16:57:03 +0200 Date: Sat, 17 Apr 2010 16:57:03 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: Joachim@strombergson.com, libssh2 development Subject: Re: New scan-build w debug and verbosity In-Reply-To: <4BC8321C.8020903@Strombergson.com> Message-ID: References: <4BC8321C.8020903@Strombergson.com> User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) X-fromdanielhimself: yes MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-1470944514-189924191-1271516223=:21501" X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: 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. ---1470944514-189924191-1271516223=:21501 Content-Type: TEXT/PLAIN; charset=utf-8; format=flowed Content-Transfer-Encoding: 8BIT On Fri, 16 Apr 2010, Joachim Strömbergson wrote: > > Just to confuse you some more I've done a second run with the static > analyzer on the 1.2.5 code base, this time with debug flags enabled dring > build and verbosity enabled in the scanner. The results is almost the same, > 67 problems compared to 66. I've uploaded a second tarball with the reports: Many thanks! With my cleanup, I'm down to 40 warnings. I've added a crontab job that now runs the clang analyzer daily on the current git head and the results can be found at: http://www.libssh2.org/scans/ I'll make it keep a backlog of 20 days or so. -- / daniel.haxx.se ---1470944514-189924191-1271516223=:21501 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 ---1470944514-189924191-1271516223=:21501-- From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 19:56:17 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HHu3A5030038; Sat, 17 Apr 2010 19:56:15 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HHu1ZC029995 for ; Sat, 17 Apr 2010 19:56:01 +0200 Date: Sat, 17 Apr 2010 19:56:01 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: large SCP transfers Message-ID: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi I've been annoyed for quite some time that libssh2 didn't support large file transfers with SCP, so today I introduced libssh2_scp_send64() which offers exactly that. It is meant to be a replacement function for the existing libssh2_scp_send_ex() function so it has the exact same argument sets, it only has some modified data types. I'll appreciate some eyes on that. I've not actually tested large files yet... Something that struck me while looking at this, is that we're using snprintf() at a couple of places in the code base, and that certainly is not around in older systems so I figure we should consider adding some configure magic for this... -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 19:59:49 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HHxlP8031161; Sat, 17 Apr 2010 19:59:49 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HHxkUT031145 for ; Sat, 17 Apr 2010 19:59:46 +0200 Date: Sat, 17 Apr 2010 19:59:46 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: aes128-ctr with ancient OpenSSL Message-ID: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi I just thought I'd share some insights that Aris in our sister project libssh dug up about aes128-ctr on OpenSSL before 0.9.7c. It's broken: http://blog.0xbadc0de.be/archives/15 -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 20:36:44 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HIacU4032060; Sat, 17 Apr 2010 20:36:43 +0200 Received: from n24.bullet.mail.ukl.yahoo.com (n24.bullet.mail.ukl.yahoo.com [87.248.110.141]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3HIaaSM031958 for ; Sat, 17 Apr 2010 20:36:36 +0200 Received: from [217.146.182.177] by n24.bullet.mail.ukl.yahoo.com with NNFMP; 17 Apr 2010 18:36:33 -0000 Received: from [87.248.110.110] by t3.bullet.ukl.yahoo.com with NNFMP; 17 Apr 2010 18:36:37 -0000 Received: from [127.0.0.1] by omp215.mail.ukl.yahoo.com with NNFMP; 17 Apr 2010 18:36:37 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 430522.73585.bm@omp215.mail.ukl.yahoo.com Received: (qmail 31715 invoked by uid 60001); 17 Apr 2010 18:36:37 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s1024; t=1271529397; bh=mDsRndctSyY3iysxr9AlRZQSI2HL74S95Ny+CkiRqsc=; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=l/NPUy+/HGczmbeQbjVghqZ2Iu+lKoO1vDqOfNVeXw2KN7GTe55PvD0NHTsSvNGIsIQomTF+Yx4wlYCbeic3BzYrvKWCOfy4x7z3RmPC4yn1NR3hXbg/MzicKEmnSpCtzYMecqd412rZiqQEwEoJftn/6UOOfysHRJvLb1+W36Q= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.co.uk; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=VmjQtn6OSIW/z6Gv/G9KQbADQgLxr51EWdLPDQ3oXhw3i6og85nWHWhmognsgJREtttr7E8dHFJmY+zVUleCmXq2oQtFCJcU6j83XPPOZt6LctrMgdKEtjjvMic3M1yUc76K8+XZLY9Wp8u4nlCkWx6TTZZxqOZG2FuFk0UO32c=; Message-ID: <316954.29979.qm@web27607.mail.ukl.yahoo.com> X-YMail-OSG: QdIjYk0VM1lA9Va.fDco8j82gkDivQ8peA9bJTpQWnk6RoH ucWXBQF3kOt2CL5YnPfOBjq7yafNExR8SHW7jB1S_zxNkSUlv3Z.FENSGT5A jcN7v41esmnIQy1ZWQuzRQeW90bYKfZ7Rfps.maclk6iO6GV2pMpBlvXF1VU WZ8F0611AMRP9umqv7Y9PeZl4G9DVFd.tVMl7vn2o6lwoVj.2stIEk8mjh._ BvFvN4zqSPL0HQ.Dz7TmjF6Ua_PLd3XcYx0xb4d8V9eQhG5XHAV4t8CbE3vD SiVzjKvoUMO5LsP8AzarsyYBBRFyI Received: from [86.25.247.240] by web27607.mail.ukl.yahoo.com via HTTP; Sat, 17 Apr 2010 18:36:37 GMT X-Mailer: YahooMailClassic/10.1.9 YahooMailWebService/0.8.100.260964 Date: Sat, 17 Apr 2010 18:36:37 +0000 (GMT) From: Lyndon Hill Subject: Re: Compile Problem To: libssh2 development In-Reply-To: MIME-Version: 1.0 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --- On Fri, 16/4/10, Daniel Stenberg wrote: > But if you still want Peter's patch, it is in trac for > issue #170: > http://libssh2.stuge.se/attachment/ticket/170/0001-_libssh2_wait_socket-select-on-separate-fd_sets-for-.patch Thanks, I wanted to use as-close-to 1.2.5 as possible. This patched version now compiles. I should have noted that my cross compiler is gcc version 2.95.3 20010315 (release). I can build libssh but the build halts on making the examples because it cannot link to libz: for some reason configure does not pass through the library search paths for the linker: /bin/sh ../libtool --tag=CC --mode=link arm-quantumstep-linux-gnu-gcc -g -O2 -o direct_tcpip direct_tcpip.o ../src/libssh2.la -ldl libtool: link: arm-quantumstep-linux-gnu-gcc -g -O2 -o .libs/direct_tcpip direct_tcpip.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) I'm sorry but I don't know anything about configure scripts or debugging these kind of automatically generated makefiles. It would be nice to be able to run the tests. _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 21:58:47 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HJwZQs012266; Sat, 17 Apr 2010 21:58:44 +0200 Received: from susano.oderland.com (susano.oderland.com [91.201.63.143]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HJwXEG012238 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Sat, 17 Apr 2010 21:58:33 +0200 Received: from c-f2aae355.128-12-64736c13.cust.bredbandsbolaget.se ([85.227.170.242]) by susano.oderland.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from ) id 1O3E9y-0008J5-Eu for libssh2-devel@cool.haxx.se; Sat, 17 Apr 2010 21:58:34 +0200 Message-ID: <4BCA12E7.4070108@Strombergson.com> Date: Sat, 17 Apr 2010 21:58:31 +0200 From: =?UTF-8?B?Sm9hY2hpbSBTdHLDtm1iZXJnc29u?= Organization: Kryptologik User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: libssh2 development Subject: Re: New scan-build w debug and verbosity References: <4BC8321C.8020903@Strombergson.com> In-Reply-To: X-Enigmail-Version: 1.0.1 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - susano.oderland.com X-AntiAbuse: Original Domain - cool.haxx.se X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - Strombergson.com X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: Joachim@strombergson.com, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEExCgpBbG9oYSEKCk9u IDIwMTAtMDQtMTcgMTY6NTcsIERhbmllbCBTdGVuYmVyZyB3cm90ZToKPiBXaXRoIG15IGNsZWFu dXAsIEknbSBkb3duIHRvIDQwIHdhcm5pbmdzLiBJJ3ZlIGFkZGVkIGEgY3JvbnRhYiBqb2IgdGhh dAo+IG5vdyBydW5zIHRoZSBjbGFuZyBhbmFseXplciBkYWlseSBvbiB0aGUgY3VycmVudCBnaXQg aGVhZCBhbmQgdGhlCj4gcmVzdWx0cyBjYW4gYmUgZm91bmQgYXQ6Cj4gCj4gIGh0dHA6Ly93d3cu bGlic3NoMi5vcmcvc2NhbnMvCj4gCj4gSSdsbCBtYWtlIGl0IGtlZXAgYSBiYWNrbG9nIG9mIDIw IGRheXMgb3Igc28uCgpWZXJ5IG5pY2UhIEdvb2QgdGhpbmtpbmcgbWFraW5nIGl0IGNoZWNraW5n IHRoZSBjb2RlIGF1dG9tYXRpY2FsbHkuCkdsYWQgZG8gaGF2ZSBoZWxwZWQgb3V0IGEgdGlueSBi aXQuCgotIC0tIApNZWQgdsOkbmxpZyBow6Rsc25pbmcsIFlvdXJzCgpKb2FjaGltIFN0csO2bWJl cmdzb24gLSBBbGx0aWQgaSBoYXJtb25pc2sgc3bDpG5nbmluZy4KPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ckty eXB0b2Jsb2cgLSBJVC1zw6RrZXJoZXQgcMOlIHN2ZW5za2EKaHR0cDovL3d3dy5zdHJvbWJlcmdz b24uY29tL2tyeXB0b2Jsb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0tQkVHSU4gUEdQIFNJR05BVFVS RS0tLS0tClZlcnNpb246IEdudVBHIHYxLjQuOSAoRGFyd2luKQpDb21tZW50OiBVc2luZyBHbnVQ RyB3aXRoIE1vemlsbGEgLSBodHRwOi8vZW5pZ21haWwubW96ZGV2Lm9yZy8KCmlFWUVBUkVDQUFZ RkFrdktFdWNBQ2drUVpvUHI4SFQzMFFGYzJBQ2c0VWx2SklFdHZwNUhxQm9QRXlvWUdTbVkKWmRZ QW4ya3pISUhHempwS20xSlVjdTc4Y2FIMEVFRFkKPU9QSVcKLS0tLS1FTkQgUEdQIFNJR05BVFVS RS0tLS0tCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxp YnNzaDItZGV2ZWwgaHR0cDovL2Nvb2wuaGF4eC5zZS9jZ2ktYmluL21haWxtYW4vbGlzdGluZm8v bGlic3NoMi1kZXZlbAo= From libssh2-devel-bounces@cool.haxx.se Sat Apr 17 23:37:40 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HLbTLd017270; Sat, 17 Apr 2010 23:37:38 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HLbSi9017220 for ; Sat, 17 Apr 2010 23:37:28 +0200 Date: Sat, 17 Apr 2010 23:37:28 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Compile Problem In-Reply-To: <316954.29979.qm@web27607.mail.ukl.yahoo.com> Message-ID: References: <316954.29979.qm@web27607.mail.ukl.yahoo.com> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Sat, 17 Apr 2010, Lyndon Hill wrote: > I can build libssh Let me just emphasize that this library is in fact named libssh2, as there is a completely separate library and project named libssh... > but the build halts on making the examples because it > cannot link to libz: for some reason configure does not pass through the > library search paths for the linker: > > /bin/sh ../libtool --tag=CC --mode=link arm-quantumstep-linux-gnu-gcc -g -O2 > -o direct_tcpip direct_tcpip.o ../src/libssh2.la -ldl libtool: link: > arm-quantumstep-linux-gnu-gcc -g -O2 -o .libs/direct_tcpip direct_tcpip.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) > > I'm sorry but I don't know anything about configure scripts or debugging > these kind of automatically generated makefiles. It would be nice to be able > to run the tests. So configure found libz but when it links it no longer finds it? Can you show us your configure command line? BTW, since you're cross-compiling you won't be able to run the tests anyway since they assume that you can run them on the machine you build on. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sun Apr 18 00:52:46 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3HMqZmg005921; Sun, 18 Apr 2010 00:52:44 +0200 Received: from web27605.mail.ukl.yahoo.com (web27605.mail.ukl.yahoo.com [217.146.177.224]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3HMqX0r005911 for ; Sun, 18 Apr 2010 00:52:33 +0200 Received: (qmail 50318 invoked by uid 60001); 17 Apr 2010 22:52:36 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s1024; t=1271544756; bh=orVvG5V2r6tLUQAiJZwaLVaooG7igLQS/K0G8XNMcKM=; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=0JlsjAcxkIDtIIoCu2O4dR1TLdA3lH4TLOQm0zQ/fCmj62MZfb/uskUtlVK4PMuszv7cXWLN7BGAMmpul4PB9/A4BFmNX/HjRP07SN99yP97v2ntfSWLPPXZ1KXvXaBC1hzRu8KZ6lqCJlY2OrZOInaKUUk992g4wFueyy4l0Wk= DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.co.uk; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=Gsyetv665mpzK0TS62tNCqw6MWMiqyFPsQkskMY2AHgsHdi6TTRlsKhjrBWcZQpRaLRwO0LuALRBYqq0dc9GFolhgjSoOjOqaI1//THGquZ3lgbSRLod+tZ3ddJDhLNJXYUnjG6zIP9o260xnHjnIN/mnb8GSC59oPOmSj6LL8U=; Message-ID: <46455.49080.qm@web27605.mail.ukl.yahoo.com> X-YMail-OSG: HXQ6xbMVM1mT22lYcvq7O4QliEfaHPXYRxcuARJ3Ry.Gem4 pJ_.2r28mGBSM34ifD9Iwx4tDSc72tqbXMm07GF7XPtPBvPB9ppseNO0V4Y0 VQc8BXSusPcrWRt8NS2234hFOGwIVM2xrXohVjUAt6zLyDqfrQOzjFnyKQtk YLoU03etG7IpyYhGjnEtyc96dGaKz7NQWMg8UUctcnS5zMVqMWcFb7I1qBI6 dA4olq6.kAB._0lel64aYHXu0cWDrYaAwx6NIFQssU3Ech.Tw4AIdpEIOAy3 97eMuoqCv5jVKl9CrWmIo9HX7Rhlb Received: from [86.25.247.240] by web27605.mail.ukl.yahoo.com via HTTP; Sat, 17 Apr 2010 22:52:35 GMT X-Mailer: YahooMailClassic/10.1.9 YahooMailWebService/0.8.100.260964 Date: Sat, 17 Apr 2010 22:52:35 +0000 (GMT) From: Lyndon Hill Subject: Re: Compile Problem To: libssh2 development In-Reply-To: MIME-Version: 1.0 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --- On Sat, 17/4/10, Daniel Stenberg wrote: > Let me just emphasize that this library is in fact named > libssh2 My bad. I know that, it must have been a typo. > as there is a completely separate library and > project named libssh... Yes; it is confusing. I guess all the good names were taken ;) > So configure found libz but when it links it no longer > finds it? Can you show us your configure command line? Yes, configure finds it and it is in the top Makefile in various places, e.g. LIBZ=/... It seems that the parameters passed to libtool in sub directories don't include include -lz and -L/path/to/libz. As it happens, I just built libcurl and linked to libssh2 and experienced a similar problem where libtool did not have a -lssh2 when building the curl tool. In that case I added -lssh2 to the line LIBS= in the top Makefile. I suspect this is a symptom of the same problem. My configure line was in my first post on this topic, in this mailing list. > BTW, since you're cross-compiling you won't be able to run > the tests anyway since they assume that you can run them on > the machine you build on. Oh. I was hoping to transfer them and run on the target platform, to verify that everything was working OK. _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sun Apr 18 06:35:36 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3I4ZONg024496; Sun, 18 Apr 2010 06:35:35 +0200 Received: from mail-ww0-f54.google.com (mail-ww0-f54.google.com [74.125.82.54]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3I4ZNAM024458 for ; Sun, 18 Apr 2010 06:35:23 +0200 Received: by wwa36 with SMTP id 36so2204446wwa.41 for ; Sat, 17 Apr 2010 21:35:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:received:message-id :subject:from:to:content-type; bh=WPSKDwXBVqBM0NMO8W9PYd+yZ3slJU+6KAnmaL/MhFI=; b=e0PFg/k67n8aGdoYvCJietH/Clob4hSB9y/dLDeJm6+7B8rnezYZqyLZXyjqIt8R6y hn0NFybs/cv4mirsxi3OHKzRht2PJIYBW5obCzujxUVEz/C4rvRjin8XfgaqoDZsLPvY aehL5WQm+Nq5mQ1SpnY4K3KrflDdDxgJwHzWE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=XoBBGaO9wRdpln7IpGZolOcXO3ElNeR9YLG5gBFNfvaxO2uecy7iSR2mGEhJypvq9i MDCjKN7TRRQta99WjG5j1w5oUm4rkiQzFKm+iVXCfEBY+ppyPAybD1FcVhKZrxTCFdh+ a8hOywyJVxDke/ix+4cgf8vsQsymFC9VH1biA= MIME-Version: 1.0 Received: by 10.216.72.149 with HTTP; Sat, 17 Apr 2010 21:35:19 -0700 (PDT) Date: Sat, 17 Apr 2010 21:35:19 -0700 Received: by 10.216.154.145 with SMTP id h17mr2626599wek.103.1271565319694; Sat, 17 Apr 2010 21:35:19 -0700 (PDT) Message-ID: Subject: ssh2_exec.c does not support keyboard-interactive, intentional? From: Eric Tung To: libssh2-devel@cool.haxx.se X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se I'm new to libssh2, and naturally the first place I tried starting was the example files. The example file ssh2_exec.c allows password and publickey authentication, but not keyboard-interactive. OS X (at least 10.6.3, which I was testing against) allows publickey and keyboard-interactive, but not password. I didn't realize this at first, and thought there was something broken with my build or setup - it wasn't until I looked at ssh2.c that I realized what was going on and modified ssh2_exec.c to use keyboard-interactive. Before I spend the time to clean up my patch, was this omission intentional? Eric _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sun Apr 18 07:33:41 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3I5XZAW000511; Sun, 18 Apr 2010 07:33:40 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3I5XYKx000506 for ; Sun, 18 Apr 2010 07:33:34 +0200 Received: (qmail 1007 invoked by uid 501); 18 Apr 2010 05:33:36 -0000 Message-ID: <20100418053336.1006.qmail@stuge.se> Date: Sun, 18 Apr 2010 07:33:36 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: ssh2_exec.c does not support keyboard-interactive, intentional? Mail-Followup-To: libssh2-devel@cool.haxx.se References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Eric Tung wrote: > was this omission intentional? Not really, no. It would be great to show kbdint in the examples, preferably with a callback scheme that fits typical GUI use well. //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sun Apr 18 15:11:11 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3IDAvSc008514; Sun, 18 Apr 2010 15:11:08 +0200 Received: from qswall.lpma.nsw.gov.au (qswall.lpma.nsw.gov.au [203.14.35.57]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3G53v2g027437 for ; Fri, 16 Apr 2010 07:03:58 +0200 From: Phillip Wu To: "libssh2-devel@cool.haxx.se" Date: Fri, 16 Apr 2010 15:03:49 +1000 Subject: sftp stat error - LIBSSH2_ERROR_SFTP_PROTOCOL Thread-Topic: sftp stat error - LIBSSH2_ERROR_SFTP_PROTOCOL Thread-Index: AcrdIjNp3GcuPe1fRH2qbSRjFuNroQ== Message-ID: <137CA4FE5CCDB7449ED3CD4445077AC302913D6CA0@SRV-QS-MAIL6.lands.nsw> Accept-Language: en-US, en-AU Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US, en-AU MIME-Version: 1.0 X-Mailman-Approved-At: Sun, 18 Apr 2010 15:10:56 +0200 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============0254711636==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============0254711636== Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_137CA4FE5CCDB7449ED3CD4445077AC302913D6CA0SRVQSMAIL6lan_" --_000_137CA4FE5CCDB7449ED3CD4445077AC302913D6CA0SRVQSMAIL6lan_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi, I am getting sftp stat error -31. I am using Solaris 10/GCC/libssh2 1.2.5. This is a brief rundown of the code: 1. Create socket 2. Create ssh2 session session =3D libssh2_session_init(); if (status=3Dlibssh2_session_startup(session, sock)) { fprintf(stderr, "Failure establishing SSH session - %d\n",status); exit(1); } 3. User authentication ... suceeds userauthlist =3D libssh2_userauth_list(session, username, strlen(usernam= e)); if (strstr(userauthlist, "password") !=3D NULL) { auth_pw |=3D 1; } if (auth_pw & 1) { /* Authenticate via password */ status=3Dlibssh2_userauth_password(session, username, password); if (status=3D=3D0) { fprintf(stderr,"\tAuthentication by password succeeded.\n"); return(0); } } 4. sftp stat char buf[]=3D"/tmp/myfile"; sftp_session =3D libssh2_sftp_init(session); if (!sftp_session) { status=3Dlibssh2_session_last_errno(session); fprintf(stderr, "Unable to init SFTP session - %d\n",status); return(1); } status=3Dlibssh2_sftp_stat(sftp_session,buf,&fileinfo); I'm getting error -31 (LIBSSH2_ERROR_SFTP_PROTOCOL) and on calling libssh2_sftp_last_error(sftp_session, I get error 2. I put sshd on the target machine into debug mode (sshd -d -d -d) and this i= s what I get: debug3: fd 4 is not O_NONBLOCK debug1: Server will not fork when running in debugging mode. debug3: send_rexec_state: entering fd =3D 7 config len 321 debug3: ssh_msg_send: type 0 debug3: send_rexec_state: done debug1: rexec start in 4 out 4 newsock 4 pipe -1 sock 7 Can you please suggest what is wrong? The same code worked OK under Redhat = and libssh2 version libssh2-1.1. *************************************************************** This message is intended for the addressee named and may contain confidenti= al information. If you are not the intended recipient, please delete it and= notify the sender. Views expressed in this message are those of the indivi= dual sender, and are not necessarily the views of the Land and Property Man= agement Authority. This email message has been swept by MIMEsweeper for the= presence of computer viruses. *************************************************************** Please consider the environment before printing this email. --_000_137CA4FE5CCDB7449ED3CD4445077AC302913D6CA0SRVQSMAIL6lan_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

Hi,

 

I am getting sftp stat error -31.

 

I am using Solaris 10/GCC/libssh2 1.2.5.

 

This is a brief rundown of the code:

1. Create socket

2. Create ssh2 session

   session =3D libssh2_session_init();<= /o:p>

   if (status=3Dlibssh2_session_startup(sess= ion, sock)) {

     fprintf(stderr, "Failure= establishing SSH session - %d\n",status);

     exit(1);

   }

3. User authentication ... suceeds

   userauthlist =3D libssh2_userauth_list(se= ssion, username, strlen(username));

   if (strstr(userauthlist, "password&q= uot;) !=3D NULL) {

     auth_pw |=3D 1;

   }

   if (auth_pw & 1) {

      /* Authenticate via pas= sword */

      status=3Dlibssh2_userau= th_password(session, username, password);

      if (status=3D=3D0) {

         = fprintf(stderr,"\tAuthentication by password succeeded.\n");

         = return(0);

      }

   }

4. sftp stat

   char buf[]=3D"/tmp/myfile";

   sftp_session =3D libssh2_sftp_init(sessio= n);

 

   if (!sftp_session) {

     status=3Dlibssh2_session_last= _errno(session);

     fprintf(stderr, "Unable = to init SFTP session - %d\n",status);

     return(1);

   }

   status=3Dlibssh2_sftp_stat(sftp_session,b= uf,&fileinfo);

 

 

I'm getting error -31 (LIBSSH2_ERROR_SFTP_PROTOCOL) an= d on calling

libssh2_sftp_last_error(sftp_session, I get error 2.

 

I put sshd on the target machine into debug mode (sshd= -d -d -d) and this is what I get:

debug3: fd 4 is not O_NONBLOCK

debug1: Server will not fork when running in debugging= mode.

debug3: send_rexec_state: entering fd =3D 7 config len= 321

debug3: ssh_msg_send: type 0

debug3: send_rexec_state: done

debug1: rexec start in 4 out 4 newsock 4 pipe -1 sock = 7

 

 

Can you please suggest what is wrong? The same code wo= rked OK under Redhat and

libssh2 version libssh2-1.1.


This message is intend= ed for the addressee named and may contain confidential information. If you= are not the intended recipient, please delete it and noti= fy the sender. Views expressed in this message are = those of the individual sender, and are not necessa= rily the views of the Land and Property Management = Authority. This email message has been swept by MIM= Esweeper for the presence of computer viruses.


Please consider the environment before printing this email.

--_000_137CA4FE5CCDB7449ED3CD4445077AC302913D6CA0SRVQSMAIL6lan_-- --===============0254711636== 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 --===============0254711636==-- From libssh2-devel-bounces@cool.haxx.se Sun Apr 18 21:24:06 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3IJNqbU017437; Sun, 18 Apr 2010 21:24:03 +0200 Received: from mail-wy0-f182.google.com (mail-wy0-f182.google.com [74.125.82.182]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3IJNoRx017385 for ; Sun, 18 Apr 2010 21:23:50 +0200 Received: by wyf28 with SMTP id 28so716723wyf.41 for ; Sun, 18 Apr 2010 12:23:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:received:message-id:subject :from:to:content-type:content-transfer-encoding; bh=E+gWgv2y7MlAvlr1KTF88/uIrjykI3ElRtpGGWoBT2c=; b=gX5Vo5wxlBR5cahmFn+qxPd7n/Iy+9FTqkSyL2a7Ww1XtK1K/Eu2oAyWOU7GWqJsf0 EdhfNydo54xo5CWebEngrSYFjxAIfWQeiyaOEc+9pLzsxk1JGX5Xh6+RzH5wKl4aMw/i lmaam41F3MG1NEkIyVGbF0cWxnxfo7pxCnhwc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type :content-transfer-encoding; b=CnmkmRcK7p27aLLqJSa+iGbLKyM3Au+R2kyJ6BlO84SdIkW/oS1SKAge1EjQHVIyjQ h4/S8PoD7CF64V9m4hyWCY+wscXBN/5b+RRyezcL2F1w4dTkWEoPDZ9GgM1ulsQdtlMT G4l62E97cymMLZrdZU66pjBRjrvxGxeJBcMTI= MIME-Version: 1.0 Received: by 10.216.70.16 with HTTP; Sun, 18 Apr 2010 12:23:52 -0700 (PDT) In-Reply-To: <137CA4FE5CCDB7449ED3CD4445077AC302913D6CA0@SRV-QS-MAIL6.lands.nsw> References: <137CA4FE5CCDB7449ED3CD4445077AC302913D6CA0@SRV-QS-MAIL6.lands.nsw> Date: Sun, 18 Apr 2010 20:23:52 +0100 X-Google-Sender-Auth: 1b94c9755a4d0eb3 Received: by 10.216.157.142 with SMTP id o14mr2051602wek.183.1271618632151; Sun, 18 Apr 2010 12:23:52 -0700 (PDT) Message-ID: Subject: Re: sftp stat error - LIBSSH2_ERROR_SFTP_PROTOCOL From: Alexander Lamaison To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On 16 April 2010 06:03, Phillip Wu wrote: > > =A0=A0 status=3Dlibssh2_sftp_stat(sftp_session,buf,&fileinfo); > > I'm getting error -31 (LIBSSH2_ERROR_SFTP_PROTOCOL) and on calling > > libssh2_sftp_last_error(sftp_session, I get error 2. 2 is LIBSSH2_FX_NO_SUCH_FILE. Perhaps your file is a broken symlink in which case only libssh2_sftp_lstat would report the link's existence. libssh2_sftp_stat reports the target file's metadata. > This message is intended for the addressee named and may contain > confidential information. Then you probably shouldn't have sent it to a public mailing list. Alex _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 19 01:44:02 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3INhopA027561; Mon, 19 Apr 2010 01:43:59 +0200 Received: from mail-wy0-f182.google.com (mail-wy0-f182.google.com [74.125.82.182]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3INhmkE027538 for ; Mon, 19 Apr 2010 01:43:48 +0200 Received: by wyf28 with SMTP id 28so791171wyf.41 for ; Sun, 18 Apr 2010 16:43:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:received:message-id:subject:from:to:content-type; bh=lmFodJC65mPAkcaBkVC2I49HiH1/7P+eN0FEdcWETwY=; b=Hc8CIrVYr2PWlpuAis5NscI1LsKKoaMjFUaFqlkSK2obp+yNo7A07CXhQJQ45ld3DU JBaQSCnwVYF9fQePVddA+eTl94MjcMIq+We9rIVEoC3EHq1wDYqT6DS6qALEw1HQb6YV AN2Znf3rhafgbLP62EPmDHPgXDSCdszI055WI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=k9SNZ4vqKHDhAmym57PAIPlEHDVCQlc6LdVvB53kzMWO535mSyPd4oOnG3zrsFBFXs BtdNSn541FwdDhMePEeFqRlvaLT7K/a/iMQrcbvNeXA3Ka1Xn7ctljhPj0T12xq3GILL TLxobqngMK/qtL2EI2QuMgQVxx0UtfGG/pKC4= MIME-Version: 1.0 Received: by 10.216.72.149 with HTTP; Sun, 18 Apr 2010 16:43:51 -0700 (PDT) In-Reply-To: References: Date: Sun, 18 Apr 2010 16:43:51 -0700 Received: by 10.216.154.145 with SMTP id h17mr3977744wek.103.1271634231883; Sun, 18 Apr 2010 16:43:51 -0700 (PDT) Message-ID: Subject: Re: ssh2_exec.c does not support keyboard-interactive, intentional? From: Eric Tung To: libssh2-devel@cool.haxx.se Content-Type: multipart/mixed; boundary=0016e6563b78acf71d04848b6aa9 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --0016e6563b78acf71d04848b6aa9 Content-Type: text/plain; charset=ISO-8859-1 The attached patch is against libssh2-1.2.5; with it I was able to run a command on my target system. --0016e6563b78acf71d04848b6aa9 Content-Type: application/octet-stream; name="ssh2_exec-keyboard_interactive.patch" Content-Disposition: attachment; filename="ssh2_exec-keyboard_interactive.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g86i4a5t0 LS0tIGV4YW1wbGUvc3NoMl9leGVjLmMub3JpZwkyMDEwLTA0LTE4IDE2OjEzOjIwLjAwMDAwMDAw MCAtMDcwMAorKysgZXhhbXBsZS9zc2gyX2V4ZWMuYwkyMDEwLTA0LTE4IDE2OjM0OjQwLjAwMDAw MDAwMCAtMDcwMApAQCAtNDIsNiArNDIsMzEgQEAKICNpbmNsdWRlIDxzdGRpby5oPgogI2luY2x1 ZGUgPGN0eXBlLmg+CiAKKyNkZWZpbmUgQVVUSF9QVUJMSUNLRVkgICAgICAgICAgICAoMSA8PCAw KQorI2RlZmluZSBBVVRIX1BBU1NXT1JEICAgICAgICAgICAgICgxIDw8IDEpCisjZGVmaW5lIEFV VEhfS0VZQk9BUkRfSU5URVJBQ1RJVkUgKDEgPDwgMikKKworY29uc3QgY2hhciAqcGFzc3dvcmQg ICAgPSAicGFzc3dvcmQiOworCitzdGF0aWMgdm9pZCBrYmRfY2FsbGJhY2soY29uc3QgY2hhciAq bmFtZSwgaW50IG5hbWVfbGVuLAorICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIg Kmluc3RydWN0aW9uLCBpbnQgaW5zdHJ1Y3Rpb25fbGVuLAorICAgICAgICAgICAgICAgICAgICAg ICAgIGludCBudW1fcHJvbXB0cywKKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBMSUJT U0gyX1VTRVJBVVRIX0tCRElOVF9QUk9NUFQgKnByb21wdHMsCisgICAgICAgICAgICAgICAgICAg ICAgICAgTElCU1NIMl9VU0VSQVVUSF9LQkRJTlRfUkVTUE9OU0UgKnJlc3BvbnNlcywKKyAgICAg ICAgICAgICAgICAgICAgICAgICB2b2lkICoqYWJzdHJhY3QpCit7CisgICAgKHZvaWQpbmFtZTsK KyAgICAodm9pZCluYW1lX2xlbjsKKyAgICAodm9pZClpbnN0cnVjdGlvbjsKKyAgICAodm9pZClp bnN0cnVjdGlvbl9sZW47CisgICAgaWYgKG51bV9wcm9tcHRzID09IDEpIHsKKyAgICAgICByZXNw b25zZXNbMF0udGV4dCA9IHN0cmR1cChwYXNzd29yZCk7CisgICAgICAgcmVzcG9uc2VzWzBdLmxl bmd0aCA9IHN0cmxlbihwYXNzd29yZCk7CisgICAgfQorICAgICh2b2lkKXByb21wdHM7CisgICAg KHZvaWQpYWJzdHJhY3Q7Cit9IC8qIGtiZF9jYWxsYmFjayAqLworCiBzdGF0aWMgaW50IHdhaXRz b2NrZXQoaW50IHNvY2tldF9mZCwgTElCU1NIMl9TRVNTSU9OICpzZXNzaW9uKQogewogICAgIHN0 cnVjdCB0aW1ldmFsIHRpbWVvdXQ7CkBAIC03Nyw3ICsxMDIsNiBAQAogICAgIGNvbnN0IGNoYXIg Kmhvc3RuYW1lID0gIjEyNy4wLjAuMSI7CiAgICAgY29uc3QgY2hhciAqY29tbWFuZGxpbmUgPSAi dXB0aW1lIjsKICAgICBjb25zdCBjaGFyICp1c2VybmFtZSAgICA9ICJ1c2VyIjsKLSAgICBjb25z dCBjaGFyICpwYXNzd29yZCAgICA9ICJwYXNzd29yZCI7CiAgICAgdW5zaWduZWQgbG9uZyBob3N0 YWRkcjsKICAgICBpbnQgc29jazsKICAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gc2luOwpAQCAtOTAs NiArMTE0LDcgQEAKICAgICBzaXplX3QgbGVuOwogICAgIExJQlNTSDJfS05PV05IT1NUUyAqbmg7 CiAgICAgaW50IHR5cGU7CisgICAgaW50IGF1dGhfbWV0aG9kcyA9IDA7CiAKICNpZmRlZiBXSU4z MgogICAgIFdTQURBVEEgd3NhZGF0YTsKQEAgLTE4OCwxMyArMjEzLDQxIEBACiAgICAgfQogICAg IGxpYnNzaDJfa25vd25ob3N0X2ZyZWUobmgpOwogCisgICAgY2hhciAqdXNlcmF1dGhsaXN0ID0g TlVMTDsKKyAgICB3aGlsZSAoIXVzZXJhdXRobGlzdCkgeworICAgICAgICB1c2VyYXV0aGxpc3Qg PSBsaWJzc2gyX3VzZXJhdXRoX2xpc3Qoc2Vzc2lvbiwgdXNlcm5hbWUsIHN0cmxlbih1c2VybmFt ZSkpOworICAgICAgICBpZiAobGlic3NoMl91c2VyYXV0aF9hdXRoZW50aWNhdGVkKHNlc3Npb24p KSB7CisgICAgICAgICAgICBnb3RvIGF1dGhlbnRpY2F0ZWQ7CisgICAgICAgIH0KKyAgICB9Cisg ICAgcHJpbnRmKCJBdXRoZW50aWNhdGlvbiBtZXRob2RzOiAlc1xuIiwgdXNlcmF1dGhsaXN0KTsK KyAgICBpZiAoc3Ryc3RyKHVzZXJhdXRobGlzdCwgInBhc3N3b3JkIikgIT0gTlVMTCkgeworICAg ICAgICBhdXRoX21ldGhvZHMgfD0gQVVUSF9QQVNTV09SRDsKKyAgICB9CisgICAgaWYgKHN0cnN0 cih1c2VyYXV0aGxpc3QsICJrZXlib2FyZC1pbnRlcmFjdGl2ZSIpICE9IE5VTEwpIHsKKyAgICAg ICAgYXV0aF9tZXRob2RzIHw9IEFVVEhfS0VZQk9BUkRfSU5URVJBQ1RJVkU7CisgICAgfQorICAg IGlmIChzdHJzdHIodXNlcmF1dGhsaXN0LCAicHVibGlja2V5IikgIT0gTlVMTCkgeworICAgICAg ICBhdXRoX21ldGhvZHMgfD0gQVVUSF9QVUJMSUNLRVk7CisgICAgfQorICAgCiAgICAgaWYgKCBz dHJsZW4ocGFzc3dvcmQpICE9IDAgKSB7Ci0gICAgICAgIC8qIFdlIGNvdWxkIGF1dGhlbnRpY2F0 ZSB2aWEgcGFzc3dvcmQgKi8KLSAgICAgICAgd2hpbGUgKChyYyA9IGxpYnNzaDJfdXNlcmF1dGhf cGFzc3dvcmQoc2Vzc2lvbiwgdXNlcm5hbWUsIHBhc3N3b3JkKSkgPT0KLSAgICAgICAgICAgICAg IExJQlNTSDJfRVJST1JfRUFHQUlOKTsKLSAgICAgICAgaWYgKHJjKSB7Ci0gICAgICAgICAgICBm cHJpbnRmKHN0ZGVyciwgIkF1dGhlbnRpY2F0aW9uIGJ5IHBhc3N3b3JkIGZhaWxlZC5cbiIpOwot ICAgICAgICAgICAgZ290byBzaHV0ZG93bjsKKyAgICAgICAgaWYgKCBhdXRoX21ldGhvZHMgJiBB VVRIX1BBU1NXT1JEICkgeworICAgICAgICAgICAgLyogV2UgY291bGQgYXV0aGVudGljYXRlIHZp YSBwYXNzd29yZCAqLworICAgICAgICAgICAgd2hpbGUgKChyYyA9IGxpYnNzaDJfdXNlcmF1dGhf cGFzc3dvcmQoc2Vzc2lvbiwgdXNlcm5hbWUsIHBhc3N3b3JkKSkgPT0KKyAgICAgICAgICAgICAg ICAgICBMSUJTU0gyX0VSUk9SX0VBR0FJTik7CisgICAgICAgICAgICBpZiAocmMpIHsKKyAgICAg ICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkF1dGhlbnRpY2F0aW9uIGJ5IHBhc3N3b3JkIGZh aWxlZC5cbiIpOworICAgICAgICAgICAgICAgIGdvdG8gc2h1dGRvd247CisgICAgICAgICAgICB9 CisgICAgICAgIH0KKyAgICAgICAgZWxzZSBpZiAoIGF1dGhfbWV0aG9kcyAmIEFVVEhfS0VZQk9B UkRfSU5URVJBQ1RJVkUgKSB7CisgICAgICAgICAgIHdoaWxlICgocmMgPSBsaWJzc2gyX3VzZXJh dXRoX2tleWJvYXJkX2ludGVyYWN0aXZlKHNlc3Npb24sIHVzZXJuYW1lLCAma2JkX2NhbGxiYWNr KSkgPT0KKyAgICAgICAgICAgICAgICAgIExJQlNTSDJfRVJST1JfRUFHQUlOKTsKKyAgICAgICAg ICAgaWYgKHJjKSB7CisgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiQXV0aGVudGljYXRp b24gYnkga2V5Ym9hcmQtaW50ZXJhY3RpdmUgZmFpbGVkLlxuIik7CisgICAgICAgICAgICAgIGdv dG8gc2h1dGRvd247CisgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KICAgICBlbHNlIHsK QEAgLTIxMiw2ICsyNjUsNyBAQAogICAgICAgICB9CiAgICAgfQogCithdXRoZW50aWNhdGVkOgog I2lmIDAKICAgICBsaWJzc2gyX3RyYWNlKHNlc3Npb24sIH4wICk7CiAjZW5kaWYK --0016e6563b78acf71d04848b6aa9 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 --0016e6563b78acf71d04848b6aa9-- From libssh2-devel-bounces@cool.haxx.se Mon Apr 19 01:49:43 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3INnef4029396; Mon, 19 Apr 2010 01:49:42 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3INndEG029389 for ; Mon, 19 Apr 2010 01:49:39 +0200 Received: (qmail 24496 invoked by uid 501); 18 Apr 2010 23:49:48 -0000 Message-ID: <20100418234948.24495.qmail@stuge.se> Date: Mon, 19 Apr 2010 01:49:48 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: ssh2_exec.c does not support keyboard-interactive, intentional? Mail-Followup-To: libssh2-devel@cool.haxx.se References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Eric Tung wrote: > The attached patch is against libssh2-1.2.5; with it I was able to > run a command on my target system. I don't think that blindly sending out the password is setting a good example. --8<-- RFC 4256 SSH Generic Interactive Authentication 3.3. User Interface Upon receiving a request message, the client SHOULD prompt the user as follows: A command line interface (CLI) client SHOULD print the name and instruction (if non-empty), adding newlines. Then, for each prompt in turn, the client SHOULD display the prompt and read the user input. -->8-- //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 19 13:12:07 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JBBrDO008317; Mon, 19 Apr 2010 13:12:04 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JBBqTi008311 for ; Mon, 19 Apr 2010 13:11:52 +0200 Date: Mon, 19 Apr 2010 13:11:52 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: ssh2_exec.c does not support keyboard-interactive, intentional? In-Reply-To: <20100418234948.24495.qmail@stuge.se> Message-ID: References: <20100418234948.24495.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Mon, 19 Apr 2010, Peter Stuge wrote: > I don't think that blindly sending out the password is setting a good > example. You mean you want a getpass() or similar to be used to get the password? -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 19 13:15:07 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JBF6kY009721; Mon, 19 Apr 2010 13:15:07 +0200 Received: from dottedmag.net (burger.dottedmag.net [212.75.37.82]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JBF4Gp009592 for ; Mon, 19 Apr 2010 13:15:04 +0200 Received: from leibnitz.dottedmag.net (unknown [91.197.127.125]) by dottedmag.net (Postfix) with ESMTPSA id 24FBA8C758 for ; Mon, 19 Apr 2010 13:15:08 +0200 (CEST) Received: from dottedmag by leibnitz.dottedmag.net with local (Exim 4.71) (envelope-from ) id 1O3owT-0007gR-0t for libssh2-devel@cool.haxx.se; Mon, 19 Apr 2010 18:15:05 +0700 From: Mikhail Gusarov To: libssh2 development Subject: Re: ssh2_exec.c does not support keyboard-interactive, intentional? References: <20100418234948.24495.qmail@stuge.se> Date: Mon, 19 Apr 2010 18:15:04 +0700 In-Reply-To: (Daniel Stenberg's message of "Mon, 19 Apr 2010 13:11:52 +0200 (CEST)") Message-ID: <87sk6ry9qf.fsf@leibnitz.dottedmag.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1934779907==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============1934779907== Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha1; protocol="application/pgp-signature" --=-=-= Content-Transfer-Encoding: quoted-printable Twas brillig at 13:11:52 19.04.2010 UTC+02 when daniel@haxx.se did gyre and= gimble: >> I don't think that blindly sending out the password is setting a good e= xample. DS> You mean you want a getpass() or similar to be used to get the passwor= d? Keyboard-Interactive may ask for everything, from password or OTP to solution of puzzle, given as challenge. The way to handle it is to output the challenge(s) and provide user with the means to give answers, and then send responses back to server, without hardcoding any knowledge of "password" in client. =2D-=20 http://fossarchy.blogspot.com/ --=-=-= Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) iQIcBAEBAgAGBQJLzDs4AAoJEJ0g9lA+M4iIFpYP/jc/cXBnOibYchDTxLkc9uql XTvyA7XIyGMhG2d2HLOiOet+0q7x7pOdAwXcmWWoBDkd8TGImBF6DbNm0Ls1PCYI GKM8atSnpTGLlzZlMZQav4RFDQxmmWaBb1lAb1yn77dUmUKCUQfUt4WfnbDEjjxB xvLrB8WegIzB3bWtGmQ9UDnP2tMNt35tlu3OgZdZi1kXseIo4eddLqbAfS+C4I27 qK/OaVkEQGyZX+KbVlvTf+RZ7UukCbTTIEOOI/5cKmQPGnSd091S/plqb+Um1GmX /L++75l5jtDOgSGmeUGbyq3i8yLl8oiH/+wKWfLbbgrPZcp5LiPO4beAMXnzu1mc dfQH4YocgvNrlVz6iTMyEyAeLvTWtvzsgsDs5HiA3O29/mZNdcJ0VVJSkQSROx5/ vAObnho2Px/9Yt83Xwt+fvgRy85Co8AiS9owS8X7VqYca6vTaQynDq/aPW4XVG4g iXfteNdvYBk7uqsOFIxrPD04J0qNLiaWB5YurqP9KejLMoiMen/HNet4T3RN7yY2 z8bGZcISwDr6jVuuB9o4uZ7gqWD+CcPXvfQe//eCuO3+1QCBMJwBl93Mm40V08Ph Yn/hHBYqRAryppsM8y0Cno0PMZV9WVt/KngZPfZ0Pp39g3CXl7RhhSBYmAhSJLGF g1sm1VSPrl2zZidjtUfJ =MDue -----END PGP SIGNATURE----- --=-=-=-- --===============1934779907== 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 --===============1934779907==-- From libssh2-devel-bounces@cool.haxx.se Mon Apr 19 18:03:57 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JG3hIL005221; Mon, 19 Apr 2010 18:03:53 +0200 Received: from ey-out-2122.google.com (ey-out-2122.google.com [74.125.78.27]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JG3g9b005180 for ; Mon, 19 Apr 2010 18:03:42 +0200 Received: by ey-out-2122.google.com with SMTP id 4so469905eyf.31 for ; Mon, 19 Apr 2010 09:03:48 -0700 (PDT) MIME-Version: 1.0 Received: by 10.239.161.16 with HTTP; Mon, 19 Apr 2010 09:03:47 -0700 (PDT) Date: Mon, 19 Apr 2010 18:03:47 +0200 Received: by 10.239.137.12 with SMTP id j12mr428608hbj.115.1271693027982; Mon, 19 Apr 2010 09:03:47 -0700 (PDT) Message-ID: Subject: Get rid of get_socket_nonblocking ? From: Jose Baars To: libssh2-devel@cool.haxx.se X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1232005850==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============1232005850== Content-Type: multipart/alternative; boundary=001636457c48323e280484991baf --001636457c48323e280484991baf Content-Type: text/plain; charset=ISO-8859-1 Hi, In trying to get to libssh2 to work on the Multinet TCP/IP stack on VMS I came across the annoying fact that there is no way to query the socket blocking state using this stack. getsockopt, fcntl or any other call fails. The stack supports setting blocking and nonblocking on a socket, as one would expect, only querying the socket is impossible, I decided after several hours of trying. Examining the code of session .c, I found that this function is only called in session startup. So I did a bit of testing, and found that I could get examples sftp.c sftp_nonblock.c to work by changing session.c : (Excuse the not very handy format, I have my git repository not at hand) Old code in session.c : 600 session->socket_prev_blockstate = 601 !get_socket_nonblocking(session->socket_fd); 602 603 if (session->socket_prev_blockstate) { 604 /* If in blocking state chang to non-blocking */ 605 session_nonblock(session->socket_fd, 1); 606 } new code replacing above old code in session.c : 600 session->socket_prev_blockstate = session->api_block_mode; 601 session_nonblock(session->socket_fd, 1); Three questions: 1. Are there any thinkable circumstances this would fail? 2. Is there a better way to avoid the get_socket_nonblocking function? 3. Or should I give up in trying to get libssh2 to work on the Multinet TCP/IP stack? Again sorry for the inconvenient format, but as this very tentative code, and I absolutely do not have the insight in all design considerations of libssh2, I was hoping better people on this list could give a quick appreciation of this change. Regards, Jose --001636457c48323e280484991baf Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hi,

In trying to get to libssh2 to work on the Multinet TCP/IP stack=
on VMS I came across the annoying fact that there is no way
to quer= y the socket blocking state using this stack.
getsockopt, fcntl or any = other call fails.

The stack supports setting blocking and nonblocking on a socket,
as = one would expect, only querying the socket is impossible,
I decided afte= r several hours of trying.

Examining the code of session .c, I found= that this function is only
called in session startup. So I did a bit of testing, and found that
I= =A0 could get examples sftp.c sftp_nonblock.c to work by changing
sessio= n.c :

(Excuse the not very handy format, I have my git repository no= t at hand)

Old code in session.c :
=A0 600 =A0=A0=A0=A0=A0=A0=A0=A0=A0 session-= >socket_prev_blockstate =3D
=A0 601=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0=A0=A0 !get_socket_nonblocking(session->socket_fd);
=A0 602
=A0= 603=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 if (session->socket_prev_blockstate) = {
=A0 604=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 /* If in blocking state c= hang to non-blocking */
=A0 605=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0= =A0 session_nonblock(session->socket_fd, 1);
=A0 606=A0=A0=A0=A0=A0= =A0=A0=A0=A0=A0 }

new code replacing above old code in session.c :
=A0 600 =A0=A0=A0=A0=A0=A0=A0=A0=A0 session->socket_prev_blockstat= e =3D session->api_block_mode;
=A0 601 =A0=A0=A0=A0=A0=A0=A0=A0=A0 session_nonblock(session->socket_fd,= 1);

Three questions:

1. Are there any thinkable circumstance= s this would fail?
2. Is there a better way to avoid the get_socket_nonb= locking function?
3. Or should I give up in trying to get libssh2 to work on the Multinet TCP= /IP stack?

Again sorry for the inconvenient format, but as this very= tentative code,
and I absolutely do not have the insight in all design = considerations of
libssh2, I was hoping better people on this list could give a quick
app= reciation of this change.

Regards,
Jose

--001636457c48323e280484991baf-- --===============1232005850== 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 --===============1232005850==-- From libssh2-devel-bounces@cool.haxx.se Mon Apr 19 23:21:22 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JLL6K0027957; Mon, 19 Apr 2010 23:21:19 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JLL6eM027950 for ; Mon, 19 Apr 2010 23:21:06 +0200 Date: Mon, 19 Apr 2010 23:21:06 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Get rid of get_socket_nonblocking ? In-Reply-To: Message-ID: References: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Mon, 19 Apr 2010, Jose Baars wrote: > The stack supports setting blocking and nonblocking on a socket, as one > would expect, only querying the socket is impossible, I decided after > several hours of trying. > > Examining the code of session .c, I found that this function is only called > in session startup. libssh2 uses only non-blocking sockets internally, and the idea is to remember the state so that when you stop using libssh2 on the socket it would bring it back to the previous state. I'm not convinced that's a feature anyone really cares about. > 600 session->socket_prev_blockstate = session->api_block_mode; > 601 session_nonblock(session->socket_fd, 1); > > Three questions: > > 1. Are there any thinkable circumstances this would fail? No, it should make libssh2 work fine, it just can't restore the state to what it was before. > 3. Or should I give up in trying to get libssh2 to work on the Multinet > TCP/IP stack? If this is your only hurdle, then certainly not! We can always add conditional code to allow even such libs to play libssh2. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 19 23:36:49 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JLahUk002595; Mon, 19 Apr 2010 23:36:47 +0200 Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.159]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3JLafTp002590 for ; Mon, 19 Apr 2010 23:36:41 +0200 Received: by fg-out-1718.google.com with SMTP id l26so2810293fgb.11 for ; Mon, 19 Apr 2010 14:36:49 -0700 (PDT) MIME-Version: 1.0 Received: by 10.86.49.7 with HTTP; Mon, 19 Apr 2010 14:36:48 -0700 (PDT) In-Reply-To: References: Date: Mon, 19 Apr 2010 23:36:48 +0200 Received: by 10.87.63.21 with SMTP id q21mr4796757fgk.52.1271713009062; Mon, 19 Apr 2010 14:36:49 -0700 (PDT) Message-ID: Subject: Re: Get rid of get_socket_nonblocking ? From: Jose Baars To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============0237977519==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============0237977519== Content-Type: multipart/alternative; boundary=001485f87e282952e304849dc2be --001485f87e282952e304849dc2be Content-Type: text/plain; charset=ISO-8859-1 2010/4/19 Daniel Stenberg > No, it should make libssh2 work fine, it just can't restore the state to > what it was before. > > Unless the calling application would remember this previous state of course, and the actual blocking state of the socket is different from session->api_block_mode. > > If this is your only hurdle, then certainly not! We can always add > conditional code to allow even such libs to play libssh2. > As far as I can tell this is the only real hurdle. I'll do some more testing, and go ahead assuming this conditional code can be implemented. Thanks, Jose --001485f87e282952e304849dc2be Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

2010/4/19 Daniel Stenberg <daniel@haxx.se>
=
No, it should make libssh2 work fine, it just can't restore the state t= o what it was before.

Unless t= he calling application would remember this previous state of course, and th= e actual blocking state of the socket is different from session->api_blo= ck_mode.
=A0

If this is your only hurdle, then certainly not! We can always add conditio= nal code to allow even such libs to play libssh2.

As far as I can tell this is the only real = hurdle. I'll do some more testing, and go ahead
assuming this conditional code can be implemented.

Thanks,
Jose=
--001485f87e282952e304849dc2be-- --===============0237977519== 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 --===============0237977519==-- From libssh2-devel-bounces@cool.haxx.se Tue Apr 20 19:48:40 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3KHmQbP003180; Tue, 20 Apr 2010 19:48:37 +0200 Received: from mail-wy0-f182.google.com (mail-wy0-f182.google.com [74.125.82.182]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3KHmOHq003154 for ; Tue, 20 Apr 2010 19:48:24 +0200 Received: by wye20 with SMTP id 20so321819wye.41 for ; Tue, 20 Apr 2010 10:48:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:received:message-id :subject:from:to:content-type; bh=MRhCzTfX55xNcovv4HNs7ytcdAlhIkECjOKPI2jNEa4=; b=RyVHwF38yghLSIf96CcIkMQZ9GUpxJV6FxumY7xCVcJ/Gy3fo4eJaHE/jLY/zJpf0a uYvgLnUwlLaZevTQj4N06vH+PxEK4Q3SeKTtrNyd9kSLUqFtm96MLUUgxBvP8XLCff6Z GERgIE/UxMgSPm3Yi9oCOQc+N/LUJnkH/9dsE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=QafvpZsV4gVHWjJNCcnuCR2XHsyjqWOIpuOZoGaM+D6fYbYL3AiWKX3XZFEe3rNi2K 0bRyYRGceKnIlFZ/axn6ClPrEEjKGgJsFhj0NnF4o0jZ14AD3Zeds7YMaeZsa2Le3/r5 0hy/6cKbpz8DoL1Fv/p2R7njWprLLZR6bShc0= MIME-Version: 1.0 Received: by 10.216.72.149 with HTTP; Tue, 20 Apr 2010 10:48:22 -0700 (PDT) Date: Tue, 20 Apr 2010 10:48:22 -0700 Received: by 10.216.88.131 with SMTP id a3mr264473wef.153.1271785705136; Tue, 20 Apr 2010 10:48:25 -0700 (PDT) Message-ID: Subject: Re: ssh2_exec.c does not support keyboard-interactive, intentional? From: Eric Tung To: libssh2-devel@cool.haxx.se X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se > I don't think that blindly sending out the password is setting a good example. I agree it's not correct, but I think it's more useful than an example which doesn't work and doesn't give an error message. ssh2.c blindly sends out the password; whichever way you want to go, you should make the examples match. I don't care enough to write getpass(), so hopefully someone else can pick it up. _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 20 20:19:01 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3KIIs32023804; Tue, 20 Apr 2010 20:18:59 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3KIIq7N023784 for ; Tue, 20 Apr 2010 20:18:52 +0200 Received: (qmail 17710 invoked by uid 501); 20 Apr 2010 18:18:58 -0000 Message-ID: <20100420181858.17709.qmail@stuge.se> Date: Tue, 20 Apr 2010 20:18:58 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: ssh2_exec.c does not support keyboard-interactive, intentional? Mail-Followup-To: libssh2-devel@cool.haxx.se References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Eric Tung wrote: > > I don't think that blindly sending out the password is setting a > > good example. > > I agree it's not correct, but I think it's more useful than an > example which doesn't work and doesn't give an error message. Maybe make it say "keyboard-interactive authentication not supported" then? I think that would already be an improvement. > ssh2.c blindly sends out the password; Big difference. Did you look at the kbdint RFC? "password" is a standardized authentication method in SSH for sending one specific type of credential to the server; a password. "keyboard-interactive" is a standardized authentication method in SSH for having an arbitrary dialog between the server and the user running the client. Obviously the two can not be expected to work the same way. Blame PAM, which implements password authentication using a generic dialog. Or just use publickey and get decent security at the same time. > whichever way you want to go, you should make the examples match. No, not really. > I don't care enough to write getpass(), so hopefully someone else > can pick it up. I think an error message would already be a big improvement. //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 21 01:13:10 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3KNCvUJ003492; Wed, 21 Apr 2010 01:13:08 +0200 Received: from ey-out-2122.google.com (ey-out-2122.google.com [74.125.78.27]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3KNCtXb003488 for ; Wed, 21 Apr 2010 01:12:55 +0200 Received: by ey-out-2122.google.com with SMTP id 4so648273eyf.31 for ; Tue, 20 Apr 2010 16:13:03 -0700 (PDT) Received: by 10.213.67.207 with SMTP id s15mr14889ebi.76.1271805183414; Tue, 20 Apr 2010 16:13:03 -0700 (PDT) Received: from [192.168.0.35] (96-160.ftth.onsbrabantnet.nl [88.159.160.96]) by mx.google.com with ESMTPS id 15sm4808495ewy.8.2010.04.20.16.13.02 (version=SSLv3 cipher=RC4-MD5); Tue, 20 Apr 2010 16:13:02 -0700 (PDT) Message-ID: <4BCE34FA.1050108@peut.org> Date: Wed, 21 Apr 2010 01:12:58 +0200 From: Jose Baars User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; nl; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: libssh2-devel@cool.haxx.se Subject: Re: Get rid of get_socket_nonblocking ? References: In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1013265374==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se This is a cryptographically signed message in MIME format. --===============1013265374== Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha1; boundary="------------ms020705080508090302000506" This is a cryptographically signed message in MIME format. --------------ms020705080508090302000506 Content-Type: multipart/alternative; boundary="------------070406030300010701020006" This is a multi-part message in MIME format. --------------070406030300010701020006 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Not to worry, I could easily solve in get_socket_nonblocking ( by=20 returning 0 on error). I tested on Multinet and it looks good. ** --------------070406030300010701020006 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Not to worry, I could easily solve in get_socket_nonblocking ( by returning 0 on error).
I tested on Multinet and it looks good.

 

--------------070406030300010701020006-- --------------ms020705080508090302000506 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIO1DCC BEYwggOvoAMCAQICEGb9R+PCGeToms2Z3fU6yyQwDQYJKoZIhvcNAQEFBQAwXzELMAkGA1UE BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1Ymxp YyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA1MTAyODAwMDAwMFoXDTE1 MTAyNzIzNTk1OVowgd0xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEf MB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNl IGF0IGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEgKGMpMDUxHjAcBgNVBAsTFVBlcnNv bmEgTm90IFZhbGlkYXRlZDE3MDUGA1UEAxMuVmVyaVNpZ24gQ2xhc3MgMSBJbmRpdmlkdWFs IFN1YnNjcmliZXIgQ0EgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMnf rOfq+PgDFMQAktXBfjbCPO98chXLwKuMPRyVzm8eECw/AO2XJua2x+atQx0/pIdHR0w+VPhs +Mf8sZ69MHC8l7EDBeqV8a1AxUR6SwWi8mD81zplYu//EHuiVrvFTnAt1qIfPO2wQuhejVch rKaZ2RHp0hoHwHRHQgv8xTTq/ea6JNEdCBU3otdzzwFBL2OyOj++pRpu9MlKWz2VphW7NQIZ +dTvvI8OcXZZu0u2Ptb8Whb01g6J8kn+bAztFenZiHWcec5gJ925rXXOL3OVekA6hXVJsLjf aLyrzROChRFQo+A8C67AClPN1zBvhTJGG+RJEMJs4q8fef/btLUCAwEAAaOB/zCB/DASBgNV HRMBAf8ECDAGAQH/AgEAMEQGA1UdIAQ9MDswOQYLYIZIAYb4RQEHFwEwKjAoBggrBgEFBQcC ARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYTALBgNVHQ8EBAMCAQYwEQYJYIZIAYb4 QgEBBAQDAgEGMC4GA1UdEQQnMCWkIzAhMR8wHQYDVQQDExZQcml2YXRlTGFiZWwzLTIwNDgt MTU1MB0GA1UdDgQWBBQRfV4ZfTwE32ps1qKKGj8x2DuUUjAxBgNVHR8EKjAoMCagJKAihiBo dHRwOi8vY3JsLnZlcmlzaWduLmNvbS9wY2ExLmNybDANBgkqhkiG9w0BAQUFAAOBgQA8o9oC YzrEk6qrctPcrVA4HgyeFkqIt+7r2f8PjZWg1rv6aguuYYTYaEeJ70+ssh9JQZtJM3aTi55u uUMcYL3C3Ioth8FFwBFyBBprJCpsb+f8BxMp0Hc6I+f1wYVoGb/GAVQgGa41gsxiPGEJxvTV 67APpp8zhZrTcY5Qj5ndYjCCBUEwggQpoAMCAQICEEJLgZ2m/5im8G2Mp6IuBpMwDQYJKoZI hvcNAQEFBQAwgd0xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0G A1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNlIGF0 IGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEgKGMpMDUxHjAcBgNVBAsTFVBlcnNvbmEg Tm90IFZhbGlkYXRlZDE3MDUGA1UEAxMuVmVyaVNpZ24gQ2xhc3MgMSBJbmRpdmlkdWFsIFN1 YnNjcmliZXIgQ0EgLSBHMjAeFw0wOTExMTIwMDAwMDBaFw0xMDExMTIyMzU5NTlaMIIBCjEX MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv cmsxRjBEBgNVBAsTPXd3dy52ZXJpc2lnbi5jb20vcmVwb3NpdG9yeS9SUEEgSW5jb3JwLiBi eSBSZWYuLExJQUIuTFREKGMpOTgxHjAcBgNVBAsTFVBlcnNvbmEgTm90IFZhbGlkYXRlZDEz MDEGA1UECxMqRGlnaXRhbCBJRCBDbGFzcyAxIC0gTmV0c2NhcGUgRnVsbCBTZXJ2aWNlMRMw EQYDVQQDFApKb3NlIEJhYXJzMRwwGgYJKoZIhvcNAQkBFg1wZXV0QHBldXQub3JnMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAosfMiN5BS5n2BJc2UqrLqe/Nmo3rr90wEsp/ JlHxq569mltTO4zeL5TPP+/7FS/PN6x/pFj81UOCE2K31uUBcR/ggarV9BdcbEtQOwEfMWSL PKO/7DMVdsTkl2BCV5Sj+F1VmPKFPkyh+XVmGfQSfaZCfONGsoqqiPz9zB6pru70tpzw7vGG RWvuOhLVpBmyU48xXZ61OSZnbnad+33dW7TbLESJKs7QznkDk2meqUvUao4ZjbllbYGbnCoa OnPUH9obRs/AC/eTKrbRdjmWC/QJV2YYyXCDDmmQVY7sC6MF/5GC9paNb8lBrd3mcUpGUfyA n5EMI9QSqRWRhbTOVwIDAQABo4HMMIHJMAkGA1UdEwQCMAAwRAYDVR0gBD0wOzA5BgtghkgB hvhFAQcXATAqMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy52ZXJpc2lnbi5jb20vcnBhMAsG A1UdDwQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDBAYIKwYBBQUHAwIwSgYDVR0fBEMwQTA/ oD2gO4Y5aHR0cDovL0luZEMxRGlnaXRhbElELWNybC52ZXJpc2lnbi5jb20vSW5kQzFEaWdp dGFsSUQuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQAXLjg+EMDK1yYA/M7wlgUYwarEC159Mm6q y2R5XInO/pbLQJdOn4u3xg9/tTa3KeFSJpMlLyUBLxUr5AfvzLfJDlUnbfnomCCJyrf5QZEs 8tLGq3bIdLuyH3ILfp5i2WFvms74l5w+FTTKnkPUCGTx0lIVg3tyAOTUmBOIX6sF1+XNdx5Z aqVHF0ZliBgPTD6/UkMWdI4OzBVLGVYBvX+U7AN8iBJr1ILrcl+hkc2UC/sJVspkc4f1wO49 kJ2JPiD5TUByetjBx5QCOPMt7LEl8EfIX2x+HtLMPvHs7oe/OTrhTASN6ocZUF+ME/Pr/Kyh 7Yi3HXaCKIVjNCA/iHThMIIFQTCCBCmgAwIBAgIQQkuBnab/mKbwbYynoi4GkzANBgkqhkiG 9w0BAQUFADCB3TELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYD VQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2UgYXQg aHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykwNTEeMBwGA1UECxMVUGVyc29uYSBO b3QgVmFsaWRhdGVkMTcwNQYDVQQDEy5WZXJpU2lnbiBDbGFzcyAxIEluZGl2aWR1YWwgU3Vi c2NyaWJlciBDQSAtIEcyMB4XDTA5MTExMjAwMDAwMFoXDTEwMTExMjIzNTk1OVowggEKMRcw FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29y azFGMEQGA1UECxM9d3d3LnZlcmlzaWduLmNvbS9yZXBvc2l0b3J5L1JQQSBJbmNvcnAuIGJ5 IFJlZi4sTElBQi5MVEQoYyk5ODEeMBwGA1UECxMVUGVyc29uYSBOb3QgVmFsaWRhdGVkMTMw MQYDVQQLEypEaWdpdGFsIElEIENsYXNzIDEgLSBOZXRzY2FwZSBGdWxsIFNlcnZpY2UxEzAR BgNVBAMUCkpvc2UgQmFhcnMxHDAaBgkqhkiG9w0BCQEWDXBldXRAcGV1dC5vcmcwggEiMA0G CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCix8yI3kFLmfYElzZSqsup782ajeuv3TASyn8m UfGrnr2aW1M7jN4vlM8/7/sVL883rH+kWPzVQ4ITYrfW5QFxH+CBqtX0F1xsS1A7AR8xZIs8 o7/sMxV2xOSXYEJXlKP4XVWY8oU+TKH5dWYZ9BJ9pkJ840ayiqqI/P3MHqmu7vS2nPDu8YZF a+46EtWkGbJTjzFdnrU5Jmdudp37fd1btNssRIkqztDOeQOTaZ6pS9RqjhmNuWVtgZucKho6 c9Qf2htGz8AL95MqttF2OZYL9AlXZhjJcIMOaZBVjuwLowX/kYL2lo1vyUGt3eZxSkZR/ICf kQwj1BKpFZGFtM5XAgMBAAGjgcwwgckwCQYDVR0TBAIwADBEBgNVHSAEPTA7MDkGC2CGSAGG +EUBBxcBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEwCwYD VR0PBAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMEBggrBgEFBQcDAjBKBgNVHR8EQzBBMD+g PaA7hjlodHRwOi8vSW5kQzFEaWdpdGFsSUQtY3JsLnZlcmlzaWduLmNvbS9JbmRDMURpZ2l0 YWxJRC5jcmwwDQYJKoZIhvcNAQEFBQADggEBABcuOD4QwMrXJgD8zvCWBRjBqsQLXn0ybqrL ZHlcic7+lstAl06fi7fGD3+1Nrcp4VImkyUvJQEvFSvkB+/Mt8kOVSdt+eiYIInKt/lBkSzy 0sardsh0u7Ifcgt+nmLZYW+azviXnD4VNMqeQ9QIZPHSUhWDe3IA5NSYE4hfqwXX5c13Hllq pUcXRmWIGA9MPr9SQxZ0jg7MFUsZVgG9f5TsA3yIEmvUgutyX6GRzZQL+wlWymRzh/XA7j2Q nYk+IPlNQHJ62MHHlAI48y3ssSXwR8hfbH4e0sw+8ezuh785OuFMBI3qhxlQX4wT8+v8rKHt iLcddoIohWM0ID+IdOExggTsMIIE6AIBATCB8jCB3TELMAkGA1UEBhMCVVMxFzAVBgNVBAoT DlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYD VQQLEzJUZXJtcyBvZiB1c2UgYXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykw NTEeMBwGA1UECxMVUGVyc29uYSBOb3QgVmFsaWRhdGVkMTcwNQYDVQQDEy5WZXJpU2lnbiBD bGFzcyAxIEluZGl2aWR1YWwgU3Vic2NyaWJlciBDQSAtIEcyAhBCS4Gdpv+YpvBtjKeiLgaT MAkGBSsOAwIaBQCgggLOMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkF MQ8XDTEwMDQyMDIzMTI1OFowIwYJKoZIhvcNAQkEMRYEFP/qOkaQfntDcbLBUSSVXmygByT6 MF8GCSqGSIb3DQEJDzFSMFAwCwYJYIZIAWUDBAECMAoGCCqGSIb3DQMHMA4GCCqGSIb3DQMC AgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzANBggqhkiG9w0DAgIBKDCCAQMGCSsGAQQB gjcQBDGB9TCB8jCB3TELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8w HQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2Ug YXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykwNTEeMBwGA1UECxMVUGVyc29u YSBOb3QgVmFsaWRhdGVkMTcwNQYDVQQDEy5WZXJpU2lnbiBDbGFzcyAxIEluZGl2aWR1YWwg U3Vic2NyaWJlciBDQSAtIEcyAhBCS4Gdpv+YpvBtjKeiLgaTMIIBBQYLKoZIhvcNAQkQAgsx gfWggfIwgd0xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UE CxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNlIGF0IGh0 dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEgKGMpMDUxHjAcBgNVBAsTFVBlcnNvbmEgTm90 IFZhbGlkYXRlZDE3MDUGA1UEAxMuVmVyaVNpZ24gQ2xhc3MgMSBJbmRpdmlkdWFsIFN1YnNj cmliZXIgQ0EgLSBHMgIQQkuBnab/mKbwbYynoi4GkzANBgkqhkiG9w0BAQEFAASCAQB0jkfq yWVBePN1kyo9aMposVGihWoIUfX5IFmGTsrG9uCVuNxSWS6U3gBM6I/KC4DiLe2ruGWULg9q x3kDViPzm8oUIHeVjzBfllebWyAL5XmFfJ2vZbXsgt0B4rxVUPDTBYieDz3Fczptv8WxiD1H vglddvJlR/KdfFJCZR7RvJAifYvXcDF5ybV53rcGHuVX+2gyTrJ6FGTvu+0C+CSLGgWVs3+5 jTUfpzhhvYMFW5QfrXy54qhAe2zxXlkHf1625j8lCzX0iY246YVplBauuQZ138l4c36qLUGs YyzGKv+LF9R2HUKlR4bWBOdtEbwn+6FRYCLCid/zOYO9WsKEAAAAAAAA --------------ms020705080508090302000506-- --===============1013265374== 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 --===============1013265374==-- From libssh2-devel-bounces@cool.haxx.se Wed Apr 21 09:02:14 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3L71wmG029109; Wed, 21 Apr 2010 09:02:11 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3L71vla029067 for ; Wed, 21 Apr 2010 09:01:57 +0200 Received: (qmail 29516 invoked by uid 501); 21 Apr 2010 07:01:59 -0000 Message-ID: <20100421070159.29515.qmail@stuge.se> Date: Wed, 21 Apr 2010 09:01:59 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: Get rid of get_socket_nonblocking ? Mail-Followup-To: libssh2-devel@cool.haxx.se References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg wrote: > libssh2 uses only non-blocking sockets internally, and the idea is > to remember the state so that when you stop using libssh2 on the > socket it would bring it back to the previous state. I'm not > convinced that's a feature anyone really cares about. I agree. After libssh2 is done the socket will have been closed on the other end, so who cares.. At some point I hope libssh2 will be blocking agnostic, and at that point the Multinet TCP/IP stack may require a new API to tell libssh2 which blocking mode the socket is in, but there is also a chance that libssh2 does not need to be told about this, and in any case this is fairly far into the future. Great work, Jose! //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 21 11:09:35 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3L99O5G007198; Wed, 21 Apr 2010 11:09:33 +0200 Received: from flicker.bmc.com (rubyred.bmc.com [198.147.195.5]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3L98YGP007012 for ; Wed, 21 Apr 2010 11:08:35 +0200 Received: by flicker.bmc.com (Postfix, from userid 13749) id 2667C1E6B7F; Wed, 21 Apr 2010 02:08:37 -0700 (MST) Received: from PHX-HTPRD-02.adprod.bmc.com (phx-htprd-02.adprod.bmc.com [172.24.32.8]) by flicker.bmc.com (Postfix) with ESMTP id 1AE221E6B7B for ; Wed, 21 Apr 2010 02:08:37 -0700 (MST) Received: from PHXCCRPRD01.adprod.bmc.com ([172.24.32.5]) by PHX-HTPRD-02.adprod.bmc.com ([172.24.32.8]) with mapi; Wed, 21 Apr 2010 04:08:36 -0500 From: "Babaladi, Prabhanand" To: "libssh2-devel@cool.haxx.se" Date: Wed, 21 Apr 2010 04:08:32 -0500 Subject: Libss2 in multithread environment Thread-Topic: Libss2 in multithread environment Thread-Index: AcrhMjeAPiUG/KxwRM2YsFIx3R0VCQ== Message-ID: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US MIME-Version: 1.0 X-Mailman-Approved-At: Wed, 21 Apr 2010 11:09:22 +0200 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1204716524==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --===============1204716524== Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_5E8C8BE519C8C9458BA2382E368E56C713CFC053BEPHXCCRPRD01ad_" --_000_5E8C8BE519C8C9458BA2382E368E56C713CFC053BEPHXCCRPRD01ad_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi, I am trying to use the libssh2 library in multithread environment, but it i= s not working in my case. In short what I am doing is, 1. Creating session 2. In a multithread environment, each thread is sharing this session = in synchronized manner and getting the channels. 3. Using channel which got above step execute the command and read ou= tput. I am using libssh2 version 1.2.3 and build with VC++ 8 and code generation = setting as "Multi-threaded (/MT)". At present it is not working correctly in my environment, It would = be great help if you point out what's wrong in this approach or code. Here is the code snapshot which I am trying. Let me know if you need more d= etails. /**************************************************************************= **************************************************************/ #include "testMain.h" #include #include #ifdef WIN32 #include "libssh2/libssh2_config.h" #include #include #include #else #include #include #include #include #include #endif #include #include #include #include #include #include #include #include int m_set_non_blocking; string m_hostid; string m_userid; string m_password; bool m_isValid; static const int ssh_reconnect_interval =3D 1; //seconds static const int ssh_reconnect_timeout =3D 300; // seconds LIBSSH2_SESSION *m_session; HANDLE myMutex1; HANDLE myMutex2; HANDLE myMutex3; int chanelRetcode =3D 1; string str ; std::string command =3D "ls -l"; //or command of your choice string cmdError =3D ""; char* err; int set_non_blocking =3D 0; unsigned long hostaddr; int sock, auth_pw =3D 0; struct sockaddr_in sin; const char *fingerprint; char *userauthlist; struct hostent *remoteHost; struct in_addr addr; static int waitsocket(int socket_fd, LIBSSH2_SESSION *session) { struct timeval timeout; int rc; fd_set fd; fd_set *writefd =3D NULL; fd_set *readfd =3D NULL; int dir; timeout.tv_sec =3D 10; timeout.tv_usec =3D 0; FD_ZERO(&fd); FD_SET(socket_fd, &fd); /* now make sure we wait in the correct direction */ dir =3D libssh2_session_block_directions(session); if(dir & LIBSSH2_SESSION_BLOCK_INBOUND) readfd =3D &fd; if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND) writefd =3D &fd; rc =3D select(socket_fd + 1, readfd, writefd, NULL, &timeout); return rc; } void testMain() { m_set_non_blocking =3D 0; m_hostid =3D "hostid"; m_userid =3D "userid"; m_password =3D "password"; #ifdef WIN32 WSADATA wsadata; WSAStartup(MAKEWORD(2, 0), &wsadata); #endif if ( -1 =3D=3D inet_addr(m_hostid.c_str())) { remoteHost =3D gethostbyname(m_hostid.c_str()); if (!remoteHost) { printf("SSHConnection Failure due to Unreachable remote host"); } else { int i =3D 0; while (remoteHost->h_addr_list[i] !=3D 0) { addr.s_addr =3D *(u_long *) remoteHost->h_addr_list[i++]; } hostaddr =3D inet_addr(inet_ntoa(addr)); } } else { hostaddr =3D inet_addr(m_hostid.c_str()); } /* Ultra basic "connect to port 22 on localhost" * Your code is responsible for creating the socket establishing the co= nnection */ sock =3D socket(AF_INET, SOCK_STREAM, 0); #ifndef WIN32 fcntl(sock, F_SETFL, 0); #endif sin.sin_family =3D AF_INET; sin.sin_port =3D htons(22); sin.sin_addr.s_addr =3D hostaddr; if (connect(sock, (struct sockaddr*)(&sin), sizeof(struct sockaddr_in)) !=3D 0) { m_isValid =3D false; printf("SSHConnection::SSHConnection failed to connect! "); } /* Create a session instance and start it up * This will trade welcome banners, exchange keys, and setup crypto, co= mpression, and MAC layers */ m_session =3D libssh2_session_init(); /* tell libssh2 we want it all done non-blocking */ libssh2_session_set_blocking(m_session, 0); int returnCode =3D 1; // Non success value int max_retries =3D (int) ssh_reconnect_timeout/ssh_reconnect_inter= val; int rc; while ((rc =3D libssh2_session_startup(m_session, sock)) =3D=3D LI= BSSH2_ERROR_EAGAIN); if (rc) { printf("Failure establishing SSH session: %d\n", rc); return; } //libssh2_session_startup(m_session, sock); returnCode =3D rc; if ( returnCode =3D=3D LIBSSH2_ERROR_NONE) { printf("SSHConnection::SSHConnection SSH connection= established successfully" ); } else if ( returnCode =3D=3D LIBSSH2_ERROR_BANNER_NONE) { // The server is not accepting any more SSH connect= ion. // Sleep for configured amount of time and then ret= ry int attempts =3D 0; while(returnCode !=3D LIBSSH2_ERROR_NONE && returnCode !=3D LIB= SSH2_ERROR_BANNER_NONE && attempts < max_retr= ies) { #ifdef WIN32 Sleep (ssh_reconnect_interval * 100= 0); // The input is expected in msec #else sleep (ssh_reconnect_interval); #endif libssh2_session_startup(m_session, = sock); //returnCode =3D check_ssh_error(m_= session, "libssh2_session_startup - 2"); attempts++; if (returnCode =3D=3D LIBSSH2_ERROR= _NONE) { printf( "SSHConnect= ion::SSHConnection SSH connection established successfully on attempt numbe= r %d", attempts ); } } // You come out of while when // 1. You got the connection sucessfully // 2. encountered error other than LIBSSH2_ERROR_BA= NNER_NONE // In these cases report the specific error and exi= t. if (returnCode !=3D LIBSSH2_ERROR_NONE && returnCod= e !=3D LIBSSH2_ERROR_BANNER_NONE) { //check_ssh_error(m_session, "libss= h2_session_startup - 3"); m_isValid =3D false; ostringstream oss; oss << "SSHConnection Failure estab= lishing SSH session after " << attempts << " attempts"; //printf(oss.str()); } } else { //check_ssh_error(m_session, "libssh2_session_start= up - 4"); m_isValid =3D false; printf("SSHConnection Failure establishing SSH sess= ion"); } /* At this point we havn't authenticated, * The first thing to do is check the hostkey's fingerprint against our = known hosts * Your app may have it hard coded, may go to a file, may present it to = the user, that's your call */ fingerprint =3D libssh2_hostkey_hash(m_session, LIBSSH2_HOSTKEY_HASH_MD= 5); while ((rc =3D libssh2_userauth_password(m_session,= m_userid.c_str(), m_password.c_str())) =3D=3D LIBSSH2_ERROR_EAGAIN); if (rc) { printf("Authentication by password failed.\n"); return; } printf( "SSHConnection::SSHConnection : connection Create success" ); m_isValid =3D true; return ; } string readStdout(LIBSSH2_CHANNEL *channel) { char *buf; int test_err; int timeout =3D 100; int nfds =3D 1; LIBSSH2_POLLFD *fds; string cmdout =3D ""; size_t bufsiz =3D 8193, ret =3D 0; if ((buf =3D (char *) malloc (bufsiz)) =3D=3D 0) return cmdout; test_err =3D 1; if (m_set_non_blocking =3D=3D 1) { /* poll for stdout */ if (( fds =3D (struct _LIBSSH2_POLLFD *) malloc (sizeof (LIBSSH2_PO= LLFD) * 2)) =3D=3D 0) return cmdout; fds[0].type =3D LIBSSH2_POLLFD_CHANNEL; fds[0].fd.channel =3D channel; fds[0].events =3D LIBSSH2_POLLFD_POLLIN; fds[0].revents =3D LIBSSH2_POLLFD_POLLIN; test_err =3D libssh2_poll (fds, nfds, timeout); free (fds); } ret =3D 0; if (test_err > 0) { /* Get STDOUT */ ret =3D libssh2_channel_read (channel, buf, bufsiz - 10); } if ((ret > 0) && (ret <=3D bufsiz)) { cmdout =3D buf; cmdout =3D cmdout.substr(0, ret); } free (buf); return cmdout; } void createChannelNew() { LIBSSH2_CHANNEL *channel =3D 0; WaitForSingleObject( myMutex1, INFINITE ); printf("\nGOT CHANNEL----------------\n"); /* Exec non-blocking on the remove host */ while( (channel =3D libssh2_channel_open_session(m_session)) =3D=3D NUL= L && (libssh2_session_last_error(m_session,NULL,NULL,0) =3D=3D LIBSS= H2_ERROR_EAGAIN || libssh2_session_last_error(m_session,NULL,NULL,= 0) =3D=3D LIBSSH2_ERROR_SOCKET_SEND) ) { printf("\n GOINT IN WAIT TO GET SESSION------------= ----\n"); waitsocket(sock, m_session); } if( channel =3D=3D NULL ) { printf("Error in CHANNEL _________________________\n"); char* err =3D 0; libssh2_session_last_error(m_session, &err, NULL, 0= ); printf("\nOpen channel failed %s\n", err); int dw =3D libssh2_session_last_errno(m_session); if(LIBSSH2_ERROR_EAGAIN =3D=3D dw){ printf("\nOpen channel failed 1\n" = ); } if(LIBSSH2_ERROR_CHANNEL_FAILURE =3D=3D dw){ printf("\nOpen channel failed 2\n" = ); } if(LIBSSH2_ERROR_SOCKET_SEND =3D=3D dw){ printf("\nOpen channel failed 3\n" = ); } if(LIBSSH2_ERROR_ALLOC =3D=3D dw){ printf("\nOpen channel failed 4\n" = ); } return; } ReleaseMutex( myMutex1 ); libssh2_channel_handle_extended_data(channel, LIBSSH2_CHANNEL_EXTENDED= _DATA_NORMAL); int rc; while( (rc =3D libssh2_channel_exec(channel, comm= and.c_str())) =3D=3D LIBSSH2_ERROR_EAGAIN ) { printf("\n GOINT IN= WAIT TO GET CHANNEL----------------\n"); waitsocket(sock, m_= session); } if( rc !=3D 0 ) { printf("Error in cmd execution _______________________%d\n", rc); return; } printf(" ****** cmd execution DONE %d\n", rc); int bytecount =3D 0; string cmdOutput =3D""; for( ;; ) { /* loop until we block */ int rc; do { int bufsiz =3D 0x40= 00; char buffer[0x4000]= ; rc =3D libssh2_chan= nel_read( channel, buffer, sizeof(buffer) ); if ((rc > 0)) { str= ing op =3D buffer; cmd= Output +=3D op.substr(0, rc); } } while( rc > 0 ); /* this is due to blocking that wou= ld occur otherwise so we loop on this condition */ char* err =3D 0; libssh2_session_last_error(m_sessio= n, &err, NULL, 0); if( rc =3D=3D LIBSSH2_ERROR_EAGAIN = ) { waitsocket(sock, m_= session); } else{ printf(" ****** in= read channel exit %d %s\n", rc, err); break; } } printf("\nEXECUTED CMD CHANNEL----------------\n"); printf("***************************************************************= *************************:\n"); printf("OUTPUT:%s", cmdOutput.c_str()); printf("***********************************************************= *****************************:\n"); // } } void myfun( void *arg ) { int *p =3D (int*)arg; printf("\nFrom thread %d \n",*p); createChannelNew(); } void main() { testMain(); //createChannelNew(); myMutex1 =3D CreateMutex( NULL, FALSE, NULL ); printf("\nEnter main new Befire thread\n"); int x =3D0; for(int i=3D0; i<10;i++){ _beginthread( myfun, 0, (void*)&x ); } printf("\nEnter main new end \n"); getch(); CloseHandle( myMutex1 ); } /**************************************************************************= **************************************************************/ Thanks, -Prabhanand --_000_5E8C8BE519C8C9458BA2382E368E56C713CFC053BEPHXCCRPRD01ad_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

Hi,

 

I am trying to use the libssh2 library in multithread = environment, but it is not working in my case. In short what I am doing is,

 

1.&n= bsp;      Creating session

2.&n= bsp;      In a multithread environment, each thread is sharin= g this session in synchronized manner and getting the channels.

3.&n= bsp;      Using channel which got above step execute the comm= and and read output.

 

I am using libssh2 version= 1.2.3 and build with VC++ 8 and code generation setting as “Multi-threaded (/MT= )”.

 

        At present = it is not working correctly in my environment, It would be great help if you poin= t out what’s wrong in this approach or code.

 

Here is the code snapshot = which I am trying. Let me know if you need more details.

 

 

/*************************= ***************************************************************************= ************************************/

#include "testMain.h&= quot;

#include <stdio.h>

#include<conio.h>

 

#ifdef WIN32

 #include "libssh2/libssh2_config.h"

 #include <windows= .h>

 #include <winsock= 2.h>

 #include <process= .h>

#else

 #include <netinet/in.h>

 #include <sys/socket.h>

 #include <unistd.= h>

 #include <arpa/in= et.h>

 #include <netdb.h= >

#endif

 

#include <sys/types.h&g= t;

#include <fcntl.h>

#include <errno.h>

#include <stdio.h>

#include <ctype.h>

#include <sstream>

#include <iostream><= o:p>

#include <string>

 

int m_set_non_blocking;

string m_hostid;

string m_userid;

string m_password;

bool m_isValid;=

 

static const int ssh_recon= nect_interval =3D 1; //seconds

static const int ssh_reconnect_timeout =3D 300; // seconds

 

 

LIBSSH2_SESSION *m_session= ;

HANDLE  myMutex1;

HANDLE  myMutex2;

HANDLE  myMutex3;

 

int chanelRetcode =3D 1;

string str ;

std::string command =3D &q= uot;ls -l"; //or command of your choice

string cmdError =3D "= ";

char* err;

 

int set_non_blocking =3D 0= ; 

unsigned long hostaddr;

int sock, auth_pw =3D 0;

struct sockaddr_in sin;

const char *fingerprint;

char *userauthlist;

 

struct hostent *remoteHost= ;

struct in_addr addr;<= /o:p>

 

 

static int waitsocket(int socket_fd, LIBSSH2_SESSION *session)

{

    struct = timeval timeout;

    int rc;=

    fd_set = fd;

    fd_set = *writefd =3D NULL;

    fd_set = *readfd =3D NULL;

    int dir= ;

 

    timeout= .tv_sec =3D 10;

    timeout= .tv_usec =3D 0;

 

    FD_ZERO(&fd);

 

    FD_SET(socket_fd, &fd);

 

    /* now = make sure we wait in the correct direction */

    dir =3D libssh2_session_block_directions(session);

 

 

    if(dir = & LIBSSH2_SESSION_BLOCK_INBOUND)

    &n= bsp;   readfd =3D &fd;

 

    if(dir = & LIBSSH2_SESSION_BLOCK_OUTBOUND)

    &n= bsp;   writefd =3D &fd;

 

    rc =3D select(socket_fd + 1, readfd, writefd, NULL, &timeout);

    return = rc;

}

 

void testMain()=

{

 

    &n= bsp;   m_set_non_blocking =3D 0;

 

    &n= bsp;   m_hostid =3D "hostid";

    &n= bsp;   m_userid =3D "userid";

    &n= bsp;   m_password =3D "password";

   

 

#ifdef WIN32

    WSADATA wsadata;

    WSAStartup(MAKEWORD(2, 0), &wsadata);

#endif

 

    if ( -1= =3D=3D inet_addr(m_hostid.c_str()))

    {<= /o:p>

    &n= bsp;   remoteHost =3D gethostbyname(m_hostid.c_str());

    &n= bsp;   if (!remoteHost)

    &n= bsp;   {

    &n= bsp;       printf("SSHConnection Failure due to Unreachable remote host");

    &n= bsp;   }

    &n= bsp;   else

    &n= bsp;   {

    &n= bsp;       int i =3D 0;

    &n= bsp;       while (remoteHost->h_addr_list[i] !=3D 0)

    &n= bsp;       {

    &n= bsp;           addr.s_addr =3D *(u_long *) remoteHost->h_addr_list[i++];

    &n= bsp;       }

    &n= bsp;       hostaddr =3D inet_addr(inet_ntoa(addr));

    &n= bsp;   }

    }<= /o:p>

    else

    {<= /o:p>

    &n= bsp;   hostaddr =3D inet_addr(m_hostid.c_str());

    }<= /o:p>

 

 

    /* Ultr= a basic "connect to port 22 on localhost"

     *= Your code is responsible for creating the socket establishing the connection

     *= /

    sock = =3D socket(AF_INET, SOCK_STREAM, 0);

#ifndef WIN32

    fcntl(s= ock, F_SETFL, 0);

#endif

    sin.sin= _family =3D AF_INET;

    sin.sin= _port =3D htons(22);

    sin.sin= _addr.s_addr =3D hostaddr;

    if (connect(sock, (struct sockaddr*)(&sin),

    &n= bsp;           sizeof(struct sockaddr_in)) !=3D 0)

    {<= /o:p>

    &n= bsp;   m_isValid =3D false;

    &n= bsp;   printf("SSHConnection::SSHConnection failed to connect! ");<= /o:p>

    }<= /o:p>

 

    /* Crea= te a session instance and start it up

     *= This will trade welcome banners, exchange keys, and setup crypto, compression, a= nd MAC layers

     *= /

    m_sessi= on =3D libssh2_session_init();

 

   

    &n= bsp;   /* tell libssh2 we want it all done non-blocking */

    libssh2_session_set_blocking(m_session, 0);

 

    int ret= urnCode =3D 1; // Non success value

    &n= bsp;   int max_retries =3D (int) ssh_reconnect_timeout/ssh_reconnect_interval;

 

    &n= bsp;   int rc;

    &n= bsp;   while ((rc =3D libssh2_session_startup(m_session, sock)) =3D=3D  LIBSSH2_ERR= OR_EAGAIN);

    if (rc)= {

    &n= bsp;   printf("Failure establishing SSH session: %d\n", rc);<= /p>

    &n= bsp;   return;

    }<= /o:p>

    //libssh2_session_startup(m_session, sock);

    &n= bsp;   returnCode =3D rc;

    &n= bsp;   if ( returnCode =3D=3D LIBSSH2_ERROR_NONE)

    &n= bsp;   {

    &n= bsp;            = ;       printf("SSHConnection::SSHConnec= tion SSH connection established successfully" );

    &n= bsp;   }

    &n= bsp;   else if ( returnCode =3D=3D LIBSSH2_ERROR_BANNER_NONE)

    &n= bsp;   {

    &n= bsp;            = ;       // The server is not accepting any more SSH connection.

    &n= bsp;            = ;       // Sleep for configured amount of time and then retry

    &n= bsp;            = ;       int attempts =3D 0;

    &n= bsp;            = ;       while(returnCode !=3D LIBSSH2_ERROR_NONE &&

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; returnCode !=3D LIBSSH2_ERROR_BANNER_NONE &&

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; attempts < max_retries)

    &n= bsp;            = ;       {

#ifdef WIN32

    &n= bsp;            = ;            &n= bsp;          Sleep (ssh_reconnect_interval * 1000); // The input is expected in msec

#else

    &n= bsp;            = ;            &n= bsp;          sleep (ssh_reconnect_interval);

#endif

    &n= bsp;            = ;            &n= bsp;          libssh2_session_= startup(m_session, sock);

    &n= bsp;            = ;            &n= bsp;          //returnCode =3D check_ssh_error(m_session, "libssh2_session_startup - 2");

    &n= bsp;            = ;            &n= bsp;          attempts++;=

    &n= bsp;            = ;            &n= bsp;          if (returnCode =3D=3D LIBSSH2_ERROR_NONE)

    &n= bsp;            = ;            &n= bsp;          {

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; printf( "SSHConnection::SSHConnection SSH connection established successfully = on attempt number %d", attempts );

    &n= bsp;            = ;            &n= bsp;          }

    &n= bsp;            = ;       }

    &n= bsp;            = ;       // You come out of while when

    &n= bsp;            = ;       // 1. You got the connection sucessfully

    &n= bsp;            = ;       // 2. encountered error other than LIBSSH2_ERROR_BANNER_NONE

    &n= bsp;            = ;       // In these cases report the specific error and exit.

    &n= bsp;            = ;       if (returnCode !=3D LIBSSH2_ERROR_NONE && returnCode !=3D LIBSSH2_ERROR_BANNER_NONE)

    &n= bsp;            = ;       {

    &n= bsp;            = ;            &n= bsp;          //check_ssh_erro= r(m_session, "libssh2_session_startup - 3");

    &n= bsp;            = ;            &n= bsp;          m_isValid =3D false;

    &n= bsp;            = ;            &n= bsp;          ostringstream oss;

    &n= bsp;            = ;            &n= bsp;          oss << "SSHConnection Failure establishing SSH session after " << attempts << " attempts";

    &n= bsp;            = ;            &n= bsp;          //printf(oss.str= ());

    &n= bsp;            = ;       }

    &n= bsp;   }

    &n= bsp;   else

    &n= bsp;   {

    &n= bsp;            = ;       //check_ssh_error(m_session, "libssh2_session_startup - 4");

    &n= bsp;            = ;       m_isValid =3D false;

    &n= bsp;            = ;       printf("SSHConnection Failure establishing SSH session");

    &n= bsp;   }

 

    /* At t= his point we havn't authenticated,

    * The f= irst thing to do is check the hostkey's fingerprint against our known hosts=

    * Your = app may have it hard coded, may go to a file, may present it to the user, that's yo= ur call

    */=

 

    fingerp= rint =3D libssh2_hostkey_hash(m_session, LIBSSH2_HOSTKEY_HASH_MD5);

 

    &n= bsp;            = ;       while ((rc =3D libssh2_userauth_password(m_session, m_userid.c_str(), m_password.c_str())) =3D=3D LIBSSH2_ERROR_EAGAIN);

    &n= bsp;   if (rc) {

    &n= bsp;       printf("Authentication by password failed.\n");

    &n= bsp;       return;

    &n= bsp;   }

 

    printf( "SSHConnection::SSHConnection : connection Create success" );

    m_isVal= id =3D true;

    return = ;

 

}

string readStdout(LIBSSH2_= CHANNEL *channel)

{

 

    char *b= uf;

    int tes= t_err;

    int tim= eout =3D 100;

    int nfd= s =3D 1;

    LIBSSH2= _POLLFD *fds;

    string = cmdout =3D "";

 

    size_t = bufsiz =3D 8193, ret =3D 0;

 

    if ((bu= f =3D (char *) malloc (bufsiz)) =3D=3D 0)

    &n= bsp;   return cmdout;

 

    test_er= r =3D 1;

    if (m_set_non_blocking =3D=3D 1)

    {<= /o:p>

    &n= bsp;   /* poll for stdout */

    &n= bsp;   if (( fds =3D (struct _LIBSSH2_POLLFD *) malloc (sizeof (LIBSSH2_POLLFD) * = 2)) =3D=3D 0)

    &n= bsp;       return cmdout;

    &n= bsp;   fds[0].type =3D LIBSSH2_POLLFD_CHANNEL;

    &n= bsp;   fds[0].fd.channel =3D channel;

    &n= bsp;   fds[0].events =3D LIBSSH2_POLLFD_POLLIN;

    &n= bsp;   fds[0].revents =3D LIBSSH2_POLLFD_POLLIN;

 

    &n= bsp;   test_err =3D libssh2_poll (fds, nfds, timeout);

 

    &n= bsp;   free (fds);

    }<= /o:p>

 

    ret =3D= 0;

    if (tes= t_err > 0)

    {<= /o:p>

    &n= bsp;   /* Get STDOUT */

    &n= bsp;   ret =3D libssh2_channel_read (channel, buf, bufsiz - 10);

    }<= /o:p>

    if ((re= t > 0) && (ret <=3D bufsiz))

    {<= /o:p>

    &n= bsp;   cmdout =3D buf;

    &n= bsp;   cmdout =3D cmdout.substr(0, ret);

    }<= /o:p>

    free (b= uf);

 

    return = cmdout;

}

 

void createChannelNew()

{

   

 

    LIBSSH2= _CHANNEL *channel =3D 0;

    &n= bsp;            = ;      

    &n= bsp;   WaitForSingleObject( myMutex1, INFINITE );

    &n= bsp;   printf("\nGOT CHANNEL----------------\n");

    &n= bsp;  

 

    /* Exec non-blocking on the remove host */

    while( = (channel =3D libssh2_channel_open_session(m_session)) =3D=3D NULL &&

    &n= bsp;      (libssh2_session_last_error(m_session,NULL,NULL,0) =3D=3D  LIBSSH2_ERROR_EAGAIN ||

    &n= bsp;            = ;           libssh2_session_last_error(m_session,NULL,NULL,0) =3D=3D  LIBSSH2_ERROR_SOCKET_SEND) )

    {<= /o:p>

    &n= bsp;            = ;       printf("\n GOINT IN WAIT TO GET SESSION----------------\n");

    &n= bsp;   waitsocket(sock, m_session);

    }<= /o:p>

 

    &n= bsp;   if( channel =3D=3D NULL )

    {<= /o:p>

    &n= bsp;   printf("Error in CHANNEL _________________________\n");

 

    &n= bsp;            = ;       char* err =3D 0;

    &n= bsp;            = ;       libssh2_session_last_error(m_session, &err, NULL, 0);

    &n= bsp;            = ;       printf("\nOpen channel failed  %s\n", err);

    &n= bsp;            = ;       int dw =3D libssh2_session_last_errno(m_session);

    &n= bsp;            = ;      

    &n= bsp;            = ;      

    &n= bsp;            = ;       if(LIBSSH2_ERROR_EAGAIN =3D=3D dw){

    &n= bsp;            = ;            &n= bsp;          printf("\nO= pen channel failed 1\n" );

    &n= bsp;            = ;       }

    &n= bsp;            = ;       if(LIBSSH2_ERROR_CHANNEL_FAILURE =3D=3D dw){

    &n= bsp;            = ;            &n= bsp;          printf("\nO= pen channel failed 2\n" );

    &n= bsp;            = ;       }

 

    &n= bsp;            = ;       if(LIBSSH2_ERROR_SOCKET_SEND =3D=3D dw){

    &n= bsp;            = ;            &n= bsp;          printf("\nO= pen channel failed 3\n" );

    &n= bsp;            = ;       }

 

    &n= bsp;            = ;       if(LIBSSH2_ERROR_ALLOC  =3D=3D dw){

    &n= bsp;            = ;            &n= bsp;          printf("\nO= pen channel failed 4\n" );

    &n= bsp;            = ;       }

    &n= bsp;   return;

    }<= /o:p>

    &n= bsp;    ReleaseMutex( myMutex1 );

    &n= bsp;  

     libssh2_channel_handle_extended_data(channel, LIBSSH2_CHANNEL_EXTENDED_DATA= _NORMAL);

 

    &n= bsp;            = ;      

    &n= bsp;            = ;         int rc;

    &n= bsp;            = ;         while( (rc =3D libssh2_channel_exec(channel, command.c_str())) =3D=3D LIBSSH2_ERROR_EAGAIN )

    &n= bsp;            = ;            &n= bsp;          {

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; printf("\n GOINT IN WAIT TO GET CHANNEL----------------\n");

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; waitsocket(sock, m_session);

    &n= bsp;            = ;            &n= bsp;          }

    &n= bsp;            = ;      

    &n= bsp;            = ;        

    &n= bsp;     if( rc !=3D 0 )

    {<= /o:p>

    &n= bsp;   printf("Error in cmd execution  _______________________%d\n"= , rc);

    &n= bsp;   return;

    }<= /o:p>

    &n= bsp;     printf(" ****** cmd execution  DONE %d\n", rc);

 

    &n= bsp;            = ;       int bytecount =3D 0;

    &n= bsp;            = ;       string cmdOutput =3D"";

    &n= bsp;            = ;       for( ;; )

    &n= bsp;            = ;       {

    &n= bsp;            = ;            &n= bsp;          /* loop until we block */

    &n= bsp;            = ;            &n= bsp;          int rc;

    &n= bsp;            = ;            &n= bsp;          do

    &n= bsp;            = ;            &n= bsp;          {

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; int bufsiz =3D 0x4000;

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; char buffer[0x4000];

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; rc =3D libssh2_channel_read( channel, buffer, sizeof(buffer) );

 

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; if ((rc > 0))

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; {

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp;            = ;     string op =3D buffer;

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp;            = ;     cmdOutput +=3D op.substr(0, rc);

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; }

    &n= bsp;            = ;            &n= bsp;          }

    &n= bsp;            = ;            &n= bsp;          while( rc > 0 );

    &n= bsp;    

    &n= bsp;            = ;            &n= bsp;          /* this is due to blocking that would occur otherwise so we loop on=

    &n= bsp;            = ;            &n= bsp;             this condition */

 

    &n= bsp;            = ;            &n= bsp;          char* err =3D 0;

    &n= bsp;            = ;            &n= bsp;          libssh2_session_= last_error(m_session, &err, NULL, 0);

 

    &n= bsp;            = ;            &n= bsp;          if( rc =3D=3D LIBSSH2_ERROR_EAGAIN )

    &n= bsp;            = ;            &n= bsp;          {

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; waitsocket(sock, m_session);

    &n= bsp;            = ;            &n= bsp;          }

    &n= bsp;            = ;            &n= bsp;          else{=

 

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp;  printf(" ****** in read channel exit %d  %s\n", rc, err);

    &n= bsp;            = ;            &n= bsp;            = ;            &n= bsp; break;

    &n= bsp;            = ;            &n= bsp;          }

    &n= bsp;            = ;       }

 

    &n= bsp;                   &n= bsp;

    &n= bsp;            = ;       printf("\nEXECUTED CMD CHANNEL----------------\n");

    &n= bsp;            = ;      

    printf("**************************************************************= **************************:\n");

    &n= bsp;   printf("OUTPUT:%s", cmdOutput.c_str());

    &n= bsp;   printf("*********************************************= *******************************************:\n");

 

   // }

    &n= bsp;  

}

 

void  myfun( void *ar= g )

{

 

    &n= bsp;   int *p =3D (int*)arg;

    &n= bsp;   printf("\nFrom thread %d \n",*p);   

    createChannelNew();

 

}

 

 

void main()

{    <= /o:p>

    testMai= n();

    //createChannelNew();

    &n= bsp;   myMutex1 =3D CreateMutex( NULL, FALSE, NULL );

    printf("\nEnter main new Befire thread\n");

    &n= bsp;   int x =3D0;

    for(int= i=3D0; i<10;i++){

    &n= bsp;       _beginthread( myfun, 0, (void*)&x );

    &n= bsp;            = ;       }

    printf("\nEnter main new end \n");    <= /p>

 

 

    getch()= ;

    &n= bsp;   CloseHandle( myMutex1 );

 

}

 

 

/*************************= ***************************************************************************= ************************************/

 

 

 

 

 

Thanks,

-Prabhanand

 

--_000_5E8C8BE519C8C9458BA2382E368E56C713CFC053BEPHXCCRPRD01ad_-- --===============1204716524== 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 --===============1204716524==-- From libssh2-devel-bounces@cool.haxx.se Wed Apr 21 11:16:52 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3L9Gm0U009999; Wed, 21 Apr 2010 11:16:51 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3L9GlCF009989 for ; Wed, 21 Apr 2010 11:16:47 +0200 Date: Wed, 21 Apr 2010 11:16:47 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Libss2 in multithread environment In-Reply-To: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> Message-ID: References: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Wed, 21 Apr 2010, Babaladi, Prabhanand wrote: > 2. In a multithread environment, each thread is sharing this session in > synchronized manner and getting the channels. > > 3. Using channel which got above step execute the command and read output. So only one thread at a time is using the single libssh2 session? Why use multiple threads at all then? Which crypto lib are you using? Both OpenSSL and gcrypt require mutex callbacks to be setup for multi-threading to work properly, and even though I'm not sure about the exact requirements it should be worth at least trying that. > I am using libssh2 version 1.2.3 and build with VC++ 8 and code generation > setting as "Multi-threaded (/MT)". We recommend you use libssh2 version 1.2.5. If we don't have any docs on libssh2 done multi-threaded, I figure we should write some... -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 21 11:37:32 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3L9bSm7026942; Wed, 21 Apr 2010 11:37:31 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3L9bRHX026938 for ; Wed, 21 Apr 2010 11:37:27 +0200 Received: (qmail 30178 invoked by uid 501); 21 Apr 2010 09:37:30 -0000 Message-ID: <20100421093730.30177.qmail@stuge.se> Date: Wed, 21 Apr 2010 11:37:30 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: Libss2 in multithread environment Mail-Followup-To: libssh2-devel@cool.haxx.se References: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Babaladi, Prabhanand wrote: > I am trying to use the libssh2 library in multithread environment, > but it is not working in my case. Basically multithreading is not supported in libssh2 at this time. > 1. Creating session > 2. In a multithread environment, each thread is sharing this > session in synchronized manner and getting the channels. Fine, but.. > 3. Using channel which got above step execute the command and read > output. ..only one channel at a time can ever be used, and most importantly - note that you must drain the SSH-protocol-level packet completely in libssh2 before you can reliably allow another thread to use it's channel. If you are using non-blocking libssh2 calls this is difficult for outgoing data, since you must track the progress of each data buffer that you send out via libssh2. Using blocking mode it may be easier, but I am not sure if it will make a difference for you. Give it a shot. //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 21 11:40:35 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3L9eXNw028940; Wed, 21 Apr 2010 11:40:35 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3L9eVVV028911 for ; Wed, 21 Apr 2010 11:40:31 +0200 Date: Wed, 21 Apr 2010 11:40:31 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Libss2 in multithread environment In-Reply-To: <20100421093730.30177.qmail@stuge.se> Message-ID: References: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> <20100421093730.30177.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Wed, 21 Apr 2010, Peter Stuge wrote: >> I am trying to use the libssh2 library in multithread environment, but it >> is not working in my case. > > Basically multithreading is not supported in libssh2 at this time. It is! It just requires that each thread uses its own session. You can't share sessions and you can't separate channels into different threads (since they use the same underlying session). -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 21 12:23:45 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3LANXrp031735; Wed, 21 Apr 2010 12:23:43 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3LANWd8031720 for ; Wed, 21 Apr 2010 12:23:32 +0200 Received: (qmail 7117 invoked by uid 501); 21 Apr 2010 10:23:36 -0000 Message-ID: <20100421102336.7116.qmail@stuge.se> Date: Wed, 21 Apr 2010 12:23:36 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: Libss2 in multithread environment Mail-Followup-To: libssh2-devel@cool.haxx.se References: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> <20100421093730.30177.qmail@stuge.se> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg wrote: >>> I am trying to use the libssh2 library in multithread environment, >>> but it is not working in my case. >> >> Basically multithreading is not supported in libssh2 at this time. > > It is! It just requires that each thread uses its own session. Yes - that's true. I don't know if it really counts though. :) //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 21 12:39:33 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3LAdSAa009227; Wed, 21 Apr 2010 12:39:32 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3LAdRAK009222 for ; Wed, 21 Apr 2010 12:39:27 +0200 Date: Wed, 21 Apr 2010 12:39:27 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Libss2 in multithread environment In-Reply-To: <20100421102336.7116.qmail@stuge.se> Message-ID: References: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> <20100421093730.30177.qmail@stuge.se> <20100421102336.7116.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Wed, 21 Apr 2010, Peter Stuge wrote: >> It is! It just requires that each thread uses its own session. > > Yes - that's true. I don't know if it really counts though. :) I realize it might not be exactly what a lot of people would like, but I also know that lots of users use libssh2 (via libcurl for example) in threaded environments exactly with those restrictions and enjoy it. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 21 20:13:59 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3LIDgr9008250; Wed, 21 Apr 2010 20:13:54 +0200 Received: from mail-ww0-f54.google.com (mail-ww0-f54.google.com [74.125.82.54]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3LIDeEJ008210 for ; Wed, 21 Apr 2010 20:13:40 +0200 Received: by wwa36 with SMTP id 36so4484130wwa.41 for ; Wed, 21 Apr 2010 11:13:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:received:message-id:subject:from:to:content-type; bh=n+tKzPjgzzcjYKOZ9wRxW8SFeYNjDOCdeobR1oCDtRQ=; b=Xr9j6+XriHvSHzIVe6URcqm8g1n+aXKRuz75/1cJPgQDYhSxWrTo+faGT9V5kW8mDc S3YcMb055zQ9S/CcPNNzK6cnkmt2s3mYtPUgxnorDG3pxCHBopCxlgDvv4uBr740Ws7o qux7xXTbzAAXsvelM6UUq51S7zDp8BO7DrHB8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=UTM38fC2VgqxMPBAF8KNCe9WqdeBF0jddYQ1Uohsu+Ujy35Q91D7OXof4R/dHvW90l gmYVtbJl6JGYNUvE5FQPEm2kOoAM/HA2xQSYwhdpo+hpOpliHm8oT3fIHHv06rAu1fJv 2jZEFCLbCFP3fWGH26Ej+br7giqaBl6eDwbnk= MIME-Version: 1.0 Received: by 10.216.72.149 with HTTP; Wed, 21 Apr 2010 11:13:41 -0700 (PDT) In-Reply-To: References: Date: Wed, 21 Apr 2010 11:13:41 -0700 Received: by 10.216.184.195 with SMTP id s45mr2049724wem.28.1271873621846; Wed, 21 Apr 2010 11:13:41 -0700 (PDT) Message-ID: Subject: Re: ssh2_exec.c does not support keyboard-interactive, intentional? From: Eric Tung To: libssh2-devel@cool.haxx.se X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se > > ssh2.c blindly sends out the password; > Big difference. Did you look at the kbdint RFC? Yes. Did you look at ssh2.c? It blindly sends the password *for keyboard-interactive*; my patch basically copies what it does. I'm not saying that password and keyboard-interactive should be treated the same way, this is clearly wrong. I am saying the libssh2 examples should be consistent with each other. > Or just use publickey and get decent security at the same time. Absolutely. However, I just started looking into libssh2 and my primary interest at this point is a proof-of-concept to make sure things work for my use case, not to get everything perfect the first go-around. > I think an error message would already be a big improvement. Sure. _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 22 07:11:42 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3M5BRCW024847; Thu, 22 Apr 2010 07:11:38 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3M5BQUG024842 for ; Thu, 22 Apr 2010 07:11:26 +0200 Received: (qmail 25449 invoked by uid 501); 22 Apr 2010 05:11:27 -0000 Message-ID: <20100422051127.25448.qmail@stuge.se> Date: Thu, 22 Apr 2010 07:11:27 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: ssh2_exec.c does not support keyboard-interactive, intentional? Mail-Followup-To: libssh2-devel@cool.haxx.se References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi Eric, Eric Tung wrote: > > > ssh2.c blindly sends out the password; > > > Big difference. Did you look at the kbdint RFC? > > Yes. Did you look at ssh2.c? No. Not at all. I ass-u-me:d. Sorry about that. > It blindly sends the password *for keyboard-interactive*; my patch > basically copies what it does. I'm not saying that password and > keyboard-interactive should be treated the same way, this is > clearly wrong. I am saying the libssh2 examples should be > consistent with each other. Agree. > I just started looking into libssh2 Sorry about the rough landing. > and my primary interest at this point is a proof-of-concept to make > sure things work for my use case, not to get everything perfect the > first go-around. > > > I think an error message would already be a big improvement. > > Sure. Though since they're examples it would also be fine just to use printf() and fgets() for a conversation function. //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 22 19:48:39 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3MHmRsX024665; Thu, 22 Apr 2010 19:48:37 +0200 Received: from mail-bw0-f216.google.com (mail-bw0-f216.google.com [209.85.218.216]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3MHmOjg024634 for ; Thu, 22 Apr 2010 19:48:24 +0200 Received: by bwz8 with SMTP id 8so8235663bwz.3 for ; Thu, 22 Apr 2010 10:48:26 -0700 (PDT) MIME-Version: 1.0 Received: by 10.239.161.16 with HTTP; Thu, 22 Apr 2010 10:48:25 -0700 (PDT) Date: Thu, 22 Apr 2010 19:48:25 +0200 Received: by 10.239.132.141 with SMTP id 13mr967863hbr.33.1271958505874; Thu, 22 Apr 2010 10:48:25 -0700 (PDT) Message-ID: Subject: VMS port From: Jose Baars To: libssh2 development Content-Type: multipart/mixed; boundary=001485f1dc8ee97a350484d6ea6a X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --001485f1dc8ee97a350484d6ea6a Content-Type: multipart/alternative; boundary=001485f1dc8ee97a290484d6ea68 --001485f1dc8ee97a290484d6ea68 Content-Type: text/plain; charset=ISO-8859-1 Hi, Please find attached the patch against yesterday's built that implements the VMS port of libssh2. It creates a vms subdirectory with 4 VMS specific build procedures, a c program that translates man pages to a help library, a readme and a VMS specific libssh2_config.h. In the source directory only userauth.c, session.c, misc.c and libssh2_priv.h have been touched, as to satisfy my goal to make the port as inobtrusive as possible. One of the build procedures can build a binary kit automagically, distribution of the binary kit is a separate effort altogeteher Regards, Jose --001485f1dc8ee97a290484d6ea68 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hi,

Please find attached the patch against yesterday's built tha= t
implements the VMS port of libssh2.

It creates a vms subdirect= ory with 4 VMS specific build procedures,
a c program that translates ma= n pages to a help library, a readme
and a VMS specific libssh2_config.h.

In the source directory only us= erauth.c, session.c, misc.c and
libssh2_priv.h have been touched, as to = satisfy my goal to
make the port as inobtrusive as possible.

One of the build procedures can build a binary kit automagically,
distri= bution of the binary kit is a separate effort altogeteher

Regards,Jose
--001485f1dc8ee97a290484d6ea68-- --001485f1dc8ee97a350484d6ea6a Content-Type: application/octet-stream; name="0001-VMS-port-of-libssh2-including-VMS-specific-build-pro.patch" Content-Disposition: attachment; filename="0001-VMS-port-of-libssh2-including-VMS-specific-build-pro.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g8bv97lj0 RnJvbSA0ZmE2NTFjMjkzMTVkOTc2ZDIxMzA4YWExYjQ3OThiNTIyZjg3YTlkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBwZXV0IDxwZXV0QHBldXQub3JnPgpEYXRlOiBUaHUsIDIyIEFw ciAyMDEwIDEzOjMyOjU4IC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gVk1TIHBvcnQgb2YgbGlic3No MiwgaW5jbHVkaW5nIFZNUyBzcGVjaWZpYyBidWlsZCBwcm9jZWR1cmVzCgotLS0KIHZtcy9saWJz c2gyX2NvbmZpZy5oICAgICAgICAgICB8ICAgODIgKysrKysrKwogdm1zL2xpYnNzaDJfbWFrZV9l eGFtcGxlLmRjbDsxIHwgIDEyNCArKysrKysrKysrCiB2bXMvbGlic3NoMl9tYWtlX2hlbHAuZGNs OzEgICAgfCAgIDkxICsrKysrKysKIHZtcy9saWJzc2gyX21ha2Vfa2l0LmRjbDsxICAgICB8ICAy MjIgKysrKysrKysrKysrKysrKysrCiB2bXMvbGlic3NoMl9tYWtlX2xpYi5kY2w7MSAgICAgfCAg MzQ0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKwogdm1zL21hbjJoZWxwLmMgICAgICAgICAg ICAgICAgIHwgIDUwNiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiB2 bXMvcmVhZG1lLnZtcyAgICAgICAgICAgICAgICAgfCAgMzE5ICsrKysrKysrKysrKysrKysrKysr KysrKysKIDcgZmlsZXMgY2hhbmdlZCwgMTY4OCBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygt KQogY3JlYXRlIG1vZGUgMTAwNjQ0IHZtcy9saWJzc2gyX2NvbmZpZy5oCiBjcmVhdGUgbW9kZSAx MDA2NDQgdm1zL2xpYnNzaDJfbWFrZV9leGFtcGxlLmRjbDsxCiBjcmVhdGUgbW9kZSAxMDA2NDQg dm1zL2xpYnNzaDJfbWFrZV9oZWxwLmRjbDsxCiBjcmVhdGUgbW9kZSAxMDA2NDQgdm1zL2xpYnNz aDJfbWFrZV9raXQuZGNsOzEKIGNyZWF0ZSBtb2RlIDEwMDY0NCB2bXMvbGlic3NoMl9tYWtlX2xp Yi5kY2w7MQogY3JlYXRlIG1vZGUgMTAwNjQ0IHZtcy9tYW4yaGVscC5jCiBjcmVhdGUgbW9kZSAx MDA2NDQgdm1zL3JlYWRtZS52bXMKCmRpZmYgLS1naXQgYS92bXMvbGlic3NoMl9jb25maWcuaCBi L3Ztcy9saWJzc2gyX2NvbmZpZy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu LjJlYjA5YTgKLS0tIC9kZXYvbnVsbAorKysgYi92bXMvbGlic3NoMl9jb25maWcuaApAQCAtMCww ICsxLDgyIEBACisjaWZuZGVmIExJQlNTSDJfQ09ORklHX0gKKyNpZmRlZiBfX1ZNUworCisjZGVm aW5lIExJQlNTSDJfQ09ORklHX0gKKworLyogVk1TIHNwZWNpZmljIGxpYnNzaDJfY29uZmlnLmgK KyAqLworCisjZGVmaW5lIHNzaXplX3QgU1NJWkVfVAorCit0eXBlZGVmIHVuc2lnbmVkIGludCB1 aW50MzJfdCA7Cit0eXBlZGVmIHVuc2lnbmVkIGludCBzb2NrbGVuX3Q7IC8qIG1pc3NpbmcgaW4g aGVhZGVycyBvbiBWTVMgKi8KKworLyogSGF2ZSdzICovCisKKyNkZWZpbmUgSEFWRV9VTklTVERf SAorI2RlZmluZSBIQVZFX0lOVFRZUEVTX0gKKyNkZWZpbmUgSEFWRV9TWVNfVElNRV9ICisjZGVm aW5lIEhBVkVfU0VMRUNUCisjZGVmaW5lIEhBVkVfVUlPCisKKyNkZWZpbmUgSEFWRV9TWVNfU09D S0VULkgKKyNkZWZpbmUgSEFWRV9ORVRJTkVUX0lOX0gKKyNkZWZpbmUgSEFWRV9BUlBBX0lORVRf SAorCisjZGVmaW5lIFBPU0lYX0NfU09VUkNFCisKKy8qIEVuYWJsZSB0aGUgcG9zc2liaWxpdHkg b2YgdXNpbmcgdHJhY2luZyAqLworIAorI2RlZmluZSBMSUJTU0gyREVCVUcgMQorCisvKiBGb3Ig c2VsZWN0aW9uIG9mIHByb3BlciBibG9jay91bmJsb2NrIGZ1bmN0aW9uIGluIHNlc3Npb24uYyAq LworCisjZGVmaW5lIEhBVkVfRklPTkJJTworCisjaW5jbHVkZSA8c3Ryb3B0cy5oPgorCisvKiBJ biBWTVMgVENQL0lQIFNlcnZpY2VzIGFuZCBzb21lIEJTRCB2YXJpYW50cyBTT19TVEFURSByZXRy aWV2ZXMgCisgKiBhIGJpdG1hc2sgcmV2ZWFsaW5nIGFtb25nc3Qgb3RoZXJzIHRoZSBibG9ja2lu ZyBzdGF0ZSBvZiB0aGUgCisgKiBzb2NrZXQuIE9uIFZNUyB0aGUgYml0cyBhcmUgdW5kb2N1bWVu dGVkLCBidXQgIFNTX05CSU8KKyAqIHdvcmtzLCBJIGRpZCBub3QgdGVzdCB0aGUgb3RoZXIgYml0 cy4gQmVsb3cgYml0ZGVmcyBhcmUgCisgKiBmcm9tIEJlcmtlbHkgc291cmNlIHNvY2tldHZhci5o IGF0ICAgCisgKiBodHRwOi8vZnRwLmZpYnJhbmV0LmNhdC9Vbml4QXJjaGl2ZS9QRFAtMTEvVHJl ZXMvMi4xMUJTRC9zeXMvaC9zb2NrZXR2YXIuaAorICogIFNvY2tldCBzdGF0ZSBiaXRzLgorICog ICNkZWZpbmUgU1NfTk9GRFJFRiAgICAgICAgICAweDAwMSAgICBubyBmaWxlIHRhYmxlIHJlZiBh bnkgbW9yZSAKKyAqICAjZGVmaW5lIFNTX0lTQ09OTkVDVEVEICAgICAgMHgwMDIgICAgc29ja2V0 IGNvbm5lY3RlZCB0byBhIHBlZXIgCisgKiAgI2RlZmluZSBTU19JU0NPTk5FQ1RJTkcgICAgIDB4 MDA0ICAgIGluIHByb2Nlc3Mgb2YgY29ubmVjdGluZyB0byBwZWVyIAorICogICNkZWZpbmUgU1Nf SVNESVNDT05ORUNUSU5HICAweDAwOCAgICBpbiBwcm9jZXNzIG9mIGRpc2Nvbm5lY3RpbmcgCisg KiAgI2RlZmluZSBTU19DQU5UU0VORE1PUkUgICAgIDB4MDEwICAgIGNhbid0IHNlbmQgbW9yZSBk YXRhIHRvIHBlZXIgCisgKiAgI2RlZmluZSBTU19DQU5UUkNWTU9SRSAgICAgIDB4MDIwICAgIGNh bid0IHJlY2VpdmUgbW9yZSBkYXRhIGZyb20gcGVlciAKKyAqICAjZGVmaW5lIFNTX1JDVkFUTUFS SyAgICAgICAgMHgwNDAgICAgYXQgbWFyayBvbiBpbnB1dCAKKyAqICAjZGVmaW5lIFNTX1BSSVYg ICAgICAgICAgICAgMHgwODAgICAgcHJpdmlsZWdlZCBmb3IgYnJvYWRjYXN0LCByYXcuLi4gCisg KiAgI2RlZmluZSBTU19OQklPICAgICAgICAgICAgIDB4MTAwICAgIG5vbi1ibG9ja2luZyBvcHMg CisgKiAgI2RlZmluZSBTU19BU1lOQyAgICAgICAgICAgIDB4MjAwICAgIGFzeW5jIGkvbyBub3Rp ZnkgCisgKgorICovCisKKyNpZmRlZiBTT19TVEFURQorCisvKiBTT19TVEFURSBpcyBkZWZpbmVk IGluIHN0cm9wdHMuaCAgYnkgREVDQworICogV2hlbiBydW5uaW5nIG9uIE11bHRpbmV0LCBTT19T VEFURSByZW5kZXJzIGEgcHJvdG9jb2wKKyAqIG5vdCBzdGFydGVkIGVycm9yLiBGdW5jdGlvbmFs bHkgdGhpcyBoYXMgbm8gaW1wYWN0LAorICogYXBhcnQgZnJvbSBsaWJzc2gyIG5vdCBiZWluZyBh YmxlIHRvIHJlc3RvcmUgdGhlIHNvY2tldAorICogdG8gdGhlIHByb3BlciBibG9ja2luZy9ub24t YmxvY2tpbmcgc3RhdGUuICAKKyAqLworCisjZGVmaW5lIFNTX05CSU8gICAgICAgICAweDEwMCAK KworI2VuZGlmCisKKy8qIENvbXBpbGUgaW4gemxpYiBzdXBwb3J0LiBXZSBsaW5rIGFnYWluc3Qg Z252JGxpYnpzaHIsIGFzIGF2YWlsYWJsZQorICogb24gZW5jb21wYXNzZXJ2ZS5jb20uCisgKi8K KworI2RlZmluZSBMSUJTU0gyX0hBVkVfWkxJQgorCisvKiBFbmFibGUgbmV3ZXIgZGlmZmllLWhl bGxtYW4tZ3JvdXAtZXhjaGFuZ2Utc2hhMSBzeW50YXggKi8KKworI2RlZmluZSBMSUJTU0gyX0RI X0dFWF9ORVcgMQorCisjZW5kaWYgLyogX19WTVMgKi8KKyNlbmRpZiAvKiBMSUJTU0gyX0NPTkZJ R19IICovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKZGlmZiAtLWdpdCBhL3Ztcy9saWJz c2gyX21ha2VfZXhhbXBsZS5kY2w7MSBiL3Ztcy9saWJzc2gyX21ha2VfZXhhbXBsZS5kY2w7MQpu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kODE5MWYzCi0tLSAvZGV2L251bGwK KysrIGIvdm1zL2xpYnNzaDJfbWFrZV9leGFtcGxlLmRjbDsxCkBAIC0wLDAgKzEsMTI0IEBACisk IQorJCEKKyQgb2xkZGlyID0gZiRlbnZpcm9ubWVudCgiZGVmYXVsdCIpCiskIG9uIGNvbnRyb2xf eSB0aGVuIGdvdG8gWUV4aXQKKyQhCiskIGdvc3ViIEluaXQKKyQgaWYgLm5vdC4gaW5pdF9zdGF0 dXMgdGhlbiBnb3RvIFlFeGl0CiskIQorJCBpZiB3aGF0IC5lcXMuICJBTEwiCiskIHRoZW4KKyQJ Y2FsbCBNYWtlQWxsCiskIGVsc2UKKyQJY2FsbCBNYWtlIAorJGVuZGlmCiskIQorJFlFeGl0Ogor JCBzZXQgbm9vbgorJCEgZGVhc3NpZ24gZXhhZGlyCiskISBkZWFzc2lnbiBvYmpkaXIKKyQgZGVs ZXRlICdsaW5rX29wdHMnOyoKKyQgc2V0IGRlZmF1bHQgJ29sZGRpcicKKyRleGl0IAorCiskTWFr ZUFsbDogc3Vicm91dGluZQorJCEKKyQgc2V0IG5vb24KKyRMb29wOgorJCB0aGlzID0gZiRzZWFy Y2goImV4YWRpcjoqLmM7MCIpCiskIGlmIHRoaXMgLmVxcy4gIiIgdGhlbiBnb3RvIEVuZExvb3AK KyQhCiskIHdoYXQgPSBmJHBhcnNlKCB0aGlzLCwsIm5hbWUiKQorJCBjYWxsIE1ha2UKKyQhCisk IGdvdG8gTG9vcAorJEVuZExvb3A6CiskIQorJGV4aXQKKyRlbmRzdWJyb3V0aW5lCisKKworJE1h a2U6IHN1YnJvdXRpbmUKKyQhCiskIHNldCBub29uCiskIQorJCBjYyAnY2NfaW5jbHVkZScgJ2Nj X2ZsYWdzJy9vYmplY3Q9b2JqZGlyOid3aGF0JyBleGFkaXI6J3doYXQnCiskIHNldiA9ICRzZXZl cml0eQorJCBpZiBzZXYgLmFuZC4gMiAKKyQgdGhlbgorJAlzYXkgIkVycm9yIGNvbXBpbGluZyAn J3doYXQnLCBub3QgbGlua2VkLiIKKyQgZWxzZQorJCAJaWYgLm5vdC4gKHNldiAuYW5kLiAxKSAg CiskIAl0aGVuCiskCQlzYXkgIkNvbXBpbGUgd2FybmluZ3MgaW4gICcnd2hhdCciCiskIAllbmRp ZgorJCAgbGluay9leGU9J3doYXQnLmV4ZSBvYmpkaXI6J3doYXQnLm9iaiwgJ2xpbmtfb3B0cycv b3B0CiskIGVuZGlmCiskIQorJCEKKyRFbmQ6CiskIGRlbGV0ZSBvYmpkaXI6J3doYXQnLm9iajsq CiskZXhpdAorJGVuZHN1YnJvdXRpbmUgCisKKworJEluaXQ6IAorJCEKKyQhCiskIGluaXRfc3Rh dHVzID0gMQorJCB0aGlzaWQgPSBmJGludGVnZXIoICV4J2YkZ2V0anBpKDAsInBpZCIpJykgKyAi JydmJGN2dGltZSgsLCJzZWNvbmQiKSciCiskIG1kaXIgICA9IGYkZW52aXJvbm1lbnQoInByb2Nl ZHVyZSIpIAorJCBtZGlyICAgPSBtZGlyIC0gZiRwYXJzZShtZGlyLCwsIm5hbWUiKSAtIGYkcGFy c2UobWRpciwsLCJ0eXBlIikgLSBmJHBhcnNlKG1kaXIsLCwidmVyc2lvbiIpCiskIHNldCBkZWZh dWx0ICdtZGlyJworJCEKKyQgb2JqZGlyID0gIlsuZXhhbXBsZV9vYmplY3RzXSIKKyQgZXhhZGly ID0gIlstLmV4YW1wbGVdIgorJCEKKyQgb2JqZGlyZmlsZSA9IG9iamRpciAtICJbLiIgLSAiXSIg KyAiLmRpciIKKyQgaWYgZiRzZWFyY2goIG9iamRpcmZpbGUgKSAuZXFzLiAiIgorJCB0aGVuCisk CWNyZWF0ZS9kaXJlY3RvcnkgJ29iamRpcicKKyQgZW5kaWYKKyQhCiskIGRlZmluZSBvYmpkaXIg J29iamRpcicKKyQgZGVmaW5lIGV4YWRpciAnZXhhZGlyJworJCEKKyQgY2NfaW5jbHVkZSA9ICIv aW5jbHVkZT0oW10sWy0uaW5jbHVkZV0pIgorJCBjY19mbGFncyAgID0gIi9uYW1lPXNob3J0ZW5l ZC9zaG93PWFsbCIKKyQgbGlua19vcHRzICA9ICJvYmpkaXI6bGlic3NoMl8nJ3RoaXNpZCcub3B0 IgorJCEKKyQhCiskIHdoYXQgPSAiJydwMSciIAorJCBpZiB3aGF0IC5lcXMuICIiIC5vci4gZiRl ZGl0KHAxLCJ0cmltLGNvbGxhcHNlLHVwY2FzZSIpIC5lcXMuICJBTEwiIAorJCB0aGVuIAorJAl3 aGF0ID0gIkFMTCIKKyQgZWxzZQorJAl3aGF0ID0gZiRwYXJzZSh3aGF0LCwsIm5hbWUiKQorJAlp ZiBmJHNlYXJjaCgiZXhhZGlyOicnd2hhdCcuYyIpIC5lcXMuICIiCiskCXRoZW4gCiskCQl3cml0 ZSBzeXMkb3V0cHV0ICJDYW4ndCBtYWtlICcnd2hhdCciCiskCQlpbml0X3N0YXR1cyA9IDAKKyQJ ZW5kaWYKKyQgZW5kaWYKKyQhCiskIGN1cnJlbnRsaWIgPSBmJHNlYXJjaCgibGlic3NoMiouZXhl IikKKyQhCiskIGRlZmluZSBsaWJzc2gyICdjdXJyZW50bGliJworJCEKKyQgaG93ICA9ICInJ3Ay JyIKKyQgaWYgaG93IC5lcXMuICIiIC5vci4gZiRlZGl0KHAyLCJ0cmltLGNvbGxhcHNlLHVwY2Fz ZSIpIC5lcXMuICJTVEFUSUMiIAorJCB0aGVuCiskIAlvcGVuL3dyaXRlIGxvdXQgJ2xpbmtfb3B0 cycKKyQgCXdyaXRlIGxvdXQgImxpYnNzaDIub2xiL2xpYiIKKyQgCXdyaXRlIGxvdXQgInN5cyRz aGFyZTpzc2wkbGliY3J5cHRvX3NocjMyLmV4ZS9zaGFyZSIKKyQgCXdyaXRlIGxvdXQgInN5cyRz aGFyZTpzc2wkbGlic3NsX3NocjMyLmV4ZS9zaGFyZSIKKyQgCXdyaXRlIGxvdXQgImdudiRsaWJ6 c2hyL3NoYXJlIgorJCAJY2xvc2UgbG91dAorJCBlbHNlCiskCWhvdyA9ICJTSEFSRUQiCiskIAlv cGVuL3dyaXRlIGxvdXQgJ2xpbmtfb3B0cycKKyQgCXdyaXRlIGxvdXQgImxpYnNzaDIvc2hhcmUi CiskIAljbG9zZSBsb3V0CiskIGVuZGlmIAorJCEKKyRyZXR1cm4KZGlmZiAtLWdpdCBhL3Ztcy9s aWJzc2gyX21ha2VfaGVscC5kY2w7MSBiL3Ztcy9saWJzc2gyX21ha2VfaGVscC5kY2w7MQpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xM2IyMDY2Ci0tLSAvZGV2L251bGwKKysr IGIvdm1zL2xpYnNzaDJfbWFrZV9oZWxwLmRjbDsxCkBAIC0wLDAgKzEsOTEgQEAKKyQhCiskIQor JCEKKyQgb2xkZGlyID0gZiRlbnZpcm9ubWVudCggImRlZmF1bHQiICkKKyQgb24gY29udHJvbF95 IHRoZW4gZ290byBFbmQKKyQgb24gZXJyb3IgdGhlbiBnb3RvIEVuZAorJCEKKyQgZ29zdWIgSW5p dAorJCEKKyQgbWFuMmhlbHAgc3lzJGlucHV0OiBsaWJzc2gyLmhscCAtYiAxCisKK0xJQlNTSDIK KworT3BlblZNUyBwb3J0IG9mIHRoZSBwdWJsaWMgZG9tYWluIGxpYnNzaDIgbGlicmFyeSwgd2hp Y2ggCitwcm92aWRlcyBhbiBBUEkgdG8gaW1wbGVtZW50IGNsaWVudCBTU0ggY29tbXVuY2lhdGlv bi4KKworTGljZW5zZSBpbmZvcm1hdGlvbiBpcyBhdmFpbGFibGUgYXQgdGhlIGNvcHlpbmcgc3Vi dG9waWMuCisKKyQhCiskIG9wZW4vYXBwZW5kIG1oIGxpYnNzaDIuaGxwCiskIHdyaXRlIG1oIGhl bHB2ZXJzaW9uCiskIGNsb3NlIG1oCiskIQorJCBtYW4yaGVscCAtYSBbLV1yZWFkbWUuOyBsaWJz c2gyLmhscCAgICAgICAgLWIgMgorJCBtYW4yaGVscCAtYSBbLV1hdXRob3JzLjsgbGlic3NoMi5o bHAgICAgICAgLWIgMgorJCBtYW4yaGVscCAtYSBbLV1jb3B5aW5nLjsgbGlic3NoMi5obHAgICAg ICAgLWIgMgorJCBtYW4yaGVscCAtYSBbLV1uZXdzLjsgbGlic3NoMi5obHAgICAgICAgICAgLWIg MgorJCBtYW4yaGVscCAtYSBbLV1yZWxlYXNlLW5vdGVzLjsgbGlic3NoMi5obHAgLWIgMgorJCBt YW4yaGVscCAtYSBbLV1oYWNraW5nLjsgbGlic3NoMi5obHAgICAgICAgLWIgMgorJCBtYW4yaGVs cCAtYSBbLV10b2RvLjsgbGlic3NoMi5obHAgICAgICAgICAgLWIgMgorJCEKKyQgbWFuMmhlbHAg LWEgc3lzJGlucHV0OiBsaWJzc2gyLmhscCAgICAgICAgIC1iIDIKKworQVBJX1JlZmVyZW5jZQor CitSZWZlcmVuY2Ugb2YgYWxsIGltcGxlbWVudGVkIEFQSSBjYWxscyBpbgorbGlic3NoMi4KKwor JCEKKyQgbWFuMmhlbHAgLWEgWy0uZG9jc10qLjMgbGlic3NoMi5obHAgLWIgMworJCEKKyQgbGli cmFyeS9oZWxwL2NyZWF0ZSBsaWJzc2gyLmhsYiBsaWJzc2gyLmhscAorJCEKKyRFbmQ6CiskIHNl dCBkZWZhdWx0ICdvbGRkaXInCiskZXhpdAorJCEKKyQhLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorJCEKKyRJbml0OgorJCEKKyQgdGhpc2Rp ciA9IGYkZW52aXJvbm1lbnQoICJwcm9jZWR1cmUiICkKKyQgdGhpc2RpciA9IGYkcGFyc2UodGhp c2RpciwsLCJkZXZpY2UiKSArIGYkcGFyc2UodGhpc2RpciwsLCJkaXJlY3RvcnkiKQorJCBzZXQg ZGVmYXVsdCAndGhpc2RpcicKKyQhIAorJCBzYXkgPSAid3JpdGUgc3lzJG91dHB1dCIKKyQhCisk IHBpcGUgc2VhcmNoIFstLmluY2x1ZGVdKi5oIGxpYnNzaDJfdmVyc2lvbl9tYWpvci9ub2hlYWQg fCAocmVhZCBzeXMkaW5wdXQgbCA7IGwgPSBmJGVsZW1lbnQoMiwiICIsZiRlZGl0KGwsInRyaW0s Y29tcHJlc3MiKSkgOyAtIAorICAgICAgIGRlZmluZS9qb2IgbWFqb3J2ICZsICkKKyQgcGlwZSBz ZWFyY2ggWy0uaW5jbHVkZV0qLmggbGlic3NoMl92ZXJzaW9uX21pbm9yL25vaGVhZCB8IChyZWFk IHN5cyRpbnB1dCBsIDsgbCA9IGYkZWxlbWVudCgyLCIgIixmJGVkaXQobCwidHJpbSxjb21wcmVz cyIpKSA7IC0gCisgICAgICAgZGVmaW5lL2pvYiBtaW5vcnYgJmwgKQorJCBwaXBlIHNlYXJjaCBb LS5pbmNsdWRlXSouaCBsaWJzc2gyX3ZlcnNpb25fcGF0Y2gvbm9oZWFkIHwgKHJlYWQgc3lzJGlu cHV0IGwgOyBsID0gZiRlbGVtZW50KDIsIiAiLGYkZWRpdChsLCJ0cmltLGNvbXByZXNzIikpIDsg LSAKKyAgICAgICBkZWZpbmUvam9iIHBhdGNodiAmbCApCiskIQorJCBtYWpvcnYgICA9IGYkdHJu bG5tKCJtYWpvcnYiKQorJCBtaW5vcnYgICA9IGYkaW50ZWdlcihmJHRybmxubSgibWlub3J2Iikp IAorJCBwYXRjaHYgICA9IGYkaW50ZWdlciggZiR0cm5sbm0oInBhdGNodiIpKQorJCEKKyQgaGVs cHZlcnNpb24gPSAiVGhpcyBoZWxwIGxpYnJhcnkgaXMgYmFzZWQgb24gYnVpbGQgdmVyc2lvbiAn J21ham9ydicuJydtaW5vcnYnLicncGF0Y2h2JyBvZiBsaWJzc2gyLiIKKyQhCiskIGRlYXNzaWdu L2pvYiBtYWpvcnYKKyQgZGVhc3NpZ24vam9iIG1pbm9ydgorJCBkZWFzc2lnbi9qb2IgcGF0Y2h2 CiskIQorJCBpZiBmJHNlYXJjaCggIm1hbjJoZWxwLmV4ZSIgKSAuZXFzLiAiIgorJCB0aGVuCisk ICAgY2MgbWFuMmhlbHAKKyQgICBsaW5rIG1hbjJoZWxwCiskIGVuZGlmCiskISAKKyQgbWFuMmhl bHAgOj0gJCd0aGlzZGlyJ21hbjJoZWxwLmV4ZSAKKyQhCiskIGlmIGYkc2VhcmNoKCJsaWJzc2gy LmhscCIpIC5uZXMuICIiIAorJCB0aGVuIAorJCAgIGRlbGV0ZSBsaWJzc2gyLmhscDsqCiskIGVu ZGlmCiskIGlmIGYkc2VhcmNoKCJsaWJzc2gyLmhsYiIpIC5uZXMuICIiIAorJCB0aGVuIAorJCAg IGRlbGV0ZSBsaWJzc2gyLmhsYjsqCiskIGVuZGlmCiskcmV0dXJuCmRpZmYgLS1naXQgYS92bXMv bGlic3NoMl9tYWtlX2tpdC5kY2w7MSBiL3Ztcy9saWJzc2gyX21ha2Vfa2l0LmRjbDsxCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIxNjZlY2MKLS0tIC9kZXYvbnVsbAorKysg Yi92bXMvbGlic3NoMl9tYWtlX2tpdC5kY2w7MQpAQCAtMCwwICsxLDIyMiBAQAorJCEKKyQgb2xk ZGlyID0gZiRlbnZpcm9ubWVudCgiZGVmYXVsdCIpCiskIG9uIGVycm9yIHRoZW4gZ290byBFbmQK KyQhCiskIGdvc3ViIEluaXQKKyQhCiskIGNhbGwgV3JpdGVQcm9kdWN0RGVzY3JpcHRpb25GaWxl CiskIGNhbGwgV3JpdGVQcm9kdWN0VGV4dEZpbGUKKyQhCiskISBiYWNrdXAgdHJlZQorJCEKKyQg YmFja3VwIFstLi4uXSouKjswL2V4Y2w9KFtdKi5leGUsKi5vYmosKi5vcHQsKi5obHAsKi5obGIs Ki5iY2ssKi5jb20sKi5wY3NpKikgLQorICAgIGxpYnNzaDItJ3ZlcnNpb25uYW1lJydkYXRlbmFt ZSdfc3JjLmJjay9zYXZlCiskIHB1cmdlIGxpYnNzaDItJ3ZlcnNpb25uYW1lJydkYXRlbmFtZSdf c3JjLmJjaworJCEKKyQhIGJhY2t1cCBleGFtcGxlcworJCEKKyQgYmFja3VwIFstLmV4YW1wbGVd Ki5jOzAgbGlic3NoMl9leGFtcGxlcy0ndmVyc2lvbm5hbWUnJ2RhdGVuYW1lJy5iY2svc2F2ZQor JCBkaXJlICBsaWJzc2gyX2V4YW1wbGVzLSd2ZXJzaW9ubmFtZScnZGF0ZW5hbWUnLmJjaworJCBw dXJnZSBsaWJzc2gyX2V4YW1wbGVzLSd2ZXJzaW9ubmFtZScnZGF0ZW5hbWUnLmJjaworJCEKKyQg c2V0IGRlZmF1bHQgWy1dCiskIQorJCBkZWZkaXIgID0gZiRlbnZpcm9ubWVudCggImRlZmF1bHQi ICkKKyQgdGhpc2RldiA9IGYkcGFyc2UoZGVmZGlyLCwsImRldmljZSIsIm5vX2NvbmNlYWwiKSAK KyQgdGhpc2RpciA9IGYkcGFyc2UoZGVmZGlyLCwsImRpcmVjdG9yeSIsIm5vX2NvbmNlYWwiKSAt ICJdWyIgLSAiXVsiIC0gIl1bIiAtICJdWyIKKyQhCiskIGxpYnNzaDJfa2YgPSB0aGlzZGV2ICsg dGhpc2RpciAKKyQgbGlic3NoMl9rZiA9IGxpYnNzaDJfa2YgLSAiXSIgKyAiLl0iCiskIQorJCBz ZXQgZGVmYXVsdCAnbWRpcicKKyQhCiskIGRlZmluZS90cmFuc2xhdGlvbl9hdHRyaWJ1dGVzPWNv bmNlYWxlZCBsaWJzc2gyX2tmICdsaWJzc2gyX2tmJworJCEKKyQgcHJvZHVjdCBwYWNrYWdlIGxp YnNzaDIgLSAKKyAgICAvYmFzZT0nYXJjaCcgLSAKKyAgICAvcHJvZHVjZXI9amNiIC0KKyAgICAv c291cmNlPVtdIC0gISB3aGVyZSB0byBmaW5kIFBERiBhbmQgUFRGIAorICAgIC9kZXN0aW5hdGlv bj1bXSAtICEgd2hlcmUgdG8gcHV0IC5QQ1NJIGZpbGUgCisgICAgL21hdGVyaWFsPWxpYnNzaDJf a2Y6WzAwMDAwMC4uLl0gLSAgICAgICEgd2hlcmUgdG8gZmluZCBwcm9kdWN0IG1hdGVyaWFsIAor ICAgIC92ZXJzaW9uPSInJ3Ztc19tYWpvcnYnLicnbWlub3J2Jy0nJ3BhdGNodicnJ2RhdGVuYW1l JyIgLQorICAgIC9mb3JtYXQ9c2VxdWVudGlhbCAKKyQhCiskRW5kOgorJCEKKyQgc2V0IG5vb24K KyQgaWYgZiRzZWFyY2goIioucGNzaSRkZXNjOyoiKSAubmVzLiAiIiB0aGVuIGRlbGV0ZSAqLnBj c2kkZGVzYzsqCiskIGlmIGYkc2VhcmNoKCIqLnBjc2kkdGV4dDsqIikgLm5lcy4gIiIgdGhlbiBk ZWxldGUgKi5wY3NpJHRleHQ7KgorJCBpZiBmJHNlYXJjaCgibGlic3NoMi0nJ3ZlcnNpb25uYW1l JycnZGF0ZW5hbWUnX3NyYy5iY2s7KiIpIC5uZXMuICIiIHRoZW4gZGVsZXRlIGxpYnNzaDItJ3Zl cnNpb25uYW1lJydkYXRlbmFtZSdfc3JjLmJjazsqCiskIGlmIGYkc2VhcmNoKCJsaWJzc2gyX2V4 YW1wbGVzLScndmVyc2lvbm5hbWUnJydkYXRlbmFtZScuYmNrOyoiKSAubmVzLiAiIiB0aGVuIGRl bGV0ZSBsaWJzc2gyX2V4YW1wbGVzLSd2ZXJzaW9ubmFtZScnZGF0ZW5hbWUnLmJjazsqCiskIQor JCBpZiBmJHRybmxubSgibGlic3NoMl9rZiIpIC5uZXMuICIiIHRoZW4gZGVhc3NpZ24gbGlic3No Ml9rZgorJCBzZXQgZGVmYXVsdCAnb2xkZGlyJworJCEKKyRleGl0IAorJCEKKyQhLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KKyQhCiskSW5pdDoKKyQgc2V0IHByb2Nlc3MvcGFyc2U9ZXh0ZW5kZWQK KyQhCiskIHNheSAgICA9ICJ3cml0ZSBzeXMkb3V0cHV0IgorJCEKKyQgbWRpciAgID0gZiRlbnZp cm9ubWVudCgicHJvY2VkdXJlIikgCiskIG1kaXIgICA9IG1kaXIgLSBmJHBhcnNlKG1kaXIsLCwi bmFtZSIpIC0gZiRwYXJzZShtZGlyLCwsInR5cGUiKSAtIGYkcGFyc2UobWRpciwsLCJ2ZXJzaW9u IikKKyQhCiskIHNldCBkZWZhdWx0ICdtZGlyJworJCEKKyQgcGlwZSBzZWFyY2ggWy0uaW5jbHVk ZV0qLmggbGlic3NoMl92ZXJzaW9uX21ham9yL25vaGVhZCB8IChyZWFkIHN5cyRpbnB1dCBsIDsg bCA9IGYkZWxlbWVudCgyLCIgIixmJGVkaXQobCwidHJpbSxjb21wcmVzcyIpKSA7IC0gCisgICAg ICAgZGVmaW5lL2pvYiBtYWpvcnYgJmwgKQorJCBwaXBlIHNlYXJjaCBbLS5pbmNsdWRlXSouaCBs aWJzc2gyX3ZlcnNpb25fbWlub3Ivbm9oZWFkIHwgKHJlYWQgc3lzJGlucHV0IGwgOyBsID0gZiRl bGVtZW50KDIsIiAiLGYkZWRpdChsLCJ0cmltLGNvbXByZXNzIikpIDsgLSAKKyAgICAgICBkZWZp bmUvam9iIG1pbm9ydiAmbCApCiskIHBpcGUgc2VhcmNoIFstLmluY2x1ZGVdKi5oIGxpYnNzaDJf dmVyc2lvbl9wYXRjaC9ub2hlYWQgfCAocmVhZCBzeXMkaW5wdXQgbCA7IGwgPSBmJGVsZW1lbnQo MiwiICIsZiRlZGl0KGwsInRyaW0sY29tcHJlc3MiKSkgOyAtIAorICAgICAgIGRlZmluZS9qb2Ig cGF0Y2h2ICZsICkKKyQhCiskIG1ham9ydiAgID0gZiR0cm5sbm0oIm1ham9ydiIpCiskIG1pbm9y diAgID0gZiRpbnRlZ2VyKGYkdHJubG5tKCJtaW5vcnYiKSkgCiskIHBhdGNodiAgID0gZiRpbnRl Z2VyKCBmJHRybmxubSgicGF0Y2h2IikpCiskIQorJCBkZWFzc2lnbi9qb2IgbWFqb3J2CiskIGRl YXNzaWduL2pvYiBtaW5vcnYKKyQgZGVhc3NpZ24vam9iIHBhdGNodgorJCEKKyQgdm1zX21ham9y diA9ICBmJHRybmxubSgidm1zX21ham9ydiIpCiskIGlmIHZtc19tYWpvcnYgLmVxcy4gIiIgdGhl biB2bXNfbWFqb3J2ID0gbWFqb3J2CiskIQorJCBhcmNoID0gIlVOS05PV04iCiskIGlmIGYkZ2V0 c3lpKCJhcmNoX3R5cGUiKSAuZXEuIDIgdGhlbiBhcmNoID0gIkFYUFZNUyIKKyQgaWYgZiRnZXRz eWkoImFyY2hfdHlwZSIpIC5lcS4gMyB0aGVuIGFyY2ggPSAiSTY0Vk1TIgorJCEKKyQgaWYgYXJj aCAuZXFzLiAiVU5LTk9XTiIKKyQgdGhlbgorJCAgIHNheSAiVW5zdXBwb3J0ZWQgb3IgdW5rbm93 biBhcmNoaXRlY3R1cmUsIG9ubHkgd29ya3Mgb24gQWxwaGEgYW5kIEl0YW5pdW0iCiskICAgZXhp dCAyCiskIGVuZGlmCiskIQorJCEgaXMgdGhpcyBhIHByb3BlciByZWxlYXNlIG9yIGEgZGFpbHkg c25hcHNob3Q/CiskISBjcnVtbXksIGJ1dCBzaG91bGQgd29yay4KKyQhCiskIGRhaWx5ID0gIlRS VUUiCiskIGZpcnN0ZGFzaCAgICAgPSBmJGxvY2F0ZSgiLSIsbWRpcikKKyQgcmVzdGRpciAgICAg ICA9IGYkZXh0cmFjdCggZmlyc3RkYXNoICsgMSwgODAsIG1kaXIpCiskIHNlY29uZGRhc2ggICAg PSBmJGxvY2F0ZSgiLSIsIHJlc3RkaXIpCiskIGlmIHNlY29uZGRhc2ggLmdlLiBmJGxlbmd0aCgg cmVzdGRpciApCiskIHRoZW4KKyQgICBkYWlseSAgICA9ICJGQUxTRSIKKyQgICBkYXRlbmFtZSA9 ICIiICAgCiskIGVsc2UKKyQgICBkYXRlbmFtZSA9ICJEIiArIGYkZXh0cmFjdChzZWNvbmRkYXNo KzEsOCxyZXN0ZGlyKSAgIAorJCBlbmRpZgorJCEKKyQgaWYgZGFpbHkgCiskIHRoZW4KKyQgICBw cm9kdWN0bmFtZSA9ICJKQ0IgJydhcmNoJyBMSUJTU0gyIFYnJ3Ztc19tYWpvcnYnLicnbWlub3J2 Jy0nJ3BhdGNodicnJ2RhdGVuYW1lJyIKKyQgZWxzZQorJCAgIHByb2R1Y3RuYW1lID0gIkpDQiAn J2FyY2gnIExJQlNTSDIgVicndm1zX21ham9ydicuJydtaW5vcnYnLScncGF0Y2h2JyIKKyQgZW5k aWYKKyQhCiskIHByb2R1Y3RmaWxlbmFtZSAgPSAiSkNCLScnYXJjaCctTElCU1NIMi0iICsgZiRm YW8oIlYhMlpMITJaTC0hMlpMIUFTLTEiLCBmJGludGVnZXIodm1zX21ham9ydiksbWlub3J2LHBh dGNodixkYXRlbmFtZSkKKyQhCiskIHZlcnNpb25uYW1lICAgPSAiJyd2bXNfbWFqb3J2J18nJ21p bm9ydidfJydwYXRjaHYnIgorJCEKKyRyZXR1cm4KKyQhCiskIS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tCiskIQorJFdyaXRlUHJvZHVjdERlc2NyaXB0aW9uRmlsZTogc3Vicm91dGluZQorJCEKKyQg b3Blbi93cml0ZSBwZCAncHJvZHVjdGZpbGVuYW1lJy5QQ1NJJERFU0MKKyQhCiskIHdyaXRlIHBk ICJwcm9kdWN0ICcncHJvZHVjdG5hbWUnIGZ1bGwgOyIKKyQgd3JpdGUgcGQgIiAgICBzb2Z0d2Fy ZSBERUMgJydhcmNoJyBWTVMgOyIKKyQgd3JpdGUgcGQgIiAgICBpZiAobm90IDxzb2Z0d2FyZSBE RUMgJydhcmNoJyBWTVMgdmVyc2lvbiBtaW5pbXVtIFY4LjM+KSA7CiskIHdyaXRlIHBkICIgICAg ICAgIGVycm9yIE5FRURfVk1TODMgOyIKKyQgd3JpdGUgcGQgIiAgICBlbmQgaWYgOyIKKyQgd3Jp dGUgcGQgIiAgICBzb2Z0d2FyZSBIUCAnJ2FyY2gnIFNTTCB2ZXJzaW9uIG1pbmltdW0gVjEuMzsi CiskIHdyaXRlIHBkICIgICAgaWYgKG5vdCA8c29mdHdhcmUgSFAgJydhcmNoJyBTU0wgdmVyc2lv biBtaW5pbXVtIFYxLjM+KSA7CiskIHdyaXRlIHBkICIgICAgICAgIGVycm9yIE5FRURfU1NMIDsi CiskIHdyaXRlIHBkICIgICAgZW5kIGlmIDsiCiskIHdyaXRlIHBkICIgICAgZXhlY3V0ZSBwcmVj b25maWd1cmUgKCIic2V0IHByb2Nlc3MvcGFyc2VfdHlwZT1leHRlbmRlZCIiKTsiCiskIHdyaXRl IHBkICIgICAgZXhlY3V0ZSBwb3N0aW5zdGFsbCAoIiJzZXQgcHJvY2Vzcy9wYXJzZV90eXBlPWV4 dGVuZGVkIiIsIgorJCB3cml0ZSBwZCAiICAgICIicmVuYW1lIHBjc2kkZGVzdGluYXRpb246W2du dl11c3IuZGlyIHVzci5ESVIiIiwiCiskIHdyaXRlIHBkICIgICAgIiJyZW5hbWUgcGNzaSRkZXN0 aW5hdGlvbjpbZ252LnVzcl1pbmNsdWRlLmRpciBpbmNsdWRlLkRJUiIiLCIKKyQgd3JpdGUgcGQg IiAgICAiInJlbmFtZSBwY3NpJGRlc3RpbmF0aW9uOltnbnYudXNyLmluY2x1ZGVdbGlic3NoMi5k aXIgbGlic3NoMi5ESVIiIiwiCiskIHdyaXRlIHBkICIgICAgIiJyZW5hbWUgcGNzaSRkZXN0aW5h dGlvbjpbZ252LnVzci5pbmNsdWRlLmxpYnNzaDJdbGlic3NoMi5oIGxpYnNzaDIuaCIiLCIKKyQg d3JpdGUgcGQgIiAgICAiInJlbmFtZSBwY3NpJGRlc3RpbmF0aW9uOltnbnYudXNyLmluY2x1ZGUu bGlic3NoMl1saWJzc2gyX3B1YmxpY2tleS5oIGxpYnNzaDJfcHVibGlja2V5LmgiIiwiCiskIHdy aXRlIHBkICIgICAgIiJyZW5hbWUgcGNzaSRkZXN0aW5hdGlvbjpbZ252LnVzci5pbmNsdWRlLmxp YnNzaDJdbGlic3NoMl9zZnRwLmggbGlic3NoMl9zZnRwLmgiIiwiCiskIHdyaXRlIHBkICIgICAg IiJyZW5hbWUgcGNzaSRkZXN0aW5hdGlvbjpbZ252LnVzci5pbmNsdWRlLmxpYnNzaDJdbGlic3No Ml9jb25maWcuaCBsaWJzc2gyX2NvbmZpZy5oIiIsIgorJCB3cml0ZSBwZCAiICAgICIicmVuYW1l IHBjc2kkZGVzdGluYXRpb246W2dudi51c3JdbGliLmRpciBsaWIuRElSIiIsIgorJCB3cml0ZSBw ZCAiICAgICIicmVuYW1lIHBjc2kkZGVzdGluYXRpb246W2dudi51c3IubGliXWdudiRsaWJzc2gy XycndmVyc2lvbm5hbWUnLmV4ZSBnbnYkbGlic3NoMl8nJ3ZlcnNpb25uYW1lJy5leGUiIiwiCisk IHdyaXRlIHBkICIgICAgIiJyZW5hbWUgcGNzaSRkZXN0aW5hdGlvbjpbZ252LnVzci5zaGFyZS5k b2MubGlic3NoMl1saWJzc2gyLmhsYiBsaWJzc2gyLmhsYiIiKTsiCiskIHdyaXRlIHBkICIgICAg aW5mb3JtYXRpb24gUkVMRUFTRV9OT1RFUyBwaGFzZSBhZnRlciA7IgorJCB3cml0ZSBwZCAiICAg IG9wdGlvbiBFWEFNUExFIGRlZmF1bHQgMCA7IgorJCB3cml0ZSBwZCAiICAgICBkaXJlY3Rvcnkg IiJbZ252LnVzci5zaGFyZS5kb2MubGlic3NoMi5leGFtcGxlc10iIiA7IgorJCB3cml0ZSBwZCAi ICAgICBmaWxlICIiW2dudi51c3Iuc2hhcmUuZG9jLmxpYnNzaDIuZXhhbXBsZXNdbGlic3NoMl9l eGFtcGxlcy0nJ3ZlcnNpb25uYW1lJycnZGF0ZW5hbWUnLmJjayIiOyIKKyQgd3JpdGUgcGQgIiAg ICBlbmQgb3B0aW9uIDsiCiskIHdyaXRlIHBkICIgICAgb3B0aW9uIFNPVVJDRSBkZWZhdWx0IDAg OyIKKyQgd3JpdGUgcGQgIiAgICAgZGlyZWN0b3J5ICIiW2dudi5jb21tb25fc3JjXSIiIDsiCisk IHdyaXRlIHBkICIgICAgIGZpbGUgIiJbZ252LmNvbW1vbl9zcmNdbGlic3NoMi0nJ3ZlcnNpb25u YW1lJycnZGF0ZW5hbWUnX3NyYy5iY2siIjsiCiskIHdyaXRlIHBkICIgICAgZW5kIG9wdGlvbiA7 IgorJCB3cml0ZSBwZCAiICAgIGRpcmVjdG9yeSAiIltnbnZdIiIgOyIKKyQgd3JpdGUgcGQgIiAg ICBkaXJlY3RvcnkgIiJbZ252LnVzcl0iIiA7IgorJCB3cml0ZSBwZCAiICAgIGRpcmVjdG9yeSAi IltnbnYudXNyLmxpYl0iIiA7IgorJCB3cml0ZSBwZCAiICAgIGRpcmVjdG9yeSAiIltnbnYudXNy LmluY2x1ZGVdIiIgOyIKKyQgd3JpdGUgcGQgIiAgICBkaXJlY3RvcnkgIiJbZ252LnVzci5pbmNs dWRlLmxpYnNzaDJdIiIgOyIKKyQgd3JpdGUgcGQgIiAgICBkaXJlY3RvcnkgIiJbZ252LnVzci5z aGFyZV0iIiA7IgorJCB3cml0ZSBwZCAiICAgIGRpcmVjdG9yeSAiIltnbnYudXNyLnNoYXJlLmRv Y10iIiA7IgorJCB3cml0ZSBwZCAiICAgIGRpcmVjdG9yeSAiIltnbnYudXNyLnNoYXJlLmRvYy5s aWJzc2gyXSIiIDsiCiskIHdyaXRlIHBkICIgICAgZmlsZSAiIltnbnYudXNyLmluY2x1ZGUubGli c3NoMl1saWJzc2gyLmgiIiBzb3VyY2UgIiJbaW5jbHVkZV1saWJzc2gyLmgiIjsiCiskIHdyaXRl IHBkICIgICAgZmlsZSAiIltnbnYudXNyLmluY2x1ZGUubGlic3NoMl1saWJzc2gyX3B1YmxpY2tl eS5oIiIgc291cmNlICIiW2luY2x1ZGVdbGlic3NoMl9wdWJsaWNrZXkuaCIiOyIKKyQgd3JpdGUg cGQgIiAgICBmaWxlICIiW2dudi51c3IuaW5jbHVkZS5saWJzc2gyXWxpYnNzaDJfc2Z0cC5oIiIg c291cmNlICIiW2luY2x1ZGVdbGlic3NoMl9zZnRwLmgiIjsiCiskIHdyaXRlIHBkICIgICAgZmls ZSAiIltnbnYudXNyLmluY2x1ZGUubGlic3NoMl1saWJzc2gyX2NvbmZpZy5oIiIgc291cmNlICIi W3Ztc11saWJzc2gyX2NvbmZpZy5oIiI7IgorJCB3cml0ZSBwZCAiICAgIGZpbGUgIiJbZ252LnVz ci5zaGFyZS5kb2MubGlic3NoMl1saWJzc2gyLmhsYiIiIHNvdXJjZSAiIlt2bXNdbGlic3NoMi5o bGIiIjsiCiskIHdyaXRlIHBkICIgICAgZmlsZSAiIltnbnYudXNyLnNoYXJlLmRvYy5saWJzc2gy XWxpYnNzaDItJyd2ZXJzaW9ubmFtZScubmV3cyIiIHNvdXJjZSAiIlswMDAwMDBdTkVXUy4iIjsi CiskIHdyaXRlIHBkICIgICAgZmlsZSAiIltnbnYudXNyLnNoYXJlLmRvYy5saWJzc2gyXWxpYnNz aDItJyd2ZXJzaW9ubmFtZScucmVsZWFzZV9ub3RlcyIiIHNvdXJjZSAiIlt2bXNdcmVhZG1lLnZt cyIiOyIKKyQgd3JpdGUgcGQgIiAgICBmaWxlICIiW2dudi51c3IubGliXWdudiRsaWJzc2gyXycn dmVyc2lvbm5hbWUnLmV4ZSIiIHNvdXJjZSAiIlt2bXNdbGlic3NoMl8nJ3ZlcnNpb25uYW1lJy5l eGUiIjsiCiskIHdyaXRlIHBkICJlbmQgcHJvZHVjdCA7IgorJCBjbG9zZSBwZAorJGV4aXQgCisk ZW5kc3Vicm91dGluZQorJCEKKyQhLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyQhCiskV3JpdGVQ cm9kdWN0VGV4dEZpbGU6IHN1YnJvdXRpbmUKKyQhCiskIG9wZW4vd3JpdGUgcHQgJ3Byb2R1Y3Rm aWxlbmFtZScuUENTSSRURVhUCiskIHdyaXRlIHB0ICI9UFJPRFVDVCAnJ3Byb2R1Y3RuYW1lJyBG dWxsIgorJCB3cml0ZSBwdCAiMSAnUFJPRFVDRVIiCiskIHdyaXRlIHB0ICI9cHJvbXB0IGxpYnNz aDIgaXMgYW4gb3BlbiBzb3VyY2UgcHJvZHVjdCBwb3J0ZWQgdG8gVk1TIGJ5IEpvc2UgQmFhcnMi CiskIHdyaXRlIHB0ICJUaGlzIHNvZnR3YXJlIHByb2R1Y3QgaXMgcHJvdmlkZWQgd2l0aCBubyB3 YXJyYW50eS4iCiskIHdyaXRlIHB0ICJGb3IgbGljZW5zZSBpbmZvcm1hdGlvbiBzZWUgdGhlIExJ QlNTSDIgaGVscCBsaWJyYXJ5LiIKKyQgd3JpdGUgcHQgIjEgJ1BST0RVQ1QiCiskIHdyaXRlIHB0 ICI9cHJvbXB0IEpDQiBMSUJTU0gyIGZvciBPcGVuVk1TIgorJCB3cml0ZSBwdCAiIgorJCB3cml0 ZSBwdCAibGlic3NoMiBpcyBhbiBvcGVuIHNvdXJjZSBjbGllbnQgc2lkZSBsaWJyYXJ5IHRoYXQg YWltcyB0byBpbXBsZW1lbnQiCiskIHdyaXRlIHB0ICJ0aGUgU1NIIHByb3RvY29sLiBUaGlzIGlz IHRoZSBPcGVuVk1TIHBvcnQgb2YgdGhhdCBsaWJyYXJ5LiIKKyQgd3JpdGUgcHQgIkZ1cnRoZXIg aW5mb3JtYXRpb24gYXQgaHR0cDovL3d3dy5saWJzc2gyLm9yZy4iCiskIHdyaXRlIHB0ICIiCisk IHdyaXRlIHB0ICIxIE5FRURfVk1TODMiCiskIHdyaXRlIHB0ICI9cHJvbXB0IE9wZW5WTVMgOC4z IG9yIGxhdGVyIGlzIG5vdCBpbnN0YWxsZWQgb24geW91ciBzeXN0ZW0uIgorJCB3cml0ZSBwdCAi VGhpcyBwcm9kdWN0IHJlcXVpcmVzIE9wZW5WTVMgOC4zIG9yIGxhdGVyIHRvIGZ1bmN0aW9uLiIK KyQgd3JpdGUgcHQgIiIKKyQgd3JpdGUgcHQgIjEgTkVFRF9TU0wiCiskIHdyaXRlIHB0ICI9cHJv bXB0IEhQIFNTTCAxLjMgb3IgbGF0ZXIgaXMgbm90IGluc3RhbGxlZCBvbiB5b3VyIHN5c3RlbS4i CiskIHdyaXRlIHB0ICJUaGlzIHByb2R1Y3QgcmVxdWlyZXMgSFAgU1NMIDEuMyBvciBsYXRlciB0 byBmdW5jdGlvbi4iCiskIHdyaXRlIHB0ICIiCiskIHdyaXRlIHB0ICIxIFJFTEVBU0VfTk9URVMi CiskIHdyaXRlIHB0ICI9cHJvbXB0IFJlbGVhc2Ugbm90ZXMgYW5kIHRoZSBsaWJzc2gyIGhlbHAg bGlicmFyeSBhcmUgYXZhaWxhYmxlIGluIFtnbnYudXNyLnNoYXJlLmRvYy5saWJzc2gyXSBkaXJl Y3RvcnkuIgorJCB3cml0ZSBwdCAiIgorJCB3cml0ZSBwdCAiMSBFWEFNUExFIgorJCB3cml0ZSBw dCAiPXByb21wdCBEbyB5b3Ugd2FudCB0aGUgbGlic3NoMiBDIHByb2dyYW1taW5nIGV4YW1wbGVz ID8gIgorJCB3cml0ZSBwdCAiVGhlIGxpYnNzaDIgY29kaW5nIGV4YW1wbGVzIHdpbGwgYmUgYXZh aWxhYmxlIGluIGJhY2t1cCBzYXZlc2V0ICIKKyQgd3JpdGUgcHQgIltnbnYudXNyLnNoYXJlLmRv Yy5saWJzc2gyLmV4YW1wbGVzXWxpYnNzaDJfZXhhbXBsZXNfJyd2ZXJzaW9ubmFtZScuYmNrIgor JCB3cml0ZSBwdCAiIgorJCB3cml0ZSBwdCAiMSBTT1VSQ0UiCiskIHdyaXRlIHB0ICI9cHJvbXB0 IERvIHlvdSB3YW50IHRoZSBjb21wbGV0ZSBsaWJzc2gyIHNvdXJjZSB0cmVlID8gIgorJCB3cml0 ZSBwdCAiVGhlIGxpYnNzaDIgc291cmNlIHRyZWUgd2lsbCBiZSBhdmFpbGFibGUgaW4gYmFja3Vw IHNhdmVzZXQgIgorJCB3cml0ZSBwdCAiW2dudi5jb21tb25fc3JjXWxpYnNzaDJfJyd2ZXJzaW9u bmFtZScnJ2RhdGVuYW1lJ19zcmMuYmNrIgorJGNsb3NlIHB0CiskZXhpdAorJCBlbmRzdWJyb3V0 aW5lCisKZGlmZiAtLWdpdCBhL3Ztcy9saWJzc2gyX21ha2VfbGliLmRjbDsxIGIvdm1zL2xpYnNz aDJfbWFrZV9saWIuZGNsOzEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmQ4 YjEzYgotLS0gL2Rldi9udWxsCisrKyBiL3Ztcy9saWJzc2gyX21ha2VfbGliLmRjbDsxCkBAIC0w LDAgKzEsMzQ0IEBACiskIQorJCEKKyQgb2xkZGlyID0gZiRlbnZpcm9ubWVudCgiZGVmYXVsdCIp CiskIG9uIGNvbnRyb2xfeSB0aGVuIGdvdG8gWUV4aXQKKyQhCiskIGdvc3ViIEluaXQKKyQgaWYg Lm5vdC4gaW5pdF9zdGF0dXMgdGhlbiBnb3RvIFlFeGl0CiskIQorJCBjYWxsIENvbXBpbGVBbGwK KyQgY2FsbCBCdWlsZFRyYW5zZmVyVmVjdG9ycworJCBjYWxsIExpbmtTaGFyZWQKKyQhCiskIGNh bGwgQ2xlYW51cAorJCEKKyRZRXhpdDoKKyQgc2V0IG5vb24KKyQhCiskIGRlYXNzaWduIHNyY2Rp cgorJCBpZiBmJHNlYXJjaCgib2JqZGlyOiouKjsqIikgLm5lcy4gIiIgdGhlbiBkZWxldGUgb2Jq ZGlyOiouKjsqCiskIGRlYXNzaWduIG9iamRpcgorJCBkZWxldGUgbGlicmFyeV9vYmplY3RzLmRp cjsqCiskIQorJCBzZXQgZGVmYXVsdCAnb2xkZGlyJworJGV4aXQgCiskIQorJCEtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyQhCiskSW5pdDogCiskIQorJCEKKyQgaW5pdF9zdGF0dXMgPSAxCiskIHRoaXNpZCA9IGYk aW50ZWdlciggJXgnZiRnZXRqcGkoMCwicGlkIiknKSAKKyQgbWRpciAgID0gZiRlbnZpcm9ubWVu dCgicHJvY2VkdXJlIikgCiskIG1kaXIgICA9IG1kaXIgLSBmJHBhcnNlKG1kaXIsLCwibmFtZSIp IC0gZiRwYXJzZShtZGlyLCwsInR5cGUiKSAtIGYkcGFyc2UobWRpciwsLCJ2ZXJzaW9uIikKKyQg c2V0IGRlZmF1bHQgJ21kaXInCiskIQorJCBvYmpkaXIgPSAiWy5saWJyYXJ5X29iamVjdHNdIgor JCBzcmNkaXIgPSAiWy0uc3JjXSIKKyQhCiskIG9iamRpcmZpbGUgPSBvYmpkaXIgLSAiWy4iIC0g Il0iICsgIi5kaXIiCiskIGlmIGYkc2VhcmNoKCBvYmpkaXJmaWxlICkgLmVxcy4gIiIKKyQgdGhl bgorJCAgIGNyZWF0ZS9kaXJlY3RvcnkgJ29iamRpcicKKyQgZW5kaWYKKyQhCiskIGRlZmluZSBv YmpkaXIgJ29iamRpcicKKyQgZGVmaW5lIHNyY2RpciAnc3JjZGlyJworJCEKKyQgY2NfaW5jbHVk ZSA9ICIvaW5jbHVkZT0oW10sWy0uaW5jbHVkZV0pIgorJCBsaW5rX29wdHMgID0gIm9iamRpcjps aWJzc2gyXycndGhpc2lkJy5vcHQiCiskIQorJCBwaXBlIHNlYXJjaCBbLS5pbmNsdWRlXWxpYnNz aDIuaCBsaWJzc2gyX3ZlcnNpb25fbWFqb3Ivbm9oZWFkIHwgKHJlYWQgc3lzJGlucHV0IGwgOyBs ID0gZiRlbGVtZW50KDIsIiAiLGYkZWRpdChsLCJ0cmltLGNvbXByZXNzIikpIDsgLSAKKyAgICAg ICBkZWZpbmUvam9iIG1ham9ydiAmbCApCiskIHBpcGUgc2VhcmNoIFstLmluY2x1ZGVdbGlic3No Mi5oIGxpYnNzaDJfdmVyc2lvbl9taW5vci9ub2hlYWQgfCAocmVhZCBzeXMkaW5wdXQgbCA7IGwg PSBmJGVsZW1lbnQoMiwiICIsZiRlZGl0KGwsInRyaW0sY29tcHJlc3MiKSkgOyAtIAorICAgICAg IGRlZmluZS9qb2IgbWlub3J2ICZsICkKKyQgcGlwZSBzZWFyY2ggWy0uaW5jbHVkZV1saWJzc2gy LmggbGlic3NoMl92ZXJzaW9uX3BhdGNoL25vaGVhZCB8IChyZWFkIHN5cyRpbnB1dCBsIDsgbCA9 IGYkZWxlbWVudCgyLCIgIixmJGVkaXQobCwidHJpbSxjb21wcmVzcyIpKSA7IC0gCisgICAgICAg ZGVmaW5lL2pvYiBwYXRjaHYgJmwgKQorJCEKKyQgbWFqb3J2ICAgPSBmJHRybmxubSgibWFqb3J2 IikKKyQgbWlub3J2ICAgPSBmJGludGVnZXIoZiR0cm5sbm0oIm1pbm9ydiIpKSAKKyQgcGF0Y2h2 ICAgPSBmJGludGVnZXIoIGYkdHJubG5tKCJwYXRjaHYiKSkKKyQhCiskIE9MQk9OTFkgPSAiRkFM U0UiCiskIGlmIHAxIC5lcXMuICJPTEJPTkxZIgorJCB0aGVuCiskICAgT0xCT05MWSA9ICJUUlVF IgorJCBlbmRpZgorJCEKKyQgZGVhc3NpZ24vam9iIG1ham9ydgorJCBkZWFzc2lnbi9qb2IgbWlu b3J2CiskIGRlYXNzaWduL2pvYiBwYXRjaHYKKyQhCiskcmV0dXJuCiskIQorJCEtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KKyQhCiskQ2xlYW51cDogc3Vicm91dGluZQorJCEKKyQgc2V0IG5vb24KKyQgcHVyZ2UgKi5v cHQKKyQgcHVyZ2UgKi5vbGIKKyQgcHVyZ2UgKi5leGUKKyQhIAorJGV4aXQgMQorJGVuZHN1YnJv dXRpbmUKKyQhCiskIS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorJCEKKyRMaW5rU2hhcmVkOiBzdWJyb3V0aW5lCisk IQorJCEKKyQhCiskIGN2ZXJzaW9uID0gZiRmYW8oIiEzWkwiLG1pbm9ydikgICsgZiRmYW8oIiEz WkwiLHBhdGNodikKKyQhCiskISBHZW5lcmFsIGxpbmtpbmcgb3B0aW9ucyBpbiBsaW5rX2xpYnNz aDJfdmVyc2lvbi4uLm9wdAorJCEgVmVjdG9ycyBpbiBsaW5rX2xpYnNzaDJfdmVjdG9ycy4uLm9w dAorJCEKKyQgb3Blbi93cml0ZSB1aXR2IGxpbmtfbGlic3NoMl92ZXJzaW9uXydtYWpvcnYnXydt aW5vcnYnXydwYXRjaHYnLm9wdAorJCB3cml0ZSB1aXR2ICJHU01BVENIPUxFUVVBTCwnJ21ham9y dicsJydjdmVyc2lvbiciCiskIHdyaXRlIHVpdHYgIklERU5USUZJQ0FUSU9OPSIiTElCU1NIMiAn J21ham9ydicuJydtaW5vcnYnLicncGF0Y2h2JyIiIgorJCB3cml0ZSB1aXR2ICJzeXMkc2hhcmU6 c3NsJGxpYmNyeXB0b19zaHIzMi5leGUvc2hhcmUiCiskIHdyaXRlIHVpdHYgInN5cyRzaGFyZTpz c2wkbGlic3NsX3NocjMyLmV4ZS9zaGFyZSIKKyQgd3JpdGUgdWl0diAiZ252JGxpYnpzaHIvc2hh cmUiCiskIGNsb3NlIHVpdHYKKyQhIAorJCBsaW5rL3NoYXJlZC9leGU9bGlic3NoMl8nbWFqb3J2 J18nbWlub3J2J18ncGF0Y2h2Jy5leGUgLQorICAgIGxpYnNzaDIub2xiL2xpYiwgLQorICAgIGxp bmtfbGlic3NoMl92ZXJzaW9uXydtYWpvcnYnXydtaW5vcnYnXydwYXRjaHYnLm9wdC9vcHQsIC0K KyAgICBsaW5rX2xpYnNzaDJfdmVjdG9yc18nbWFqb3J2J18nbWlub3J2J18ncGF0Y2h2Jy5vcHQv b3B0CiskIQorJGV4aXQKKyRlbmRzdWJyb3V0aW5lCiskIQorJCEtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyQhCisk Q29tcGlsZUFsbDogc3Vicm91dGluZQorJCEKKyQgc2V0IG5vb24KKyQhCiskIGlmIGYkc2VhcmNo KCJvYmpkaXI6Ki5vYmo7KiIpIC5uZXMgIiIgCiskIHRoZW4gCiskICAgZGVsZXRlIG9iamRpcjoq Lm9iajsqCiskIGVuZGlmCiskIGlmIGYkc2VhcmNoKCJbLmN4eF9yZXBvc2l0b3J5XWN4eCRkZW1h bmdsZXJfZGIuOyIpIC5uZXMgIiIgCiskIHRoZW4gCiskICAgZGVsZXRlIFsuY3h4X3JlcG9zaXRv cnldY3h4JGRlbWFuZ2xlcl9kYi47KgorJCBlbmRpZgorJCEKKyQhIENvbXBpbGUgYWxsIC5jIGZp bGVzIGluIFstLnNyY10sIGZpcnN0IGFzX2lzCiskISBhbmQgdGhlbiBhcyBkZWZhdWx0IGFsbCB1 cHBlcmNhc2UgbmFtZXMKKyQhIGFuZCBhZGQgdGhlIHJlc3VsdGluZyBvYmplY3QgdG8gb2JqZWN0 IGxpYnJhcmllcworJCEgbGlic3NoMl91cC5vbGIgYW5kIGxpYnNzaDJfYXNfaXMub2xiLgorJCEK KyQgY2FzZSA9IDAKKyQgaWYgT0xCT05MWSB0aGVuIGNhc2UgPSAxCiskQ2FzZUxvb3A6CiskIQor JCBpZiBjYXNlIC5lcS4gMCAKKyQgdGhlbiFjYW1lbCBjYXNlIG5hbWVzIAorJCAgIGNjX2ZsYWdz ID0gIi9uYW1lcz0oc2hvcnRlbmVkLGFzX2lzKSIKKyQgICBvYmpsaWIgPSAibGlic3NoMl9hc2lz Lm9sYiIKKyQgZW5kaWYKKyQhCiskIGlmIGNhc2UgLmVxLiAxIAorJCB0aGVuIXVwcGVyY2FzZSBu YW1lcyAKKyQgICBpZiBmJHNlYXJjaCgiWy5jeHhfcmVwb3NpdG9yeV1jeHgkZGVtYW5nbGVyX2Ri LjsiKSAubmVzICIiIAorJCAgIHRoZW4gCiskICAgICAgcmVuYW1lIFsuY3h4X3JlcG9zaXRvcnld Y3h4JGRlbWFuZ2xlcl9kYi47ICoubG93ZXJjYXNlCiskICAgICAgcHVyZ2UgIFsuY3h4X3JlcG9z aXRvcnldY3h4JGRlbWFuZ2xlcl9kYi5sb3dlcmNhc2UKKyQgICBlbmRpZgorJCEKKyQgICBjY19m bGFncyA9ICIvbmFtZXM9KHNob3J0ZW5lZCkiCiskICAgb2JqbGliID0gImxpYnNzaDJfdXAub2xi IgorJCBlbmRpZgorJCEKKyQgaWYgZiRzZWFyY2goIicnb2JqbGliJzsqIikgLm5lcy4gIiIgdGhl biBkZWxldGUgJ29iamxpYic7KgorJCBsaWJyYXJ5L2NyZWF0ZSAnb2JqbGliJworJCEKKyRMb29w OgorJCB0aGlzID0gZiRzZWFyY2goInNyY2RpcjoqLmM7MCIpCiskIGlmIHRoaXMgLmVxcy4gIiIg dGhlbiBnb3RvIEVuZExvb3AKKyQhCiskIHdoYXQgPSBmJHBhcnNlKCB0aGlzLCwsIm5hbWUiKQor JCEKKyQgY2FsbCBDb21waWxlQW5kQWRkCiskIQorJCBnb3RvIExvb3AKKyRFbmRMb29wOgorJCBj YXNlID0gY2FzZSArIDEKKyQgZGVsZXRlIG9iamRpcjoqLm9iajsqCiskIGlmIGNhc2UgLmx0IDIg dGhlbiBnb3RvIENhc2VMb29wCiskIQorJCByZW5hbWUgbGlic3NoMl91cC5vbGIgbGlic3NoMi5v bGIKKyQgaWYgZiRzZWFyY2goIlsuY3h4X3JlcG9zaXRvcnldY3h4JGRlbWFuZ2xlcl9kYi47Iikg Lm5lcyAiIiAKKyQgdGhlbiAKKyQgICAgcmVuYW1lIFsuY3h4X3JlcG9zaXRvcnldY3h4JGRlbWFu Z2xlcl9kYi47ICoudXBwZXJjYXNlCiskICAgIHB1cmdlICBbLmN4eF9yZXBvc2l0b3J5XWN4eCRk ZW1hbmdsZXJfZGIudXBwZXJjYXNlCiskIGVuZGlmCiskIQorJCBpZiBPTEJPTkxZIHRoZW4gZXhp dCA0CiskIQorJCEgRm9yIGVhY2ggZnVuY3Rpb24gdGhhdCBpcyB0b28gbG9uZywgY3JlYXRlIGEg Z2xvYmFsIHN5bWJvbAorJCEgbG93JCdzaG9ydGVuZWQtdXBwZXJjYXNlLW5hbWUnIHdpdGggYXMg dmFsdWUgbG93ZXJjYXNlIHNob3J0ZW5lZAorJCEgbmFtZSBpbiBpdCwgc28gd2UgY2FuIGFkZCB0 aGUgcHJvcGVyIGxvd2VyIG9yIG1peGVkIGNhc2UgCiskISBzaG9ydGVuZWQgbmFtZSBsYXRlciB3 aGVuIGJ1aWxkaW5nIHRoZSB0cmFuc2ZlciB2ZWN0b3JzIAorJCEgZm9yIHRoZSBzaGFyZWQgaW1h Z2UuCiskISBUaGlzIGlzIHRvIHByZXZlbnQgdHdvIHZlcnkgbG9uZyBzaW1pbGFyIGZ1bmN0aW9u IG5hbWVzIAorJCEgdGhhdCBhcmUgc2hvcnRlbmVkIGdldHRpbmcgbWl4ZWQgdXAgd2hlbiBzb3J0 ZWQgYWxwaGFiZXRpY2FsbHkuCiskIQorJCBpbnB1dGZpbGUgPSAiWy5jeHhfcmVwb3NpdG9yeV1j eHgkZGVtYW5nbGVyX2RiLmxvd2VyY2FzZSIKKyQgZ29zdWIgR2V0U2hvcnRlbmVkCiskIQorJCBp bnB1dGZpbGUgPSAgIlsuY3h4X3JlcG9zaXRvcnldY3h4JGRlbWFuZ2xlcl9kYi51cHBlcmNhc2Ui CiskIGdvc3ViIEdldFNob3J0ZW5lZAorJCEKKyRleGl0CiskIQorJEdldFNob3J0ZW5lZDoKKyQh CiskIG9wZW4vcmVhZCBzICdpbnB1dGZpbGUnCiskIG5hbWVjb3VudCA9IDAKKyRSZWFkTG9vcDoK KyQhCiskIHJlYWQvZW5kPWVuZHJlYWRsb29wIHMgcmVnZWwKKyQhCiskIHNob3J0bmFtZSA9IGYk ZWxlbWVudCgwLCIkIixyZWdlbCkgKyAiJCIKKyQgbG9uZ25hbWUgID0gZiRlbGVtZW50KDEsIiQi LHJlZ2VsKQorJCEKKyQgc3ltdmFsdWUgPSAiIgorJCEKKyQgaWYgc2hvcnRuYW1lIC5lcXMuIGYk ZWRpdChzaG9ydG5hbWUsInVwY2FzZSIpCiskIHRoZW4KKyQhICB0aGlzIGlzIGFuIHVwcGVyY2Fz ZSBzaG9ydG5hbWUsIGFkZCBpdCAKKyQgICBzeW1uYW1lICA9ICJ1JCcnbG9uZ25hbWUnIgorJCAg IHN5bXZhbHVlID0gIicnc2hvcnRuYW1lJyIKKyQgICBsb3ckJ3Nob3J0bmFtZScgPT0gbCQnbG9u Z25hbWUnCiskIQorJCAgIGRlbGV0ZS9zeW1ib2wgbCQnbG9uZ25hbWUnCiskIQorJCBlbHNlCisk ISAgdGhpcyBpcyBhbiBsb3dlcmNhc2Ugc2hvcnRuYW1lCiskICAgc3ltbmFtZSAgPSAibCQnJ2xv bmduYW1lJyIKKyQgICBzeW12YWx1ZSA9ICInJ3Nob3J0bmFtZSciCiskICAgJ3N5bW5hbWUnID0g Iicnc3ltdmFsdWUnIgorJCBlbmRpZgorJCEKKyQgbmFtZWNvdW50ID0gbmFtZWNvdW50ICsgMQor JCEKKyQgZ290byBSZWFkTG9vcAorJEVuZFJlYWRMb29wOgorJCEKKyRjbG9zZSBzCiskcmV0dXJu CiskIQorJGVuZHN1YnJvdXRpbmUKKyQhCiskIS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorJCEKKyRDb21waWxlQW5k QWRkOiBzdWJyb3V0aW5lCiskIQorJCBvbiBlcnJvciB0aGVuIGdvdG8gRW5kCiskIQorJCBjYyAv d2Fybj1kaXNhYmxlPWxvbmdleHRlcm4vbGlzPW9iamRpcjovc2hvdz1hbGwgJ2NjX2luY2x1ZGUn ICdjY19mbGFncycvb2JqZWN0PW9iamRpcjond2hhdCcub2JqIHNyY2Rpcjond2hhdCcuYworJCBs aWJyYXJ5L2luc2VydCAnb2JqbGliJyBvYmpkaXI6J3doYXQnLm9iagorJCEKKyRFbmQ6CiskZXhp dAorJGVuZHN1YnJvdXRpbmUgCiskIQorJCEtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyQhCiskQnVpbGRUcmFuc2Zl clZlY3RvcnM6IHN1YnJvdXRpbmUKKyQhCiskISBEbyBhIGJhbGFuY2VkIHJlYWQgb2YgdGhlIHVw cGVyY2FzZSBsaWJyYXJ5IG5hbWVzCiskISBhbmQgdGhlIG1peGVkIGNhc2UgbGlicmFyeSBuYW1l cywgYW5kIGJ1aWxkIHRoZQorJCEgdHJhbnNmZXIgdmVjdG9ycyB3aXRoIHVwcGVyY2FzZSBlbnRy eSBwb2ludHMgCiskISB3aXRoIGFuIGFsdGVybmF0aXZlIGluIG1peGVkIGNhc2UuCiskISBGb3Ig c2hvcnRlbmVkIG5hbWVzLCB1c2UgdGhlIGxvdyQqIHN5bWJvbHMKKyQhIHRvIGF2b2lkIGJlaW5n IGZvb2xlZCBieSB0aGUgc29ydC4KKyQhCiskIHRoaXNsaWIgPSAibGlic3NoMi5vbGIiCiskIGxp YnJhcnkvbGlzPWxpYnUuJ3RoaXNpZCcvbmFtZXMgbGlic3NoMi5vbGIKKyQgbGlicmFyeS9saXM9 bGliX2FzaXN1Lid0aGlzaWQnL25hbWVzIGxpYnNzaDJfYXNpcy5vbGIKKyQhCiskISBjYXNlIGJs aW5kIHNvcnQgb2YgYWxsIG1vZHVsZXMgaW4gYm90aCB0aGUgdXBwZXJjYXNlCiskISBhcyB0aGUg Y2FzZSBzZW5zaXRpdmUgb2JqZWN0IGxpYnJhcnkuCiskIQorJCBzb3J0IGxpYnUuJ3RoaXNpZCcg bGliLid0aGlzaWQnL3NwZWM9c3lzJGlucHV0CisvQ09MTEFUSU5HX1NFUVVFTkNFPShTRVFVRU5D RT0gKCJBIiAtICJaIiwiMCItIjkiLCJfIiksIEZPTEQpIAorJCBzb3J0IGxpYl9hc2lzdS4ndGhp c2lkJyBsaWJfYXNpcy4ndGhpc2lkJy9zcGVjPXN5cyRpbnB1dAorL0NPTExBVElOR19TRVFVRU5D RT0oU0VRVUVOQ0U9ICgiQSIgLSAiWiIsIjAiLSI5IiwiXyIpLCBGT0xEKSAKKyQhCiskIG9wZW4v cmVhZCAgaW4gIGxpYi4ndGhpc2lkJworJCBvcGVuL3JlYWQgIGluYXNpcyAgbGliX2FzaXMuJ3Ro aXNpZCcKKyQgb3Blbi93cml0ZSB1aXQgbGlua19saWJzc2gyX3ZlY3RvcnNfJ21ham9ydidfJ21p bm9ydidfJ3BhdGNodicub3B0CiskIQorJCB3cml0ZSB1aXQgIkNBU0VfU0VOU0lUSVZFPVlFUyIK KyQgd3JpdGUgdWl0ICJTWU1CT0xfVkVDVE9SPSAoIC0iCiskIQorJCBtb2RlID0gMAorJCB1aXRy ZWdlbCA9ICIiCiskIQorJFJlYWRMb29wOgorJCEKKyQgcmVhZC9lbmQ9UmVhZEFzaXMgaW4gcmVn ZWwKKyRSZWFkQXNpczoKKyQgcmVhZC9lbmQ9RW5kUmVhZExvb3AgaW5hc2lzIGFzaXNyZWdlbAor JCEKKyQgcmVnZWwgICAgID0gZiRlZGl0KCByZWdlbCwgInRyaW0sY29tcHJlc3MiICkKKyQgYXNp c3JlZ2VsID0gZiRlZGl0KCBhc2lzcmVnZWwsICJ0cmltLGNvbXByZXNzIiApCiskIQorJCBpZiBm JGVsZW1lbnQoMCwiICIscmVnZWwpIC5lcXMuICJNb2R1bGUiIC5vci4gLQorICAgICBmJGV4dHJh Y3QoMCwxLHJlZ2VsKSAgIC5lcXMuICJfIiAub3IuIC0KKyAgICAgZiRlbGVtZW50KDEsIiAiLHJl Z2VsKSAubmVzLiAiICIgLm9yLiAtCisgICAgIHJlZ2VsIC5lcXMuICIiCiskIHRoZW4KKyQgICBn b3RvIFJlYWRMb29wCiskIGVuZGlmCiskIQorJCBpZiB1aXRyZWdlbCAubmVzLiAiIiAuYW5kLiBt b2RlIC5lcS4gMQorJCB0aGVuCiskICAgd3JpdGUgdWl0ICInJ3VpdHJlZ2VsJz1QUk9DRURVUkUs IC0iIAorJCAgIHdyaXRlIHVpdCAiJyd1aXRhc2lzJy8nJ3VpdHJlZ2VsJz1QUk9DRURVUkUsIC0i IAorJCEKKyQgICB1aXRyZWdlbCA9ICIiCiskICAgdWl0YXNpcyAgPSAiIgorJCBlbmRpZiAKKyQh CiskIHVpdHJlZ2VsID0gcmVnZWwKKyQgaWYgZiR0eXBlKCBsb3ckJ3VpdHJlZ2VsJyApIC5uZXMu ICIiCiskIHRoZW4KKyQgICB1aXRhc2lzID0gbG93JCd1aXRyZWdlbCcKKyQgICBkZWxldGUvc3lt Ym9sL2dsb2JhbCBsb3ckJ3VpdHJlZ2VsJworJCBlbHNlCiskICAgdWl0YXNpcyAgPSBhc2lzcmVn ZWwKKyQgZW5kaWYKKyQhCiskIG1vZGUgPSAxCiskIQorJCBnb3RvIFJlYWRMb29wCiskRW5kcmVh ZExvb3A6CiskISAKKyQhIFRvIGdldCB0aGUgY2xvc2luZyBicmFjZSBhZnRlciB0aGUgbGFzdCBw cm9jZWR1cmUKKyQhIGtleXdvcmQuCiskIQorJCBpZiB1aXRyZWdlbCAubmVzLiAiIgorJCB0aGVu IAorJCAgIHdyaXRlIHVpdCAiJyd1aXRyZWdlbCc9UFJPQ0VEVVJFLCAtIiAKKyQgICB3cml0ZSB1 aXQgIicndWl0YXNpcycvJyd1aXRyZWdlbCc9UFJPQ0VEVVJFKSIgCiskIGVuZGlmCiskIQorJCB3 cml0ZSB1aXQgIkNBU0VfU0VOU0lUSVZFPU5PIgorJCEKKyQgY2xvc2UgaW4KKyQgY2xvc2UgaW5h c2lzCiskIGNsb3NlIHVpdAorJCEKKyQgZGVsZXRlIGxpYiouJ3RoaXNpZCc7KgorJCEKKyRleGl0 CiskZW5kc3Vicm91dGluZQorJCEKKyQhLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiskIQpkaWZmIC0tZ2l0IGEvdm1z L21hbjJoZWxwLmMgYi92bXMvbWFuMmhlbHAuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi5lMDk2NzhkCi0tLSAvZGV2L251bGwKKysrIGIvdm1zL21hbjJoZWxwLmMKQEAgLTAs MCArMSw1MDYgQEAKKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2lu Y2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPGN0eXBlLmg+CisjaW5jbHVkZSA8ZXJybm8uaD4K KworI2luY2x1ZGUgPHN0YXJsZXQuaD4KKyNpbmNsdWRlIDxsaWIkcm91dGluZXMuaD4KKyNpbmNs dWRlIDxzc2RlZi5oPgorI2luY2x1ZGUgPGRlc2NyaXAuaD4KKyNpbmNsdWRlIDxybXMuaD4KKwor dHlwZWRlZiBzdHJ1Y3QgbWFubHsKKyAgICBzdHJ1Y3QgbWFubCAqbmV4dDsKKyAgICBjaGFyICpm aWxlbmFtZTsKK31tYW4sICptYW5QdHI7CisgCit0eXBlZGVmIHN0cnVjdCBwZl9mYWJuYW17Cisg ICAgc3RydWN0IEZBQiBkZmFiOworICAgIHN0cnVjdCBSQUIgZHJhYjsKKyAgICBzdHJ1Y3QgbmFt bGRlZiBkbmFtOworICAgIGNoYXIgICBleHBhbmRlZF9maWxlbmFtZVtOQU0kQ19NQVhSU1MgKyAx XTsgCit9IHBmbiwgKnBmblB0cjsKKworLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KKworZnBjb3B5KCBjaGFyICpvdXRwdXQsIGNo YXIgKmlucHV0LCBpbnQgbGVuICkKK3sKK2NoYXIgICAgKmlzLCAqb3M7CitpbnQgaTsKKworaWYg KCBsZW4gKXsKKyAgICBmb3IgKCBpcyA9IGlucHV0LCBvcyA9IG91dHB1dCwgaSA9IDA7IGkgPCBs ZW4gOyArK2ksICsraXMsICsrb3MpeworICAgICAgICAgICAgKm9zID0gKmlzOworICAgIH0KKyAg ICAqb3MgPSAwOworfWVsc2V7CisgICAgb3V0cHV0WzBdID0gMDsKK30KK30gICAgICAgICAgIAor CisKKy8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSovCisvKiBnaXZlIHBhcnQgb2YgaWxlbmFtZSBpbiBwYXJ0bmFtZS4gU2VlIGNvZGUg Zm9yIHByb3BlcgorICAgdmFsdWUgb2YgaSAoIDAgPSBub2RlLCAxID0gZGV2LCAyID0gZGlyLDMg PSBuYW1lIGV0Yy4KKyovIAorCitpbnQgZm5hbWVwYXJ0KCBjaGFyICppbnB1dGZpbGUsIGNoYXIg KnBhcnQsIGludCB3aGF0cGFydCApCit7CitwZm5QdHIgcGY7CitpbnQgICAgIHN0YXR1czsKK2No YXIgICAgaXBhcnRbNl1bMjU2XSwgKmksICpwOworCitwZiA9IGNhbGxvYyggMSwgc2l6ZW9mKCBw Zm4gKSApOworCitwZi0+ZGZhYiA9IGNjJHJtc19mYWI7CitwZi0+ZHJhYiA9IGNjJHJtc19yYWI7 CitwZi0+ZG5hbSA9IGNjJHJtc19uYW1sOworCitwZi0+ZGZhYi5mYWIkbF9uYW1sID0gJnBmLT5k bmFtOworCitwZi0+ZGZhYi5mYWIkbF9mbmEgPSAoY2hhciAqKSAtMTsgCitwZi0+ZGZhYi5mYWIk bF9kbmEgPSAoY2hhciAqKSAtMTsgCitwZi0+ZGZhYi5mYWIkYl9mbnMgPSAwOworcGYtPmRmYWIu ZmFiJHdfaWZpID0gMDsKKworcGYtPmRuYW0ubmFtbCRsX2xvbmdfZGVmbmFtZSA9IE5VTEw7IC8v aW5wdXRmaWxlOworcGYtPmRuYW0ubmFtbCRsX2xvbmdfZGVmbmFtZV9zaXplID0gMDsvL3N0cmxl biggaW5wdXRmaWxlICk7CisKK3BmLT5kbmFtLm5hbWwkbF9sb25nX2ZpbGVuYW1lID0gaW5wdXRm aWxlOworcGYtPmRuYW0ubmFtbCRsX2xvbmdfZmlsZW5hbWVfc2l6ZSA9IHN0cmxlbiggaW5wdXRm aWxlKTsKKworcGYtPmRuYW0ubmFtbCRsX2xvbmdfZXhwYW5kID0gcGYtPmV4cGFuZGVkX2ZpbGVu YW1lOworcGYtPmRuYW0ubmFtbCRsX2xvbmdfZXhwYW5kX2FsbG9jID0gTkFNJENfTUFYUlNTIDsK KworcGYtPmRuYW0ubmFtbCRiX25vcCB8PSBOQU1MJE1fU1lOQ0hLIHwgTkFNTCRNX1BXRDsKKwor c3RhdHVzID0gc3lzJHBhcnNlKCAmcGYtPmRmYWIsIDAsMCk7CitpZiAoICEoc3RhdHVzJjEpICl7 CisgICAgZnJlZSggcGYgKTsKKyAgICByZXR1cm4oIHN0YXR1cyApOworfQorCitmcGNvcHkgKCBp cGFydFswXSwgcGYtPmRuYW0ubmFtbCRsX2xvbmdfbm9kZSAsIHBmLT5kbmFtLm5hbWwkbF9sb25n X25vZGVfc2l6ZSk7CitmcGNvcHkgKCBpcGFydFsxXSwgcGYtPmRuYW0ubmFtbCRsX2xvbmdfZGV2 ICwgcGYtPmRuYW0ubmFtbCRsX2xvbmdfZGV2X3NpemUpOworZnBjb3B5ICggaXBhcnRbMl0sIHBm LT5kbmFtLm5hbWwkbF9sb25nX2RpciAsIHBmLT5kbmFtLm5hbWwkbF9sb25nX2Rpcl9zaXplKTsK K2ZwY29weSAoIGlwYXJ0WzNdLCBwZi0+ZG5hbS5uYW1sJGxfbG9uZ19uYW1lICwgcGYtPmRuYW0u bmFtbCRsX2xvbmdfbmFtZV9zaXplKTsKK2ZwY29weSAoIGlwYXJ0WzRdLCBwZi0+ZG5hbS5uYW1s JGxfbG9uZ190eXBlICwgcGYtPmRuYW0ubmFtbCRsX2xvbmdfdHlwZV9zaXplKTsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorZnBjb3B5ICggaXBhcnRbNV0s IHBmLT5kbmFtLm5hbWwkbF9sb25nX3ZlciAsIHBmLT5kbmFtLm5hbWwkbF9sb25nX3Zlcl9zaXpl KTsKKworZm9yKCBpID0gaXBhcnRbIHdoYXRwYXJ0IF0sIHAgPSBwYXJ0OyAqaTsgKytpLCArK3Ap eworICAgaWYgKCBwID09IHBhcnQgKXsKKyAgICAgICpwID0gdG91cHBlciggKmkgKTsKKyAgIH1l bHNleworICAgICAgKnAgPSB0b2xvd2VyKCAqaSApOworICAgfSAgICAgICAgCit9CisqcCA9IDA7 CisKK2ZyZWUoIHBmICk7CityZXR1cm4oMSk7Cit9CisvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLworCitpbnQgZmluZF9maWxlKGNo YXIgKmZpbGVuYW1lLGNoYXIgKmdldm9uZGVuLGludCAqZmluZGV4KQoreworaW50ICAgICBzdGF0 dXM7CitzdHJ1Y3QgIGRzYyRkZXNjcmlwdG9yIGdldm9uZGVuZDsKK3N0cnVjdCAgZHNjJGRlc2Ny aXB0b3IgZmlsZXNwZWM7CitjaGFyICAgIGdldm9uZGVuX2ZpbGVbTkFNJENfTUFYUlNTICsgMV07 CisKK2ZpbGVzcGVjLmRzYyR3X2xlbmd0aCA9IHN0cmxlbihmaWxlbmFtZSk7CitmaWxlc3BlYy5k c2MkYl9kdHlwZSAgPSBEU0MkS19EVFlQRV9UOworZmlsZXNwZWMuZHNjJGJfY2xhc3MgID0gRFND JEtfQ0xBU1NfUzsgCitmaWxlc3BlYy5kc2MkYV9wb2ludGVyID0gZmlsZW5hbWU7CisKK2dldm9u ZGVuZC5kc2Mkd19sZW5ndGggPSBOQU0kQ19NQVhSU1M7CitnZXZvbmRlbmQuZHNjJGJfZHR5cGUg ID0gRFNDJEtfRFRZUEVfVDsKK2dldm9uZGVuZC5kc2MkYl9jbGFzcyAgPSBEU0MkS19DTEFTU19T OyAKK2dldm9uZGVuZC5kc2MkYV9wb2ludGVyID0gZ2V2b25kZW5fZmlsZTsKKworc3RhdHVzPWxp YiRmaW5kX2ZpbGUoJmZpbGVzcGVjLCZnZXZvbmRlbmQsZmluZGV4LDAsMCwwLDApOworICAgIAor aWYgKCAoc3RhdHVzICYgMSkgPT0gMSApeworICAgICAgIHN0cmNweShnZXZvbmRlbixzdHJ0b2so Z2V2b25kZW5fZmlsZSwiICIpKTsKK31lbHNleworICAgICAgIGdldm9uZGVuWzBdID0gMDsKK30K KworcmV0dXJuKHN0YXR1cyk7Cit9CisKKworLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLSovCisKK21hblB0ciBhZGRtYW4oIG1hblB0ciAqbWFucm9vdCxjaGFy ICpmaWxlbmFtZSApCit7CittYW5QdHIgbSxmOworCittID0gY2FsbG9jKCAxLCBzaXplb2YoIG1h bikgKTsKK2lmICggIW0gKSByZXR1cm4oIE5VTEwgKTsKKworbS0+ZmlsZW5hbWUgPSBzdHJkdXAo IGZpbGVuYW1lICk7CisKK2lmICggKm1hbnJvb3QgPT0gTlVMTCApeworICAgKm1hbnJvb3QgPSBt OyAgICAKK31lbHNleworICAgZm9yKCBmID0gKm1hbnJvb3Q7IGYtPm5leHQgOyBmID0gZi0+bmV4 dCApOworICAgZi0+bmV4dCA9IG07Cit9CityZXR1cm4obSk7Cit9CisKKy8qLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwordm9pZCBmcmVlbWFuKCBtYW5QdHIg Km1hbnJvb3QgKQoreworbWFuUHRyIG0sbjsKKworZm9yKCBtID0gKm1hbnJvb3Q7IG0gOyBtID0g biApeworICAgICBmcmVlKCBtLT5maWxlbmFtZSApOworICAgICBuID0gbS0+bmV4dDsKKyAgICAg ZnJlZSAoIG0gKTsKK30KKyptYW5yb290ID0gTlVMTDsKK30KKworLyotLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCisKK2ludCBsaXN0b2ZtYW5zKCBjaGFyICpm aWxlc3BlYywgbWFuUHRyICptYW5yb290ICkKK3sKK21hblB0ciAgcjsKK2ludCAgICAgc3RhdHVz OworaW50ICAgICBmZmluZGV4PTA7CitjaGFyICAgIGdldm9uZGVuW05BTSRDX01BWFJTUyArIDFd OworCit3aGlsZSgxKXsKKyAgICBzdGF0dXMgPSBmaW5kX2ZpbGUoIGZpbGVzcGVjLCBnZXZvbmRl biwgJmZmaW5kZXggKTsKKworICAgIGlmICggKHN0YXR1cyYxKSApeworICAgICAgICByID0gYWRk bWFuKCBtYW5yb290LCBnZXZvbmRlbiApOworICAgICAgICBpZiAoIHIgPT0gTlVMTCApIHJldHVy bigyKTsKKyAgICB9ZWxzZXsKKyAgICAgICAgaWYgKCAhKCBzdGF0dXMmMSkpIGJyZWFrOworICAg IH0KK30KKworbGliJGZpbmRfZmlsZV9lbmQoICZmZmluZGV4KTsKK2lmICggc3RhdHVzID09IFJN UyRfTk1GKSBzdGF0dXMgPSAxOworCisKK3JldHVybiggc3RhdHVzICk7Cit9CisKKy8qLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLworCitpbnQgY29udmVydG1h biAoIGNoYXIgKmZpbGVzcGVjLCBGSUxFICpobHAgLCBpbnQgYmFzZV9sZXZlbCApCit7CitGSUxF ICAgICptYW47CitjaGFyICAgICppbiwgKnVpdDsKK2NoYXIgICAgKm0sKmg7CitzaXplX3QgIGxl biwgdGhpc2xlbiwgbWF4bGVuPSA1MDAwMDsKK2ludCAgICAgYm9sLG1vZGUsIHJldHVybl9zdGF0 dXM9MTsKK2NoYXIgc3ViamVjdG5hbWVbIE5BTSRDX01BWFJTUyArIDEgXTsKKworaW4gID0gY2Fs bG9jKCAxLCBtYXhsZW4gKyAxICk7Cit1aXQgPSBjYWxsb2MoIDEsIG1heGxlbiArIDEgKTsKKwor aWYgKCBpbiA9PSBOVUxMIHx8IHVpdCA9PSBOVUxMICkgcmV0dXJuKDIpOworCittYW4gPSBmb3Bl biggZmlsZXNwZWMsICJyIik7CitpZiAoIG1hbiA9PSBOVUxMICkgcmV0dXJuKHZheGMkZXJybm8p OworCitmb3IoIGxlbiA9IDA7ICFmZW9mKCBtYW4gKSAmJiBsZW4gPCBtYXhsZW4gOyBsZW4gKz0g dGhpc2xlbiApeworICAgIHRoaXNsZW4gPSBmcmVhZCggaW4gKyBsZW4sIDEsIG1heGxlbiAtIGxl biwgbWFuICk7Cit9CisKK2ZjbG9zZSAobWFuKTsKKworbSA9IGluOworaCA9IHVpdDsKKworKiht ICsgbGVuICkgPSAwOworCitmb3IgKCBtb2RlID0gMCwgYm9sID0gMSA7ICptOyArK20gKXsKKwor ICAgIHN3aXRjaCAoIG1vZGUgKXsKKyAgICAgICAgY2FzZSAwOgorICAgICAgICAgIHN3aXRjaCgq bSl7CisgICAgICAgICAgICBjYXNlICcuJzoKKyAgICAgICAgICAgICAgICBpZiAoIGJvbCApewor ICAgICAgICAgICAgICAgICAgICBtb2RlID0gMTsKKyAgICAgICAgICAgICAgICB9ZWxzZXsKKyAg ICAgICAgICAgICAgICAgICAgKmggPSAqbTsKKyAgICAgICAgICAgICAgICAgICAgKytoOworICAg ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIGNhc2Ug J1xcJzoKKyAgICAgICAgICAgICAgICBpZiAoIGJvbCApeworICAgICAgICAgICAgICAgICAgICpo ID0gJyAnOysraDsKKyAgICAgICAgICAgICAgICAgICAqaCA9ICcgJzsrK2g7CisgICAgICAgICAg ICAgICAgfQorICAgICAgICAgICAgICAgIG1vZGUgPSAyOworICAgICAgICAgICAgICAgIGJyZWFr OworICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgICAgICBpZiAoIGJvbCApeworICAg ICAgICAgICAgICAgICAgICpoID0gJyAnOysraDsKKyAgICAgICAgICAgICAgICAgICAqaCA9ICcg JzsrK2g7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICpoID0gKm07CisgICAg ICAgICAgICAgICAgKytoOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgIH0KKyAg ICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSAxOiAvKiBhZnRlciAuIGF0IGJvbCAqLworCisg ICAgICAgICAgc3dpdGNoKCptKXsKKyAgICAgICAgICAgIGNhc2UgJ1xcJzoKKyAgICAgICAgICAg ICAgICB3aGlsZSggKm0gIT0gJ1xuJyAmJiAqbSAhPSAnXHInICYmICptICkrK207CisgICAgICAg ICAgICAgICAgbW9kZSA9IDA7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICBj YXNlICdCJzoKKyAgICAgICAgICAgICAgICAgICArK207IAorICAgICAgICAgICAgICAgICAgICpo ID0gJyAnOysraDsKKyAgICAgICAgICAgICAgICAgICBtb2RlID0gMDsKKyAgICAgICAgICAgICAg ICAgICBicmVhazsgICAKKyAgICAgICAgICAgIGNhc2UgJ0knOgorICAgICAgICAgICAgICAgICAg ICAvKiByZW1vdmUgcHJlY2VkaW5nIGVvbCAqLworICAgICAgICAgICAgICAgICAgICBpZiAoICoo bSsxKSAhPSAnUCcgKXsKKyAgICAgICAgICAgICAgICAgICAgICAgIC0taDsKKyAgICAgICAgICAg ICAgICAgICAgICAgIHdoaWxlICggKCpoID09ICdcbicgfHwgKmggPT0gJ1xyJykgJiYgaCA+IHVp dCApLS1oOworICAgICAgICAgICAgICAgICAgICAgICAgKytoOworICAgICAgICAgICAgICAgICAg ICB9CisKKyAgICAgICAgICAgICAgICAgICAgLyogc2tpcCAuSXggKi8KKyAgICAgICAgICAgICAg ICAgICAgZm9yKDsqbSAhPSAnICcgJiYgKm0gIT0gJ1xuJyAmJiAqbSAhPSAnXHInOyArK20pOyAK KworICAgICAgICAgICAgICAgICAgICAvKiBjb3B5IGxpbmUgdXAgdG8gRU9MICovCisKKyAgICAg ICAgICAgICAgICAgICAgZm9yKDsqbSAhPSAnXG4nICYmICptICE9ICdccicgJiYgKm07ICsrbSwg KytoKSpoID0gKm07CisKKyAgICAgICAgICAgICAgICAgICAgLyogaWYgbGluZSBlbmRzIGluIC4s IHRoaXMgaXMgYW4gRU9MICovCisKKyAgICAgICAgICAgICAgICAgICAgaWYgKCAqKGgtMSkgPT0g Jy4nKXsKKyAgICAgICAgICAgICAgICAgICAgICAgICAtLWg7IAorICAgICAgICAgICAgICAgICAg ICAgICAgIC0tbTsKKyAgICAgICAgICAgICAgICAgICAgfWVsc2V7CisgICAgICAgICAgICAgICAg ICAgICAgICAvKiBpZiBsaW5lIGRvZXMgbm90IGVuZCBpbiAuLCBza2lwIEVPTCBpbiBzb3VyY2Ug Ki8KKworICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCAqKG0rMSkgPT0gJ1xuJyB8fCAqKG0r MSkgPT0gJ1xyJykrK207CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAg ICAgbW9kZSA9IDA7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2Fz ZSAnUyc6CisgICAgICAgICAgICAgICAgIGlmICggKihtKzEpID09ICdIJyApeworICAgICAgICAg ICAgICAgICAgICAqaCA9ICdcbic7KytoOworICAgICAgICAgICAgICAgICAgICBpZiAoIHN0cm5j bXAoIG0rMyAsIk5BTUUiLDQpID09IDAgfHwgCisgICAgICAgICAgICAgICAgICAgICAgICAgc3Ry bmNtcCggbSszICwiU1lOT1BTSVMiLDgpID09IDAgfHwKKyAgICAgICAgICAgICAgICAgICAgICAg ICBzdHJuY21wKCBtKzMgLCJERVNDUklQVElPTiIsMTEpID09IDAgKXsKKyAgICAgICAgICAgICAg ICAgICAgICAgIHdoaWxlKCAqbSAhPSAnXG4nICYmICptICE9ICdccicpKyttOworICAgICAgICAg ICAgICAgICAgICAgICAgbW9kZSA9IDA7CisgICAgICAgICAgICAgICAgICAgIH1lbHNleworICAg ICAgICAgICAgICAgICAgICAgICAgKyttOworCisgICAgICAgICAgICAgICAgICAgICAgICAvKiB3 cml0ZSBoZWxwIGxldmVsLCBhbmQgZmxhZyBpdCAqLworCisgICAgICAgICAgICAgICAgICAgICAg ICAqaCA9ICcwJyArIGJhc2VfbGV2ZWwgKyAxOysraDsKKyAgICAgICAgICAgICAgICAgICAgICAg IHJldHVybl9zdGF0dXMgfD0gMjsKKworICAgICAgICAgICAgICAgICAgICAgICAgKmggPSAnICc7 KytoOyAKKworICAgICAgICAgICAgICAgICAgICAgICAgLyogc2tpcCBIIChvciB3aGF0ZXZlciBh ZnRlciBTKSBhbmQgYmxhbmsgKi8KKyAgICAgICAgICAgICAgICAgICAgICAgICsrbTsrK207CisK KyAgICAgICAgICAgICAgICAgICAgICAgIGZvcig7Km0gIT0gJ1xuJyAmJiAqbSAhPSAnXHInICYm ICptOyArK20sICsraCl7CisKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHdyaXRlIGhl bHAgbGFiZWwgaW4gbG93ZXJjYXNlLCBza2lwIHF1b3RlcyAqLworICAgICAgICAgICAgICAgICAg ICAgICAgICAgLyogZmlsbCBibGFua3Mgd2l0aCB1bmRlcnNjb3JlcyAqLworCisgICAgICAgICAg ICAgICAgICAgICAgICAgICBpZiAoICptICE9ICdcIicgKXsKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgKmggPSB0b2xvd2VyKCAqbSApOworICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBpZiAoKmggPT0gJyAnKSAqaCA9ICdfJzsgICAgCisgICAgICAgICAgICAgICAgICAg ICAgICAgICB9ZWxzZXsKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLS1oOworICAg ICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAKKyAgICAgICAgICAgICAgICAgICAgICAgIH0g CisKKyAgICAgICAgICAgICAgICAgICAgICAgIC8qIEFkZCBhIGxpbmVmZWVkIG9yIHR3byAqLwor CisgICAgICAgICAgICAgICAgICAgICAgICAqaCA9ICptOysraDsKKyAgICAgICAgICAgICAgICAg ICAgICAgICpoID0gKm07KytoOworCisgICAgICAgICAgICAgICAgICAgICAgICBtb2RlID0gMDsK KyAgICAgICAgICAgICAgICAgICAgfSAgIAorICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg ICAgICAgIGJyZWFrOworICAgICAgICAgICAgY2FzZSAnVCc6CisgICAgICAgICAgICAgICAgIGlm ICggKihtKzEpID09ICdIJyApeworICAgICAgICAgICAgICAgICAgICAqaCA9ICcwJyArIGJhc2Vf bGV2ZWw7ICsraDsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuX3N0YXR1cyB8PSAyOworICAg ICAgICAgICAgICAgICAgICAqaCA9ICcgJzsrK2g7CisgICAgICAgICAgICAgICAgICAgIGZvciAo IG0gPSBtICsgMzsgKm0gIT0gJyAnICYmICptIDsgKyttLCArK2ggKXsKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgKmggPSAqbTsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAg ICAgICAgICB3aGlsZSggKm0gIT0gJ1xuJyAmJiAqbSAhPSAnXHInICYmICptICkrK207CisgICAg ICAgICAgICAgICAgICAgIG1vZGUgPSAwOworICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg ICAgICAgIGJyZWFrOworICAgICAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgICAgICArK207 CisgICAgICAgICAgICAgICAgbW9kZSA9IDA7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAg ICAgICAgIH0KKyAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgMjogLyogYWZ0ZXIgXCBz a2lwIHR3byBjaGFyYWN0ZXJzIG9yIHByaW50IHRoZSBiYWNrc2xhc2ggKi8gICAgICAgICAgICAK KyAgICAgICAgICBzd2l0Y2goKm0peworICAgICAgICAgICAgY2FzZSAnXFwnOgorICAgICAgICAg ICAgICAgICpoID0gKm07CisgICAgICAgICAgICAgICAgKytoOworICAgICAgICAgICAgICAgIG1v ZGUgPSAwOworICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgZGVmYXVsdDoKKyAg ICAgICAgICAgICAgICArK207CisgICAgICAgICAgICAgICAgbW9kZSA9IDA7CisgICAgICAgICAg ICAgICAgYnJlYWs7CisgICAgICAgICAgIH0KKyAgICAgICAgICAgYnJlYWs7ICAgCisgICAgfSAv KmVuZCBzd2l0Y2ggbW9kZSAqLworCisgICAgYm9sID0gMDsKKyAgICBpZiAoICptID09ICdcbicg fHwgKm0gPT0gJ1xyJykgYm9sID0gMTsKKworfS8qIGVuZCBmb3IgbW9kZSAqLworCisqaCA9IDA7 CisKKworaWYgKCAocmV0dXJuX3N0YXR1cyYyKSApeworICAgIGZwcmludGYoIGhscCwgIiVzXG5c biIsIHVpdCk7Cit9ZWxzZXsKKyAgICBmbmFtZXBhcnQoIGZpbGVzcGVjLCBzdWJqZWN0bmFtZSwz KTsKKyAgICBpZiAoICpzdWJqZWN0bmFtZSApeworICAgICAgICBmcHJpbnRmKCBobHAsICIlZCAl c1xuXG4lc1xuXG4iLCBiYXNlX2xldmVsLCBzdWJqZWN0bmFtZSwgdWl0KTsKKyAgICB9ZWxzZXsK KyAgICAgICAgLyogTm8gZmlsZW5hbWUgKGFzIGlzIHRoZSBjYXNlIHdpdGggYSBsb2dpY2FsKSwg dXNlIGZpcnN0IHdvcmQgYXMgc3ViamVjdCBuYW1lICovCisgICAgICAgIGNoYXIgKm4sKnM7CisK KyAgICAgICAgZm9yKG4gPSBpbjsgaXNzcGFjZSggKm4gKTsrK24pOworICAgICAgICBmb3IocyA9 IHN1YmplY3RuYW1lOyAhKGlzc3BhY2UoICpuICkpOyArK24sKytzKSpzID0gKm47CisgICAgICAg ICpzID0gMDsKKworICAgICAgICBmcHJpbnRmKCBobHAsICIlZCAlc1xuXG4lc1xuXG4iLCBiYXNl X2xldmVsLCBzdWJqZWN0bmFtZSwgdWl0KTsKKyAgICB9Cit9CisKKy8qCisgcHJpbnRmKCAicmVh ZCAlZCBmcm9tICVzLCB3cml0dGVuICVkIHRvIGhlbHBmaWxlLCByZXR1cm5fc3RhdHVzID0gJWRc biIsCisgICAgbGVuLCBmaWxlc3BlYywgc3RybGVuKHVpdCksIHJldHVybl9zdGF0dXMgKTsKKyov CisKK2ZyZWUoIG0gKTsgCitmcmVlKCBoICk7IAorCityZXR1cm4gKCAxKTsKK30KKworLyotLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCisKK2ludCBjb252ZXJ0 bWFucyggY2hhciAqZmlsZXNwZWMsIGNoYXIgKmhscGZpbGVuYW1lLCBpbnQgYmFzZV9sZXZlbCwg aW50IGFwcGVuZCApCit7CitpbnQgc3RhdHVzPTE7CittYW5QdHIgIG1hbnJvb3Q9TlVMTCwgbTsK K0ZJTEUgICAgKmhscDsKKworaWYgKCBhcHBlbmQgKXsKKyAgICBobHAgPSBmb3BlbiggaGxwZmls ZW5hbWUsImErIik7Cit9ZWxzZXsKKyAgICBobHAgPSBmb3BlbiggaGxwZmlsZW5hbWUsInciKTsK K30KKworaWYgKCBobHAgPT0gTlVMTCApIHJldHVybiggdmF4YyRlcnJubyApOworCitzdGF0dXMg PSBsaXN0b2ZtYW5zKCBmaWxlc3BlYywgJm1hbnJvb3QgKTsKK2lmICggIShzdGF0dXMmMSkgKSBy ZXR1cm4oIHN0YXR1cyApOworCitmb3IgKCBtID0gbWFucm9vdCA7IG0gOyBtID0gbS0+bmV4dCAp eworICAgIHN0YXR1cyA9IGNvbnZlcnRtYW4oIG0tPmZpbGVuYW1lLCBobHAgLCBiYXNlX2xldmVs ICk7CisgICAgaWYgKCAhKHN0YXR1cyYxKSApeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwiQ29u dmVydG1hbiBvZiAlcyB3ZW50IHdyb25nXG4iLCBtLT5maWxlbmFtZSk7CisgICAgICAgIGJyZWFr OworICAgIH0KK30KK2ZyZWVtYW4oICZtYW5yb290ICk7CityZXR1cm4oIHN0YXR1cyApOworfQor CisvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KK3ZvaWQg cHJpbnRfaGVscCgpCit7CisgICBmcHJpbnRmKCBzdGRlcnIsICJVc2FnZTogWy1hXSBbLWIgeF0g Y29udmVydG1hbiA8bWFuZmlsZXNwZWM+IDxoZWxwdGV4dGZpbGU+XG4iICk7CisgICBmcHJpbnRm KCBzdGRlcnIsICIgICAgICAgLWEgYXBwZW5kIDxtYW5maWxlc3BlYz4gdG8gPGhlbHB0ZXh0Zmls ZT5cbiIgKTsKKyAgIGZwcmludGYoIHN0ZGVyciwgIiAgICAgICAtYiA8YmFzZWxldmVsPiBpZiBu byBoZWFkZXJzIGZvdW5kIGNyZWF0ZSBvbmUgd2l0aCBsZXZlbCA8YmFzZWxldmVsPlxuIiApOwor ICAgZnByaW50Ziggc3RkZXJyLCAiICAgICAgICAgIGFuZCB0aGUgZmlsZW5hbWUgYXMgdGl0bGUu XG4iICk7Cit9CisvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Ki8KKworbWFpbiAoIGludCBhcmdjLCBjaGFyICoqYXJndiApCit7CitpbnQgICAgIHN0YXR1czsK K2ludCAgICAgaSxqOworaW50ICAgICBhcHBlbmQsIGJhc2VfbGV2ZWwsIGJhc2VjaGFuZ2U7Citj aGFyICAgICptYW5maWxlPU5VTEw7CitjaGFyICAgICpoZWxwZmlsZT1OVUxMOworCitpZiAoIGFy Z2MgPCAzICl7CisgICBwcmludF9oZWxwKCk7CisgICByZXR1cm4oIDEgKSA7Cit9CisKK2FwcGVu ZCAgICAgPSAwOworYmFzZV9sZXZlbCA9IDE7CitiYXNlY2hhbmdlID0gMDsKKworZm9yICggaSA9 IDE7IGkgPCBhcmdjOyArK2kpeworICAgIGlmICggYXJndltpXVswXSA9PSAnLScgKXsKKyAgICAg ICAgZm9yKCBqID0gMTsgYXJndltpXVtqXSA7ICsraiApeworICAgICAgICAgICAgc3dpdGNoKCBh cmd2W2ldW2pdICl7CisgICAgICAgICAgICAgICAgY2FzZSAnYSc6CisgICAgICAgICAgICAgICAg ICAgIGFwcGVuZCA9IDE7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAg ICAgIGNhc2UgJ2InOiAgIAorICAgICAgICAgICAgICAgICAgICBpZiAoIChpKzEpIDwgYXJnYyAp eworICAgICAgICAgICAgICAgICAgICAgICAgYmFzZV9sZXZlbCA9IGF0b2koIGFyZ3ZbIGkgKyAx IF0gKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGJhc2VjaGFuZ2UgPSAxOworICAgICAgICAg ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgfQor ICAgICAgICB9CisgICAgICAgIGlmICggYmFzZWNoYW5nZSl7CisgICAgICAgICAgICBiYXNlY2hh bmdlID0gMDsKKyAgICAgICAgICAgIGkgPSBpICsgMTsKKyAgICAgICAgfQorICAgIH1lbHNlewor ICAgICAgICBpZiAoIG1hbmZpbGUgPT0gTlVMTCApeworICAgICAgICAgICAgbWFuZmlsZSA9IHN0 cmR1cCggYXJndltpXSk7CisgICAgICAgIH0gZWxzZSBpZiAoIGhlbHBmaWxlID09IE5VTEwgKXsK KyAgICAgICAgICAgIGhlbHBmaWxlID0gc3RyZHVwKCBhcmd2W2ldKTsKKyAgICAgICAgfSBlbHNl IHsKKyAgICAgICAgICAgIGZwcmludGYoIHN0ZGVyciwgIlVucmVjb2duaXplZCBwYXJhbWV0ZXIg OiAlc1xuIiwgYXJndltpXSk7CisgICAgICAgIH0KKyAgICB9Cit9CisKKworLyogZnByaW50Zigg c3RkZXJyLCJtYW5maWxlOiAlcywgaGVscGZpbGU6ICVzLCBhcHBlbmQ6ICVkLCBiYXNlX2xldmVs IDogJWRcbiIsCisgICAgICAgIG1hbmZpbGUsIGhlbHBmaWxlLCBhcHBlbmQsIGJhc2VfbGV2ZWwp OworKi8KKworc3RhdHVzID0gY29udmVydG1hbnMoIG1hbmZpbGUsIGhlbHBmaWxlLCBiYXNlX2xl dmVsLCBhcHBlbmQgKTsKKworZnJlZSggbWFuZmlsZSApOworZnJlZSggaGVscGZpbGUgKTsKKwor cmV0dXJuKCBzdGF0dXMgKTsKK30KKworIApkaWZmIC0tZ2l0IGEvdm1zL3JlYWRtZS52bXMgYi92 bXMvcmVhZG1lLnZtcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYjA4MDli Ci0tLSAvZGV2L251bGwKKysrIGIvdm1zL3JlYWRtZS52bXMKQEAgLTAsMCArMSwzMTkgQEAKKypU aGVzZSBhcmUgdGhlIHBvcnRpbmcgbm90ZXMgdG8gT3BlblZNUywgYXMgb2YgNyBBcHJpbCAyMDEw CitieSBKb3NlIEJhYXJzLiBUaGlzIGZpbGUgd2lsbCBiZSBpbnN0YWxsZWQgYXMgCitsaWJzc2gy Ki5yZWxlYXNlX25vdGVzIGJ5IHRoZSBwcm9kdWN0IGluc3RhbGwga2l0LgorCisKK0xJQlNTSDIg CistLS0tLS0tCisKK0xJQlNTSDIgaXMgYSBjbGllbnQtc2lkZSBsaWJyYXJ5IHdyaXR0ZW4gaW4g QyB0aGF0IGFpbXMgdG8gCitpbXBsZW1lbnQgdGhlIFNTSDIgcHJvdG9jb2wuIEl0IGlzIGFuIG9w ZW4gc291cmNlIHByb2plY3QsIAordG8gYmUgZm91bmQgYXQgaHR0cDovL2xpYnNzaDIub3JnLiAK KworR05WCistLS0KKworVGhlIGxpYnJhcnkgdXNlcyB0aGUgR05WIHByZWZpeCwgb24gYWR2aXNl IG9mIHRoZSBraW5kIHN1cHBvcnRlcgorb2YgdGhlIEdOViBwcm9qZWN0LCBKb2huIE1hbG1iZXJn LgorCitJbnN0YWxsaW5nIHRoZSBQQ1NJIGtpdAorPT09PT09PT09PT09PT09PT09PT09PT0KKwor UHJlcmVxdWlzaXRlcyAKKy0tLS0tLS0tLS0tLS0KKy0gVk1TIHZlcnNpb24gOC4zIG1pbmltYWwu IAorICBTZWUgdGhlIHJlbWFya3MgYXQgcHJlcmVxdWlzaXRlcyBmb3IgYnVpbGRpbmcgdGhlIGtp dAorLSBUQ1AvSVAgc3RhY2ssIGJvdGggVENQL0lQIHNlcnZpY2VzIGFuZCBNdWx0aW5ldCBzaG91 bGQgd29yay4gCisgIFNlZSB0aGUgcmVtYXJrcyBhdCBwcmVyZXF1aXNpdGVzIGZvciBidWlsZGlu ZyB0aGUga2l0CistIEhQIE9QRU5TU0wgVjEuMyBtaW5pbWFsLiAKKyAgU2VlIHRoZSByZW1hcmtz IGF0IHByZXJlcXVpc2l0ZXMgZm9yIGJ1aWxkaW5nIHRoZSBraXQKKy0gSkVNICBaTElCIFYxLjIt M0UxIG1pbmltYWwuIAorICBTZWUgdGhlIHJlbWFya3MgYXQgcHJlcmVxdWlzaXRlcyBmb3IgYnVp bGRpbmcgdGhlIGtpdAorICAKK1RoZSBmaXJzdCB0aHJlZSBkZXBlbmRlbmNpZXMgYXJlIHRlc3Rl ZCBhdCBpbnN0YWxsYXRpb24gdGltZSwgYW5kIAoraW5zdGFsbGF0aW9uIHdpbGwgZmFpbCBpZiBh bnkgdGhlc2UgcHJvZHVjdHMgYXJlIG5vdCBpbnN0YWxsZWQuCitUaGUgWkxJQiBkZXBlbmRlbmN5 IGlzIG5vdCB0ZXN0ZWQgYnkgdGhlIHByb2R1Y3QgaW5zdGFsbGF0aW9uCitwcm9jZWR1cmUsIGFz IGxpYnNzaDIgd2lsbCBwcm9iYWJseSBiZSBpbnN0YWxsZWQgYXMgcGFydCBvZiAKK211bHRpcGxl IGxpYnJhcmllcyBpbmNsdWRpbmcgemxpYi4KKworSW5zdGFsbAorLS0tLS0tLQorCisKK1RoZSBr aXQgd2lsbCBpbnN0YWxsIGdudiRsaWJzc2gyLmV4ZSBpbiBhIGRpcmVjdG9yeSB0cmVlIHRoYXQg bWlnaHQgCithbHJlYWR5IGJlIGF2YWlsYWJsZSBvbiB5b3VyIHN5c3RlbSBpZiB5b3UgaGF2ZSBp bnN0YWxsZWQgb3RoZXIgZ252KiAKK2xpYnJhcmllcyBvciB1dGlsaXRpZXMuIAorCitUaGUgZGly ZWN0b3J5IHRyZWUgZm9yIGdudiRsaWJzc2gyLmV4ZSB3aWxsIGJlIGxpa2UgdGhpczoKKworW2du dl0gLS0gW3Vzcl0gLS0gW2luY2x1ZGVdIC0tIFtsaWJzc2gyXSBpbmNsdWRlIGZpbGVzIGZvciBs aWJzc2gyCisgICAgICAgICAgICAgICAgICBbbGliXSBnbnYkbGlic3NoMl94X3lfei5leGUKKyAg ICAgICAgICAgICAgICAgIFtzaGFyZV0gICAtLSBbZG9jXSAtLSBbbGlic3NoMl0gbGlic3NoMi5o bGIsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGVhc2Ugbm90 ZXMgKHRoaXMgZmlsZSksIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGxpYnNzaDIgcmVsZWFzZSBub3RlcyAgIAorCitvcHRpb25hbDoKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBbZXhhbXBsZV0gbGlic3NoMl9leGFtcGxlcy14X3lfei5i Y2sgCisgICAgICAgICAgICAgICAgICBbY29tbW9uX3NyY10gbGlic3NoMi14X3lfel9zcmMuYmNr CisKK0J5IGRlZmF1bHQsIGl0IHdpbGwgaW5zdGFsbCB0aGUgc2hhcmVkIGltYWdlIGFuZCBpbmNs dWRlIGZpbGVzIHRvIAorU1lTJENPTU1PTjpbR05WLi4uXS4KKworWW91IGNhbiBvdmVycmlkZSB0 aGlzIGRlc3RpbmF0aW9uIGJ5IHNwZWNpZnlpbmcgdGhlIGRlc3RpbmF0aW9uCitkaXJlY3Rvcnkg YWZ0ZXIgL0RFU1RJTkFUSU9OPSBvbiB0aGUgcHJvZHVjdCBpbnN0YWxsIGNvbW1hbmQgbGluZS4K K1RoaXMgaXMgcGFydGljdWxhcmx5IG9mIHVzZSB3aGVuIGluc3RhbGxpbmcgdGhlIGxpYnJhcnkg b24gYSBjbHVzdGVyCit3aXRob3V0IGEgY29tbW9uIHN5c3RlbSBkaXNrLgorCitQbGVhc2UgaWdu b3JlIHRoZSBmb2xsb3dpbmcgd2FybmluZ3MsIGFzIHRoZSBraXQgaXMgbm90IHNpZ25lZCA6CisK KyVQQ1NJLUktQ0FOTk9UVkFMLCBjYW5ub3QgdmFsaWRhdGUgZGV2OltkaXJdSkNCLUFYUFZNUy1M SUJTU0gyLVYwMTAyLTA1RDIwMTAwNDAyLTEuUENTSQorLVBDU0ktSS1OT1RTSUdORUQsIHByb2R1 Y3Qga2l0IGlzIG5vdCBzaWduZWQgYW5kIHRoZXJlZm9yZSBoYXMgbm8gbWFuaWZlc3QgZmlsZQor CitPcHRpb25hbGx5LCB5b3UgY2FuIGluc3RhbGwgYSBiYWNrdXAgc2F2ZXNldCB3aXRoIHNvbWUg cHJvZ3JhbW1pbmcgZXhhbXBsZXMsCitvciBhIGJhY2t1cG8gc2F2ZXNldCB3aXRoIHRoZSBjb21w bGV0ZSBsaWJzc2gyIHNvdXJjZSB0cmVlLgorIAoreW91IHdpbGwgbmVlZCB0byBhbnN3ZXIgJ05P JyB0byB0aGUgcXVlc3Rpb24gCisnRG8geW91IHdhbnQgdGhlIGRlZmF1bHQgZm9yIGFsbCBvcHRp b25zJy4gCisKK2FuZCAnWUVTJyB0byBlaXRoZXIgb3IgYm90aCB0aGUgZm9sbG93aW5nIHF1ZXN0 aW9uczoKKworICAgIERvIHlvdSB3YW50IHRoZSBsaWJzc2gyIEMgcHJvZ3JhbW1pbmcgZXhhbXBs ZXMgPyAgW05PXQorCisgICAgRG8geW91IHdhbnQgdGhlIGNvbXBsZXRlIGxpYnNzaDIgc291cmNl IHRyZWUgPyAgW05PXQorCisKK1Bvc3QgaW5zdGFsbGF0aW9uIHRhc2tzCistLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQorCitBbHRob3VnaCB3ZSB3aWxsIHRyeSB0byBtYWludGFpbiB1cHdhcmQgY29t cGF0aWJpbGl0eSBvZiBsaWJzc2gyLAordGhpcyBjYW4gbm90IGJlIGd1YXJhbnRlZWQgYnkgdGhl IGxpYnNzaDIgcHJvamVjdCBpdHNlbGYgZm9yIE9wZW5WTVMsCitub3IgZXRlcm5hbGx5IGJ5IHVz LgorCitUbyB1c2UgbGlic3NoMiBlZmZlY3RpdmVseSwgeW91IHdpbGwgaGF2ZSB0byBkZWZpbmUg YSBzeXN0ZW0gbG9naWNhbAordG8gcG9pbnQgdG8gdGhlIHNoYXJlZCBpbWFnZS4gSWYgeW91IGFy ZSB3aWxsaW5nIHRvIHRha2UgdGhlIGdhbWJsZSwKK2RlZmluZSB0aGlzIGxvZ2ljYWwgaW4geW91 ciBzeXN0YXJ0dXAgbGlrZSBzbzoKKworJCBkZWZpbmUvc3lzdGVtL2V4ZWN1dGl2ZSBnbnYkbGli c3NoMiBkZXY6W2Rpci4uXWdudiRsaWJzc2gyX3hfeV96LmV4ZQorCitPcHRpb25hbGx5LCB5b3Ug Y2FuIGluc3RhbGwgdGhlIGV4ZWN1dGJhbGUgbGlrZSBzbzoKKworJCBtYyBzeXNnZW4gaW5zdGFs bCBkZXY6W2Rpci4uXWdudiRsaWJzc2gyX3hfeV96LmV4ZS9vcGVuL3NoYXJlL2hlYWRlcgorCitM aW5rIHlvdXIgcHJvZ3JhbXMgYWdhaW5zdCBnbnYkbGlic3NoMiwgYW5kIHdoZW4gdXBncmFkaW5n IGxpYnNzaDIgCit0ZXN0IHRob3JvdWdobHkuCisKK0lmIHlvdSB3YW50IHRvIGJlIGV4dHJhIGNh dXRpb3VzIGRlZmluZSBhIHN5c3RlbSBsb2dpY2FsIGxpa2UgdGhpczoKKworJCBkZWZpbmUvc3lz dGVtL2V4ZWN1dGl2ZSBnbnYkbGlic3NoMl94X3lfeiBkZXY6W2Rpci4uXWdudiRsaWJzc2gyX3hf eV96LmV4ZQorCitMaW5rICBwcm9ncmFtcyBhZ2FpbnN0IGdudiRsaWJzc2gyX3hfeV96LCBhbmQg d2hlbiB1cGdyYWRpbmcgbGlic3NoMiAKK2xpbmsgYWdhaW5zdCBuZXcgdmVyc2lvbnMuIAorCitJ dCBpcyBwcm9iYWJseSBtb3JlIGNvbnZlbmllbnQgaW4gdGhlIGxhc3QgY2FzZSB0byBsaW5rIGFn YWluc3QgdGhlIG9iamVjdCAKK2xpYnJhcnkgcHJvdmlkZWQgaW4gdGhlIHNvdXJjZSBiYWNrdXAg c2F2ZXNldC4gQm90aCBhbiB1cHBlcmNhc2UgYW5kIGEKK21peGVkIGNhc2Ugb2JqZWN0IGxpYnJh cnksIGNhbGxlZCBsaWJzc2gyLm9sYiBhbmQgbGlic3NoMl9hc2lzLm9sYiAKK2FyZSBwcm92aWRl ZC4KKworCitDb21waWxpbmcgYW5kIGxpbmtpbmcgYWdhaW5zdCBsaWJzc2gyCistLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKK1RoZSAgc2hhcmVkIGltYWdlIGxpYnJhcnkg aGFzIGEgdmVjdG9yIHRhYmxlIHdpdGggYm90aCB1cHBlcmNhc2UgYW5kIAorbWl4ZWQgY2FzZSBl bnRyeSBwb2ludHMsIGFsbG93aW5nIHRvIGxpbmsgZGlyZWN0bHkgYWdhaW5zdCB0aGUgc2hhcmVk IAoraW1hZ2Ugd2V0aGVyIHlvdSBuZWVkIHRoZSAvTkFNRVM9QVNfSVMgb3Igbm90LgorCitUbyBs aW5rIHN1Y2Nlc3NmdWxseSwgeW91IE1VU1QgdXNlIC9OQU1FUz1zaG9ydGVuZWQsIGFzIHNvbWUg ZnVuY3Rpb24KK25hbWVzIGluIGxpYnNzaDIgYXJlIGxvbmdlciB0aGFuIHRoZSBWTVMgbWF4aW11 bSBvZiAzMiBjaGFyYWN0ZXJzLgorCitJZiB5b3UgY2hvc2UgdG8gaW5zdGFsbCB0aGUgZXhhbXBs ZXMsIHlvdSBjYW4gdW5wYWNrIHRoZSBiYWNrdXAKK3NhdmVzZXQgYnkgCisKK2JhY2t1cC9zZWw9 Ki5jIGRldmljZTpbZ252LnVzci5zaGFyZS5kb2MubGlic3NoMi5leGFtcGxlc11saWJzc2gyX2V4 YW1wbGVzLXhfeV96LmJjayAtCisgW10KKworVGhleSBjYW4gYnkgY29tcGlsZWQgYW5kIGxpbmtl ZCBieSB0aGVzZSBjb21tYW5kcyAoIHByb3ZpZGVkIHlvdSBoYXZlIGRlZmluZWQKK3RoZSBnbnYk bGlic3NoMiBsb2dpY2FsKSA6CisKKyQgY2MvaW5jbHVkZT1kZXY6W2dudi51c3IuaW5jbHVkZS5s aWJzc2gyXSB4eHguYy9uYW1lcz1zaG9ydGVuZWQKKyQgbGluay9vcHQ9c3lzJGlucHV0OiB4eHgu b2JqCitnbnYkbGlic3NoMi9zaGFyZQorCisKKworCitCdWlsZGluZyBnbnYkbGlic3NoMgorPT09 PT09PT09PT09PT09PT09PT0KKworWW91IGNhbiBidWlsZCBnbnYkbGlic3NoMiB5b3Vyc2VsZiwg d2hpY2ggbWF5IGhhdmUgYWR2YW50YWdlcywgYXMgdGhlIGxpYnJhcnkgaXMKK2lzIGZ1bGwgZGV2 ZWxvcG1lbnQsIHZlcnkgcmVndWxhcmx5IG5ldyBmZWF0dXJlcyBhcmUgYWRkZWQuCisKK0ZvciBw cm9kdWN0aW9uIHVzZSwgaXQgaXMgcHJvYmFibHkgYWR2aXNhYmxlIHRvIHVzZSBhIHN0YWJsZSB2 ZXJzaW9uLCBhbmQgCitsaW5rIGFnYWluc3QgdGhhdC4gVG8gY2hlY2sgb3V0IG5ldyBmZWF0dXJl cywgc3RhdGljYWxseSBsaW5raW5nIGFnYWluc3QKK3RoZSBvYmplY3QgbGlicmFyeSBpcyBwcm9i YWJseSBtb3JlIHByYWN0aWNhbCwgdG8gYXZvaWQgY29tcGF0aWJpbGl0eQoraXNzdWVzLgorCisK K1ByZXJlcXVpc2l0ZXMKKy0tLS0tLS0tLS0tLS0KKworWW91IHdpbGwgbmVlZCB0byBoYXZlIHRo ZSBmb2xsb3dpbmcgYXZhaWxhYmxlOgorCistIEFuIEFscGhhIG9yIEl0YW5pdW0gVk1TIHN5c3Rl bS4gRHVlIHRvIGRlcGVuZGVuY2llcyBvbiB6bGliLCBzc2wgYW5kIE9EUy01LAorICBzdXBwb3J0 IG9uIFZBWGVuIHdvdWxkIGJlIGN1bWJlcnNvbWUgYXQgbGVhc3QuCisKKy0gVk1TIHZlcnNpb24g OC4zIG1pbmltYWwuIFRoaXMgaXMgYSByZXF1aXJlbWVudCBvZiBnbnYkemxpYnNoci5leGUgYWdh aW5zdCAKKyAgd2hpY2ggc2hhcmVkIGltYWdlIGxpYnJhcnkgbGlic3NoMiBpcyBsaW5rZWQuIElm IHlvdSB1c2UgYW5vdGhlciB6bGliCisgIHRvIGxpbmsgYWdhaW5zdCwgeW91IGNhbiBtYWtlIGl0 IHdvcmsgdW5kZXIgbG93ZXIgdmVyc2lvbnMgb2YgVk1TLgorICBJIGhhdmUgbWFkZSBpdCB3b3Jr IG9uIFZNUyA3LjMtMiB3aXRoIG5vdCBhIGxvdCBvZiBkaWZmaWN1bHR5LgorICBBbHNvLCBpZiB5 b3UgYXJlIG5vdCBpbnRlcmVzdGVkIGluIGNvbXByZXNzaW9uLCB5b3UgY2FuIGNob29zZSBub3QK KyAgdG8gbGluayBhZ2FpbnN0IHpsaWIgYXQgYWxsOyBpbiB0aGF0IGNhc2UgY29tbWVudCBvdXQg dGhlIAorICAjZGVmaW5lICBMSUJTU0gyX0hBVkVfWkxJQiBpbiBsaWJzc2gyX2NvbmZpZy5oLgor CistIFRDUC9JUCBzZXJ2aWNlcyBvciBNdWx0aW5ldCBmb3IgT3BlblZNUy4KKyAgVENQV2FyZSBo YXMgbm90IGJlZW4gdGVzdGVkLgorCistIFRoZSBIUCBPcGVuU1NMIHByb2R1Y3QuIE9mIGNvdXJz ZSwgd2l0aCB0d2Vha2luZywgeW91IGNhbiBwcm9iYWJseSBsaW5rIAorICBpdCBhZ2FpbnN0IHRo ZSBPcGVuU1NMIGxpYnJhcnksIGJ1dCB0aGF0IGlzIG5vdCB3aGF0IEkgaGF2ZSB1c2VkLgorIAor LSBBIEMgY29tcGlsZXIuIEkgZG9uJ3Qga25vdyBhbnkgb3RoZXIgd29ya2luZyBDIGNvbXBpbGVy cyB0aGFuIAorICB0aGUgREVDL0NvbXBhYy9IUC1DIGNvbXBpbGVyIG9uIFZNUy4KKworLSBBbiBP RFMtNSBkaXNrLiBXaXRoIHR3ZWFraW5nIHlvdSdsbCBnZXQgaXQgdG8gd29yayBvbiBhbiBPRFMt MgorICBkaXNrLCBidXQgaXQgaXMgdW5wcmFjdGljYWwgdG8gZG8gc28uCisKKy0gQSB2ZXJzaW9u IG9mIFZNU1RBUiB0aGF0IHVuZGVyc3RhbmRzIE9EUy01IGRpc2tzIGFuZCBleHRlbmRlZAorICBm aWxlbmFtZXMuIExvb2sgaGVyZToKKyAgaHR0cDovL2Z0cC5wcm9jZXNzLmNvbS9mdHAvdm1zLWZy ZWV3YXJlL2ZpbGVzZXJ2L3Ztc3Rhci56aXAKKworLSBndW56aXAsIGF2YWlsYWJsZSBmb3IgaW5z dGFuY2UgYXQgU3RldmVuIE0gU2Nod2VkYSdzIHdlYnNpdGU6CisgIGh0dHA6Ly9hbnRpbm9kZS5p bmZvL2Z0cC9nemlwL2d6aXAtMV8zXzEyYl92bXMvZ3ppcC0xXzNfMTJiX3Ztcy56aXAKKworT3B0 aW9uYWw6CisKKy0gY3VybCwgdG8gYmUgZm91bmQgYXQgIGh0dHA6Ly9jdXJsLmhheHguc2UKKyAg WW91IG1pZ2h0IHdhbnQgdG8gdXNlIGN1cmwgdG8gZG93bmxvYWQgdGhlIGxpYnNzaDIga2l0IGRp cmVjdGx5CisgIHRvIHlvdSBWTVMgbWFjaGluZS4gSW50ZXJlc3RpbmdseSwgc2Z0cCBpbiBjdXJs IGlzIGltcGxlbWVudGVkIHVzaW5nCisgIGxpYnNzaDIsIHNvb24gdG8gYmUgZXhwZWN0ZWQgb24g Vk1TIGFzIHdlbGwsIGhvcGVmdWxseS4KKworRG93bmxvYWRpbmcgbGlic3NoMgorLS0tLS0tLS0t LS0tLS0tLS0tLQorCitBdCB0aGUgd2Vic2l0ZSBvZiBsaWJzc2gyLCB5b3UgY2FuIGZpbmQgc3Rh YmxlIGFuZCBkYWlseSBnemlwcGVkCit0YXJiYWxscy4gaWYgeW91IGhhdmUgYSBjb21wdXRlciBj b25uZWN0ZWQgdG8gaW50ZXJuZXQgeW91IGNhbiAKK2Rvd25sb2FkIGEgZGFpbHkgYnVpbGQgeW91 cnNlbGYgYnkgYSBwcm9jZWR1cmUgdGhhdCBsb29rcyBhIGxvdCBsaWtlCit0aGlzICggZmlsbCBv dXQgeW91ciBvd24gcHJveHkgdXNlci9wYXNzd29yZCwgc2V0IHVwIHJpZ2h0IHN5bWJvbHMgdG8K K2d1bnppcCwgdm1zdGFyIGFuZCBjdXJsIGFuZCBzZXQgdXAgdGhlIGxpYnNzaDIgYnVpbGQgdmVy c2lvbik6CisKKyQgbGlic3NoMl92ZXJzaW9uID0gIjEuMi42IgorJCEKKyQgcHJveHlfbGluZSA9 ICIgIiItVSIiICIiJydwcm94eV91c2VycGFzcyciIiAgIiIteCIiICIiJydwcm94eV9ob3N0cG9y dCciIiAiCiskIQorJCBjdXJyZW50ZGF5ID0gZiRjdnRpbWUoLCwiZGF0ZSIpIC0gIi0iIC0gIi0i CiskIQorJCBzZXQgZGVmIG15ZGV2OltteWRpci5saWJzc2gyXQorJCEKKyQgaWYgZiRzZWFyY2go ImxpYnNzaDItJydsaWJzc2gyX3ZlcnNpb24nLScnY3VycmVudGRheScudGFyLmd6IikgLm5lcy4g IiIgCiskIHRoZW4gCiskICAgZGVsZXRlIGxpYnNzaDItJ2xpYnNzaDJfdmVyc2lvbictJ2N1cnJl bnRkYXknLnRhci5nejsqCiskIGVuZGlmCiskIQorJCBjdXJsICdwcm94eV9saW5lJyAiaHR0cDov L2xpYnNzaDIub3JnL3NuYXBzaG90cy9saWJzc2gyLScnbGlic3NoMl92ZXJzaW9uJy0nJ2N1cnJl bnRkYXknLnRhci5neiIgLQorICAgICAgICAgICAgICAgICAgICAtbyBsaWJzc2gyLSdsaWJzc2gy X3ZlcnNpb24nLSdjdXJyZW50ZGF5Jy50YXIuZ3oKKyQhCiskIQorJCBpZiBmJHNlYXJjaCgibGli c3NoMi0nJ2xpYnNzaDJfdmVyc2lvbictJydjdXJyZW50ZGF5Jy50YXIuOyIpIC5uZXMuICIiIAor JCB0aGVuIAorJCAgIGRlbGV0ZSBsaWJzc2gyLSdsaWJzc2gyX3ZlcnNpb24nLSdjdXJyZW50ZGF5 Jy50YXIuOyoKKyQgZW5kaWYKKyQhCiskIGd1bnppcCBsaWJzc2gyLSdsaWJzc2gyX3ZlcnNpb24n LSdjdXJyZW50ZGF5Jy50YXIuZ3oKKyQhCiskIHRhcmZpbGUgPSBmJHNlYXJjaCgibGlic3NoMi0n J2xpYnNzaDJfdmVyc2lvbictJydjdXJyZW50ZGF5Jy50YXIuOyIpCiskIHZtc3RhciB4ZiAndGFy ZmlsZScgCisKK0Rvd25sb2FkaW5nIGEgc3RhYmxlIGJ1aWxkIHdpbGwgbmVlZCB5b3UgdG8gZ2V0 IHJpZCBvZiB0aGUgY3VycmVudGRheS4KKworQWZ0ZXIgdGhlIGRvd25sb2FkLCB5b3Ugc2hvdWxk IGhhdmUgYSBkaXJlY3RvcnkgdHJlZSB3aXRoIGEgdG9wbGV2ZWwKK2RpcmVjdG9yeSBjYWxsZWQg W2xpYnNzaDIteC55LnoteXl5eW1tZGRdLgorT25lIG9mIHRoZSBzdWJkaXJlY3RvcmllcyBpcyBj YWxsZWQgdm1zLgorCitHZXR0aW5nIHRoZSBsaWJzc2gyIHNvdXJjZXMgZnJvbSB0aGUgc291cmNl IGJhY2t1cCBpbiB0aGUgYmluYXJ5IGtpdAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKworRHVyaW5nIGluc3RhbGxh dGlvbiBvZiB0aGUgYmluYXJ5IGtpdCwgeW91IGFyZSBnaXZlbiB0aGUgb3B0aW9uCitvZiBpbnN0 YWxsaW5nIHRoZSBzb3VyY2VzLiBJZiBjaG9zZW4sIGEgYmFja3VwIHNhdmVzZXQgd2l0aCAKK3Ro ZSBjb21wbGV0ZSBsaWJzc2gyIGRpcmVjdG9yeSBpcyBtYWRlIGF2YWlsYWJsZSBpbiAKK1tnbnYu Y29tbW9uX3NyY10uCisKK0J5IHJlc3RvcmluZyB0aGlzIGJhY2t1cCBzYXZlc2V0LCB5b3UgZW5k IHVwIHdpdGggdGhlIHNhbWUKK3NldCBvZiBmaWxlcyBhcyBieSB0aGUgZGlyZWN0IGRvd25sb2Fk IGZyb20gbGlic3NoMi5vcmcuCisKKworQnVpbGRpbmcgdGhlIGxpYnJhcnkKKy0tLS0tLS0tLS0t LS0tLS0tLS0tCisKK1RvIGF2b2lkIGFsbCBraW5kcyBvZiBtaXN1bmRlcnN0YW5kaW5ncyBjYXVz ZWQgYnkgZmlyZXdhbGxzIHRoaW5raW5nIHRoYXQKK2EgLmNvbSBmaWxlIG11c3QgYmUgYW4gTVMt RE9TIGV4ZWN1dGFibGUsIGFsbCBjb21tYW5kIHByb2NlZHVyZXMgYXJlIGNhbGxlZAorLmRjbC4K KworR28gdG8gdGhlIHZtcyBzdWJkaXJlY3RvcnkgaW4gdGhlIGRvd25sb2FkIHRyZWUsIGFuZCBp c3N1ZSB0aGUgZm9sbG93aW5nCitjb21tYW5kOgorCitAbGlic3NoMl9tYWtlX2xpYi5kY2wKKwor VGhpcyBzaG91bGQgcHJvZHVjZSBsaWJzc2gyX3hfeV96LmV4ZSBpbiB0aGlzIHNhbWUgdm1zIGRp cmVjdG9yeS4KKyAKKworCitCdWlsZGluZyB0aGUgZXhhbXBsZXMKKy0tLS0tLS0tLS0tLS0tLS0t LS0tLQorCitBIG51bWJlciBvZiBleGFtcGxlcyBhcmUgYWxzbyBwYXJ0IG9mIHRoZSBmdWxsIGxp YnNzaDIgZGVsaXZlcnkuCitZb3UgY2FuIGNvbXBpbGUgYW5kIGxpbmsgdGhlbSBlaXRoZXIgYWdh aW5zdCB0aGUgb2JqZWN0IGxpYnJhcnkKK3Byb2R1Y2VkIHdoZW4gYnVpbGRpbmcgdGhlIHNoYXJl ZCBpbWFnZSwgb3IgYWdhaW5zdCB0aGUgc2hhcmVkIGltYWdlCitwcm9kdWNlZCBpbiB0aGUgc3Rl cCBiZWZvcmUuCisKK1lvdSBjYW4gY29tcGlsZSBvbmx5IG9uZSBvZiB0aGUgZXhhbXBsZXMgYnkg Z2l2aW5nIG9ubHkgdGhlCituYW1lIHBhcnQgb2YgdGhlIGZpbGVuYW1lIG9mIHRoZSBleGFtcGxl IGFzIHAxIHRvIHRoZSAKK2J1aWxkIHByb2NlZHVyZToKKworQGxpYnNzaDJfbWFrZV9leGFtcGxl LmRjbCAKKworb3IgZm9yIGluc3RhbmNlCisKK0BsaWJzc2gyX21ha2VfZXhhbXBsZS5kY2wgc2Z0 cCAKKworQnkgZGVmYXVsdCwgbGlic3NoMl9tYWtlX2V4YW1wbGUuZGNsIGxpbmtzIHRvIHRoZSBv YmplY3QgbGlicmFyaWVzIAorcHJvZHVjZWQgYnkgdGhlIGxpYnNzaDJfbWFrZV9saWIuZGNsIHBy b2NlZHVyZS4gSWYgeW91IHdhbnQgdG8gbGluaworYWdhaW5zdCB0aGUgc2hhcmVkIGltYWdlIGxp YnJhcnkgbWFkZSBpbiB0aGUgc2FtZSBwcm9jZWR1cmUsIGludm9rZQordGhlIHByb2NlZHVyZSBs aWtlIHNvOgorCitAbGlic3NoMl9tYWtlX2V4YW1wbGUuZGNsIHNmdHAgIlNIQVJFRCIKKworVGhl IHByb2NkdXJlIGRlZmluZXMgYSBwcm9jZXNzIGxvZ2ljYWwgZ252JGxpYnNzaDIgcG9pbnRpbmcg dG8gdGhlIHNoYXJlZAoraW1hZ2UgbGlicmFyeSBpbiB0aGUgZGlyZWN0b3J5LCB3aGljaCBvYnZp b3VzbHkgd2lsbCBub3Qgc3Vydml2ZSBhIGxvZ291dC4gCisKKworQnVpbGRpbmcgdGhlIGhlbHAg bGlicmFyeQorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCitUaGUgbWFuIHBhZ2VzIGNhbiBi ZSBjb252ZXJ0ZWQgdG8gYSBWTVMgaGVscCBsaWJyYXJ5IGJ5IGlzc3VpbmcKK3RoaXMgY29tbWFu ZCA6CisKK0BsaWJzc2gyX21ha2VfaGVscC5kY2wKKworSXQgdXNlcyBhIHNpbXBsZSBidXQgZmFp cmx5IGVmZmVjdGl2ZSBjIHByb2dyYW0gbWFuMmhlbHAuYwordG8gYWNoaWV2ZSB0aGlzLgorCitC dWlsZGluZyBhIFBDU0kga2l0CistLS0tLS0tLS0tLS0tLS0tLS0tCisKK1doZW4geW91IGhhdmUg YnVpbHQgdGhlIHNoYXJlZCBsaWJyYXJ5IGFuZCB0aGUgaGVscCBsaWJyYXJ5LAoreW91IGNhbiBi dWlsZCBhIFBDU0kga2l0IGJ5IGlzc3VlaW5nIHRoaXMgY29tbWFuZDoKKworQGxpYnNzaDJfbWFr ZV9raXQuZGNsCisKKworCisKKwotLSAKMS42LjYuMQoK --001485f1dc8ee97a350484d6ea6a 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 --001485f1dc8ee97a350484d6ea6a-- From libssh2-devel-bounces@cool.haxx.se Fri Apr 23 00:10:59 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3MMAhCT015295; Fri, 23 Apr 2010 00:10:55 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3MMAflJ015290 for ; Fri, 23 Apr 2010 00:10:41 +0200 Received: (qmail 3271 invoked by uid 501); 22 Apr 2010 22:10:49 -0000 Message-ID: <20100422221049.3270.qmail@stuge.se> Date: Fri, 23 Apr 2010 00:10:49 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: VMS port Mail-Followup-To: libssh2-devel@cool.haxx.se References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi Jose, Jose Baars wrote: > Please find attached the patch against yesterday's built that > implements the VMS port of libssh2. Very cool! I only have really minor comments: > From 4fa651c29315d976d21308aa1b4798b522f87a9d Mon Sep 17 00:00:00 2001 > From: peut Maybe run git config user.name 'Jose Baars' to get your name into the patch. > +++ b/vms/readme.vms .. > +Building gnv$libssh2 > +==================== > + > +You can build gnv$libssh2 yourself, which may have advantages, as the library is > +is full development, very regularly new features are added. Typo: "is in" Send an updated patch and I'll be happy to add it! //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Fri Apr 23 12:01:25 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3NA1Aor029718; Fri, 23 Apr 2010 12:01:22 +0200 Received: from mail-bw0-f211.google.com (mail-bw0-f211.google.com [209.85.218.211]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3NA18QF029545 for ; Fri, 23 Apr 2010 12:01:08 +0200 Received: by bwz3 with SMTP id 3so9012177bwz.11 for ; Fri, 23 Apr 2010 03:01:06 -0700 (PDT) MIME-Version: 1.0 Received: by 10.239.161.16 with HTTP; Fri, 23 Apr 2010 03:01:05 -0700 (PDT) In-Reply-To: <20100422221049.3270.qmail@stuge.se> References: <20100422221049.3270.qmail@stuge.se> Date: Fri, 23 Apr 2010 12:01:05 +0200 Received: by 10.239.186.84 with SMTP id f20mr1079464hbh.176.1272016866087; Fri, 23 Apr 2010 03:01:06 -0700 (PDT) Message-ID: Subject: Re: VMS port From: Jose Baars To: libssh2 development Content-Type: multipart/mixed; boundary=001485f5ceb87395e60484e481f5 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --001485f5ceb87395e60484e481f5 Content-Type: multipart/alternative; boundary=001485f5ceb87395db0484e481f3 --001485f5ceb87395db0484e481f3 Content-Type: text/plain; charset=ISO-8859-1 2010/4/23 Peter Stuge > > > Send an updated patch and I'll be happy to add it! > > > //Peter > Added the new patch, against last night's (23 April) build. I found out that changing the user.name doesn't affect git commit --amend messages or usernames in formatted patches. Should have set it up correctly in the first place of course. Good luck, Jose --001485f5ceb87395db0484e481f3 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

2010/4/23 Peter Stuge = <peter@stuge.se>


Send an updated patch and I'll be happy to add it!


//Peter

Added the new patch, against last night&#= 39;s (23 April)=A0 build.

I found out that changing the user.name doesn't affect git commit --amend messag= es or usernames in formatted patches. Should have set it up correctly in th= e first place of course.

Good luck,
Jose
--001485f5ceb87395db0484e481f3-- --001485f5ceb87395e60484e481f5 Content-Type: application/octet-stream; name="0001-VMS-port-of-libssh2-including-VMS-specific-build-pro.patch" Content-Disposition: attachment; filename="0001-VMS-port-of-libssh2-including-VMS-specific-build-pro.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g8cu0l930 RnJvbSBmOTdjMjljY2JmM2U2MDk4Mjg4ZjNlODdhZmQxM2M2MzZiZDQwZjYyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQ0KRnJvbTogSm9zZSBCYWFycyA8cGV1dEBwZXV0Lm9yZz4NCkRhdGU6IEZy aSwgMjMgQXByIDIwMTAgMDU6NTI6MDYgLTA0MDANClN1YmplY3Q6IFtQQVRDSF0gVk1TIHBvcnQg b2YgbGlic3NoMiBpbmNsdWRpbmcgVk1TIHNwZWNpZmljIGJ1aWxkIHByb2NlZHVyZXMNCgotLS0N CiB2bXMvbGlic3NoMl9tYWtlX2V4YW1wbGUuZGNsIHwgIDEyNCArKysrKysrKysrDQogdm1zL2xp YnNzaDJfbWFrZV9oZWxwLmRjbCAgICB8ICAgOTEgKysrKysrKysNCiB2bXMvbGlic3NoMl9tYWtl X2tpdC5kY2wgICAgIHwgIDIyMiArKysrKysrKysrKysrKysrKysNCiB2bXMvbGlic3NoMl9tYWtl X2xpYi5kY2wgICAgIHwgIDM0NCArKysrKysrKysrKysrKysrKysrKysrKysrKysrDQogdm1zL21h bjJoZWxwLmMgICAgICAgICAgICAgICB8ICA1MDYgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrDQogdm1zL3JlYWRtZS52bXMgICAgICAgICAgICAgICB8ICAzMTkgKysr KysrKysrKysrKysrKysrKysrKysrKysNCiA2IGZpbGVzIGNoYW5nZWQsIDE2MDYgaW5zZXJ0aW9u cygrKSwgMCBkZWxldGlvbnMoLSkNCiBjcmVhdGUgbW9kZSAxMDA2NDQgdm1zL2xpYnNzaDJfbWFr ZV9leGFtcGxlLmRjbA0KIGNyZWF0ZSBtb2RlIDEwMDY0NCB2bXMvbGlic3NoMl9tYWtlX2hlbHAu ZGNsDQogY3JlYXRlIG1vZGUgMTAwNjQ0IHZtcy9saWJzc2gyX21ha2Vfa2l0LmRjbA0KIGNyZWF0 ZSBtb2RlIDEwMDY0NCB2bXMvbGlic3NoMl9tYWtlX2xpYi5kY2wNCiBjcmVhdGUgbW9kZSAxMDA2 NDQgdm1zL21hbjJoZWxwLmMNCiBjcmVhdGUgbW9kZSAxMDA2NDQgdm1zL3JlYWRtZS52bXMNCgpk aWZmIC0tZ2l0IGEvdm1zL2xpYnNzaDJfbWFrZV9leGFtcGxlLmRjbCBiL3Ztcy9saWJzc2gyX21h a2VfZXhhbXBsZS5kY2wNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwLi5kODE5 MWYzDQotLS0gL2Rldi9udWxsDQorKysgYi92bXMvbGlic3NoMl9tYWtlX2V4YW1wbGUuZGNsDQpA QCAtMCwwICsxLDEyNCBAQA0KKyQhDQorJCENCiskIG9sZGRpciA9IGYkZW52aXJvbm1lbnQoImRl ZmF1bHQiKQ0KKyQgb24gY29udHJvbF95IHRoZW4gZ290byBZRXhpdA0KKyQhDQorJCBnb3N1YiBJ bml0DQorJCBpZiAubm90LiBpbml0X3N0YXR1cyB0aGVuIGdvdG8gWUV4aXQNCiskIQ0KKyQgaWYg d2hhdCAuZXFzLiAiQUxMIg0KKyQgdGhlbg0KKyQJY2FsbCBNYWtlQWxsDQorJCBlbHNlDQorJAlj YWxsIE1ha2UgDQorJGVuZGlmDQorJCENCiskWUV4aXQ6DQorJCBzZXQgbm9vbg0KKyQhIGRlYXNz aWduIGV4YWRpcg0KKyQhIGRlYXNzaWduIG9iamRpcg0KKyQgZGVsZXRlICdsaW5rX29wdHMnOyoN CiskIHNldCBkZWZhdWx0ICdvbGRkaXInDQorJGV4aXQgDQorDQorJE1ha2VBbGw6IHN1YnJvdXRp bmUNCiskIQ0KKyQgc2V0IG5vb24NCiskTG9vcDoNCiskIHRoaXMgPSBmJHNlYXJjaCgiZXhhZGly OiouYzswIikNCiskIGlmIHRoaXMgLmVxcy4gIiIgdGhlbiBnb3RvIEVuZExvb3ANCiskIQ0KKyQg d2hhdCA9IGYkcGFyc2UoIHRoaXMsLCwibmFtZSIpDQorJCBjYWxsIE1ha2UNCiskIQ0KKyQgZ290 byBMb29wDQorJEVuZExvb3A6DQorJCENCiskZXhpdA0KKyRlbmRzdWJyb3V0aW5lDQorDQorDQor JE1ha2U6IHN1YnJvdXRpbmUNCiskIQ0KKyQgc2V0IG5vb24NCiskIQ0KKyQgY2MgJ2NjX2luY2x1 ZGUnICdjY19mbGFncycvb2JqZWN0PW9iamRpcjond2hhdCcgZXhhZGlyOid3aGF0Jw0KKyQgc2V2 ID0gJHNldmVyaXR5DQorJCBpZiBzZXYgLmFuZC4gMiANCiskIHRoZW4NCiskCXNheSAiRXJyb3Ig Y29tcGlsaW5nICcnd2hhdCcsIG5vdCBsaW5rZWQuIg0KKyQgZWxzZQ0KKyQgCWlmIC5ub3QuIChz ZXYgLmFuZC4gMSkgIA0KKyQgCXRoZW4NCiskCQlzYXkgIkNvbXBpbGUgd2FybmluZ3MgaW4gICcn d2hhdCciDQorJCAJZW5kaWYNCiskICBsaW5rL2V4ZT0nd2hhdCcuZXhlIG9iamRpcjond2hhdCcu b2JqLCAnbGlua19vcHRzJy9vcHQNCiskIGVuZGlmDQorJCENCiskIQ0KKyRFbmQ6DQorJCBkZWxl dGUgb2JqZGlyOid3aGF0Jy5vYmo7Kg0KKyRleGl0DQorJGVuZHN1YnJvdXRpbmUgDQorDQorDQor JEluaXQ6IA0KKyQhDQorJCENCiskIGluaXRfc3RhdHVzID0gMQ0KKyQgdGhpc2lkID0gZiRpbnRl Z2VyKCAleCdmJGdldGpwaSgwLCJwaWQiKScpICsgIicnZiRjdnRpbWUoLCwic2Vjb25kIiknIg0K KyQgbWRpciAgID0gZiRlbnZpcm9ubWVudCgicHJvY2VkdXJlIikgDQorJCBtZGlyICAgPSBtZGly IC0gZiRwYXJzZShtZGlyLCwsIm5hbWUiKSAtIGYkcGFyc2UobWRpciwsLCJ0eXBlIikgLSBmJHBh cnNlKG1kaXIsLCwidmVyc2lvbiIpDQorJCBzZXQgZGVmYXVsdCAnbWRpcicNCiskIQ0KKyQgb2Jq ZGlyID0gIlsuZXhhbXBsZV9vYmplY3RzXSINCiskIGV4YWRpciA9ICJbLS5leGFtcGxlXSINCisk IQ0KKyQgb2JqZGlyZmlsZSA9IG9iamRpciAtICJbLiIgLSAiXSIgKyAiLmRpciINCiskIGlmIGYk c2VhcmNoKCBvYmpkaXJmaWxlICkgLmVxcy4gIiINCiskIHRoZW4NCiskCWNyZWF0ZS9kaXJlY3Rv cnkgJ29iamRpcicNCiskIGVuZGlmDQorJCENCiskIGRlZmluZSBvYmpkaXIgJ29iamRpcicNCisk IGRlZmluZSBleGFkaXIgJ2V4YWRpcicNCiskIQ0KKyQgY2NfaW5jbHVkZSA9ICIvaW5jbHVkZT0o W10sWy0uaW5jbHVkZV0pIg0KKyQgY2NfZmxhZ3MgICA9ICIvbmFtZT1zaG9ydGVuZWQvc2hvdz1h bGwiDQorJCBsaW5rX29wdHMgID0gIm9iamRpcjpsaWJzc2gyXycndGhpc2lkJy5vcHQiDQorJCEN CiskIQ0KKyQgd2hhdCA9ICInJ3AxJyIgDQorJCBpZiB3aGF0IC5lcXMuICIiIC5vci4gZiRlZGl0 KHAxLCJ0cmltLGNvbGxhcHNlLHVwY2FzZSIpIC5lcXMuICJBTEwiIA0KKyQgdGhlbiANCiskCXdo YXQgPSAiQUxMIg0KKyQgZWxzZQ0KKyQJd2hhdCA9IGYkcGFyc2Uod2hhdCwsLCJuYW1lIikNCisk CWlmIGYkc2VhcmNoKCJleGFkaXI6Jyd3aGF0Jy5jIikgLmVxcy4gIiINCiskCXRoZW4gDQorJAkJ d3JpdGUgc3lzJG91dHB1dCAiQ2FuJ3QgbWFrZSAnJ3doYXQnIg0KKyQJCWluaXRfc3RhdHVzID0g MA0KKyQJZW5kaWYNCiskIGVuZGlmDQorJCENCiskIGN1cnJlbnRsaWIgPSBmJHNlYXJjaCgibGli c3NoMiouZXhlIikNCiskIQ0KKyQgZGVmaW5lIGxpYnNzaDIgJ2N1cnJlbnRsaWInDQorJCENCisk IGhvdyAgPSAiJydwMiciDQorJCBpZiBob3cgLmVxcy4gIiIgLm9yLiBmJGVkaXQocDIsInRyaW0s Y29sbGFwc2UsdXBjYXNlIikgLmVxcy4gIlNUQVRJQyIgDQorJCB0aGVuDQorJCAJb3Blbi93cml0 ZSBsb3V0ICdsaW5rX29wdHMnDQorJCAJd3JpdGUgbG91dCAibGlic3NoMi5vbGIvbGliIg0KKyQg CXdyaXRlIGxvdXQgInN5cyRzaGFyZTpzc2wkbGliY3J5cHRvX3NocjMyLmV4ZS9zaGFyZSINCisk IAl3cml0ZSBsb3V0ICJzeXMkc2hhcmU6c3NsJGxpYnNzbF9zaHIzMi5leGUvc2hhcmUiDQorJCAJ d3JpdGUgbG91dCAiZ252JGxpYnpzaHIvc2hhcmUiDQorJCAJY2xvc2UgbG91dA0KKyQgZWxzZQ0K KyQJaG93ID0gIlNIQVJFRCINCiskIAlvcGVuL3dyaXRlIGxvdXQgJ2xpbmtfb3B0cycNCiskIAl3 cml0ZSBsb3V0ICJsaWJzc2gyL3NoYXJlIg0KKyQgCWNsb3NlIGxvdXQNCiskIGVuZGlmIA0KKyQh DQorJHJldHVybg0KZGlmZiAtLWdpdCBhL3Ztcy9saWJzc2gyX21ha2VfaGVscC5kY2wgYi92bXMv bGlic3NoMl9tYWtlX2hlbHAuZGNsDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAw MC4uMTNiMjA2Ng0KLS0tIC9kZXYvbnVsbA0KKysrIGIvdm1zL2xpYnNzaDJfbWFrZV9oZWxwLmRj bA0KQEAgLTAsMCArMSw5MSBAQA0KKyQhDQorJCENCiskIQ0KKyQgb2xkZGlyID0gZiRlbnZpcm9u bWVudCggImRlZmF1bHQiICkNCiskIG9uIGNvbnRyb2xfeSB0aGVuIGdvdG8gRW5kDQorJCBvbiBl cnJvciB0aGVuIGdvdG8gRW5kDQorJCENCiskIGdvc3ViIEluaXQNCiskIQ0KKyQgbWFuMmhlbHAg c3lzJGlucHV0OiBsaWJzc2gyLmhscCAtYiAxDQorDQorTElCU1NIMg0KKw0KK09wZW5WTVMgcG9y dCBvZiB0aGUgcHVibGljIGRvbWFpbiBsaWJzc2gyIGxpYnJhcnksIHdoaWNoIA0KK3Byb3ZpZGVz IGFuIEFQSSB0byBpbXBsZW1lbnQgY2xpZW50IFNTSCBjb21tdW5jaWF0aW9uLg0KKw0KK0xpY2Vu c2UgaW5mb3JtYXRpb24gaXMgYXZhaWxhYmxlIGF0IHRoZSBjb3B5aW5nIHN1YnRvcGljLg0KKw0K KyQhDQorJCBvcGVuL2FwcGVuZCBtaCBsaWJzc2gyLmhscA0KKyQgd3JpdGUgbWggaGVscHZlcnNp b24NCiskIGNsb3NlIG1oDQorJCENCiskIG1hbjJoZWxwIC1hIFstXXJlYWRtZS47IGxpYnNzaDIu aGxwICAgICAgICAtYiAyDQorJCBtYW4yaGVscCAtYSBbLV1hdXRob3JzLjsgbGlic3NoMi5obHAg ICAgICAgLWIgMg0KKyQgbWFuMmhlbHAgLWEgWy1dY29weWluZy47IGxpYnNzaDIuaGxwICAgICAg IC1iIDINCiskIG1hbjJoZWxwIC1hIFstXW5ld3MuOyBsaWJzc2gyLmhscCAgICAgICAgICAtYiAy DQorJCBtYW4yaGVscCAtYSBbLV1yZWxlYXNlLW5vdGVzLjsgbGlic3NoMi5obHAgLWIgMg0KKyQg bWFuMmhlbHAgLWEgWy1daGFja2luZy47IGxpYnNzaDIuaGxwICAgICAgIC1iIDINCiskIG1hbjJo ZWxwIC1hIFstXXRvZG8uOyBsaWJzc2gyLmhscCAgICAgICAgICAtYiAyDQorJCENCiskIG1hbjJo ZWxwIC1hIHN5cyRpbnB1dDogbGlic3NoMi5obHAgICAgICAgICAtYiAyDQorDQorQVBJX1JlZmVy ZW5jZQ0KKw0KK1JlZmVyZW5jZSBvZiBhbGwgaW1wbGVtZW50ZWQgQVBJIGNhbGxzIGluDQorbGli c3NoMi4NCisNCiskIQ0KKyQgbWFuMmhlbHAgLWEgWy0uZG9jc10qLjMgbGlic3NoMi5obHAgLWIg Mw0KKyQhDQorJCBsaWJyYXJ5L2hlbHAvY3JlYXRlIGxpYnNzaDIuaGxiIGxpYnNzaDIuaGxwDQor JCENCiskRW5kOg0KKyQgc2V0IGRlZmF1bHQgJ29sZGRpcicNCiskZXhpdA0KKyQhDQorJCEtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQorJCEN CiskSW5pdDoNCiskIQ0KKyQgdGhpc2RpciA9IGYkZW52aXJvbm1lbnQoICJwcm9jZWR1cmUiICkN CiskIHRoaXNkaXIgPSBmJHBhcnNlKHRoaXNkaXIsLCwiZGV2aWNlIikgKyBmJHBhcnNlKHRoaXNk aXIsLCwiZGlyZWN0b3J5IikNCiskIHNldCBkZWZhdWx0ICd0aGlzZGlyJw0KKyQhIA0KKyQgc2F5 ID0gIndyaXRlIHN5cyRvdXRwdXQiDQorJCENCiskIHBpcGUgc2VhcmNoIFstLmluY2x1ZGVdKi5o IGxpYnNzaDJfdmVyc2lvbl9tYWpvci9ub2hlYWQgfCAocmVhZCBzeXMkaW5wdXQgbCA7IGwgPSBm JGVsZW1lbnQoMiwiICIsZiRlZGl0KGwsInRyaW0sY29tcHJlc3MiKSkgOyAtIA0KKyAgICAgICBk ZWZpbmUvam9iIG1ham9ydiAmbCApDQorJCBwaXBlIHNlYXJjaCBbLS5pbmNsdWRlXSouaCBsaWJz c2gyX3ZlcnNpb25fbWlub3Ivbm9oZWFkIHwgKHJlYWQgc3lzJGlucHV0IGwgOyBsID0gZiRlbGVt ZW50KDIsIiAiLGYkZWRpdChsLCJ0cmltLGNvbXByZXNzIikpIDsgLSANCisgICAgICAgZGVmaW5l L2pvYiBtaW5vcnYgJmwgKQ0KKyQgcGlwZSBzZWFyY2ggWy0uaW5jbHVkZV0qLmggbGlic3NoMl92 ZXJzaW9uX3BhdGNoL25vaGVhZCB8IChyZWFkIHN5cyRpbnB1dCBsIDsgbCA9IGYkZWxlbWVudCgy LCIgIixmJGVkaXQobCwidHJpbSxjb21wcmVzcyIpKSA7IC0gDQorICAgICAgIGRlZmluZS9qb2Ig cGF0Y2h2ICZsICkNCiskIQ0KKyQgbWFqb3J2ICAgPSBmJHRybmxubSgibWFqb3J2IikNCiskIG1p bm9ydiAgID0gZiRpbnRlZ2VyKGYkdHJubG5tKCJtaW5vcnYiKSkgDQorJCBwYXRjaHYgICA9IGYk aW50ZWdlciggZiR0cm5sbm0oInBhdGNodiIpKQ0KKyQhDQorJCBoZWxwdmVyc2lvbiA9ICJUaGlz IGhlbHAgbGlicmFyeSBpcyBiYXNlZCBvbiBidWlsZCB2ZXJzaW9uICcnbWFqb3J2Jy4nJ21pbm9y dicuJydwYXRjaHYnIG9mIGxpYnNzaDIuIg0KKyQhDQorJCBkZWFzc2lnbi9qb2IgbWFqb3J2DQor JCBkZWFzc2lnbi9qb2IgbWlub3J2DQorJCBkZWFzc2lnbi9qb2IgcGF0Y2h2DQorJCENCiskIGlm IGYkc2VhcmNoKCAibWFuMmhlbHAuZXhlIiApIC5lcXMuICIiDQorJCB0aGVuDQorJCAgIGNjIG1h bjJoZWxwDQorJCAgIGxpbmsgbWFuMmhlbHANCiskIGVuZGlmDQorJCEgDQorJCBtYW4yaGVscCA6 PSAkJ3RoaXNkaXInbWFuMmhlbHAuZXhlIA0KKyQhDQorJCBpZiBmJHNlYXJjaCgibGlic3NoMi5o bHAiKSAubmVzLiAiIiANCiskIHRoZW4gDQorJCAgIGRlbGV0ZSBsaWJzc2gyLmhscDsqDQorJCBl bmRpZg0KKyQgaWYgZiRzZWFyY2goImxpYnNzaDIuaGxiIikgLm5lcy4gIiIgDQorJCB0aGVuIA0K KyQgICBkZWxldGUgbGlic3NoMi5obGI7Kg0KKyQgZW5kaWYNCiskcmV0dXJuDQpkaWZmIC0tZ2l0 IGEvdm1zL2xpYnNzaDJfbWFrZV9raXQuZGNsIGIvdm1zL2xpYnNzaDJfbWFrZV9raXQuZGNsDQpu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMC4uMjE2NmVjYw0KLS0tIC9kZXYvbnVs bA0KKysrIGIvdm1zL2xpYnNzaDJfbWFrZV9raXQuZGNsDQpAQCAtMCwwICsxLDIyMiBAQA0KKyQh DQorJCBvbGRkaXIgPSBmJGVudmlyb25tZW50KCJkZWZhdWx0IikNCiskIG9uIGVycm9yIHRoZW4g Z290byBFbmQNCiskIQ0KKyQgZ29zdWIgSW5pdA0KKyQhDQorJCBjYWxsIFdyaXRlUHJvZHVjdERl c2NyaXB0aW9uRmlsZQ0KKyQgY2FsbCBXcml0ZVByb2R1Y3RUZXh0RmlsZQ0KKyQhDQorJCEgYmFj a3VwIHRyZWUNCiskIQ0KKyQgYmFja3VwIFstLi4uXSouKjswL2V4Y2w9KFtdKi5leGUsKi5vYmos Ki5vcHQsKi5obHAsKi5obGIsKi5iY2ssKi5jb20sKi5wY3NpKikgLQ0KKyAgICBsaWJzc2gyLSd2 ZXJzaW9ubmFtZScnZGF0ZW5hbWUnX3NyYy5iY2svc2F2ZQ0KKyQgcHVyZ2UgbGlic3NoMi0ndmVy c2lvbm5hbWUnJ2RhdGVuYW1lJ19zcmMuYmNrDQorJCENCiskISBiYWNrdXAgZXhhbXBsZXMNCisk IQ0KKyQgYmFja3VwIFstLmV4YW1wbGVdKi5jOzAgbGlic3NoMl9leGFtcGxlcy0ndmVyc2lvbm5h bWUnJ2RhdGVuYW1lJy5iY2svc2F2ZQ0KKyQgZGlyZSAgbGlic3NoMl9leGFtcGxlcy0ndmVyc2lv bm5hbWUnJ2RhdGVuYW1lJy5iY2sNCiskIHB1cmdlIGxpYnNzaDJfZXhhbXBsZXMtJ3ZlcnNpb25u YW1lJydkYXRlbmFtZScuYmNrDQorJCENCiskIHNldCBkZWZhdWx0IFstXQ0KKyQhDQorJCBkZWZk aXIgID0gZiRlbnZpcm9ubWVudCggImRlZmF1bHQiICkNCiskIHRoaXNkZXYgPSBmJHBhcnNlKGRl ZmRpciwsLCJkZXZpY2UiLCJub19jb25jZWFsIikgDQorJCB0aGlzZGlyID0gZiRwYXJzZShkZWZk aXIsLCwiZGlyZWN0b3J5Iiwibm9fY29uY2VhbCIpIC0gIl1bIiAtICJdWyIgLSAiXVsiIC0gIl1b Ig0KKyQhDQorJCBsaWJzc2gyX2tmID0gdGhpc2RldiArIHRoaXNkaXIgDQorJCBsaWJzc2gyX2tm ID0gbGlic3NoMl9rZiAtICJdIiArICIuXSINCiskIQ0KKyQgc2V0IGRlZmF1bHQgJ21kaXInDQor JCENCiskIGRlZmluZS90cmFuc2xhdGlvbl9hdHRyaWJ1dGVzPWNvbmNlYWxlZCBsaWJzc2gyX2tm ICdsaWJzc2gyX2tmJw0KKyQhDQorJCBwcm9kdWN0IHBhY2thZ2UgbGlic3NoMiAtIA0KKyAgICAv YmFzZT0nYXJjaCcgLSANCisgICAgL3Byb2R1Y2VyPWpjYiAtDQorICAgIC9zb3VyY2U9W10gLSAh IHdoZXJlIHRvIGZpbmQgUERGIGFuZCBQVEYgDQorICAgIC9kZXN0aW5hdGlvbj1bXSAtICEgd2hl cmUgdG8gcHV0IC5QQ1NJIGZpbGUgDQorICAgIC9tYXRlcmlhbD1saWJzc2gyX2tmOlswMDAwMDAu Li5dIC0gICAgICAhIHdoZXJlIHRvIGZpbmQgcHJvZHVjdCBtYXRlcmlhbCANCisgICAgL3ZlcnNp b249Iicndm1zX21ham9ydicuJydtaW5vcnYnLScncGF0Y2h2JycnZGF0ZW5hbWUnIiAtDQorICAg IC9mb3JtYXQ9c2VxdWVudGlhbCANCiskIQ0KKyRFbmQ6DQorJCENCiskIHNldCBub29uDQorJCBp ZiBmJHNlYXJjaCgiKi5wY3NpJGRlc2M7KiIpIC5uZXMuICIiIHRoZW4gZGVsZXRlICoucGNzaSRk ZXNjOyoNCiskIGlmIGYkc2VhcmNoKCIqLnBjc2kkdGV4dDsqIikgLm5lcy4gIiIgdGhlbiBkZWxl dGUgKi5wY3NpJHRleHQ7Kg0KKyQgaWYgZiRzZWFyY2goImxpYnNzaDItJyd2ZXJzaW9ubmFtZScn J2RhdGVuYW1lJ19zcmMuYmNrOyoiKSAubmVzLiAiIiB0aGVuIGRlbGV0ZSBsaWJzc2gyLSd2ZXJz aW9ubmFtZScnZGF0ZW5hbWUnX3NyYy5iY2s7Kg0KKyQgaWYgZiRzZWFyY2goImxpYnNzaDJfZXhh bXBsZXMtJyd2ZXJzaW9ubmFtZScnJ2RhdGVuYW1lJy5iY2s7KiIpIC5uZXMuICIiIHRoZW4gZGVs ZXRlIGxpYnNzaDJfZXhhbXBsZXMtJ3ZlcnNpb25uYW1lJydkYXRlbmFtZScuYmNrOyoNCiskIQ0K KyQgaWYgZiR0cm5sbm0oImxpYnNzaDJfa2YiKSAubmVzLiAiIiB0aGVuIGRlYXNzaWduIGxpYnNz aDJfa2YNCiskIHNldCBkZWZhdWx0ICdvbGRkaXInDQorJCENCiskZXhpdCANCiskIQ0KKyQhLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0NCiskIQ0KKyRJbml0Og0KKyQgc2V0IHByb2Nlc3MvcGFyc2U9 ZXh0ZW5kZWQNCiskIQ0KKyQgc2F5ICAgID0gIndyaXRlIHN5cyRvdXRwdXQiDQorJCENCiskIG1k aXIgICA9IGYkZW52aXJvbm1lbnQoInByb2NlZHVyZSIpIA0KKyQgbWRpciAgID0gbWRpciAtIGYk cGFyc2UobWRpciwsLCJuYW1lIikgLSBmJHBhcnNlKG1kaXIsLCwidHlwZSIpIC0gZiRwYXJzZSht ZGlyLCwsInZlcnNpb24iKQ0KKyQhDQorJCBzZXQgZGVmYXVsdCAnbWRpcicNCiskIQ0KKyQgcGlw ZSBzZWFyY2ggWy0uaW5jbHVkZV0qLmggbGlic3NoMl92ZXJzaW9uX21ham9yL25vaGVhZCB8IChy ZWFkIHN5cyRpbnB1dCBsIDsgbCA9IGYkZWxlbWVudCgyLCIgIixmJGVkaXQobCwidHJpbSxjb21w cmVzcyIpKSA7IC0gDQorICAgICAgIGRlZmluZS9qb2IgbWFqb3J2ICZsICkNCiskIHBpcGUgc2Vh cmNoIFstLmluY2x1ZGVdKi5oIGxpYnNzaDJfdmVyc2lvbl9taW5vci9ub2hlYWQgfCAocmVhZCBz eXMkaW5wdXQgbCA7IGwgPSBmJGVsZW1lbnQoMiwiICIsZiRlZGl0KGwsInRyaW0sY29tcHJlc3Mi KSkgOyAtIA0KKyAgICAgICBkZWZpbmUvam9iIG1pbm9ydiAmbCApDQorJCBwaXBlIHNlYXJjaCBb LS5pbmNsdWRlXSouaCBsaWJzc2gyX3ZlcnNpb25fcGF0Y2gvbm9oZWFkIHwgKHJlYWQgc3lzJGlu cHV0IGwgOyBsID0gZiRlbGVtZW50KDIsIiAiLGYkZWRpdChsLCJ0cmltLGNvbXByZXNzIikpIDsg LSANCisgICAgICAgZGVmaW5lL2pvYiBwYXRjaHYgJmwgKQ0KKyQhDQorJCBtYWpvcnYgICA9IGYk dHJubG5tKCJtYWpvcnYiKQ0KKyQgbWlub3J2ICAgPSBmJGludGVnZXIoZiR0cm5sbm0oIm1pbm9y diIpKSANCiskIHBhdGNodiAgID0gZiRpbnRlZ2VyKCBmJHRybmxubSgicGF0Y2h2IikpDQorJCEN CiskIGRlYXNzaWduL2pvYiBtYWpvcnYNCiskIGRlYXNzaWduL2pvYiBtaW5vcnYNCiskIGRlYXNz aWduL2pvYiBwYXRjaHYNCiskIQ0KKyQgdm1zX21ham9ydiA9ICBmJHRybmxubSgidm1zX21ham9y diIpDQorJCBpZiB2bXNfbWFqb3J2IC5lcXMuICIiIHRoZW4gdm1zX21ham9ydiA9IG1ham9ydg0K KyQhDQorJCBhcmNoID0gIlVOS05PV04iDQorJCBpZiBmJGdldHN5aSgiYXJjaF90eXBlIikgLmVx LiAyIHRoZW4gYXJjaCA9ICJBWFBWTVMiDQorJCBpZiBmJGdldHN5aSgiYXJjaF90eXBlIikgLmVx LiAzIHRoZW4gYXJjaCA9ICJJNjRWTVMiDQorJCENCiskIGlmIGFyY2ggLmVxcy4gIlVOS05PV04i DQorJCB0aGVuDQorJCAgIHNheSAiVW5zdXBwb3J0ZWQgb3IgdW5rbm93biBhcmNoaXRlY3R1cmUs IG9ubHkgd29ya3Mgb24gQWxwaGEgYW5kIEl0YW5pdW0iDQorJCAgIGV4aXQgMg0KKyQgZW5kaWYN CiskIQ0KKyQhIGlzIHRoaXMgYSBwcm9wZXIgcmVsZWFzZSBvciBhIGRhaWx5IHNuYXBzaG90Pw0K KyQhIGNydW1teSwgYnV0IHNob3VsZCB3b3JrLg0KKyQhDQorJCBkYWlseSA9ICJUUlVFIg0KKyQg Zmlyc3RkYXNoICAgICA9IGYkbG9jYXRlKCItIixtZGlyKQ0KKyQgcmVzdGRpciAgICAgICA9IGYk ZXh0cmFjdCggZmlyc3RkYXNoICsgMSwgODAsIG1kaXIpDQorJCBzZWNvbmRkYXNoICAgID0gZiRs b2NhdGUoIi0iLCByZXN0ZGlyKQ0KKyQgaWYgc2Vjb25kZGFzaCAuZ2UuIGYkbGVuZ3RoKCByZXN0 ZGlyICkNCiskIHRoZW4NCiskICAgZGFpbHkgICAgPSAiRkFMU0UiDQorJCAgIGRhdGVuYW1lID0g IiIgICANCiskIGVsc2UNCiskICAgZGF0ZW5hbWUgPSAiRCIgKyBmJGV4dHJhY3Qoc2Vjb25kZGFz aCsxLDgscmVzdGRpcikgICANCiskIGVuZGlmDQorJCENCiskIGlmIGRhaWx5IA0KKyQgdGhlbg0K KyQgICBwcm9kdWN0bmFtZSA9ICJKQ0IgJydhcmNoJyBMSUJTU0gyIFYnJ3Ztc19tYWpvcnYnLicn bWlub3J2Jy0nJ3BhdGNodicnJ2RhdGVuYW1lJyINCiskIGVsc2UNCiskICAgcHJvZHVjdG5hbWUg PSAiSkNCICcnYXJjaCcgTElCU1NIMiBWJyd2bXNfbWFqb3J2Jy4nJ21pbm9ydictJydwYXRjaHYn Ig0KKyQgZW5kaWYNCiskIQ0KKyQgcHJvZHVjdGZpbGVuYW1lICA9ICJKQ0ItJydhcmNoJy1MSUJT U0gyLSIgKyBmJGZhbygiViEyWkwhMlpMLSEyWkwhQVMtMSIsIGYkaW50ZWdlcih2bXNfbWFqb3J2 KSxtaW5vcnYscGF0Y2h2LGRhdGVuYW1lKQ0KKyQhDQorJCB2ZXJzaW9ubmFtZSAgID0gIicndm1z X21ham9ydidfJydtaW5vcnYnXycncGF0Y2h2JyINCiskIQ0KKyRyZXR1cm4NCiskIQ0KKyQhLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0NCiskIQ0KKyRXcml0ZVByb2R1Y3REZXNjcmlwdGlvbkZpbGU6 IHN1YnJvdXRpbmUNCiskIQ0KKyQgb3Blbi93cml0ZSBwZCAncHJvZHVjdGZpbGVuYW1lJy5QQ1NJ JERFU0MNCiskIQ0KKyQgd3JpdGUgcGQgInByb2R1Y3QgJydwcm9kdWN0bmFtZScgZnVsbCA7Ig0K KyQgd3JpdGUgcGQgIiAgICBzb2Z0d2FyZSBERUMgJydhcmNoJyBWTVMgOyINCiskIHdyaXRlIHBk ICIgICAgaWYgKG5vdCA8c29mdHdhcmUgREVDICcnYXJjaCcgVk1TIHZlcnNpb24gbWluaW11bSBW OC4zPikgOw0KKyQgd3JpdGUgcGQgIiAgICAgICAgZXJyb3IgTkVFRF9WTVM4MyA7Ig0KKyQgd3Jp dGUgcGQgIiAgICBlbmQgaWYgOyINCiskIHdyaXRlIHBkICIgICAgc29mdHdhcmUgSFAgJydhcmNo JyBTU0wgdmVyc2lvbiBtaW5pbXVtIFYxLjM7Ig0KKyQgd3JpdGUgcGQgIiAgICBpZiAobm90IDxz b2Z0d2FyZSBIUCAnJ2FyY2gnIFNTTCB2ZXJzaW9uIG1pbmltdW0gVjEuMz4pIDsNCiskIHdyaXRl IHBkICIgICAgICAgIGVycm9yIE5FRURfU1NMIDsiDQorJCB3cml0ZSBwZCAiICAgIGVuZCBpZiA7 Ig0KKyQgd3JpdGUgcGQgIiAgICBleGVjdXRlIHByZWNvbmZpZ3VyZSAoIiJzZXQgcHJvY2Vzcy9w YXJzZV90eXBlPWV4dGVuZGVkIiIpOyINCiskIHdyaXRlIHBkICIgICAgZXhlY3V0ZSBwb3N0aW5z dGFsbCAoIiJzZXQgcHJvY2Vzcy9wYXJzZV90eXBlPWV4dGVuZGVkIiIsIg0KKyQgd3JpdGUgcGQg IiAgICAiInJlbmFtZSBwY3NpJGRlc3RpbmF0aW9uOltnbnZddXNyLmRpciB1c3IuRElSIiIsIg0K KyQgd3JpdGUgcGQgIiAgICAiInJlbmFtZSBwY3NpJGRlc3RpbmF0aW9uOltnbnYudXNyXWluY2x1 ZGUuZGlyIGluY2x1ZGUuRElSIiIsIg0KKyQgd3JpdGUgcGQgIiAgICAiInJlbmFtZSBwY3NpJGRl c3RpbmF0aW9uOltnbnYudXNyLmluY2x1ZGVdbGlic3NoMi5kaXIgbGlic3NoMi5ESVIiIiwiDQor JCB3cml0ZSBwZCAiICAgICIicmVuYW1lIHBjc2kkZGVzdGluYXRpb246W2dudi51c3IuaW5jbHVk ZS5saWJzc2gyXWxpYnNzaDIuaCBsaWJzc2gyLmgiIiwiDQorJCB3cml0ZSBwZCAiICAgICIicmVu YW1lIHBjc2kkZGVzdGluYXRpb246W2dudi51c3IuaW5jbHVkZS5saWJzc2gyXWxpYnNzaDJfcHVi bGlja2V5LmggbGlic3NoMl9wdWJsaWNrZXkuaCIiLCINCiskIHdyaXRlIHBkICIgICAgIiJyZW5h bWUgcGNzaSRkZXN0aW5hdGlvbjpbZ252LnVzci5pbmNsdWRlLmxpYnNzaDJdbGlic3NoMl9zZnRw LmggbGlic3NoMl9zZnRwLmgiIiwiDQorJCB3cml0ZSBwZCAiICAgICIicmVuYW1lIHBjc2kkZGVz dGluYXRpb246W2dudi51c3IuaW5jbHVkZS5saWJzc2gyXWxpYnNzaDJfY29uZmlnLmggbGlic3No Ml9jb25maWcuaCIiLCINCiskIHdyaXRlIHBkICIgICAgIiJyZW5hbWUgcGNzaSRkZXN0aW5hdGlv bjpbZ252LnVzcl1saWIuZGlyIGxpYi5ESVIiIiwiDQorJCB3cml0ZSBwZCAiICAgICIicmVuYW1l IHBjc2kkZGVzdGluYXRpb246W2dudi51c3IubGliXWdudiRsaWJzc2gyXycndmVyc2lvbm5hbWUn LmV4ZSBnbnYkbGlic3NoMl8nJ3ZlcnNpb25uYW1lJy5leGUiIiwiDQorJCB3cml0ZSBwZCAiICAg ICIicmVuYW1lIHBjc2kkZGVzdGluYXRpb246W2dudi51c3Iuc2hhcmUuZG9jLmxpYnNzaDJdbGli c3NoMi5obGIgbGlic3NoMi5obGIiIik7Ig0KKyQgd3JpdGUgcGQgIiAgICBpbmZvcm1hdGlvbiBS RUxFQVNFX05PVEVTIHBoYXNlIGFmdGVyIDsiDQorJCB3cml0ZSBwZCAiICAgIG9wdGlvbiBFWEFN UExFIGRlZmF1bHQgMCA7Ig0KKyQgd3JpdGUgcGQgIiAgICAgZGlyZWN0b3J5ICIiW2dudi51c3Iu c2hhcmUuZG9jLmxpYnNzaDIuZXhhbXBsZXNdIiIgOyINCiskIHdyaXRlIHBkICIgICAgIGZpbGUg IiJbZ252LnVzci5zaGFyZS5kb2MubGlic3NoMi5leGFtcGxlc11saWJzc2gyX2V4YW1wbGVzLScn dmVyc2lvbm5hbWUnJydkYXRlbmFtZScuYmNrIiI7Ig0KKyQgd3JpdGUgcGQgIiAgICBlbmQgb3B0 aW9uIDsiDQorJCB3cml0ZSBwZCAiICAgIG9wdGlvbiBTT1VSQ0UgZGVmYXVsdCAwIDsiDQorJCB3 cml0ZSBwZCAiICAgICBkaXJlY3RvcnkgIiJbZ252LmNvbW1vbl9zcmNdIiIgOyINCiskIHdyaXRl IHBkICIgICAgIGZpbGUgIiJbZ252LmNvbW1vbl9zcmNdbGlic3NoMi0nJ3ZlcnNpb25uYW1lJycn ZGF0ZW5hbWUnX3NyYy5iY2siIjsiDQorJCB3cml0ZSBwZCAiICAgIGVuZCBvcHRpb24gOyINCisk IHdyaXRlIHBkICIgICAgZGlyZWN0b3J5ICIiW2dudl0iIiA7Ig0KKyQgd3JpdGUgcGQgIiAgICBk aXJlY3RvcnkgIiJbZ252LnVzcl0iIiA7Ig0KKyQgd3JpdGUgcGQgIiAgICBkaXJlY3RvcnkgIiJb Z252LnVzci5saWJdIiIgOyINCiskIHdyaXRlIHBkICIgICAgZGlyZWN0b3J5ICIiW2dudi51c3Iu aW5jbHVkZV0iIiA7Ig0KKyQgd3JpdGUgcGQgIiAgICBkaXJlY3RvcnkgIiJbZ252LnVzci5pbmNs dWRlLmxpYnNzaDJdIiIgOyINCiskIHdyaXRlIHBkICIgICAgZGlyZWN0b3J5ICIiW2dudi51c3Iu c2hhcmVdIiIgOyINCiskIHdyaXRlIHBkICIgICAgZGlyZWN0b3J5ICIiW2dudi51c3Iuc2hhcmUu ZG9jXSIiIDsiDQorJCB3cml0ZSBwZCAiICAgIGRpcmVjdG9yeSAiIltnbnYudXNyLnNoYXJlLmRv Yy5saWJzc2gyXSIiIDsiDQorJCB3cml0ZSBwZCAiICAgIGZpbGUgIiJbZ252LnVzci5pbmNsdWRl LmxpYnNzaDJdbGlic3NoMi5oIiIgc291cmNlICIiW2luY2x1ZGVdbGlic3NoMi5oIiI7Ig0KKyQg d3JpdGUgcGQgIiAgICBmaWxlICIiW2dudi51c3IuaW5jbHVkZS5saWJzc2gyXWxpYnNzaDJfcHVi bGlja2V5LmgiIiBzb3VyY2UgIiJbaW5jbHVkZV1saWJzc2gyX3B1YmxpY2tleS5oIiI7Ig0KKyQg d3JpdGUgcGQgIiAgICBmaWxlICIiW2dudi51c3IuaW5jbHVkZS5saWJzc2gyXWxpYnNzaDJfc2Z0 cC5oIiIgc291cmNlICIiW2luY2x1ZGVdbGlic3NoMl9zZnRwLmgiIjsiDQorJCB3cml0ZSBwZCAi ICAgIGZpbGUgIiJbZ252LnVzci5pbmNsdWRlLmxpYnNzaDJdbGlic3NoMl9jb25maWcuaCIiIHNv dXJjZSAiIlt2bXNdbGlic3NoMl9jb25maWcuaCIiOyINCiskIHdyaXRlIHBkICIgICAgZmlsZSAi IltnbnYudXNyLnNoYXJlLmRvYy5saWJzc2gyXWxpYnNzaDIuaGxiIiIgc291cmNlICIiW3Ztc11s aWJzc2gyLmhsYiIiOyINCiskIHdyaXRlIHBkICIgICAgZmlsZSAiIltnbnYudXNyLnNoYXJlLmRv Yy5saWJzc2gyXWxpYnNzaDItJyd2ZXJzaW9ubmFtZScubmV3cyIiIHNvdXJjZSAiIlswMDAwMDBd TkVXUy4iIjsiDQorJCB3cml0ZSBwZCAiICAgIGZpbGUgIiJbZ252LnVzci5zaGFyZS5kb2MubGli c3NoMl1saWJzc2gyLScndmVyc2lvbm5hbWUnLnJlbGVhc2Vfbm90ZXMiIiBzb3VyY2UgIiJbdm1z XXJlYWRtZS52bXMiIjsiDQorJCB3cml0ZSBwZCAiICAgIGZpbGUgIiJbZ252LnVzci5saWJdZ252 JGxpYnNzaDJfJyd2ZXJzaW9ubmFtZScuZXhlIiIgc291cmNlICIiW3Ztc11saWJzc2gyXycndmVy c2lvbm5hbWUnLmV4ZSIiOyINCiskIHdyaXRlIHBkICJlbmQgcHJvZHVjdCA7Ig0KKyQgY2xvc2Ug cGQNCiskZXhpdCANCiskZW5kc3Vicm91dGluZQ0KKyQhDQorJCEtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0KKyQhDQorJFdyaXRlUHJvZHVjdFRleHRGaWxlOiBzdWJyb3V0aW5lDQorJCENCiskIG9w ZW4vd3JpdGUgcHQgJ3Byb2R1Y3RmaWxlbmFtZScuUENTSSRURVhUDQorJCB3cml0ZSBwdCAiPVBS T0RVQ1QgJydwcm9kdWN0bmFtZScgRnVsbCINCiskIHdyaXRlIHB0ICIxICdQUk9EVUNFUiINCisk IHdyaXRlIHB0ICI9cHJvbXB0IGxpYnNzaDIgaXMgYW4gb3BlbiBzb3VyY2UgcHJvZHVjdCBwb3J0 ZWQgdG8gVk1TIGJ5IEpvc2UgQmFhcnMiDQorJCB3cml0ZSBwdCAiVGhpcyBzb2Z0d2FyZSBwcm9k dWN0IGlzIHByb3ZpZGVkIHdpdGggbm8gd2FycmFudHkuIg0KKyQgd3JpdGUgcHQgIkZvciBsaWNl bnNlIGluZm9ybWF0aW9uIHNlZSB0aGUgTElCU1NIMiBoZWxwIGxpYnJhcnkuIg0KKyQgd3JpdGUg cHQgIjEgJ1BST0RVQ1QiDQorJCB3cml0ZSBwdCAiPXByb21wdCBKQ0IgTElCU1NIMiBmb3IgT3Bl blZNUyINCiskIHdyaXRlIHB0ICIiDQorJCB3cml0ZSBwdCAibGlic3NoMiBpcyBhbiBvcGVuIHNv dXJjZSBjbGllbnQgc2lkZSBsaWJyYXJ5IHRoYXQgYWltcyB0byBpbXBsZW1lbnQiDQorJCB3cml0 ZSBwdCAidGhlIFNTSCBwcm90b2NvbC4gVGhpcyBpcyB0aGUgT3BlblZNUyBwb3J0IG9mIHRoYXQg bGlicmFyeS4iDQorJCB3cml0ZSBwdCAiRnVydGhlciBpbmZvcm1hdGlvbiBhdCBodHRwOi8vd3d3 LmxpYnNzaDIub3JnLiINCiskIHdyaXRlIHB0ICIiDQorJCB3cml0ZSBwdCAiMSBORUVEX1ZNUzgz Ig0KKyQgd3JpdGUgcHQgIj1wcm9tcHQgT3BlblZNUyA4LjMgb3IgbGF0ZXIgaXMgbm90IGluc3Rh bGxlZCBvbiB5b3VyIHN5c3RlbS4iDQorJCB3cml0ZSBwdCAiVGhpcyBwcm9kdWN0IHJlcXVpcmVz IE9wZW5WTVMgOC4zIG9yIGxhdGVyIHRvIGZ1bmN0aW9uLiINCiskIHdyaXRlIHB0ICIiDQorJCB3 cml0ZSBwdCAiMSBORUVEX1NTTCINCiskIHdyaXRlIHB0ICI9cHJvbXB0IEhQIFNTTCAxLjMgb3Ig bGF0ZXIgaXMgbm90IGluc3RhbGxlZCBvbiB5b3VyIHN5c3RlbS4iDQorJCB3cml0ZSBwdCAiVGhp cyBwcm9kdWN0IHJlcXVpcmVzIEhQIFNTTCAxLjMgb3IgbGF0ZXIgdG8gZnVuY3Rpb24uIg0KKyQg d3JpdGUgcHQgIiINCiskIHdyaXRlIHB0ICIxIFJFTEVBU0VfTk9URVMiDQorJCB3cml0ZSBwdCAi PXByb21wdCBSZWxlYXNlIG5vdGVzIGFuZCB0aGUgbGlic3NoMiBoZWxwIGxpYnJhcnkgYXJlIGF2 YWlsYWJsZSBpbiBbZ252LnVzci5zaGFyZS5kb2MubGlic3NoMl0gZGlyZWN0b3J5LiINCiskIHdy aXRlIHB0ICIiDQorJCB3cml0ZSBwdCAiMSBFWEFNUExFIg0KKyQgd3JpdGUgcHQgIj1wcm9tcHQg RG8geW91IHdhbnQgdGhlIGxpYnNzaDIgQyBwcm9ncmFtbWluZyBleGFtcGxlcyA/ICINCiskIHdy aXRlIHB0ICJUaGUgbGlic3NoMiBjb2RpbmcgZXhhbXBsZXMgd2lsbCBiZSBhdmFpbGFibGUgaW4g YmFja3VwIHNhdmVzZXQgIg0KKyQgd3JpdGUgcHQgIltnbnYudXNyLnNoYXJlLmRvYy5saWJzc2gy LmV4YW1wbGVzXWxpYnNzaDJfZXhhbXBsZXNfJyd2ZXJzaW9ubmFtZScuYmNrIg0KKyQgd3JpdGUg cHQgIiINCiskIHdyaXRlIHB0ICIxIFNPVVJDRSINCiskIHdyaXRlIHB0ICI9cHJvbXB0IERvIHlv dSB3YW50IHRoZSBjb21wbGV0ZSBsaWJzc2gyIHNvdXJjZSB0cmVlID8gIg0KKyQgd3JpdGUgcHQg IlRoZSBsaWJzc2gyIHNvdXJjZSB0cmVlIHdpbGwgYmUgYXZhaWxhYmxlIGluIGJhY2t1cCBzYXZl c2V0ICINCiskIHdyaXRlIHB0ICJbZ252LmNvbW1vbl9zcmNdbGlic3NoMl8nJ3ZlcnNpb25uYW1l JycnZGF0ZW5hbWUnX3NyYy5iY2siDQorJGNsb3NlIHB0DQorJGV4aXQNCiskIGVuZHN1YnJvdXRp bmUNCisNCmRpZmYgLS1naXQgYS92bXMvbGlic3NoMl9tYWtlX2xpYi5kY2wgYi92bXMvbGlic3No Ml9tYWtlX2xpYi5kY2wNCm5ldyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwLi42ZDhi MTNiDQotLS0gL2Rldi9udWxsDQorKysgYi92bXMvbGlic3NoMl9tYWtlX2xpYi5kY2wNCkBAIC0w LDAgKzEsMzQ0IEBADQorJCENCiskIQ0KKyQgb2xkZGlyID0gZiRlbnZpcm9ubWVudCgiZGVmYXVs dCIpDQorJCBvbiBjb250cm9sX3kgdGhlbiBnb3RvIFlFeGl0DQorJCENCiskIGdvc3ViIEluaXQN CiskIGlmIC5ub3QuIGluaXRfc3RhdHVzIHRoZW4gZ290byBZRXhpdA0KKyQhDQorJCBjYWxsIENv bXBpbGVBbGwNCiskIGNhbGwgQnVpbGRUcmFuc2ZlclZlY3RvcnMNCiskIGNhbGwgTGlua1NoYXJl ZA0KKyQhDQorJCBjYWxsIENsZWFudXANCiskIQ0KKyRZRXhpdDoNCiskIHNldCBub29uDQorJCEN CiskIGRlYXNzaWduIHNyY2Rpcg0KKyQgaWYgZiRzZWFyY2goIm9iamRpcjoqLio7KiIpIC5uZXMu ICIiIHRoZW4gZGVsZXRlIG9iamRpcjoqLio7Kg0KKyQgZGVhc3NpZ24gb2JqZGlyDQorJCBkZWxl dGUgbGlicmFyeV9vYmplY3RzLmRpcjsqDQorJCENCiskIHNldCBkZWZhdWx0ICdvbGRkaXInDQor JGV4aXQgDQorJCENCiskIS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KKyQhDQorJEluaXQ6IA0KKyQhDQorJCENCisk IGluaXRfc3RhdHVzID0gMQ0KKyQgdGhpc2lkID0gZiRpbnRlZ2VyKCAleCdmJGdldGpwaSgwLCJw aWQiKScpIA0KKyQgbWRpciAgID0gZiRlbnZpcm9ubWVudCgicHJvY2VkdXJlIikgDQorJCBtZGly ICAgPSBtZGlyIC0gZiRwYXJzZShtZGlyLCwsIm5hbWUiKSAtIGYkcGFyc2UobWRpciwsLCJ0eXBl IikgLSBmJHBhcnNlKG1kaXIsLCwidmVyc2lvbiIpDQorJCBzZXQgZGVmYXVsdCAnbWRpcicNCisk IQ0KKyQgb2JqZGlyID0gIlsubGlicmFyeV9vYmplY3RzXSINCiskIHNyY2RpciA9ICJbLS5zcmNd Ig0KKyQhDQorJCBvYmpkaXJmaWxlID0gb2JqZGlyIC0gIlsuIiAtICJdIiArICIuZGlyIg0KKyQg aWYgZiRzZWFyY2goIG9iamRpcmZpbGUgKSAuZXFzLiAiIg0KKyQgdGhlbg0KKyQgICBjcmVhdGUv ZGlyZWN0b3J5ICdvYmpkaXInDQorJCBlbmRpZg0KKyQhDQorJCBkZWZpbmUgb2JqZGlyICdvYmpk aXInDQorJCBkZWZpbmUgc3JjZGlyICdzcmNkaXInDQorJCENCiskIGNjX2luY2x1ZGUgPSAiL2lu Y2x1ZGU9KFtdLFstLmluY2x1ZGVdKSINCiskIGxpbmtfb3B0cyAgPSAib2JqZGlyOmxpYnNzaDJf Jyd0aGlzaWQnLm9wdCINCiskIQ0KKyQgcGlwZSBzZWFyY2ggWy0uaW5jbHVkZV1saWJzc2gyLmgg bGlic3NoMl92ZXJzaW9uX21ham9yL25vaGVhZCB8IChyZWFkIHN5cyRpbnB1dCBsIDsgbCA9IGYk ZWxlbWVudCgyLCIgIixmJGVkaXQobCwidHJpbSxjb21wcmVzcyIpKSA7IC0gDQorICAgICAgIGRl ZmluZS9qb2IgbWFqb3J2ICZsICkNCiskIHBpcGUgc2VhcmNoIFstLmluY2x1ZGVdbGlic3NoMi5o IGxpYnNzaDJfdmVyc2lvbl9taW5vci9ub2hlYWQgfCAocmVhZCBzeXMkaW5wdXQgbCA7IGwgPSBm JGVsZW1lbnQoMiwiICIsZiRlZGl0KGwsInRyaW0sY29tcHJlc3MiKSkgOyAtIA0KKyAgICAgICBk ZWZpbmUvam9iIG1pbm9ydiAmbCApDQorJCBwaXBlIHNlYXJjaCBbLS5pbmNsdWRlXWxpYnNzaDIu aCBsaWJzc2gyX3ZlcnNpb25fcGF0Y2gvbm9oZWFkIHwgKHJlYWQgc3lzJGlucHV0IGwgOyBsID0g ZiRlbGVtZW50KDIsIiAiLGYkZWRpdChsLCJ0cmltLGNvbXByZXNzIikpIDsgLSANCisgICAgICAg ZGVmaW5lL2pvYiBwYXRjaHYgJmwgKQ0KKyQhDQorJCBtYWpvcnYgICA9IGYkdHJubG5tKCJtYWpv cnYiKQ0KKyQgbWlub3J2ICAgPSBmJGludGVnZXIoZiR0cm5sbm0oIm1pbm9ydiIpKSANCiskIHBh dGNodiAgID0gZiRpbnRlZ2VyKCBmJHRybmxubSgicGF0Y2h2IikpDQorJCENCiskIE9MQk9OTFkg PSAiRkFMU0UiDQorJCBpZiBwMSAuZXFzLiAiT0xCT05MWSINCiskIHRoZW4NCiskICAgT0xCT05M WSA9ICJUUlVFIg0KKyQgZW5kaWYNCiskIQ0KKyQgZGVhc3NpZ24vam9iIG1ham9ydg0KKyQgZGVh c3NpZ24vam9iIG1pbm9ydg0KKyQgZGVhc3NpZ24vam9iIHBhdGNodg0KKyQhDQorJHJldHVybg0K KyQhDQorJCEtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0NCiskIQ0KKyRDbGVhbnVwOiBzdWJyb3V0aW5lDQorJCENCisk IHNldCBub29uDQorJCBwdXJnZSAqLm9wdA0KKyQgcHVyZ2UgKi5vbGINCiskIHB1cmdlICouZXhl DQorJCEgDQorJGV4aXQgMQ0KKyRlbmRzdWJyb3V0aW5lDQorJCENCiskIS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K KyQhDQorJExpbmtTaGFyZWQ6IHN1YnJvdXRpbmUNCiskIQ0KKyQhDQorJCENCiskIGN2ZXJzaW9u ID0gZiRmYW8oIiEzWkwiLG1pbm9ydikgICsgZiRmYW8oIiEzWkwiLHBhdGNodikNCiskIQ0KKyQh IEdlbmVyYWwgbGlua2luZyBvcHRpb25zIGluIGxpbmtfbGlic3NoMl92ZXJzaW9uLi4ub3B0DQor JCEgVmVjdG9ycyBpbiBsaW5rX2xpYnNzaDJfdmVjdG9ycy4uLm9wdA0KKyQhDQorJCBvcGVuL3dy aXRlIHVpdHYgbGlua19saWJzc2gyX3ZlcnNpb25fJ21ham9ydidfJ21pbm9ydidfJ3BhdGNodicu b3B0DQorJCB3cml0ZSB1aXR2ICJHU01BVENIPUxFUVVBTCwnJ21ham9ydicsJydjdmVyc2lvbici DQorJCB3cml0ZSB1aXR2ICJJREVOVElGSUNBVElPTj0iIkxJQlNTSDIgJydtYWpvcnYnLicnbWlu b3J2Jy4nJ3BhdGNodiciIiINCiskIHdyaXRlIHVpdHYgInN5cyRzaGFyZTpzc2wkbGliY3J5cHRv X3NocjMyLmV4ZS9zaGFyZSINCiskIHdyaXRlIHVpdHYgInN5cyRzaGFyZTpzc2wkbGlic3NsX3No cjMyLmV4ZS9zaGFyZSINCiskIHdyaXRlIHVpdHYgImdudiRsaWJ6c2hyL3NoYXJlIg0KKyQgY2xv c2UgdWl0dg0KKyQhIA0KKyQgbGluay9zaGFyZWQvZXhlPWxpYnNzaDJfJ21ham9ydidfJ21pbm9y didfJ3BhdGNodicuZXhlIC0NCisgICAgbGlic3NoMi5vbGIvbGliLCAtDQorICAgIGxpbmtfbGli c3NoMl92ZXJzaW9uXydtYWpvcnYnXydtaW5vcnYnXydwYXRjaHYnLm9wdC9vcHQsIC0NCisgICAg bGlua19saWJzc2gyX3ZlY3RvcnNfJ21ham9ydidfJ21pbm9ydidfJ3BhdGNodicub3B0L29wdA0K KyQhDQorJGV4aXQNCiskZW5kc3Vicm91dGluZQ0KKyQhDQorJCEtLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiskIQ0K KyRDb21waWxlQWxsOiBzdWJyb3V0aW5lDQorJCENCiskIHNldCBub29uDQorJCENCiskIGlmIGYk c2VhcmNoKCJvYmpkaXI6Ki5vYmo7KiIpIC5uZXMgIiIgDQorJCB0aGVuIA0KKyQgICBkZWxldGUg b2JqZGlyOioub2JqOyoNCiskIGVuZGlmDQorJCBpZiBmJHNlYXJjaCgiWy5jeHhfcmVwb3NpdG9y eV1jeHgkZGVtYW5nbGVyX2RiLjsiKSAubmVzICIiIA0KKyQgdGhlbiANCiskICAgZGVsZXRlIFsu Y3h4X3JlcG9zaXRvcnldY3h4JGRlbWFuZ2xlcl9kYi47Kg0KKyQgZW5kaWYNCiskIQ0KKyQhIENv bXBpbGUgYWxsIC5jIGZpbGVzIGluIFstLnNyY10sIGZpcnN0IGFzX2lzDQorJCEgYW5kIHRoZW4g YXMgZGVmYXVsdCBhbGwgdXBwZXJjYXNlIG5hbWVzDQorJCEgYW5kIGFkZCB0aGUgcmVzdWx0aW5n IG9iamVjdCB0byBvYmplY3QgbGlicmFyaWVzDQorJCEgbGlic3NoMl91cC5vbGIgYW5kIGxpYnNz aDJfYXNfaXMub2xiLg0KKyQhDQorJCBjYXNlID0gMA0KKyQgaWYgT0xCT05MWSB0aGVuIGNhc2Ug PSAxDQorJENhc2VMb29wOg0KKyQhDQorJCBpZiBjYXNlIC5lcS4gMCANCiskIHRoZW4hY2FtZWwg Y2FzZSBuYW1lcyANCiskICAgY2NfZmxhZ3MgPSAiL25hbWVzPShzaG9ydGVuZWQsYXNfaXMpIg0K KyQgICBvYmpsaWIgPSAibGlic3NoMl9hc2lzLm9sYiINCiskIGVuZGlmDQorJCENCiskIGlmIGNh c2UgLmVxLiAxIA0KKyQgdGhlbiF1cHBlcmNhc2UgbmFtZXMgDQorJCAgIGlmIGYkc2VhcmNoKCJb LmN4eF9yZXBvc2l0b3J5XWN4eCRkZW1hbmdsZXJfZGIuOyIpIC5uZXMgIiIgDQorJCAgIHRoZW4g DQorJCAgICAgIHJlbmFtZSBbLmN4eF9yZXBvc2l0b3J5XWN4eCRkZW1hbmdsZXJfZGIuOyAqLmxv d2VyY2FzZQ0KKyQgICAgICBwdXJnZSAgWy5jeHhfcmVwb3NpdG9yeV1jeHgkZGVtYW5nbGVyX2Ri Lmxvd2VyY2FzZQ0KKyQgICBlbmRpZg0KKyQhDQorJCAgIGNjX2ZsYWdzID0gIi9uYW1lcz0oc2hv cnRlbmVkKSINCiskICAgb2JqbGliID0gImxpYnNzaDJfdXAub2xiIg0KKyQgZW5kaWYNCiskIQ0K KyQgaWYgZiRzZWFyY2goIicnb2JqbGliJzsqIikgLm5lcy4gIiIgdGhlbiBkZWxldGUgJ29iamxp Yic7Kg0KKyQgbGlicmFyeS9jcmVhdGUgJ29iamxpYicNCiskIQ0KKyRMb29wOg0KKyQgdGhpcyA9 IGYkc2VhcmNoKCJzcmNkaXI6Ki5jOzAiKQ0KKyQgaWYgdGhpcyAuZXFzLiAiIiB0aGVuIGdvdG8g RW5kTG9vcA0KKyQhDQorJCB3aGF0ID0gZiRwYXJzZSggdGhpcywsLCJuYW1lIikNCiskIQ0KKyQg Y2FsbCBDb21waWxlQW5kQWRkDQorJCENCiskIGdvdG8gTG9vcA0KKyRFbmRMb29wOg0KKyQgY2Fz ZSA9IGNhc2UgKyAxDQorJCBkZWxldGUgb2JqZGlyOioub2JqOyoNCiskIGlmIGNhc2UgLmx0IDIg dGhlbiBnb3RvIENhc2VMb29wDQorJCENCiskIHJlbmFtZSBsaWJzc2gyX3VwLm9sYiBsaWJzc2gy Lm9sYg0KKyQgaWYgZiRzZWFyY2goIlsuY3h4X3JlcG9zaXRvcnldY3h4JGRlbWFuZ2xlcl9kYi47 IikgLm5lcyAiIiANCiskIHRoZW4gDQorJCAgICByZW5hbWUgWy5jeHhfcmVwb3NpdG9yeV1jeHgk ZGVtYW5nbGVyX2RiLjsgKi51cHBlcmNhc2UNCiskICAgIHB1cmdlICBbLmN4eF9yZXBvc2l0b3J5 XWN4eCRkZW1hbmdsZXJfZGIudXBwZXJjYXNlDQorJCBlbmRpZg0KKyQhDQorJCBpZiBPTEJPTkxZ IHRoZW4gZXhpdCA0DQorJCENCiskISBGb3IgZWFjaCBmdW5jdGlvbiB0aGF0IGlzIHRvbyBsb25n LCBjcmVhdGUgYSBnbG9iYWwgc3ltYm9sDQorJCEgbG93JCdzaG9ydGVuZWQtdXBwZXJjYXNlLW5h bWUnIHdpdGggYXMgdmFsdWUgbG93ZXJjYXNlIHNob3J0ZW5lZA0KKyQhIG5hbWUgaW4gaXQsIHNv IHdlIGNhbiBhZGQgdGhlIHByb3BlciBsb3dlciBvciBtaXhlZCBjYXNlIA0KKyQhIHNob3J0ZW5l ZCBuYW1lIGxhdGVyIHdoZW4gYnVpbGRpbmcgdGhlIHRyYW5zZmVyIHZlY3RvcnMgDQorJCEgZm9y IHRoZSBzaGFyZWQgaW1hZ2UuDQorJCEgVGhpcyBpcyB0byBwcmV2ZW50IHR3byB2ZXJ5IGxvbmcg c2ltaWxhciBmdW5jdGlvbiBuYW1lcyANCiskISB0aGF0IGFyZSBzaG9ydGVuZWQgZ2V0dGluZyBt aXhlZCB1cCB3aGVuIHNvcnRlZCBhbHBoYWJldGljYWxseS4NCiskIQ0KKyQgaW5wdXRmaWxlID0g IlsuY3h4X3JlcG9zaXRvcnldY3h4JGRlbWFuZ2xlcl9kYi5sb3dlcmNhc2UiDQorJCBnb3N1YiBH ZXRTaG9ydGVuZWQNCiskIQ0KKyQgaW5wdXRmaWxlID0gICJbLmN4eF9yZXBvc2l0b3J5XWN4eCRk ZW1hbmdsZXJfZGIudXBwZXJjYXNlIg0KKyQgZ29zdWIgR2V0U2hvcnRlbmVkDQorJCENCiskZXhp dA0KKyQhDQorJEdldFNob3J0ZW5lZDoNCiskIQ0KKyQgb3Blbi9yZWFkIHMgJ2lucHV0ZmlsZScN CiskIG5hbWVjb3VudCA9IDANCiskUmVhZExvb3A6DQorJCENCiskIHJlYWQvZW5kPWVuZHJlYWRs b29wIHMgcmVnZWwNCiskIQ0KKyQgc2hvcnRuYW1lID0gZiRlbGVtZW50KDAsIiQiLHJlZ2VsKSAr ICIkIg0KKyQgbG9uZ25hbWUgID0gZiRlbGVtZW50KDEsIiQiLHJlZ2VsKQ0KKyQhDQorJCBzeW12 YWx1ZSA9ICIiDQorJCENCiskIGlmIHNob3J0bmFtZSAuZXFzLiBmJGVkaXQoc2hvcnRuYW1lLCJ1 cGNhc2UiKQ0KKyQgdGhlbg0KKyQhICB0aGlzIGlzIGFuIHVwcGVyY2FzZSBzaG9ydG5hbWUsIGFk ZCBpdCANCiskICAgc3ltbmFtZSAgPSAidSQnJ2xvbmduYW1lJyINCiskICAgc3ltdmFsdWUgPSAi JydzaG9ydG5hbWUnIg0KKyQgICBsb3ckJ3Nob3J0bmFtZScgPT0gbCQnbG9uZ25hbWUnDQorJCEN CiskICAgZGVsZXRlL3N5bWJvbCBsJCdsb25nbmFtZScNCiskIQ0KKyQgZWxzZQ0KKyQhICB0aGlz IGlzIGFuIGxvd2VyY2FzZSBzaG9ydG5hbWUNCiskICAgc3ltbmFtZSAgPSAibCQnJ2xvbmduYW1l JyINCiskICAgc3ltdmFsdWUgPSAiJydzaG9ydG5hbWUnIg0KKyQgICAnc3ltbmFtZScgPSAiJydz eW12YWx1ZSciDQorJCBlbmRpZg0KKyQhDQorJCBuYW1lY291bnQgPSBuYW1lY291bnQgKyAxDQor JCENCiskIGdvdG8gUmVhZExvb3ANCiskRW5kUmVhZExvb3A6DQorJCENCiskY2xvc2Ugcw0KKyRy ZXR1cm4NCiskIQ0KKyRlbmRzdWJyb3V0aW5lDQorJCENCiskIS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KKyQhDQor JENvbXBpbGVBbmRBZGQ6IHN1YnJvdXRpbmUNCiskIQ0KKyQgb24gZXJyb3IgdGhlbiBnb3RvIEVu ZA0KKyQhDQorJCBjYyAvd2Fybj1kaXNhYmxlPWxvbmdleHRlcm4vbGlzPW9iamRpcjovc2hvdz1h bGwgJ2NjX2luY2x1ZGUnICdjY19mbGFncycvb2JqZWN0PW9iamRpcjond2hhdCcub2JqIHNyY2Rp cjond2hhdCcuYw0KKyQgbGlicmFyeS9pbnNlcnQgJ29iamxpYicgb2JqZGlyOid3aGF0Jy5vYmoN CiskIQ0KKyRFbmQ6DQorJGV4aXQNCiskZW5kc3Vicm91dGluZSANCiskIQ0KKyQhLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQorJCENCiskQnVpbGRUcmFuc2ZlclZlY3RvcnM6IHN1YnJvdXRpbmUNCiskIQ0KKyQhIERv IGEgYmFsYW5jZWQgcmVhZCBvZiB0aGUgdXBwZXJjYXNlIGxpYnJhcnkgbmFtZXMNCiskISBhbmQg dGhlIG1peGVkIGNhc2UgbGlicmFyeSBuYW1lcywgYW5kIGJ1aWxkIHRoZQ0KKyQhIHRyYW5zZmVy IHZlY3RvcnMgd2l0aCB1cHBlcmNhc2UgZW50cnkgcG9pbnRzIA0KKyQhIHdpdGggYW4gYWx0ZXJu YXRpdmUgaW4gbWl4ZWQgY2FzZS4NCiskISBGb3Igc2hvcnRlbmVkIG5hbWVzLCB1c2UgdGhlIGxv dyQqIHN5bWJvbHMNCiskISB0byBhdm9pZCBiZWluZyBmb29sZWQgYnkgdGhlIHNvcnQuDQorJCEN CiskIHRoaXNsaWIgPSAibGlic3NoMi5vbGIiDQorJCBsaWJyYXJ5L2xpcz1saWJ1Lid0aGlzaWQn L25hbWVzIGxpYnNzaDIub2xiDQorJCBsaWJyYXJ5L2xpcz1saWJfYXNpc3UuJ3RoaXNpZCcvbmFt ZXMgbGlic3NoMl9hc2lzLm9sYg0KKyQhDQorJCEgY2FzZSBibGluZCBzb3J0IG9mIGFsbCBtb2R1 bGVzIGluIGJvdGggdGhlIHVwcGVyY2FzZQ0KKyQhIGFzIHRoZSBjYXNlIHNlbnNpdGl2ZSBvYmpl Y3QgbGlicmFyeS4NCiskIQ0KKyQgc29ydCBsaWJ1Lid0aGlzaWQnIGxpYi4ndGhpc2lkJy9zcGVj PXN5cyRpbnB1dA0KKy9DT0xMQVRJTkdfU0VRVUVOQ0U9KFNFUVVFTkNFPSAoIkEiIC0gIloiLCIw Ii0iOSIsIl8iKSwgRk9MRCkgDQorJCBzb3J0IGxpYl9hc2lzdS4ndGhpc2lkJyBsaWJfYXNpcy4n dGhpc2lkJy9zcGVjPXN5cyRpbnB1dA0KKy9DT0xMQVRJTkdfU0VRVUVOQ0U9KFNFUVVFTkNFPSAo IkEiIC0gIloiLCIwIi0iOSIsIl8iKSwgRk9MRCkgDQorJCENCiskIG9wZW4vcmVhZCAgaW4gIGxp Yi4ndGhpc2lkJw0KKyQgb3Blbi9yZWFkICBpbmFzaXMgIGxpYl9hc2lzLid0aGlzaWQnDQorJCBv cGVuL3dyaXRlIHVpdCBsaW5rX2xpYnNzaDJfdmVjdG9yc18nbWFqb3J2J18nbWlub3J2J18ncGF0 Y2h2Jy5vcHQNCiskIQ0KKyQgd3JpdGUgdWl0ICJDQVNFX1NFTlNJVElWRT1ZRVMiDQorJCB3cml0 ZSB1aXQgIlNZTUJPTF9WRUNUT1I9ICggLSINCiskIQ0KKyQgbW9kZSA9IDANCiskIHVpdHJlZ2Vs ID0gIiINCiskIQ0KKyRSZWFkTG9vcDoNCiskIQ0KKyQgcmVhZC9lbmQ9UmVhZEFzaXMgaW4gcmVn ZWwNCiskUmVhZEFzaXM6DQorJCByZWFkL2VuZD1FbmRSZWFkTG9vcCBpbmFzaXMgYXNpc3JlZ2Vs DQorJCENCiskIHJlZ2VsICAgICA9IGYkZWRpdCggcmVnZWwsICJ0cmltLGNvbXByZXNzIiApDQor JCBhc2lzcmVnZWwgPSBmJGVkaXQoIGFzaXNyZWdlbCwgInRyaW0sY29tcHJlc3MiICkNCiskIQ0K KyQgaWYgZiRlbGVtZW50KDAsIiAiLHJlZ2VsKSAuZXFzLiAiTW9kdWxlIiAub3IuIC0NCisgICAg IGYkZXh0cmFjdCgwLDEscmVnZWwpICAgLmVxcy4gIl8iIC5vci4gLQ0KKyAgICAgZiRlbGVtZW50 KDEsIiAiLHJlZ2VsKSAubmVzLiAiICIgLm9yLiAtDQorICAgICByZWdlbCAuZXFzLiAiIg0KKyQg dGhlbg0KKyQgICBnb3RvIFJlYWRMb29wDQorJCBlbmRpZg0KKyQhDQorJCBpZiB1aXRyZWdlbCAu bmVzLiAiIiAuYW5kLiBtb2RlIC5lcS4gMQ0KKyQgdGhlbg0KKyQgICB3cml0ZSB1aXQgIicndWl0 cmVnZWwnPVBST0NFRFVSRSwgLSIgDQorJCAgIHdyaXRlIHVpdCAiJyd1aXRhc2lzJy8nJ3VpdHJl Z2VsJz1QUk9DRURVUkUsIC0iIA0KKyQhDQorJCAgIHVpdHJlZ2VsID0gIiINCiskICAgdWl0YXNp cyAgPSAiIg0KKyQgZW5kaWYgDQorJCENCiskIHVpdHJlZ2VsID0gcmVnZWwNCiskIGlmIGYkdHlw ZSggbG93JCd1aXRyZWdlbCcgKSAubmVzLiAiIg0KKyQgdGhlbg0KKyQgICB1aXRhc2lzID0gbG93 JCd1aXRyZWdlbCcNCiskICAgZGVsZXRlL3N5bWJvbC9nbG9iYWwgbG93JCd1aXRyZWdlbCcNCisk IGVsc2UNCiskICAgdWl0YXNpcyAgPSBhc2lzcmVnZWwNCiskIGVuZGlmDQorJCENCiskIG1vZGUg PSAxDQorJCENCiskIGdvdG8gUmVhZExvb3ANCiskRW5kcmVhZExvb3A6DQorJCEgDQorJCEgVG8g Z2V0IHRoZSBjbG9zaW5nIGJyYWNlIGFmdGVyIHRoZSBsYXN0IHByb2NlZHVyZQ0KKyQhIGtleXdv cmQuDQorJCENCiskIGlmIHVpdHJlZ2VsIC5uZXMuICIiDQorJCB0aGVuIA0KKyQgICB3cml0ZSB1 aXQgIicndWl0cmVnZWwnPVBST0NFRFVSRSwgLSIgDQorJCAgIHdyaXRlIHVpdCAiJyd1aXRhc2lz Jy8nJ3VpdHJlZ2VsJz1QUk9DRURVUkUpIiANCiskIGVuZGlmDQorJCENCiskIHdyaXRlIHVpdCAi Q0FTRV9TRU5TSVRJVkU9Tk8iDQorJCENCiskIGNsb3NlIGluDQorJCBjbG9zZSBpbmFzaXMNCisk IGNsb3NlIHVpdA0KKyQhDQorJCBkZWxldGUgbGliKi4ndGhpc2lkJzsqDQorJCENCiskZXhpdA0K KyRlbmRzdWJyb3V0aW5lDQorJCENCiskIS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KKyQhDQpkaWZmIC0tZ2l0IGEv dm1zL21hbjJoZWxwLmMgYi92bXMvbWFuMmhlbHAuYw0KbmV3IGZpbGUgbW9kZSAxMDA2NDQNCmlu ZGV4IDAwMDAwMDAuLmUwOTY3OGQNCi0tLSAvZGV2L251bGwNCisrKyBiL3Ztcy9tYW4yaGVscC5j DQpAQCAtMCwwICsxLDUwNiBAQA0KKyNpbmNsdWRlIDxzdGRpby5oPg0KKyNpbmNsdWRlIDxzdGRs aWIuaD4NCisjaW5jbHVkZSA8c3RyaW5nLmg+DQorI2luY2x1ZGUgPGN0eXBlLmg+DQorI2luY2x1 ZGUgPGVycm5vLmg+DQorDQorI2luY2x1ZGUgPHN0YXJsZXQuaD4NCisjaW5jbHVkZSA8bGliJHJv dXRpbmVzLmg+DQorI2luY2x1ZGUgPHNzZGVmLmg+DQorI2luY2x1ZGUgPGRlc2NyaXAuaD4NCisj aW5jbHVkZSA8cm1zLmg+DQorDQordHlwZWRlZiBzdHJ1Y3QgbWFubHsNCisgICAgc3RydWN0IG1h bmwgKm5leHQ7DQorICAgIGNoYXIgKmZpbGVuYW1lOw0KK31tYW4sICptYW5QdHI7DQorIA0KK3R5 cGVkZWYgc3RydWN0IHBmX2ZhYm5hbXsNCisgICAgc3RydWN0IEZBQiBkZmFiOw0KKyAgICBzdHJ1 Y3QgUkFCIGRyYWI7DQorICAgIHN0cnVjdCBuYW1sZGVmIGRuYW07DQorICAgIGNoYXIgICBleHBh bmRlZF9maWxlbmFtZVtOQU0kQ19NQVhSU1MgKyAxXTsgDQorfSBwZm4sICpwZm5QdHI7DQorDQor LyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tKi8NCisNCitmcGNvcHkoIGNoYXIgKm91dHB1dCwgY2hhciAqaW5wdXQsIGludCBsZW4gKQ0K K3sNCitjaGFyICAgICppcywgKm9zOw0KK2ludCBpOw0KKw0KK2lmICggbGVuICl7DQorICAgIGZv ciAoIGlzID0gaW5wdXQsIG9zID0gb3V0cHV0LCBpID0gMDsgaSA8IGxlbiA7ICsraSwgKytpcywg Kytvcyl7DQorICAgICAgICAgICAgKm9zID0gKmlzOw0KKyAgICB9DQorICAgICpvcyA9IDA7DQor fWVsc2V7DQorICAgIG91dHB1dFswXSA9IDA7DQorfQ0KK30gICAgICAgICAgIA0KKw0KKw0KKy8q LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LSovDQorLyogZ2l2ZSBwYXJ0IG9mIGlsZW5hbWUgaW4gcGFydG5hbWUuIFNlZSBjb2RlIGZvciBw cm9wZXINCisgICB2YWx1ZSBvZiBpICggMCA9IG5vZGUsIDEgPSBkZXYsIDIgPSBkaXIsMyA9IG5h bWUgZXRjLg0KKyovIA0KKw0KK2ludCBmbmFtZXBhcnQoIGNoYXIgKmlucHV0ZmlsZSwgY2hhciAq cGFydCwgaW50IHdoYXRwYXJ0ICkNCit7DQorcGZuUHRyIHBmOw0KK2ludCAgICAgc3RhdHVzOw0K K2NoYXIgICAgaXBhcnRbNl1bMjU2XSwgKmksICpwOw0KKw0KK3BmID0gY2FsbG9jKCAxLCBzaXpl b2YoIHBmbiApICk7DQorDQorcGYtPmRmYWIgPSBjYyRybXNfZmFiOw0KK3BmLT5kcmFiID0gY2Mk cm1zX3JhYjsNCitwZi0+ZG5hbSA9IGNjJHJtc19uYW1sOw0KKw0KK3BmLT5kZmFiLmZhYiRsX25h bWwgPSAmcGYtPmRuYW07DQorDQorcGYtPmRmYWIuZmFiJGxfZm5hID0gKGNoYXIgKikgLTE7IA0K K3BmLT5kZmFiLmZhYiRsX2RuYSA9IChjaGFyICopIC0xOyANCitwZi0+ZGZhYi5mYWIkYl9mbnMg PSAwOw0KK3BmLT5kZmFiLmZhYiR3X2lmaSA9IDA7DQorDQorcGYtPmRuYW0ubmFtbCRsX2xvbmdf ZGVmbmFtZSA9IE5VTEw7IC8vaW5wdXRmaWxlOw0KK3BmLT5kbmFtLm5hbWwkbF9sb25nX2RlZm5h bWVfc2l6ZSA9IDA7Ly9zdHJsZW4oIGlucHV0ZmlsZSApOw0KKw0KK3BmLT5kbmFtLm5hbWwkbF9s b25nX2ZpbGVuYW1lID0gaW5wdXRmaWxlOw0KK3BmLT5kbmFtLm5hbWwkbF9sb25nX2ZpbGVuYW1l X3NpemUgPSBzdHJsZW4oIGlucHV0ZmlsZSk7DQorDQorcGYtPmRuYW0ubmFtbCRsX2xvbmdfZXhw YW5kID0gcGYtPmV4cGFuZGVkX2ZpbGVuYW1lOw0KK3BmLT5kbmFtLm5hbWwkbF9sb25nX2V4cGFu ZF9hbGxvYyA9IE5BTSRDX01BWFJTUyA7DQorDQorcGYtPmRuYW0ubmFtbCRiX25vcCB8PSBOQU1M JE1fU1lOQ0hLIHwgTkFNTCRNX1BXRDsNCisNCitzdGF0dXMgPSBzeXMkcGFyc2UoICZwZi0+ZGZh YiwgMCwwKTsNCitpZiAoICEoc3RhdHVzJjEpICl7DQorICAgIGZyZWUoIHBmICk7DQorICAgIHJl dHVybiggc3RhdHVzICk7DQorfQ0KKw0KK2ZwY29weSAoIGlwYXJ0WzBdLCBwZi0+ZG5hbS5uYW1s JGxfbG9uZ19ub2RlICwgcGYtPmRuYW0ubmFtbCRsX2xvbmdfbm9kZV9zaXplKTsNCitmcGNvcHkg KCBpcGFydFsxXSwgcGYtPmRuYW0ubmFtbCRsX2xvbmdfZGV2ICwgcGYtPmRuYW0ubmFtbCRsX2xv bmdfZGV2X3NpemUpOw0KK2ZwY29weSAoIGlwYXJ0WzJdLCBwZi0+ZG5hbS5uYW1sJGxfbG9uZ19k aXIgLCBwZi0+ZG5hbS5uYW1sJGxfbG9uZ19kaXJfc2l6ZSk7DQorZnBjb3B5ICggaXBhcnRbM10s IHBmLT5kbmFtLm5hbWwkbF9sb25nX25hbWUgLCBwZi0+ZG5hbS5uYW1sJGxfbG9uZ19uYW1lX3Np emUpOw0KK2ZwY29weSAoIGlwYXJ0WzRdLCBwZi0+ZG5hbS5uYW1sJGxfbG9uZ190eXBlICwgcGYt PmRuYW0ubmFtbCRsX2xvbmdfdHlwZV9zaXplKTsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIA0KK2ZwY29weSAoIGlwYXJ0WzVdLCBwZi0+ZG5hbS5uYW1sJGxf bG9uZ192ZXIgLCBwZi0+ZG5hbS5uYW1sJGxfbG9uZ192ZXJfc2l6ZSk7DQorDQorZm9yKCBpID0g aXBhcnRbIHdoYXRwYXJ0IF0sIHAgPSBwYXJ0OyAqaTsgKytpLCArK3Apew0KKyAgIGlmICggcCA9 PSBwYXJ0ICl7DQorICAgICAgKnAgPSB0b3VwcGVyKCAqaSApOw0KKyAgIH1lbHNlew0KKyAgICAg ICpwID0gdG9sb3dlciggKmkgKTsNCisgICB9ICAgICAgICANCit9DQorKnAgPSAwOw0KKw0KK2Zy ZWUoIHBmICk7DQorcmV0dXJuKDEpOw0KK30NCisvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KKw0KK2ludCBmaW5kX2ZpbGUoY2hh ciAqZmlsZW5hbWUsY2hhciAqZ2V2b25kZW4saW50ICpmaW5kZXgpDQorew0KK2ludCAgICAgc3Rh dHVzOw0KK3N0cnVjdCAgZHNjJGRlc2NyaXB0b3IgZ2V2b25kZW5kOw0KK3N0cnVjdCAgZHNjJGRl c2NyaXB0b3IgZmlsZXNwZWM7DQorY2hhciAgICBnZXZvbmRlbl9maWxlW05BTSRDX01BWFJTUyAr IDFdOw0KKw0KK2ZpbGVzcGVjLmRzYyR3X2xlbmd0aCA9IHN0cmxlbihmaWxlbmFtZSk7DQorZmls ZXNwZWMuZHNjJGJfZHR5cGUgID0gRFNDJEtfRFRZUEVfVDsNCitmaWxlc3BlYy5kc2MkYl9jbGFz cyAgPSBEU0MkS19DTEFTU19TOyANCitmaWxlc3BlYy5kc2MkYV9wb2ludGVyID0gZmlsZW5hbWU7 DQorDQorZ2V2b25kZW5kLmRzYyR3X2xlbmd0aCA9IE5BTSRDX01BWFJTUzsNCitnZXZvbmRlbmQu ZHNjJGJfZHR5cGUgID0gRFNDJEtfRFRZUEVfVDsNCitnZXZvbmRlbmQuZHNjJGJfY2xhc3MgID0g RFNDJEtfQ0xBU1NfUzsgDQorZ2V2b25kZW5kLmRzYyRhX3BvaW50ZXIgPSBnZXZvbmRlbl9maWxl Ow0KKw0KK3N0YXR1cz1saWIkZmluZF9maWxlKCZmaWxlc3BlYywmZ2V2b25kZW5kLGZpbmRleCww LDAsMCwwKTsNCisgICAgDQoraWYgKCAoc3RhdHVzICYgMSkgPT0gMSApew0KKyAgICAgICBzdHJj cHkoZ2V2b25kZW4sc3RydG9rKGdldm9uZGVuX2ZpbGUsIiAiKSk7DQorfWVsc2V7DQorICAgICAg IGdldm9uZGVuWzBdID0gMDsNCit9DQorDQorcmV0dXJuKHN0YXR1cyk7DQorfQ0KKw0KKw0KKy8q LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KKw0KK21hblB0 ciBhZGRtYW4oIG1hblB0ciAqbWFucm9vdCxjaGFyICpmaWxlbmFtZSApDQorew0KK21hblB0ciBt LGY7DQorDQorbSA9IGNhbGxvYyggMSwgc2l6ZW9mKCBtYW4pICk7DQoraWYgKCAhbSApIHJldHVy biggTlVMTCApOw0KKw0KK20tPmZpbGVuYW1lID0gc3RyZHVwKCBmaWxlbmFtZSApOw0KKw0KK2lm ICggKm1hbnJvb3QgPT0gTlVMTCApew0KKyAgICptYW5yb290ID0gbTsgICAgDQorfWVsc2V7DQor ICAgZm9yKCBmID0gKm1hbnJvb3Q7IGYtPm5leHQgOyBmID0gZi0+bmV4dCApOw0KKyAgIGYtPm5l eHQgPSBtOw0KK30NCityZXR1cm4obSk7DQorfQ0KKw0KKy8qLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KK3ZvaWQgZnJlZW1hbiggbWFuUHRyICptYW5yb290 ICkNCit7DQorbWFuUHRyIG0sbjsNCisNCitmb3IoIG0gPSAqbWFucm9vdDsgbSA7IG0gPSBuICl7 DQorICAgICBmcmVlKCBtLT5maWxlbmFtZSApOw0KKyAgICAgbiA9IG0tPm5leHQ7DQorICAgICBm cmVlICggbSApOw0KK30NCisqbWFucm9vdCA9IE5VTEw7DQorfQ0KKw0KKy8qLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KKw0KK2ludCBsaXN0b2ZtYW5zKCBj aGFyICpmaWxlc3BlYywgbWFuUHRyICptYW5yb290ICkNCit7DQorbWFuUHRyICByOw0KK2ludCAg ICAgc3RhdHVzOw0KK2ludCAgICAgZmZpbmRleD0wOw0KK2NoYXIgICAgZ2V2b25kZW5bTkFNJENf TUFYUlNTICsgMV07DQorDQord2hpbGUoMSl7DQorICAgIHN0YXR1cyA9IGZpbmRfZmlsZSggZmls ZXNwZWMsIGdldm9uZGVuLCAmZmZpbmRleCApOw0KKw0KKyAgICBpZiAoIChzdGF0dXMmMSkgKXsN CisgICAgICAgIHIgPSBhZGRtYW4oIG1hbnJvb3QsIGdldm9uZGVuICk7DQorICAgICAgICBpZiAo IHIgPT0gTlVMTCApIHJldHVybigyKTsNCisgICAgfWVsc2V7DQorICAgICAgICBpZiAoICEoIHN0 YXR1cyYxKSkgYnJlYWs7DQorICAgIH0NCit9DQorDQorbGliJGZpbmRfZmlsZV9lbmQoICZmZmlu ZGV4KTsNCitpZiAoIHN0YXR1cyA9PSBSTVMkX05NRikgc3RhdHVzID0gMTsNCisNCisNCityZXR1 cm4oIHN0YXR1cyApOw0KK30NCisNCisvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tKi8NCisNCitpbnQgY29udmVydG1hbiAoIGNoYXIgKmZpbGVzcGVjLCBGSUxF ICpobHAgLCBpbnQgYmFzZV9sZXZlbCApDQorew0KK0ZJTEUgICAgKm1hbjsNCitjaGFyICAgICpp biwgKnVpdDsNCitjaGFyICAgICptLCpoOw0KK3NpemVfdCAgbGVuLCB0aGlzbGVuLCBtYXhsZW49 IDUwMDAwOw0KK2ludCAgICAgYm9sLG1vZGUsIHJldHVybl9zdGF0dXM9MTsNCitjaGFyIHN1Ympl Y3RuYW1lWyBOQU0kQ19NQVhSU1MgKyAxIF07DQorDQoraW4gID0gY2FsbG9jKCAxLCBtYXhsZW4g KyAxICk7DQordWl0ID0gY2FsbG9jKCAxLCBtYXhsZW4gKyAxICk7DQorDQoraWYgKCBpbiA9PSBO VUxMIHx8IHVpdCA9PSBOVUxMICkgcmV0dXJuKDIpOw0KKw0KK21hbiA9IGZvcGVuKCBmaWxlc3Bl YywgInIiKTsNCitpZiAoIG1hbiA9PSBOVUxMICkgcmV0dXJuKHZheGMkZXJybm8pOw0KKw0KK2Zv ciggbGVuID0gMDsgIWZlb2YoIG1hbiApICYmIGxlbiA8IG1heGxlbiA7IGxlbiArPSB0aGlzbGVu ICl7DQorICAgIHRoaXNsZW4gPSBmcmVhZCggaW4gKyBsZW4sIDEsIG1heGxlbiAtIGxlbiwgbWFu ICk7DQorfQ0KKw0KK2ZjbG9zZSAobWFuKTsNCisNCittID0gaW47DQoraCA9IHVpdDsNCisNCisq KG0gKyBsZW4gKSA9IDA7DQorDQorZm9yICggbW9kZSA9IDAsIGJvbCA9IDEgOyAqbTsgKyttICl7 DQorDQorICAgIHN3aXRjaCAoIG1vZGUgKXsNCisgICAgICAgIGNhc2UgMDoNCisgICAgICAgICAg c3dpdGNoKCptKXsNCisgICAgICAgICAgICBjYXNlICcuJzoNCisgICAgICAgICAgICAgICAgaWYg KCBib2wgKXsNCisgICAgICAgICAgICAgICAgICAgIG1vZGUgPSAxOw0KKyAgICAgICAgICAgICAg ICB9ZWxzZXsNCisgICAgICAgICAgICAgICAgICAgICpoID0gKm07DQorICAgICAgICAgICAgICAg ICAgICArK2g7DQorICAgICAgICAgICAgICAgIH0NCisgICAgICAgICAgICAgICAgYnJlYWs7DQor ICAgICAgICAgICAgY2FzZSAnXFwnOg0KKyAgICAgICAgICAgICAgICBpZiAoIGJvbCApew0KKyAg ICAgICAgICAgICAgICAgICAqaCA9ICcgJzsrK2g7DQorICAgICAgICAgICAgICAgICAgICpoID0g JyAnOysraDsNCisgICAgICAgICAgICAgICAgfQ0KKyAgICAgICAgICAgICAgICBtb2RlID0gMjsN CisgICAgICAgICAgICAgICAgYnJlYWs7DQorICAgICAgICAgICAgZGVmYXVsdDoNCisgICAgICAg ICAgICAgICAgaWYgKCBib2wgKXsNCisgICAgICAgICAgICAgICAgICAgKmggPSAnICc7KytoOw0K KyAgICAgICAgICAgICAgICAgICAqaCA9ICcgJzsrK2g7DQorICAgICAgICAgICAgICAgIH0NCisg ICAgICAgICAgICAgICAgKmggPSAqbTsNCisgICAgICAgICAgICAgICAgKytoOw0KKyAgICAgICAg ICAgICAgICBicmVhazsNCisgICAgICAgICAgfQ0KKyAgICAgICAgICBicmVhazsNCisgICAgICAg IGNhc2UgMTogLyogYWZ0ZXIgLiBhdCBib2wgKi8NCisNCisgICAgICAgICAgc3dpdGNoKCptKXsN CisgICAgICAgICAgICBjYXNlICdcXCc6DQorICAgICAgICAgICAgICAgIHdoaWxlKCAqbSAhPSAn XG4nICYmICptICE9ICdccicgJiYgKm0gKSsrbTsNCisgICAgICAgICAgICAgICAgbW9kZSA9IDA7 DQorICAgICAgICAgICAgICAgIGJyZWFrOw0KKyAgICAgICAgICAgIGNhc2UgJ0InOg0KKyAgICAg ICAgICAgICAgICAgICArK207IA0KKyAgICAgICAgICAgICAgICAgICAqaCA9ICcgJzsrK2g7DQor ICAgICAgICAgICAgICAgICAgIG1vZGUgPSAwOw0KKyAgICAgICAgICAgICAgICAgICBicmVhazsg ICANCisgICAgICAgICAgICBjYXNlICdJJzoNCisgICAgICAgICAgICAgICAgICAgIC8qIHJlbW92 ZSBwcmVjZWRpbmcgZW9sICovDQorICAgICAgICAgICAgICAgICAgICBpZiAoICoobSsxKSAhPSAn UCcgKXsNCisgICAgICAgICAgICAgICAgICAgICAgICAtLWg7DQorICAgICAgICAgICAgICAgICAg ICAgICAgd2hpbGUgKCAoKmggPT0gJ1xuJyB8fCAqaCA9PSAnXHInKSAmJiBoID4gdWl0ICktLWg7 DQorICAgICAgICAgICAgICAgICAgICAgICAgKytoOw0KKyAgICAgICAgICAgICAgICAgICAgfQ0K Kw0KKyAgICAgICAgICAgICAgICAgICAgLyogc2tpcCAuSXggKi8NCisgICAgICAgICAgICAgICAg ICAgIGZvcig7Km0gIT0gJyAnICYmICptICE9ICdcbicgJiYgKm0gIT0gJ1xyJzsgKyttKTsgDQor DQorICAgICAgICAgICAgICAgICAgICAvKiBjb3B5IGxpbmUgdXAgdG8gRU9MICovDQorDQorICAg ICAgICAgICAgICAgICAgICBmb3IoOyptICE9ICdcbicgJiYgKm0gIT0gJ1xyJyAmJiAqbTsgKytt LCArK2gpKmggPSAqbTsNCisNCisgICAgICAgICAgICAgICAgICAgIC8qIGlmIGxpbmUgZW5kcyBp biAuLCB0aGlzIGlzIGFuIEVPTCAqLw0KKw0KKyAgICAgICAgICAgICAgICAgICAgaWYgKCAqKGgt MSkgPT0gJy4nKXsNCisgICAgICAgICAgICAgICAgICAgICAgICAgLS1oOyANCisgICAgICAgICAg ICAgICAgICAgICAgICAgLS1tOw0KKyAgICAgICAgICAgICAgICAgICAgfWVsc2V7DQorICAgICAg ICAgICAgICAgICAgICAgICAgLyogaWYgbGluZSBkb2VzIG5vdCBlbmQgaW4gLiwgc2tpcCBFT0wg aW4gc291cmNlICovDQorDQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCAqKG0rMSkgPT0g J1xuJyB8fCAqKG0rMSkgPT0gJ1xyJykrK207DQorICAgICAgICAgICAgICAgICAgICB9DQorICAg ICAgICAgICAgICAgICAgICBtb2RlID0gMDsNCisgICAgICAgICAgICAgICAgICAgIGJyZWFrOw0K KyAgICAgICAgICAgIGNhc2UgJ1MnOg0KKyAgICAgICAgICAgICAgICAgaWYgKCAqKG0rMSkgPT0g J0gnICl7DQorICAgICAgICAgICAgICAgICAgICAqaCA9ICdcbic7KytoOw0KKyAgICAgICAgICAg ICAgICAgICAgaWYgKCBzdHJuY21wKCBtKzMgLCJOQU1FIiw0KSA9PSAwIHx8IA0KKyAgICAgICAg ICAgICAgICAgICAgICAgICBzdHJuY21wKCBtKzMgLCJTWU5PUFNJUyIsOCkgPT0gMCB8fA0KKyAg ICAgICAgICAgICAgICAgICAgICAgICBzdHJuY21wKCBtKzMgLCJERVNDUklQVElPTiIsMTEpID09 IDAgKXsNCisgICAgICAgICAgICAgICAgICAgICAgICB3aGlsZSggKm0gIT0gJ1xuJyAmJiAqbSAh PSAnXHInKSsrbTsNCisgICAgICAgICAgICAgICAgICAgICAgICBtb2RlID0gMDsNCisgICAgICAg ICAgICAgICAgICAgIH1lbHNlew0KKyAgICAgICAgICAgICAgICAgICAgICAgICsrbTsNCisNCisg ICAgICAgICAgICAgICAgICAgICAgICAvKiB3cml0ZSBoZWxwIGxldmVsLCBhbmQgZmxhZyBpdCAq Lw0KKw0KKyAgICAgICAgICAgICAgICAgICAgICAgICpoID0gJzAnICsgYmFzZV9sZXZlbCArIDE7 KytoOw0KKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybl9zdGF0dXMgfD0gMjsNCisNCisg ICAgICAgICAgICAgICAgICAgICAgICAqaCA9ICcgJzsrK2g7IA0KKw0KKyAgICAgICAgICAgICAg ICAgICAgICAgIC8qIHNraXAgSCAob3Igd2hhdGV2ZXIgYWZ0ZXIgUykgYW5kIGJsYW5rICovDQor ICAgICAgICAgICAgICAgICAgICAgICAgKyttOysrbTsNCisNCisgICAgICAgICAgICAgICAgICAg ICAgICBmb3IoOyptICE9ICdcbicgJiYgKm0gIT0gJ1xyJyAmJiAqbTsgKyttLCArK2gpew0KKw0K KyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIHdyaXRlIGhlbHAgbGFiZWwgaW4gbG93ZXJj YXNlLCBza2lwIHF1b3RlcyAqLw0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGZpbGwg YmxhbmtzIHdpdGggdW5kZXJzY29yZXMgKi8NCisNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICBpZiAoICptICE9ICdcIicgKXsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpo ID0gdG9sb3dlciggKm0gKTsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICgq aCA9PSAnICcpICpoID0gJ18nOyAgICANCisgICAgICAgICAgICAgICAgICAgICAgICAgICB9ZWxz ZXsNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0taDsNCisgICAgICAgICAgICAg ICAgICAgICAgICAgICB9ICAgIA0KKyAgICAgICAgICAgICAgICAgICAgICAgIH0gDQorDQorICAg ICAgICAgICAgICAgICAgICAgICAgLyogQWRkIGEgbGluZWZlZWQgb3IgdHdvICovDQorDQorICAg ICAgICAgICAgICAgICAgICAgICAgKmggPSAqbTsrK2g7DQorICAgICAgICAgICAgICAgICAgICAg ICAgKmggPSAqbTsrK2g7DQorDQorICAgICAgICAgICAgICAgICAgICAgICAgbW9kZSA9IDA7DQor ICAgICAgICAgICAgICAgICAgICB9ICAgDQorICAgICAgICAgICAgICAgICB9DQorICAgICAgICAg ICAgICAgICBicmVhazsNCisgICAgICAgICAgICBjYXNlICdUJzoNCisgICAgICAgICAgICAgICAg IGlmICggKihtKzEpID09ICdIJyApew0KKyAgICAgICAgICAgICAgICAgICAgKmggPSAnMCcgKyBi YXNlX2xldmVsOyArK2g7DQorICAgICAgICAgICAgICAgICAgICByZXR1cm5fc3RhdHVzIHw9IDI7 DQorICAgICAgICAgICAgICAgICAgICAqaCA9ICcgJzsrK2g7DQorICAgICAgICAgICAgICAgICAg ICBmb3IgKCBtID0gbSArIDM7ICptICE9ICcgJyAmJiAqbSA7ICsrbSwgKytoICl7DQorICAgICAg ICAgICAgICAgICAgICAgICAgICAqaCA9ICptOw0KKyAgICAgICAgICAgICAgICAgICAgfQ0KKyAg ICAgICAgICAgICAgICAgICAgd2hpbGUoICptICE9ICdcbicgJiYgKm0gIT0gJ1xyJyAmJiAqbSAp KyttOw0KKyAgICAgICAgICAgICAgICAgICAgbW9kZSA9IDA7DQorICAgICAgICAgICAgICAgICB9 DQorICAgICAgICAgICAgICAgICBicmVhazsNCisgICAgICAgICAgICBkZWZhdWx0Og0KKyAgICAg ICAgICAgICAgICArK207DQorICAgICAgICAgICAgICAgIG1vZGUgPSAwOw0KKyAgICAgICAgICAg ICAgICBicmVhazsNCisgICAgICAgICAgIH0NCisgICAgICAgICAgIGJyZWFrOw0KKyAgICAgICAg Y2FzZSAyOiAvKiBhZnRlciBcIHNraXAgdHdvIGNoYXJhY3RlcnMgb3IgcHJpbnQgdGhlIGJhY2tz bGFzaCAqLyAgICAgICAgICAgIA0KKyAgICAgICAgICBzd2l0Y2goKm0pew0KKyAgICAgICAgICAg IGNhc2UgJ1xcJzoNCisgICAgICAgICAgICAgICAgKmggPSAqbTsNCisgICAgICAgICAgICAgICAg KytoOw0KKyAgICAgICAgICAgICAgICBtb2RlID0gMDsNCisgICAgICAgICAgICAgICAgYnJlYWs7 DQorICAgICAgICAgICAgZGVmYXVsdDoNCisgICAgICAgICAgICAgICAgKyttOw0KKyAgICAgICAg ICAgICAgICBtb2RlID0gMDsNCisgICAgICAgICAgICAgICAgYnJlYWs7DQorICAgICAgICAgICB9 DQorICAgICAgICAgICBicmVhazsgICANCisgICAgfSAvKmVuZCBzd2l0Y2ggbW9kZSAqLw0KKw0K KyAgICBib2wgPSAwOw0KKyAgICBpZiAoICptID09ICdcbicgfHwgKm0gPT0gJ1xyJykgYm9sID0g MTsNCisNCit9LyogZW5kIGZvciBtb2RlICovDQorDQorKmggPSAwOw0KKw0KKw0KK2lmICggKHJl dHVybl9zdGF0dXMmMikgKXsNCisgICAgZnByaW50ZiggaGxwLCAiJXNcblxuIiwgdWl0KTsNCit9 ZWxzZXsNCisgICAgZm5hbWVwYXJ0KCBmaWxlc3BlYywgc3ViamVjdG5hbWUsMyk7DQorICAgIGlm ICggKnN1YmplY3RuYW1lICl7DQorICAgICAgICBmcHJpbnRmKCBobHAsICIlZCAlc1xuXG4lc1xu XG4iLCBiYXNlX2xldmVsLCBzdWJqZWN0bmFtZSwgdWl0KTsNCisgICAgfWVsc2V7DQorICAgICAg ICAvKiBObyBmaWxlbmFtZSAoYXMgaXMgdGhlIGNhc2Ugd2l0aCBhIGxvZ2ljYWwpLCB1c2UgZmly c3Qgd29yZCBhcyBzdWJqZWN0IG5hbWUgKi8NCisgICAgICAgIGNoYXIgKm4sKnM7DQorDQorICAg ICAgICBmb3IobiA9IGluOyBpc3NwYWNlKCAqbiApOysrbik7DQorICAgICAgICBmb3IocyA9IHN1 YmplY3RuYW1lOyAhKGlzc3BhY2UoICpuICkpOyArK24sKytzKSpzID0gKm47DQorICAgICAgICAq cyA9IDA7DQorDQorICAgICAgICBmcHJpbnRmKCBobHAsICIlZCAlc1xuXG4lc1xuXG4iLCBiYXNl X2xldmVsLCBzdWJqZWN0bmFtZSwgdWl0KTsNCisgICAgfQ0KK30NCisNCisvKg0KKyBwcmludGYo ICJyZWFkICVkIGZyb20gJXMsIHdyaXR0ZW4gJWQgdG8gaGVscGZpbGUsIHJldHVybl9zdGF0dXMg PSAlZFxuIiwNCisgICAgbGVuLCBmaWxlc3BlYywgc3RybGVuKHVpdCksIHJldHVybl9zdGF0dXMg KTsNCisqLw0KKw0KK2ZyZWUoIG0gKTsgDQorZnJlZSggaCApOyANCisNCityZXR1cm4gKCAxKTsN Cit9DQorDQorLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSov DQorDQoraW50IGNvbnZlcnRtYW5zKCBjaGFyICpmaWxlc3BlYywgY2hhciAqaGxwZmlsZW5hbWUs IGludCBiYXNlX2xldmVsLCBpbnQgYXBwZW5kICkNCit7DQoraW50IHN0YXR1cz0xOw0KK21hblB0 ciAgbWFucm9vdD1OVUxMLCBtOw0KK0ZJTEUgICAgKmhscDsNCisNCitpZiAoIGFwcGVuZCApew0K KyAgICBobHAgPSBmb3BlbiggaGxwZmlsZW5hbWUsImErIik7DQorfWVsc2V7DQorICAgIGhscCA9 IGZvcGVuKCBobHBmaWxlbmFtZSwidyIpOw0KK30NCisNCitpZiAoIGhscCA9PSBOVUxMICkgcmV0 dXJuKCB2YXhjJGVycm5vICk7DQorDQorc3RhdHVzID0gbGlzdG9mbWFucyggZmlsZXNwZWMsICZt YW5yb290ICk7DQoraWYgKCAhKHN0YXR1cyYxKSApIHJldHVybiggc3RhdHVzICk7DQorDQorZm9y ICggbSA9IG1hbnJvb3QgOyBtIDsgbSA9IG0tPm5leHQgKXsNCisgICAgc3RhdHVzID0gY29udmVy dG1hbiggbS0+ZmlsZW5hbWUsIGhscCAsIGJhc2VfbGV2ZWwgKTsNCisgICAgaWYgKCAhKHN0YXR1 cyYxKSApew0KKyAgICAgICAgZnByaW50ZihzdGRlcnIsIkNvbnZlcnRtYW4gb2YgJXMgd2VudCB3 cm9uZ1xuIiwgbS0+ZmlsZW5hbWUpOw0KKyAgICAgICAgYnJlYWs7DQorICAgIH0NCit9DQorZnJl ZW1hbiggJm1hbnJvb3QgKTsNCityZXR1cm4oIHN0YXR1cyApOw0KK30NCisNCisvKi0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCit2b2lkIHByaW50X2hlbHAo KQ0KK3sNCisgICBmcHJpbnRmKCBzdGRlcnIsICJVc2FnZTogWy1hXSBbLWIgeF0gY29udmVydG1h biA8bWFuZmlsZXNwZWM+IDxoZWxwdGV4dGZpbGU+XG4iICk7DQorICAgZnByaW50Ziggc3RkZXJy LCAiICAgICAgIC1hIGFwcGVuZCA8bWFuZmlsZXNwZWM+IHRvIDxoZWxwdGV4dGZpbGU+XG4iICk7 DQorICAgZnByaW50Ziggc3RkZXJyLCAiICAgICAgIC1iIDxiYXNlbGV2ZWw+IGlmIG5vIGhlYWRl cnMgZm91bmQgY3JlYXRlIG9uZSB3aXRoIGxldmVsIDxiYXNlbGV2ZWw+XG4iICk7DQorICAgZnBy aW50Ziggc3RkZXJyLCAiICAgICAgICAgIGFuZCB0aGUgZmlsZW5hbWUgYXMgdGl0bGUuXG4iICk7 DQorfQ0KKy8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0K Kw0KK21haW4gKCBpbnQgYXJnYywgY2hhciAqKmFyZ3YgKQ0KK3sNCitpbnQgICAgIHN0YXR1czsN CitpbnQgICAgIGksajsNCitpbnQgICAgIGFwcGVuZCwgYmFzZV9sZXZlbCwgYmFzZWNoYW5nZTsN CitjaGFyICAgICptYW5maWxlPU5VTEw7DQorY2hhciAgICAqaGVscGZpbGU9TlVMTDsNCisNCitp ZiAoIGFyZ2MgPCAzICl7DQorICAgcHJpbnRfaGVscCgpOw0KKyAgIHJldHVybiggMSApIDsNCit9 DQorDQorYXBwZW5kICAgICA9IDA7DQorYmFzZV9sZXZlbCA9IDE7DQorYmFzZWNoYW5nZSA9IDA7 DQorDQorZm9yICggaSA9IDE7IGkgPCBhcmdjOyArK2kpew0KKyAgICBpZiAoIGFyZ3ZbaV1bMF0g PT0gJy0nICl7DQorICAgICAgICBmb3IoIGogPSAxOyBhcmd2W2ldW2pdIDsgKytqICl7DQorICAg ICAgICAgICAgc3dpdGNoKCBhcmd2W2ldW2pdICl7DQorICAgICAgICAgICAgICAgIGNhc2UgJ2En Og0KKyAgICAgICAgICAgICAgICAgICAgYXBwZW5kID0gMTsNCisgICAgICAgICAgICAgICAgICAg IGJyZWFrOw0KKyAgICAgICAgICAgICAgICBjYXNlICdiJzogICANCisgICAgICAgICAgICAgICAg ICAgIGlmICggKGkrMSkgPCBhcmdjICl7DQorICAgICAgICAgICAgICAgICAgICAgICAgYmFzZV9s ZXZlbCA9IGF0b2koIGFyZ3ZbIGkgKyAxIF0gKTsNCisgICAgICAgICAgICAgICAgICAgICAgICBi YXNlY2hhbmdlID0gMTsNCisgICAgICAgICAgICAgICAgICAgIH0NCisgICAgICAgICAgICAgICAg ICAgIGJyZWFrOw0KKyAgICAgICAgICAgIH0NCisgICAgICAgIH0NCisgICAgICAgIGlmICggYmFz ZWNoYW5nZSl7DQorICAgICAgICAgICAgYmFzZWNoYW5nZSA9IDA7DQorICAgICAgICAgICAgaSA9 IGkgKyAxOw0KKyAgICAgICAgfQ0KKyAgICB9ZWxzZXsNCisgICAgICAgIGlmICggbWFuZmlsZSA9 PSBOVUxMICl7DQorICAgICAgICAgICAgbWFuZmlsZSA9IHN0cmR1cCggYXJndltpXSk7DQorICAg ICAgICB9IGVsc2UgaWYgKCBoZWxwZmlsZSA9PSBOVUxMICl7DQorICAgICAgICAgICAgaGVscGZp bGUgPSBzdHJkdXAoIGFyZ3ZbaV0pOw0KKyAgICAgICAgfSBlbHNlIHsNCisgICAgICAgICAgICBm cHJpbnRmKCBzdGRlcnIsICJVbnJlY29nbml6ZWQgcGFyYW1ldGVyIDogJXNcbiIsIGFyZ3ZbaV0p Ow0KKyAgICAgICAgfQ0KKyAgICB9DQorfQ0KKw0KKw0KKy8qIGZwcmludGYoIHN0ZGVyciwibWFu ZmlsZTogJXMsIGhlbHBmaWxlOiAlcywgYXBwZW5kOiAlZCwgYmFzZV9sZXZlbCA6ICVkXG4iLA0K KyAgICAgICAgbWFuZmlsZSwgaGVscGZpbGUsIGFwcGVuZCwgYmFzZV9sZXZlbCk7DQorKi8NCisN CitzdGF0dXMgPSBjb252ZXJ0bWFucyggbWFuZmlsZSwgaGVscGZpbGUsIGJhc2VfbGV2ZWwsIGFw cGVuZCApOw0KKw0KK2ZyZWUoIG1hbmZpbGUgKTsNCitmcmVlKCBoZWxwZmlsZSApOw0KKw0KK3Jl dHVybiggc3RhdHVzICk7DQorfQ0KKw0KKyANCmRpZmYgLS1naXQgYS92bXMvcmVhZG1lLnZtcyBi L3Ztcy9yZWFkbWUudm1zDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMC4uZWEx MWVjMw0KLS0tIC9kZXYvbnVsbA0KKysrIGIvdm1zL3JlYWRtZS52bXMNCkBAIC0wLDAgKzEsMzE5 IEBADQorKlRoZXNlIGFyZSB0aGUgcG9ydGluZyBub3RlcyB0byBPcGVuVk1TLCBhcyBvZiA3IEFw cmlsIDIwMTANCitieSBKb3NlIEJhYXJzLiBUaGlzIGZpbGUgd2lsbCBiZSBpbnN0YWxsZWQgYXMg DQorbGlic3NoMioucmVsZWFzZV9ub3RlcyBieSB0aGUgcHJvZHVjdCBpbnN0YWxsIGtpdC4NCisN CisNCitMSUJTU0gyIA0KKy0tLS0tLS0NCisNCitMSUJTU0gyIGlzIGEgY2xpZW50LXNpZGUgbGli cmFyeSB3cml0dGVuIGluIEMgdGhhdCBhaW1zIHRvIA0KK2ltcGxlbWVudCB0aGUgU1NIMiBwcm90 b2NvbC4gSXQgaXMgYW4gb3BlbiBzb3VyY2UgcHJvamVjdCwgDQordG8gYmUgZm91bmQgYXQgaHR0 cDovL2xpYnNzaDIub3JnLiANCisNCitHTlYNCistLS0NCisNCitUaGUgbGlicmFyeSB1c2VzIHRo ZSBHTlYgcHJlZml4LCBvbiBhZHZpc2Ugb2YgdGhlIGtpbmQgc3VwcG9ydGVyDQorb2YgdGhlIEdO ViBwcm9qZWN0LCBKb2huIE1hbG1iZXJnLg0KKw0KK0luc3RhbGxpbmcgdGhlIFBDU0kga2l0DQor PT09PT09PT09PT09PT09PT09PT09PT0NCisNCitQcmVyZXF1aXNpdGVzIA0KKy0tLS0tLS0tLS0t LS0NCistIFZNUyB2ZXJzaW9uIDguMyBtaW5pbWFsLiANCisgIFNlZSB0aGUgcmVtYXJrcyBhdCBw cmVyZXF1aXNpdGVzIGZvciBidWlsZGluZyB0aGUga2l0DQorLSBUQ1AvSVAgc3RhY2ssIGJvdGgg VENQL0lQIHNlcnZpY2VzIGFuZCBNdWx0aW5ldCBzaG91bGQgd29yay4gDQorICBTZWUgdGhlIHJl bWFya3MgYXQgcHJlcmVxdWlzaXRlcyBmb3IgYnVpbGRpbmcgdGhlIGtpdA0KKy0gSFAgT1BFTlNT TCBWMS4zIG1pbmltYWwuIA0KKyAgU2VlIHRoZSByZW1hcmtzIGF0IHByZXJlcXVpc2l0ZXMgZm9y IGJ1aWxkaW5nIHRoZSBraXQNCistIEpFTSAgWkxJQiBWMS4yLTNFMSBtaW5pbWFsLiANCisgIFNl ZSB0aGUgcmVtYXJrcyBhdCBwcmVyZXF1aXNpdGVzIGZvciBidWlsZGluZyB0aGUga2l0DQorICAN CitUaGUgZmlyc3QgdGhyZWUgZGVwZW5kZW5jaWVzIGFyZSB0ZXN0ZWQgYXQgaW5zdGFsbGF0aW9u IHRpbWUsIGFuZCANCitpbnN0YWxsYXRpb24gd2lsbCBmYWlsIGlmIGFueSB0aGVzZSBwcm9kdWN0 cyBhcmUgbm90IGluc3RhbGxlZC4NCitUaGUgWkxJQiBkZXBlbmRlbmN5IGlzIG5vdCB0ZXN0ZWQg YnkgdGhlIHByb2R1Y3QgaW5zdGFsbGF0aW9uDQorcHJvY2VkdXJlLCBhcyBsaWJzc2gyIHdpbGwg cHJvYmFibHkgYmUgaW5zdGFsbGVkIGFzIHBhcnQgb2YgDQorbXVsdGlwbGUgbGlicmFyaWVzIGlu Y2x1ZGluZyB6bGliLg0KKw0KK0luc3RhbGwNCistLS0tLS0tDQorDQorDQorVGhlIGtpdCB3aWxs IGluc3RhbGwgZ252JGxpYnNzaDIuZXhlIGluIGEgZGlyZWN0b3J5IHRyZWUgdGhhdCBtaWdodCAN CithbHJlYWR5IGJlIGF2YWlsYWJsZSBvbiB5b3VyIHN5c3RlbSBpZiB5b3UgaGF2ZSBpbnN0YWxs ZWQgb3RoZXIgZ252KiANCitsaWJyYXJpZXMgb3IgdXRpbGl0aWVzLiANCisNCitUaGUgZGlyZWN0 b3J5IHRyZWUgZm9yIGdudiRsaWJzc2gyLmV4ZSB3aWxsIGJlIGxpa2UgdGhpczoNCisNCitbZ252 XSAtLSBbdXNyXSAtLSBbaW5jbHVkZV0gLS0gW2xpYnNzaDJdIGluY2x1ZGUgZmlsZXMgZm9yIGxp YnNzaDINCisgICAgICAgICAgICAgICAgICBbbGliXSBnbnYkbGlic3NoMl94X3lfei5leGUNCisg ICAgICAgICAgICAgICAgICBbc2hhcmVdICAgLS0gW2RvY10gLS0gW2xpYnNzaDJdIGxpYnNzaDIu aGxiLCANCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsZWFzZSBu b3RlcyAodGhpcyBmaWxlKSwgDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGxpYnNzaDIgcmVsZWFzZSBub3RlcyAgIA0KKw0KK29wdGlvbmFsOg0KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZXhhbXBsZV0gbGlic3NoMl9leGFtcGxlcy14 X3lfei5iY2sgDQorICAgICAgICAgICAgICAgICAgW2NvbW1vbl9zcmNdIGxpYnNzaDIteF95X3pf c3JjLmJjaw0KKw0KK0J5IGRlZmF1bHQsIGl0IHdpbGwgaW5zdGFsbCB0aGUgc2hhcmVkIGltYWdl IGFuZCBpbmNsdWRlIGZpbGVzIHRvIA0KK1NZUyRDT01NT046W0dOVi4uLl0uDQorDQorWW91IGNh biBvdmVycmlkZSB0aGlzIGRlc3RpbmF0aW9uIGJ5IHNwZWNpZnlpbmcgdGhlIGRlc3RpbmF0aW9u DQorZGlyZWN0b3J5IGFmdGVyIC9ERVNUSU5BVElPTj0gb24gdGhlIHByb2R1Y3QgaW5zdGFsbCBj b21tYW5kIGxpbmUuDQorVGhpcyBpcyBwYXJ0aWN1bGFybHkgb2YgdXNlIHdoZW4gaW5zdGFsbGlu ZyB0aGUgbGlicmFyeSBvbiBhIGNsdXN0ZXINCit3aXRob3V0IGEgY29tbW9uIHN5c3RlbSBkaXNr Lg0KKw0KK1BsZWFzZSBpZ25vcmUgdGhlIGZvbGxvd2luZyB3YXJuaW5ncywgYXMgdGhlIGtpdCBp cyBub3Qgc2lnbmVkIDoNCisNCislUENTSS1JLUNBTk5PVFZBTCwgY2Fubm90IHZhbGlkYXRlIGRl djpbZGlyXUpDQi1BWFBWTVMtTElCU1NIMi1WMDEwMi0wNUQyMDEwMDQwMi0xLlBDU0kNCistUENT SS1JLU5PVFNJR05FRCwgcHJvZHVjdCBraXQgaXMgbm90IHNpZ25lZCBhbmQgdGhlcmVmb3JlIGhh cyBubyBtYW5pZmVzdCBmaWxlDQorDQorT3B0aW9uYWxseSwgeW91IGNhbiBpbnN0YWxsIGEgYmFj a3VwIHNhdmVzZXQgd2l0aCBzb21lIHByb2dyYW1taW5nIGV4YW1wbGVzLA0KK29yIGEgYmFja3Vw byBzYXZlc2V0IHdpdGggdGhlIGNvbXBsZXRlIGxpYnNzaDIgc291cmNlIHRyZWUuDQorIA0KK3lv dSB3aWxsIG5lZWQgdG8gYW5zd2VyICdOTycgdG8gdGhlIHF1ZXN0aW9uIA0KKydEbyB5b3Ugd2Fu dCB0aGUgZGVmYXVsdCBmb3IgYWxsIG9wdGlvbnMnLiANCisNCithbmQgJ1lFUycgdG8gZWl0aGVy IG9yIGJvdGggdGhlIGZvbGxvd2luZyBxdWVzdGlvbnM6DQorDQorICAgIERvIHlvdSB3YW50IHRo ZSBsaWJzc2gyIEMgcHJvZ3JhbW1pbmcgZXhhbXBsZXMgPyAgW05PXQ0KKw0KKyAgICBEbyB5b3Ug d2FudCB0aGUgY29tcGxldGUgbGlic3NoMiBzb3VyY2UgdHJlZSA/ICBbTk9dDQorDQorDQorUG9z dCBpbnN0YWxsYXRpb24gdGFza3MNCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KKw0KK0FsdGhv dWdoIHdlIHdpbGwgdHJ5IHRvIG1haW50YWluIHVwd2FyZCBjb21wYXRpYmlsaXR5IG9mIGxpYnNz aDIsDQordGhpcyBjYW4gbm90IGJlIGd1YXJhbnRlZWQgYnkgdGhlIGxpYnNzaDIgcHJvamVjdCBp dHNlbGYgZm9yIE9wZW5WTVMsDQorbm9yIGV0ZXJuYWxseSBieSB1cy4NCisNCitUbyB1c2UgbGli c3NoMiBlZmZlY3RpdmVseSwgeW91IHdpbGwgaGF2ZSB0byBkZWZpbmUgYSBzeXN0ZW0gbG9naWNh bA0KK3RvIHBvaW50IHRvIHRoZSBzaGFyZWQgaW1hZ2UuIElmIHlvdSBhcmUgd2lsbGluZyB0byB0 YWtlIHRoZSBnYW1ibGUsDQorZGVmaW5lIHRoaXMgbG9naWNhbCBpbiB5b3VyIHN5c3RhcnR1cCBs aWtlIHNvOg0KKw0KKyQgZGVmaW5lL3N5c3RlbS9leGVjdXRpdmUgZ252JGxpYnNzaDIgZGV2Oltk aXIuLl1nbnYkbGlic3NoMl94X3lfei5leGUNCisNCitPcHRpb25hbGx5LCB5b3UgY2FuIGluc3Rh bGwgdGhlIGV4ZWN1dGJhbGUgbGlrZSBzbzoNCisNCiskIG1jIHN5c2dlbiBpbnN0YWxsIGRldjpb ZGlyLi5dZ252JGxpYnNzaDJfeF95X3ouZXhlL29wZW4vc2hhcmUvaGVhZGVyDQorDQorTGluayB5 b3VyIHByb2dyYW1zIGFnYWluc3QgZ252JGxpYnNzaDIsIGFuZCB3aGVuIHVwZ3JhZGluZyBsaWJz c2gyIA0KK3Rlc3QgdGhvcm91Z2hseS4NCisNCitJZiB5b3Ugd2FudCB0byBiZSBleHRyYSBjYXV0 aW91cyBkZWZpbmUgYSBzeXN0ZW0gbG9naWNhbCBsaWtlIHRoaXM6DQorDQorJCBkZWZpbmUvc3lz dGVtL2V4ZWN1dGl2ZSBnbnYkbGlic3NoMl94X3lfeiBkZXY6W2Rpci4uXWdudiRsaWJzc2gyX3hf eV96LmV4ZQ0KKw0KK0xpbmsgIHByb2dyYW1zIGFnYWluc3QgZ252JGxpYnNzaDJfeF95X3osIGFu ZCB3aGVuIHVwZ3JhZGluZyBsaWJzc2gyIA0KK2xpbmsgYWdhaW5zdCBuZXcgdmVyc2lvbnMuIA0K Kw0KK0l0IGlzIHByb2JhYmx5IG1vcmUgY29udmVuaWVudCBpbiB0aGUgbGFzdCBjYXNlIHRvIGxp bmsgYWdhaW5zdCB0aGUgb2JqZWN0IA0KK2xpYnJhcnkgcHJvdmlkZWQgaW4gdGhlIHNvdXJjZSBi YWNrdXAgc2F2ZXNldC4gQm90aCBhbiB1cHBlcmNhc2UgYW5kIGENCittaXhlZCBjYXNlIG9iamVj dCBsaWJyYXJ5LCBjYWxsZWQgbGlic3NoMi5vbGIgYW5kIGxpYnNzaDJfYXNpcy5vbGIgDQorYXJl IHByb3ZpZGVkLg0KKw0KKw0KK0NvbXBpbGluZyBhbmQgbGlua2luZyBhZ2FpbnN0IGxpYnNzaDIN CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQorDQorVGhlICBzaGFyZWQg aW1hZ2UgbGlicmFyeSBoYXMgYSB2ZWN0b3IgdGFibGUgd2l0aCBib3RoIHVwcGVyY2FzZSBhbmQg DQorbWl4ZWQgY2FzZSBlbnRyeSBwb2ludHMsIGFsbG93aW5nIHRvIGxpbmsgZGlyZWN0bHkgYWdh aW5zdCB0aGUgc2hhcmVkIA0KK2ltYWdlIHdldGhlciB5b3UgbmVlZCB0aGUgL05BTUVTPUFTX0lT IG9yIG5vdC4NCisNCitUbyBsaW5rIHN1Y2Nlc3NmdWxseSwgeW91IE1VU1QgdXNlIC9OQU1FUz1z aG9ydGVuZWQsIGFzIHNvbWUgZnVuY3Rpb24NCituYW1lcyBpbiBsaWJzc2gyIGFyZSBsb25nZXIg dGhhbiB0aGUgVk1TIG1heGltdW0gb2YgMzIgY2hhcmFjdGVycy4NCisNCitJZiB5b3UgY2hvc2Ug dG8gaW5zdGFsbCB0aGUgZXhhbXBsZXMsIHlvdSBjYW4gdW5wYWNrIHRoZSBiYWNrdXANCitzYXZl c2V0IGJ5IA0KKw0KK2JhY2t1cC9zZWw9Ki5jIGRldmljZTpbZ252LnVzci5zaGFyZS5kb2MubGli c3NoMi5leGFtcGxlc11saWJzc2gyX2V4YW1wbGVzLXhfeV96LmJjayAtDQorIFtdDQorDQorVGhl eSBjYW4gYnkgY29tcGlsZWQgYW5kIGxpbmtlZCBieSB0aGVzZSBjb21tYW5kcyAoIHByb3ZpZGVk IHlvdSBoYXZlIGRlZmluZWQNCit0aGUgZ252JGxpYnNzaDIgbG9naWNhbCkgOg0KKw0KKyQgY2Mv aW5jbHVkZT1kZXY6W2dudi51c3IuaW5jbHVkZS5saWJzc2gyXSB4eHguYy9uYW1lcz1zaG9ydGVu ZWQNCiskIGxpbmsvb3B0PXN5cyRpbnB1dDogeHh4Lm9iag0KK2dudiRsaWJzc2gyL3NoYXJlDQor DQorDQorDQorDQorQnVpbGRpbmcgZ252JGxpYnNzaDINCis9PT09PT09PT09PT09PT09PT09PQ0K Kw0KK1lvdSBjYW4gYnVpbGQgZ252JGxpYnNzaDIgeW91cnNlbGYsIHdoaWNoIG1heSBoYXZlIGFk dmFudGFnZXMsIGFzIHRoZSBsaWJyYXJ5IGlzDQoraW4gZnVsbCBkZXZlbG9wbWVudCwgdmVyeSBy ZWd1bGFybHkgbmV3IGZlYXR1cmVzIGFyZSBhZGRlZC4NCisNCitGb3IgcHJvZHVjdGlvbiB1c2Us IGl0IGlzIHByb2JhYmx5IGFkdmlzYWJsZSB0byB1c2UgYSBzdGFibGUgdmVyc2lvbiwgYW5kIA0K K2xpbmsgYWdhaW5zdCB0aGF0LiBUbyBjaGVjayBvdXQgbmV3IGZlYXR1cmVzLCBzdGF0aWNhbGx5 IGxpbmtpbmcgYWdhaW5zdA0KK3RoZSBvYmplY3QgbGlicmFyeSBpcyBwcm9iYWJseSBtb3JlIHBy YWN0aWNhbCwgdG8gYXZvaWQgY29tcGF0aWJpbGl0eQ0KK2lzc3Vlcy4NCisNCisNCitQcmVyZXF1 aXNpdGVzDQorLS0tLS0tLS0tLS0tLQ0KKw0KK1lvdSB3aWxsIG5lZWQgdG8gaGF2ZSB0aGUgZm9s bG93aW5nIGF2YWlsYWJsZToNCisNCistIEFuIEFscGhhIG9yIEl0YW5pdW0gVk1TIHN5c3RlbS4g RHVlIHRvIGRlcGVuZGVuY2llcyBvbiB6bGliLCBzc2wgYW5kIE9EUy01LA0KKyAgc3VwcG9ydCBv biBWQVhlbiB3b3VsZCBiZSBjdW1iZXJzb21lIGF0IGxlYXN0Lg0KKw0KKy0gVk1TIHZlcnNpb24g OC4zIG1pbmltYWwuIFRoaXMgaXMgYSByZXF1aXJlbWVudCBvZiBnbnYkemxpYnNoci5leGUgYWdh aW5zdCANCisgIHdoaWNoIHNoYXJlZCBpbWFnZSBsaWJyYXJ5IGxpYnNzaDIgaXMgbGlua2VkLiBJ ZiB5b3UgdXNlIGFub3RoZXIgemxpYg0KKyAgdG8gbGluayBhZ2FpbnN0LCB5b3UgY2FuIG1ha2Ug aXQgd29yayB1bmRlciBsb3dlciB2ZXJzaW9ucyBvZiBWTVMuDQorICBJIGhhdmUgbWFkZSBpdCB3 b3JrIG9uIFZNUyA3LjMtMiB3aXRoIG5vdCBhIGxvdCBvZiBkaWZmaWN1bHR5Lg0KKyAgQWxzbywg aWYgeW91IGFyZSBub3QgaW50ZXJlc3RlZCBpbiBjb21wcmVzc2lvbiwgeW91IGNhbiBjaG9vc2Ug bm90DQorICB0byBsaW5rIGFnYWluc3QgemxpYiBhdCBhbGw7IGluIHRoYXQgY2FzZSBjb21tZW50 IG91dCB0aGUgDQorICAjZGVmaW5lICBMSUJTU0gyX0hBVkVfWkxJQiBpbiBsaWJzc2gyX2NvbmZp Zy5oLg0KKw0KKy0gVENQL0lQIHNlcnZpY2VzIG9yIE11bHRpbmV0IGZvciBPcGVuVk1TLg0KKyAg VENQV2FyZSBoYXMgbm90IGJlZW4gdGVzdGVkLg0KKw0KKy0gVGhlIEhQIE9wZW5TU0wgcHJvZHVj dC4gT2YgY291cnNlLCB3aXRoIHR3ZWFraW5nLCB5b3UgY2FuIHByb2JhYmx5IGxpbmsgDQorICBp dCBhZ2FpbnN0IHRoZSBPcGVuU1NMIGxpYnJhcnksIGJ1dCB0aGF0IGlzIG5vdCB3aGF0IEkgaGF2 ZSB1c2VkLg0KKyANCistIEEgQyBjb21waWxlci4gSSBkb24ndCBrbm93IGFueSBvdGhlciB3b3Jr aW5nIEMgY29tcGlsZXJzIHRoYW4gDQorICB0aGUgREVDL0NvbXBhYy9IUC1DIGNvbXBpbGVyIG9u IFZNUy4NCisNCistIEFuIE9EUy01IGRpc2suIFdpdGggdHdlYWtpbmcgeW91J2xsIGdldCBpdCB0 byB3b3JrIG9uIGFuIE9EUy0yDQorICBkaXNrLCBidXQgaXQgaXMgdW5wcmFjdGljYWwgdG8gZG8g c28uDQorDQorLSBBIHZlcnNpb24gb2YgVk1TVEFSIHRoYXQgdW5kZXJzdGFuZHMgT0RTLTUgZGlz a3MgYW5kIGV4dGVuZGVkDQorICBmaWxlbmFtZXMuIExvb2sgaGVyZToNCisgIGh0dHA6Ly9mdHAu cHJvY2Vzcy5jb20vZnRwL3Ztcy1mcmVld2FyZS9maWxlc2Vydi92bXN0YXIuemlwDQorDQorLSBn dW56aXAsIGF2YWlsYWJsZSBmb3IgaW5zdGFuY2UgYXQgU3RldmVuIE0gU2Nod2VkYSdzIHdlYnNp dGU6DQorICBodHRwOi8vYW50aW5vZGUuaW5mby9mdHAvZ3ppcC9nemlwLTFfM18xMmJfdm1zL2d6 aXAtMV8zXzEyYl92bXMuemlwDQorDQorT3B0aW9uYWw6DQorDQorLSBjdXJsLCB0byBiZSBmb3Vu ZCBhdCAgaHR0cDovL2N1cmwuaGF4eC5zZQ0KKyAgWW91IG1pZ2h0IHdhbnQgdG8gdXNlIGN1cmwg dG8gZG93bmxvYWQgdGhlIGxpYnNzaDIga2l0IGRpcmVjdGx5DQorICB0byB5b3UgVk1TIG1hY2hp bmUuIEludGVyZXN0aW5nbHksIHNmdHAgaW4gY3VybCBpcyBpbXBsZW1lbnRlZCB1c2luZw0KKyAg bGlic3NoMiwgc29vbiB0byBiZSBleHBlY3RlZCBvbiBWTVMgYXMgd2VsbCwgaG9wZWZ1bGx5Lg0K Kw0KK0Rvd25sb2FkaW5nIGxpYnNzaDINCistLS0tLS0tLS0tLS0tLS0tLS0tDQorDQorQXQgdGhl IHdlYnNpdGUgb2YgbGlic3NoMiwgeW91IGNhbiBmaW5kIHN0YWJsZSBhbmQgZGFpbHkgZ3ppcHBl ZA0KK3RhcmJhbGxzLiBpZiB5b3UgaGF2ZSBhIGNvbXB1dGVyIGNvbm5lY3RlZCB0byBpbnRlcm5l dCB5b3UgY2FuIA0KK2Rvd25sb2FkIGEgZGFpbHkgYnVpbGQgeW91cnNlbGYgYnkgYSBwcm9jZWR1 cmUgdGhhdCBsb29rcyBhIGxvdCBsaWtlDQordGhpcyAoIGZpbGwgb3V0IHlvdXIgb3duIHByb3h5 IHVzZXIvcGFzc3dvcmQsIHNldCB1cCByaWdodCBzeW1ib2xzIHRvDQorZ3VuemlwLCB2bXN0YXIg YW5kIGN1cmwgYW5kIHNldCB1cCB0aGUgbGlic3NoMiBidWlsZCB2ZXJzaW9uKToNCisNCiskIGxp YnNzaDJfdmVyc2lvbiA9ICIxLjIuNiINCiskIQ0KKyQgcHJveHlfbGluZSA9ICIgIiItVSIiICIi Jydwcm94eV91c2VycGFzcyciIiAgIiIteCIiICIiJydwcm94eV9ob3N0cG9ydCciIiAiDQorJCEN CiskIGN1cnJlbnRkYXkgPSBmJGN2dGltZSgsLCJkYXRlIikgLSAiLSIgLSAiLSINCiskIQ0KKyQg c2V0IGRlZiBteWRldjpbbXlkaXIubGlic3NoMl0NCiskIQ0KKyQgaWYgZiRzZWFyY2goImxpYnNz aDItJydsaWJzc2gyX3ZlcnNpb24nLScnY3VycmVudGRheScudGFyLmd6IikgLm5lcy4gIiIgDQor JCB0aGVuIA0KKyQgICBkZWxldGUgbGlic3NoMi0nbGlic3NoMl92ZXJzaW9uJy0nY3VycmVudGRh eScudGFyLmd6OyoNCiskIGVuZGlmDQorJCENCiskIGN1cmwgJ3Byb3h5X2xpbmUnICJodHRwOi8v bGlic3NoMi5vcmcvc25hcHNob3RzL2xpYnNzaDItJydsaWJzc2gyX3ZlcnNpb24nLScnY3VycmVu dGRheScudGFyLmd6IiAtDQorICAgICAgICAgICAgICAgICAgICAtbyBsaWJzc2gyLSdsaWJzc2gy X3ZlcnNpb24nLSdjdXJyZW50ZGF5Jy50YXIuZ3oNCiskIQ0KKyQhDQorJCBpZiBmJHNlYXJjaCgi bGlic3NoMi0nJ2xpYnNzaDJfdmVyc2lvbictJydjdXJyZW50ZGF5Jy50YXIuOyIpIC5uZXMuICIi IA0KKyQgdGhlbiANCiskICAgZGVsZXRlIGxpYnNzaDItJ2xpYnNzaDJfdmVyc2lvbictJ2N1cnJl bnRkYXknLnRhci47Kg0KKyQgZW5kaWYNCiskIQ0KKyQgZ3VuemlwIGxpYnNzaDItJ2xpYnNzaDJf dmVyc2lvbictJ2N1cnJlbnRkYXknLnRhci5neg0KKyQhDQorJCB0YXJmaWxlID0gZiRzZWFyY2go ImxpYnNzaDItJydsaWJzc2gyX3ZlcnNpb24nLScnY3VycmVudGRheScudGFyLjsiKQ0KKyQgdm1z dGFyIHhmICd0YXJmaWxlJyANCisNCitEb3dubG9hZGluZyBhIHN0YWJsZSBidWlsZCB3aWxsIG5l ZWQgeW91IHRvIGdldCByaWQgb2YgdGhlIGN1cnJlbnRkYXkuDQorDQorQWZ0ZXIgdGhlIGRvd25s b2FkLCB5b3Ugc2hvdWxkIGhhdmUgYSBkaXJlY3RvcnkgdHJlZSB3aXRoIGEgdG9wbGV2ZWwNCitk aXJlY3RvcnkgY2FsbGVkIFtsaWJzc2gyLXgueS56LXl5eXltbWRkXS4NCitPbmUgb2YgdGhlIHN1 YmRpcmVjdG9yaWVzIGlzIGNhbGxlZCB2bXMuDQorDQorR2V0dGluZyB0aGUgbGlic3NoMiBzb3Vy Y2VzIGZyb20gdGhlIHNvdXJjZSBiYWNrdXAgaW4gdGhlIGJpbmFyeSBraXQNCistLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQ0KKw0KK0R1cmluZyBpbnN0YWxsYXRpb24gb2YgdGhlIGJpbmFyeSBraXQsIHlvdSBhcmUgZ2l2 ZW4gdGhlIG9wdGlvbg0KK29mIGluc3RhbGxpbmcgdGhlIHNvdXJjZXMuIElmIGNob3NlbiwgYSBi YWNrdXAgc2F2ZXNldCB3aXRoIA0KK3RoZSBjb21wbGV0ZSBsaWJzc2gyIGRpcmVjdG9yeSBpcyBt YWRlIGF2YWlsYWJsZSBpbiANCitbZ252LmNvbW1vbl9zcmNdLg0KKw0KK0J5IHJlc3RvcmluZyB0 aGlzIGJhY2t1cCBzYXZlc2V0LCB5b3UgZW5kIHVwIHdpdGggdGhlIHNhbWUNCitzZXQgb2YgZmls ZXMgYXMgYnkgdGhlIGRpcmVjdCBkb3dubG9hZCBmcm9tIGxpYnNzaDIub3JnLg0KKw0KKw0KK0J1 aWxkaW5nIHRoZSBsaWJyYXJ5DQorLS0tLS0tLS0tLS0tLS0tLS0tLS0NCisNCitUbyBhdm9pZCBh bGwga2luZHMgb2YgbWlzdW5kZXJzdGFuZGluZ3MgY2F1c2VkIGJ5IGZpcmV3YWxscyB0aGlua2lu ZyB0aGF0DQorYSAuY29tIGZpbGUgbXVzdCBiZSBhbiBNUy1ET1MgZXhlY3V0YWJsZSwgYWxsIGNv bW1hbmQgcHJvY2VkdXJlcyBhcmUgY2FsbGVkDQorLmRjbC4NCisNCitHbyB0byB0aGUgdm1zIHN1 YmRpcmVjdG9yeSBpbiB0aGUgZG93bmxvYWQgdHJlZSwgYW5kIGlzc3VlIHRoZSBmb2xsb3dpbmcN Citjb21tYW5kOg0KKw0KK0BsaWJzc2gyX21ha2VfbGliLmRjbA0KKw0KK1RoaXMgc2hvdWxkIHBy b2R1Y2UgbGlic3NoMl94X3lfei5leGUgaW4gdGhpcyBzYW1lIHZtcyBkaXJlY3RvcnkuDQorIA0K Kw0KKw0KK0J1aWxkaW5nIHRoZSBleGFtcGxlcw0KKy0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KKw0K K0EgbnVtYmVyIG9mIGV4YW1wbGVzIGFyZSBhbHNvIHBhcnQgb2YgdGhlIGZ1bGwgbGlic3NoMiBk ZWxpdmVyeS4NCitZb3UgY2FuIGNvbXBpbGUgYW5kIGxpbmsgdGhlbSBlaXRoZXIgYWdhaW5zdCB0 aGUgb2JqZWN0IGxpYnJhcnkNCitwcm9kdWNlZCB3aGVuIGJ1aWxkaW5nIHRoZSBzaGFyZWQgaW1h Z2UsIG9yIGFnYWluc3QgdGhlIHNoYXJlZCBpbWFnZQ0KK3Byb2R1Y2VkIGluIHRoZSBzdGVwIGJl Zm9yZS4NCisNCitZb3UgY2FuIGNvbXBpbGUgb25seSBvbmUgb2YgdGhlIGV4YW1wbGVzIGJ5IGdp dmluZyBvbmx5IHRoZQ0KK25hbWUgcGFydCBvZiB0aGUgZmlsZW5hbWUgb2YgdGhlIGV4YW1wbGUg YXMgcDEgdG8gdGhlIA0KK2J1aWxkIHByb2NlZHVyZToNCisNCitAbGlic3NoMl9tYWtlX2V4YW1w bGUuZGNsIA0KKw0KK29yIGZvciBpbnN0YW5jZQ0KKw0KK0BsaWJzc2gyX21ha2VfZXhhbXBsZS5k Y2wgc2Z0cCANCisNCitCeSBkZWZhdWx0LCBsaWJzc2gyX21ha2VfZXhhbXBsZS5kY2wgbGlua3Mg dG8gdGhlIG9iamVjdCBsaWJyYXJpZXMgDQorcHJvZHVjZWQgYnkgdGhlIGxpYnNzaDJfbWFrZV9s aWIuZGNsIHByb2NlZHVyZS4gSWYgeW91IHdhbnQgdG8gbGluaw0KK2FnYWluc3QgdGhlIHNoYXJl ZCBpbWFnZSBsaWJyYXJ5IG1hZGUgaW4gdGhlIHNhbWUgcHJvY2VkdXJlLCBpbnZva2UNCit0aGUg cHJvY2VkdXJlIGxpa2Ugc286DQorDQorQGxpYnNzaDJfbWFrZV9leGFtcGxlLmRjbCBzZnRwICJT SEFSRUQiDQorDQorVGhlIHByb2NkdXJlIGRlZmluZXMgYSBwcm9jZXNzIGxvZ2ljYWwgZ252JGxp YnNzaDIgcG9pbnRpbmcgdG8gdGhlIHNoYXJlZA0KK2ltYWdlIGxpYnJhcnkgaW4gdGhlIGRpcmVj dG9yeSwgd2hpY2ggb2J2aW91c2x5IHdpbGwgbm90IHN1cnZpdmUgYSBsb2dvdXQuIA0KKw0KKw0K K0J1aWxkaW5nIHRoZSBoZWxwIGxpYnJhcnkNCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQor DQorVGhlIG1hbiBwYWdlcyBjYW4gYmUgY29udmVydGVkIHRvIGEgVk1TIGhlbHAgbGlicmFyeSBi eSBpc3N1aW5nDQordGhpcyBjb21tYW5kIDoNCisNCitAbGlic3NoMl9tYWtlX2hlbHAuZGNsDQor DQorSXQgdXNlcyBhIHNpbXBsZSBidXQgZmFpcmx5IGVmZmVjdGl2ZSBjIHByb2dyYW0gbWFuMmhl bHAuYw0KK3RvIGFjaGlldmUgdGhpcy4NCisNCitCdWlsZGluZyBhIFBDU0kga2l0DQorLS0tLS0t LS0tLS0tLS0tLS0tLQ0KKw0KK1doZW4geW91IGhhdmUgYnVpbHQgdGhlIHNoYXJlZCBsaWJyYXJ5 IGFuZCB0aGUgaGVscCBsaWJyYXJ5LA0KK3lvdSBjYW4gYnVpbGQgYSBQQ1NJIGtpdCBieSBpc3N1 ZWluZyB0aGlzIGNvbW1hbmQ6DQorDQorQGxpYnNzaDJfbWFrZV9raXQuZGNsDQorDQorDQorDQor DQorDQotLSANCjEuNi42LjENCgo= --001485f5ceb87395e60484e481f5 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 --001485f5ceb87395e60484e481f5-- From libssh2-devel-bounces@cool.haxx.se Sat Apr 24 10:15:05 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3O8Eoq1012311; Sat, 24 Apr 2010 10:15:01 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3O8EmBj012304 for ; Sat, 24 Apr 2010 10:14:48 +0200 Date: Sat, 24 Apr 2010 10:14:48 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: VMS port In-Reply-To: Message-ID: References: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 22 Apr 2010, Jose Baars wrote: > In the source directory only userauth.c, session.c, misc.c and > libssh2_priv.h have been touched, as to satisfy my goal to make the port as > inobtrusive as possible. These changes were not included in this patch, I trust you did it like this on purpose? I just pushed the patch part with the VMS specific files. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 24 11:30:13 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3O9U1ZG006502; Sat, 24 Apr 2010 11:30:10 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3O9TxUv006469 for ; Sat, 24 Apr 2010 11:29:59 +0200 Date: Sat, 24 Apr 2010 11:29:59 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: how to not do a binding Message-ID: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi friends, The other day in #libssh2 a mr 'wallunit' made me aware of a Python binding for libssh2 named SSH4Py: http://www.keyphrene.com/products/4py/index.php?lng=en I just wanted to mention it here since it is made in a way that a binding really shouldn't: it requires and uses libssh2_priv.h and other library private data. While that may seem like a quick and easy way to get some things done, it will be a perfect way to make the binding break in funny ways if you upgrade libssh2. We make no guarantees or attempts to keep our internals identical between versions! A "proper" library binding *ONLY* uses the public API/ABI. Of course we like an appreciate bindings for other languages, but doing them in a sloppy manner won't make users happy. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 24 18:50:17 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3OGo0gn009631; Sat, 24 Apr 2010 18:50:13 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3OGnxLF009612 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Sat, 24 Apr 2010 18:49:59 +0200 Received: (qmail 12556 invoked from network); 24 Apr 2010 16:50:04 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 24 Apr 2010 16:50:04 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Sat, 24 Apr 2010 16:50:04 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #160: Blocking indefinitely in _libssh2_wait_socket X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/160#comment:5 Message-ID: <054.d2894b0b24ad97eac7e7d9b2bf8691fc@libssh2.stuge.se> References: <045.9aed6573ba6106633a0359a63c9b738c@libssh2.stuge.se> X-Trac-Ticket-ID: 160 In-Reply-To: <045.9aed6573ba6106633a0359a63c9b738c@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #160: Blocking indefinitely in _libssh2_wait_socket -------------------------+-------------------------------------------------- Reporter: dietmar11 | Owner: bagder Type: enhancement | Status: assigned Priority: normal | Milestone: 1.2.6 Component: API | Version: 1.2.4 Keywords: | Blocking: Blockedby: | -------------------------+-------------------------------------------------- Changes (by dottedmag.net): * milestone: 1.2.5 => 1.2.6 Comment: Moving milestone to 1.2.6, as 1.2.5 is already released. -- Ticket URL: libssh2 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 Sat Apr 24 18:59:39 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3OGxai8013019; Sat, 24 Apr 2010 18:59:39 +0200 Received: from dottedmag.net (burger.dottedmag.net [212.75.37.82]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3OGxYB4012979 for ; Sat, 24 Apr 2010 18:59:34 +0200 Received: from leibnitz.dottedmag.net (unknown [91.197.127.125]) by dottedmag.net (Postfix) with ESMTPSA id CED078C072 for ; Sat, 24 Apr 2010 18:59:38 +0200 (CEST) Received: from dottedmag by leibnitz.dottedmag.net with local (Exim 4.71) (envelope-from ) id 1O5ihc-000510-0D for libssh2-devel@cool.haxx.se; Sat, 24 Apr 2010 23:59:36 +0700 From: Mikhail Gusarov To: libssh2-devel@cool.haxx.se Subject: [PATCH] Fix typos in manpages, catched by Lintian Date: Sat, 24 Apr 2010 23:59:35 +0700 Message-Id: <1272128375-19253-1-git-send-email-dottedmag@dottedmag.net> X-Mailer: git-send-email 1.7.0 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --- docs/libssh2_knownhost_writeline.3 | 2 +- docs/libssh2_sftp_fstat_ex.3 | 2 +- docs/libssh2_sftp_last_error.3 | 2 +- docs/libssh2_sftp_stat_ex.3 | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/libssh2_knownhost_writeline.3 b/docs/libssh2_knownhost_writeline.3 index eee6f2f..c014a6a 100644 --- a/docs/libssh2_knownhost_writeline.3 +++ b/docs/libssh2_knownhost_writeline.3 @@ -35,7 +35,7 @@ and 0 indicates success. If the provided buffer is deemed too small to fit the data libssh2 wants to store in it, LIBSSH2_ERROR_BUFFER_TOO_SMALL will be returned. The application -is then adviced to call the function again with a larger buffer. The +is then advised to call the function again with a larger buffer. The \fIoutlen\fP size will then hold the requested size. .SH AVAILABILITY Added in libssh2 1.2 diff --git a/docs/libssh2_sftp_fstat_ex.3 b/docs/libssh2_sftp_fstat_ex.3 index 9dabbc0..44970c1 100644 --- a/docs/libssh2_sftp_fstat_ex.3 +++ b/docs/libssh2_sftp_fstat_ex.3 @@ -60,7 +60,7 @@ You will find a full set of defines and macros to identify flags and permissions on the \fBlibssh2_sftp.h\fP header file, but some of the most common ones are: -To check for specific user permissons, the set of defines are in the +To check for specific user permissions, the set of defines are in the pattern LIBSSH2_SFTP_S_I where is R, W or X for read, write and excutable and is USR, GRP and OTH for user, group and other. So, you check for a user readable file, use the bit diff --git a/docs/libssh2_sftp_last_error.3 b/docs/libssh2_sftp_last_error.3 index 0789789..0e38dfd 100644 --- a/docs/libssh2_sftp_last_error.3 +++ b/docs/libssh2_sftp_last_error.3 @@ -17,7 +17,7 @@ libssh2_sftp_last_error(LIBSSH2_SFTP *sftp); Returns the last error code produced by the SFTP layer. Note that this only returns a sensible error code if libssh2 returned LIBSSH2_ERROR_SFTP_PROTOCOL in a previous call. Using \fBlibssh2_sftp_last_error(3)\fP without a -preceeding SFTP protocol error, it will return an unspecified value. +preceding SFTP protocol error, it will return an unspecified value. .SH RETURN VALUE Current error code state of the SFTP instance. diff --git a/docs/libssh2_sftp_stat_ex.3 b/docs/libssh2_sftp_stat_ex.3 index 4b93397..2f277f3 100644 --- a/docs/libssh2_sftp_stat_ex.3 +++ b/docs/libssh2_sftp_stat_ex.3 @@ -25,7 +25,7 @@ libssh2_sftp_setstat(LIBSSH2_SFTP *sftp, const char *path, LIBSSH2_SFTP_ATTRIBUT \fIpath\fP - Remote filesystem object to stat/lstat/setstat. -\fIpath_len\fP - Lenght of the name of the remote filesystem object +\fIpath_len\fP - Length of the name of the remote filesystem object to stat/lstat/setstat. \fIstat_type\fP - One of the three constants specifying the type of -- 1.7.0 _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 24 20:38:53 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3OIceKf017033; Sat, 24 Apr 2010 20:38:51 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3OIcdTc017027; Sat, 24 Apr 2010 20:38:39 +0200 Date: Sat, 24 Apr 2010 20:38:39 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: [PATCH] Timeout support for blocking API In-Reply-To: Message-ID: References: User-Agent: Alpine 2.00 (DEB 1167 2008-08-23) X-fromdanielhimself: yes MIME-Version: 1.0 Cc: Jan Van Boghout X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Tue, 16 Feb 2010, Jan Van Boghout wrote: > These patches are a proposal for a user-customizable timeout value when > interacting with sessions in blocking mode. See the following comment in > session.c: /* Note that this COULD be made to use a timeout that perhaps > could be customizable by the app or something... */ I'd like to come back to the discussion about this patch. See http://www.libssh2.org/mail/libssh2-devel-archive-2010-02/0073.shtml for the original post. I think apps could use a way to set a maximum time that libssh2 would wait. One question is what the given time is, like is it total time for the entire function call, or just maximum time for a single select() call (which seems a bit strange to set from an app's viewpoint). Another question is if Jan Van Boghout's patch actually works, as I would suspect that just having select() return will in many cases just have libssh2 call the same function again and it'll loop back into the select() really quickly... Thoughts? -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 24 20:41:24 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3OIfMY3021707; Sat, 24 Apr 2010 20:41:23 +0200 Received: from avu-be01.HQ.Avulet.com (smtp.galetechnologies.com [207.135.120.189]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3M59EW3023828 for ; Thu, 22 Apr 2010 07:09:15 +0200 Received: from indengmjha ([172.16.100.166]) by avu-be01.HQ.Avulet.com with Microsoft SMTPSVC(6.0.3790.3959); Wed, 21 Apr 2010 22:06:25 -0700 From: "Mihir Jha" To: "'libssh2 development'" References: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> <20100421093730.30177.qmail@stuge.se> <20100421102336.7116.qmail@stuge.se> In-Reply-To: Subject: API libssh2_channel_exec Date: Thu, 22 Apr 2010 10:39:06 +0530 Organization: Lumenare Networks India Pvt. Ltd. Message-ID: <004201cae1d9$f06f76b0$d14e6410$@com> MIME-Version: 1.0 X-Mailer: Microsoft Office Outlook 12.0 Thread-Index: AcrhPrXu9U8dxwM4SxSOuVWTXGoC5wAmuf5w Content-Language: en-us x-cr-hashedpuzzle: AMcd Ahx/ BrlH EKJN GQM1 HPII Hzjz IQor Ibjt I6WV JsKB KU7J KmqS K/a1 LgGS L4io; 1; bABpAGIAcwBzAGgAMgAtAGQAZQB2AGUAbABAAGMAbwBvAGwALgBoAGEAeAB4AC4AcwBlAA==; Sosha1_v1; 7; {243BD537-F880-417D-A109-1DC4FD909ACE}; bQBqAGgAYQBAAGcAYQBsAGUAdABlAGMAaABuAG8AbABvAGcAaQBlAHMALgBjAG8AbQA=; Thu, 22 Apr 2010 05:09:03 GMT; QQBQAEkAIABsAGkAYgBzAHMAaAAyAF8AYwBoAGEAbgBuAGUAbABfAGUAeABlAGMA x-cr-puzzleid: {243BD537-F880-417D-A109-1DC4FD909ACE} X-OriginalArrivalTime: 22 Apr 2010 05:06:25.0479 (UTC) FILETIME=[8EE1B570:01CAE1D9] X-Mailman-Approved-At: Sat, 24 Apr 2010 20:41:21 +0200 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi Friends, What could be the reason for the API libssh2_channel_exec return exit status 0(zero) but fails to launch the command at other end? Thanks, Mihir _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sat Apr 24 20:43:27 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3OIhPIv022486; Sat, 24 Apr 2010 20:43:26 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3OIhNVm022446 for ; Sat, 24 Apr 2010 20:43:23 +0200 Date: Sat, 24 Apr 2010 20:43:23 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: API libssh2_channel_exec In-Reply-To: <004201cae1d9$f06f76b0$d14e6410$@com> Message-ID: References: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> <20100421093730.30177.qmail@stuge.se> <20100421102336.7116.qmail@stuge.se> <004201cae1d9$f06f76b0$d14e6410$@com> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 22 Apr 2010, Mihir Jha wrote: > What could be the reason for the API libssh2_channel_exec return exit status > 0(zero) but fails to launch the command at other end? Using what libssh2 version on what OS? What exactly do you mean with "fails to launch the command" ? You mean nothing was invoked on the remote side? -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sun Apr 25 04:47:05 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3P2koVC020001; Sun, 25 Apr 2010 04:47:02 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3P2kn32019959 for ; Sun, 25 Apr 2010 04:46:49 +0200 Received: (qmail 1147 invoked by uid 501); 25 Apr 2010 02:46:47 -0000 Message-ID: <20100425024647.1146.qmail@stuge.se> Date: Sun, 25 Apr 2010 04:46:47 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: API libssh2_channel_exec Mail-Followup-To: libssh2-devel@cool.haxx.se References: <5E8C8BE519C8C9458BA2382E368E56C713CFC053BE@PHXCCRPRD01.adprod.bmc.com> <20100421093730.30177.qmail@stuge.se> <20100421102336.7116.qmail@stuge.se> <004201cae1d9$f06f76b0$d14e6410$@com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <004201cae1d9$f06f76b0$d14e6410$@com> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi Mihir, Mihir Jha wrote: > What could be the reason for the API libssh2_channel_exec return exit > status 0(zero) but fails to launch the command at other end? It is impossible to answer this. Please capture some trace output from libssh2, and corresponding debug output from the sshd. Then it will be immediately clear what the problem is. Look at libssh2_trace and run sshd manually with: sshd -ddd Send the logs to the mailing list. //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Sun Apr 25 11:17:55 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3P9HcZU007149; Sun, 25 Apr 2010 11:17:50 +0200 Received: from fg-out-1718.google.com (fg-out-1718.google.com [72.14.220.154]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3P9Ha2a007122 for ; Sun, 25 Apr 2010 11:17:36 +0200 Received: by fg-out-1718.google.com with SMTP id e12so86553fga.11 for ; Sun, 25 Apr 2010 02:17:38 -0700 (PDT) MIME-Version: 1.0 Received: by 10.239.183.147 with SMTP id u19mr220969hbg.106.1272187058438; Sun, 25 Apr 2010 02:17:38 -0700 (PDT) Received: by 10.239.161.16 with HTTP; Sun, 25 Apr 2010 02:17:38 -0700 (PDT) In-Reply-To: References: Date: Sun, 25 Apr 2010 11:17:38 +0200 Message-ID: Subject: Re: VMS port From: Jose Baars To: libssh2 development Content-Type: multipart/mixed; boundary=001485f5cef2b4c2ec04850c21eb X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --001485f5cef2b4c2ec04850c21eb Content-Type: multipart/alternative; boundary=001485f5cef2b4c2e604850c21e9 --001485f5cef2b4c2e604850c21e9 Content-Type: text/plain; charset=ISO-8859-1 2010/4/24 Daniel Stenberg > These changes were not included in this patch, I trust you did it like this > on purpose? > Yes, I cunningly left out the -a switch when committing. Really clever. Attached the VMS changes to the libssh2 common code against last night's build. Thanks for the trust. Regards, Jose --001485f5cef2b4c2e604850c21e9 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable

2010/4/24 Daniel Stenberg <daniel@haxx.se>
=
These changes were not included in this patch, I trust you did it like this= on purpose?

Yes, I cunningly left out the -a swi= tch when committing. Really clever.

Attached the VMS changes to the = libssh2 common code against last night's build.

Thanks for the trust.

Regards,
Jose


--001485f5cef2b4c2e604850c21e9-- --001485f5cef2b4c2ec04850c21eb Content-Type: application/octet-stream; name="0001-VMS-port-of-libssh2-changes-in-the-libssh2-common-co.patch" Content-Disposition: attachment; filename="0001-VMS-port-of-libssh2-changes-in-the-libssh2-common-co.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g8fnc3qh0 RnJvbSAxZGNjNzFiNmVlOGMzZjhiOWQzYmE1ZWM1YWY0ODI0M2M0ZjNjMTY4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQ0KRnJvbTogSm9zZSBCYWFycyA8cGV1dEBwZXV0Lm9yZz4NCkRhdGU6IFN1 biwgMjUgQXByIDIwMTAgMDU6MDI6NTEgLTA0MDANClN1YmplY3Q6IFtQQVRDSF0gVk1TIHBvcnQg b2YgbGlic3NoMjsgY2hhbmdlcyBpbiB0aGUgbGlic3NoMiBjb21tb24gY29kZQ0KCi0tLQ0KIHNy Yy9saWJzc2gyX3ByaXYuaCB8ICAgIDIgKy0NCiBzcmMvbWlzYy5jICAgICAgICAgfCAgIDEwICsr KysrKysrKysNCiBzcmMvc2Vzc2lvbi5jICAgICAgfCAgIDI1ICsrKysrKysrKysrKysrKysrKysr KysrLS0NCiBzcmMvdXNlcmF1dGguYyAgICAgfCAgIDEwICsrKysrLS0tLS0NCiA0IGZpbGVzIGNo YW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDggZGVsZXRpb25zKC0pDQoKZGlmZiAtLWdpdCBhL3Ny Yy9saWJzc2gyX3ByaXYuaCBiL3NyYy9saWJzc2gyX3ByaXYuaA0KaW5kZXggM2Q3YmE2ZC4uY2Fk ZTcwZCAxMDA2NDQNCi0tLSBhL3NyYy9saWJzc2gyX3ByaXYuaA0KKysrIGIvc3JjL2xpYnNzaDJf cHJpdi5oDQpAQCAtMTEwOSw3ICsxMTA5LDcgQEAgX2xpYnNzaDJfZGVidWcoTElCU1NIMl9TRVNT SU9OICogc2Vzc2lvbiwgaW50IGNvbnRleHQsIGNvbnN0IGNoYXIgKmZvcm1hdCwgLi4uKQ0KIA0K IHZvaWQgX2xpYnNzaDJfc2Vzc2lvbl9zaHV0ZG93bihMSUJTU0gyX1NFU1NJT04gKiBzZXNzaW9u KTsNCiANCi0jaWZkZWYgV0lOMzINCisjaWYgZGVmaW5lZCggV0lOMzIgKSB8fCBkZWZpbmVkKCBf X1ZNUyApDQogc3NpemVfdCBfbGlic3NoMl9yZWN2KGxpYnNzaDJfc29ja2V0X3Qgc29ja2V0LCB2 b2lkICpidWZmZXIsIHNpemVfdCBsZW5ndGgsIGludCBmbGFncyk7DQogc3NpemVfdCBfbGlic3No Ml9zZW5kKGxpYnNzaDJfc29ja2V0X3Qgc29ja2V0LCBjb25zdCB2b2lkICpidWZmZXIsIHNpemVf dCBsZW5ndGgsIGludCBmbGFncyk7DQogI2Vsc2UNCmRpZmYgLS1naXQgYS9zcmMvbWlzYy5jIGIv c3JjL21pc2MuYw0KaW5kZXggNWE0ZWM5Yi4uMTM5YWJkNyAxMDA2NDQNCi0tLSBhL3NyYy9taXNj LmMNCisrKyBiL3NyYy9taXNjLmMNCkBAIC05Nyw2ICs5NywxMSBAQCBfbGlic3NoMl9yZWN2KGxp YnNzaDJfc29ja2V0X3Qgc29ja2V0LCB2b2lkICpidWZmZXIsIHNpemVfdCBsZW5ndGgsIGludCBm bGFncykNCiAgICAgaWYgKHJjIDwgMCApDQogICAgICAgICBlcnJubyA9IHdzYTJlcnJubygpOw0K ICNlbmRpZg0KKyNpZmRlZiBfX1ZNUw0KKyAgICBpZiAocmMgPCAwICl7DQorICAgICAgIGlmICgg ZXJybm8gPT0gRVdPVUxEQkxPQ0sgKSBlcnJubyA9IEVBR0FJTjsNCisgICAgfQ0KKyNlbmRpZg0K ICAgICByZXR1cm4gcmM7DQogfQ0KICNlbmRpZiAvKiBfbGlic3NoMl9yZWN2ICovDQpAQCAtMTE2 LDYgKzEyMSwxMSBAQCBfbGlic3NoMl9zZW5kKGxpYnNzaDJfc29ja2V0X3Qgc29ja2V0LCBjb25z dCB2b2lkICpidWZmZXIsIHNpemVfdCBsZW5ndGgsIGludCBmbA0KICAgICBpZiAocmMgPCAwICkN CiAgICAgICAgIGVycm5vID0gd3NhMmVycm5vKCk7DQogI2VuZGlmDQorI2lmZGVmIFZNUw0KKyAg ICBpZiAocmMgPCAwICl7DQorICAgICAgIGlmICggZXJybm8gPT0gRVdPVUxEQkxPQ0sgKSBlcnJu byA9IEVBR0FJTjsNCisgICAgfQ0KKyNlbmRpZg0KICAgICByZXR1cm4gcmM7DQogfQ0KICNlbmRp ZiAvKiBfbGlic3NoMl9yZWN2ICovDQpkaWZmIC0tZ2l0IGEvc3JjL3Nlc3Npb24uYyBiL3NyYy9z ZXNzaW9uLmMNCmluZGV4IDEwNTY1YzcuLjkxZDNjNTQgMTAwNjQ0DQotLS0gYS9zcmMvc2Vzc2lv bi5jDQorKysgYi9zcmMvc2Vzc2lvbi5jDQpAQCAtMjc4LDcgKzI3OCw3IEBAIHNlc3Npb25fbm9u YmxvY2sobGlic3NoMl9zb2NrZXRfdCBzb2NrZmQsICAgLyogb3BlcmF0ZSBvbiB0aGlzICovDQog I2VuZGlmDQogDQogI2lmIGRlZmluZWQoSEFWRV9GSU9OQklPKSAmJiAoU0VUQkxPQ0sgPT0gMCkN Ci0gICAgLyogb2xkZXIgdW5peCB2ZXJzaW9ucyAqLw0KKyAgICAvKiBvbGRlciB1bml4IHZlcnNp b25zIGFuZCBWTVMqLw0KICAgICBpbnQgZmxhZ3M7DQogDQogICAgIGZsYWdzID0gbm9uYmxvY2s7 DQpAQCAtMzEyLDYgKzMxMiw3IEBAIHNlc3Npb25fbm9uYmxvY2sobGlic3NoMl9zb2NrZXRfdCBz b2NrZmQsICAgLyogb3BlcmF0ZSBvbiB0aGlzICovDQogI2RlZmluZSBTRVRCTE9DSyA1DQogI2Vu ZGlmDQogDQorDQogI2lmZGVmIEhBVkVfRElTQUJMRURfTk9OQkxPQ0tJTkcNCiAgICAgcmV0dXJu IDA7ICAgICAgICAgICAgICAgICAgIC8qIHJldHVybnMgc3VjY2VzcyAqLw0KICN1bmRlZiBTRVRC TE9DSw0KQEAgLTM3MywxMCArMzc0LDMwIEBAIGdldF9zb2NrZXRfbm9uYmxvY2tpbmcoaW50IHNv Y2tmZCkNCiAjZGVmaW5lIEdFVEJMT0NLIDUNCiAjZW5kaWYNCiANCisjaWYgZGVmaW5lZChTT19T VEFURSkgJiYgZGVmaW5lZCggX19WTVMgKSAmJiAoR0VUQkxPQ0sgPT0gMCkNCisNCisgICAgLyog Vk1TIFRDUC9JUCBTZXJ2aWNlcyAqLw0KKw0KKyAgICBzaXplX3Qgc29ja3N0YXQgPSAwOw0KKyAg ICBpbnQgICAgY2FsbHN0YXQgPSAwOw0KKyAgICBzaXplX3Qgc2l6ZSA9IHNpemVvZiggaW50ICk7 DQorDQorICAgIGNhbGxzdGF0ID0gZ2V0c29ja29wdChzb2NrZmQsIFNPTF9TT0NLRVQsIFNPX1NU QVRFLCANCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNoYXIgKikmc29ja3N0 YXQsICZzaXplKTsNCisgICAgaWYgKCBjYWxsc3RhdCA9PSAtMSApIHJldHVybigwKTsNCisgICAg aWYgKCAoc29ja3N0YXQmU1NfTkJJTykgKXJldHVybigxKTsNCisgICAgcmV0dXJuKDApOw0KKw0K Kw0KKyN1bmRlZiBHRVRCTE9DSw0KKyNkZWZpbmUgR0VUQkxPQ0sgNg0KKyNlbmRpZg0KKw0KKw0K ICNpZmRlZiBIQVZFX0RJU0FCTEVEX05PTkJMT0NLSU5HDQogICAgIHJldHVybiAxOyAgICAgICAg ICAgICAgICAgICAvKiByZXR1cm5zIGJsb2NraW5nICovDQogI3VuZGVmIEdFVEJMT0NLDQotI2Rl ZmluZSBHRVRCTE9DSyA2DQorI2RlZmluZSBHRVRCTE9DSyA3DQogI2VuZGlmDQogDQogI2lmIChH RVRCTE9DSyA9PSAwKQ0KZGlmZiAtLWdpdCBhL3NyYy91c2VyYXV0aC5jIGIvc3JjL3VzZXJhdXRo LmMNCmluZGV4IDU1MjdmZjUuLjE2ODVhMTIgMTAwNjQ0DQotLS0gYS9zcmMvdXNlcmF1dGguYw0K KysrIGIvc3JjL3VzZXJhdXRoLmMNCkBAIC01OTksOCArNTk5LDggQEAgc2lnbl9mcm9tZmlsZShM SUJTU0gyX1NFU1NJT04gKnNlc3Npb24sIHVuc2lnbmVkIGNoYXIgKipzaWcsIHNpemVfdCAqc2ln X2xlbiwNCiAgICAgaWYocmMpDQogICAgICAgICByZXR1cm4gcmM7DQogDQotICAgIGRhdGF2ZWMu aW92X2Jhc2UgPSAodW5zaWduZWQgY2hhciAqKWRhdGE7DQotICAgIGRhdGF2ZWMuaW92X2xlbiA9 IGRhdGFfbGVuOw0KKyAgICBkYXRhdmVjLmlvdl9iYXNlID0gKHZvaWQgKilkYXRhOw0KKyAgICBk YXRhdmVjLmlvdl9sZW4gID0gZGF0YV9sZW47DQogDQogICAgIGlmIChwcml2a2V5b2JqLT5zaWdu dihzZXNzaW9uLCBzaWcsIHNpZ19sZW4sIDEsICZkYXRhdmVjLA0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgJmhvc3RrZXlfYWJzdHJhY3QpKSB7DQpAQCAtNzA5LDExICs3MDksMTEgQEAgdXNl cmF1dGhfaG9zdGJhc2VkX2Zyb21maWxlKExJQlNTSDJfU0VTU0lPTiAqc2Vzc2lvbiwNCiAgICAg ICAgIH0NCiANCiAgICAgICAgIF9saWJzc2gyX2h0b251MzIoYnVmLCBzZXNzaW9uLT5zZXNzaW9u X2lkX2xlbik7DQotICAgICAgICBkYXRhdmVjWzBdLmlvdl9iYXNlID0gYnVmOw0KKyAgICAgICAg ZGF0YXZlY1swXS5pb3ZfYmFzZSA9ICh2b2lkICopYnVmOw0KICAgICAgICAgZGF0YXZlY1swXS5p b3ZfbGVuID0gNDsNCi0gICAgICAgIGRhdGF2ZWNbMV0uaW92X2Jhc2UgPSBzZXNzaW9uLT5zZXNz aW9uX2lkOw0KKyAgICAgICAgZGF0YXZlY1sxXS5pb3ZfYmFzZSA9ICh2b2lkICopc2Vzc2lvbi0+ c2Vzc2lvbl9pZDsNCiAgICAgICAgIGRhdGF2ZWNbMV0uaW92X2xlbiA9IHNlc3Npb24tPnNlc3Np b25faWRfbGVuOw0KLSAgICAgICAgZGF0YXZlY1syXS5pb3ZfYmFzZSA9IHNlc3Npb24tPnVzZXJh dXRoX2hvc3RfcGFja2V0Ow0KKyAgICAgICAgZGF0YXZlY1syXS5pb3ZfYmFzZSA9ICh2b2lkICop c2Vzc2lvbi0+dXNlcmF1dGhfaG9zdF9wYWNrZXQ7DQogICAgICAgICBkYXRhdmVjWzJdLmlvdl9s ZW4gPSBzZXNzaW9uLT51c2VyYXV0aF9ob3N0X3BhY2tldF9sZW47DQogDQogICAgICAgICBpZiAo cHJpdmtleW9iai0+c2lnbnYoc2Vzc2lvbiwgJnNpZywgJnNpZ19sZW4sIDMsIGRhdGF2ZWMsICZh YnN0cmFjdCkpIHsNCi0tIA0KMS42LjYuMQ0KCg== --001485f5cef2b4c2ec04850c21eb 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 --001485f5cef2b4c2ec04850c21eb-- From libssh2-devel-bounces@cool.haxx.se Sun Apr 25 20:04:41 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3PI4OtF006712; Sun, 25 Apr 2010 20:04:37 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3PI4Nxt006697 for ; Sun, 25 Apr 2010 20:04:23 +0200 Date: Sun, 25 Apr 2010 20:04:23 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: VMS port In-Reply-To: Message-ID: References: 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Sun, 25 Apr 2010, Jose Baars wrote: > Attached the VMS changes to the libssh2 common code against last night's > build. Seemed fine to me. Pushed! -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Mon Apr 26 22:22:35 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3QKMJF6023251; Mon, 26 Apr 2010 22:22:30 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3QKMHq4023205 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Mon, 26 Apr 2010 22:22:17 +0200 Received: (qmail 13905 invoked from network); 26 Apr 2010 20:22:24 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 26 Apr 2010 20:22:24 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Mon, 26 Apr 2010 20:22:24 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #114: libssh2_scp_send_ex in libssh2 1.2 doesn't work X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/114#comment:13 Message-ID: <054.1660db97b620fbad11e11bdfbc14f7fd@libssh2.stuge.se> References: <045.febe1b6c741233701c6b8a8da373ce93@libssh2.stuge.se> X-Trac-Ticket-ID: 114 In-Reply-To: <045.febe1b6c741233701c6b8a8da373ce93@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #114: libssh2_scp_send_ex in libssh2 1.2 doesn't work ------------------------+--------------------------------------------------- Reporter: anonymous | Owner: bagder Type: defect | Status: closed Priority: normal | Milestone: Component: SCP | Version: 1.2.2 Resolution: outdated | Keywords: Blocking: | Blockedby: ------------------------+--------------------------------------------------- Changes (by bagder): * status: assigned => closed * resolution: => outdated Comment: Closing this issue since the reporter has vanished and we lack necessary information. -- Ticket URL: libssh2 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 Mon Apr 26 22:35:16 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3QKZCHM001676; Mon, 26 Apr 2010 22:35:15 +0200 Received: from earth.stuge.se (earth.stuge.se [213.88.146.15]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3QKZBv5001646 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Mon, 26 Apr 2010 22:35:11 +0200 Received: (qmail 15464 invoked from network); 26 Apr 2010 20:35:18 -0000 Received: from unknown (HELO earth.stuge.se) (127.0.0.1) by localhost with SMTP; 26 Apr 2010 20:35:18 -0000 MIME-Version: 1.0 From: "libssh2 Trac" X-Trac-Version: 0.11.6 Precedence: bulk Cc: libssh2-devel@cool.haxx.se Auto-Submitted: auto-generated X-Mailer: Trac 0.11.6, by Edgewall Software X-Trac-Project: libssh2 Date: Mon, 26 Apr 2010 20:35:18 -0000 X-URL: http://libssh2.stuge.se/ Subject: Re: [libssh2] #162: libssh2_userauth_password() returns undocument value X-Trac-Ticket-URL: http://libssh2.stuge.se/ticket/162#comment:1 Message-ID: <117.47396c4ef4f491cd143959aa0f4c7be9@libssh2.stuge.se> References: <108.4e0f40e03b91fc84fa1638fcc7b77b5c@libssh2.stuge.se> X-Trac-Ticket-ID: 162 In-Reply-To: <108.4e0f40e03b91fc84fa1638fcc7b77b5c@libssh2.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Reply-To: trac@libssh2.stuge.se, libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se #162: libssh2_userauth_password() returns undocument value ---------------------------------------------------------------------------------------+ Reporter: www.google.com/accounts/o8/id?id=AItOawmzs-3wPv9jSuaL5w4D_yhF_mGYz_Zks6c | Owner: Type: defect | Status: closed Priority: normal | Milestone: 1.2.6 Component: API | Version: 1.2.4 Resolution: fixed | Keywords: libssh2_userauth_password, libssh2_userauth_password_ex, LIBSSH2_ERROR_SOCKET_NONE Blocking: | Blockedby: ---------------------------------------------------------------------------------------+ Changes (by bagder): * status: new => closed * resolution: => fixed * milestone: => 1.2.6 Comment: The man page has been updated somewhat to clarify that other errors can be returned too. Also, the function has since been fixed up to better return correct and proper return codes to this particular error does not seem to exist anymore. -- Ticket URL: libssh2 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 Tue Apr 27 19:47:19 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3RHl6jq017472; Tue, 27 Apr 2010 19:47:17 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3RHl5vU017447 for ; Tue, 27 Apr 2010 19:47:05 +0200 Received: (qmail 27233 invoked by uid 501); 27 Apr 2010 17:47:10 -0000 Message-ID: <20100427174710.27232.qmail@stuge.se> Date: Tue, 27 Apr 2010 19:47:10 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: libssh2 master c28fa65 bugfix: avoid using the socket if it failed to create one Mail-Followup-To: libssh2-devel@cool.haxx.se References: <20100427171705.5956.qmail@earth.stuge.se> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20100427171705.5956.qmail@earth.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se libssh2@git.stuge.se wrote: > +++ b/example/scp_write.c > @@ -94,6 +94,10 @@ int main(int argc, char *argv[]) > * connection > */ > sock = socket(AF_INET, SOCK_STREAM, 0); > + if(-1 == sock) { > + fprintf(stderr, "failed to create socket!\n"); > + return -1; > + } Maybe #ifdef WIN32 if (INVALID_SOCKET == sock) { #else if (-1 == sock) { #endif but it's kinda ugly. //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Tue Apr 27 19:51:21 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3RHpJMJ019281; Tue, 27 Apr 2010 19:51:20 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3RHpHxv019259 for ; Tue, 27 Apr 2010 19:51:17 +0200 Date: Tue, 27 Apr 2010 19:51:17 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: libssh2 master c28fa65 bugfix: avoid using the socket if it failed to create one In-Reply-To: <20100427174710.27232.qmail@stuge.se> Message-ID: References: <20100427171705.5956.qmail@earth.stuge.se> <20100427174710.27232.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Tue, 27 Apr 2010, Peter Stuge wrote: >> + if(-1 == sock) { >> + fprintf(stderr, "failed to create socket!\n"); >> + return -1; >> + } > > Maybe > > #ifdef WIN32 > if (INVALID_SOCKET == sock) { > #else > if (-1 == sock) { > #endif > > but it's kinda ugly. Right, it might be nicer to have a section at the top like: #ifndef INVALID_SOCKET #define INVALID_SOCKET -1 #define and then use this unconditionally: if (INVALID_SOCKET == sock) The boring part is that we should probably try to do this uniformly in all examples, and there are 18 of them! ;-O -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 02:10:37 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S0AMkN032019; Wed, 28 Apr 2010 02:10:33 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3S0ALhr032016 for ; Wed, 28 Apr 2010 02:10:21 +0200 Received: (qmail 12260 invoked by uid 501); 28 Apr 2010 00:10:29 -0000 Message-ID: <20100428001029.12259.qmail@stuge.se> Date: Wed, 28 Apr 2010 02:10:29 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: libssh2 master 37624b6 sftp_attrsize: converted function to a macro Mail-Followup-To: libssh2-devel@cool.haxx.se References: <20100427222734.18735.qmail@earth.stuge.se> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20100427222734.18735.qmail@earth.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se libssh2@git.stuge.se wrote: > +#define sftp_attrsize(f) \ > + (4 + /* flags(4) */ \ > + ((f & LIBSSH2_SFTP_ATTR_SIZE)?8:0) + \ > + ((f & LIBSSH2_SFTP_ATTR_UIDGID)?8:0) + \ > + ((f & LIBSSH2_SFTP_ATTR_PERMISSIONS)?4:0) + \ > + ((f & LIBSSH2_SFTP_ATTR_ACMODTIME)?8:0)) /* atime + mtime as u32 */ I'd make sure to use (f) within the macro expansion. > @@ -829,7 +815,7 @@ sftp_open(LIBSSH2_SFTP *sftp, const char *filename, > /* packet_len(4) + packet_type(1) + request_id(4) + filename_len(4) + > flags(4) */ > sftp->open_packet_len = filename_len + 13 + > - (open_file? (4 + sftp_attrsize(&attrs)) : 0); > + (open_file? (4 + sftp_attrsize(LIBSSH2_SFTP_ATTR_PERMISSIONS)) : 0); Where does attrs come from? If it's not created in the function this might desync libssh2 and server expectations. Same for other occurences of sftp_attrsize() on constants, where the return value is used in a packet. It just seems more defensive to me, and less redundant, to use sftp_attrsize() on the actual value in the packet. > +++ b/src/sftp.c > @@ -831,6 +831,8 @@ sftp_open(LIBSSH2_SFTP *sftp, const char *filename, > sftp->open_packet_len = filename_len + 13 + > (open_file? (4 + sftp_attrsize(&attrs)) : 0); > > + /* surprise! this starts out with nothing sent */ > + sftp->open_packet_sent = 0; > s = sftp->open_packet = LIBSSH2_ALLOC(session, sftp->open_packet_len); > if (!sftp->open_packet) { This looks redundant. I think there may be some more places where there's code like this - it'd be nice to reduce rather than expand. :) //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 02:30:26 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S0ULom015340; Wed, 28 Apr 2010 02:30:25 +0200 Received: from mail-px0-f182.google.com (mail-px0-f182.google.com [209.85.212.182]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S0UJkb015329 for ; Wed, 28 Apr 2010 02:30:20 +0200 Received: by pxi17 with SMTP id 17so2521922pxi.41 for ; Tue, 27 Apr 2010 17:30:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:content-type; bh=H2fEra579TC9MfT8yDAOk0LjgdMNVETovQ/RSTVuK8w=; b=kPg2WjzaypnrnWkrSsOvjteYgocQu3yg0oHShoGnPnpVHCe2ZMewp5ECgJFT2gzPIl OmImqFdLIgG87bmjQwc4znY8qg5iHR1cMpTKv2tXSmtEQXjE2xzeKOP43Hnj2Prfs/GQ 56TrcdAzENE+D7RXx1RlPyEp9XeovyMMUmdLM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type; b=lRF2ldtXbRT5Oi+zYe5mcqOc5vzBC/DTrjdjGaxVAlGMbI0Z+RPIZZ8IsQukwiES1J yov4D1nDqg0JH8pejr0p7XdZepIWP5hkXl1/hlEk1ItgJ8I5x4gj/B56fnQEgYky/O7K /v1NZiUGa+ET7IBeFyrIVjb053YkH0iCpUpeo= MIME-Version: 1.0 Received: by 10.143.20.7 with SMTP id x7mr3569577wfi.328.1272414622000; Tue, 27 Apr 2010 17:30:22 -0700 (PDT) Received: by 10.142.199.5 with HTTP; Tue, 27 Apr 2010 17:30:21 -0700 (PDT) In-Reply-To: <20100428001029.12259.qmail@stuge.se> References: <20100427222734.18735.qmail@earth.stuge.se> <20100428001029.12259.qmail@stuge.se> Date: Wed, 28 Apr 2010 01:30:21 +0100 X-Google-Sender-Auth: 03ed2d1eaff79dfe Message-ID: Subject: Re: libssh2 master 37624b6 sftp_attrsize: converted function to a macro From: Alexander Lamaison To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se libssh2@git.stuge.se wrote: > sftp_attrsize: converted function to a macro > This way, the macro can evaluate a static number at compile time > for two out of four uses, and it probably runs faster for the > other two cases too. Oh please no. These kind of hand optimisations are almost always useless. Was there any other reason for the conversion except performance? If not, was there a benchmark to show this was a bottleneck and the macro fixed it? Time and time again people try this type of thing without realising that compilers and architectures make it almost impossible to predict if there is any speedup in practice. Compilers play with your code and, more importantly, different processor architectures do strange things that make execution bear no resemblance to how you imagined it would happen. In practice, this may even run slower. Alex _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 08:35:03 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S6Yl07025930; Wed, 28 Apr 2010 08:35:01 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S6Ylkf025924 for ; Wed, 28 Apr 2010 08:34:47 +0200 Date: Wed, 28 Apr 2010 08:34:47 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: libssh2 master 37624b6 sftp_attrsize: converted function to a macro In-Reply-To: <20100428001029.12259.qmail@stuge.se> Message-ID: References: <20100427222734.18735.qmail@earth.stuge.se> <20100428001029.12259.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Wed, 28 Apr 2010, Peter Stuge wrote: >> sftp->open_packet_len = filename_len + 13 + >> - (open_file? (4 + sftp_attrsize(&attrs)) : 0); >> + (open_file? (4 + sftp_attrsize(LIBSSH2_SFTP_ATTR_PERMISSIONS)) : 0); > > Where does attrs come from? If it's not created in the function this > might desync libssh2 and server expectations. It's a variable declared just a few lines above this code. > Same for other occurences of sftp_attrsize() on constants, where the return > value is used in a packet. It just seems more defensive to me, and less > redundant, to use sftp_attrsize() on the actual value in the packet. Well of course. sftp_attrsize() is used at four places, two of them with actual incoming data and two times with a fixed compile-time value. >> + /* surprise! this starts out with nothing sent */ >> + sftp->open_packet_sent = 0; > > This looks redundant. I think there may be some more places where > there's code like this - it'd be nice to reduce rather than expand. :) Redundant how? If you can write the code without that or similar logic, then please explain. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 08:38:38 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S6ca2U027389; Wed, 28 Apr 2010 08:38:38 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S6cZtC027382 for ; Wed, 28 Apr 2010 08:38:35 +0200 Date: Wed, 28 Apr 2010 08:38:35 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: libssh2 master 37624b6 sftp_attrsize: converted function to a macro In-Reply-To: Message-ID: References: <20100427222734.18735.qmail@earth.stuge.se> <20100428001029.12259.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Wed, 28 Apr 2010, Alexander Lamaison wrote: >> sftp_attrsize: converted function to a macro > >> This way, the macro can evaluate a static number at compile time >> for two out of four uses, and it probably runs faster for the >> other two cases too. > > Oh please no. > > These kind of hand optimisations are almost always useless. Was there any > other reason for the conversion except performance? If not, was there a > benchmark to show this was a bottleneck and the macro fixed it? First, I disagree that these things "are almost always useless". But my primary motivation for chaning this was that I really didn't like how the function took a struct pointer as argument and only checked/used the flag field within the function, and in 50% of the use cases it is a static flag known at compile-time. To me, this makes it A LOT clearer that sftp_attrsize() only checks the flag (and no other attr struct magic is involved) and returns a size based on that. It being a macro or function is less important then, but I just didn't think a full function was motivated once I changed the input argument - and a macro seemed simple and easy enough. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 08:43:40 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S6hbgo032738; Wed, 28 Apr 2010 08:43:40 +0200 Received: from yxa-v.extundo.com (yxa-v.extundo.com [83.241.177.39]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S6gt2p031727 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Wed, 28 Apr 2010 08:42:55 +0200 Received: from mocca (c80-216-24-99.bredband.comhem.se [80.216.24.99]) (authenticated bits=0) by yxa-v.extundo.com (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id o3S6gqU6008911 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Wed, 28 Apr 2010 08:42:54 +0200 From: Simon Josefsson To: libssh2 development Subject: Re: libssh2 master 37624b6 sftp_attrsize: converted function to a macro References: <20100427222734.18735.qmail@earth.stuge.se> <20100428001029.12259.qmail@stuge.se> OpenPGP: id=B565716F; url=http://josefsson.org/key.txt X-Hashcash: 1:22:100428:libssh2-devel@cool.haxx.se::+V82yBz7rBLoruBp:HrmK Date: Wed, 28 Apr 2010 08:42:52 +0200 In-Reply-To: (Alexander Lamaison's message of "Wed, 28 Apr 2010 01:30:21 +0100") Message-ID: <878w88yt5f.fsf@mocca.josefsson.org> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=AWL,BAYES_00, DATE_IN_FUTURE_96_XX,RDNS_DYNAMIC,SPF_FAIL autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on yxa-v.extundo.com X-Virus-Scanned: clamav-milter 0.95.3 at yxa-v X-Virus-Status: Clean X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Alexander Lamaison writes: > libssh2@git.stuge.se wrote: >> sftp_attrsize: converted function to a macro > >> This way, the macro can evaluate a static number at compile time >> for two out of four uses, and it probably runs faster for the >> other two cases too. > > Oh please no. > > These kind of hand optimisations are almost always useless. Was there > any other reason for the conversion except performance? If not, was > there a benchmark to show this was a bottleneck and the macro fixed > it? > > Time and time again people try this type of thing without realising > that compilers and architectures make it almost impossible to predict > if there is any speedup in practice. Compilers play with your code > and, more importantly, different processor architectures do strange > things that make execution bear no resemblance to how you imagined it > would happen. > > In practice, this may even run slower. I agree in general -- macros are more difficult to read and debug, and in my experience almost never results in any noticeable speedup compared to static functions, and may result in larger code size. Unless we have benchmarks showing there is a bottleneck (see [1] for an example of where optimization was warranted, although not related to macros) my preference would be to use static functions even for trivial operations that are often written as macros. (I didn't look at the actual details here though, just speaking generally.) /Simon [1] http://blog.josefsson.org/2008/02/27/real-world-performance-tuning-with-callgrind/ _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 08:53:27 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S6rMuB007585; Wed, 28 Apr 2010 08:53:26 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3S6rKIh007581 for ; Wed, 28 Apr 2010 08:53:21 +0200 Received: (qmail 32735 invoked by uid 501); 28 Apr 2010 06:53:22 -0000 Message-ID: <20100428065322.32734.qmail@stuge.se> Date: Wed, 28 Apr 2010 08:53:22 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: libssh2 master 37624b6 sftp_attrsize: converted function to a macro Mail-Followup-To: libssh2-devel@cool.haxx.se References: <20100427222734.18735.qmail@earth.stuge.se> <20100428001029.12259.qmail@stuge.se> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg wrote: >>> + /* surprise! this starts out with nothing sent */ >>> + sftp->open_packet_sent = 0; >> >> This looks redundant. I think there may be some more places where >> there's code like this - it'd be nice to reduce rather than expand. :) > > Redundant how? No, I was wrong. I mixed the struct member up with open_packet which is set on the very next line. Sorry for the confusion! //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 11:03:05 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S92ri0004602; Wed, 28 Apr 2010 11:03:03 +0200 Received: from ey-out-2122.google.com (ey-out-2122.google.com [74.125.78.24]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S92pPf004561 for ; Wed, 28 Apr 2010 11:02:51 +0200 Received: by ey-out-2122.google.com with SMTP id 4so1463753eyf.31 for ; Wed, 28 Apr 2010 02:02:53 -0700 (PDT) Received: by 10.213.55.209 with SMTP id v17mr827879ebg.98.1272445373544; Wed, 28 Apr 2010 02:02:53 -0700 (PDT) Received: from [192.168.0.35] (96-160.ftth.onsbrabantnet.nl [88.159.160.96]) by mx.google.com with ESMTPS id 15sm3209089ewy.4.2010.04.28.02.02.51 (version=SSLv3 cipher=RC4-MD5); Wed, 28 Apr 2010 02:02:52 -0700 (PDT) Message-ID: <4BD7F9BB.1050400@peut.org> Date: Wed, 28 Apr 2010 11:02:51 +0200 From: Jose Baars User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; nl; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: libssh2-devel@cool.haxx.se Subject: Re: VMS port References: In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============1154981745==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se This is a cryptographically signed message in MIME format. --===============1154981745== Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha1; boundary="------------ms000109060801030403050803" This is a cryptographically signed message in MIME format. --------------ms000109060801030403050803 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Op 4/24/2010 10:14 AM, Daniel Stenberg schreef: > > I just pushed the patch part with the VMS specific files. > I downloaded yesterday's build and I didn't find the VMS subdirectory. Did I do something wrong? Jose --------------ms000109060801030403050803 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIO1DCC BEYwggOvoAMCAQICEGb9R+PCGeToms2Z3fU6yyQwDQYJKoZIhvcNAQEFBQAwXzELMAkGA1UE BhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1Ymxp YyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA1MTAyODAwMDAwMFoXDTE1 MTAyNzIzNTk1OVowgd0xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEf MB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNl IGF0IGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEgKGMpMDUxHjAcBgNVBAsTFVBlcnNv bmEgTm90IFZhbGlkYXRlZDE3MDUGA1UEAxMuVmVyaVNpZ24gQ2xhc3MgMSBJbmRpdmlkdWFs IFN1YnNjcmliZXIgQ0EgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMnf rOfq+PgDFMQAktXBfjbCPO98chXLwKuMPRyVzm8eECw/AO2XJua2x+atQx0/pIdHR0w+VPhs +Mf8sZ69MHC8l7EDBeqV8a1AxUR6SwWi8mD81zplYu//EHuiVrvFTnAt1qIfPO2wQuhejVch rKaZ2RHp0hoHwHRHQgv8xTTq/ea6JNEdCBU3otdzzwFBL2OyOj++pRpu9MlKWz2VphW7NQIZ +dTvvI8OcXZZu0u2Ptb8Whb01g6J8kn+bAztFenZiHWcec5gJ925rXXOL3OVekA6hXVJsLjf aLyrzROChRFQo+A8C67AClPN1zBvhTJGG+RJEMJs4q8fef/btLUCAwEAAaOB/zCB/DASBgNV HRMBAf8ECDAGAQH/AgEAMEQGA1UdIAQ9MDswOQYLYIZIAYb4RQEHFwEwKjAoBggrBgEFBQcC ARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYTALBgNVHQ8EBAMCAQYwEQYJYIZIAYb4 QgEBBAQDAgEGMC4GA1UdEQQnMCWkIzAhMR8wHQYDVQQDExZQcml2YXRlTGFiZWwzLTIwNDgt MTU1MB0GA1UdDgQWBBQRfV4ZfTwE32ps1qKKGj8x2DuUUjAxBgNVHR8EKjAoMCagJKAihiBo dHRwOi8vY3JsLnZlcmlzaWduLmNvbS9wY2ExLmNybDANBgkqhkiG9w0BAQUFAAOBgQA8o9oC YzrEk6qrctPcrVA4HgyeFkqIt+7r2f8PjZWg1rv6aguuYYTYaEeJ70+ssh9JQZtJM3aTi55u uUMcYL3C3Ioth8FFwBFyBBprJCpsb+f8BxMp0Hc6I+f1wYVoGb/GAVQgGa41gsxiPGEJxvTV 67APpp8zhZrTcY5Qj5ndYjCCBUEwggQpoAMCAQICEEJLgZ2m/5im8G2Mp6IuBpMwDQYJKoZI hvcNAQEFBQAwgd0xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0G A1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNlIGF0 IGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEgKGMpMDUxHjAcBgNVBAsTFVBlcnNvbmEg Tm90IFZhbGlkYXRlZDE3MDUGA1UEAxMuVmVyaVNpZ24gQ2xhc3MgMSBJbmRpdmlkdWFsIFN1 YnNjcmliZXIgQ0EgLSBHMjAeFw0wOTExMTIwMDAwMDBaFw0xMDExMTIyMzU5NTlaMIIBCjEX MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv cmsxRjBEBgNVBAsTPXd3dy52ZXJpc2lnbi5jb20vcmVwb3NpdG9yeS9SUEEgSW5jb3JwLiBi eSBSZWYuLExJQUIuTFREKGMpOTgxHjAcBgNVBAsTFVBlcnNvbmEgTm90IFZhbGlkYXRlZDEz MDEGA1UECxMqRGlnaXRhbCBJRCBDbGFzcyAxIC0gTmV0c2NhcGUgRnVsbCBTZXJ2aWNlMRMw EQYDVQQDFApKb3NlIEJhYXJzMRwwGgYJKoZIhvcNAQkBFg1wZXV0QHBldXQub3JnMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAosfMiN5BS5n2BJc2UqrLqe/Nmo3rr90wEsp/ JlHxq569mltTO4zeL5TPP+/7FS/PN6x/pFj81UOCE2K31uUBcR/ggarV9BdcbEtQOwEfMWSL PKO/7DMVdsTkl2BCV5Sj+F1VmPKFPkyh+XVmGfQSfaZCfONGsoqqiPz9zB6pru70tpzw7vGG RWvuOhLVpBmyU48xXZ61OSZnbnad+33dW7TbLESJKs7QznkDk2meqUvUao4ZjbllbYGbnCoa OnPUH9obRs/AC/eTKrbRdjmWC/QJV2YYyXCDDmmQVY7sC6MF/5GC9paNb8lBrd3mcUpGUfyA n5EMI9QSqRWRhbTOVwIDAQABo4HMMIHJMAkGA1UdEwQCMAAwRAYDVR0gBD0wOzA5BgtghkgB hvhFAQcXATAqMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy52ZXJpc2lnbi5jb20vcnBhMAsG A1UdDwQEAwIFoDAdBgNVHSUEFjAUBggrBgEFBQcDBAYIKwYBBQUHAwIwSgYDVR0fBEMwQTA/ oD2gO4Y5aHR0cDovL0luZEMxRGlnaXRhbElELWNybC52ZXJpc2lnbi5jb20vSW5kQzFEaWdp dGFsSUQuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQAXLjg+EMDK1yYA/M7wlgUYwarEC159Mm6q y2R5XInO/pbLQJdOn4u3xg9/tTa3KeFSJpMlLyUBLxUr5AfvzLfJDlUnbfnomCCJyrf5QZEs 8tLGq3bIdLuyH3ILfp5i2WFvms74l5w+FTTKnkPUCGTx0lIVg3tyAOTUmBOIX6sF1+XNdx5Z aqVHF0ZliBgPTD6/UkMWdI4OzBVLGVYBvX+U7AN8iBJr1ILrcl+hkc2UC/sJVspkc4f1wO49 kJ2JPiD5TUByetjBx5QCOPMt7LEl8EfIX2x+HtLMPvHs7oe/OTrhTASN6ocZUF+ME/Pr/Kyh 7Yi3HXaCKIVjNCA/iHThMIIFQTCCBCmgAwIBAgIQQkuBnab/mKbwbYynoi4GkzANBgkqhkiG 9w0BAQUFADCB3TELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYD VQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2UgYXQg aHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykwNTEeMBwGA1UECxMVUGVyc29uYSBO b3QgVmFsaWRhdGVkMTcwNQYDVQQDEy5WZXJpU2lnbiBDbGFzcyAxIEluZGl2aWR1YWwgU3Vi c2NyaWJlciBDQSAtIEcyMB4XDTA5MTExMjAwMDAwMFoXDTEwMTExMjIzNTk1OVowggEKMRcw FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29y azFGMEQGA1UECxM9d3d3LnZlcmlzaWduLmNvbS9yZXBvc2l0b3J5L1JQQSBJbmNvcnAuIGJ5 IFJlZi4sTElBQi5MVEQoYyk5ODEeMBwGA1UECxMVUGVyc29uYSBOb3QgVmFsaWRhdGVkMTMw MQYDVQQLEypEaWdpdGFsIElEIENsYXNzIDEgLSBOZXRzY2FwZSBGdWxsIFNlcnZpY2UxEzAR BgNVBAMUCkpvc2UgQmFhcnMxHDAaBgkqhkiG9w0BCQEWDXBldXRAcGV1dC5vcmcwggEiMA0G CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCix8yI3kFLmfYElzZSqsup782ajeuv3TASyn8m UfGrnr2aW1M7jN4vlM8/7/sVL883rH+kWPzVQ4ITYrfW5QFxH+CBqtX0F1xsS1A7AR8xZIs8 o7/sMxV2xOSXYEJXlKP4XVWY8oU+TKH5dWYZ9BJ9pkJ840ayiqqI/P3MHqmu7vS2nPDu8YZF a+46EtWkGbJTjzFdnrU5Jmdudp37fd1btNssRIkqztDOeQOTaZ6pS9RqjhmNuWVtgZucKho6 c9Qf2htGz8AL95MqttF2OZYL9AlXZhjJcIMOaZBVjuwLowX/kYL2lo1vyUGt3eZxSkZR/ICf kQwj1BKpFZGFtM5XAgMBAAGjgcwwgckwCQYDVR0TBAIwADBEBgNVHSAEPTA7MDkGC2CGSAGG +EUBBxcBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEwCwYD VR0PBAQDAgWgMB0GA1UdJQQWMBQGCCsGAQUFBwMEBggrBgEFBQcDAjBKBgNVHR8EQzBBMD+g PaA7hjlodHRwOi8vSW5kQzFEaWdpdGFsSUQtY3JsLnZlcmlzaWduLmNvbS9JbmRDMURpZ2l0 YWxJRC5jcmwwDQYJKoZIhvcNAQEFBQADggEBABcuOD4QwMrXJgD8zvCWBRjBqsQLXn0ybqrL ZHlcic7+lstAl06fi7fGD3+1Nrcp4VImkyUvJQEvFSvkB+/Mt8kOVSdt+eiYIInKt/lBkSzy 0sardsh0u7Ifcgt+nmLZYW+azviXnD4VNMqeQ9QIZPHSUhWDe3IA5NSYE4hfqwXX5c13Hllq pUcXRmWIGA9MPr9SQxZ0jg7MFUsZVgG9f5TsA3yIEmvUgutyX6GRzZQL+wlWymRzh/XA7j2Q nYk+IPlNQHJ62MHHlAI48y3ssSXwR8hfbH4e0sw+8ezuh785OuFMBI3qhxlQX4wT8+v8rKHt iLcddoIohWM0ID+IdOExggTsMIIE6AIBATCB8jCB3TELMAkGA1UEBhMCVVMxFzAVBgNVBAoT DlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYD VQQLEzJUZXJtcyBvZiB1c2UgYXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykw NTEeMBwGA1UECxMVUGVyc29uYSBOb3QgVmFsaWRhdGVkMTcwNQYDVQQDEy5WZXJpU2lnbiBD bGFzcyAxIEluZGl2aWR1YWwgU3Vic2NyaWJlciBDQSAtIEcyAhBCS4Gdpv+YpvBtjKeiLgaT MAkGBSsOAwIaBQCgggLOMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkF MQ8XDTEwMDQyODA5MDI1MVowIwYJKoZIhvcNAQkEMRYEFNDhK48Xj8m2fvVh18Vlh5pSPT3U MF8GCSqGSIb3DQEJDzFSMFAwCwYJYIZIAWUDBAECMAoGCCqGSIb3DQMHMA4GCCqGSIb3DQMC AgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzANBggqhkiG9w0DAgIBKDCCAQMGCSsGAQQB gjcQBDGB9TCB8jCB3TELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8w HQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2Ug YXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykwNTEeMBwGA1UECxMVUGVyc29u YSBOb3QgVmFsaWRhdGVkMTcwNQYDVQQDEy5WZXJpU2lnbiBDbGFzcyAxIEluZGl2aWR1YWwg U3Vic2NyaWJlciBDQSAtIEcyAhBCS4Gdpv+YpvBtjKeiLgaTMIIBBQYLKoZIhvcNAQkQAgsx gfWggfIwgd0xCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UE CxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazE7MDkGA1UECxMyVGVybXMgb2YgdXNlIGF0IGh0 dHBzOi8vd3d3LnZlcmlzaWduLmNvbS9ycGEgKGMpMDUxHjAcBgNVBAsTFVBlcnNvbmEgTm90 IFZhbGlkYXRlZDE3MDUGA1UEAxMuVmVyaVNpZ24gQ2xhc3MgMSBJbmRpdmlkdWFsIFN1YnNj cmliZXIgQ0EgLSBHMgIQQkuBnab/mKbwbYynoi4GkzANBgkqhkiG9w0BAQEFAASCAQADqNOA IOD1RCyP2dneczjLJ4G0IIxxTMt5EOPCJRFAdRv8RnvVSnO+gCIm//a4vxv8B7fXtZdUcngo czqoIFUMNlGz7bH3qbMuvrWzeGFH6OaSCFWQtSvX/K8COd60/1JQ6xufaCfUbM+Rt7EOECii yD8GcCdysqj4nG8AYN0l1XTuDdsVhJpwmy9jMVzlJovRfEXBTOBY7zwiJOHMkdAwOM/tf3dP pcJPItlcDqYx0fl5YeBaT9gzxcWxj7qCsh1jAfqytCmMO0UJQ/tIDhy+pvQkDIvfXXD/LHHq fUm41dZdOBNqZ2BYj7THZ2cYdvBrPZh80qWnOBWE6np+IeOKAAAAAAAA --------------ms000109060801030403050803-- --===============1154981745== 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 --===============1154981745==-- From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 13:26:29 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3SBQGWA012342; Wed, 28 Apr 2010 13:26:26 +0200 Received: from vbmtbmm003.vodacombusiness.co.za (vbmtbmm003.vodacombusiness.co.za [41.0.3.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3S91q9J003283 for ; Wed, 28 Apr 2010 11:01:53 +0200 Received: from rocketseed1.vodacom.co.za (Not Verified[172.16.17.100]) by vbmtbmm003.vodacombusiness.co.za Vodacom Business Mail Content Filter id ; Wed, 28 Apr 2010 11:01:51 +0200 Received: from root by rocketseed1.vodacom.co.za with local (Exim 4.69) (envelope-from ) id 1O73Cf-0009QL-TG for libssh2-devel@cool.haxx.se; Wed, 28 Apr 2010 11:05:09 +0200 Received: from exim by rocketseed1.vodacom.co.za with split (Exim 4.69) (envelope-from ) id 1O73CW-0009KX-Ni for libssh2-devel@cool.haxx.se; Wed, 28 Apr 2010 11:05:00 +0200 Received: from [172.16.3.52] (helo=vbmtbmm003.vodacombusiness.co.za) by rocketseed1.vodacom.co.za with esmtp (Exim 4.69) (envelope-from ) id 1O73CW-0009KQ-Mv for libssh2-devel@cool.haxx.se; Wed, 28 Apr 2010 11:05:00 +0200 Received: from zamdc02501.vodacom.corp (Not Verified[41.0.27.151]) by vbmtbmm003.vodacombusiness.co.za Vodacom Business Mail Content Filter id ; Wed, 28 Apr 2010 11:01:41 +0200 Received: from zactn02500.vodacom.corp (10.126.1.68) by zamdc02501.vodacom.corp (10.102.208.90) with Microsoft SMTP Server (TLS) id 8.2.234.1; Wed, 28 Apr 2010 11:01:35 +0200 Received: from zactn02101.vodacom.corp ([10.126.1.15]) by zactn02500.vodacom.corp ([10.126.1.68]) with mapi; Wed, 28 Apr 2010 11:01:35 +0200 From: Faizel Isaacs To: "'libssh2-devel@cool.haxx.se'" Date: Wed, 28 Apr 2010 11:01:34 +0200 Subject: SSH public key authentication failed: Invalid signature for supplied public key, or bad username/public key combination Thread-Topic: SSH public key authentication failed: Invalid signature for supplied public key, or bad username/public key combination Thread-Index: AcrmsWcyFSFUnrYLRuKV6hPu0dluog== Message-ID: <203bfe72-52a5-11df-af2a-001b787@rocketseed1.vodacom.co.za> Accept-Language: en-US, en-ZA X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US, en-ZA MIME-Version: 1.0 X-Recipient-Count: 1 X-MS-Request-Fidelity: high X-Rocketseed: YES X-Mailman-Approved-At: Wed, 28 Apr 2010 13:26:15 +0200 X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============0029565078==" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se This is a multi-part message in MIME format. --===============0029565078== Content-Type: multipart/related; boundary="1660402607_related" This is a multi-part message in MIME format. --1660402607_related Content-Type: multipart/alternative; boundary="1984106731_alternative" --1984106731_alternative Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable http://www.vodafonelive.co.za/ Hi There I'm getting the following sporadic error from libssh. SSH public key authentication failed: Invalid signature for supplied public= key, or bad username/public key combination I've browsed through previous archives and I do see that some other people = also complained about this issue. I'm currently running the below release l= evels for the product. I do see that there's a new version of libssh2 avail= able does this new release cater for the sporadic error? curl 7.19.2 (ia64-hp-hpux11.31) libcurl/7.19.2 OpenSSL/0.9.8d libssh2/1.0 Protocols: tftp ftp telnet dict ldap http file https ftps scp sftp Features: IPv6 Largefile NTLM SSL Regards Faizel =93This e-mail is sent on the Terms and Conditions that can be accessed by = Clicking on this link http://www.vodacom.co.za/legal/email.jsp " --1984106731_alternative Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable
3D"http://www.vodafonelive.co.za/"
 

Hi There

 

I’m getting the following sporadic error from libs= sh.

 

SSH public key authentication failed: Invalid signature = for supplied public key, or bad username/public key combination

 

 

I’ve browsed through previous archives and I do se= e that some other people also complained about this issue. I’m currentl= y running the below release levels for the product. I do see that there’s a new= version of libssh2 available does this new release cater for the sporadic error?

 

curl 7.19.2 (ia64-hp-hpux11.31) libcurl/7.19.2 OpenSSL/0= =2E9.8d libssh2/1.0

Protocols: tftp ftp telnet dict ldap http file https ftp= s scp sftp

Features: IPv6 Largefile NTLM SSL

 

Regards

Faizel

“This e-mail is sent on the Terms and Conditions that can be accessed= by Clicking on this link http://www.vodacom.co.za/legal/email.jsp "
 
--1984106731_alternative-- --1660402607_related Content-Type: image/gif; name="rocketseed_insert1.gif" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="rocketseed_insert1.gif" Content-ID: <13908.227afa76-52a5-11df-b684-001b787@cid.rocketseed.com> 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 1UOHgAAAOw== --1660402607_related-- --===============0029565078== 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 --===============0029565078==-- From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 13:29:41 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3SBTdCU014184; Wed, 28 Apr 2010 13:29:41 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3SBTcJN014178 for ; Wed, 28 Apr 2010 13:29:38 +0200 Date: Wed, 28 Apr 2010 13:29:38 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: VMS port In-Reply-To: <4BD7F9BB.1050400@peut.org> Message-ID: References: <4BD7F9BB.1050400@peut.org> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Wed, 28 Apr 2010, Jose Baars wrote: > I downloaded yesterday's build and I didn't find the VMS subdirectory. > Did I do something wrong? Ah, we forgot to mention the new files in Makefile.am. Fixed now! -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 13:34:29 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3SBYOeh016218; Wed, 28 Apr 2010 13:34:27 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3SBYMNT016201 for ; Wed, 28 Apr 2010 13:34:22 +0200 Received: (qmail 7097 invoked by uid 501); 28 Apr 2010 11:34:26 -0000 Message-ID: <20100428113426.7096.qmail@stuge.se> Date: Wed, 28 Apr 2010 13:34:26 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: SSH public key authentication failed: Invalid signature for supplied public key, or bad username/public key combination Mail-Followup-To: libssh2-devel@cool.haxx.se References: <203bfe72-52a5-11df-af2a-001b787@rocketseed1.vodacom.co.za> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <203bfe72-52a5-11df-af2a-001b787@rocketseed1.vodacom.co.za> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se SGkgRmFpemVsLAoKRmFpemVsIElzYWFjcyB3cm90ZToKPiBJJ20gZ2V0dGluZyB0aGUgZm9sbG93 aW5nIHNwb3JhZGljIGVycm9yIGZyb20gbGlic3NoLgo+IAo+IFNTSCBwdWJsaWMga2V5IGF1dGhl bnRpY2F0aW9uIGZhaWxlZDoKPiBJbnZhbGlkIHNpZ25hdHVyZSBmb3Igc3VwcGxpZWQgcHVibGlj IGtleSwgb3IgYmFkIHVzZXJuYW1lL3B1YmxpYwo+IGtleSBjb21iaW5hdGlvbgoKWW91IGRpZG4n dCBzYXkgd2hhdCBrZXkgdHlwZSB5b3UgYXJlIHVzaW5nLCBidXQgSSBzdXNwZWN0IHRoYXQgdGhp cwppcyBvbmUgb2YgdGhlIERTQSBidWdzIHRoYXQgaGF2ZSBiZWVuIGZpeGVkLgoKCj4gSSdtIGN1 cnJlbnRseSBydW5uaW5nIHRoZSBiZWxvdyByZWxlYXNlIGxldmVscyBmb3IgdGhlIHByb2R1Y3Qu Cj4gCj4gY3VybCA3LjE5LjIgKGlhNjQtaHAtaHB1eDExLjMxKSBsaWJjdXJsLzcuMTkuMiBPcGVu U1NMLzAuOS44ZCBsaWJzc2gyLzEuMAoKbGlic3NoMi0xLjAgaXMgYWxtb3N0IDHCvSB5ZWFyIG9s ZC4KCgo+IEkgZG8gc2VlIHRoYXQgdGhlcmUncyBhIG5ldyB2ZXJzaW9uIG9mIGxpYnNzaDIgYXZh aWxhYmxlIGRvZXMgdGhpcwo+IG5ldyByZWxlYXNlIGNhdGVyIGZvciB0aGUgc3BvcmFkaWMgZXJy b3I/CgpZZXMsIEkgYmVsaWV2ZSB5b3UgYXJlIHNlZWluZyBhbiBpc3N1ZSB3aGljaCB3YXMgZml4 ZWQgYmFjayBpbgpEZWNlbWJlciBhbmQgd2FzIGZpcnN0IGF2YWlsYWJsZSBpbiB0aGUgbGlic3No Mi0xLjIuMyByZWxlYXNlLiBJCndvdWxkIGhvd2V2ZXIgcmVjb21tZW5kIHlvdSB0byB1cGdyYWRl IHRvIGF0IGxlYXN0IGxpYnNzaDItMS4yLjQKc2luY2UgaXQgaW5jbHVkZXMgb3RoZXIgaW1wb3J0 YW50IGJ1Z2ZpeGVzLiBGZWVsIGZyZWUgdG8gdHJ5IHRoZSBtb3N0CnJlY2VudCByZWxlYXNlIDEu Mi41LCBidXQgSSBiZWxpZXZlIGl0IG1heSBzdWZmZXIgZnJvbSBhIGJ1aWxkIGVycm9yCmJ1ZyBv biB5b3VyIHBsYXRmb3JtLiAoVGhhdCBidWcgaXMgZml4ZWQgaW4gZ2l0LCBzbyBpZiB5b3UgcHJl ZmVyIHlvdQpjYW4gYWxzbyB1c2UgbGF0ZXN0IGdpdCBzb3VyY2UuKQoKCi8vUGV0ZXIKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGlic3NoMi1kZXZlbCBo dHRwOi8vY29vbC5oYXh4LnNlL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9saWJzc2gyLWRldmVs Cg== From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 14:37:57 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3SCbmvg026562; Wed, 28 Apr 2010 14:37:56 +0200 Received: from mail-pw0-f54.google.com (mail-pw0-f54.google.com [209.85.160.54]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3SCbjpR026509 for ; Wed, 28 Apr 2010 14:37:46 +0200 Received: by pwi9 with SMTP id 9so10358440pwi.41 for ; Wed, 28 Apr 2010 05:37:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:content-type:content-transfer-encoding; bh=WUKbydY58USQ327TjCOkh8Lsx9US9zSjmwp9WN633Xs=; b=sOjoRdC1E2vrG5PejvV4P9gGYKsjkoMJsfoewtj9tDXqWSpdu9l7Ck4Y5X/CAkJ9xt 89Yo/oy/iQv4SJBgmED20r6O+zSPE5ZbpGhmSq1G2XnMX7nB7MOJsNicf9Eto/tePPz1 9LU6qM/TbQFFO/jxmM4MOZLDfDCAqc127+4Tw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type :content-transfer-encoding; b=wfjBSLCxFf00rMdTYnSIY41BG3Q4cQbkBIkjI2xMztL4ZDFwevwel7cghhzdACshak 8VGHvdkedsnEofVmuWEmIMC0df2Wq+HAR7/o/ZRVxJ4DpU28DjsfFqn/CEjD0wIAGkaR IP0ATb9IqtuO34ZVVLOJ7LLPmY0A4kEri2Rjc= MIME-Version: 1.0 Received: by 10.143.154.27 with SMTP id g27mr4159448wfo.333.1272458264066; Wed, 28 Apr 2010 05:37:44 -0700 (PDT) Received: by 10.142.191.4 with HTTP; Wed, 28 Apr 2010 05:37:43 -0700 (PDT) In-Reply-To: References: <20100427222734.18735.qmail@earth.stuge.se> <20100428001029.12259.qmail@stuge.se> Date: Wed, 28 Apr 2010 13:37:44 +0100 X-Google-Sender-Auth: 98f451cf975af363 Message-ID: Subject: Re: libssh2 master 37624b6 sftp_attrsize: converted function to a macro From: Alexander Lamaison To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On 28 April 2010 07:38, Daniel Stenberg wrote: > On Wed, 28 Apr 2010, Alexander Lamaison wrote: > >>> sftp_attrsize: converted function to a macro >> >>> This way, the macro can evaluate a static number at compile time >>> for two out of four uses, and it probably runs faster for the >>> other two cases too. >> >> Oh please no. >> >> These kind of hand optimisations are almost always useless. =A0Was there= any >> other reason for the conversion except performance? =A0If not, was there= a >> benchmark to show this was a bottleneck and the macro fixed it? > > First, I disagree that these things "are almost always useless". I would love to see evidence of their benefit. > But my primary motivation for chaning this was that I really didn't like = how > the function took a struct pointer as argument and only checked/used the > flag field within the function, and in 50% of the use cases it is a static > flag known at compile-time. > > To me, this makes it A LOT clearer that sftp_attrsize() only checks the f= lag > (and no other attr struct magic is involved) and returns a size based on > that. This is great. But can we have it as a function? Is there any reason not to write: /* sftp_attrsize * Size that attr with this flagset will occupy when turned into a bin stru= ct */ static int sftp_attrsize(unsigned long flags) { return (4 + /* flags(4) */ ((flags & LIBSSH2_SFTP_ATTR_SIZE)?8:0) + ((flags & LIBSSH2_SFTP_ATTR_UIDGID)?8:0) + ((flags & LIBSSH2_SFTP_ATTR_PERMISSIONS)?4:0) + ((flags & LIBSSH2_SFTP_ATTR_ACMODTIME)?8:0)); /* atime + mtime as u= 32 */ } > It being a macro or function is less important then, but I just didn't > think a full function was motivated once I changed the input argument - a= nd > a macro seemed simple and easy enough. I don't think we should introduce any new macros to libssh2 unless there is no other way to achieve the same effect (e.g. BLOCK_ADJUST). They just aren't worth the reduction in safety, readability and maintainability. Alex _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Wed Apr 28 16:06:12 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3SE606a025576; Wed, 28 Apr 2010 16:06:09 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3SE5wp2025508 for ; Wed, 28 Apr 2010 16:05:58 +0200 Date: Wed, 28 Apr 2010 16:05:58 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: libssh2 master 37624b6 sftp_attrsize: converted function to a macro In-Reply-To: Message-ID: References: <20100427222734.18735.qmail@earth.stuge.se> <20100428001029.12259.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Wed, 28 Apr 2010, Alexander Lamaison wrote: >> First, I disagree that these things "are almost always useless". > > I would love to see evidence of their benefit. It of course depends entirely on the situation where it is made and for what target etc, but I'm primarily involved in embedded systems on less powerful CPUs and I've seen DRAMATIC improvements by simple changes such as these. I'm however not suggesting that this change has any measurable impact on libssh2 performance. As I explained, I saw several benefits with my edit. > This is great. But can we have it as a function? Is there any reason not > to write: If you think it is important enough, then please proceed and push that change. I don't feel strongly enough about it to keep it like that against anyone's expressed will. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 29 15:26:20 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3TDQ3Bf025380; Thu, 29 Apr 2010 15:26:17 +0200 Received: from mail-fx0-f54.google.com (mail-fx0-f54.google.com [209.85.161.54]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3TDQ1T3025293 for ; Thu, 29 Apr 2010 15:26:02 +0200 Received: by fxm15 with SMTP id 15so1023414fxm.41 for ; Thu, 29 Apr 2010 06:26:01 -0700 (PDT) MIME-Version: 1.0 Received: by 10.239.193.17 with SMTP id g17mr894003hbi.13.1272547561420; Thu, 29 Apr 2010 06:26:01 -0700 (PDT) Received: by 10.239.161.16 with HTTP; Thu, 29 Apr 2010 06:26:01 -0700 (PDT) In-Reply-To: References: <4BD7F9BB.1050400@peut.org> Date: Thu, 29 Apr 2010 15:26:01 +0200 Message-ID: Subject: Re: VMS port From: Jose Baars To: libssh2 development Content-Type: multipart/mixed; boundary=001636498fd95bb70904856011ae X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se --001636498fd95bb70904856011ae Content-Type: multipart/alternative; boundary=001636498fd95bb6f504856011ac --001636498fd95bb6f504856011ac Content-Type: text/plain; charset=ISO-8859-1 Hi, Found out I missed out on the VMS specific libssh2_config.h Attached a patch to last night's build that adds this file. Jose 2010/4/28 Daniel Stenberg > On Wed, 28 Apr 2010, Jose Baars wrote: > > I downloaded yesterday's build and I didn't find the VMS subdirectory. >> Did I do something wrong? >> > > Ah, we forgot to mention the new files in Makefile.am. Fixed now! > > > -- > > / daniel.haxx.se > _______________________________________________ > libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel > --001636498fd95bb6f504856011ac Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hi,

Found out I missed out on the VMS specific libssh2_config.h Attached a patch to last night's build that adds this file.

Jos= e


2010/4/28 Daniel Stenberg <daniel@haxx.se>
On Wed, 28 Apr 2010, Jose Baars wrote:

I downloaded yesterday's build and I didn't find the VMS subdirecto= ry.
Did I do something wrong?

Ah, we forgot to mention the new files in Makefile.am. Fixed now!
=


--

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

--001636498fd95bb6f504856011ac-- --001636498fd95bb70904856011ae Content-Type: application/octet-stream; name="0001-Add-VMS-specific-libssh2_config.h.patch" Content-Disposition: attachment; filename="0001-Add-VMS-specific-libssh2_config.h.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g8llyqh40 RnJvbSAxMmMzNzFhZDE4Njk4NDJjNTI5ZTM4YTI3MWRjNmUzMmU3NTY0Njc3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQ0KRnJvbTogSm9zZSBCYWFycyA8cGV1dEBwZXV0Lm9yZz4NCkRhdGU6IFRo dSwgMjkgQXByIDIwMTAgMDk6MTU6NTIgLTA0MDANClN1YmplY3Q6IFtQQVRDSF0gQWRkIFZNUyBz cGVjaWZpYyBsaWJzc2gyX2NvbmZpZy5oDQoKLS0tDQogdm1zL2xpYnNzaDJfY29uZmlnLmggfCAg IDgyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQog MSBmaWxlcyBjaGFuZ2VkLCA4MiBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQ0KIGNyZWF0 ZSBtb2RlIDEwMDY0NCB2bXMvbGlic3NoMl9jb25maWcuaA0KCmRpZmYgLS1naXQgYS92bXMvbGli c3NoMl9jb25maWcuaCBiL3Ztcy9saWJzc2gyX2NvbmZpZy5oDQpuZXcgZmlsZSBtb2RlIDEwMDY0 NA0KaW5kZXggMDAwMDAwMC4uMmViMDlhOA0KLS0tIC9kZXYvbnVsbA0KKysrIGIvdm1zL2xpYnNz aDJfY29uZmlnLmgNCkBAIC0wLDAgKzEsODIgQEANCisjaWZuZGVmIExJQlNTSDJfQ09ORklHX0gN CisjaWZkZWYgX19WTVMNCisNCisjZGVmaW5lIExJQlNTSDJfQ09ORklHX0gNCisNCisvKiBWTVMg c3BlY2lmaWMgbGlic3NoMl9jb25maWcuaA0KKyAqLw0KKw0KKyNkZWZpbmUgc3NpemVfdCBTU0la RV9UDQorDQordHlwZWRlZiB1bnNpZ25lZCBpbnQgdWludDMyX3QgOw0KK3R5cGVkZWYgdW5zaWdu ZWQgaW50IHNvY2tsZW5fdDsgLyogbWlzc2luZyBpbiBoZWFkZXJzIG9uIFZNUyAqLw0KKw0KKy8q IEhhdmUncyAqLw0KKw0KKyNkZWZpbmUgSEFWRV9VTklTVERfSA0KKyNkZWZpbmUgSEFWRV9JTlRU WVBFU19IDQorI2RlZmluZSBIQVZFX1NZU19USU1FX0gNCisjZGVmaW5lIEhBVkVfU0VMRUNUDQor I2RlZmluZSBIQVZFX1VJTw0KKw0KKyNkZWZpbmUgSEFWRV9TWVNfU09DS0VULkgNCisjZGVmaW5l IEhBVkVfTkVUSU5FVF9JTl9IDQorI2RlZmluZSBIQVZFX0FSUEFfSU5FVF9IDQorDQorI2RlZmlu ZSBQT1NJWF9DX1NPVVJDRQ0KKw0KKy8qIEVuYWJsZSB0aGUgcG9zc2liaWxpdHkgb2YgdXNpbmcg dHJhY2luZyAqLw0KKyANCisjZGVmaW5lIExJQlNTSDJERUJVRyAxDQorDQorLyogRm9yIHNlbGVj dGlvbiBvZiBwcm9wZXIgYmxvY2svdW5ibG9jayBmdW5jdGlvbiBpbiBzZXNzaW9uLmMgKi8NCisN CisjZGVmaW5lIEhBVkVfRklPTkJJTw0KKw0KKyNpbmNsdWRlIDxzdHJvcHRzLmg+DQorDQorLyog SW4gVk1TIFRDUC9JUCBTZXJ2aWNlcyBhbmQgc29tZSBCU0QgdmFyaWFudHMgU09fU1RBVEUgcmV0 cmlldmVzIA0KKyAqIGEgYml0bWFzayByZXZlYWxpbmcgYW1vbmdzdCBvdGhlcnMgdGhlIGJsb2Nr aW5nIHN0YXRlIG9mIHRoZSANCisgKiBzb2NrZXQuIE9uIFZNUyB0aGUgYml0cyBhcmUgdW5kb2N1 bWVudGVkLCBidXQgIFNTX05CSU8NCisgKiB3b3JrcywgSSBkaWQgbm90IHRlc3QgdGhlIG90aGVy IGJpdHMuIEJlbG93IGJpdGRlZnMgYXJlIA0KKyAqIGZyb20gQmVya2VseSBzb3VyY2Ugc29ja2V0 dmFyLmggYXQgICANCisgKiBodHRwOi8vZnRwLmZpYnJhbmV0LmNhdC9Vbml4QXJjaGl2ZS9QRFAt MTEvVHJlZXMvMi4xMUJTRC9zeXMvaC9zb2NrZXR2YXIuaA0KKyAqICBTb2NrZXQgc3RhdGUgYml0 cy4NCisgKiAgI2RlZmluZSBTU19OT0ZEUkVGICAgICAgICAgIDB4MDAxICAgIG5vIGZpbGUgdGFi bGUgcmVmIGFueSBtb3JlIA0KKyAqICAjZGVmaW5lIFNTX0lTQ09OTkVDVEVEICAgICAgMHgwMDIg ICAgc29ja2V0IGNvbm5lY3RlZCB0byBhIHBlZXIgDQorICogICNkZWZpbmUgU1NfSVNDT05ORUNU SU5HICAgICAweDAwNCAgICBpbiBwcm9jZXNzIG9mIGNvbm5lY3RpbmcgdG8gcGVlciANCisgKiAg I2RlZmluZSBTU19JU0RJU0NPTk5FQ1RJTkcgIDB4MDA4ICAgIGluIHByb2Nlc3Mgb2YgZGlzY29u bmVjdGluZyANCisgKiAgI2RlZmluZSBTU19DQU5UU0VORE1PUkUgICAgIDB4MDEwICAgIGNhbid0 IHNlbmQgbW9yZSBkYXRhIHRvIHBlZXIgDQorICogICNkZWZpbmUgU1NfQ0FOVFJDVk1PUkUgICAg ICAweDAyMCAgICBjYW4ndCByZWNlaXZlIG1vcmUgZGF0YSBmcm9tIHBlZXIgDQorICogICNkZWZp bmUgU1NfUkNWQVRNQVJLICAgICAgICAweDA0MCAgICBhdCBtYXJrIG9uIGlucHV0IA0KKyAqICAj ZGVmaW5lIFNTX1BSSVYgICAgICAgICAgICAgMHgwODAgICAgcHJpdmlsZWdlZCBmb3IgYnJvYWRj YXN0LCByYXcuLi4gDQorICogICNkZWZpbmUgU1NfTkJJTyAgICAgICAgICAgICAweDEwMCAgICBu b24tYmxvY2tpbmcgb3BzIA0KKyAqICAjZGVmaW5lIFNTX0FTWU5DICAgICAgICAgICAgMHgyMDAg ICAgYXN5bmMgaS9vIG5vdGlmeSANCisgKg0KKyAqLw0KKw0KKyNpZmRlZiBTT19TVEFURQ0KKw0K Ky8qIFNPX1NUQVRFIGlzIGRlZmluZWQgaW4gc3Ryb3B0cy5oICBieSBERUNDDQorICogV2hlbiBy dW5uaW5nIG9uIE11bHRpbmV0LCBTT19TVEFURSByZW5kZXJzIGEgcHJvdG9jb2wNCisgKiBub3Qg c3RhcnRlZCBlcnJvci4gRnVuY3Rpb25hbGx5IHRoaXMgaGFzIG5vIGltcGFjdCwNCisgKiBhcGFy dCBmcm9tIGxpYnNzaDIgbm90IGJlaW5nIGFibGUgdG8gcmVzdG9yZSB0aGUgc29ja2V0DQorICog dG8gdGhlIHByb3BlciBibG9ja2luZy9ub24tYmxvY2tpbmcgc3RhdGUuICANCisgKi8NCisNCisj ZGVmaW5lIFNTX05CSU8gICAgICAgICAweDEwMCANCisNCisjZW5kaWYNCisNCisvKiBDb21waWxl IGluIHpsaWIgc3VwcG9ydC4gV2UgbGluayBhZ2FpbnN0IGdudiRsaWJ6c2hyLCBhcyBhdmFpbGFi bGUNCisgKiBvbiBlbmNvbXBhc3NlcnZlLmNvbS4NCisgKi8NCisNCisjZGVmaW5lIExJQlNTSDJf SEFWRV9aTElCDQorDQorLyogRW5hYmxlIG5ld2VyIGRpZmZpZS1oZWxsbWFuLWdyb3VwLWV4Y2hh bmdlLXNoYTEgc3ludGF4ICovDQorDQorI2RlZmluZSBMSUJTU0gyX0RIX0dFWF9ORVcgMQ0KKw0K KyNlbmRpZiAvKiBfX1ZNUyAqLw0KKyNlbmRpZiAvKiBMSUJTU0gyX0NPTkZJR19IICovICAgICAg ICAgICAgICAgICAgICAgICAgICAgICANCi0tIA0KMS42LjYuMQ0KCg== --001636498fd95bb70904856011ae 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 --001636498fd95bb70904856011ae-- From libssh2-devel-bounces@cool.haxx.se Thu Apr 29 17:28:10 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3TFRwDd015433; Thu, 29 Apr 2010 17:28:09 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3TFRvLw015391 for ; Thu, 29 Apr 2010 17:27:57 +0200 Received: (qmail 16187 invoked by uid 501); 29 Apr 2010 15:28:02 -0000 Message-ID: <20100429152802.16186.qmail@stuge.se> Date: Thu, 29 Apr 2010 17:28:02 +0200 From: Peter Stuge To: libssh2 development Subject: Adopt python bindings? Mail-Followup-To: libssh2 development MIME-Version: 1.0 Content-Disposition: inline X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Hi! Sebastian (wallunit on IRC) has been making some nice improvements to the python bindings for libssh2, currently on github: http://github.com/wallunit/ssh4py-wallunit/commits/master I was thinking that maybe we want to adopt the bindings into the libssh2 project, since Sebastian is prepared to keep them up to date with the C library. For now it would basically mean another git repo on the server and a new component in Trac. Unfortunately Trac doesn't handle multiple repos, but maybe that's not a big deal for now, and I'm also looking into the mtrack project which may be a relevant replacement for Trac. (Completely inspired by Trac, but multirepo from the start.) (Or, of course, a multirepo TracHack would work, but that situation hasn't really changed much lately AFAIK, I guess it's just a bad fit for the design of Trac. :\) Does anyone feel particularly strongly *against* having some official python bindings? //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Thu Apr 29 19:52:42 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3THqPlB016576; Thu, 29 Apr 2010 19:52:38 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3THqOYZ016570 for ; Thu, 29 Apr 2010 19:52:24 +0200 Date: Thu, 29 Apr 2010 19:52:24 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: Adopt python bindings? In-Reply-To: <20100429152802.16186.qmail@stuge.se> Message-ID: References: <20100429152802.16186.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Thu, 29 Apr 2010, Peter Stuge wrote: > I was thinking that maybe we want to adopt the bindings into the libssh2 > project, since Sebastian is prepared to keep them up to date with the C > library. I don't mind. I've seen projects successfully and unsuccessfully use either way so I think it's mostly a matter of what the guys working on the actual binding want. However, if we should have "official" bindings I think we should strive at having them very thin layered and to add as little extra intelligence and logic as possible. That makes bindings look more similar and follow the library's own concept more and it'll be easier to help out between bindings and to share docs etc. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Fri Apr 30 00:26:47 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3TMQYei014198; Fri, 30 Apr 2010 00:26:45 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3TMQWTn014180 for ; Fri, 30 Apr 2010 00:26:32 +0200 Received: (qmail 4118 invoked by uid 501); 29 Apr 2010 22:26:39 -0000 Message-ID: <20100429222639.4117.qmail@stuge.se> Date: Fri, 30 Apr 2010 00:26:38 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: libssh2 master 204100e KEX: stop pretending we negotiate language Mail-Followup-To: libssh2-devel@cool.haxx.se References: <20100429220407.30248.qmail@earth.stuge.se> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20100429220407.30248.qmail@earth.stuge.se> X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se libssh2@git.stuge.se wrote: > Commit: Daniel Stenberg > > KEX: stop pretending we negotiate language > > There was some stub-like parts of an implementation for > implementing kex language negotiation that caused clang-analyzer > to warn and as it did nothing I've now removed the dead code. It isn't removed at all, it has just been under the cpp carpet. Please do actually remove the code! > +++ b/src/kex.c .. > @@ -1547,6 +1547,7 @@ static int kex_agree_methods(LIBSSH2_SESSION * session, unsigned char *data, > s += 4 + comp_cs_len; > comp_sc_len = _libssh2_ntohu32(s); > comp_sc = s + 4; > +#if 0 > s += 4 + comp_sc_len; > lang_cs_len = _libssh2_ntohu32(s); > lang_cs = s + 4; > @@ -1554,7 +1555,7 @@ static int kex_agree_methods(LIBSSH2_SESSION * session, unsigned char *data, > lang_sc_len = _libssh2_ntohu32(s); > lang_sc = s + 4; > s += 4 + lang_sc_len; > - > +#endif //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Fri Apr 30 08:08:47 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3U68Xcm000602; Fri, 30 Apr 2010 08:08:45 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3U68VNc000596 for ; Fri, 30 Apr 2010 08:08:31 +0200 Date: Fri, 30 Apr 2010 08:08:31 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: libssh2 master 204100e KEX: stop pretending we negotiate language In-Reply-To: <20100429222639.4117.qmail@stuge.se> Message-ID: References: <20100429220407.30248.qmail@earth.stuge.se> <20100429222639.4117.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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Fri, 30 Apr 2010, Peter Stuge wrote: >> There was some stub-like parts of an implementation for >> implementing kex language negotiation that caused clang-analyzer >> to warn and as it did nothing I've now removed the dead code. > > It isn't removed at all, it has just been under the cpp carpet. Please do > actually remove the code! I'm generally of that same opinion, but in this particular case I left it #if 0'ed simply because the code is now easier to actually put back and to make real use of plus it reminds the reader of that code that it doesn't actually do the language negotiate at this point. -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Fri Apr 30 08:31:42 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3U6VbhG016048; Fri, 30 Apr 2010 08:31:41 +0200 Received: from foo.birdnet.se (qmailr@foo.birdnet.se [213.88.146.6]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with SMTP id o3U6VZ9f016045 for ; Fri, 30 Apr 2010 08:31:35 +0200 Received: (qmail 27571 invoked by uid 501); 30 Apr 2010 06:31:38 -0000 Message-ID: <20100430063138.27570.qmail@stuge.se> Date: Fri, 30 Apr 2010 08:31:38 +0200 From: Peter Stuge To: libssh2-devel@cool.haxx.se Subject: Re: libssh2 master 204100e KEX: stop pretending we negotiate language Mail-Followup-To: libssh2-devel@cool.haxx.se References: <20100429220407.30248.qmail@earth.stuge.se> <20100429222639.4117.qmail@stuge.se> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se Daniel Stenberg wrote: >>> to warn and as it did nothing I've now removed the dead code. >> >> Please do actually remove the code! > > it reminds the reader of that code that it doesn't actually do the > language negotiate at this point. Well, reading the git log does that too.. :) //Peter _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Fri Apr 30 12:37:40 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3UAbQQo010953; Fri, 30 Apr 2010 12:37:36 +0200 Received: from giant.haxx.se (giant.haxx.se [83.168.254.42]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3UAbOjW010947 for ; Fri, 30 Apr 2010 12:37:24 +0200 Date: Fri, 30 Apr 2010 12:37:24 +0200 (CEST) From: Daniel Stenberg X-X-Sender: dast@giant.haxx.se To: libssh2 development Subject: Re: New scan-build w debug and verbosity In-Reply-To: Message-ID: References: <4BC8321C.8020903@Strombergson.com> 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.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On Sat, 17 Apr 2010, Daniel Stenberg wrote: > http://www.libssh2.org/scans/ As of my push just a few minutes ago, I believe the number of warnings in the clang-scan is now down to: 0 (zero) -- / daniel.haxx.se _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel From libssh2-devel-bounces@cool.haxx.se Fri Apr 30 13:01:47 2010 Return-Path: Received: from giant.haxx.se (localhost.localdomain [127.0.0.1]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3UB1iLj030746; Fri, 30 Apr 2010 13:01:46 +0200 Received: from mail-pw0-f54.google.com (mail-pw0-f54.google.com [209.85.160.54]) by giant.haxx.se (8.14.3/8.14.3/Debian-9) with ESMTP id o3UB1fIB030610 for ; Fri, 30 Apr 2010 13:01:41 +0200 Received: by pwi9 with SMTP id 9so35408pwi.41 for ; Fri, 30 Apr 2010 04:01:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:content-type:content-transfer-encoding; bh=WiuBSp6VteMy78Vq62FdLWsomOKf2dTyOXpCu0bkkO8=; b=fYocQZwz0HwxGxkKbqsUzQ0JISaraztlF69PYjGabaotMErJExwU+HHnK6Vmqrkg1W vgVP1GcJ90xEJwzEJXyvXPnfyUaDauGn97bt+rDYXLRQ8+P2nRUl8C3OQ9cVOTtLOdN0 2KJu+sTQqMCTBy2ufyp2AjN2sktdbi8yAdQX0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type :content-transfer-encoding; b=H+CXgyExHJOcQb80KGwG9Ox0LeVx/Xyxssz6ivQWfWKBoXTqVYUgg6l08usRr83BgM UOAJ7WvcXm0+GqnF8w4SpjsblpCCH6/bWYKjQ8L1ACiNdDqpt3NItnr8MTl9V4BSlMDV hCZSFvf8BKbPBvCd46JxQGCcYBhfSeY4qz+Sc= MIME-Version: 1.0 Received: by 10.142.59.4 with SMTP id h4mr6323103wfa.130.1272625299272; Fri, 30 Apr 2010 04:01:39 -0700 (PDT) Received: by 10.142.191.4 with HTTP; Fri, 30 Apr 2010 04:01:39 -0700 (PDT) In-Reply-To: References: <4BC8321C.8020903@Strombergson.com> Date: Fri, 30 Apr 2010 12:01:39 +0100 X-Google-Sender-Auth: 6f021401f4c29b74 Message-ID: Subject: Re: New scan-build w debug and verbosity From: Alexander Lamaison To: libssh2 development X-BeenThere: libssh2-devel@cool.haxx.se X-Mailman-Version: 2.1.12 Precedence: list Reply-To: libssh2 development List-Id: libssh2 development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sender: libssh2-devel-bounces@cool.haxx.se Errors-To: libssh2-devel-bounces@cool.haxx.se On 30 April 2010 11:37, Daniel Stenberg wrote: > On Sat, 17 Apr 2010, Daniel Stenberg wrote: > >> http://www.libssh2.org/scans/ > > As of my push just a few minutes ago, I believe the number of warnings in > the clang-scan is now down to: > > =A0 =A0 =A0 =A00 (zero) Woo! Good job Daniel :) _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel