lookups
Compressed hostnames was not dealt with proper, only saving the data of
the initial string + 2 bytes.
/*
- * $Id: rfc1035.c,v 1.31 2004/04/11 09:15:11 hno Exp $
+ * $Id: rfc1035.c,v 1.32 2005/01/23 12:39:45 serassio Exp $
*
* Low level DNS protocol routines
* AUTHOR: Duane Wessels
return -rfc1035_unpack_error;
}
}
- i = (int) hdr.ancount;
- if (i == 0)
+ if (hdr.ancount == 0)
return 0;
- recs = calloc(i, sizeof(*recs));
- while (i--) {
+ recs = calloc((int)hdr.ancount, sizeof(*recs));
+ for (i = 0; i < (int)hdr.ancount; i++) {
if (off >= sz) { /* corrupt packet */
RFC1035_UNPACK_DEBUG;
break;