tpostnote.c - plan9port - [fork] Plan 9 from user space
HTML git clone git://src.adamsgaard.dk/plan9port
DIR Log
DIR Files
DIR Refs
DIR README
DIR LICENSE
---
tpostnote.c (514B)
---
1 #include <u.h>
2 #define NOPLAN9DEFINES
3 #include <libc.h>
4
5 #include <signal.h>
6
7
8 extern int _p9strsig(char*);
9
10 int
11 postnote(int who, int pid, char *msg)
12 {
13 int sig;
14
15 sig = _p9strsig(msg);
16 if(sig == 0){
17 werrstr("unknown note");
18 return -1;
19 }
20
21 if(pid <= 0){
22 werrstr("bad pid in postnote");
23 return -1;
24 }
25
26 switch(who){
27 default:
28 werrstr("bad who in postnote");
29 return -1;
30 case PNPROC:
31 return kill(pid, sig);
32 case PNGROUP:
33 if((pid = getpgid(pid)) < 0)
34 return -1;
35 return killpg(pid, sig);
36 }
37 }