summaryrefslogtreecommitdiff
path: root/ext/socket
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-02-13 23:20:27 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-02-13 23:20:27 +0000
commited193c50f52635923840991b8847211846a018f9 (patch)
tree9325efce45ce39f367dbb86389f649d7c5ba5aa8 /ext/socket
parenteb4ae6bc542cdec0ade408c2f5ddfebba227d30f (diff)
* ext/socket/extconf.rb: don't define HAVE_SA_LEN and HAVE_SA_LEN.
use HAVE_STRUCT_SOCKADDR_SA_LEN and HAVE_STRUCT_SOCKADDR_IN_SIN_LEN instead. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/socket')
-rw-r--r--ext/socket/extconf.rb10
-rw-r--r--ext/socket/rubysocket.h2
-rw-r--r--ext/socket/socket.c2
-rw-r--r--ext/socket/sockport.h6
4 files changed, 8 insertions, 12 deletions
diff --git a/ext/socket/extconf.rb b/ext/socket/extconf.rb
index 5721f90d14..eff2d3f926 100644
--- a/ext/socket/extconf.rb
+++ b/ext/socket/extconf.rb
@@ -74,9 +74,9 @@ have_type("struct ip_mreq", headers) # 4.4BSD
have_type("struct ip_mreqn", headers) # Linux 2.4
have_type("struct ipv6_mreq", headers) # RFC 3493
-if have_struct_member("struct sockaddr_in", "sin_len", headers)
- $defs[-1] = "-DHAVE_SIN_LEN" # change from -DHAVE_ST_SIN_LEN.
-end
+# 4.4BSD
+have_struct_member("struct sockaddr", "sa_len", headers)
+have_struct_member("struct sockaddr_in", "sin_len", headers)
# doug's fix, NOW add -Dss_family... only if required!
doug = proc {have_struct_member("struct sockaddr_storage", "ss_family", headers)}
@@ -87,10 +87,6 @@ if (doug[] or
doug[] or with_cppflags($CPPFLAGS + " -Dss_len=__ss_len", &doug)
end
-if have_struct_member("struct sockaddr", "sa_len", headers)
- $defs[-1] = "-DHAVE_SA_LEN " # change from -DHAVE_ST_SA_LEN.
-end
-
have_struct_member('struct msghdr', 'msg_control', ['sys/types.h', 'sys/socket.h'])
have_struct_member('struct msghdr', 'msg_accrights', ['sys/types.h', 'sys/socket.h'])
diff --git a/ext/socket/rubysocket.h b/ext/socket/rubysocket.h
index 36833e6740..a0fb71ba91 100644
--- a/ext/socket/rubysocket.h
+++ b/ext/socket/rubysocket.h
@@ -136,7 +136,7 @@ typedef int socklen_t;
_SS_PAD1SIZE - _SS_ALIGNSIZE)
struct sockaddr_storage {
-#ifdef HAVE_SA_LEN
+#ifdef HAVE_STRUCT_SOCKADDR_SA_LEN
unsigned char ss_len; /* address length */
unsigned char ss_family; /* address family */
#else
diff --git a/ext/socket/socket.c b/ext/socket/socket.c
index 6900dbcca6..af9c182380 100644
--- a/ext/socket/socket.c
+++ b/ext/socket/socket.c
@@ -1698,7 +1698,7 @@ socket_s_ip_address_list(VALUE self)
if (IS_IP_FAMILY(addr->sa_family)) {
rb_ary_push(list, sockaddr_obj(addr));
}
-#ifdef HAVE_SA_LEN
+#ifdef HAVE_STRUCT_SOCKADDR_SA_LEN
# ifndef _SIZEOF_ADDR_IFREQ
# define _SIZEOF_ADDR_IFREQ(r) \
(sizeof(struct ifreq) + \
diff --git a/ext/socket/sockport.h b/ext/socket/sockport.h
index 5f2fd24530..5ab087d97b 100644
--- a/ext/socket/sockport.h
+++ b/ext/socket/sockport.h
@@ -13,7 +13,7 @@
#ifdef SA_LEN
# define SS_LEN(ss) (ss)->ss_len
#else
-# ifdef HAVE_SA_LEN
+# ifdef HAVE_STRUCT_SOCKADDR_SA_LEN
# define SA_LEN(sa) (sa)->sa_len
# define SS_LEN(ss) (ss)->ss_len
# else
@@ -32,7 +32,7 @@
# endif
#endif
-#ifdef HAVE_SA_LEN
+#ifdef HAVE_STRUCT_SOCKADDR_SA_LEN
# define SET_SA_LEN(sa, len) (void)((sa)->sa_len = (len))
# define SET_SS_LEN(ss, len) (void)((ss)->ss_len = (len))
#else
@@ -40,7 +40,7 @@
# define SET_SS_LEN(ss, len) (void)(len)
#endif
-#ifdef HAVE_SIN_LEN
+#ifdef HAVE_STRUCT_SOCKADDR_IN_SIN_LEN
# define SIN_LEN(si) (si)->sin_len
# define SET_SIN_LEN(si,len) (si)->sin_len = (len)
#else