1. 10 Apr, 2018 1 commit
    • Deomid Ryabkov's avatar
      Fix mg_http_parse_header · c2fbff6d
      Deomid Ryabkov authored
      Per standard, cookies are delimited by `; `.
      
      CL: Fix mg_http_parse_header: treat ";" as a delimiter.
      
      PUBLISHED_FROM=039243c30f5fabf4a4700a43506f841b3268306a
      c2fbff6d
  2. 03 Apr, 2018 2 commits
  3. 30 Mar, 2018 2 commits
    • Deomid Ryabkov's avatar
      Mongoose net_if and ssl_if refactoring · 3e33e577
      Deomid Ryabkov authored
      A major cleanup, disentangling net_if and ssl_if.
      Pulled a lot of common logic into the core and reduced size of net_if implementations.
      
      CL: Mongoose net_if and ssl_if refactoring
      
      PUBLISHED_FROM=29bd4dcb264a1fd96b3dd164e2d880e1c2c0921e
      3e33e577
    • Deomid Ryabkov's avatar
      Fix an edge case in multipart HTTP upload parsing · c80f4c53
      Deomid Ryabkov authored
      Consume buffer as soon as we know there is no boundary there, no need to delay until next chunk arrives.
      This prevents stall where buffer fills up in one go and next chunk never arrives.
      
      CL: Fix an edge case in multipart HTTP upload parsing
      
      PUBLISHED_FROM=025f9001d272df2a75ece22b199b1944d5db9840
      c80f4c53
  4. 28 Mar, 2018 1 commit
  5. 22 Mar, 2018 1 commit
    • Deomid Ryabkov's avatar
      Improve mbuf allocation behavior · 0a90cab4
      Deomid Ryabkov authored
       * Limit total amount of headroom, in absolute terms (`MBUF_SIZE_MAX_HEADROOM`).
       * If unable to allocate with headroom, fall back to allocating the required minimum.
       * For mOS, set default `MBUF_SIZE_MULTIPLIER` to 2 to avoid floating point operations.
         Since max headroom size is now capped to 128 bytes, this will not result in much of a bloat.
      
      PUBLISHED_FROM=11d4fc65a46a805bb7c8960f89a3d0b753c58bb8
      0a90cab4
  6. 20 Mar, 2018 1 commit
    • Serge A. Zaitsev's avatar
      mongoose: fix http pipeline · d16dbc19
      Serge A. Zaitsev authored
      mongoose: fix formatting
      
      mongoose: fix formatting
      
      mongoose: remove debugging messages
      
      PUBLISHED_FROM=1194e018001cc5f2b598096593d7aac4ec8dc04d
      d16dbc19
  7. 17 Mar, 2018 1 commit
  8. 12 Mar, 2018 1 commit
    • novlean's avatar
      2018 · 6523cc4d
      novlean authored
      PUBLISHED_FROM=63ce52177f5f13cb76f0fcb4689efb65a04318a2
      6523cc4d
  9. 27 Feb, 2018 1 commit
  10. 23 Feb, 2018 1 commit
  11. 18 Feb, 2018 1 commit
  12. 13 Feb, 2018 1 commit
  13. 10 Feb, 2018 1 commit
    • Deomid Ryabkov's avatar
      Make sure test assertions are evaluated once · a3c4a48e
      Deomid Ryabkov authored
      E.g. if `ASSERT_EQ(myfunc(), 123)` fails, `myfunc()` would be invoked again to print the actual value.
      This can cause confusion sometimes.
      To avoid this, we cast arguments to double, which is wide enough for most cases and we provide a variant for 64 bit value types for when it's not.
      We also perform a check and fail if argument to the check results in loss of precision.
      
      CL: none
      
      PUBLISHED_FROM=a14551289d92e8a5dead21d16471ebddebe938a8
      a3c4a48e
  14. 08 Feb, 2018 2 commits
  15. 07 Feb, 2018 4 commits
    • Dmitry Frank's avatar
      Implement mg_http_parse_header2() · b9b20c64
      Dmitry Frank authored
      Which is a replacement of (deprecated) `mg_http_parse_header`, but,
      similarly to `asprintf`, allocates a new buffer if the client-provided
      one is not large enough.
      
      Also use it throughout mongoose code, and thus some header-related
      limitations are removed; in particular,
      https://github.com/cesanta/mongoose/issues/813 is fixed.
      
      CL: Mongoose Web Server: Deprecate `mg_http_parse_header()` and implement `mg_http_parse_header2()` instead, which allocates a new buffer if the client-provided one is not large enough (similarly to `asprintf`).
      CL: Mongoose Web Server: Fix limitations of header value lengths, e.g. when parsing authentication headers such as nonce, etc.
      
      PUBLISHED_FROM=c75b1bbbbdb294ea85075ce69b1368f115fdd1ef
      b9b20c64
    • Deomid Ryabkov's avatar
      Minor tweaks for testing · a8a7d2cf
      Deomid Ryabkov authored
      PUBLISHED_FROM=d52aea1648ed8ec8dd2e71168884795d995b1826
      a8a7d2cf
    • Deomid Ryabkov's avatar
      Commonize unit test main() · 50ecc30b
      Deomid Ryabkov authored
      CL: none
      
      PUBLISHED_FROM=ee76407d89f3fcbe3da23810117a374d06af0a25
      50ecc30b
    • Deomid Ryabkov's avatar
      Add a convenience macro invoke subroutines · cd89db5c
      Deomid Ryabkov authored
      To properly fail a test in a subroutine, return value needs to be passed up.
      This snippet makes it short.
      
      PUBLISHED_FROM=2f6328b5eb2921a4caa53d8887c02f73a5d817ea
      cd89db5c
  16. 06 Feb, 2018 2 commits
  17. 05 Feb, 2018 2 commits
  18. 02 Feb, 2018 6 commits
  19. 01 Feb, 2018 2 commits
    • Dmitry Frank's avatar
      Fix nonce in digest authentication · 47abc641
      Dmitry Frank authored
      CL: Mongoose Web Server: Digest authentication: Fix nonce validity check (expired nonce or nonce from the future did not cause the the check to fail)
      CL: Mongoose Web Server: Digest authentication: Fix nonce request value; it worked before because nonce validity check was broken as well
      CL: Mongoose Web Server: Digest authentication: Add `nonce` argument to `mg_http_create_digest_auth_header()`: clients should use the value received from the server's authentication request.
      
      Resolves https://github.com/cesanta/mongoose/issues/809
      
      PUBLISHED_FROM=5e59f90ed6b2a4311ed6763159da81c2aaf6af4c
      47abc641
    • Dmitry Frank's avatar
      Improve websocket implementation · 7519b2ef
      Dmitry Frank authored
      CL: Mongoose Web Server: Websocket: Respond to Ping with Pong
      CL: Mongoose Web Server: Websocket: Properly close a connection with Close frame (in response to a client's close and when protocol failure is detected)
      CL: Mongoose Web Server: Websocket: Fix support of fragmented messages
      CL: Mongoose Web Server: Websocket: Add support for control frames interjected in the middle of a fragmented message
      
      PUBLISHED_FROM=e2b3794aaacc64633540c493194cccc62afa2077
      7519b2ef
  20. 30 Jan, 2018 7 commits