1 #include <u.h> 2 #include <libc.h> 3 #include <bio.h> 4 5 void 6 main(int argc, char **argv) 7 { 8 Biobuf in; 9 char *p; 10 int fd; 11 int n; 12 char buf[128]; 13 char *server; 14 15 if(argc > 1) 16 server = argv[1]; 17 else 18 server = "/net/cs"; 19 20 Binit(&in, 0, OREAD); 21 for(;;close(fd)){ 22 print("> "); 23 p = Brdline(&in, '\n'); 24 if(p == 0) 25 break; 26 fd = open(server, ORDWR); 27 if(fd < 0) 28 exits(server); 29 p[Blinelen(&in)-1] = 0; 30 if(write(fd, p, strlen(p)) <= 0){ 31 perror(p); 32 continue; 33 } 34 seek(fd, 0, 0); 35 while((n = read(fd, buf, sizeof(buf)-1)) > 0){ 36 buf[n] = 0; 37 print("%s\n", buf); 38 } 39 } 40 } 41