diff options
author | Anders Svensson <[email protected]> | 2015-03-23 07:57:26 +0100 |
---|---|---|
committer | Anders Svensson <[email protected]> | 2015-03-23 08:13:22 +0100 |
commit | 9321b4b3aa332f140268ef8f3251f6314a4984fe (patch) | |
tree | 2d601c94df415788dadf8c5b71c3a1d9ebdf6097 /lib/diameter/src/base/diameter_traffic.erl | |
parent | af87b1c3d4897840d8247589a88d3611106ecedc (diff) | |
download | otp-9321b4b3aa332f140268ef8f3251f6314a4984fe.tar.gz otp-9321b4b3aa332f140268ef8f3251f6314a4984fe.tar.bz2 otp-9321b4b3aa332f140268ef8f3251f6314a4984fe.zip |
Fix ordering of AVPs in relayed messages
6.1.9 of RFC 6733 states this:
A relay or proxy agent MUST append a Route-Record AVP to all requests
forwarded.
The AVP was inserted as the head of the AVP list, not appended, since
the entire AVP list was reversed relative to the received order.
Thanks to Andrzej TrawiĆski.
Diffstat (limited to 'lib/diameter/src/base/diameter_traffic.erl')
-rw-r--r-- | lib/diameter/src/base/diameter_traffic.erl | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/diameter/src/base/diameter_traffic.erl b/lib/diameter/src/base/diameter_traffic.erl index 3b62afca47..3717e43e4a 100644 --- a/lib/diameter/src/base/diameter_traffic.erl +++ b/lib/diameter/src/base/diameter_traffic.erl @@ -592,7 +592,7 @@ resend(false, Route = #diameter_avp{data = {Dict0, 'Route-Record', OH}}, Seq = diameter_session:sequence(Mask), Hdr = Hdr0#diameter_header{hop_by_hop_id = Seq}, - Msg = [Hdr, Route | Avps], + Msg = [Hdr, Route | Avps], %% reordered at encode resend(send_request(SvcName, App, Msg, Opts), Caps, Dict0, Pkt). %% The incoming request is relayed with the addition of a %% Route-Record. Note the requirement on the return from call/4 below, |