mirror of
https://github.com/0intro/wmii
synced 2025-02-23 01:34:16 +03:00
37 lines
608 B
C
37 lines
608 B
C
![]() |
/*
|
||
|
* (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com>
|
||
|
* See LICENSE file for license details.
|
||
|
*/
|
||
|
#include <stdio.h>
|
||
|
#include <unistd.h>
|
||
|
#include <stdlib.h>
|
||
|
|
||
|
int
|
||
|
main(int argc, char *argv[])
|
||
|
{
|
||
|
if(argc < 2) {
|
||
|
fprintf(stderr, "usage: wmiisetsid cmd [arg ...]\n", argv[0]);
|
||
|
exit(1);
|
||
|
}
|
||
|
if(getpgrp() == getpid()) {
|
||
|
switch(fork()){
|
||
|
case -1:
|
||
|
perror("wmiisetsid: fork");
|
||
|
exit(1);
|
||
|
case 0:
|
||
|
break;
|
||
|
default:
|
||
|
exit(0);
|
||
|
}
|
||
|
}
|
||
|
if(setsid() < 0) {
|
||
|
perror("wmiisetsid: setsid");
|
||
|
exit(1);
|
||
|
}
|
||
|
execvp(argv[1], argv + 1);
|
||
|
perror("wmiisetsid: execvp");
|
||
|
exit(1);
|
||
|
return 0;
|
||
|
}
|
||
|
|