Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACOXvngN2sq0+XcuNedu3xFOWs=3g3Ra9qJqECKeRomXfDMAMw@mail.gmail.com>
Date: Mon, 03 Apr 2017 23:15:12 +0000
From: Stefan Sedich <stefan.sedich@...il.com>
To: musl@...ts.openwall.com
Subject: [PATCH] Fix attempts option not being respected from resolv.conf

After some extensive digging it looks like the attempts option is not being
used properly in resolv.conf, turns out there is a subtle bug and it does
not appear to read the value correctly.

Looking at the old code this did work but must have broken when the
resolv.conf reading was refactored out, below is the fix for this (first
time submitting a patch here so hopefully I am doing it right).

---
 src/network/resolvconf.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/network/resolvconf.c b/src/network/resolvconf.c
index 2cf1f475..4c3e4c4b 100644
--- a/src/network/resolvconf.c
+++ b/src/network/resolvconf.c
@@ -45,8 +45,8 @@ int __get_resolv_conf(struct resolvconf *conf, char
*search, size_t search_sz)
  if (z != p) conf->ndots = x > 15 ? 15 : x;
  }
  p = strstr(line, "attempts:");
- if (p && isdigit(p[6])) {
- p += 6;
+ if (p && isdigit(p[9])) {
+ p += 9;
  unsigned long x = strtoul(p, &z, 10);
  if (z != p) conf->attempts = x > 10 ? 10 : x;
  }
-- 
2.11.0

Content of type "text/html" skipped

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.