aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2015-03-04Allow encode of decoded diameter_avp listAnders Svensson
The decode of an incoming request in a non-relay application results in a deep list of diameter_avp records. Encoding such a list resulted in a function_clause error in diameter_codec:pack_avp/1, which expected a flat list. The list is only flat in the relay case, or in the absence of AVPs of type Grouped. This is also related to code that exists but isn't documented. It's documented that a diameter_app(3) handle_request callback can return {relay, Opts} to relay a request received in the relay application. What's not documented is that it can also return {proxy|resend, Opts} in a non-relay application, but this leads to encode failure when there are Grouped AVPs. This shouldn't be interpreted as meaning that proxy|resend are now supported: they aren't. The two extra terms are a historical relic that should probably be removed. Neither are generally usable since, for example, a proxy agent may want to modify a request before resending it. A specific handle_request return is not needed to implement a proxy agent. Even {relay, Opts} isn't strictly necessary.
2015-03-04Add testcases for diameter_avp decodeAnders Svensson
2015-03-04Fix handling of length errors on Grouped AVPsAnders Svensson
The decode of a Grouped AVP ignored the case that extracting component AVPs with diameter_codec:collect_avps/1 returned a tuple, in the case of a truncated AVP header.
2015-02-17Don't discard component diameter_avp list on Grouped AVP decode errorAnders Svensson
The AVPs of an incoming Diameter message diameter_codec:decode/2,3 are decoded into a diameter_packet record in two ways: as a message-specific record in the 'msg' field and as a deep list of diameter_avp records in the 'avps' field. The record decode came first; the diameter_avp decode came later to support the Diameter relay application, but can also be convenient for non-relay applications. The diameter_avp representation can be used with outgoing messages, but what exactly is supported for isn't clearly documented. In the diameter_avp list representation, it's AVPs of type Grouped that lead to nesting: instead of a diameter_avp record, a Grouped AVP is represented by a diameter_avp list whose head is the Grouped AVP itself, and whose tail is the list of component AVPs. The diameter_avp decode was broken in the case of decode errors: the Grouped AVP was represented as a bare diameter_avp, and the component records were lost. The decode now produces the intended list. Note that component AVPs that could not be decoded will have 'undefined' in their data field.
2015-02-17Fix process dictionary manipulation during message decodeAnders Svensson
Decode can span multiple codec modules, so written entries cannot be tagged on ?MODULE.
2014-12-09Prepare releaseErlang/OTP
2014-12-09Merge remote-tracking branch 'upstream/maint' into maintHans Nilsson
2014-12-09ssh: Fix syntax error in .appupHans Nilsson
2014-12-09revert ssh testcaseMarcus Arendt
2014-12-09Merge branch 'dgud/debugger/still-invoked-gs-functions/OTP-12357' into maintDan Gudmundsson
* dgud/debugger/still-invoked-gs-functions/OTP-12357: debugger: Do not use the old removed gs functionality
2014-12-08ssh: Fix .app and .appupHans Nilsson
2014-12-08Merge branch 'rickard/appup-files/OTP-12358' into maintRickard Green
* rickard/appup-files/OTP-12358: Add .appup file
2014-12-08Add .appup fileRickard Green
2014-12-08Merge branch 'rickard/autoconf/OTP-12348' into maintRickard Green
* rickard/autoconf/OTP-12348: Update megaco.appup.src
2014-12-08Update megaco.appup.srcRickard Green
2014-12-08debugger: Do not use the old removed gs functionalityDan Gudmundsson
dbg_ui_trace module was invoked even though the module had been removed.
2014-12-05Revert "ssh: Corrected ret val from ssh_connection:subsystem/4."Marcus Arendt
This reverts commit d086394ebd3595d431835af80709977a6c1c7c89.
2014-12-03Merge branch 'rickard/autoconf/OTP-12348' into maintRickard Green
* rickard/autoconf/OTP-12348: Distribute autoconf helpers
2014-12-03Merge branch 'raimo/netns-opt-gen_udp/OTP-12314' into maintRaimo Niskanen
* raimo/netns-opt-gen_udp/OTP-12314: Text netns option at socket open Fix handling netns option in gen_udp
2014-12-03ssl: Correct appupIngela Anderton Andin
2014-12-02Distribute autoconf helpersRickard Green
Distribute aclocal.m4, install-sh, config.guess, and config.sub to applications at build time instead of having multiple identical copies committed in the repository.
2014-12-02ssh: Add soft upgrade for ptty_allocIngela Anderton Andin
2014-12-02Merge branch 'egil/fix-dialyzer-map-key-coalescing/OTP-12347' into maintBjörn-Egil Dahlberg
* egil/fix-dialyzer-map-key-coalescing/OTP-12347: dialyzer: Test recoalesced map keys compiler: Coalesce map keys in dialyzer mode
2014-12-02Merge branch 'anders/diameter/17.4_release/OTP-12343' into maintAnders Svensson
* anders/diameter/17.4_release/OTP-12343: vsn -> 1.8 Update appup for 17.4
2014-12-02Merge branch 'siri/ct_netconfc/subsystem-timeout/OTP-12334' into maintHenrik Nord
* siri/ct_netconfc/subsystem-timeout/OTP-12334: [ct_netconfc] Handle timeout failure in ssh
2014-12-02Merge branch 'siri/ct_telnet/unstable-tests/OTP-12329' into maintHenrik Nord
* siri/ct_telnet/unstable-tests/OTP-12329: [ct_telnet] Fix test case 'server_speaks' [ct_telnet] Improve debug printouts and logging [ct_telnet] Add timestamp to telnet_server debug printout [ct_telnet] Extend timeout in test from 1 to 2 sek [ct_telnet] Don't send extra newline after password
2014-12-02Merge branch 'hans/ssh/appup' into maintHans Nilsson
* hans/ssh/appup: ssh: Fixes wrong version in appup file
2014-12-02ssh: Fixes wrong version in appup fileHans Nilsson
2014-12-02Merge branch 'tuncer/doc-fixes' into maintMarcus Arendt
* tuncer/doc-fixes: dict(3): fix typo reported by Rabbe Fogelholm Fix minor eprof and fprof doc issues
2014-12-02Merge branch 'ia/inets/prep-for-release' into maintIngela Anderton Andin
* ia/inets/prep-for-release: inets: Prepare for release
2014-12-02Merge branch 'ia/ssl/dialyzer/OTP-12341' into maintIngela Anderton Andin
* ia/ssl/dialyzer/OTP-12341: ssl: Prepare for release ssl: Change code to reflect that state data may be secret
2014-12-02Text netns option at socket openRaimo Niskanen
2014-12-02Merge branch 'raimo/snmp/compiler/allow_refinement_of_opaque/17/OTP-12066' ↵Raimo Niskanen
into maint * raimo/snmp/compiler/allow_refinement_of_opaque/17/OTP-12066: [snmp/compiler] Refinement of type Opaque was not allowed MIB constructs such as "SYNTAX Opaque (SIZE(0..65535))" was previously not allowed, this has now been fixed. See the standard ALARM-MIB for eaxmple.
2014-12-01vsn -> 1.8Anders Svensson
2014-12-01Update appup for 17.4Anders Svensson
OTP-12196 remote request table leak OTP-12233 3xxx result code without E-bit OTP-12281 ignored connect_timer OTP-12308 filter ordering
2014-12-01ssl: Prepare for releaseIngela Anderton Andin
2014-12-01ssl: Change code to reflect that state data may be secretIngela Anderton Andin
2014-12-01inets: Prepare for releaseIngela Anderton Andin
2014-12-01Merge branch 'hans/ssh/appup' into maintHans Nilsson
* hans/ssh/appup: ssh: prepares appup file for release
2014-12-01ssh: prepares appup file for releaseHans Nilsson
2014-12-01dialyzer: Test recoalesced map keysBjörn-Egil Dahlberg
2014-12-01compiler: Coalesce map keys in dialyzer modeBjörn-Egil Dahlberg
This fixes a regression introduced in commit 805f9c89fc01220bc1bb0f27e1b68fd4eca688ba The problem occured with map keys compiled with dialyzer option turned on. In OTP 17, map keys needs to be literals.
2014-12-01Merge branch 'anders/diameter/filters/OTP-12308' into maintAnders Svensson
* anders/diameter/filters/OTP-12308: Order peers in pick_peer callbacks
2014-12-01Merge branch 'anders/diameter/connect_timer/OTP-12281' into maintAnders Svensson
* anders/diameter/connect_timer/OTP-12281: Tweak reason in closed event Fix ignored connect timer Check {connect,watchdog}_timer distinction in event testcases Rename reconnect_timer to connect_timer in examples and suites
2014-12-01Merge branch 'anders/diameter/3xxx/OTP-12233' into maintAnders Svensson
* anders/diameter/3xxx/OTP-12233: Fix handling of 3xxx Result-Code without E-bit
2014-12-01Merge branch 'anders/diameter/request_leak/OTP-12196' into maintAnders Svensson
* anders/diameter/request_leak/OTP-12196: Fix remote diameter_request table leak
2014-12-01Merge branch 'raimo/snmp/dev' into maintRaimo Niskanen
* raimo/snmp/dev: Try to increase test case timeouts Honor bind_to for manager net_if family inet
2014-12-01[snmp/compiler] Refinement of type Opaque was not allowedMicael Karlberg
MIB constructs such as "SYNTAX Opaque (SIZE(0..65535))" was previously not allowed, this has now been fixed. See the standard ALARM-MIB for eaxmple.
2014-12-01ssh: Implements and tests erl_tar read from remote host.Hans Nilsson
2014-12-01ssh: crypto framework for ssh_sftp:open_tar addedHans Nilsson