chiark / gitweb /
Expunge revision histories in files.
[tripe] / admin.c
diff --git a/admin.c b/admin.c
index 95e0e7cce7e4a51fc78396aa7890defb4844eb5b..bca525d8a3bdc01c461fb0965d624717c4cd9a8b 100644 (file)
--- a/admin.c
+++ b/admin.c
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: admin.c,v 1.7 2002/01/13 14:57:33 mdw Exp $
+ * $Id: admin.c,v 1.10 2004/04/08 01:36:17 mdw Exp $
  *
  * Admin interface for configuration
  *
  * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  */
 
-/*----- Revision history --------------------------------------------------* 
- *
- * $Log: admin.c,v $
- * Revision 1.7  2002/01/13 14:57:33  mdw
- * Track @lbuf@ and @dstr_vputf@ changes in mLib.
- *
- * Revision 1.6  2001/02/19 19:11:09  mdw
- * Output buffering on admin connections.
- *
- * Revision 1.5  2001/02/16 21:22:51  mdw
- * Support for displaying statistics.  Make client connections blocking, so
- * that things don't get dropped.  (This might change again if I add
- * buffering.)
- *
- * Revision 1.4  2001/02/06 09:34:53  mdw
- * Change ERR response to FAIL for consistency with other programs.
- *
- * Revision 1.3  2001/02/04 01:17:12  mdw
- * The `DAEMON' notification to stdout is replaced by a warning.  The
- * `DAEMON' and `QUIT' command send `OK' on successful completion.  Put
- * assignment of sequence number in a T(...) guard.
- *
- * Revision 1.2  2001/02/03 22:40:29  mdw
- * Put timer information into the entropy pool when packets are received
- * and on similar events.  Reseed the generator on the interval timer.
- *
- * Revision 1.1  2001/02/03 20:26:37  mdw
- * Initial checkin.
- *
- */
-
 /*----- Header files ------------------------------------------------------*/
 
 #include "tripe.h"
@@ -276,7 +245,7 @@ void a_warn(const char *fmt, ...)
   if (flags & F_INIT)
     dstr_puts(&d, "WARN ");
   va_start(ap, fmt);
-  dstr_vputf(&d, fmt, ap);
+  dstr_vputf(&d, fmt, &ap);
   va_end(ap);
   if (!(flags & F_INIT))
     moan("%s", d.buf);
@@ -893,7 +862,9 @@ static void a_accept(int fd, unsigned mode, void *v)
   size_t sz = sizeof(sun);
 
   if ((nfd = accept(fd, (struct sockaddr *)&sun, &sz)) < 0) {
-    a_warn("accept admin connection failed: %s", strerror(errno));
+    if (errno != EINTR && errno != EAGAIN && errno != EWOULDBLOCK &&
+       errno != ECONNABORTED && errno != EPROTO)
+      a_warn("accept admin connection failed: %s", strerror(errno));
     return;
   }
   a_create(nfd, nfd);