chiark / gitweb /
Fix description.
[tripe] / client.c
index db58ed5f967749cd1910a858a28186dc4e8d6d43..697481c4959fd25212a2ec81ddc1a75a3f4d222e 100644 (file)
--- a/client.c
+++ b/client.c
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: client.c,v 1.7 2001/02/22 09:07:54 mdw Exp $
+ * $Id: client.c,v 1.9 2002/01/13 14:57:18 mdw Exp $
  *
  * Client for TrIPE
  *
 /*----- Revision history --------------------------------------------------* 
  *
  * $Log: client.c,v $
+ * Revision 1.9  2002/01/13 14:57:18  mdw
+ * Track @lbuf@ changes in mLib.
+ *
+ * Revision 1.8  2001/06/19 22:09:37  mdw
+ * Move the program name to the right place when constructing the arguments
+ * to pass to a new server.
+ *
  * Revision 1.7  2001/02/22 09:07:54  mdw
  * Write a pidfile on request, and delete it when finished.
  *
@@ -136,7 +143,7 @@ static void writelog(const char *cat, const char *msg)
   fprintf(logfp, "%s %s: %s\n", buf, cat, msg);
 }
 
-static void cline(char *p, void *b)
+static void cline(char *p, size_t len, void *b)
 {
   char *q;
   if (!p) {
@@ -178,7 +185,7 @@ static void cline(char *p, void *b)
     die(EXIT_FAILURE, "unexpected output `%s %s'", q, p); 
 }
 
-static void sline(char *p, void *b)
+static void sline(char *p, size_t len, void *b)
 {
   if (!p) {
     if (!(f & f_uclose))
@@ -188,17 +195,15 @@ static void sline(char *p, void *b)
   puts(p);
 }
 
-static void uline(char *p, void *b)
+static void uline(char *p, size_t len, void *b)
 {
-  size_t sz;
   if (!p) {
     selbuf_destroy(b);
     shutdown(fd, 1);
     f |= f_uclose;
   } else {
-    sz = strlen(p);
-    p[sz] = '\n';
-    write(fd, p, sz + 1);
+    p[len] = '\n';
+    write(fd, p, len + 1);
   }
 }
 
@@ -413,10 +418,10 @@ int main(int argc, char *argv[])
 #endif
     sigaction(SIGCHLD, &sa, 0);
 
-    DA_UNSHIFT(&spawnopts, (char *)spawnpath);
     DA_UNSHIFT(&spawnopts, (char *)sock);
     DA_UNSHIFT(&spawnopts, "-a");
     DA_UNSHIFT(&spawnopts, "-d.");
+    DA_UNSHIFT(&spawnopts, (char *)spawnpath);
     DA_PUSH(&spawnopts, 0);
     if (socketpair(PF_UNIX, SOCK_STREAM, 0, pfd))
       die(EXIT_FAILURE, "error from socketpair: %s", strerror(errno));