diff options
author | Vadim Yanitskiy <vyanitskiy@sysmocom.de> | 2021-12-15 05:29:35 +0300 |
---|---|---|
committer | Vadim Yanitskiy <vyanitskiy@sysmocom.de> | 2021-12-15 05:29:47 +0300 |
commit | 21fd7db556ca857bd13612ebb4642b872e38ef80 (patch) | |
tree | 7871eddeba4174997958f4646b125f0f891e67c6 | |
parent | 446edae4bc60b9b501f49838095e0c6abc97a250 (diff) |
library/DIAMETER_Templates: fix flags in AIR templates
According to RFC 6733, section 3 "Diameter Header", if the 'R' bit
is set, the message is a request. If the 'P' bit is set, the
message may be proxied, relayed, or redirected.
ts_DIA_AIR is a template for Authentication Information *Request*,
so the 'R' bit must be set. Also, let's allow this message to be
proxied, relayed, or redirected by setting the 'P' bit by default.
In tr_DIA_AIR, do not match all command flags, just ensure that
the message is a request. Other flags do not matter.
Change-Id: I7db3b632189eed09c1bdf98f9d588491d928e2f5
Related: SYS#5602
-rw-r--r-- | library/DIAMETER_Templates.ttcn | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/library/DIAMETER_Templates.ttcn b/library/DIAMETER_Templates.ttcn index a30a565b..1b3ffdba 100644 --- a/library/DIAMETER_Templates.ttcn +++ b/library/DIAMETER_Templates.ttcn @@ -891,7 +891,7 @@ ts_DIA_AIR(/* template (value) */ hexstring imsi, template (value) charstring dest_realm := "localdomain", template (value) UINT32 hbh_id := '00000000'O, template (value) UINT32 ete_id := '00000000'O) := - ts_DIAMETER(flags := '00000000'B, + ts_DIAMETER(flags := '11000000'B, cmd_code := Authentication_Information, hbh_id := hbh_id, ete_id := ete_id, @@ -909,7 +909,7 @@ tr_DIA_AIR(/* template (present) */ hexstring imsi, template (present) charstring dest_realm := ?, template (present) UINT32 hbh_id := ?, template (present) UINT32 ete_id := ?) := - tr_DIAMETER(flags := '11000000'B, + tr_DIAMETER(flags := '1???????'B, cmd_code := Authentication_Information, app_id := int2oct(c_DIAMETER_3GPP_S6_AID, 4), hbh_id := hbh_id, ete_id := ete_id, |