From 7f513ec8b3cd7816a897052bd472c0bfd553e910 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Thu, 8 Sep 2011 09:37:42 -0700 Subject: Hurd: fix use of uninitialized value in fork port copying. --- ChangeLog | 8 +++++++- sysdeps/mach/hurd/fork.c | 4 ++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 91328e0483..5b0d57146e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,12 @@ +2011-09-08 Roland McGrath + + * sysdeps/mach/hurd/fork.c (__fork): Initialize REFS so we don't use a + garbage value in a __mach_port_mod_refs call in the cases of the + task-self and thread-self ports. + 2011-09-08 Andreas Schwab - * elf/dl-load.c (lose): Check for non-null l. + * elf/dl-load.c (lose): Check for non-null L. 2011-09-07 Ulrich Drepper diff --git a/sysdeps/mach/hurd/fork.c b/sysdeps/mach/hurd/fork.c index 3288f186e5..66fa7e27bc 100644 --- a/sysdeps/mach/hurd/fork.c +++ b/sysdeps/mach/hurd/fork.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1994,1995,1996,1997,1999,2001,2002,2004,2005,2006 +/* Copyright (C) 1994,1995,1996,1997,1999,2001,2002,2004,2005,2006,2011 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -313,7 +313,7 @@ __fork (void) { /* This is a send right or a dead name. Give the child as many references for it as we have. */ - mach_port_urefs_t refs, *record_refs = NULL; + mach_port_urefs_t refs = 0, *record_refs = NULL; mach_port_t insert; mach_msg_type_name_t insert_type = MACH_MSG_TYPE_COPY_SEND; if (portnames[i] == newtask || portnames[i] == newproc) -- cgit v1.2.3-70-g09d2