Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix ssl_closed message leak when server hangs up ("Connection: close" header) #640

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Commits on Jun 12, 2020

  1. Fix erroneous unexpted message

    * mutually recursive maybe_continue and async_recv
      functions are really tricky to reason about, but
      it doesn't seem like it makes sense for maybe_continue
      to do error handling at all, since async_recv was already
      doing it
      * maybe_continue and stream_loop shouldn't select
        socket messages
      * we're getting into a state where the socket sends
        us a message while we're doing other things and
        we do that receive and then crash
    * this change makes async_recv the only one to do
      a select for transport messages
    
    * When the server closes the connection
      and :ssl sends us :ssl_closed, we weren't
      handling the message, which caused it to leak
      into the mailbox even after the request was ended
      * need to flush to make sure it's gone in this case
        where the server hangs up
      * caused when Connection: close header is sent
    
    fix debugging statement
    rozap committed Jun 12, 2020
    Configuration menu
    Copy the full SHA
    57804f7 View commit details
    Browse the repository at this point in the history

Commits on Jun 18, 2020

  1. Handle empty trailers case

    * bug i think appeared in 6ddc33c
    * when streaming the response, we terminate
      the parse recursive calls early since
      there is no match for {:more, {hparser, ...:on_trailers...}}
      case
    rozap committed Jun 18, 2020
    Configuration menu
    Copy the full SHA
    608ba2a View commit details
    Browse the repository at this point in the history