aboutsummaryrefslogtreecommitdiffstats
path: root/library/DIAMETER_rfc5447_Templates.ttcn
diff options
context:
space:
mode:
Diffstat (limited to 'library/DIAMETER_rfc5447_Templates.ttcn')
-rw-r--r--library/DIAMETER_rfc5447_Templates.ttcn54
1 files changed, 54 insertions, 0 deletions
diff --git a/library/DIAMETER_rfc5447_Templates.ttcn b/library/DIAMETER_rfc5447_Templates.ttcn
new file mode 100644
index 00000000..f62c96d7
--- /dev/null
+++ b/library/DIAMETER_rfc5447_Templates.ttcn
@@ -0,0 +1,54 @@
+module DIAMETER_rfc5447_Templates {
+
+/* (C) 2023 by sysmocom s.f.m.c. GmbH <info@sysmocom.de
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ */
+
+import from General_Types all;
+import from DIAMETER_Types all;
+import from DIAMETER_Templates all;
+import from Osmocom_Types all;
+import from Misc_Helpers all;
+import from DIAMETER_rfc4004_Templates all;
+
+/* 4.2.1. MIP6-Agent-Info AVP */
+template (value) GenericAVP ts_AVP_MIP6AgentInfo(template (value) MIPv4_NONE_MIP_Home_Agent_Address addr) := {
+ avp := {
+ avp_header := ts_DIA_Hdr(c_AVP_Code_MIPv6_NONE_MIP6_Agent_Info),
+ avp_data := {
+ avp_MIPv6_NONE_MIP6_Agent_Info := {
+ ts_AVP_MIPHomeAgentAddress(addr)
+ }
+ }
+ }
+}
+
+/* 4.2.5. MIP6-Feature-Vector AVP */
+const uint64_t DIA_RFC5447_MIP6_Feature_Vector_MIP6_INTEGRATED := hex2int('0000000000000001'H);
+const uint64_t DIA_RFC5447_MIP6_Feature_Vector_LOCAL_HOME_AGENT_ASSIGNMENT := hex2int('0000000000000002'H);
+
+
+/* 4.2.5. MIP6-Feature-Vector AVP */
+template (value) GenericAVP ts_AVP_MIP6FeatureVector(template (value) MIPv6_NONE_MIP6_Feature_Vector inp) := {
+ avp := {
+ avp_header := ts_DIA_Hdr(c_AVP_Code_MIPv6_NONE_MIP6_Feature_Vector),
+ avp_data := {
+ avp_MIPv6_NONE_MIP6_Feature_Vector := inp
+ }
+ }
+}
+template (present) GenericAVP tr_AVP_MIP6FeatureVector(template (present) MIPv6_NONE_MIP6_Feature_Vector inp := ?) := {
+ avp := {
+ avp_header := tr_DIA_Hdr(c_AVP_Code_MIPv6_NONE_MIP6_Feature_Vector),
+ avp_data := {
+ avp_MIPv6_NONE_MIP6_Feature_Vector := inp
+ }
+ }
+}
+
+} \ No newline at end of file