From d19ba9bb696824aae6a24bc6d113e0e2182d97ee 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: http://svn.ruby-lang.org/repos/ruby/trunk@19893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/socket/socket.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'ext/socket') diff --git a/ext/socket/socket.c b/ext/socket/socket.c index e52ec9493..8fe2dd3a6 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