From c1bb485ca06a067f10a96787604fc703f467eb57 Mon Sep 17 00:00:00 2001 From: matz Date: Wed, 22 Oct 2008 23:12:02 +0000 Subject: * 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 --- ext/socket/socket.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'ext') 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)); } -- cgit v1.2.3