Re: [lftp] lftp-4.7.6 compilation error - lftp_ssl.cc:1069:17: error: aggregate 'X509_OBJECT obj' has incomplete type and cannot be defined

2017-02-16 Thread Justin Piszcz
Hello,

It works, thanks!

I've pulled git commit:7afda346f7040196b984cfbd924d220798942bf8
https://github.com/lavv17/lftp/pull/323/commits/7afda346f7040196b984cfbd924d220798942bf8

$ lftp --version
LFTP | Version 4.7.6 | Copyright (c) 1996-2017 Alexander V. Lukyanov

LFTP is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with LFTP.  If not, see .

Send bug reports and questions to the mailing list .

Libraries used: Readline 7.0, Expat 2.2.0, zlib 1.2.8

Thank you,

Justin.





On Thu, Feb 16, 2017 at 8:13 AM, Alexander V. Lukyanov  wrote:
> Please test "compile-with-openssl-1-1-0" branch from github. Thanks!
>
> --
>Alexander.
___
lftp mailing list
lftp@uniyar.ac.ru
http://univ.uniyar.ac.ru/mailman/listinfo/lftp


Re: [lftp] lftp-4.7.6 compilation error - lftp_ssl.cc:1069:17: error: aggregate 'X509_OBJECT obj' has incomplete type and cannot be defined

2017-02-16 Thread Alexander V. Lukyanov
Please test "compile-with-openssl-1-1-0" branch from github. Thanks!

--
   Alexander.
___
lftp mailing list
lftp@uniyar.ac.ru
http://univ.uniyar.ac.ru/mailman/listinfo/lftp


Re: [lftp] lftp-4.7.6 compilation error - lftp_ssl.cc:1069:17: error: aggregate 'X509_OBJECT obj' has incomplete type and cannot be defined

2017-02-16 Thread Lars Viklund

Hi,

Among other things, OpenSSL 1.1 apparently turns all previously 
inspectable structs opaque.
They now require you to hold them by pointer, use accessor functions to 
access their fields, and use the new/free functions to make/destroy them.


A quick Bing search revealed this wiki page: 
https://wiki.openssl.org/index.php/1.1_API_Changes


On 02/16/2017 10:52 AM, Justin Piszcz wrote:

Hello,

lftp-4.7.6 on Debian x86-64-


make[2]: Entering directory '/home/user/lftp-4.7.6/src'
/bin/bash ../libtool --silent  --tag=CXX   --mode=link g++  -O2 -Wall
-Wwrite-strings -Woverloaded-virtual -fno-exceptions -fno-rtti
-fno-implement-inlines -avoid-version -rpath
/app/lftp-4.7.6-x86_64/lib/lftp/4.7.6 -s -o liblftp-pty.la  PtyShell.lo
lftp_pty.lo SSH_Access.lo  -lutil -ltinfo -ldl
ar: `u' modifier ignored since `D' is the default (see `U')
/bin/bash ../libtool --silent  --tag=CXX   --mode=compile g++
-DHAVE_CONFIG_H -I. -I../lib  -I../lib -I../trio  -I/usr/include-O2
-Wall -Wwrite-strings -Woverloaded-virtual -fno-exceptions -fno-rtti
-fno-implement-inlines -MT liblftp_network_la-lftp_ssl.lo -MD -MP -MF
.deps/liblftp_network_la-lftp_ssl.Tpo -c -o liblftp_network_la-lftp_ssl.lo
`test -f 'lftp_ssl.cc' || echo './'`lftp_ssl.cc
lftp_ssl.cc: In static member function 'static int
lftp_ssl_openssl::verify_crl(X509_STORE_CTX*)':
lftp_ssl.cc:1069:17: error: aggregate 'X509_OBJECT obj' has incomplete type
and cannot be defined
  X509_OBJECT obj;
  ^~~
lftp_ssl.cc:1075:20: error: aggregate 'X509_STORE_CTX store_ctx' has
incomplete type and cannot be defined
  X509_STORE_CTX store_ctx;
 ^
lftp_ssl.cc:1141:43: error: 'X509_OBJECT_free_contents' was not declared in
this scope
  X509_OBJECT_free_contents();
^
lftp_ssl.cc:1148:35: warning: 'ASN1_TIME*
X509_CRL_get_nextUpdate(X509_CRL*)' is deprecated
[-Wdeprecated-declarations]
  i = X509_cmp_current_time(X509_CRL_get_nextUpdate(crl));
^~~
In file included from /usr/include/openssl/x509_vfy.h:20:0,
  from /usr/include/openssl/x509.h:309,
  from /usr/include/openssl/ssl.h:50,
  from lftp_ssl.h:27,
  from lftp_ssl.cc:30:
/usr/include/openssl/x509.h:709:1: note: declared here
  DEPRECATEDIN_1_1_0(ASN1_TIME *X509_CRL_get_nextUpdate(X509_CRL *crl))
  ^
lftp_ssl.cc:1148:62: warning: 'ASN1_TIME*
X509_CRL_get_nextUpdate(X509_CRL*)' is deprecated
[-Wdeprecated-declarations]
  i = X509_cmp_current_time(X509_CRL_get_nextUpdate(crl));
   ^
In file included from /usr/include/openssl/x509_vfy.h:20:0,
  from /usr/include/openssl/x509.h:309,
  from /usr/include/openssl/ssl.h:50,
  from lftp_ssl.h:27,
  from lftp_ssl.cc:30:
/usr/include/openssl/x509.h:709:1: note: declared here
  DEPRECATEDIN_1_1_0(ASN1_TIME *X509_CRL_get_nextUpdate(X509_CRL *crl))
  ^
lftp_ssl.cc:1152:43: error: 'X509_OBJECT_free_contents' was not declared in
this scope
  X509_OBJECT_free_contents();
^
lftp_ssl.cc:1158:43: error: 'X509_OBJECT_free_contents' was not declared in
this scope
  X509_OBJECT_free_contents();
^
lftp_ssl.cc:1161:39: error: 'X509_OBJECT_free_contents' was not declared in
this scope
  X509_OBJECT_free_contents();
^
lftp_ssl.cc:1180:41: error: invalid use of incomplete type 'X509_REVOKED
{aka struct x509_revoked_st}'
  if (ASN1_INTEGER_cmp(revoked->serialNumber,
X509_get_serialNumber(xs)) == 0) {
  ^~
In file included from /usr/include/openssl/crypto.h:31:0,
  from /usr/include/openssl/comp.h:16,
  from /usr/include/openssl/ssl.h:47,
  from lftp_ssl.h:27,
  from lftp_ssl.cc:30:
/usr/include/openssl/ossl_typ.h:123:16: note: forward declaration of
'X509_REVOKED {aka struct x509_revoked_st}'
  typedef struct x509_revoked_st X509_REVOKED;
 ^~~
lftp_ssl.cc:1181:50: error: invalid use of incomplete type 'X509_REVOKED
{aka struct x509_revoked_st}'
  serial = ASN1_INTEGER_get(revoked->serialNumber);
   ^~
In file included from /usr/include/openssl/crypto.h:31:0,
  from /usr/include/openssl/comp.h:16,
  from /usr/include/openssl/ssl.h:47,
  from lftp_ssl.h:27,
  from lftp_ssl.cc:30:
/usr/include/openssl/ossl_typ.h:123:16: note: forward declaration of
'X509_REVOKED {aka struct x509_revoked_st}'
  typedef struct x509_revoked_st X509_REVOKED;
 ^~~
lftp_ssl.cc:1189:47: error: