From: Bruno Haible Date: Mon, 24 Feb 2020 11:31:21 +0000 (+0100) Subject: urlget: Follow the "privacy by design" principle. X-Git-Tag: v0.21~116 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=284d55ec4c24479789b250bdcba9e3782cca2994;p=thirdparty%2Fgettext.git urlget: Follow the "privacy by design" principle. * gettext-tools/src/urlget.c (fetch): Override the User-Agent string, so as not to reveal the program version to the server. For wget, use long options. --- diff --git a/gettext-tools/src/urlget.c b/gettext-tools/src/urlget.c index c47f27e12..652fdec39 100644 --- a/gettext-tools/src/urlget.c +++ b/gettext-tools/src/urlget.c @@ -1,5 +1,5 @@ /* Get the contents of an URL. - Copyright (C) 2001-2003, 2005-2010, 2012, 2017-2019 Free Software + Copyright (C) 2001-2003, 2005-2010, 2012, 2017-2020 Free Software Foundation, Inc. Written by Bruno Haible , 2001. @@ -330,15 +330,16 @@ fetch (const char *url, const char *file) if (wget_present) { - char *argv[8]; + char *argv[10]; int exitstatus; argv[0] = "wget"; - argv[1] = "-q"; - argv[2] = "-O"; argv[3] = "-"; - argv[4] = "-T"; argv[5] = "30"; - argv[6] = (char *) url; - argv[7] = NULL; + argv[1] = "--quiet"; + argv[2] = "--output-document"; argv[3] = "-"; + argv[4] = "--timeout"; argv[5] = "30"; + argv[6] = "--user-agent"; argv[7] = "urlget"; + argv[8] = (char *) url; + argv[9] = NULL; exitstatus = execute ("wget", "wget", argv, true, false, false, false, true, false, NULL); if (exitstatus != 127) @@ -374,13 +375,14 @@ fetch (const char *url, const char *file) if (lynx_present) { - char *argv[4]; + char *argv[5]; int exitstatus; argv[0] = "lynx"; - argv[1] = "-source"; - argv[2] = (char *) url; - argv[3] = NULL; + argv[1] = "-useragent=urlget"; + argv[2] = "-source"; + argv[3] = (char *) url; + argv[4] = NULL; exitstatus = execute ("lynx", "lynx", argv, true, false, false, false, true, false, NULL); if (exitstatus != 127) @@ -416,13 +418,14 @@ fetch (const char *url, const char *file) if (curl_present) { - char *argv[4]; + char *argv[6]; int exitstatus; argv[0] = "curl"; argv[1] = "--silent"; - argv[2] = (char *) url; - argv[3] = NULL; + argv[2] = "--user-agent"; argv[3] = "urlget"; + argv[4] = (char *) url; + argv[5] = NULL; exitstatus = execute ("curl", "curl", argv, true, false, false, false, true, false, NULL); if (exitstatus != 127)