Commit graph

79 commits

Author SHA1 Message Date
cinap_lenrek fc0eee2980 webfs: do not reuse digest Authorization headers
We must use the digest authorization header only
once for a single request.
2022-04-02 20:29:20 +00:00
cinap_lenrek 8166868375 webfs: implement RFC2617 qop extension for http digest authentication 2022-04-02 19:20:56 +00:00
cinap_lenrek 151039caf0 webfs: bracket literal ipv6 host in "Host:" header 2019-03-23 00:49:07 +01:00
cinap_lenrek e1dcd2beb4 webfs: properly handle %.*s in url path and debug prints 2019-02-25 03:21:09 +01:00
cinap_lenrek c4ecd0fee0 webfs: write headers individually so they are not limited in sum to the 8k buffer 2018-12-01 04:20:53 +01:00
cinap_lenrek 311e3b51c6 libc: return number of bytes produced for idn2utf() and utf2idn() 2018-09-26 14:32:17 +02:00
cinap_lenrek 565fc2be5d webfs: remove idn.c 2018-09-25 20:16:06 +02:00
cinap_lenrek d5f2d2cc3f webfs: fix memory leak in Nfmt(), use libc's new idn functions 2018-09-25 20:15:24 +02:00
mischief 026c679f49 webfs: remove automatic Referer header
automatic Referer headers were found to break downloads from
sourceforge.net, causing html pages to appear instead of tarballs.

if a website does need them, they can be added as needed via hget's -r
flag, or added to mothra.

reverts commits 67f536d20329 and 6d999c39a9f0
2018-09-18 13:14:00 -07:00
cinap_lenrek 8f1eb1ac77 webfs: don't handle unknown status codes as continuations, reset status when handling continuation to avoid infinite loop 2018-06-24 21:52:17 +02:00
cinap_lenrek 650a4434a6 webfs(4): document -d and -D flags 2018-01-31 19:09:11 +01:00
cinap_lenrek c7f0aba80b webfs: aaand another one (should go to sleep) 2016-09-19 02:28:10 +02:00
cinap_lenrek cbdf48454f webfs: fix mistake... 2016-09-19 02:11:03 +02:00
cinap_lenrek 6d354d07e8 webfs: don't use cache connections when posting
we cannot retry posts and we do not know for sure if a
post had any side effect when we got no status, so always
make a new connection for a post request.
2016-09-19 02:04:13 +02:00
cinap_lenrek f3b27fd889 webfs: dont include http status in "needkey" error string 2016-08-15 09:07:34 +02:00
cinap_lenrek c8d1a885f8 webfs: avoid retry loops when we got a bad key in factotum 2016-08-08 05:32:20 +02:00
cinap_lenrek 038a615549 webfs: include factotum key query in error string for 401/407 Unauthorized status 2016-08-08 04:17:41 +02:00
cinap_lenrek a4a1a88a70 webfs: less aggressive url normalization; never unescape reserved characters in path/query/fragment 2016-06-04 19:10:07 +02:00
cinap_lenrek 66892eb133 webfs: fix "fd out of range" error message 2016-05-04 18:53:31 +02:00
cinap_lenrek 9ba04fd030 webfs: fix memory leak of serverName in tlswrap() 2016-04-18 19:07:02 +02:00
cinap_lenrek 1628c97d1e webfs: change %H (hostname) format to %N to not collide with encodefmt's %H (hex) 2016-04-15 23:54:00 +02:00
cinap_lenrek 3d20565a78 webfs: faster shutdown using postnote()
when the 9p end is closed, post a note to our private note
group to shoot down http procs. this results in quicker
release of namespace resources.
2016-02-08 19:35:26 +01:00
cinap_lenrek 772afbe98c format pointer subtraction results with %zd instead of %ld (for long -> intptr on amd64) 2016-01-07 04:44:13 +01:00
cinap_lenrek 890c459567 webfs: send servername in tls client hello (SNI) 2015-05-21 02:28:06 +02:00
cinap_lenrek 5275d49d8f webfs: fix proxy authentication 2015-05-10 07:46:53 +02:00
cinap_lenrek 2443d46a9e webfs: do not send credentials in automatic referer url 2015-03-14 01:09:37 +01:00
cinap_lenrek 7e7cc2c8d7 webfs: simplify http basic auth code by using encodefmt() 2015-03-12 17:26:49 +01:00
cinap_lenrek 482694b72a webfs: implement CONNECT method for https connections over proxy
when using a http proxy, establish secure tls connection to the
other end with the CONNECT method so the proxy.
2015-03-09 20:26:20 +01:00
cinap_lenrek cc77058aea webfs: check $httpproxy and error when its bogus
the httpproxy environment variable needs to be a url as stated
in the manpage, so give an error when it isnt.
2015-02-23 07:27:19 +01:00
cinap_lenrek 863a459691 webfs: explicitely unmount old /mnt/web (thanks BurnZeZ)
webfs forks the namespace to isolate itself from its mount
point which has the side effect that it captures the mount
of previous instances of webfs mounted on /mnt/web.

