[PATCH] Fix cygcheck -p's handling of '+'

Jon Turney jon.turney@dronecode.org.uk
Mon Jan 30 15:37:00 GMT 2017


The form data sent to the server should be application/x-www-form-urlencoded

This replaces spaces with '+' before being RFC 11738 encoded, so a literal
'+' must be %-encoded also.

See https://cygwin.com/ml/cygwin/2014-01/msg00287.html et seq.

Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
---
 winsup/utils/cygcheck.cc | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/winsup/utils/cygcheck.cc b/winsup/utils/cygcheck.cc
index d1e27b7..e745b20 100644
--- a/winsup/utils/cygcheck.cc
+++ b/winsup/utils/cygcheck.cc
@@ -2009,8 +2009,8 @@ check_keys ()
   return 0;
 }
 
-/* RFC1738 says that these do not need to be escaped.  */
-static const char safe_chars[] = "$-_.+!*'(),";
+/* These do not need to be escaped in application/x-www-form-urlencoded */
+static const char safe_chars[] = "$-_.!*'(),";
 
 /* the URL to query.  */
 static const char base_url[] =
-- 
2.8.3



More information about the Cygwin-patches mailing list