Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Jun 1, 2011
  1. @vinoski

    fully qualify call to erlang:max

    vinoski committed with
  2. @vinoski

    update mime.types from recent Apache web server sources

    vinoski committed with
    Also eliminate trailing whitespace in the file.
  3. @vinoski
  4. @vinoski

    add binary option to multipart/form-data parsing

    vinoski committed with
    Add optional arguments list and binary (passed as atoms) to specify
    whether the uploaded file data should be returned in list form or
    binary form, respectively. By default
    yaws_multipart:read_multipart_form returns uploaded file data in list
    form to preserve backwards compatibility. But using the binary option
    can result in yaws requiring less memory for handling file uploads.
    The same options can now also be passed to
  5. @klacke
  6. @vinoski

    rewrite multipart/form-data POST handling

    vinoski committed with
    Issue 38 (klacke#38) states that
    POSTing large files crashes Yaws due to out-of-memory (OOM). I found
    that POSTing just a half meg file will drive Yaws to OOM on my 3 GB
    Macbook Pro.
    Rewrite the multipart/form-data handling (which is almost 10 years old
    at this point). Avoid converting the data to lists for processing, and
    avoid processing the data byte-by-byte. Use Boyer-Moore searching to
    find data boundaries, and use erlang:decode_packet to handle part
    Unfortunately binaries are still converted to lists after all
    processing is completed. This is required for backward compatibility,
    but it means a lot of memory still gets used to handle large file
    uploads, even though it's not as much memory as was previously
  7. @vinoski
  8. @vinoski
  9. Adding mime type for WOFF font files.

    Torbjorn Tornkvist committed with
  10. @vinoski

    add configurable access logging

    vinoski committed with
    Add the global logger_mod config variable to allow for customized
    access logging. Document logger_mod in yaws.conf.5 and yaws.tex.
  11. @vinoski
Commits on Mar 25, 2011
  1. Got digest auth working in a rudimentary way. It's not properly integ…

    …rated with Yaws yet, but it works.
Commits on Mar 19, 2011
  1. @vinoski

    fix yaws_server dialyzer issues

    vinoski committed
    In yaws_server the old function ut_open used to return either {bin,
    Bin} or an open file handle depending on how it was called. A number
    of other areas of the yaws_server code also handled either a file
    handle or {bin, Bin}. The ut_open function was changed in June 2002 to
    deal only with binaries, and dialyzer correctly pointed out that a
    number of areas of the code were obsolete as a result. Change
    yaws_server to get rid of ut_read and ut_close, then rename ut_open to
    ut_read and have it just return a plain binary. Remove all vestiges of
    code relying on the old behavior related to open file handles.
    This clears up all known dialyzer issues in yaws_server.
Commits on Mar 6, 2011
  1. @klacke


    klacke committed
Commits on Mar 5, 2011
  1. @klacke

    Some dialyzer fixes - no real bugs, just enhancements, removed the de…

    klacke committed
    …precated feature of fdsrv, and fixed some bugs recently introduced by Tobbe and yaws_session_server
Commits on Mar 4, 2011
  1. @klacke
  2. @klacke

    compiler warning

    klacke committed
  3. Adding access functions for various Yaws records.

    Torbjorn Tornkvist committed
    By adding these access functions for extracting data out from
    some of the Yaws records (e.g the #arg{} record, it is possible
    for other code to avoid having a dependency to any Yaws .hrl files.
    For example: SimpleBridge can now implement its wrappers without
    having to include yaws_api.hrl.
  4. Figuring out proper yaws_session_server backend.

    Torbjorn Tornkvist committed
    This fixes the problem with getting hold of the yaws_session_server
    backend when running in embedded mode. In this mode, no #gconf{}
    record may be available when the yaws_session_server want to figure
    out what backend to use. The fix stores the 'pending' configuration
    as a yaws appplication environment variable 'embedded_conf', which
    makes it possible for the yaws_session_server to get hold of the
    backend when starting up. If still no #gconf{} can be obtained,
    we will fallback to the default yaws_session_server backend.
  5. Fixing up the start_embedded code.

    Torbjorn Tornkvist committed
    Add an explicit check for successfully starting Yaws.
    Adding proper setup of authdirs in start_embedded.
Commits on Mar 3, 2011
  1. @klacke


    klacke committed
  2. @klacke

    indendation cleanup

    klacke committed
  3. @klacke
  4. @vinoski

    avoid keeping our own copy of ibrowse

    vinoski committed
    Remove our copy of ibrowse in our test directory from git
    control. Instead, download ibrowse master from github if we don't have
    a fresh copy. Track master HEAD to make sure we have the latest.
    Change test/Makefile to fetch ibrowse if needed as part of building
    the "all" target.
    Add test/ibrowse to .gitignore.
  5. @vinoski
  6. @vinoski

    remove support for SOAP DIME attachments

    vinoski committed
    Remove DIME support. We're cleaning up dialyzer errors in Yaws and the
    DIME code had some problems, so we decided to drop it rather than try
    to fix it since we don't believe anyone's using it. Microsoft has
    dropped support for DIME anyway, recommending MTOM instead.
Commits on Mar 2, 2011
  1. @vinoski

    do not use ERL_DRV_USE when de-selecting sendfile socket

    vinoski committed
    The sendfile driver does not own the HTTP sockets to which it sends
    data, and so it never closes them. The previous commit erroneously set
    ERL_DRV_USE on the driver_select(..., 0) call, which causes erts to
    justifiably complain about the driver not implementing the stop_select
    call. Remove ERL_DRV_USE for this case. Thanks to Tuncer Ayaz.
  2. @vinoski

    fix EINTR handling in sendfile driver

    vinoski committed
    Tuncer Ayaz pointed out that OS X sendfile will return bytes sent for
    the case when EINTR occurs. Make sendfile driver handle this case by
    treating EINTR the same as EAGAIN for all supported platforms.
    Also update driver to use ERL_DRV_* flags in driver_select calls if
    they're defined, rather than the old DO_* flags. This is considered
    correct practice since R13B.
  3. @vinoski

    add test target to top-level Makefile

    vinoski committed
    Add test target to top-level Makefile to allow tests to be built and
    run from that level.
    Also fix the start target in test/support/ to only try to
    start a yaws instance if the current working directory contains a
    yaws.conf file. The lack of this check was preventing half the tests
    from running under "make test".
  4. @vinoski
Commits on Mar 1, 2011
  1. @vinoski

    comment out unused ssl functions

    vinoski committed
    Comment out the ssl_fail_if_no_peer_cert functions to eliminate
    warnings about them being unused.
  2. @vinoski

    fix more dialyzer warnings

    vinoski committed
  3. @klacke
Commits on Feb 28, 2011
  1. @vinoski

    yaws_cgi dialyzer cleanup (thanks to Kostis Sagonas)

    vinoski committed
    Clean up dialyzer warnings. Make sure fcgi_receive_binary return value
    used consistently everywhere. Comment out code used for
    as-yet-unsupported FCGI features to avoid dialyzer warnings.
  2. @klacke
Something went wrong with that request. Please try again.