From 068f9ed5a0533c24d094d45dea1c035c3bf2a009 Mon Sep 17 00:00:00 2001
From: Daniel Stenberg <daniel@haxx.se>
Date: Mon, 9 Dec 2013 08:19:04 +0100
Subject: [PATCH] parseconfig: warn if unquoted white spaces are detected

Commit 0db811b6 made some existing config files pass on unexpected
values to libcurl that made it somewhat hard to track down what was
really going on.

This code detects unquoted white spaces in the parameter when parsing a
config file as that would be one symptom and it is generally a bad
syntax anyway.
---
 src/tool_parsecfg.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/src/tool_parsecfg.c b/src/tool_parsecfg.c
index 4d5145b..71be83d 100644
--- a/src/tool_parsecfg.c
+++ b/src/tool_parsecfg.c
@@ -188,6 +188,24 @@ int parseconfig(const char *filename,
         while(*line && !ISSPACE(*line))
           line++;
         *line = '\0'; /* zero terminate */
+
+        /* to detect mistakes better, see if there's data following */
+        line++;
+        /* pass all spaces */
+        while(*line && ISSPACE(*line))
+          line++;
+
+        switch(*line) {
+        case '\0':
+        case '\r':
+        case '\n':
+        case '#': /* comment */
+          break;
+        default:
+          warnf(config, "%s:%d: warning: '%s' uses unquoted white space in the"
+                " line that may cause side-effects!\n",
+                filename, lineno, option);
+        }
       }
 
       if(param && !*param) {
-- 
1.8.5.1

