aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2013-12-02Merge branch 'nox/crypto-uninitialized-vars' into maintHenrik Nord
* nox/crypto-uninitialized-vars: Fix some uninitialized pointers in crypto OTP-11510
2013-12-02Merge branch 'nox/fix-clang-warnings' into maintHenrik Nord
* nox/fix-clang-warnings: Silence warnings about socklen_t pointers sign in erl_memory Compile in_heapfrag() only in debug mode Silence two warnings about tests being always true Conditionally compile my_gethostbyname_r and my_gethostbyaddr_r Silence a mismatching type pointer warning in ei_resolve Silence warnings about different buffer types in erl_memory erts: Remove unused file winsock_func.h Silence warnings about unused return values in ic Silence a warning in erl_poll about an empty loop body Fix erts_check_off_heap2 assertion Properly mark erl_assert_error as non-returning Remove uninitialized use of new_crr in erl_alloc_util OTP-11517
2013-12-02Merge branch 'nox/diameter-make-fixes' into maintHenrik Nord
* nox/diameter-make-fixes: diameter: Fix silent make rule OTP-11514
2013-12-02Merge branch 'nox/wx-make-fixes' into maintHenrik Nord
* nox/wx-make-fixes: wx: Fix silent make rules OTP-11515
2013-12-02diameter: Fix silent make ruleAnthony Ramine
2013-12-02eunit: Fix silent make ruleAnthony Ramine
2013-12-02wx: Fix silent make rulesAnthony Ramine
2013-12-02Silence warnings about socklen_t pointers sign in erl_memoryAnthony Ramine
erl_memory.c:947:7: warning: passing 'int *' to parameter of type 'socklen_t *' (aka 'unsigned int *') converts between pointers to integer types with different sign [-Wpointer-sign] &saddr_size) != 0) ^~~~~~~~~~~ /usr/include/sys/socket.h:616:74: note: passing argument to parameter here int getsockname(int, struct sockaddr * __restrict, socklen_t * __restrict) ^ erl_memory.c:2613:57: warning: passing 'int *' to parameter of type 'socklen_t *' (aka 'unsigned int *') converts between pointers to integer types with different sign [-Wpointer-sign] sock = accept(lsock, (struct sockaddr *) &oth_addr, &oth_addr_len); ^~~~~~~~~~~~~ /usr/include/sys/socket.h:610:69: note: passing argument to parameter here int accept(int, struct sockaddr * __restrict, socklen_t * __restrict) ^
2013-12-02Silence two warnings about tests being always trueAnthony Ramine
encode/encode_ulonglong.c:55:25: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare] if ((p < 256) && (p >= 0)) { ~ ^ ~ legacy/erl_marshal.c:293:24: warning: comparison of unsigned expression >= 0 is always true [-Wtautological-compare] if ((ul < 256) && (ul >= 0)) { ~~ ^ ~
2013-12-02Conditionally compile my_gethostbyname_r and my_gethostbyaddr_rAnthony Ramine
These are not needed when not on VXWORKS or without _REENTRANT. connect/ei_resolve.c:302:24: warning: unused function 'my_gethostbyname_r' [-Wunused-function] static struct hostent *my_gethostbyname_r(const char *name, ^ connect/ei_resolve.c:360:24: warning: unused function 'my_gethostbyaddr_r' [-Wunused-function] static struct hostent *my_gethostbyaddr_r(const char *addr, ^
2013-12-02Silence a mismatching type pointer warning in ei_resolveAnthony Ramine
Why we are assigning a pointer to pointer to char to a pointer to char baffles me. The warning is: connect/ei_resolve.c:229:11: warning: incompatible pointer types assigning to 'char *' from 'char **'; dereference with * [-Wincompatible-pointer-types] *pptr = src_aliases; ^ ~~~~~~~~~~~ *
2013-12-02Silence warnings about different buffer types in erl_memoryAnthony Ramine
erl_memory.c:861:19: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, "%*" USGND_INT_MAX_FSTR " ", fw, mi->size); ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:863:16: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:869:16: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, "%*" USGND_INT_MAX_FSTR " ", fw, mi->no); ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:871:20: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:878:16: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:900:19: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, "%*" USGND_INT_MAX_FSTR " ", fw, mi->max_ever_size); ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:902:16: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, "%*s %*s ", fw, "", fw, ""); ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:904:16: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, "%*" USGND_INT_MAX_FSTR " ", fw, mi->max_ever_no); ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:906:20: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, "%*s %*s ", fw, "", fw, ""); ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:909:16: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] *p += sprintf(*p, "%*s %*s %*s ", fw, "", fw, "", fw, ""); ^~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:986:25: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] area.size = sprintf(area.ptr, format, carg); ^~~~~~~~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1103:25: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] area.size = sprintf(area.ptr, ^~~~~~~~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1109:23: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] area.size += sprintf(area.ptr + area.size, ^~~~~~~~~~~~~~~~~~~~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1120:26: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] area.size += sprintf(area.ptr + area.size, ^~~~~~~~~~~~~~~~~~~~ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1190:18: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] p += sprintf(p, "> %-*s", EM_TIME_FIELD_WIDTH - 2, "Maximum:"); ^ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1223:18: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] p += sprintf(p, "\n"); ^ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1227:15: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] p += sprintf(p, "%s", stop_str); ^ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1230:15: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] p += sprintf(p, exit_str, state->info.exit_status); ^ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1236:18: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] p += sprintf(p, format, tsz, bw); ^ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1286:18: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] p += sprintf(p, "%*" USGND_INT_32_FSTR " ", EM_TIME_FIELD_WIDTH - 1, secs); ^ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:1311:18: warning: passing 'usgnd_int_8 *' (aka 'unsigned char *') to parameter of type 'char *' converts between pointers to integer types with different sign [-Wpointer-sign] p += sprintf(p, "\n"); ^ /usr/include/secure/_stdio.h:49:28: note: expanded from macro 'sprintf' __builtin___sprintf_chk (str, 0, __darwin_obsz(str), __VA_ARGS__) ^ erl_memory.c:2231:32: warning: passing 'char *' to parameter of type 'usgnd_int_8 *' (aka 'unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign] size = write_header(state, state->output.header, 1); ^~~~~~~~~~~~~~~~~~~~ erl_memory.c:736:44: note: passing argument to parameter 'ptr' here write_header(em_state *state, usgnd_int_8 *ptr, int trunc) ^
2013-12-02Silence warnings about unused return values in icAnthony Ramine
The warnings are: oe_ei_encode_string.c:26:3: warning: expression result unused [-Wunused-value] (int) ei_encode_string(0,&size,p); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~ oe_ei_encode_port.c:26:3: warning: expression result unused [-Wunused-value] (int) ei_encode_port(NULL, &size, p); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ oe_ei_encode_atom.c:26:3: warning: expression result unused [-Wunused-value] (int) ei_encode_atom(0,&size,p); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~ oe_ei_encode_pid.c:26::3: warning: expression result unused [-Wunused-value] (int) ei_encode_pid(NULL, &size, p); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ oe_ei_encode_ref.c:26:3: warning: expression result unused [-Wunused-value] (int) ei_encode_ref(NULL, &size, p); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ oe_ei_encode_term.c:26:3: warning: expression result unused [-Wunused-value] (int) ei_encode_term(NULL, &size, t); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2013-12-02Merge branch 'bjorn/asn1/fix-integer-constraint/OTP-11504' into maintBjörn Gustavsson
* bjorn/asn1/fix-integer-constraint/OTP-11504: PER/UPER: Handle a range in the extension part of the constraint
2013-12-02Merge branch 'ia/ssl/dtls-refactor-continue/OTP-11292' into maintIngela Anderton Andin
* ia/ssl/dtls-refactor-continue/OTP-11292: ssl: Trap exits ssl: Refactor connetion handling ssl: API and supervisor ssl: Dialyzer fixes ssl: Test case enhancement ssl: Refactor API ssl, public_key: Dialyzer fixes ssl: Refactor premaster secret handling ssl: Refactor connection and handshake handling ssl: Refactor handshake and record handling
2013-12-02Merge branch 'dgud/wx/fix-wx-init-macosx/OTP-11393' into maintDan Gudmundsson
* dgud/wx/fix-wx-init-macosx/OTP-11393: wx: Fix initialization wx: Fix compiler options for xcode 5.0 wx: Update documentation links to wxWidgets wx: wxListBox::Set crashes on wxWidgets 3.0 with NULL argument wx: Fix crash in wxe_server cleanup wx: Fix looping debug printout wx: Fix compilation on old macs wx: Fix compiler warnings wx: Fix cleanup of event handlers wx: Enable configure flags --with-wxdir --with-wx-prefix on windows wx: Fix initializations on mac osx
2013-12-02Merge branch 'dgud/mnesia/subscr-dirty_update_counter/OTP-11485' into maintDan Gudmundsson
* dgud/mnesia/subscr-dirty_update_counter/OTP-11485: mnesia: Fix dirty_update bug when subscriber exists
2013-12-02ssl: Trap exitsIngela Anderton Andin
2013-12-02ssl: Refactor connetion handlingIngela Anderton Andin
2013-12-02ssl: API and supervisorIngela Anderton Andin
2013-12-02ssl: Dialyzer fixesIngela Anderton Andin
2013-12-02ssl: Test case enhancementIngela Anderton Andin
Make sure that test cases does not fail due to timing circumstances, use selective receive even if it means we can not use test library functions in some cases. TCP does not have delivery guarantee to application layer, so sometimes a error message {error, Msg} or {error, closed} can be acceptable.
2013-12-02ssl: Refactor APIIngela Anderton Andin
New design : ssl - Main tls - Reflect tls specific semantics dtls - Reflect dtls specific semantics
2013-12-02ssl, public_key: Dialyzer fixesIngela Anderton Andin
2013-12-02Merge branch 'anders/diameter/R16B03_release/OTP-11499' into maintAnders Svensson
* anders/diameter/R16B03_release/OTP-11499: vsn -> 1.5 Update appup for OTP-11168 Update appup for OTP-11361 Add makefile to build example dictionaries Add recent Diameter-related RFCs Generate diameterc.1, not diameter_compile.1 Fix documentation typos Fix appup blunder
2013-12-02ssl: Refactor premaster secret handlingIngela Anderton Andin
2013-12-02ssl: Refactor connection and handshake handlingIngela Anderton Andin
2013-12-02ssl: Refactor handshake and record handlingIngela Anderton Andin
2013-12-02Merge branch 'anders/diameter/timer_confusion/OTP-11168' into maintAnders Svensson
* anders/diameter/timer_confusion/OTP-11168: Rename reconnect_timer -> connect_timer
2013-12-02Merge branch 'anders/diameter/dictionary_make/OTP-11348' into maintAnders Svensson
* anders/diameter/dictionary_make/OTP-11348: Return compilable forms instead of beam Document diameter_make:format/1 and diameter_make:flatten/1 Fix diameter_make:flatten/1 Modify type that currently causes dialyzer woe Simplify and extend diameter_make interface Add diameter_make:flatten/1, remove reformat/1 Adapt compiler suite to diameter_make Remove dead code from codec suite Extend diameter_make:codec/2 Don't pollute process dictionary in diameter_codegen:from_dict/4 Make forms a separate output from diameter_codegen Remove last remnants of "spec" Write as last step in code generation Change extensions for debug output: .spec/forms -> .D/F
2013-12-01Return compilable forms instead of beamAnders Svensson
That is, preprocessed forms that can be passed to compile:forms/1,2.
2013-12-01Document diameter_make:format/1 and diameter_make:flatten/1Anders Svensson
2013-12-01Fix diameter_make:flatten/1Anders Svensson
To set @avp_vendor_id, @codecs and @custom_types as required for imported avps.
2013-12-01Modify type that currently causes dialyzer woeAnders Svensson
The intention was that the type would represent an improper list whose head was an integer and whose tail was an orddict but that doesn't seem to be dialyzer's interpretation anyway.
2013-12-01Simplify and extend diameter_make interfaceAnders Svensson
In particular, make codec/2 flexible as to what's generated, the formats (erl, hrl, parse, forms and beam) being passed in the options list and defaulting to [erl, hrl]. The 'parse' format is the internal format to which dictionaries are parsed, which can be manipulated by flatten/1 before being passed back to codec/2 or format/1. Remove the (undocumented) dict/1,2 since codec/2 now subsumes it with the 'parse' option.
2013-12-01Add diameter_make:flatten/1, remove reformat/1Anders Svensson
The latter is now unnecessary given that codec/2 can return a parse and format/1 can return the dictionary format.
2013-11-30vsn -> 1.5Anders Svensson
For R16B03.
2013-11-30Update appup for OTP-11168Anders Svensson
2013-11-30Update appup for OTP-11361Anders Svensson
2013-11-30Add makefile to build example dictionariesAnders Svensson
2013-11-30Add recent Diameter-related RFCsAnders Svensson
2013-11-30Generate diameterc.1, not diameter_compile.1Anders Svensson
2013-11-29Rename reconnect_timer -> connect_timerAnders Svensson
The former was misleading since the timer only applies to initial connection attempts, reconnection attempts being governed by watchdog_timer. The name is a historic remnant from a (dark, pre-OTP) time in which RFC 3539 was followed less slavishly than it is now, and the timer actually did apply to reconnection attempts. Note that connect_timer corresponds to RFC 6733 Tc, while watchdog_timer corresponds to RFC 3539 TwInit. The latter RFC makes clear that TwInit should apply to reconnection attempts. It's less clear if only RFC 6733 is read. Note also that reconnect_timer is still accepted for backwards compatibility. It would be possible to add an option to make reconnect_timer behave strictly as the name suggests (ie. ignore RFC 3539 and interpret RFC 6733 at face value; something that has some value for testing at least) but no such option is implemented in this commit.
2013-11-29Fix documentation typosAnders Svensson
2013-11-29Merge branch 'anders/diameter/capx_dictionary/OTP-11361' into maintAnders Svensson
* anders/diameter/capx_dictionary/OTP-11361: Don't hardcode diameter_base @prefix on common dictionary
2013-11-29mnesia: Fix dirty_update bug when subscriber existsDan Gudmundsson
dirty_update_counter returned the wrong value when a subscriber existed and no events was sent. Thanks Anton Ryabkov.
2013-11-29Merge branch 'richcarl/fix-sasl-handler-docs' into maintHenrik Nord
* richcarl/fix-sasl-handler-docs: Fix confusing documentation about error handlers in SASL OTP-11507
2013-11-29Merge branch 'nox/igor-funs' into maintHenrik Nord
* nox/igor-funs: Remove a useless function clause in erl_syntax_lib Fix transformation of implicit funs in igor Fix reverting of implicit funs OTP-11506
2013-11-29wx: Fix initializationDan Gudmundsson
The first window didn't get activated when using old method and new wxWidgets-3.0.1.
2013-11-29Merge branch 'bsmr-erlang/fix_wx_typos' into maintHenrik Nord
* bsmr-erlang/fix_wx_typos: fix documentation OTP-11505