Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Commits on Jun 1, 2011
  1. Steve Vinoski

    fully qualify call to erlang:max

    vinoski authored committed
  2. Steve Vinoski

    update mime.types from recent Apache web server sources

    vinoski authored committed
    Also eliminate trailing whitespace in the file.
  3. Steve Vinoski

    remove leftover debug code in yaws_api.erl

    vinoski authored committed
  4. Steve Vinoski

    add binary option to multipart/form-data parsing

    vinoski authored committed
    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. Claes Wikstrom

    Removed the contribs stuff from the front webpage, it was lame and in…

    klacke authored committed
  6. Steve Vinoski

    rewrite multipart/form-data POST handling

    vinoski authored committed
    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. Steve Vinoski

    add applications/wiki/scripts files to .gitignore

    vinoski authored committed
  8. Steve Vinoski

    no code changes, just cleanup trailing whitespace

    vinoski authored committed
  9. Adding mime type for WOFF font files.

    Torbjorn Tornkvist authored committed
  10. Steve Vinoski

    add configurable access logging

    vinoski authored committed
    Add the global logger_mod config variable to allow for customized
    access logging. Document logger_mod in yaws.conf.5 and yaws.tex.
  11. Steve 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. Steve Vinoski

    fix yaws_server dialyzer issues

    vinoski authored
    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. Claes Wikstrom


    klacke authored
Commits on Mar 5, 2011
  1. Claes Wikstrom

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

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

    compiler warning

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

    Torbjorn Tornkvist authored
    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 authored
    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 authored
    Add an explicit check for successfully starting Yaws.
    Adding proper setup of authdirs in start_embedded.
Commits on Mar 3, 2011
  1. Claes Wikstrom


    klacke authored
  2. Claes Wikstrom

    indendation cleanup

    klacke authored
  3. Claes Wikstrom
  4. Steve Vinoski

    avoid keeping our own copy of ibrowse

    vinoski authored
    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. Steve Vinoski
  6. Steve Vinoski

    remove support for SOAP DIME attachments

    vinoski authored
    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. Steve Vinoski

    do not use ERL_DRV_USE when de-selecting sendfile socket

    vinoski authored
    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. Steve Vinoski

    fix EINTR handling in sendfile driver

    vinoski authored
    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. Steve Vinoski

    add test target to top-level Makefile

    vinoski authored
    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. Steve Vinoski
Commits on Mar 1, 2011
  1. Steve Vinoski

    comment out unused ssl functions

    vinoski authored
    Comment out the ssl_fail_if_no_peer_cert functions to eliminate
    warnings about them being unused.
  2. Steve Vinoski

    fix more dialyzer warnings

    vinoski authored
  3. Claes Wikstrom
Commits on Feb 28, 2011
  1. Steve Vinoski

    yaws_cgi dialyzer cleanup (thanks to Kostis Sagonas)

    vinoski authored
    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. Claes Wikstrom
Something went wrong with that request. Please try again.