git: 9front

ref: 6bda784cb6a0a933a3c3bde7e6b6d60d221d88f2
dir: /sys/src/libc/9sys/getppid.c/

View raw version
#include	<u.h>
#include	<libc.h>

int
getppid(void)
{
	char buf[32];
	int f;

	snprint(buf, sizeof(buf), "/proc/%lud/ppid", (ulong)getpid());
	f = open(buf, OREAD|OCEXEC);
	if(f < 0)
		return 0;
	memset(buf, 0, sizeof(buf));
	read(f, buf, sizeof(buf)-1);
	close(f);
	return atol(buf);
}