Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.sbin/perfused Survive if filesystem installs a signal ha...
details: https://anonhg.NetBSD.org/src/rev/fce641680f35
branches: trunk
changeset: 805010:fce641680f35
user: manu <manu%NetBSD.org@localhost>
date: Fri Dec 12 09:58:39 2014 +0000
description:
Survive if filesystem installs a signal handler
We tested for signal(3) to return 0 for success, which is incorrect:
signal(3) returns the previous handler. Success should be tested as
!= SIG_ERR, otherwise we fail when a signal handler was previously
installed by perfused(8) parrent process, which happens to be the
FUSE filesystem.
diffstat:
usr.sbin/perfused/perfused.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diffs (27 lines):
diff -r 7a2429a59b1a -r fce641680f35 usr.sbin/perfused/perfused.c
--- a/usr.sbin/perfused/perfused.c Fri Dec 12 07:21:28 2014 +0000
+++ b/usr.sbin/perfused/perfused.c Fri Dec 12 09:58:39 2014 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: perfused.c,v 1.24 2012/07/21 05:49:42 manu Exp $ */
+/* $NetBSD: perfused.c,v 1.25 2014/12/12 09:58:39 manu Exp $ */
/*-
* Copyright (c) 2010 Emmanuel Dreyfus. All rights reserved.
@@ -298,7 +298,7 @@
"could not open \"%s\"",
_PATH_VAR_RUN_PERFUSE_TRACE);
- if (signal(SIGUSR1, sigusr1_handler) != 0)
+ if (signal(SIGUSR1, sigusr1_handler) == SIG_ERR)
DERR(EX_OSERR, "signal failed");
/*
@@ -399,7 +399,7 @@
perfuse_diagflags |= parse_debug(optarg);
break;
case 's':
- if (signal(SIGINFO, siginfo_handler) != 0)
+ if (signal(SIGINFO, siginfo_handler) == SIG_ERR)
DERR(EX_OSERR, "signal failed");
break;
case 'f':
Home |
Main Index |
Thread Index |
Old Index