Skip to content
Commits on Feb 23, 2016
  1. @nickelization

    Merge pull request #23 from basho/bugfix/spurious_error_handling

    nickelization committed Feb 23, 2016
    Port the spurious 400 error fix forward to master
  2. @nickelization

    Add tests for handling errors and unexpected msgs

    nickelization committed Feb 23, 2016
    These new tests verify correct behavior even in the case that an
    unexpected message arrives in the middle of handling a request. We also
    verify that the socket is closed cleanly in the event of a protocol
    error.
  3. @nickelization

    Fix handling for spurious msgs and protocol errors

    nickelization committed Feb 23, 2016
    This fix prevents us from sending back a 400 error in response to
    unexpected messages that may come in. The intent in the original
    catch-all clause seems to be to match on TCP or SSL errors, but if we
    get some other unexpected message coming in from the application layer,
    then that will also trigger the catch-all. This can have especially bad
    consequences if keepalives are enabled, as we may end up sending both a
    valid response AND a 400 on the same connection for a single request.
    
    At the same time, not all TCP/SSL errors necessarily warrant a 400
    response, so most errors will now simply trigger us to close the socket.
    The exception is emsgsize errors, since this typically comes from the
    packet decoder, suggesting that there is indeed actually a problem with
    the client request itself. This is also the only such case that is
    explicitly tested in the eunit test code, so that behavior is maintained
    with no need to fix any tests.
Commits on Jan 16, 2015
  1. @kuenishi

    Merge pull request #17 from basho/ku-range-fix

    kuenishi committed Jan 16, 2015
    Ku range fix
  2. @kuenishi
Commits on Jan 15, 2015
  1. @shino @kuenishi

    Accept range end position which exceededs the resource size

    shino committed with kuenishi Feb 14, 2013
    RFC 2616 14.35.1 Byte Ranges
    
       If the last-byte-pos value is absent, or if the value is greater than
       or equal to the current length of the entity-body, last-byte-pos is
       taken to be equal to one less than the current length of the entity-
       body in bytes.
    
    Conflicts:
    	src/mochiweb_http.erl
  2. @shino @kuenishi

    Remove special treatment of the range "0-"

    shino committed with kuenishi Feb 14, 2013
    Conflicts:
    	.travis.yml
Commits on Jul 24, 2014
  1. @vinoski

    Merge pull request #15 from basho/vinoski/mochiweb-update

    vinoski committed Jul 24, 2014
    update from mochi repo
Commits on Jul 11, 2014
  1. @vinoski

    more updates from primary mochiweb repo

    vinoski committed Jul 11, 2014
    The crypto compatibility changes in mochiweb_session.erl and
    mochiweb_websocket.erl are necessary for older releases of Erlang not
    supported in the primary mochiweb repo.
Commits on Jun 27, 2014
  1. @etrepum

    Merge pull request #132 from tuncer/rebar-recursion

    etrepum committed Jun 27, 2014
    Makefile: adapt rebar calls to new behavior
  2. @tuncer

    Makefile: adapt rebar calls to new behavior

    tuncer committed Jun 27, 2014
    * rebar prepare-deps is equivalent to rebar -r get-deps compile
    * Only rebar *-deps and rebar compile are recursive by default.
      Therefore, we don't need to pass skip_deps=true.
Commits on Jun 24, 2014
  1. @etrepum
  2. @etrepum
Commits on May 8, 2014
  1. @etrepum

    Merge pull request #127 from talko/base64url_dialyzer

    etrepum committed May 8, 2014
    Fix type specs in base64url
  2. @ransomr

    Fix type specs in base64url

    ransomr committed May 8, 2014
Commits on Mar 26, 2014
  1. @vinoski
  2. @etrepum

    Merge pull request #126 from pooya/disco

    etrepum committed Mar 26, 2014
    implementation of max, the number of connections is now limited with a default of 2048
Commits on Mar 24, 2014
  1. @pooya

    Fix the computation of the active_sockets number.

    pooya committed Mar 24, 2014
    If we added a new socket in the recycle_acceptor, we should not decrement the
    number of active sockets.
  2. @pooya

    Avoid sleeping in the unittests.

    pooya committed Mar 24, 2014
  3. @pooya
Commits on Mar 23, 2014
  1. @pmundkur @pooya
  2. @pmundkur @pooya

    Add a simple implementation of max connections

    pmundkur committed with pooya Apr 15, 2011
    max limits the sum of active connections and listeners.
    The implementation assumes that max is greater than acceptor_pool_size,
    and always maintains the acceptor_pool at acceptor_pool_size as long
    as the max is not exceeded.
    
    If max is less than acceptor_pool_size, acceptor_pool_size is the
    effective max.
Commits on Feb 6, 2014
  1. @etrepum

    Merge pull request #125 from nparry/whitespace_in_range_header

    etrepum committed Feb 6, 2014
    Allow whitespace in Range headers
  2. @nparry

    Allow whitespace in Range headers

    nparry committed Feb 5, 2014
    While investigating basho/webmachine#186 it was noted that a small but
    non-zero percentage of clients embed whitespace in Range headers. It
    appears this is valid:
    
    From http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
    
        byte-range-set  = 1#( byte-range-spec | suffix-byte-range-spec )
    
    From http://www.w3.org/Protocols/rfc2616/rfc2616-sec2.html#sec2
    
        #rule
        ...separated by one or more commas (",") and OPTIONAL linear
        white space (LWS)...
        ...null elements are allowed, but do not contribute to the count
        of elements present. That is, "(element), , (element) " is permitted,
        but counts as only two elements...
Commits on Jan 3, 2014
  1. @etrepum

    update CHANGES

    etrepum committed Jan 3, 2014
  2. @etrepum

    Merge pull request #121 from jj1bdx/jj1bdx-freebsd-testfail-fix

    etrepum committed Jan 3, 2014
    Update test/mochiweb_tests.erl
  3. @jj1bdx

    Update test/mochiweb_tests.erl

    jj1bdx committed Jan 3, 2014
    * With Erlang R16B03 running on FreeBSD/amd64 10.0-PRERELEASE
      (base/stable/10 r260159),
      the following tests will not finish
      within the default eunit timeout of 5 seconds
      (See `lib/eunit/src/eunit_internal.hrl` (of R16B03))
      so cases modified to extend timeout to 60 seconds (`LARGE_TIMEOUT`):
    
            % note well the underscore at the end of function names
            single_100k_http_POST_test_()
            single_100k_https_POST_test_()
            multiple_100k_http_POST_test_()
            multiple_100k_https_POST_test_()
    
      See also <mochi/mochiweb@02066a5>
Commits on Jan 2, 2014
  1. @etrepum

    Merge branch 'websocket'

    etrepum committed Jan 2, 2014
Commits on Dec 26, 2013
  1. @etrepum

    fix state bug

    etrepum committed Dec 26, 2013
  2. @etrepum
  3. @etrepum
  4. @etrepum
Commits on Dec 25, 2013
  1. @etrepum

    clean up conditionals

    etrepum committed Dec 25, 2013
  2. @etrepum

    add scheme to hixie_handshake

    etrepum committed Dec 25, 2013
  3. @etrepum

    add HTML for example

    etrepum committed Dec 25, 2013
Something went wrong with that request. Please try again.