diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | hurd/hurd/signal.h | 13 | ||||
-rw-r--r-- | stdio/stdio.h | 4 | ||||
-rw-r--r-- | string/strsignal.c | 3 |
4 files changed, 23 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog index 2639dbfbba..b5eddcbe30 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ Tue Oct 17 01:21:21 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> + * hurd/hurd/signal.h: Declare hurd_preempt_signals and + hurd_unpreempt_signals. + + * stdio/stdio.h: Declare __snprintf and __vsnprintf. + * stdio-common/psignal.c: Translate signal description strings. * string/strsignal.c: Likewise. * sysdeps/generic/_strerror.c (_strerror_internal): Translate diff --git a/hurd/hurd/signal.h b/hurd/hurd/signal.h index 6a188bd774..b494f4922e 100644 --- a/hurd/hurd/signal.h +++ b/hurd/hurd/signal.h @@ -357,5 +357,18 @@ struct hurd_signal_preempt extern struct hurd_signal_preempt *_hurd_signal_preempt[NSIG]; extern struct mutex _hurd_signal_preempt_lock; +/* Install a signal preempter for the given signal and range. + The caller is responsible for the storage for PREEMPTER. */ +extern int hurd_preempt_signals (struct hurd_signal_preempt *preempter, + int signo, int first_code, int last_code, + sighandler_t (*handler) (thread_t, + int, long int, int)); + +/* Remove the signal preempter previously installed by calling + `hurd_preempt_signals' with PREEMPTER and SIGNO. */ +extern int hurd_unpreempt_signals (struct hurd_signal_preempt *preempter, + int signo); + + #endif /* hurd/signal.h */ diff --git a/stdio/stdio.h b/stdio/stdio.h index a36081d2d4..347e1868a9 100644 --- a/stdio/stdio.h +++ b/stdio/stdio.h @@ -401,9 +401,13 @@ vprintf (const char *__fmt, __gnuc_va_list __arg) #ifdef __USE_GNU /* Maximum chars of output to write in MAXLEN. */ +extern int __snprintf __P ((char *__s, size_t __maxlen, + __const char *__format, ...)); extern int snprintf __P ((char *__s, size_t __maxlen, __const char *__format, ...)); +extern int __vsnprintf __P ((char *__s, size_t __maxlen, + __const char *__format, __gnuc_va_list __arg)); extern int vsnprintf __P ((char *__s, size_t __maxlen, __const char *__format, __gnuc_va_list __arg)); diff --git a/string/strsignal.c b/string/strsignal.c index ccd2c0e82f..3a0c6b2e2f 100644 --- a/string/strsignal.c +++ b/string/strsignal.c @@ -26,7 +26,7 @@ Cambridge, MA 02139, USA. */ #define _sys_siglist sys_siglist #endif -/* Defined in , 1992siglist.c. */ +/* Defined in siglist.c. */ extern CONST char *CONST _sys_siglist[]; @@ -37,7 +37,6 @@ DEFUN(strsignal, (signum), int signum) if (signum < 0 || signum > NSIG) { static char buf[512]; - static char fmt[] = ; int len = __snprintf (buf, sizeof buf, _("Unknown signal %d"), signum); if (len < 0) return NULL; |