>While making a related change in NetBSD I noticed that although
>getnameinfo() was correctly aligned with POSIX with respect to size_t
>vs. socklen_t, it was apparently missed to change its `flags' argument
>from int to unsigned int as part of that edit.

Yes, I noticed this discrepancy between posix and rfc2553 about
a year ago, and have been actively trying to "fix" the posix spec 
in this regard.

The 'unsigned' flags argument occurred at some point during
the incorporation of the IPv6 API into the Open Group's
Networking Services issue 5.2 spec in 1999, and was propagated 
from there into the posix 1003.1-2001 spec.  We've been looking
back at archives to see how this change was introduced, but
have not completed the e-paper trail yet.

>From what I can tell, most implementations have implemented 
type 'int' as per the RFC, including Solaris, Windows XP, AIX,
Tru64 UNIX, HP-UX, FreeBSD, OpenBSD, NetBSD, and OpenVMS.  The only 
implementation I have seen that uses 'unsigned int' is GNU libc, 
which originally implemented using type 'int', but which changed 
to 'unsigned int' in January 2001 (I speculate this was done to 
align with XNS 5.2 or perhaps one of the early drafts of 1003.1-2001).

Given the widespread implementation of 'int', I believe the
right thing to do is get the posix spec changed, and leave
rfc2553bis as is.

Stay tuned, Technical Corrigenda 1 (TC1) for 1003.1-2001 is 
active right now, I hope to have this fixed in TC1.

- Jack

--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page:                      http://playground.sun.com/ipng
FTP archive:                      ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [EMAIL PROTECTED]
--------------------------------------------------------------------

Reply via email to