Commit | Line | Data |
---|---|---|
58f185b8 C |
1 | #include <sys/types.h> |
2 | #include <sys/stat.h> | |
3 | main(argc, argv) | |
4 | int argc; | |
5 | char **argv; | |
6 | { | |
7 | ||
8 | argc--, argv++; | |
9 | while (argc > 0) { | |
10 | struct stat stb; int c, f; | |
11 | if (stat(*argv, &stb) < 0) | |
12 | goto bad; | |
13 | if (chmod(*argv, stb.st_mode | 0200) < 0) | |
14 | goto bad; | |
15 | f = open(*argv, 2); | |
16 | if (f < 0) | |
17 | goto bad; | |
18 | lseek(f, 0, 0); | |
19 | read(f, &c, 1); | |
20 | lseek(f, 0, 0); | |
21 | write(f, &c, 1); | |
22 | close(f); | |
23 | chmod(*argv, stb.st_mode); | |
24 | argc--, argv++; | |
25 | continue; | |
26 | bad: | |
27 | perror(*argv); | |
28 | argc--, argv++; | |
29 | continue; | |
30 | } | |
31 | } |