explicitely unmount the mountpoint in our namespace copy
to drop the reference.
2014-06-04 17:45:08 +02:00
cinap_lenrek 807af1d847 webfs: use mozilla compatible user agent as default
sites like google return the wrong characterset when
they do not recognize the user-agent. so setting default
user agent to something thats likely to pass these
idiotic browser tests.
2014-05-09 18:22:51 +02:00
cinap_lenrek 7058640179 webfs: do not unescape escape 2014-04-03 09:44:48 +02:00
cinap_lenrek dd4a487b0e webfs: fix compiler warning 2014-02-14 14:14:17 +01:00
cinap_lenrek 1561f0c4ea webfs: preserve unicode hostname, only convert to ascii when sending over the wire
we'd like to keep Url.host in unicode for factotum key
lookup. only when we send the url in a request, we have
to convert it to ascii.
2013-11-24 21:28:48 +01:00
cinap_lenrek f2bd1de5bd webfs: support for internationalized domain name urls 2013-11-24 11:56:33 +01:00
cinap_lenrek 56836bfdbd tls: fix various tlsClient()/tlsServer() related bugs
- TLSconn structure on stack but not initialized (zeroed)
- original filedescriptor double closed in error case
- original filedescriptor leaked in success case
- leaked TLSconn.sessionID and TLSconn.cert
- clarify in pushtls(2) and pushssl(2)
2013-09-14 19:19:08 +02:00
cinap_lenrek 425338fd1f webfs: add exits(0) to main() 2013-09-03 21:27:48 +02:00
cinap_lenrek ef5e19b9be add leading dot for explicit domain in webcookies, bump redirection limit to 12 in webfs 2013-05-26 03:33:39 +02:00
cinap_lenrek d5e642d52d webfs: handle multiple WWW-Authenticate headers, fix fmtstrinit() memory leaks 2013-01-17 12:28:19 +01:00
cinap_lenrek 6dc133ad99 webfs: preauth support 2013-01-12 00:16:07 +01:00
cinap_lenrek 7bb4a790d6 webfs: capture error string from tlsClient 2012-08-18 15:10:34 +02:00
cinap_lenrek 55ddbff77d fix strchr \0 bugs 2012-07-19 23:34:37 +02:00
cinap_lenrek 1e26438dfb webfs: fix mistake 2012-06-28 17:56:19 +02:00
cinap_lenrek 0862bcc93d webfs: send Accept headers 2012-06-28 14:32:09 +02:00
cinap_lenrek bd6a86a52b webfs: fix google login 400 bad request 2012-06-19 09:19:10 +02:00
cinap_lenrek ae311094ad mothra/webfs: multipart/form-data and file upload support 2012-06-18 21:26:28 +02:00
cinap_lenrek 9891d13887 webfs: nstrcpy paranoia 2012-05-18 20:25:50 +02:00
cinap_lenrek 4c16111e66 webfs: add global timeout parameter settable in rootctl and command line 2012-05-16 17:00:19 +02:00
stanley lieber 3ce608921a webfs/httpc.: increase dial timeout to 10 seconds, response timeout to 20 seconds 2012-05-03 12:31:09 -05:00
cinap_lenrek dd04c51470 webfs: make up fake spoof referer 2012-04-03 08:32:21 +02:00