View | Details | Raw Unified | Return to bug 64363
Collapse All | Expand All

(-)nanohttp.c.orig (+6 lines)
Lines 1146-1151 Link Here
1146
	for (i = 0; h->h_addr_list[i]; i++) {
1146
	for (i = 0; h->h_addr_list[i]; i++) {
1147
	    if (h->h_addrtype == AF_INET) {
1147
	    if (h->h_addrtype == AF_INET) {
1148
		/* A records (IPv4) */
1148
		/* A records (IPv4) */
1149
		if ((unsigned int) h->h_length > sizeof(ia)) {
1150
			return (-1);
1151
		}
1149
		memcpy (&ia, h->h_addr_list[i], h->h_length > sizeof(ia) ?
1152
		memcpy (&ia, h->h_addr_list[i], h->h_length > sizeof(ia) ?
1150
		sizeof(ia) : h->h_length);
1153
		sizeof(ia) : h->h_length);
1151
		sockin.sin_family = h->h_addrtype;
1154
		sockin.sin_family = h->h_addrtype;
Lines 1155-1160 Link Here
1155
#ifdef SUPPORT_IP6
1158
#ifdef SUPPORT_IP6
1156
	    } else if (have_ipv6 () && (h->h_addrtype == AF_INET6)) {
1159
	    } else if (have_ipv6 () && (h->h_addrtype == AF_INET6)) {
1157
		/* AAAA records (IPv6) */
1160
		/* AAAA records (IPv6) */
1161
		if ((unsigned int) h->h_length > sizeof(ia6)) {
1162
			return (-1);
1163
		}
1158
		memcpy (&ia6, h->h_addr_list[i], h->h_length > sizeof(ia6) ?
1164
		memcpy (&ia6, h->h_addr_list[i], h->h_length > sizeof(ia6) ?
1159
		sizeof(ia6) : h->h_length);
1165
		sizeof(ia6) : h->h_length);
1160
		sockin6.sin6_family = h->h_addrtype;
1166
		sockin6.sin6_family = h->h_addrtype;

Return to bug 64363