diff options
author | Bruno Haible <bruno@clisp.org> | 2008-10-25 23:13:43 +0200 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2008-10-25 23:13:43 +0200 |
commit | 20491bb197b77a1fb32516f65732d168c4cf07d3 (patch) | |
tree | 21a84fee000ede275e4066e05e0e86f23ea87e1f /lib | |
parent | 64b663c0c479a3af01e3ccacdb3aa3f6a8c4a6a1 (diff) | |
download | gnulib-20491bb197b77a1fb32516f65732d168c4cf07d3.tar.gz |
Override the gethostname() declaration on native Windows systems.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/sys_socket.in.h | 5 | ||||
-rw-r--r-- | lib/unistd.in.h | 50 |
2 files changed, 54 insertions, 1 deletions
diff --git a/lib/sys_socket.in.h b/lib/sys_socket.in.h index 83a50bd2d4..63c80fff0c 100644 --- a/lib/sys_socket.in.h +++ b/lib/sys_socket.in.h @@ -145,6 +145,11 @@ rpl_fd_isset (SOCKET fd, fd_set * set) # define close close_used_without_including_unistd_h # endif +# if @HAVE_WINSOCK2_H@ && !defined _GL_UNISTD_H +# undef gethostname +# define gethostname gethostname_used_without_including_unistd_h +# endif + # if @GNULIB_SOCKET@ # if @HAVE_WINSOCK2_H@ # undef socket diff --git a/lib/unistd.in.h b/lib/unistd.in.h index d949c9916a..fa8616a2a2 100644 --- a/lib/unistd.in.h +++ b/lib/unistd.in.h @@ -42,6 +42,47 @@ # include <sys/types.h> #endif +#if @GNULIB_GETHOSTNAME@ +/* Get all possible declarations of gethostname(). */ +# if @UNISTD_H_HAVE_WINSOCK2_H@ +# include <winsock2.h> +# if !defined _GL_SYS_SOCKET_H +# undef socket +# define socket socket_used_without_including_sys_socket_h +# undef connect +# define connect connect_used_without_including_sys_socket_h +# undef accept +# define accept accept_used_without_including_sys_socket_h +# undef bind +# define bind bind_used_without_including_sys_socket_h +# undef getpeername +# define getpeername getpeername_used_without_including_sys_socket_h +# undef getsockname +# define getsockname getsockname_used_without_including_sys_socket_h +# undef getsockopt +# define getsockopt getsockopt_used_without_including_sys_socket_h +# undef listen +# define listen listen_used_without_including_sys_socket_h +# undef recv +# define recv recv_used_without_including_sys_socket_h +# undef send +# define send send_used_without_including_sys_socket_h +# undef recvfrom +# define recvfrom recvfrom_used_without_including_sys_socket_h +# undef sendto +# define sendto sendto_used_without_including_sys_socket_h +# undef setsockopt +# define setsockopt setsockopt_used_without_including_sys_socket_h +# undef shutdown +# define shutdown shutdown_used_without_including_sys_socket_h +# endif +# if !defined _GL_SYS_SELECT_H +# undef select +# define select select_used_without_including_sys_select_h +# endif +# endif +#endif + /* The definition of GL_LINK_WARNING is copied here. */ @@ -284,9 +325,16 @@ extern int getdtablesize (void); Null terminate it if the name is shorter than LEN. If the host name is longer than LEN, set errno = EINVAL and return -1. Return 0 if successful, otherwise set errno and return -1. */ -# if !@HAVE_GETHOSTNAME@ +# if @UNISTD_H_HAVE_WINSOCK2_H@ +# undef gethostname +# define gethostname rpl_gethostname +# endif +# if @UNISTD_H_HAVE_WINSOCK2_H@ || !@HAVE_GETHOSTNAME@ extern int gethostname(char *name, size_t len); # endif +#elif @UNISTD_H_HAVE_WINSOCK2_H@ +# undef gethostname +# define gethostname gethostname_used_without_requesting_gnulib_module_gethostname #elif defined GNULIB_POSIXCHECK # undef gethostname # define gethostname(n,l) \ |