Red Hat Bugzilla – Bug 128370
Wrong function prototype for gethostbyaddr
Last modified: 2007-11-30 17:10:46 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030625
Description of problem:
The man page gethostbyaddr(3) specifies the function prototype to be
struct hostent *gethostbyaddr(const *char, int, int)
while it should be
struct hostent *gethostbyaddr(const *void, socklen_t, int)
Version-Release number of selected component (if applicable):
Steps to Reproduce:
man 3 gethostbyaddr
/usr/include/netdb.h specifies the prototype as
extern struct hostent *gethostbyaddr (__const void *__addr,
__socklen_t __len, int __type) __THROW;
I could create a patch, but the change is so small I don't know if
it's of any use. :)
Also, the man-page could use some fleshing out (the arguments to the
function in question could be explained a bit better), but as this is
my first ever contribution to an OSS project, I'd be happy if somebody
could tell me if such a contribution would be welcomed.
Mailed Andries Brouwer (the maintainer of the man-pages) and he
corrected it. Also, he mentioned that the BSD prototype specifies char*.
What is correct in this case?
The man-page specifically mentions that the prototypes conform to BSD.
It also mentions that socklen_t is the correct type for POSIX in the
man 3p gethostbyname
should be used to refer to the POSIX man pages.