Various additions and fixes.
This commit is contained in:
34
src/lib9/postnote.c
Normal file
34
src/lib9/postnote.c
Normal file
@@ -0,0 +1,34 @@
|
||||
#include <signal.h>
|
||||
|
||||
#include <u.h>
|
||||
#define _NO9DEFINES_
|
||||
#include <libc.h>
|
||||
|
||||
|
||||
extern int _p9strsig(char*);
|
||||
|
||||
int
|
||||
postnote(int who, int pid, char *msg)
|
||||
{
|
||||
int sig;
|
||||
|
||||
sig = _p9strsig(msg);
|
||||
if(sig == 0){
|
||||
werrstr("unknown note");
|
||||
return -1;
|
||||
}
|
||||
|
||||
switch(who){
|
||||
default:
|
||||
werrstr("bad who in postnote");
|
||||
return -1;
|
||||
case PNPROC:
|
||||
return kill(pid, sig);
|
||||
case PNGROUP:
|
||||
if((pid = getpgid(pid)) < 0)
|
||||
return -1;
|
||||
return killpg(pid, sig);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user