Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Proposal: new libc/libutil functions to map SIGXXXX <-> "XXXX"

    Date:        Fri, 28 Apr 2017 15:31:10 +0000 (UTC)
    From: (Christos Zoulas)
    Message-ID:  <odvn7u$235$>

  | Fine, return NULL for no signal number / and -1 for no such signal name.

I think 0 for no name is better, we know there is not (and cannot be) a
signal 0, but -1 ?   Unlikely, but...   (and besides, people often assume
that funcs that return -1 to indicate error also set errno, and this does not.)

  | I would just leave __pure out of the man page for now.

Yes, that's what I have done

The proposal is now to put ...

	const char *signalname(int) __pure;
	int signalnumber(const char *);

in <signal.h> (somewhere in a _NETBSD_SOURCE proctected area), and
the man page will be as below.

The tgz file at has been updated
to reflect all of this.

More comments/suggestions ?


SIGNALNAME(3)		   Library Functions Manual		 SIGNALNAME(3)

     signalname signalnumber -- convert between signal numbers and names

     Standard C Library (libc, -lc)

     #include <signal.h>

     const char *
     signalname(int sig);

     signalnumber(const char *name);

     The signalname() function takes a signal number sig, and returns the name
     of that signal.  Signal names returned do not contain a leading ``SIG''

     The return value of signalname() is NULL if sig does not represent a
     valid signal number.

     The signalnumber() function converts the signal name name to the number
     corresponding to that signal.  The name is handled in a case-insensitive
     manner.  Any leading ``SIG'' prefix in name is ignored.

     The signalnumber() function returns the signal number, or zero (0) if the
     name given does not represent a valid signal.

     intro(2), psignal(3), strsignal(3)

     The signalname() and signalnumber() functions first appeared in
     NetBSD 8.0.

Home | Main Index | Thread Index | Old Index