Commit | Line | Data |
---|---|---|
e804469b C |
1 | /* @(#)putudata.c 4.2 (Melbourne) 82/02/20 */ |
2 | ||
3 | #include <sys/types.h> | |
4 | #include <udata.h> | |
5 | ||
6 | putudata(uid, up) | |
7 | register uid; | |
8 | register struct udata *up; | |
9 | { | |
10 | register fd; | |
11 | register res; | |
12 | ||
13 | if ((fd = open(UPRIVFILE, 1)) < 0) { | |
14 | perror(UPRIVFILE); | |
15 | return(-1); | |
16 | } | |
17 | ||
18 | lseek(fd, (long)uid * (long)sizeof(struct udata), 0); | |
19 | switch (write(fd, up, sizeof(struct udata))) { | |
20 | default: | |
21 | res = -1; | |
22 | break; | |
23 | case sizeof(struct udata): | |
24 | res = 0; | |
25 | break; | |
26 | } | |
27 | close(fd); | |
28 | return(res); | |
29 | } |