blob: 999d4d344954d760b56ca1da9d6b3975f5694d9b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#include <sys/ioctl.h>
#include "10.h"
int MyPid; /* the shell's process id */
int MyPgrp; /* the shell's process group */
int TermPgrp; /* the terminal's process group */
setup()
{
/*
* Obtain shell's process id.
*/
MyPid = getpid();
/*
* Just use pid for process group. This is
* not a requirement, just convenient. Other
* ways of picking a process group can be used.
*/
MyPgrp = MyPid;
TermPgrp = MyPid;
/*
* Set the shell's process group.
*/
if (setpgrp(MyPid, MyPgrp) < 0) {
perror("setpgrp");
exit(1);
}
/*
* Set the terminal's process group.
*/
if (ioctl(1, TIOCSPGRP, &MyPgrp) < 0) {
perror("ioctl");
exit(1);
}
}
|