summaryrefslogtreecommitdiff
path: root/sys/src/libc/9sys/procsetname.c
blob: 7b9d41b8ea391778842ba3e14e9cdd7d0aebe6d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <u.h>
#include <libc.h>

void
procsetname(char *fmt, ...)
{
	int fd, n;
	char buf[128];
	va_list arg;

	snprint(buf, sizeof buf, "/proc/%lud/args", (ulong)getpid());
	fd = open(buf, OWRITE|OCEXEC);
	if(fd < 0)
		return;
	va_start(arg, fmt);
	n = vsnprint(buf, sizeof buf, fmt, arg);
	va_end(arg);
	write(fd, buf, n+1);
	close(fd);
}