aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel
AgeCommit message (Collapse)Author
2011-09-02Merge branch 'dev' into majorHans Bolinder
* dev: Update documentation and specifications of some of the zlib functions Conflicts: erts/preloaded/ebin/zlib.beam
2011-09-02Update documentation and specifications of some of the zlib functionsHans Bolinder
The functions zlib:deflateSetDictionary/2 and zlib:inflateSetDictionary/2 accept iodata() as Dictionary. The functions zlib:crc32/2,3, zlib:adler32/2,3, zlib:compress/1, zlib:uncompress/1, zlib:zip/1, and zlib:unzip/1 accept iodata() as data.
2011-09-02Merge branch 'dev' into majorHans Bolinder
* dev: Fix a couple of minor bugs with hook priority Update to reflect addition of CTH priority addition Update CTH priority default to be 0 Update to reflect new cth callback api Update the return from init/2 to be {ok, NewState} or {ok,NewState,Priority} instead of NewState. Add priority functionality and tests for ct hooks Update internal hooks state to use a record instead of tuples Improve and correct types and specifications in Kernel and STDLIB
2011-09-02Merge branch 'hb/spec_improvements/OTP-9485' into devHans Bolinder
* hb/spec_improvements/OTP-9485: Improve and correct types and specifications in Kernel and STDLIB
2011-09-01Merge branch 'dev' into majorHenrik Nord
2011-08-31Improve and correct types and specifications in Kernel and STDLIBHans Bolinder
Running Dialyzer on the test suites revealed a few type errors.
2011-08-27Fix type of Packet arg of gen_tcp:send/2 and gen_udp:send/4Filipe David Manana
The type is marked as a binary() or a string() but in practice it can be an iodata(). The test suite was updated to confirm the gen_tcp/2 and gen_udp:send/4 functions accept iodata() (iolists) packets.
2011-08-26Merge branch 'dev' into majorHans Bolinder
* dev: Improve types and specifications of the inet modules
2011-08-26Merge branch 'hb/inet_types_and_specs/OTP-9260' into devHans Bolinder
* hb/inet_types_and_specs/OTP-9260: Improve types and specifications of the inet modules
2011-08-26Merge branch 'dev' into majorBjörn Gustavsson
* dev: code: Optimize purge/1 and soft_purge/1 using check_old_code/1 Add erlang:check_old_code/1 check_process_code/2: Quickly return 'false' if there is no old code
2011-08-26code: Optimize purge/1 and soft_purge/1 using check_old_code/1Björn Gustavsson
While at it, eliminate an unnecessary use of throw/catch in the implementation of soft_purge/1.
2011-08-25Improve types and specifications of the inet modulesHans Bolinder
2011-08-25Merge branch 'bjorn/line-numbers-in-exceptions/OTP-9468' into majorBjörn Gustavsson
* bjorn/line-numbers-in-exceptions/OTP-9468: (51 commits) debugger: By default, only save non-tail-recursive calls debugger: Add line_number_SUITE debugger: Include line numbers in exceptions Update examples in the documentation to include line numbers Update documentation for erlang:raise/3 and erlang:get_stacktrace/0 beam_lib: Retain the "Line" chunk when stripping BEAM files erl: Add +L to suppress loading of line number information compiler: Add no_line_info for suppressing line/1 instructions exception_SUITE: Test line numbers in exceptions common_test: Use line numbers in exceptions common_test tests: Don't do detailed testing of the stack backtrace test_server: Refactor init_per_testcase/3 into two functions Implement process_info(Pid, current_{location,stacktrace}) beam_emu: Factor out saving of stack trace from save_stacktrace() compiler: Don't create filenames starting with "./" ops.tab: Remove line instructions before tail-recursive calls Lookup and include filenames and line numbers in exceptions Fix decrement of continuation pointers Refactor building of the exception stacktrace BEAM loader: Load the line table ...
2011-08-25Merge branch 'dev' into majorHenrik Nord
2011-08-23Fix missing comma in code exampleRaimo Niskanen
Courtesy of William B. Morgan at Bigpoint Inc.
2011-08-16compiler: Don't create filenames starting with "./"Björn Gustavsson
In the location information tables in the run-time system, source filenames that are the same as the module name plus ".erl" extension are not stored explicitly, thus saving memory. To take advantage of that optimization, avoid complicating the names of files in the current working directory; specifically, make sure that "./" is not prepended to the name.
2011-08-16emulator: Add a fourth element in exception stacktracesBjörn Gustavsson
This commit is a preparation for introducing location information (filename/line number) in stacktraces in exceptions. Currently a stack trace looks like: [{Mod1,Function1,Arity1}, . . . {ModN,FunctionN,ArityN}] Add a forth element to each tuple that can be used indication the filename and line number of the source file: [{Mod1,Function1,Arity1,Location1}, . . . {ModN,FunctionN,ArityN,LocationN}] In this commit, the fourth element will just be an empty list, and we will change all code that look at or manipulate stacktraces.
2011-08-08Merge branch 'dev' into majorHenrik Nord
2011-08-08Merge branch 'ms/inet-socket-domain-error' into devHenrik Nord
* ms/inet-socket-domain-error: inet: error if fd does not match socket domain OTP-9455
2011-07-13Merge branch 'dev' into majorSverker Eriksson
* dev: Fix small error in example code of gen_sctp documentation
2011-06-28Fix small error in example code of gen_sctp documentationSverker Eriksson
2011-06-21Merge branch 'dev' into majorPatrik Nyblom
2011-06-20Add more specs and typesHans Bolinder
An incorrect spec, rpc:yield/1, has been fixed.
2011-06-07Merge branch 'dev' into majorBjörn-Egil Dahlberg
2011-06-07Update version numbers for R15A developmentBjörn-Egil Dahlberg
2011-05-31Stop generating some unused clauses for make_dns_rr_opt/1 local to inet_dnsRaimo Niskanen
2011-05-30Update version numbersBjörn-Egil Dahlberg
2011-05-24inet: error if fd does not match socket domainMichael Santos
If an IPv4 fd is opened as an IPv6 socket, unexpected behaviour can occur. For example, if an IPv4 UDP socket is opened and passed into Erlang as an IPv6 socket, the first 3 bytes (corresponding to 1 byte representing the protocol family, 2 bytes set to the port) are stripped from the payload. The cause of the UDP payload truncation happens in inet_drv.c:packet_inet_input when a call to inet_get_address fails silently because the family is set to PF_INET6 but the buffer len is the size of an IPv4 struct sockaddr_in. Prevent this behaviour by checking that the protocol family of the file descriptor matches the family of the requested Erlang socket. {ok, S1} = gen_udp:open(0, [binary, inet]), {ok, FD} = inet:getfd(S1), {ok, Port} = inet:port(S1), {ok, S} = gen_udp:open(Port, [binary, {fd, FD}, inet6]), {ok, C} = gen_udp:open(0, [binary]), Msg = <<1,2,3,4,5>>, gen_udp:send(C, "127.0.0.1", Port, Msg), receive {udp, S, _, _, Msg} -> ok; {udp, S, _, _, NewMsg} -> {error, Msg, NewMsg} end. This test results in: {error,<<1,2,3,4,5>>,<<4,5>>} Thanks to Andrew Tunnell-Jones for finding the bug and the test case!
2011-05-24Prepare releaseOTP_R14B03Erlang/OTP
2011-05-24Modify two opaque typesHans Bolinder
Two opaque types that could cause warnings when running Dialyzer have been modified.
2011-05-20Update copyright yearsBjörn-Egil Dahlberg
2011-05-19Merge branch 'pan/win_testcases_R14B03' into devPatrik Nyblom
* pan/win_testcases_R14B03: Fix bug in make_del_dir testcases Teach (prim_)file_SUITE about directory access on Windows OTP-9325
2011-05-18Fix bug in make_del_dir testcasesPatrik Nyblom
2011-05-17Remove unused variable warning in inet_resBjörn-Egil Dahlberg
2011-05-16OTP-9094: [httpc] Add support for upload body streaming (PUT and POST).Micael Karlberg
Filipe David Manana OTP-9114: [ftp] Added (type) spec for all exported functions. OTP-9123: mod_esi:deliver/2 made to accept binary data. Bernard Duggan OTP-9124: [httpd] Prevent XSS in error pages. Michael Santos OTP-9131: [httpd] Wrong security property names used in documentation. Garrett Smith OTP-9157: [httpd] Improved error messages. Ricardo Catalinas Jim�nez OTP-9158: [httpd] Fix timeout message generated by mod_esi. Bernard Duggan OTP-9202: [httpd] Extended support for file descriptors. Attila Rajmund Nohl OTP-9230: The default ssl kind has now been changed to essl. OTP-9246: [httpc] httpc manager crash because of a handler retry race condition. Merge branch 'bmk/inets/inet56_integration' into dev
2011-05-13Merge branch 'hb/kernel/doc_specs/OTP-9272' into devHans Bolinder
* hb/kernel/doc_specs/OTP-9272: Use Erlang specs and types for documentation
2011-05-12Teach (prim_)file_SUITE about directory access on WindowsPatrik Nyblom
2011-05-11Use Erlang specs and types for documentationHans Bolinder
2011-05-09Types and specifications have been modified and addedHans Bolinder
2011-04-28Merge branch 'ms/file-fix-hang-reading-compressed-files' into devHenrik Nord
* ms/file-fix-hang-reading-compressed-files: file: fix hang reading compressed files OTP-9245
2011-04-28Merge branch 'raimo/inet_res-crash-rest-time-0/OTP-9221' into devRaimo Niskanen
* raimo/inet_res-crash-rest-time-0/OTP-9221: Do not UDP send when there is 0 ms left to wait for reply Check return values from UDP send functions Cleanup timeout handling, fix bug for remaining time =:= 0 Add DNS proxy and first test case for late answer
2011-04-21Do not UDP send when there is 0 ms left to wait for replyRaimo Niskanen
2011-04-21Check return values from UDP send functionsRaimo Niskanen
2011-04-21Cleanup timeout handling, fix bug for remaining time =:= 0Raimo Niskanen
2011-04-21Add DNS proxy and first test case for late answerRaimo Niskanen
2011-04-15Merge branch 'ms/heart-rem-garbage-append' into devHenrik Nord
* ms/heart-rem-garbage-append: heart: remove garbage appended to heart command OTP-9224
2011-04-12Merge branch 'dev' into bmk/inets/inet56_integrationMicael Karlberg
2011-04-08Merge branch 'mk/net-kernel-epmd-return-list' into devHenrik Nord
* mk/net-kernel-epmd-return-list: Fix list returned by net_kernel:epmd_module OTP-9215
2011-04-07file: fix hang reading compressed filesMichael Santos
The gzio driver goes into an infinite loop when reading past the end of a compressed file. Reported-By: Alex Morarash
2011-04-06heart: remove garbage appended to heart commandMichael Santos
heart:get_cmd/0 is documented to return an empty string if the command is cleared. get_cmd/0 returns 2 extra bytes: 1 byte for the trailing null, 1 byte from the op (the op is an unsigned char and 2 bytes are allocated for it in the returned buffer). 1> heart:get_cmd(). {ok,[0,0]} 2> heart:set_cmd("echo hello"). ok 3> heart:get_cmd(). {ok,[101,99,104,111,32,104,101,108,108,111,0,0]} 4> heart:clear_cmd(). ok 5> heart:get_cmd(). {ok,[0,99]}