Implement L1CTL port type (dual-faced port on top of UnixDomain)
diff --git a/lapd/L1CTL_Types.ttcn b/lapd/L1CTL_Types.ttcn
index 2a0aa4e..07d7bb5 100644
--- a/lapd/L1CTL_Types.ttcn
+++ b/lapd/L1CTL_Types.ttcn
@@ -72,6 +72,12 @@
OCT2 padding
} with { variant "" };
+ template L1ctlHeader t_L1ctlHeader(template L1ctlMsgType msg_type) := {
+ msg_type := msg_type,
+ flags := { padding := '0000000'B, f_done := false },
+ padding := '0000'O
+ };
+
type uint8_t RslChanNr;
type uint8_t RslLinkId;
@@ -268,4 +274,25 @@
external function dec_L1ctlUlMessage(in octetstring stream) return L1ctlUlMessage
with { extension "prototype(convert) decode(RAW)" };
+ type record L1ctlUlMessageLV {
+ uint16_t len,
+ L1ctlUlMessage msg
+ } with { variant (len) "LENGTHTO(msg)" };
+
+ external function enc_L1ctlUlMessageLV(in L1ctlUlMessageLV msg) return octetstring
+ with { extension "prototype(convert) encode(RAW)" };
+ external function dec_L1ctlUlMessageLV(in octetstring stream) return L1ctlUlMessageLV
+ with { extension "prototype(convert) decode(RAW)" };
+
+ type record L1ctlDlMessageLV {
+ uint16_t len,
+ L1ctlDlMessage msg
+ } with { variant (len) "LENGTHTO(msg)" };
+
+ external function enc_L1ctlDlMessageLV(in L1ctlDlMessageLV msg) return octetstring
+ with { extension "prototype(convert) encode(RAW)" };
+ external function dec_L1ctlDlMessageLV(in octetstring stream) return L1ctlDlMessageLV
+ with { extension "prototype(convert) decode(RAW)" };
+
+
} with { encode "RAW" };