aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2014-05-23Ensure watchdog dies with transport if DPA was sentAnders Svensson
A DPR/DPA exchange should always cause the watchdog process in question to die with the transport, so that a subsequent connection with the same peer doesn't result in a 3 x DWR/DWA exchange. Commit 5903d6db saw to this for the sending of DPR but neglected the corresponding problem for DPA. In the case of sending DPR (the aforementioned commit), note that there's no distinction between receiving DPA as expected and not: the watchdog dies with the transport regardless. diameter_watchdog must be loaded first at upgrade.
2014-05-20Simplify sending of 'close' to watchdogAnders Svensson
There's no need to send the message immediately if there's no transport configuration since that in itself means the service process will tell the watchdogs to die.
2014-05-20Fix watchdog table leakAnders Svensson
Commit ef5fddcb (diameter-1.4.1, R16B) caused the leak in the case of an accepting watchdog with restrict_connections = false. It (correctly) ensured the state remained at INITIAL but a subsequent 'close' message to terminate the process was ignored since the state was not DOWN. In fact, no 'close' was sent since there was no state transition or previous connection: the former triggers the message from diameter_service, the latter from diameter_watchdog. The message is now sent to self() from the watchdog itself. Send 'close' in the same way when multiple connections to the same peer are allowed, to avoid waiting for a watchdog timer expiry for the process to terminate in this case.
2013-12-09Prepare releaseOTP_R16B03Erlang/OTP
2013-12-09Merge branch 'siri/test-bugfix-upgrade-emulator' into maintMagnus Lidén
* siri/test-bugfix-upgrade-emulator: [sasl] Test bugfix in branch 'schlagert/fix_emulator_upgrades'
2013-12-09[sasl] Test bugfix in branch 'schlagert/fix_emulator_upgrades'Siri Hansen
OTP-11529
2013-12-09Update system readme for R16B03Magnus Lidén
2013-12-09Update preloaded modulesMagnus Lidén
2013-12-06Update primary bootstrap app- and appup filesMagnus Lidén
2013-12-06Update primary bootstrapMagnus Lidén
2013-12-05Merge branch 'schlagert/fix_emulator_upgrades' into maintRaimo Niskanen
* schlagert/fix_emulator_upgrades: Fix boot file generation for intermediate releases.
2013-12-05Merge branch 'hans/inets/ftpc_test_fail' into maintHans Nilsson
* hans/inets/ftpc_test_fail: inets: Restore ftp test files for the inets_{,sup_}SUITE to not fail
2013-12-05inets: Restore ftp test files for the inets_{,sup_}SUITE to not failHans Nilsson
2013-12-05Merge branch 'ia/inets/cuddle-with-tests' into maintIngela Anderton Andin
* ia/inets/cuddle-with-tests: inets: Add crypto start check to ssl test cases
2013-12-04Merge branch 'peppe/common_test/r16b03_docs_updated' into maintPeter Andersson
* peppe/common_test/r16b03_docs_updated: Update event handling documentation OTP-11524
2013-12-04Update event handling documentationPeter Andersson
2013-12-04Merge branch 'peppe/common_test/r16b03_docs' into maintPeter Andersson
* peppe/common_test/r16b03_docs: Update documentation OTP-10631 OTP-11305 OTP-11523 OTP-11524
2013-12-04Merge branch 'anders/diameter/doc/OTP-11519' into maintAnders Svensson
* anders/diameter/doc/OTP-11519: Assorted doc fixes/tweaks
2013-12-03Update documentationPeter Andersson
2013-12-03Assorted doc fixes/tweaksAnders Svensson
2013-12-03Merge branch 'hans/ssh/cli_delays' into maintHans Nilsson
* hans/ssh/cli_delays: ssh: Fix long cli delays. (Part of OTP-11339, OTP-10953)
2013-12-03Merge branch 'hans/ftp/dialyzer_warning' into maintHans Nilsson
* hans/ftp/dialyzer_warning: ftp: fix sockname dialyzer warning including ftp:sockname/1 bug
2013-12-03ftp: fix sockname dialyzer warning including ftp:sockname/1 bugHans Nilsson
2013-12-03ssh: Fix long cli delays. (Part of OTP-11339, OTP-10953)Hans Nilsson
A step in fixing the tickets.
2013-12-03Merge branch 'sverk/crypto-no_answer_from_tc_supervisor' into maintSverker Eriksson
* sverk/crypto-no_answer_from_tc_supervisor: crypto: Add more lazy_eval to avoid no_answer_from_tc_supervisor
2013-12-03Fix boot file generation for intermediate releases.Tobias Schlager
A previous refactoring messed up the paths used in the start.boot file used in intermediate releases generated for emulator upgrades.
2013-12-03Merge branch 'egil/fix-darwin-64-configure-default/OTP-11521' into maintBjörn-Egil Dahlberg
* egil/fix-darwin-64-configure-default/OTP-11521: erts: Let cc determine default wordsize for darwin build
2013-12-03Merge branch 'peppe/common_test/hook_skip_failure' into maintPeter Andersson
* peppe/common_test/hook_skip_failure: Fix CT hook pre_end_per_group causing crash when returning {skip,Reason} OTP-11409
2013-12-03inets: Add crypto start check to ssl test casesIngela Anderton Andin
2013-12-03Merge branch 'sverk/test-cuddle' into maintSverker Eriksson
* sverk/test-cuddle: erts: Reduce wasted execution time for match_spec_SUITE:otp_9422
2013-12-03Merge branch 'rickard/alloc-info/OTP-11520' into maintRickard Green
* rickard/alloc-info/OTP-11520: Fix observer retrieval of alloc info
2013-12-03Fix observer retrieval of alloc infoRickard Green
This commit only bump the runtime_tools version. The actual fix is in commit 6cd261deb5fec413eb196b620a4618cfa0781458 (merged to maint branch), but should have been part of this commit.
2013-12-02erts: Reduce wasted execution time for match_spec_SUITE:otp_9422Sverker Eriksson
2013-12-02Merge branch 'rickard/supercarrier-fix/OTP-11149' into maintRickard Green
* rickard/supercarrier-fix/OTP-11149: Documentation fix
2013-12-02Documentation fixRickard Green
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-02Merge branch 'nox/eunit-make-fix' into maintHenrik Nord
* nox/eunit-make-fix: eunit: Fix silent make rule OTP-11516
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-02crypto: Add more lazy_eval to avoid no_answer_from_tc_supervisorSverker Eriksson
Amendment to f1ebf482e1460d6146d55aa6cab00ab3e11f1741
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-02Compile in_heapfrag() only in debug modeAnthony Ramine
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) ^