"D. Hugh Redelmeier" <[EMAIL PROTECTED]>:

[...]
> I had a hard time finding documentation (I'm not alone in this).
> Ariel's documentation is very useful.  Is there something more
> tutorial?

I don't think so.

> I've downloaded openssl-0.9.2b.tar.gz to use.  I don't wish to be
> playing with unstable versions while I'm a newbie.  Is this a mistake?
> Is the latest snapshot likely to be a better bet?

OpenSSL 0.9.3 is scheduled to be released in eight days, and we have a
code-freeze now, so you might want to look at the current snap-shot
even if you are new to OpenSSL -- several problems of earlier versions
have been solved, and if there are problems left or if there are new
problems, we certainly want to hear about those so that we can fix
them in the released version.

> To use OpenSSL routines, I need to use OpenSSL headers.  The
> installation seems to put them in /usr/local/ssl/include/.  I think it
> would be good to put them in a directory "openssl" so that I can use
>       #include <openssl/whatever.h>
> if I add /usr/local/ssl/include/ to my search path.

I introduced exactly his kind of #include filenames three weeks ago;
see current snapshot.  We don't use #include <whatever.h> any more.

Also the configuration process is now configurable so that you can
choose other locations.  "./config --prefix=/usr/local" results in
the header files being installed in /usr/local/include/openssl, the
library files in /usr/local/lib, the "openssl" binary and the
"c_rehash" script in /usr/local/bin, and everything else under
/usr/local/ssl.

> Now that I've added header files from OpenSSL, I get a bunch
> of warnings.  Most of them seem to be of the form:
>   openssl_include/stack.h:73: warning: function declaration isn't a prototype
> The header line that provoked this is in the middle of a struct
> declaration:
>         int (*comp)();
> This would be much improved by specifying the types of the arguments.
> This would allow the compiler to do better type checking and even
> appropriate argument conversions.  It would aid the user in figuring
> out what arguments are required.

We're currently discussing things like these -- there's a lot of such
cases left.  (Certainly this won't yet be completely done in the 0.9.3
release.)

> Another example I find particularly surprising is:
>   openssl_include/stack.h:82: warning: function declaration isn't a prototype
> STACK *sk_new(int (*cmp)());

> This declaration is inside #ifndef NOPROTO!

The NOPROTO macro is gone now, the library is being ANSIfied more and
more; but there are still function calls left where no argument list
has been declared.  In its last days, the NOPROTO was not meant to be
actually defined -- it was just there because the header files have to
be parseable by a certain Perl script that produces .def files for
Windows DLLs, and this Perl script couldn't handle function
prototypes.  But now we have a new version that can.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to