chiark / gitweb /
Fix maintainer email addr.
[mLib] / ident.c
diff --git a/ident.c b/ident.c
index 4d8888f7ccc0c241065f2e61be90efa65d4248fd..52d4542a4edce1ae082a4b9921804a3127b3d72f 100644 (file)
--- a/ident.c
+++ b/ident.c
@@ -1,6 +1,6 @@
 /* -*-c-*-
  *
- * $Id: ident.c,v 1.3 2000/10/08 11:17:45 mdw Exp $
+ * $Id: ident.c,v 1.6 2004/04/08 01:36:11 mdw Exp $
  *
  * Nonblocking RFC931 client
  *
  * MA 02111-1307, USA.
  */
 
-/*----- Revision history --------------------------------------------------* 
- *
- * $Log: ident.c,v $
- * Revision 1.3  2000/10/08 11:17:45  mdw
- * (ident_socket): change sizes to be @size_t@.
- *
- * Revision 1.2  2000/06/17 10:38:35  mdw
- * Track changes to selbuf interface.
- *
- * Revision 1.1  1999/10/04 21:41:58  mdw
- * Added ident client from `fw'.
- *
- */
-
 /*----- Header files ------------------------------------------------------*/
 
 #include <ctype.h>
@@ -162,6 +148,7 @@ static void parse(char *p, ident_reply *i)
 /* --- @line@ --- *
  *
  * Arguments:  @char *s@ = pointer to string from ident server
+ *             @size_t len@ = length of the line
  *             @void *p@ = pointer to my request block
  *
  * Returns:    ---
@@ -169,7 +156,7 @@ static void parse(char *p, ident_reply *i)
  * Use:                Handles a string from an ident server.
  */
 
-static void line(char *s, void *p)
+static void line(char *s, size_t len, void *p)
 {
   ident_request *rq = p;
 
@@ -295,8 +282,9 @@ static void go(ident_request *rq)
   sin.sin_family = AF_INET;
   sin.sin_port = htons(113);
   sin.sin_addr = rq->remote.sin_addr;
-  conn_init(&rq->c, rq->s, fd, (struct sockaddr *)&sin, sizeof(sin),
-           connected, rq);
+  if (conn_init(&rq->c, rq->s, fd, (struct sockaddr *)&sin, sizeof(sin),
+               connected, rq))
+    goto fail_1;
 
   /* --- Finish off initializing the block --- */