summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-22 23:12:02 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-10-22 23:12:02 +0000
commitc1bb485ca06a067f10a96787604fc703f467eb57 (patch)
treef233fc5739c3f6d7bc5f8d49fa187bcb611a8942 /ext
parent38c7a687e174e5fc7761cf05f71003ad6b728320 (diff)
* ext/socket/socket.c (sock_s_getservbyport): port should be
network byte order. a patch from Dave Thomas in [ruby-core:19454]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r--ext/socket/socket.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/socket/socket.c b/ext/socket/socket.c
index e52ec9493a..8fe2dd3a65 100644
--- a/ext/socket/socket.c
+++ b/ext/socket/socket.c
@@ -3254,7 +3254,7 @@ sock_s_getservbyport(int argc, VALUE *argv)
if (NIL_P(proto)) proto = rb_str_new2("tcp");
StringValue(proto);
- sp = getservbyport(NUM2INT(port), StringValueCStr(proto));
+ sp = getservbyport(htons(NUM2INT(port)), StringValueCStr(proto));
if (!sp) {
rb_raise(rb_eSocket, "no such service for port %d/%s", NUM2INT(port), RSTRING_PTR(proto));
}