Guenter <[email protected]> writes: >> Can we do other cleanups at the same time? I'm not sure if it is a good >> idea to break ABI compatibility just because of the change above. On > yes, I think we should then crawl though all public APIs and see where > else these size_t adjustments are needed ...
I think that would be good, but it will be a lot of grunt work and will create some problems. You have my general support on this but I won't spend cycles on it. :-) >> the other hand, if we want to do it, now is a better time than later >> because libssh2 is still a relatively young project. > thought so too; currently we get a bunch of warnings with libcurl builds > on 64-bit, f.e.: > http://curl.haxx.se/auto/log.cgi?id=20091007113936-13693#prob1 Yup. I guess it could be solved by casting, right? > OT: are you subscribed to the libcurl list too? > If so we might continue discussion there ... > I have another prob with gnutls which seems a known issue: > http://curl.haxx.se/auto/log.cgi?id=20091007093910-16730#prob1 > found this related thread: > http://www.mail-archive.com/[email protected]/msg01046.html > and wonder if we still have no solution to this issue? The solution is to use macros such as the ones defined by glib: http://library.gnome.org/devel/glib/unstable/glib-Type-Conversion-Macros.html#desc GnuTLS even define such a macro internally, see lib/m4/hooks.m4: # For storing integers in pointers without warnings # http://developer.gnome.org/doc/API/2.0/glib/glib-Type-Conversion-Macros.html#desc AC_CHECK_SIZEOF(void *) AC_CHECK_SIZEOF(long) AC_CHECK_SIZEOF(int) case $ac_cv_sizeof_void_p in $ac_cv_sizeof_long) AC_DEFINE([GNUTLS_POINTER_TO_INT_CAST], [(long)], [Additional cast to bring void* to a type castable to int.]) ;; *) AC_DEFINE([GNUTLS_POINTER_TO_INT_CAST], []) ;; esac Possibly GnuTLS could provide a macro in gnutls.h to do this, to avoid every project having to import this. It is a pain to get right... /Simon _______________________________________________ libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
