From cb37e4013ef0ce9b3492c2f86e8fd8bf6a2db007 Mon Sep 17 00:00:00 2001 From: nagachika Date: Tue, 8 Mar 2016 18:51:58 +0000 Subject: [PATCH] merge revision(s) 53259: [Backport #11862] * ext/socket/init.c (rsock_init_sock): reject reserved FDs [ruby-core:72445] [Bug #11862] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ ext/socket/init.c | 2 +- version.h | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index dd6d4fba61..dcc712bcf2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Wed Mar 9 03:51:48 2016 Eric Wong + + * ext/socket/init.c (rsock_init_sock): reject reserved FDs + [ruby-core:72445] [Bug #11862] + Wed Mar 9 03:41:27 2016 Eric Wong * ext/socket/init.c (rsock_init_sock): check FD after validating diff --git a/ext/socket/init.c b/ext/socket/init.c index 178aad0948..4d7cf29ea3 100644 --- a/ext/socket/init.c +++ b/ext/socket/init.c @@ -58,7 +58,7 @@ rsock_init_sock(VALUE sock, int fd) { rb_io_t *fp; - if (!is_socket(fd)) { + if (!is_socket(fd) || rb_reserved_fd_p(fd)) { errno = EBADF; rb_sys_fail("not a socket file descriptor"); } diff --git a/version.h b/version.h index 5ed3fa76d9..bacd93e4b4 100644 --- a/version.h +++ b/version.h @@ -1,6 +1,6 @@ #define RUBY_VERSION "2.2.5" #define RUBY_RELEASE_DATE "2016-03-09" -#define RUBY_PATCHLEVEL 243 +#define RUBY_PATCHLEVEL 244 #define RUBY_RELEASE_YEAR 2016 #define RUBY_RELEASE_MONTH 3