[prev in list] [next in list] [prev in thread] [next in thread]
List: busybox
Subject: [PATCH] wget: add header Accept: */*
From: Natanael Copa <ncopa () alpinelinux ! org>
Date: 2024-03-11 11:57:38
Message-ID: 20240311115738.18177-1-ncopa () alpinelinux ! org
[Download RAW message or body]
Some servers (like https://netfilter.org) returns failure if the Accept
header is missing. Both GNU wget and curl adds this header, so make
busybox do the same.
fixes: https://bugs.busybox.net/show_bug.cgi?id=15982
function old new delta
wget_main 3120 3144 +24
.rodata 79296 79310 +14
wget_user_headers 76 84 +8
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 46/0) Total: 46 bytes
text data bss dec hex filename
825278 14260 2008 841546 cd74a busybox_old
825324 14260 2008 841592 cd778 busybox_unstripped
---
networking/wget.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/networking/wget.c b/networking/wget.c
index 199ddd4da..48486fdee 100644
--- a/networking/wget.c
+++ b/networking/wget.c
@@ -212,14 +212,16 @@ enum {
HDR_USER_AGENT = (1<<1),
HDR_RANGE = (1<<2),
HDR_CONTENT_TYPE = (1<<3),
- HDR_AUTH = (1<<4) * ENABLE_FEATURE_WGET_AUTHENTICATION,
- HDR_PROXY_AUTH = (1<<5) * ENABLE_FEATURE_WGET_AUTHENTICATION,
+ HDR_ACCEPT = (1<<4),
+ HDR_AUTH = (1<<5) * ENABLE_FEATURE_WGET_AUTHENTICATION,
+ HDR_PROXY_AUTH = (1<<6) * ENABLE_FEATURE_WGET_AUTHENTICATION,
};
static const char wget_user_headers[] ALIGN1 =
"Host:\0"
"User-Agent:\0"
"Range:\0"
"Content-Type:\0"
+ "Accept:\0"
# if ENABLE_FEATURE_WGET_AUTHENTICATION
"Authorization:\0"
"Proxy-Authorization:\0"
@@ -229,6 +231,7 @@ static const char wget_user_headers[] ALIGN1 =
# define USR_HEADER_USER_AGENT (G.user_headers & HDR_USER_AGENT)
# define USR_HEADER_RANGE (G.user_headers & HDR_RANGE)
# define USR_HEADER_CONTENT_TYPE (G.user_headers & HDR_CONTENT_TYPE)
+# define USR_HEADER_ACCEPT (G.user_headers & HDR_ACCEPT)
# define USR_HEADER_AUTH (G.user_headers & HDR_AUTH)
# define USR_HEADER_PROXY_AUTH (G.user_headers & HDR_PROXY_AUTH)
#else /* No long options, no user-headers :( */
@@ -236,6 +239,7 @@ static const char wget_user_headers[] ALIGN1 =
# define USR_HEADER_USER_AGENT 0
# define USR_HEADER_RANGE 0
# define USR_HEADER_CONTENT_TYPE 0
+# define USR_HEADER_ACCEPT 0
# define USR_HEADER_AUTH 0
# define USR_HEADER_PROXY_AUTH 0
#endif
@@ -1232,6 +1236,8 @@ static void download_one_url(const char *url)
SENDFMT(sfp, "Host: %s\r\n", target.host);
if (!USR_HEADER_USER_AGENT)
SENDFMT(sfp, "User-Agent: %s\r\n", G.user_agent);
+ if (!USR_HEADER_ACCEPT)
+ SENDFMT(sfp, "Accept: */*\r\n");
/* Ask server to close the connection as soon as we are done
* (IOW: we do not intend to send more requests)
--
2.44.0
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic