Module Name: src Committed By: christos Date: Fri Aug 27 08:38:42 UTC 2010
Modified Files: src/lib/libc/gen: Makefile.inc psignal.3 psignal.c Log Message: add psiginfo. To generate a diff of this commit: cvs rdiff -u -r1.170 -r1.171 src/lib/libc/gen/Makefile.inc cvs rdiff -u -r1.16 -r1.17 src/lib/libc/gen/psignal.3 cvs rdiff -u -r1.21 -r1.22 src/lib/libc/gen/psignal.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/libc/gen/Makefile.inc diff -u src/lib/libc/gen/Makefile.inc:1.170 src/lib/libc/gen/Makefile.inc:1.171 --- src/lib/libc/gen/Makefile.inc:1.170 Sat May 22 02:38:15 2010 +++ src/lib/libc/gen/Makefile.inc Fri Aug 27 04:38:41 2010 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile.inc,v 1.170 2010/05/22 06:38:15 tnozaki Exp $ +# $NetBSD: Makefile.inc,v 1.171 2010/08/27 08:38:41 christos Exp $ # from: @(#)Makefile.inc 8.6 (Berkeley) 5/4/95 # gen sources @@ -130,7 +130,7 @@ MLINKS+=humanize_number.3 dehumanize_number.3 MLINKS+=makecontext.3 swapcontext.3 MLINKS+=popen.3 pclose.3 -MLINKS+=psignal.3 sys_siglist.3 psignal.3 sys_signame.3 +MLINKS+=psignal.3 sys_siglist.3 psignal.3 sys_signame.3 psignal.3 psiginfo.3 MLINKS+=pwcache.3 user_from_uid.3 pwcache.3 group_from_gid.3 MLINKS+=pwcache.3 uid_from_user.3 pwcache.3 gid_from_group.3 MLINKS+=pwcache.3 pwcache_userdb.3 pwcache.3 pwcache_groupdb.3 Index: src/lib/libc/gen/psignal.3 diff -u src/lib/libc/gen/psignal.3:1.16 src/lib/libc/gen/psignal.3:1.17 --- src/lib/libc/gen/psignal.3:1.16 Wed Apr 14 03:20:27 2010 +++ src/lib/libc/gen/psignal.3 Fri Aug 27 04:38:41 2010 @@ -1,4 +1,4 @@ -.\" $NetBSD: psignal.3,v 1.16 2010/04/14 07:20:27 njoly Exp $ +.\" $NetBSD: psignal.3,v 1.17 2010/08/27 08:38:41 christos Exp $ .\" .\" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. @@ -29,11 +29,12 @@ .\" .\" @(#)psignal.3 8.2 (Berkeley) 2/27/95 .\" -.Dd February 27, 1995 +.Dd August 27, 2010 .Dt PSIGNAL 3 .Os .Sh NAME .Nm psignal , +.Nm psiginfo , .Nm sys_siglist , .Nm sys_signame .Nd system signal messages @@ -42,7 +43,8 @@ .Sh SYNOPSIS .In signal.h .Ft void -.Fn psignal "unsigned sig" "const char *s" +.Fn psignal "int sig" "const char *s" +.Fn psiginfo "const siginfo_t *si" "const char *s" .Vt extern const char * const sys_siglist[]; .Vt extern const char * const sys_signame[]; .Sh DESCRIPTION @@ -66,6 +68,14 @@ .Dq "Unknown signal" is produced. .Pp +The +.Fn psiginfo +function produces the same output as the +.Fn psignal +function, only it uses the signal number information from the +.Fa si +argument. +.Pp The message strings can be accessed directly using the external array .Va sys_siglist , indexed by recognized signal numbers. @@ -89,3 +99,7 @@ .Fn psignal function appeared in .Bx 4.2 . +The +.Fn psiginfo +function appeared in +.Nx 6.0 . Index: src/lib/libc/gen/psignal.c diff -u src/lib/libc/gen/psignal.c:1.21 src/lib/libc/gen/psignal.c:1.22 --- src/lib/libc/gen/psignal.c:1.21 Mon Nov 28 22:11:59 2005 +++ src/lib/libc/gen/psignal.c Fri Aug 27 04:38:41 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: psignal.c,v 1.21 2005/11/29 03:11:59 christos Exp $ */ +/* $NetBSD: psignal.c,v 1.22 2010/08/27 08:38:41 christos Exp $ */ /* * Copyright (c) 1983, 1993 @@ -34,7 +34,7 @@ #if 0 static char sccsid[] = "@(#)psignal.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: psignal.c,v 1.21 2005/11/29 03:11:59 christos Exp $"); +__RCSID("$NetBSD: psignal.c,v 1.22 2010/08/27 08:38:41 christos Exp $"); #endif #endif /* LIBC_SCCS and not lint */ @@ -55,13 +55,11 @@ #endif void -psignal(sig, s) - unsigned int sig; - const char *s; +psignal(int sig, const char *s) { struct iovec *v; struct iovec iov[4]; - static char buf[NL_TEXTMAX]; + char buf[NL_TEXTMAX]; v = iov; if (s && *s) { @@ -79,3 +77,9 @@ v->iov_len = 1; (void)writev(STDERR_FILENO, iov, (v - iov) + 1); } + +void +psiginfo(const siginfo_t *si, const char *s) +{ + psignal(si->si_signo, s); +}