summaryrefslogtreecommitdiffstats
path: root/ext
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-16 14:34:01 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-02-16 14:34:01 +0000
commit382163bda4caa285e6b1477d47a6d57f70ee1439 (patch)
tree3a7fd2869fd9f3d0fcc89ff7ee7d27ebdb179867 /ext
parent012e1cd09c19ef2dc53f9d3459b5d421f460c5ac (diff)
downloadruby-382163bda4caa285e6b1477d47a6d57f70ee1439.tar.gz
ruby-382163bda4caa285e6b1477d47a6d57f70ee1439.tar.xz
ruby-382163bda4caa285e6b1477d47a6d57f70ee1439.zip
* ext/socket/ancdata.c (bsock_sendmsg_internal) [OpenBSD]: don't remove
the last padding to prevent sendmsg failure in test_udp_server in test/socket/test_socket.rb. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@22359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r--ext/socket/ancdata.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/ext/socket/ancdata.c b/ext/socket/ancdata.c
index fdbaf62c5..b78af5460 100644
--- a/ext/socket/ancdata.c
+++ b/ext/socket/ancdata.c
@@ -927,9 +927,11 @@ bsock_sendmsg_internal(int argc, VALUE *argv, VALUE sock, int nonblock)
MEMCPY(CMSG_DATA(cmh), RSTRING_PTR(cdata), char, RSTRING_LEN(cdata));
last_pad = cspace - cmh->cmsg_len;
}
+#if !defined(__OpenBSD__)
if (last_pad) {
rb_str_set_len(controls_str, RSTRING_LEN(controls_str)-last_pad);
}
+#endif
#else
rb_raise(rb_eNotImpError, "control message for sendmsg is unimplemented");
#endif