/* -*-c-*-
*
- * $Id: ident.c,v 1.2 2000/06/17 10:38:35 mdw Exp $
+ * $Id: ident.c,v 1.5 2002/01/13 13:33:15 mdw Exp $
*
* Nonblocking RFC931 client
*
/*----- Revision history --------------------------------------------------*
*
* $Log: ident.c,v $
+ * Revision 1.5 2002/01/13 13:33:15 mdw
+ * Track interface change for @lbuf@.
+ *
+ * Revision 1.4 2001/06/22 19:35:39 mdw
+ * New @conn_init@ interface.
+ *
+ * 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.
*
/* --- @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: ---
* 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;
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 --- */
void (*func)(ident_reply */*i*/, void */*p*/),
void *p)
{
- int sinsz;
+ size_t sinsz;
if ((sinsz = sizeof(struct sockaddr_in),
getsockname(sk, (struct sockaddr *)&rq->local, &sinsz)) ||
(sinsz = sizeof(struct sockaddr_in),