summaryrefslogtreecommitdiff
path: root/src/libwaitress/waitress.c
AgeCommit message (Collapse)AuthorFilesLines
2015-04-06Switch back to libcurlLars-Dominik Braun1-1240/+0
Drops libwaitress. Adds the new dependency libcurl and drops gnutls. I wouldn’t say writing my own HTTP library was a mistake – it was not and the experience gained was worth it. Instead I have to acknowledge that libcurl is just better than my own implementation. Sure, it does a lot more than HTTP – one could call that bloat. Yet if you just want to get the job done™ reusing code is the way to go. See #512 and #513.
2014-05-25waitress: Improve getaddr error messageLars-Dominik Braun1-1/+1
2014-04-18waitress: Use standard socket buffer sizeLars-Dominik Braun1-5/+0
libav* uses its own HTTP implementation and the API calls do not benefit from it anyway.
2014-04-04Send headers in first packet.Kenny MacDermid1-9/+6
Splitting up the writes causes the Host header to end up in a different packet than the requst line, making it harder to proxy.
2014-04-04Send the server_name extension.Kenny MacDermid1-0/+4
Required by sniproxy when forwarding the connection.
2014-03-14waitress: Increase kernel receive bufferLars-Dominik Braun1-1/+1
Suggested in #426. Should be large enough for a complete song now (if permitted by sysctl). The correct solution™ would be a buffer in userspace though.
2013-09-08waitress: Move testcases to separate fileLars-Dominik Braun1-120/+0
Now the test-enabled waitress.o does not conflict with pianobar’s waitress.o any more, thus running `make test` without `make clean` works fine.
2013-08-08waitress: Try all addresses returned by getaddrinfoLars-Dominik Braun1-32/+51
Fixes issue #384.
2013-05-08waitress: Close connection if body has been receivedLars-Dominik Braun1-0/+8
Now libwaitress won’t wait until the server closes the connection if the request body has been received. Multiple requests per connection are not supported anyway. Fixes #321. Thanks to Michael Stowe.
2013-03-31Ignore HTTP status 400Lars-Dominik Braun1-1/+5
Workaround for #355, fixes commit 2c516503d2cb81dd156afc24677ac4bf3caefceb.
2012-12-01waitress: Add TLS fingerprint mismatch error codeLars-Dominik Braun1-14/+16
2012-11-30waitress: Fix chunked decoderLars-Dominik Braun1-45/+50
Closes #322.
2012-11-04New setting: Read RPC TLS portPierre Zurek1-1/+5
Useful for tuner-beta.savagebeast.com:8443. Closes #319.
2012-06-14waitress: Send TLS bye only if connect was successfulLars-Dominik Braun1-1/+3
2012-05-04waitress: Add missing includeLars-Dominik Braun1-0/+1
See #250.
2012-03-27Initialize fd correctly with -1Lars-Dominik Braun1-1/+4
Thanks to Perette Barella.
2012-01-10HTTP/1.1 compliant CONNECTLars-Dominik Braun1-1/+4
Host: is mandatory.
2011-12-23Fix warnings found by -Wmissing-declarationsLars-Dominik Braun1-1/+1
2011-11-15waitress: Remove http fetch testLars-Dominik Braun1-11/+0
This was not meant to go public.
2011-11-13waitress: Check return code for proxy CONNECT writesLars-Dominik Braun1-3/+3
2011-11-13waitress: Move READ/WRITE_RET to the topLars-Dominik Braun1-13/+11
2011-11-13waitress: Fix ssize_t/size_t confusionLars-Dominik Braun1-7/+7
2011-11-13waitress: Use HTTP parser for proxy response parsingLars-Dominik Braun1-19/+39
2011-11-13waitress: Don’t use OrdinaryRead/Write directlyLars-Dominik Braun1-7/+8
2011-11-12waitress: Fix compiler warningsLars-Dominik Braun1-18/+32
2011-11-12waitress: Add proxy authorization support againMichał Cichoń1-2/+12
Original patch slightly adjusted.
2011-11-11waitress: Support GnuTLS <= 2.10.0Lars-Dominik Braun1-17/+10
Both, 1.x and 2.x are now supported. See issue #182.
2011-11-11waitress: Fingerprint checkLars-Dominik Braun1-29/+11
Reduces memory usage, protects against 0wned CA's and avoids ca-bundle confusion. Closes #175
2011-11-10waitress: Don't send full url to serverLars-Dominik Braun1-1/+1
We CONNECT to server through proxy and can use paths here. Closes #179
2011-11-10waitress: Use WAITRESS_HTTP_VERSIONLars-Dominik Braun1-2/+3
2011-11-10waitress: Remove unused return codeLars-Dominik Braun1-4/+0
2011-11-10Die if trust file load failsLars-Dominik Braun1-3/+11
2011-11-09TLS is not optional any moreLars-Dominik Braun1-26/+0
2011-11-09waitress: Poor man's proxy support for TLSLars-Dominik Braun1-0/+15
2011-11-09waitress: Don't initialize TLS if not requestedLars-Dominik Braun1-6/+10
The player does not need TLS. This saves a few bytes.
2011-11-09waitress: move credentials init to WaitressInitLars-Dominik Braun1-8/+14
Reusable.
2011-11-09waitress: Server certificate verificationLars-Dominik Braun1-0/+62
2011-11-09waitress: Initial TLS implementation (using gnutls)Lars-Dominik Braun1-37/+161
2011-11-09waitress: split WaitressFetchCall, part 3: readLars-Dominik Braun1-37/+46
2011-11-09waitress: split WaitressFetchCall, part 2: writeLars-Dominik Braun1-29/+46
Currently leaks memory...
2011-11-09waitress: split WaitressFetchCall, part 1: connectLars-Dominik Braun1-54/+60
2011-11-09waitress: merge remaining buffer push into loopLars-Dominik Braun1-25/+8
2011-11-09waitress: document assumptions with assert statementsLars-Dominik Braun1-0/+51
2011-11-09waitress: const correctnessLars-Dominik Braun1-5/+5
2011-11-09waitress: muke sure chunked handler reads \r\nLars-Dominik Braun1-2/+6
2011-11-09waitress: fix chunked handler return valuesLars-Dominik Braun1-4/+11
2011-11-09waitress: header keys/values are case-insensitiveLars-Dominik Braun1-4/+6
2011-11-09waitress: handler return valuesLars-Dominik Braun1-15/+41
2011-11-09waitress: enable http 1.1Lars-Dominik Braun1-2/+3
2011-11-09waitress: support chunked encodingLars-Dominik Braun1-37/+87
as requested by rfc 2616