Neale Ferguson writes: > In gssapi.h the gss_buffer_desc structure looks like: > > typedef struct gss_buffer_desc_struct { > size_t length; > void *value; > } gss_buffer_desc, *gss_buffer_t; > > In ssh/sshd/auth2-gss.c a call to packet_get_string() is made using the > length field of this structure. This requires a uint_t parameter. Now for > sparc/i386 in 32-bit mode this is what size_t is. However, for other > platforms and for the 64-bit world size_t may be unsigned long. Thus, > compilation of auth2-gss.c results in a warning which, because of the -Werror > flag, results in the warning being treated as an error and we fail.
You're right that when compiling in ILP32, size_t is 32 bits and when in LP64, it's 64 bits, but where are you seeing a warning or error? That code doesn't seem to fail on our existing 64-bit plaforms. > Should, in fact, length be uint_t (or OM_uint32)? I don't think so. If it's used across the system call boundary, then you need to use the STRUCT_DECL trick (which is what those _SYSCALL32 bits are about), but I don't see that it is. -- James Carlson, Solaris Networking <[EMAIL PROTECTED]> Sun Microsystems / 35 Network Drive 71.232W Vox +1 781 442 2084 MS UBUR02-212 / Burlington MA 01803-2757 42.496N Fax +1 781 442 1677 _______________________________________________ opensolaris-code mailing list opensolaris-code@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/opensolaris-code