diff options
author | Mark H Weaver <mhw@netris.org> | 2013-03-28 05:09:53 -0400 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2013-03-28 05:09:53 -0400 |
commit | 26d148066f9cb20e395a7dc4fefdf2e2ef0b2fb0 (patch) | |
tree | 40f13bc6355adb822bb8cd01fee5bcd9fd5430f9 /libguile/socket.c | |
parent | 8ae26afefee947c71314733c419519fb616bf36d (diff) | |
parent | 579127cce488ce208d62e68e679e34fbbdc17367 (diff) |
Merge remote-tracking branch 'origin/stable-2.0'
Conflicts:
configure.ac
libguile/deprecated.c
libguile/deprecated.h
libguile/filesys.h
libguile/fluids.c
libguile/fports.c
libguile/gc.c
libguile/guile.c
libguile/numbers.c
libguile/objcodes.c
libguile/r6rs-ports.c
libguile/smob.c
libguile/socket.c
libguile/threads.h
module/language/scheme/decompile-tree-il.scm
module/language/tree-il/peval.scm
test-suite/tests/syncase.test
Diffstat (limited to 'libguile/socket.c')
-rw-r--r-- | libguile/socket.c | 51 |
1 files changed, 25 insertions, 26 deletions
diff --git a/libguile/socket.c b/libguile/socket.c index 232041479..7e735f43c 100644 --- a/libguile/socket.c +++ b/libguile/socket.c @@ -1,5 +1,5 @@ /* Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, - * 2006, 2007, 2009, 2011, 2012 Free Software Foundation, Inc. + * 2006, 2007, 2009, 2011, 2012, 2013 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -25,26 +25,8 @@ #endif #include <errno.h> -#include <gmp.h> #include <verify.h> -#include "libguile/_scm.h" -#include "libguile/arrays.h" -#include "libguile/feature.h" -#include "libguile/fports.h" -#include "libguile/strings.h" -#include "libguile/vectors.h" -#include "libguile/dynwind.h" -#include "libguile/srfi-13.h" - -#include "libguile/validate.h" -#include "libguile/socket.h" - -#ifdef __MINGW32__ -#include "win32-socket.h" -#include <netdb.h> -#endif - #ifdef HAVE_STDINT_H #include <stdint.h> #endif @@ -55,9 +37,6 @@ #include <unistd.h> #endif #include <sys/types.h> -#ifdef HAVE_WINSOCK2_H -#include <winsock2.h> -#else #include <sys/socket.h> #ifdef HAVE_UNIX_DOMAIN_SOCKETS #include <sys/un.h> @@ -65,8 +44,27 @@ #include <netinet/in.h> #include <netdb.h> #include <arpa/inet.h> + +#include <gmp.h> + +#include "libguile/_scm.h" +#include "libguile/arrays.h" +#include "libguile/feature.h" +#include "libguile/fports.h" +#include "libguile/strings.h" +#include "libguile/vectors.h" +#include "libguile/dynwind.h" +#include "libguile/srfi-13.h" + +#include "libguile/validate.h" +#include "libguile/socket.h" + +#if SCM_ENABLE_DEPRECATED == 1 +# include "libguile/deprecation.h" #endif + + #if defined (HAVE_UNIX_DOMAIN_SOCKETS) && !defined (SUN_LEN) #define SUN_LEN(ptr) ((size_t) (((struct sockaddr_un *) 0)->sun_path) \ + strlen ((ptr)->sun_path)) @@ -512,6 +510,7 @@ SCM_DEFINE (scm_getsockopt, "getsockopt", 3, 0, 0, "@defvarx SO_OOBINLINE\n" "@defvarx SO_NO_CHECK\n" "@defvarx SO_PRIORITY\n" + "@defvarx SO_REUSEPORT\n" "The value returned is an integer.\n" "@end defvar\n" "\n" @@ -610,6 +609,7 @@ SCM_DEFINE (scm_setsockopt, "setsockopt", 4, 0, 0, "@defvarx SO_OOBINLINE\n" "@defvarx SO_NO_CHECK\n" "@defvarx SO_PRIORITY\n" + "@defvarx SO_REUSEPORT\n" "@var{value} is an integer.\n" "@end defvar\n" "\n" @@ -1767,6 +1767,9 @@ scm_init_socket () #ifdef SO_LINGER scm_c_define ("SO_LINGER", scm_from_int (SO_LINGER)); #endif +#ifdef SO_REUSEPORT /* new in Linux 3.9 */ + scm_c_define ("SO_REUSEPORT", scm_from_int (SO_REUSEPORT)); +#endif /* recv/send options. */ #ifdef MSG_DONTWAIT @@ -1782,10 +1785,6 @@ scm_init_socket () scm_c_define ("MSG_DONTROUTE", scm_from_int (MSG_DONTROUTE)); #endif -#ifdef __MINGW32__ - scm_i_init_socket_Win32 (); -#endif - #ifdef IP_ADD_MEMBERSHIP scm_c_define ("IP_ADD_MEMBERSHIP", scm_from_int (IP_ADD_MEMBERSHIP)); scm_c_define ("IP_DROP_MEMBERSHIP", scm_from_int (IP_DROP_MEMBERSHIP)); |