[MERGED] osmo-ttcn3-hacks[master]: Add comments with short module description on top of each file

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Harald Welte gerrit-no-reply at lists.osmocom.org
Wed Jan 3 20:18:33 UTC 2018


Harald Welte has submitted this change and it was merged.

Change subject: Add comments with short module description on top of each file
......................................................................


Add comments with short module description on top of each file

Change-Id: Id934d7a763b619d52cbec7de439b3708225b81f3
---
M library/BSSAP_CodecPort.ttcn
M library/BSSMAP_Emulation.ttcn
M library/BSSMAP_Templates.ttcn
M library/GSUP_Types.ttcn
M library/IPA_CodecPort.ttcn
M library/IPA_Emulation.ttcn
M library/IPA_Types.ttcn
M library/IuUP_Emulation.ttcn
M library/IuUP_Types.ttcn
M library/L3_Templates.ttcn
M library/MGCP_CodecPort.ttcn
M library/MGCP_Templates.ttcn
M library/MGCP_Types.ttcn
M library/Osmocom_CTRL_Functions.ttcn
M library/Osmocom_CTRL_Types.ttcn
M library/RSL_Emulation.ttcn
M library/RSL_Types.ttcn
M library/RTP_CodecPort.ttcn
18 files changed, 233 insertions(+), 6 deletions(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/library/BSSAP_CodecPort.ttcn b/library/BSSAP_CodecPort.ttcn
index 7470dd4..41bd171 100644
--- a/library/BSSAP_CodecPort.ttcn
+++ b/library/BSSAP_CodecPort.ttcn
@@ -1,5 +1,16 @@
 module BSSAP_CodecPort {
 
+/* Simple BSSAP Codec Port, translating between raw SCCP primitives with
+ * octetstring payload towards the SCCP provider, and BSSAP-SCCP primitives
+ * which carry the decoded BSSAP data types as payload.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 import from General_Types all;
 import from Osmocom_Types all;
 
diff --git a/library/BSSMAP_Emulation.ttcn b/library/BSSMAP_Emulation.ttcn
index ba7e27c..153fb86 100644
--- a/library/BSSMAP_Emulation.ttcn
+++ b/library/BSSMAP_Emulation.ttcn
@@ -1,5 +1,35 @@
 module BSSMAP_Emulation {
 
+/* BSSMAP Emulation, runs on top of BSSAP_CodecPort.  It multiplexes/demultiplexes
+ * the individual connections, so there can be separate TTCN-3 components handling
+ * each of the connections.
+ *
+ * The BSSMAP_Emulation.main() function processes SCCP primitives from the SCCP
+ * stack via the BSSAP_CodecPort, and dispatches them to the per-connection components.
+ *
+ * Outbound BSSAP/SCCP connections are initiated by sending a BSSAP_Conn_Req primitive
+ * to the component running the BSSMAP_Emulation.main() function.
+ *
+ * For each new inbound connections, the BssmapOps.create_cb() is called.  It can create
+ * or resolve a TTCN-3 component, and returns a component reference to which that inbound
+ * connection is routed/dispatched.
+ *
+ * If a pre-existing component wants to register to handle a future inbound connection, it can
+ * do so by registering an "expect" with the expected Layer 3 (DTAP) payload.  This is e.g. useful
+ * if you are simulating BTS + MSC, and first trigger a connection from BTS/RSL side in a
+ * component which then subsequently should also handle the MSC emulation.
+ *
+ * Inbound Unit Data messages (such as are dispatched to the BssmapOps.unitdata_cb() callback,
+ * which is registered with an argument to the main() function below.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
+
 import from SCCP_Emulation all;
 import from SCCPasp_Types all;
 import from BSSAP_Types all;
diff --git a/library/BSSMAP_Templates.ttcn b/library/BSSMAP_Templates.ttcn
index bb1b537..cb6dde8 100644
--- a/library/BSSMAP_Templates.ttcn
+++ b/library/BSSMAP_Templates.ttcn
@@ -1,5 +1,14 @@
 module BSSMAP_Templates {
 
+/* BSSMAP Templates, building on top of BSSAP_Types from Ericsson.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 import from General_Types all;
 import from Osmocom_Types all;
 import from GSM_Types all;
diff --git a/library/GSUP_Types.ttcn b/library/GSUP_Types.ttcn
index b994d1f..fc524a1 100644
--- a/library/GSUP_Types.ttcn
+++ b/library/GSUP_Types.ttcn
@@ -1,5 +1,17 @@
 module GSUP_Types {
 
+/* GSUP_Types, defining abstract TTCN-3 data types for the GSUP protocol.
+ *
+ * GSUP is a non-standard protocol used between OsmoMSC/OsmoSGSN and OsmoHLR
+ * in order to replace the complex TCAP/MAP protocol.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 import from General_Types all;
 import from Osmocom_Types all;
 
diff --git a/library/IPA_CodecPort.ttcn b/library/IPA_CodecPort.ttcn
index 9ba9d18..f9a242b 100644
--- a/library/IPA_CodecPort.ttcn
+++ b/library/IPA_CodecPort.ttcn
@@ -1,5 +1,16 @@
 module IPA_CodecPort {
 
+/* Simple IPA Codec Port, translating between raw TCP octetstring payload
+ * towards the IPL4asp port provider, and IPA primitives
+ * which carry the decoded IPA data types as payload.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 	import from IPL4asp_PortType all;
 	import from IPL4asp_Types all;
 	import from IPA_Types all;
diff --git a/library/IPA_Emulation.ttcn b/library/IPA_Emulation.ttcn
index 9bad69f..b40818f 100644
--- a/library/IPA_Emulation.ttcn
+++ b/library/IPA_Emulation.ttcn
@@ -2,10 +2,18 @@
 
 /* This module implements the IPA multiplex protocol on top of TCP, using the IPL4asp
  * test-port as provider.  It implements both client and server roles, as well was the CCM
- * handshake for establishing the identity of the client to the server.  It already knows
- * certain well-known sub-protocols such as A-bis RSL, MGCP and SCCP and transcodes messages
- * so the user can work with abstract data types rather than binary messages.  It handles
- * multiple packets inside one TCP segment */
+ * handshake for establishing the identity of the client to the server.  
+ *
+ * It already knows certain well-known sub-protocols such as A-bis RSL, MGCP and SCCP and
+ * GSUP.  IT hence transcodes messages so the user can work with abstract data types rather
+ * than binary messages.  It handles multiple packets inside one TCP segment.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
 
 import from IPA_Types all;
 import from IPA_CodecPort all;
diff --git a/library/IPA_Types.ttcn b/library/IPA_Types.ttcn
index 5522e87..933a3fe 100644
--- a/library/IPA_Types.ttcn
+++ b/library/IPA_Types.ttcn
@@ -1,7 +1,16 @@
-/* (C) 2017 by Harald Welte <laforge at gnumonks.org> */
-
 module IPA_Types {
 
+/* Definitions of abstract data types for the IPA multiplex protocol.
+ * Uses the TITAN "RAW" codec syntax to auto-generate encoder and decoder
+ * functions.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 import from Osmocom_Types all;
 
 type enumerated IpaStreamId {
diff --git a/library/IuUP_Emulation.ttcn b/library/IuUP_Emulation.ttcn
index ec25e49..77cd739 100644
--- a/library/IuUP_Emulation.ttcn
+++ b/library/IuUP_Emulation.ttcn
@@ -1,5 +1,19 @@
 module IuUP_Emulation {
 
+/* IuUP emulation, uses the encoding/decoding from IuUP_Types.
+ *
+ * rather than running in a separate component with related primitives,
+ * we just implement a set of functions and data types which can be used
+ * by other code (such as an RTP endpoint) to implement IuUP support.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
+
 import from Osmocom_Types all;
 import from IuUP_Types all;
 
diff --git a/library/IuUP_Types.ttcn b/library/IuUP_Types.ttcn
index 933b64f..b822ddf 100644
--- a/library/IuUP_Types.ttcn
+++ b/library/IuUP_Types.ttcn
@@ -1,5 +1,16 @@
 module IuUP_Types {
 
+/* Definition of abstract types for the IuUP protocol as specified in
+ * 3GPP TS 25.415.  Uses the TITAN "RAW" codec to auto-generate encoder/decoder
+ * functions.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 import from Osmocom_Types all;
 import from General_Types all;
 
diff --git a/library/L3_Templates.ttcn b/library/L3_Templates.ttcn
index f0f3d38..19cb99f 100644
--- a/library/L3_Templates.ttcn
+++ b/library/L3_Templates.ttcn
@@ -1,5 +1,14 @@
 module L3_Templates {
 
+/* L3 Templates, building on top of MobileL3*_Types from Ericsson.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 import from General_Types all;
 import from MobileL3_Types all;
 import from MobileL3_CommonIE_Types all;
diff --git a/library/MGCP_CodecPort.ttcn b/library/MGCP_CodecPort.ttcn
index 06072af..416ac36 100644
--- a/library/MGCP_CodecPort.ttcn
+++ b/library/MGCP_CodecPort.ttcn
@@ -1,5 +1,16 @@
 module MGCP_CodecPort {
 
+/* Simple MGCP Codec Port, translating between raw UDP primitives with
+ * octetstring payload towards the IPL4asp provider, and MGCP primitives
+ * which carry the decoded MGCP data types as payload.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 	import from IPL4asp_PortType all;
 	import from IPL4asp_Types all;
 	import from MGCP_Types all;
diff --git a/library/MGCP_Templates.ttcn b/library/MGCP_Templates.ttcn
index 3fa7bd1..f4c6e0f 100644
--- a/library/MGCP_Templates.ttcn
+++ b/library/MGCP_Templates.ttcn
@@ -1,5 +1,15 @@
 module MGCP_Templates {
 
+/* MGCP Templates, building on top of MGCP_Types (Osmocom) and SDP_Types from Ericsson.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
+
 	import from MGCP_Types all;
 	import from SDP_Types all;
 
diff --git a/library/MGCP_Types.ttcn b/library/MGCP_Types.ttcn
index 22141f4..9d1a4e1 100644
--- a/library/MGCP_Types.ttcn
+++ b/library/MGCP_Types.ttcn
@@ -1,4 +1,16 @@
 module MGCP_Types {
+
+/* Definition of abstract types for the MGCP protocol as specified in
+ * IETF RFC 3435.  Uses the TITAN "TEXT" codec to auto-generate encoder/decoder
+ * functions, as well as the SDP type definitions and coder from Ericsson.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 	import from SDP_Types all;
 
 	type charstring MgcpVerb ("EPCF", "CRCX", "MDCX", "DLCX", "RQNT", "NTFY",
diff --git a/library/Osmocom_CTRL_Functions.ttcn b/library/Osmocom_CTRL_Functions.ttcn
index b8e68e3..70885c9 100644
--- a/library/Osmocom_CTRL_Functions.ttcn
+++ b/library/Osmocom_CTRL_Functions.ttcn
@@ -1,4 +1,25 @@
 module Osmocom_CTRL_Functions {
+
+/* Definition of helper functions for the Osmocom CTRL interface.
+ *
+ * As opposed to many other parts of the Osmocom TTCN-3 code base, this module
+ * implements blocking functions, instead of asynchronous functions.  The
+ * rationale for this is simple: One normally wants to inquire a value or set
+ * a value and not continue the main program until that operation is complete.
+ * 
+ * CTRL is a machine-type protocol on how external programs can interact with
+ * an Osmocom program in a structured way.  It is intended for programmatic
+ * access (by other software), as opposed to the VTY interface intended for
+ * human consumption.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
+
 	import from Osmocom_CTRL_Types all;
 	import from IPA_Emulation all;
 
diff --git a/library/Osmocom_CTRL_Types.ttcn b/library/Osmocom_CTRL_Types.ttcn
index 4d2406d..1d77668 100644
--- a/library/Osmocom_CTRL_Types.ttcn
+++ b/library/Osmocom_CTRL_Types.ttcn
@@ -1,5 +1,15 @@
 module Osmocom_CTRL_Types {
 
+/* Definition of abstract types for the CTRL protocol as used in Osmocom.
+ * Uses the TITAN "TEXT" codec to auto-generate encoder/decoder functions.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 type charstring CtrlVerb ("GET", "SET") with {
 	/* see https://www.eclipse.org/forums/index.php/t/1088893/ on why this
 	 * match expression is needed here */
diff --git a/library/RSL_Emulation.ttcn b/library/RSL_Emulation.ttcn
index a42ca1e..7c5a168 100644
--- a/library/RSL_Emulation.ttcn
+++ b/library/RSL_Emulation.ttcn
@@ -1,5 +1,22 @@
 module RSL_Emulation {
 
+/* RSL Emulation, runs on top of IPA_Emulation.  It multiplexes/demultiplexes
+ * the individual connections (logical channels), so there can be separate TTCN-3 components
+ * handling each of the connections.
+ *
+ * The RSL_Emulation.main() function processes RSL messages from the IPA demultiplex
+ * stack via the IPA_RSL_PT, and dispatches them to the per-connection components.
+ *
+ * Outbound RSL connections are initiated by sending a RSLDC_ChanRqd primitive
+ * to the component running the RSL_Emulation.main() function.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 import from General_Types all;
 import from Osmocom_Types all;
 import from GSM_Types all;
diff --git a/library/RSL_Types.ttcn b/library/RSL_Types.ttcn
index 0604440..f42b7fd 100644
--- a/library/RSL_Types.ttcn
+++ b/library/RSL_Types.ttcn
@@ -1,5 +1,16 @@
 module RSL_Types {
 
+/* GSUP_Types, defining abstract TTCN-3 data types for the A-bis RSL protocol.
+ *
+ * RSL is a 3GPP standard protocol used between BTS and BSC in a GSM network.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 	import from General_Types all;
 	import from Osmocom_Types all;
 	import from GSM_Types all;
diff --git a/library/RTP_CodecPort.ttcn b/library/RTP_CodecPort.ttcn
index f9293f4..8f85fd9 100644
--- a/library/RTP_CodecPort.ttcn
+++ b/library/RTP_CodecPort.ttcn
@@ -1,5 +1,16 @@
 module RTP_CodecPort {
 
+/* Simple RTP Codec Port, translating between raw UDP primitives with
+ * octetstring payload towards the IPL4asp provider, and RTP primitives
+ * which carry the decoded abstract RTP data types as payload.
+ *
+ * (C) 2017 by Harald Welte <laforge at gnumonks.org>
+ * All rights reserved.
+ *
+ * Released under the terms of GNU General Public License, Version 2 or
+ * (at your option) any later version.
+ */
+
 	import from IPL4asp_PortType all;
 	import from IPL4asp_Types all;
 	import from RTP_Types all;

-- 
To view, visit https://gerrit.osmocom.org/5636
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Id934d7a763b619d52cbec7de439b3708225b81f3
Gerrit-PatchSet: 1
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder



More information about the gerrit-log mailing list