From 63643c85d4c47512decc16f35124160629c39a86 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Thu, 10 May 2012 15:35:47 -0700 Subject: [PATCH] Hurd: hurdsock: reject negative domains --- ChangeLog | 5 +++++ hurd/hurdsock.c | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 6f59a1e..b1dbcba 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-05-10 Pino Toscano + + * hurd/hurdsock.c (_hurd_socket_server): Check for negative domains, + and reject them. + 2012-05-10 Samuel Thibault * sysdeps/mach/hurd/setresgid.c (__setresgid): Handle the -1 case, diff --git a/hurd/hurdsock.c b/hurd/hurdsock.c index f3611ec..4b32ad4 100644 --- a/hurd/hurdsock.c +++ b/hurd/hurdsock.c @@ -1,5 +1,5 @@ /* _hurd_socket_server - Find the server for a socket domain. - Copyright (C) 1991,92,93,94,95,97,99 Free Software Foundation, Inc. + Copyright (C) 1991-2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -46,6 +46,12 @@ _hurd_socket_server (int domain, int dead) { socket_t server; + if (domain < 0) + { + errno = EAFNOSUPPORT; + return MACH_PORT_NULL; + } + HURD_CRITICAL_BEGIN; __mutex_lock (&lock); -- 2.7.4