diff options
author | Justus Winter <4winter@informatik.uni-hamburg.de> | 2014-11-26 12:12:27 +0100 |
---|---|---|
committer | Justus Winter <4winter@informatik.uni-hamburg.de> | 2014-11-28 12:17:52 +0100 |
commit | 40d433fd1ca3aedac58a281f982725bfa9f77997 (patch) | |
tree | 298f6aeb0f6ce8705abb7bdd766609da59d0e881 | |
parent | 7ca4c02513d7c6998d9c92dafb3c0fcbe8d6dd6d (diff) |
Revert "random: fix a receiver lookup"
This reverts "8927fbd63e29005ddb9b2c2264046089bf669857".
The change mistakenly adds mutators for the `startup' protocol, but
the server routine is for the `startup_notify' protocol.
-rw-r--r-- | random/Makefile | 1 | ||||
-rw-r--r-- | random/mig-decls.h | 47 | ||||
-rw-r--r-- | random/mig-mutate.h | 25 | ||||
-rw-r--r-- | random/random.c | 5 |
4 files changed, 4 insertions, 74 deletions
diff --git a/random/Makefile b/random/Makefile index 6291da0c..0949b637 100644 --- a/random/Makefile +++ b/random/Makefile @@ -26,6 +26,5 @@ OBJS = $(SRCS:.c=.o) startup_notifyServer.o LCLHDRS = gnupg-random.h gnupg-rmd.h gnupg-bithelp.h random.h HURDLIBS = trivfs ports fshelp ihash shouldbeinlibc OTHERLIBS = -lpthread -MIGSFLAGS = -DSEQNOS -imacros $(srcdir)/mig-mutate.h include ../Makeconf diff --git a/random/mig-decls.h b/random/mig-decls.h deleted file mode 100644 index 87b7eb2a..00000000 --- a/random/mig-decls.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - Copyright (C) 2014 Free Software Foundation, Inc. - Written by Justus Winter. - - This file is part of the GNU Hurd. - - The GNU Hurd is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 2, or (at - your option) any later version. - - The GNU Hurd is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with the GNU Hurd. If not, see <http://www.gnu.org/licenses/>. */ - -#ifndef __RANDOM_MIG_DECLS_H__ -#define __RANDOM_MIG_DECLS_H__ - -#include <hurd/ports.h> - -typedef struct port_info *port_info_t; - -extern struct trivfs_control *fsys; -extern struct port_class *shutdown_notify_class; - -/* Called by server stub functions. */ - -static inline struct port_info * __attribute__ ((unused)) -begin_using_startup_port (mach_port_t port) -{ - return ports_lookup_port (fsys->pi.bucket, - handle, - shutdown_notify_class); -} - -static inline void __attribute__ ((unused)) -end_using_startup (struct port_info *p) -{ - if (p) - ports_port_deref (p); -} - -#endif /* __RANDOM_MIG_DECLS_H__ */ diff --git a/random/mig-mutate.h b/random/mig-mutate.h deleted file mode 100644 index dab89e56..00000000 --- a/random/mig-mutate.h +++ /dev/null @@ -1,25 +0,0 @@ -/* - Copyright (C) 2014 Free Software Foundation, Inc. - Written by Justus Winter. - - This file is part of the GNU Hurd. - - The GNU Hurd is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 2, or (at - your option) any later version. - - The GNU Hurd is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. - - You should have received a copy of the GNU General Public License - along with the GNU Hurd. If not, see <http://www.gnu.org/licenses/>. */ - -#define STARTUP_INTRAN \ - port_info_t begin_using_startup_port (mach_port_t) -#define STARTUP_DESTRUCTOR \ - end_using_startup (port_info_t) -#define STARTUP_IMPORTS \ - import "mig-decls.h"; diff --git a/random/random.c b/random/random.c index 6eea3631..15be3831 100644 --- a/random/random.c +++ b/random/random.c @@ -537,8 +537,11 @@ struct port_class *shutdown_notify_class; /* The system is going down; destroy all the extant port rights. That will cause net channels and such to close promptly. */ error_t -S_startup_dosync (struct port_info *inpi) +S_startup_dosync (mach_port_t handle) { + struct port_info *inpi = ports_lookup_port (fsys->pi.bucket, handle, + shutdown_notify_class); + if (!inpi) return EOPNOTSUPP; |