1 #include <u.h> 2 #include <libc.h> 3 4 void 5 main(int argc, char **argv) 6 { 7 int fd, n, m; 8 char buf[1024], dir[512], *str; 9 10 fd = open("/dev/acme/ctl", OWRITE); 11 if(fd < 0) 12 exits(0); 13 getwd(dir, 512); 14 strcpy(buf, "name "); 15 strcpy(buf+5, dir); 16 n = strlen(buf); 17 if(n>0 && buf[n-1]!='/') 18 buf[n++] = '/'; 19 buf[n++] = '-'; 20 if(argc > 1) 21 str = argv[1]; 22 else 23 str = "rc"; 24 m = strlen(str); 25 strcpy(buf+n, str); 26 n += m; 27 buf[n++] = '\n'; 28 write(fd, buf, n); 29 strcpy(buf, "dumpdir "); 30 strcpy(buf+8, dir); 31 strcat(buf, "\n"); 32 write(fd, buf, strlen(buf)); 33 exits(0); 34 } 35