]> andersk Git - moira.git/blobdiff - server/mr_util.c
Rearranged timeouts, max retransmits.
[moira.git] / server / mr_util.c
index a6429109948e2ddd902ec8ae7c349eed9da0dff5..6590666238dac14f19ee3bf8adbff54432cd0e42 100644 (file)
@@ -6,9 +6,19 @@
  *     Copyright (C) 1987 by the Massachusetts Institute of Technology
  *
  *     $Log$
- *     Revision 1.7  1987-07-14 00:39:47  wesommer
- *     Changed interface to log_args.
+ *     Revision 1.10  1987-08-04 01:54:47  wesommer
+ *     Changed messages.
  *
+ * Revision 1.9  87/08/04  01:50:13  wesommer
+ * Rearranged messages.
+ * 
+ * Revision 1.8  87/07/29  16:02:48  wesommer
+ * Use unsigned char rather than char to prevent sign extension
+ * problem.
+ * 
+ * Revision 1.7  87/07/14  00:39:47  wesommer
+ * Changed interface to log_args.
+ * 
  * Revision 1.6  87/07/06  16:09:07  wesommer
  * Only print ... if the string is too long..
  * 
@@ -46,7 +56,7 @@ requote(buf, cp, len)
        register char *cp;
 {
        register int count = 0;
-       register char c;
+       register unsigned char c;
        if (len <= 2) return buf;
        *buf++ = '"'; count++; len--;
        for(; (count < 40) && (len > 1) && (c = *cp);
@@ -91,49 +101,30 @@ log_args(tag, argc, argv)
                bp = requote(bp, argv[i], (buf - bp) + 1024);
        }
        *bp = '\0';
-       com_err(whoami, 0, buf);
+       com_err(whoami, 0, "%s", buf);
 }
        
-void sms_com_err(whoami, code, message)
+void sms_com_err(whoami, code, fmt, pvar)
        char *whoami;
        int code;
-       char *message;
+       char *fmt;
+       caddr_t pvar;
 {
        extern char *error_message();
        extern client *cur_client;
        
        struct iovec strings[7];
-       char buf[32];
-       if (cur_client)
-               (void) sprintf(buf, "[#%d]", cur_client->id);
-       else buf[0]='\0';
-       
-       strings[1].iov_base = buf;
-       strings[1].iov_len = strlen(buf);
-       
-       strings[0].iov_base = whoami;
+
        if (whoami) {
-               strings[0].iov_len = strlen(whoami);
-               strings[2].iov_base = ": ";
-               strings[2].iov_len = 2;
-       } else {
-               strings[0].iov_len = 0;
-               strings[2].iov_base = " ";
-               strings[2].iov_len = 1;
+               fputs(whoami, stderr);
+               if (cur_client) fprintf(stderr, "[#%d]", cur_client->id);
+               fputs(": ", stderr);
        }
        if (code) {
-               register char *errmsg = error_message(code);
-               strings[3].iov_base = errmsg;
-               strings[3].iov_len = strlen(errmsg);
-               strings[4].iov_base = " ";
-               strings[4].iov_len = 1;
-       } else {
-               strings[3].iov_len = 0;
-               strings[4].iov_len = 0;
+               fputs(error_message(code), stderr);
+       }
+       if (fmt) {
+               _doprnt(fmt, pvar, stderr);
        }
-       strings[5].iov_base = message;
-       strings[5].iov_len = strlen(message);
-       strings[6].iov_base = "\n";
-       strings[6].iov_len = 1;
-       (void) writev(2, strings, 7);
+       putc('\n', stderr);
 }
This page took 0.821381 seconds and 4 git commands to generate.