summaryrefslogtreecommitdiffstats
path: root/main/musl/1002-fix-handling-of-zero-length-domain-names-in-dn_expan.patch
blob: 266b976c16a48a6790ce82a0c908495058a21611 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
From ea35594b2a54c1652bb8ffb04183180ad7325779 Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Wed, 13 Aug 2014 08:41:38 +0200
Subject: [PATCH] fix handling of zero length domain names in dn_expand

Copy a zero length string instead of returning error when trying to
expand a zero lentgh domain name (null terminator).

This fixes a regression introduced with 56b57f37a46dab432.
---
 src/network/dn_expand.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/network/dn_expand.c b/src/network/dn_expand.c
index 849df19..3264faf 100644
--- a/src/network/dn_expand.c
+++ b/src/network/dn_expand.c
@@ -6,7 +6,7 @@ int __dn_expand(const unsigned char *base, const unsigned char *end, const unsig
 	const unsigned char *p = src;
 	char *dend = dest + (space > 254 ? 254 : space);
 	int len = -1, i, j;
-	if (p==end || !*p) return -1;
+	if (p==end) return -1;
 	/* detect reference loop using an iteration counter */
 	for (i=0; i < end-base; i+=2) {
 		if (*p & 0xc0) {
-- 
2.0.4