- 20 Oct, 2012 1 commit
-
-
Timothy B. Terriberry authored
- Increase the maximum response header buffer size up to ~32 kB. This also moves it into a heap-allocated buffer instead of the stack, as 32 kB is really too much for the stack. - Treat LF as CR LF when parsing headers. This is necessary when parsing the load-balancer response in front of <http://lazaradio.hu:8100/bermuda.opus>. The response returned by that server is invalid in lots of ways, but with these two changes we can read it. - In addition, we now peek ahead at a large chunk of data when reading the response instead of reading 2 to 4 bytes at a time. This allows a typical response to be read with two syscalls (one peek, one read) instead of several hundred. - Stop trying to read more data when the connection is closed.
-
- 14 Oct, 2012 1 commit
-
-
Timothy B. Terriberry authored
The big one was that if the connect() call failed, it would loop forever (thanks to some code re-factoring, the loop was no longer advancing to the next address as originally designed).
-
- 13 Oct, 2012 1 commit
-
-
Timothy B. Terriberry authored
On the first request made by a connection, the value it was testing might be uninitialized, so we can't guarantee it'll pass.
-
- 12 Oct, 2012 1 commit
-
-
Timothy B. Terriberry authored
* Now supports HTTP/1.1 persistent connections with pipelining. This speeds up chain enumeration on large files by almost a factor of 2 over http, and by roughly a factor of 4 over https. The difference between http and https is now much smaller. * Add timeouts to all the socket I/O. * Estimate the number of available bytes to read and use it when making connection re-use decisions. * Add support for https with proxies using HTTP/1.1 CONNECT tunnels. * Fix TLS session re-use (it requires clean shutdown). * Various other code re-organization and minor improvements.
-
- 01 Oct, 2012 3 commits
-
-
Timothy B. Terriberry authored
* Tags were being freed even if not initialized if op_fetch_headers() failed on the first link. The logic for handling completely empty links would leak, also. * Ignore fragment identifiers in http URLs instead of rejecting them. * Get the current link in seeking_example's verify_seek when op_read_native() fails to return it for us.
-
Timothy B. Terriberry authored
Most of these were dead code left around from rewriting things and things llvm doesn't have enough global information to prove by itself. The one real error was the missing NULL check in opus_tags_parse_impl().
-
Timothy B. Terriberry authored
The previous comparison would have succeeded on things like "localhost123" instead of just "localhost".
-
- 29 Sep, 2012 1 commit
-
-
Timothy B. Terriberry authored
* s/op_read_stereo_float/op_read_float_stereo/ for the fixed-point API. * Fix compiler warnings exposed when optimizations are enabled. * Fix opusfile_example to work with --enable-fixed-point --disable-float * Fix seeking_example to not re-define OP_FIXED_POINT if it's already been defined.
-
- 24 Sep, 2012 2 commits
-
-
Timothy B. Terriberry authored
The most important for the https backend: - Implement RFC 6066 Server Name Indication. - Implement SSL session resumption. This gives less of a speed improvement than you might think.
-
Timothy B. Terriberry authored
-
- 23 Sep, 2012 3 commits
-
-
Timothy B. Terriberry authored
Teach me to change something right before committing.
-
Timothy B. Terriberry authored
This gives us a better idea when to re-use a connection.
-
Timothy B. Terriberry authored
-
- 22 Sep, 2012 2 commits
-
-
Timothy B. Terriberry authored
Actually close the old socket. Don't initialize SSL more than once.
-
Timothy B. Terriberry authored
This is pretty preliminary for now. Seeking performance isn't great, and there's no caching. I'm sure there's also lots of bugs.
-