aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2011-12-07Merge branch 'sverk/packet_size-http/OTP-9389'Sverker Eriksson
* sverk/packet_size-http/OTP-9389: erts: Remove truncation of http packet parsing and return error instead honor packet_size for http packet parsing to fix OTP-9389
2011-12-07Merge branch 'bjorn/erts/code-loading/OTP-9720'Björn Gustavsson
* bjorn/erts/code-loading/OTP-9720: BEAM loader: Fix bug that allowed loading of more than two versions Add code_SUITE:versions/1
2011-12-07BEAM loader: Fix bug that allowed loading of more than two versionsBjörn Gustavsson
In commit b67d3e5447f4b2bca3ed92f3db84adb3f79f9b16 (which cleaned up handling of error reasons), the test of the return value from beam_make_current_old() in insert_new_code() was not updated, which meant that it never was true and any number of versions of code could be loaded for a module.
2011-12-07Add code_SUITE:versions/1Björn Gustavsson
We did not have test case that ensures that the loader refuses to load a module if there already exists old code for the module.
2011-12-06Merge branch 'rickard/test-fixes-r15b'Rickard Green
* rickard/test-fixes-r15b: Unlink test-proc instead of ensuring that it has died before stopping node
2011-12-06Unlink test-proc instead of ensuring that it has died before stopping nodeRickard Green
Unlink the test-proc instead of monitoring it and waiting for it to terminate before stopping the node. This since an unlink is faster, simpler and in this case more stable.
2011-12-06Merge branch 'rickard/test-fixes-r15b'Rickard Green
* rickard/test-fixes-r15b: Ensure test-proc is dead before stopping node
2011-12-06Ensure test-proc is dead before stopping nodeRickard Green
2011-12-06Merge branch 'rickard/test-fixes-r15b'Rickard Green
* rickard/test-fixes-r15b: Skip detached test-case on MacOSX Leopard
2011-12-06Merge branch 'ta/docs'Henrik Nord
* ta/docs: Fix misspelling of chosen Fix typos in erl(1) Fix misspelling of 'turn off' Fix typo in reltool(3) Fix typo in gen_sctp(3) Fix typo in mod_responsecontrol.erl Fix typo in erts_alloc(3) Fix typos in ssl_cipher.erl Fix typos in expressions.xml file: correct make_link/2 and make_symlink/2 docs Fix typo in test_server(3) Fix typos in io_protocol.xml Fix typo in erlang(3) Fix typos in tar_SUITE Fix typos in erts/preloaded/src OTP-9787
2011-12-06Skip detached test-case on MacOSX LeopardRickard Green
2011-12-06Merge branch 'rickard/test-fixes-r15b'Rickard Green
* rickard/test-fixes-r15b: Give slow machines more time to compute result Allow more CPU time in waiting test-cases Skip thread_mseg_alloc_cache_clean() when no mseg_alloc
2011-12-06Give slow machines more time to compute resultRickard Green
2011-12-06Allow more CPU time in waiting test-casesRickard Green
2011-12-06Merge branch 'sverk/big-float-cmp-bug'Sverker Eriksson
* sverk/big-float-cmp-bug: erts: Fix bug in large big/float compare
2011-12-06Merge branch 'sverk/ppc-hibernate-fix'Sverker Eriksson
* sverk/ppc-hibernate-fix: erts: Fix hipe bug in hibernate on PowerPC
2011-12-06erts: Remove truncation of http packet parsing and return error insteadSverker Eriksson
This is a slight modification of previous commit by Steve Vinoski For backward compatibility of old users of decode_packet, I think it's enough to return error instead of keeping the old line truncation behaviour.
2011-12-05Skip thread_mseg_alloc_cache_clean() when no mseg_allocRickard Green
2011-12-05honor packet_size for http packet parsing to fix OTP-9389Steve Vinoski
Allow applications to use a packet_size setting on a socket to control acceptable HTTP header line length. This gives them the ability to accept HTTP headers larger than the default settings allow, but also lets them avoid DOS attacks by accepting header lines only up to whatever length they wish to allow. Without this change, if an HTTP request/response line or header arrives on a socket in http, http_bin, httph, or httph_bin parsing mode, and the request/response line or header is too long to fit into a default inet_drv buffer of 1460 bytes, an unexpected error occurs. These problems were described and discussed on erlang-questions in June 2011 in this thread: http://erlang.org/pipermail/erlang-questions/2011-June/059563.html In the original code, no buffer reallocation occurs to enlarge the buffer, even if packet_size or line_length are set in a way that should allow the HTTP data to be parsed properly. The only available workaround was to collect headers and parse them using erlang:decode_packet, but that approach has drawbacks such as having to collect all HTTP header data before it can be handed to decode_packet for correct parsing, and also requiring each and every Erlang web server developer/maintainer to add the workaround to his or her web server. Change the packet parser to honor the packet_size setting for HTTP parsing. If packet_size is set, and an HTTP request/response or header line exceeds the default 1460 byte TCP buffer limit, return an indication to tcp_remain that it should realloc the buffer to enlarge it to packet_size. Also fix the HTTP parsing code to properly honor line_length by truncating any HTTP request/response or header lines that exceed that setting. For backward compatibility, default behavior is unchanged; if an application wants to be able to accept long HTTP header lines, it must set packet_size to an appropriate value. Buffer reallocation occurs only when needed, so the original default buffer size in the code is still the default. Make the line mode parsing honor packet_size as well, for consistency. Add new regression tests to the emulator decode_packet suite and also to the kernel gen_tcp_misc suite. The documentation for packet_size in inet:setopts/2 is already sufficient. Many thanks to Sverker Eriksson for his guidance on how to best fix this bug and also for reviewing a number of patch attempts prior to this one.
2011-12-05Merge branch 'rickard/generic-thr-queue/OTP-9632'Rickard Green
* rickard/generic-thr-queue/OTP-9632: Fix handle_async_ready_clean()
2011-12-05Fix handle_async_ready_clean()Rickard Green
2011-12-05Fix typos in erl(1)Tuncer Ayaz
2011-12-05Fix typo in erts_alloc(3)Tuncer Ayaz
2011-12-05Fix typo in erlang(3)Tuncer Ayaz
2011-12-05Fix typos in erts/preloaded/srcTuncer Ayaz
2011-12-05Merge branch 'sverk/deprecate-nif-reload'Sverker Eriksson
* sverk/deprecate-nif-reload: erts: Deprecate the NIF reload mechanism OTP-9771
2011-12-05Merge branch 'bjorn/test-cases'Björn Gustavsson
* bjorn/test-cases: lcnt_SUITE: Be kind to slow machines crypto_SUITE: Reinstate what was "lost in translation" fileTransferSUITE: Cope with missing/broken crypto application sensitive_SUITE: Fix spuriously failing recv_trace/1 eprof_SUITE: Cope with fast computers and bad time measurements cover_SUITE: Cope with missing/broken crypto application otp_SUITE: Write log files about undefined functions and so on
2011-12-05erts: Remove duplicate erts_unblock_fpeJovi Zhang
The second function erts_unblock_fpe is not needed in here.
2011-12-05Merge branch 'hb/erts/minor_doc_fix/OTP-9762'Hans Bolinder
* hb/erts/minor_doc_fix/OTP-9762: Minor fix of erts_alloc.xml
2011-12-02erts: Fix bug in large big/float compareSverker Eriksson
Bug caused faulty result (big_SUITE:big_float_1) and an unhandled floating point exception.
2011-12-02sensitive_SUITE: Fix spuriously failing recv_trace/1Björn Gustavsson
Only three messages are guaranteed to be in message queue of the tracer process. The second {trace_delivered,_,_} message may or may not be there.
2011-12-02otp_SUITE: Write log files about undefined functions and so onBjörn Gustavsson
Write some extra log files for easy access by other tools.
2011-12-02Fix time typesRickard Green
2011-12-02Update static cachePatrik Nyblom
IPV6 was disabled in cache when it should actually be supported Cache updated to disable all sctp for configure speed
2011-12-02Back to not using 32bit time_tPatrik Nyblom
2011-12-02Remove ancient WaitForInputIdle workaroundPatrik Nyblom
2011-12-02Iron out bugs in Win64 found in daily buildsPatrik Nyblom
Almost all uses of the 'long' datatype is removed from VM and tests Emulator test now runs w/o drivers crashing Nasty abs bug fixed in VM as well as type errors in allocator debug functions Still one allocator test that fails, domain knowledge is needed to fix that. Fix type inconsistency in beam_load causing crashes
2011-12-02Make Win64 build work both under MSYS and CygwinPatrik Nyblom
2011-12-02Make whole of OTP build and release on Win64Patrik Nyblom
Removed symbolic links from repository.
2011-12-02Get cerl and distribution working in Win64Patrik Nyblom
Can still not setup -a, but cerl works.
2011-12-02Get working prompt in Win64 using bootstrap codePatrik Nyblom
2011-12-02Build Win64 Erlang emulator using MSYSunknown
Still does not run, just compiles.
2011-12-02Add static win64 cacheunknown
2011-12-02Update preloaded modulesLukas Larsson
2011-12-02Merge branch 'ta/sendfile/OTP-9240'Lukas Larsson
* ta/sendfile/OTP-9240: (31 commits) Add sendfile server printouts Skip recv/send during tests for fallback platforms Remove header/trailer support Remove windows implementation Expand sendfile documentation Only allow tcp sockets as target for sendfile Move sendfile api to file module Preliminary work on header/trailer Use free_sendfile explicitly for non-async Remove debug printouts Add tests for send/recv/sendfile interactions Remove tests for file_server sendfile sendfile caller now has to be the controlling_process Remove support for file_server, sendfile has to be raw Set chunk size to 3 GB Change type of fd to be ErlDrvEvent Add ifdef's for HAVE_SENDFILE Fix freebsd support for sendfile Change nbytes to 64 bit Implement ignorefd for TCP ...
2011-12-02Minor fix of erts_alloc.xmlHans Bolinder
2011-12-02Mend the non-SMP emulatorBjörn Gustavsson
Commit 8781932b3b8769b6f208ac7c00471122ec7dd055 broke erlang:system_info(system_version) in the non-SMP emulator so that it would typically dump core. "rq:%d" was removed from the format string for erts_printf(), but the corresponding argument in the argument list was not removed, which ultimately caused "kernel-poll:%s" to be passed an integer (typically 0).
2011-12-02Remove header/trailer supportLukas Larsson
Since the API for headers/trailers seem to be very awkward to work with when using non-blocking io the feature is dropped for now. See unix_efile.c for more details.
2011-12-02Remove windows implementationLukas Larsson
2011-12-02Only allow tcp sockets as target for sendfileLukas Larsson