Skip to content
Snippets Groups Projects
  1. Oct 20, 2012
    • Timothy B. Terriberry's avatar
      Make the URL API more extensible. · 800be8c0
      Timothy B. Terriberry authored
      Right now we have no way to add any more parameters beyond a set of
       basic binary flags.
      This unifies op_url_stream_create() and
       op_url_stream_create_with_proxy() into a single function that
       takes a variable-length list of arguments, which can be extended
       in the future to include more options of any type.
      
      This is an incompatible API change.
      800be8c0
    • Timothy B. Terriberry's avatar
      Fix op_http_parse_connection(). · 756c4c0b
      Timothy B. Terriberry authored
      We were computing the return value correctly, but then not
       returning it.
      756c4c0b
    • Timothy B. Terriberry's avatar
      Some http robustness improvements. · f83266d9
      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.
      f83266d9
    • Timothy B. Terriberry's avatar
      Documentation revisions and a leak fix. · 2ffd8cb7
      Timothy B. Terriberry authored
      Thanks to Jean-Marc Valin for providing documentation feedback.
      This also changes op_tags() to allow the tags to be queried on a
       partially-open file (because they've already been read and are
       available), and fixes a leak when a partially open file is freed
       instead of being fully opened.
      2ffd8cb7
  2. Oct 14, 2012
    • Timothy B. Terriberry's avatar
      Fix some socket connection bugs. · bb8cb7a3
      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).
      bb8cb7a3
  3. Oct 13, 2012
    • Timothy B. Terriberry's avatar
      Remove an assert. · e88aa498
      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.
      e88aa498
  4. Oct 12, 2012
    • Timothy B. Terriberry's avatar
      Major updates to the http backend. · 3d78feff
      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.
      3d78feff
  5. Oct 09, 2012
  6. Oct 07, 2012
  7. Oct 02, 2012
  8. Oct 01, 2012
  9. Sep 30, 2012
    • Ralph Giles's avatar
      Fix the doc makefile. · bed73602
      Ralph Giles authored
      The autoconf build replaced the static Doxyfile with a Doxyfile.in
      template. In the autoconf build, the config.status script applies
      substitutions to generate the actual Doxyfile. This made the generic
      doc/Makefile non-functional.
      
      Apply similar substitutions directly with the makefile so we can
      still build documentation outside the context of the autoconf build.
      
      Also add a 'distclean' target to remove the generated Doxyfile.
      bed73602
  10. Sep 29, 2012
  11. Sep 24, 2012
Loading