On Mon, 23 Feb 2009, Simon Josefsson wrote:
> const char *libssh2_check_version (int req_version_num);
>
> Which could be used by applications like this:
>
> if (!libssh2_check_version (LIBSSH2_VERSION_NUM)) {
> fprintf (stderr, "Runtime libssh2 version too old!\n");
> exit(1);
> }
Right, that's a neat approach that I like.
> if (debug) {
> printf ("libssh2 %s\n", libssh2_check_version (0));
> }
>
> And the string could look something like:
>
> "1.0.1-CVS/gnutls/libz"
> "1.0.0/openssl"
> "1.0.0/openssl/libz"
Hm, I'm not entirely happy with that: I want to show the libssh2 version
number when used by an app. I'm not so sure I want that app to show or even
care about the openssl/libz situation there, even if I can think that in other
situations the app or other users of libssh2 might care. Alas, I'd like to get
the "1.0.0" separately from "openssl/gnutls/libz"...
So what do you think about this:
const char *libssh2_version(int req_version_num, const char **extra);
So if 'extra' isn't NULL, it gets set to a pointer with "openssl/libz" style
info and the function returns "1.0.1_CVS" ?
It still makes it possible to do things like:
if (!libssh2_version(LIBSSH2_VERSION_NUM, NULL)) {
fprintf (stderr, "Runtime libssh2 version too old!\n");
exit(1);
}
--
/ daniel.haxx.se
------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
libssh2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libssh2-devel