[Net-ssleay-devel] Latest development

Mike McCauley mikem at open.com.au
Thu Sep 14 23:32:17 UTC 2006


Hello Florian,

I observe some problems with the latest svn:

1. During perl Makefile.PL, I get:

*** Module::AutoInstall configuration finished.
include inc/Module/Install/WriteAll.pm
include inc/Module/Install/Win32.pm
include inc/Module/Install/Fetch.pm
Checking if your kit is complete...
Warning: the following files are missing in your kit:
        inc/Test/More.pm
        t/local/20_constant.t


2. During make, I get:

cc -c  -I/usr/include -I/usr/inc32 -Iusr/kerberos/include -D_REENTRANT 
-D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe 
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g   -DVERSION=\"1.30\" 
-DXS_VERSION=\"1.30\" -fPIC 
"-I/usr/lib/perl5/5.8.7/i586-linux-thread-multi/CORE"   SSLeay.c
SSLeay.xs: In function ‘ssleay_ctx_passwd_cb_new’:
SSLeay.xs:208: error: syntax error before ‘ssleay_ctx_passwd_cb_t’
SSLeay.xs: In function ‘ssleay_ctx_cert_verify_cb_new’:
SSLeay.xs:358: error: syntax error before ‘ssleay_ctx_cert_verify_cb_t’
SSLeay.xs: In function ‘ssleay_RSA_generate_key_cb_new’:
SSLeay.xs:471: error: syntax error before ‘ssleay_RSA_generate_key_cb_t’
SSLeay.xs: In function ‘XS_Net__SSLeay_read’:
SSLeay.xs:763: error: syntax error before ‘char’
SSLeay.xs: In function ‘XS_Net__SSLeay_peek’:
SSLeay.xs:777: error: syntax error before ‘char’
SSLeay.xs: In function ‘XS_Net__SSLeay_RAND_bytes’:
SSLeay.xs:1230: error: syntax error before ‘unsigned’
SSLeay.xs: In function ‘XS_Net__SSLeay_RAND_pseudo_bytes’:
SSLeay.xs:1246: error: syntax error before ‘unsigned’
SSLeay.xs: In function ‘XS_Net__SSLeay_RAND_file_name’:
SSLeay.xs:1281: error: syntax error before ‘char’
SSLeay.xs: In function ‘XS_Net__SSLeay_X509_NAME_get_text_by_NID’:
SSLeay.xs:1351: error: syntax error before ‘char’
SSLeay.xs: In function ‘XS_Net__SSLeay_BIO_read’:
SSLeay.xs:1634: error: syntax error before ‘char’

(BTW, that -Iusr/kerberos/include in the compiler line looks suspicious too.

3. The list of prerequisite modules (and their prerequisites) is getting 
longer and longer. I had to install another 5 modules this time.

Cheers.

On Friday 15 September 2006 08:14, Florian Ragwitz wrote:
> Hello,
>
> I did some net-ssleay development recently. I'd like you to do some
> review. If everything is fine in your eyes I'd like to do a development
> release to cpan as 1.31_01. Is that fine with you?
>
> I also have some questions:
>
> ERR_error_string's signature currently looks like that:
>
>   char*
>   ERR_error_string(error,buf=NULL)
>
> This doesn't make much sense to me. Usually it's called as:
>
>   $err_str = ERR_error_string($error);
>
> But the prototype allows to do something like:
>
>   ERR_error_string($error, $err_str);
>
> which stores the error string into $err_str, at least as long as the
> value previously stored in $err_str is at least as long as the error
> string openssl is going to make out of $error. This isn't a too perlish
> interface. I suggest changing the signature to:
>
>   char*
>   ERR_error_string(error)
>
> and pass NULL as the second argument to the C function in any case. What
> do you think?
>
>
> Also there is SSL_callback_ctrl and SSL_CTX_callback_ctrl. This
> functions (on the c level) take callbacks, but the perl signatures in
> SSLeay.xs look like that:
>
>   typedef void callback_no_ret();
>
>   long
>   SSL_callback_ctrl(ssl,i,fp)
>     SSL* ssl
>     int i
>     callback_no_ret* fp
>
> This is not going to work for obvious reasons. We could either make it
> work or completly remove those functions as the openssl docs say:
>
>   These functions should never be called directly.
>
> So as they a) don't work ATM and b) they're not intended to be used
> directly, I'd suggest to remove them.
>
>
> Thanks for your thoughts,
> Flo

-- 
Mike McCauley                               mikem at open.com.au
Open System Consultants Pty. Ltd            Unix, Perl, Motif, C++, WWW
9 Bulbul Place Currumbin Waters QLD 4223 Australia   http://www.open.com.au
Phone +61 7 5598-7474                       Fax   +61 7 5598-7070

Radiator: the most portable, flexible and configurable RADIUS server 
anywhere. SQL, proxy, DBM, files, LDAP, NIS+, password, NT, Emerald, 
Platypus, Freeside, TACACS+, PAM, external, Active Directory, EAP, TLS, 
TTLS, PEAP etc on Unix, Windows, MacOS, NetWare etc.



More information about the Net-ssleay-devel mailing list