diff --git a/bsc-nat/BSCNAT_Tests.ttcn b/bsc-nat/BSCNAT_Tests.ttcn
index 993d668..b9b031f 100644
--- a/bsc-nat/BSCNAT_Tests.ttcn
+++ b/bsc-nat/BSCNAT_Tests.ttcn
@@ -1,5 +1,16 @@
 module BSCNAT_Tests {
 
+/* osmo-bsc_nat test suite in TTCN-3
+ * (C) 2018-2019 sysmocom - s.f.m.c. GmbH
+ * Author: Daniel Willmann
+ * 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 Osmocom_Types all;
 
 import from IPL4asp_Types all;
diff --git a/bsc-nat/BSC_MS_ConnectionHandler.ttcn b/bsc-nat/BSC_MS_ConnectionHandler.ttcn
index 28ff349..7777f03 100644
--- a/bsc-nat/BSC_MS_ConnectionHandler.ttcn
+++ b/bsc-nat/BSC_MS_ConnectionHandler.ttcn
@@ -1,5 +1,14 @@
 module BSC_MS_ConnectionHandler {
 
+/* (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 import from SCCPasp_Types all;
diff --git a/bsc-nat/BSC_MS_Simulation.ttcn b/bsc-nat/BSC_MS_Simulation.ttcn
index c45b5ac..ed6e92d 100644
--- a/bsc-nat/BSC_MS_Simulation.ttcn
+++ b/bsc-nat/BSC_MS_Simulation.ttcn
@@ -1,5 +1,15 @@
 module BSC_MS_Simulation {
 
+/* (C) 2017-2018 Harald Welte <laforge@gnumonks.org>
+ * (C) 2018 sysmocom - s.f.m.c. Gmbh; Author: Daniel Willmann
+ * 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 IPL4asp_Types all;
 
 import from IPA_Emulation all;
diff --git a/bsc-nat/MGCP_Adapter.ttcn b/bsc-nat/MGCP_Adapter.ttcn
index 6491c68..478c688 100644
--- a/bsc-nat/MGCP_Adapter.ttcn
+++ b/bsc-nat/MGCP_Adapter.ttcn
@@ -1,5 +1,15 @@
 module MGCP_Adapter {
 
+/* MGCP Adapter for bsc-nat tests in TTCN-3
+ * (C) 2017 Harald Welte <laforge@gnumonks.org>
+ * 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 IPL4asp_Types all;
 
 import from MGCP_Types all;
diff --git a/bsc-nat/MSC_ConnectionHandler.ttcn b/bsc-nat/MSC_ConnectionHandler.ttcn
index 36fdf85..89728b4 100644
--- a/bsc-nat/MSC_ConnectionHandler.ttcn
+++ b/bsc-nat/MSC_ConnectionHandler.ttcn
@@ -1,5 +1,14 @@
 module MSC_ConnectionHandler {
 
+/* (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 import from SCCPasp_Types all;
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index c731b7c..85260bc 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -7,6 +7,8 @@
  * 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
+ *
  * This test suite tests OsmoBSC while emulating both multiple BTS + MS as
  * well as the MSC. See README for more details.
  *
diff --git a/bsc/BSC_Tests_LCLS.ttcn b/bsc/BSC_Tests_LCLS.ttcn
index f2b9b5d..6087133 100644
--- a/bsc/BSC_Tests_LCLS.ttcn
+++ b/bsc/BSC_Tests_LCLS.ttcn
@@ -7,6 +7,8 @@
  * 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
+ *
  * This test suite tests OsmoBSC while emulating both multiple BTS + MS as
  * well as the MSC. See README for more details.
  *
diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn
index 0db5630..dbba135 100644
--- a/bsc/MSC_ConnectionHandler.ttcn
+++ b/bsc/MSC_ConnectionHandler.ttcn
@@ -1,5 +1,16 @@
 module MSC_ConnectionHandler {
 
+/* MSC Connection HAndler of BSC Tests in TTCN-3
+ * (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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 Misc_Helpers all;
 import from General_Types all;
 import from Osmocom_Types all;
diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn
index 5cde0af..1c20657 100644
--- a/bts/BTS_Tests.ttcn
+++ b/bts/BTS_Tests.ttcn
@@ -1,13 +1,15 @@
 module BTS_Tests {
 
 /* Integration Tests for OsmoBTS
- * (C) 2019-2019 by Harald Welte <laforge@gnumonks.org>
+ * (C) 2018-2019 by Harald Welte <laforge@gnumonks.org>
  * contributions by Vadim Yanitskiy and sysmocom - s.f.m.c. GmbH
  * 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
+ *
  * This test suite tests OsmoBTS by attaching to the external interfaces
  * such as Abis RSL, PCU, VTY as well as by attaching to a MS L1 implementation
  * using the L1CTL protocol/interface.
diff --git a/bts/BTS_Tests_SMSCB.ttcn b/bts/BTS_Tests_SMSCB.ttcn
index 801a5fc..0712a90 100644
--- a/bts/BTS_Tests_SMSCB.ttcn
+++ b/bts/BTS_Tests_SMSCB.ttcn
@@ -7,6 +7,8 @@
  * 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
+ *
  * This test suite tests the SMSCB (Cell Broadcast) related functionality of
  * OsmoBTS by attaching to the A-bis RSL and Um interface and emulating both
  * BSC and MS.
diff --git a/ggsn_tests/GGSN_Tests.ttcn b/ggsn_tests/GGSN_Tests.ttcn
index d793d27..9577a60 100644
--- a/ggsn_tests/GGSN_Tests.ttcn
+++ b/ggsn_tests/GGSN_Tests.ttcn
@@ -1,5 +1,17 @@
 module GGSN_Tests {
 
+/* GGSN test suite in TTCN-3
+ * (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * (C) 2018-2019 sysmocom - s.f.m.c. GmbH
+ * 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 Osmocom_Types all;
 	import from IPL4asp_PortType all;
diff --git a/hlr/HLR_EUSE.ttcn b/hlr/HLR_EUSE.ttcn
index fbb496c..ef07ca6 100644
--- a/hlr/HLR_EUSE.ttcn
+++ b/hlr/HLR_EUSE.ttcn
@@ -6,7 +6,15 @@
  * function, which will return whatever PDU to send in response back to the HLR.
  */
 
-/* (C) 2018 by Harald Welte <laforge@gnumonks.org> */
+
+/* (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
 
 module HLR_EUSE {
 
diff --git a/hlr/HLR_Tests.ttcn b/hlr/HLR_Tests.ttcn
index da6ad7c..b6bd1ad 100644
--- a/hlr/HLR_Tests.ttcn
+++ b/hlr/HLR_Tests.ttcn
@@ -1,5 +1,19 @@
 module HLR_Tests {
 
+/* HLR test suite in TTCN-3
+ * (C) 2017-2018 Harald Welte <laforge@gnumonks.org>
+ * (C) 2018 sysmocom - s.f.m.c. GmbH
+ * (C) 2018 Vadim Yanitskiy <axilirator@gmail.com>
+ * 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 GSUP_Types all;
 import from GSUP_Emulation all;
 import from IPA_Emulation all;
diff --git a/library/AbisOML_Types.ttcn b/library/AbisOML_Types.ttcn
index 0d37f8a..c4fd81c 100644
--- a/library/AbisOML_Types.ttcn
+++ b/library/AbisOML_Types.ttcn
@@ -10,6 +10,8 @@
  *
  * Released under the terms of the 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;
diff --git a/library/BSSAP_CodecPort.ttcn b/library/BSSAP_CodecPort.ttcn
index 41bd171..fdece08 100644
--- a/library/BSSAP_CodecPort.ttcn
+++ b/library/BSSAP_CodecPort.ttcn
@@ -9,6 +9,8 @@
  *
  * 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;
diff --git a/library/BSSGP_Emulation.ttcn b/library/BSSGP_Emulation.ttcn
index 22c2f09..5b5628e 100644
--- a/library/BSSGP_Emulation.ttcn
+++ b/library/BSSGP_Emulation.ttcn
@@ -1,5 +1,15 @@
 module BSSGP_Emulation {
 
+/* BSSGP Emulation in TTCN-3
+ * (C) 2018-2019 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 import from NS_Types all;
diff --git a/library/BSSGP_Types.ttcn b/library/BSSGP_Types.ttcn
index 826e3ec..d51bb6d 100644
--- a/library/BSSGP_Types.ttcn
+++ b/library/BSSGP_Types.ttcn
@@ -1,5 +1,15 @@
 module BSSGP_Types {
 
+/* BSSGP type definitions in TTCN-3
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 	import from GSM_Types all;
diff --git a/library/BSSMAP_Templates.ttcn b/library/BSSMAP_Templates.ttcn
index ad314a3..b377358 100644
--- a/library/BSSMAP_Templates.ttcn
+++ b/library/BSSMAP_Templates.ttcn
@@ -2,11 +2,14 @@
 
 /* BSSMAP Templates, building on top of BSSAP_Types from Ericsson.
  *
- * (C) 2017 by Harald Welte <laforge@gnumonks.org>
+ * (C) 2017-2019 by Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
  * 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;
diff --git a/library/DNS_Helpers.ttcn b/library/DNS_Helpers.ttcn
index 45c3a09..122adff 100644
--- a/library/DNS_Helpers.ttcn
+++ b/library/DNS_Helpers.ttcn
@@ -1,5 +1,15 @@
 module DNS_Helpers {
 
+/* DNS Helper functions in TTCN-3
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
 private function f_strchr(charstring s, char c) return integer {
 	var integer i;
 	for (i := 0; i < lengthof(s); i := i+1) {
diff --git a/library/GSMTAP_PortType.ttcn b/library/GSMTAP_PortType.ttcn
index a3f655d..47796c8 100644
--- a/library/GSMTAP_PortType.ttcn
+++ b/library/GSMTAP_PortType.ttcn
@@ -1,4 +1,13 @@
-/* dual-faced port that wraps an IPL4asp port and encodes/decodes GSMTAP */
+/* dual-faced port that wraps an IPL4asp port and encodes/decodes GSMTAP
+ * (C) 2017 Harald Welte <laforge@gnumonks.org>
+ * 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+
+ */
+
 module GSMTAP_PortType {
 	import from GSMTAP_Types all;
 	import from IPL4asp_PortType all;
diff --git a/library/GSM_RR_Types.ttcn b/library/GSM_RR_Types.ttcn
index 5958569..457f0f5 100644
--- a/library/GSM_RR_Types.ttcn
+++ b/library/GSM_RR_Types.ttcn
@@ -1,7 +1,14 @@
 /* Encoding/Decoding routines for GSM System Information messages
- * according to 3GPP TS 44.018 Version 12.3.0 Release 12 */
-
-/* (C) 2017 by Harald Welte <laforge@gnumonks.org> */
+ * according to 3GPP TS 44.018 Version 12.3.0 Release 12
+ *
+ * (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
 
 module GSM_RR_Types {
 
diff --git a/library/GSM_SystemInformation.ttcn b/library/GSM_SystemInformation.ttcn
index 1d06aa1..f1918c9 100644
--- a/library/GSM_SystemInformation.ttcn
+++ b/library/GSM_SystemInformation.ttcn
@@ -1,7 +1,14 @@
 /* Encoding/Decoding routines for GSM System Information messages
- * according to 3GPP TS 44.018 Version 12.3.0 Release 12 */
-
-/* (C) 2017 by Harald Welte <laforge@gnumonks.org> */
+ * according to 3GPP TS 44.018 Version 12.3.0 Release 12
+ *
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
 
 module GSM_SystemInformation {
 
diff --git a/library/GSM_Types.ttcn b/library/GSM_Types.ttcn
index 88be975..3e24f81 100644
--- a/library/GSM_Types.ttcn
+++ b/library/GSM_Types.ttcn
@@ -1,7 +1,14 @@
 /* Encoding/Decoding routines for GSM System Information messages
- * according to 3GPP TS 44.018 Version 12.3.0 Release 12 */
-
-/* (C) 2017 by Harald Welte <laforge@gnumonks.org> */
+ * according to 3GPP TS 44.018 Version 12.3.0 Release 12
+ *
+ * (C) 2017-2018 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
 
 module GSM_Types {
 
diff --git a/library/GSUP_Emulation.ttcn b/library/GSUP_Emulation.ttcn
index 86859ba..ea8ba22 100644
--- a/library/GSUP_Emulation.ttcn
+++ b/library/GSUP_Emulation.ttcn
@@ -24,6 +24,8 @@
  *
  * 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
  */
 
 
diff --git a/library/GSUP_Types.ttcn b/library/GSUP_Types.ttcn
index df1d7a9..10cf1b8 100644
--- a/library/GSUP_Types.ttcn
+++ b/library/GSUP_Types.ttcn
@@ -5,11 +5,14 @@
  * 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@gnumonks.org>
+ * (C) 2017-2019 by Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
  * 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;
diff --git a/library/GTP_CodecPort.ttcn b/library/GTP_CodecPort.ttcn
index 7a3e755..a8507a6 100644
--- a/library/GTP_CodecPort.ttcn
+++ b/library/GTP_CodecPort.ttcn
@@ -1,5 +1,14 @@
-/* dual-faced port sitting on top of IPL4_asp UDP to encode/decode GTP */
-/* (C) 2017 by Harald Welte <laforge@gnumonks.org */
+/* dual-faced port sitting on top of IPL4_asp UDP to encode/decode GTP
+ * (C) 2017 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
+
 module GTP_CodecPort {
 	import from IPL4asp_PortType all;
 	import from IPL4asp_Types all;
diff --git a/library/GTP_Emulation.ttcn b/library/GTP_Emulation.ttcn
index 4368a8a..43c034b 100644
--- a/library/GTP_Emulation.ttcn
+++ b/library/GTP_Emulation.ttcn
@@ -1,3 +1,14 @@
+/* GTP Emulation in TTCN-3
+ *
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
 module GTP_Emulation {
 
 import from IPL4asp_Types all;
diff --git a/library/GTP_Templates.ttcn b/library/GTP_Templates.ttcn
index bd39e27..f2e6ac0 100644
--- a/library/GTP_Templates.ttcn
+++ b/library/GTP_Templates.ttcn
@@ -1,3 +1,14 @@
+/* GTP Templates in TTCN-3
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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
+ */
+
 module GTP_Templates {
 
 	import from General_Types all;
diff --git a/library/IPA_CodecPort.ttcn b/library/IPA_CodecPort.ttcn
index f9a242b..dfc759c 100644
--- a/library/IPA_CodecPort.ttcn
+++ b/library/IPA_CodecPort.ttcn
@@ -4,11 +4,13 @@
  * towards the IPL4asp port provider, and IPA primitives
  * which carry the decoded IPA data types as payload.
  *
- * (C) 2017 by Harald Welte <laforge@gnumonks.org>
+ * (C) 2017-2018 by Harald Welte <laforge@gnumonks.org>
  * 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 IPL4asp_PortType all;
diff --git a/library/IPA_Emulation.ttcnpp b/library/IPA_Emulation.ttcnpp
index a2066ee..3180621 100644
--- a/library/IPA_Emulation.ttcnpp
+++ b/library/IPA_Emulation.ttcnpp
@@ -8,11 +8,14 @@
  * 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-2018 by Harald Welte <laforge@gnumonks.org>
+ * (C) 2017-2019 by Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
  * 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 IPA_Types all;
diff --git a/library/IPA_Testing.ttcn b/library/IPA_Testing.ttcn
index 413dd31..c4097a5 100644
--- a/library/IPA_Testing.ttcn
+++ b/library/IPA_Testing.ttcn
@@ -4,6 +4,8 @@
  *
  * 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
  */
 
 /*
diff --git a/library/IPA_Types.ttcn b/library/IPA_Types.ttcn
index 1325b14..e232aeb 100644
--- a/library/IPA_Types.ttcn
+++ b/library/IPA_Types.ttcn
@@ -4,11 +4,13 @@
  * Uses the TITAN "RAW" codec syntax to auto-generate encoder and decoder
  * functions.
  *
- * (C) 2017 by Harald Welte <laforge@gnumonks.org>
+ * (C) 2017-2018 by Harald Welte <laforge@gnumonks.org>
  * 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 Osmocom_Types all;
diff --git a/library/IPCP_Types.ttcn b/library/IPCP_Types.ttcn
index 75bb092..657289a 100644
--- a/library/IPCP_Types.ttcn
+++ b/library/IPCP_Types.ttcn
@@ -1,3 +1,13 @@
+/* IPCP (IP Configuration Protocol) in TTCN-3
+ * (C) 2017 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
 module IPCP_Types {
 
 import from Osmocom_Types all;
diff --git a/library/IuUP_Emulation.ttcn b/library/IuUP_Emulation.ttcn
index 752b897..56384ee 100644
--- a/library/IuUP_Emulation.ttcn
+++ b/library/IuUP_Emulation.ttcn
@@ -11,9 +11,10 @@
  *
  * 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 Osmocom_Types all;
 import from IuUP_Types all;
 
diff --git a/library/L1CTL_PortType.ttcn b/library/L1CTL_PortType.ttcn
index a366a1b..bdcf024 100644
--- a/library/L1CTL_PortType.ttcn
+++ b/library/L1CTL_PortType.ttcn
@@ -1,4 +1,14 @@
-/* dual-faced port that wraps an Unixdomain port and encodes/decodes L1CTL */
+/* dual-faced port that wraps an Unixdomain port and encodes/decodes L1CTL
+ * (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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
+ */
+
 module L1CTL_PortType {
 	import from L1CTL_Types all;
 	import from UD_PortType all;
diff --git a/library/L1CTL_Types.ttcn b/library/L1CTL_Types.ttcn
index 6ffbbb8..69e7dbe 100644
--- a/library/L1CTL_Types.ttcn
+++ b/library/L1CTL_Types.ttcn
@@ -1,6 +1,14 @@
 /* Data Types / Encoding / Decoding for OsmocomBB L1CTL interface */
 /* (C) 2017 by Harald Welte <laforge@gnumonks.org>, derived from l1ctl_proto.h
- * (C) 2010 by Harald Welte + Holger Hans Peter Freyther */
+ * which is (C) 2010 by Harald Welte + Holger Hans Peter Freyther
+ * 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
+ */
+
 module L1CTL_Types {
 
 	import from General_Types all;
diff --git a/library/L3_Common.ttcn b/library/L3_Common.ttcn
index 01f0a34..0a80593 100644
--- a/library/L3_Common.ttcn
+++ b/library/L3_Common.ttcn
@@ -1,3 +1,14 @@
+/* Common L3 helper functions in TTCN-3
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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
+ */
+
 module L3_Common {
 
 import from Osmocom_Types all;
diff --git a/library/L3_Templates.ttcn b/library/L3_Templates.ttcn
index cf6d64c..a2fe67a 100644
--- a/library/L3_Templates.ttcn
+++ b/library/L3_Templates.ttcn
@@ -7,6 +7,8 @@
  *
  * 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;
diff --git a/library/LAPDm_RAW_PT.ttcn b/library/LAPDm_RAW_PT.ttcn
index 6b8f9fb..164d31a 100644
--- a/library/LAPDm_RAW_PT.ttcn
+++ b/library/LAPDm_RAW_PT.ttcn
@@ -1,6 +1,16 @@
 /* Test Port that stacks on top of L1CTL test port and performs LAPDm encoding/decoding, so the user can send
  * and receive LAPDm frames in decoded TTCN-3 data types.  This is particularly useful for sending/receiving
  * all kinds of hand-crafted LAPDm frames for testing of the remote LAPDm layer */
+
+/* (C) 2017-2018 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
 module LAPDm_RAW_PT {
 	import from GSM_Types all;
 	import from GSM_RR_Types all;
diff --git a/library/LAPDm_Types.ttcn b/library/LAPDm_Types.ttcn
index 32e1ba6..a1ca5fe 100644
--- a/library/LAPDm_Types.ttcn
+++ b/library/LAPDm_Types.ttcn
@@ -1,5 +1,13 @@
-/* LAPDm definitiona according to 3GPP TS 44.006 */
-/* (C) 2017-2018 bh Harald Welte <laforge@gnumonks.org> */
+/* LAPDm definitions according to 3GPP TS 44.006
+ * (C) 2017-2018 by Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
 module LAPDm_Types {
 
 	import from General_Types all;
diff --git a/library/LLC_Templates.ttcn b/library/LLC_Templates.ttcn
index b71bce1..ed2ca6f 100644
--- a/library/LLC_Templates.ttcn
+++ b/library/LLC_Templates.ttcn
@@ -1,3 +1,14 @@
+/* LLC Templates in TTCN-3
+ * (C) 2018-2019 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
+
 module LLC_Templates {
 
 import from LLC_Types all;
diff --git a/library/MGCP_CodecPort.ttcn b/library/MGCP_CodecPort.ttcn
index c206986..d33afe1 100644
--- a/library/MGCP_CodecPort.ttcn
+++ b/library/MGCP_CodecPort.ttcn
@@ -5,10 +5,13 @@
  * which carry the decoded MGCP data types as payload.
  *
  * (C) 2017 by Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
  * 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 IPL4asp_PortType all;
diff --git a/library/MGCP_Emulation.ttcn b/library/MGCP_Emulation.ttcn
index 3dfbbc8..23cfeb4 100644
--- a/library/MGCP_Emulation.ttcn
+++ b/library/MGCP_Emulation.ttcn
@@ -25,6 +25,8 @@
  *
  * 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 MGCP_CodecPort all;
diff --git a/library/MNCC_Emulation.ttcn b/library/MNCC_Emulation.ttcn
index 94ed1c4..ee9b58e 100644
--- a/library/MNCC_Emulation.ttcn
+++ b/library/MNCC_Emulation.ttcn
@@ -27,6 +27,8 @@
  *
  * 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
  */
 
 
diff --git a/library/MNCC_Types.ttcn b/library/MNCC_Types.ttcn
index f5028d2..828f341 100644
--- a/library/MNCC_Types.ttcn
+++ b/library/MNCC_Types.ttcn
@@ -1,3 +1,15 @@
+/* Osmocom MNCC type definitions in TTCN-3
+ * (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom -s.f.m.c. GmbH
+ * (C) 2018 Vadim Yanitskiy <axilirator@gmail.com>
+ * 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
+ */
+
 module MNCC_Types {
 
 import from Osmocom_Types all;
diff --git a/library/NS_Emulation.ttcn b/library/NS_Emulation.ttcn
index 89e25ea..697a482 100644
--- a/library/NS_Emulation.ttcn
+++ b/library/NS_Emulation.ttcn
@@ -1,3 +1,14 @@
+/* GPRS-NS Emulation in TTCN-3
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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
+ */
+
 module NS_Emulation {
 	import from NS_Types all;
 	import from BSSGP_Types all;
diff --git a/library/NS_Types.ttcn b/library/NS_Types.ttcn
index ba1c461..6432d6c 100644
--- a/library/NS_Types.ttcn
+++ b/library/NS_Types.ttcn
@@ -1,3 +1,13 @@
+/* GPRS-NS type definitions in TTCN-3
+ * (C) 2017 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
 module NS_Types {
 	import from General_Types all;
 	import from Osmocom_Types all;
diff --git a/library/Native_FunctionDefs.cc b/library/Native_FunctionDefs.cc
index 8aa31b4..f6d5d1d 100644
--- a/library/Native_FunctionDefs.cc
+++ b/library/Native_FunctionDefs.cc
@@ -1,7 +1,13 @@
 
 /* Utility functions that I'm used to from C but for which I couldn't find TTCN-3 implementations
  *
- * (C) 2017 by Harald Welte <laforge@gnumonks.org>
+ * (C) 2017 Harald Welte <laforge@gnumonks.org>
+ * 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
  */
 
 #include <sys/socket.h>
diff --git a/library/Osmocom_CTRL_Adapter.ttcn b/library/Osmocom_CTRL_Adapter.ttcn
index f1002bd..93e893f 100644
--- a/library/Osmocom_CTRL_Adapter.ttcn
+++ b/library/Osmocom_CTRL_Adapter.ttcn
@@ -1,6 +1,15 @@
 module Osmocom_CTRL_Adapter {
 
-/* Module that test suites can 'inherit' in order to have a CTRL connection to the IUT which they're testing */
+/* Module that test suites can 'inherit' in order to have a CTRL connection to the IUT which they're testing
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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 IPL4asp_Types all;
 
diff --git a/library/Osmocom_CTRL_Types.ttcn b/library/Osmocom_CTRL_Types.ttcn
index 1d77668..eb22056 100644
--- a/library/Osmocom_CTRL_Types.ttcn
+++ b/library/Osmocom_CTRL_Types.ttcn
@@ -3,11 +3,13 @@
 /* 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@gnumonks.org>
+ * (C) 2017-2018 by Harald Welte <laforge@gnumonks.org>
  * 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
  */
 
 type charstring CtrlVerb ("GET", "SET") with {
diff --git a/library/Osmocom_Types.ttcn b/library/Osmocom_Types.ttcn
index 2a4f68c..ffd5df5 100644
--- a/library/Osmocom_Types.ttcn
+++ b/library/Osmocom_Types.ttcn
@@ -1,3 +1,13 @@
+/* Osmocom utility type definitions in TTCN-3
+ * (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
 module Osmocom_Types {
 
 	import from General_Types all;
diff --git a/library/Osmocom_VTY_Functions.ttcn b/library/Osmocom_VTY_Functions.ttcn
index fde05b3..b61a655 100644
--- a/library/Osmocom_VTY_Functions.ttcn
+++ b/library/Osmocom_VTY_Functions.ttcn
@@ -1,3 +1,14 @@
+/* Osmocom VTY interface functions in TTCN-3
+ * (C) 2017-2018 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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
+ */
+
 module Osmocom_VTY_Functions {
 	import from TELNETasp_PortType all;
 	import from Osmocom_Types all;
diff --git a/library/PAP_Types.ttcn b/library/PAP_Types.ttcn
index 4e3f14f..eb0c1d1 100644
--- a/library/PAP_Types.ttcn
+++ b/library/PAP_Types.ttcn
@@ -5,6 +5,8 @@
  *
  * 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 Osmocom_Types all;
diff --git a/library/PCUIF_CodecPort.ttcn b/library/PCUIF_CodecPort.ttcn
index cc86fee..91f9bf9 100644
--- a/library/PCUIF_CodecPort.ttcn
+++ b/library/PCUIF_CodecPort.ttcn
@@ -1,3 +1,14 @@
+/* PCU Interface codec poart in TTCN-3
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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
+ */
+
 module PCUIF_CodecPort {
 
 import from Osmocom_Types all;
diff --git a/library/PCUIF_Types.ttcn b/library/PCUIF_Types.ttcn
index 455082a..132b72d 100644
--- a/library/PCUIF_Types.ttcn
+++ b/library/PCUIF_Types.ttcn
@@ -1,10 +1,19 @@
+/* Osmocom PCU Interface Types, as per osmo-pcu/include/osmocom/pcu/pcuif_proto.h
+ * (C) 2018-2019 Harald Welte <laforge@gnumonks.org>
+ * contributions by Vadim Yanitskiy <axilirator@gmail.com>
+ * 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
+ */
+
 module PCUIF_Types {
 
 import from General_Types all;
 import from Osmocom_Types all;
 
-/* Osmocom PCU Interface Types, as per osmo-pcu/include/osmocom/pcu/pcuif_proto.h */
-
 const charstring PCU_SOCK_DEFAULT := "/tmp/pcu_bts";
 const uint32_t PCU_IF_VERSION := 9;
 
diff --git a/library/RAN_Adapter.ttcnpp b/library/RAN_Adapter.ttcnpp
index 27d22ca..30a1a9e 100644
--- a/library/RAN_Adapter.ttcnpp
+++ b/library/RAN_Adapter.ttcnpp
@@ -5,6 +5,16 @@
  * with deoded BSSAP/RANAP payload.  Use this if you want to have full control about what you transmit or
  * receive, without any automatisms in place.  Allows you to refuse connections or other abnormal behavior. */
 
+/* (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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 Osmocom_Types all;
 
diff --git a/library/RLCMAC_CSN1_Types.ttcn b/library/RLCMAC_CSN1_Types.ttcn
index 9a7c867..1c8e74c 100644
--- a/library/RLCMAC_CSN1_Types.ttcn
+++ b/library/RLCMAC_CSN1_Types.ttcn
@@ -1,7 +1,17 @@
 /* GPRS RLC/MAC Control Messages as per 3GPP TS 44.060 manually transcribed from the CSN.1 syntax, as no CSN.1
  * tool for Eclipse TITAN could be found.  Implements only the minimum necessary messages for Osmocom teseting
- * purposes.
- * (C) 2017 by Harald Welte <laforge@gnumonks.org> */
+ * purposes. */
+
+/* (C) 2017-2018 Harald Welte <laforge@gnumonks.org>
+ * contributions by sysmocom - s.f.m.c. GmbH
+ * 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
+ */
+
 module RLCMAC_CSN1_Types {
 	import from General_Types all;
 	import from Osmocom_Types all;
diff --git a/library/RLCMAC_EncDec.cc b/library/RLCMAC_EncDec.cc
index 0c1dd84..4ae65b1 100644
--- a/library/RLCMAC_EncDec.cc
+++ b/library/RLCMAC_EncDec.cc
@@ -4,6 +4,12 @@
  * beyond what TITAN RAW coder can handle internally.
  *
  * (C) 2017 by Harald Welte <laforge@gnumonks.org>
+ * 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
  */
 
 namespace RLCMAC__Types {
diff --git a/library/RLCMAC_Types.ttcn b/library/RLCMAC_Types.ttcn
index c946594..f3deafc 100644
--- a/library/RLCMAC_Types.ttcn
+++ b/library/RLCMAC_Types.ttcn
@@ -1,4 +1,14 @@
 /* TITAN REW encode/decode definitions for 3GPP TS 44.060 RLC/MAC Blocks */
+
+/* (C) 2017-2018 Harald Welte <laforge@gnumonks.org>
+ * 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
+ */
+
 module RLCMAC_Types {
 	import from General_Types all;
 	import from Osmocom_Types all;
diff --git a/library/RSL_Emulation.ttcn b/library/RSL_Emulation.ttcn
index cdeca74..790dd7a 100644
--- a/library/RSL_Emulation.ttcn
+++ b/library/RSL_Emulation.ttcn
@@ -21,6 +21,8 @@
  *
  * 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 Misc_Helpers all;
diff --git a/library/RSL_Types.ttcn b/library/RSL_Types.ttcn
index bfa0af4..4d23c3f 100644
--- a/library/RSL_Types.ttcn
+++ b/library/RSL_Types.ttcn
@@ -9,6 +9,8 @@
  *
  * 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;
diff --git a/library/RTP_CodecPort.ttcn b/library/RTP_CodecPort.ttcn
index 8f85fd9..b94ae73 100644
--- a/library/RTP_CodecPort.ttcn
+++ b/library/RTP_CodecPort.ttcn
@@ -9,6 +9,8 @@
  *
  * 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 IPL4asp_PortType all;
diff --git a/library/RTP_Emulation.ttcn b/library/RTP_Emulation.ttcn
index 7b9be68..31bf68a 100644
--- a/library/RTP_Emulation.ttcn
+++ b/library/RTP_Emulation.ttcn
@@ -14,6 +14,17 @@
  *  * enable/disable generation/verification of RTCP
  */
 
+/* (C) 2017-2018 Harald Welte <laforge@gnumonks.org>
+ * (C) 2018-2019 sysmocom - s.f.m.c. GmbH
+ * 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
+ */
+
+
 /* Ideas:
 
 * each component consists of transmitter and receiver
diff --git a/library/SCCP_Templates.ttcn b/library/SCCP_Templates.ttcn
index f4019b8..a5af073 100644
--- a/library/SCCP_Templates.ttcn
+++ b/library/SCCP_Templates.ttcn
@@ -3,6 +3,8 @@
  *
  * 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
  */
 
 module SCCP_Templates {
diff --git a/library/SGsAP_CodecPort.ttcn b/library/SGsAP_CodecPort.ttcn
index 2981fa2..47fe2cd 100644
--- a/library/SGsAP_CodecPort.ttcn
+++ b/library/SGsAP_CodecPort.ttcn
@@ -9,6 +9,8 @@
  *
  * 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 IPL4asp_PortType all;
diff --git a/library/SGsAP_Emulation.ttcn b/library/SGsAP_Emulation.ttcn
index 442cc7c..f91e076 100644
--- a/library/SGsAP_Emulation.ttcn
+++ b/library/SGsAP_Emulation.ttcn
@@ -23,6 +23,8 @@
  *
  * 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 SGsAP_CodecPort all;
diff --git a/library/SGsAP_Templates.ttcn b/library/SGsAP_Templates.ttcn
index 428924f..4414dd1 100644
--- a/library/SGsAP_Templates.ttcn
+++ b/library/SGsAP_Templates.ttcn
@@ -6,6 +6,8 @@
  *
  * Released under the terms of the GNU General Public License, Version 2 or
  * (at your option) any later version.
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
  */
 
 import from SGsAP_Types all;
diff --git a/library/SIP_Emulation.ttcn b/library/SIP_Emulation.ttcn
index 98f7371..e71c611 100644
--- a/library/SIP_Emulation.ttcn
+++ b/library/SIP_Emulation.ttcn
@@ -24,6 +24,8 @@
  *
  * 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 SIPmsg_Types all;
diff --git a/library/SMPP_CodecPort.ttcn b/library/SMPP_CodecPort.ttcn
index 0ac81ae..b415c09 100644
--- a/library/SMPP_CodecPort.ttcn
+++ b/library/SMPP_CodecPort.ttcn
@@ -9,6 +9,8 @@
  *
  * 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
  */
 
 
diff --git a/library/SMPP_Emulation.ttcn b/library/SMPP_Emulation.ttcn
index 6dc78e9..fdeed4b 100644
--- a/library/SMPP_Emulation.ttcn
+++ b/library/SMPP_Emulation.ttcn
@@ -7,6 +7,8 @@
  *
  * 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
  */
 
 
diff --git a/library/SS_Templates.ttcn b/library/SS_Templates.ttcn
index 6d8fcf2..069b4e9 100644
--- a/library/SS_Templates.ttcn
+++ b/library/SS_Templates.ttcn
@@ -7,6 +7,8 @@
  *
  * 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;
diff --git a/library/TRXC_Types.ttcn b/library/TRXC_Types.ttcn
index 77666d9..37b8610 100644
--- a/library/TRXC_Types.ttcn
+++ b/library/TRXC_Types.ttcn
@@ -1,5 +1,15 @@
 module TRXC_Types {
 
+/* TRX Control protocol type definitions in TTCN-3
+ * (C) 2018 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 
 type charstring TrxcType ("CMD", "RSP", "IND") with {
diff --git a/library/USSD_Helpers.ttcn b/library/USSD_Helpers.ttcn
index 5dd4bb1..0d23073 100644
--- a/library/USSD_Helpers.ttcn
+++ b/library/USSD_Helpers.ttcn
@@ -8,6 +8,8 @@
  *
  * 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;
diff --git a/mgw/MGCP_Test.ttcn b/mgw/MGCP_Test.ttcn
index ec3070e..31c2a1d 100644
--- a/mgw/MGCP_Test.ttcn
+++ b/mgw/MGCP_Test.ttcn
@@ -1,3 +1,14 @@
+/* MGW (Media Gateway) test suite in TTCN-3
+ * (C) 2017-2018 Harald Welte <laforge@gnumonks.org>
+ * (C) 2018-2019 sysmocom - s.f.m.c. GmbH
+ * 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
+ */
+
 module MGCP_Test {
 	import from Osmocom_Types all;
 	import from MGCP_Types all;
diff --git a/msc/BSC_ConnectionHandler.ttcn b/msc/BSC_ConnectionHandler.ttcn
index f83407a..c1114a6 100644
--- a/msc/BSC_ConnectionHandler.ttcn
+++ b/msc/BSC_ConnectionHandler.ttcn
@@ -1,3 +1,15 @@
+/* BSC Connection Handler of MSC test suite in TTCN-3
+ * (C) 2018-2019 Harald Welte <laforge@gnumonks.org>
+ * (C) 2018-2019 sysmocom - s.f.m.c. GmbH
+ * (C) 2018 Vadim Yanitskiy <axilirator@gmail.com>
+ * 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
+ */
+
 module BSC_ConnectionHandler {
 
 import from General_Types all;
diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn
index 0d6083e..16f7b9b 100644
--- a/msc/MSC_Tests.ttcn
+++ b/msc/MSC_Tests.ttcn
@@ -1,5 +1,17 @@
 module MSC_Tests {
 
+/* Osmocom MSC test suite in in TTCN-3
+ * (C) 2017-2019 Harald Welte <laforge@gnumonks.org>
+ * (C) 2018-2019 sysmocom - s.f.m.c. GmbH
+ * (C) 2018-2019 Vadim Yanitskiy <axilirator@gmail.com>
+ * 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
+ */
+
 friend module MSC_Tests_Iu;
 
 import from General_Types all;
diff --git a/msc/MSC_Tests_Iu.ttcn b/msc/MSC_Tests_Iu.ttcn
index 5798821..e592573 100644
--- a/msc/MSC_Tests_Iu.ttcn
+++ b/msc/MSC_Tests_Iu.ttcn
@@ -1,5 +1,15 @@
 module MSC_Tests_Iu {
 
+/* Osmocom MSC test suite for Iu interface in TTCN-3
+ * (C) 2019 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 
diff --git a/pcu/GPRS_TBF.ttcn b/pcu/GPRS_TBF.ttcn
index 951cf4a..9fbe191 100644
--- a/pcu/GPRS_TBF.ttcn
+++ b/pcu/GPRS_TBF.ttcn
@@ -7,9 +7,10 @@
  *
  * 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 GSM_Types all;
 import from Osmocom_Types all;
 import from General_Types all;
diff --git a/pcu/PCU_Tests.ttcn b/pcu/PCU_Tests.ttcn
index 4dce7dd..e00f92b 100644
--- a/pcu/PCU_Tests.ttcn
+++ b/pcu/PCU_Tests.ttcn
@@ -1,5 +1,15 @@
 module PCU_Tests {
 
+/* Osmocom PCU test suite in TTCN-3
+ * (C) 2018-2019 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 import from GSM_Types all;
diff --git a/pcu/PCU_Tests_RAW.ttcn b/pcu/PCU_Tests_RAW.ttcn
index 96a3f86..36db225 100644
--- a/pcu/PCU_Tests_RAW.ttcn
+++ b/pcu/PCU_Tests_RAW.ttcn
@@ -6,6 +6,15 @@
    standard procedures on the NS and BSSGP level.  The goal of these tests is to test exactly
    those NS and BSSGP implementations on the BSS (PCU) side. */
 
+/* (C) 2018-2019 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 import from GSM_Types all;
diff --git a/pcu/PCU_Tests_RAW_SNS.ttcn b/pcu/PCU_Tests_RAW_SNS.ttcn
index 9bedff9..28dd654 100644
--- a/pcu/PCU_Tests_RAW_SNS.ttcn
+++ b/pcu/PCU_Tests_RAW_SNS.ttcn
@@ -1,5 +1,15 @@
 module PCU_Tests_RAW_SNS {
 
+/* Osmocom PCU test suite for IP Sub-Network-Service (SNS) in TTCN-3
+ * (C) 2018-2019 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 import from PCU_Tests all;
 import from PCU_Tests_RAW all;
diff --git a/sccp/SCCP_Tests.ttcn b/sccp/SCCP_Tests.ttcn
index ea2522a..e76e9ac 100644
--- a/sccp/SCCP_Tests.ttcn
+++ b/sccp/SCCP_Tests.ttcn
@@ -4,6 +4,8 @@
  *
  * 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
  */
 
 module SCCP_Tests {
diff --git a/sgsn/SGSN_Tests.ttcn b/sgsn/SGSN_Tests.ttcn
index 2bdbfb9..5633183 100644
--- a/sgsn/SGSN_Tests.ttcn
+++ b/sgsn/SGSN_Tests.ttcn
@@ -1,5 +1,16 @@
 module SGSN_Tests {
 
+/* Osmocom SGSN test suite in TTCN-3
+ * (C) 2018-2019 Harald Welte <laforge@gnumonks.org>
+ * (C) 2018-2019 sysmocom - s.f.m.c. GmbH
+ * 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 Osmocom_Types all;
 import from Native_Functions all;
diff --git a/sip/SIP_Tests.ttcn b/sip/SIP_Tests.ttcn
index 67650c8..9de2723 100644
--- a/sip/SIP_Tests.ttcn
+++ b/sip/SIP_Tests.ttcn
@@ -1,5 +1,15 @@
 module SIP_Tests {
 
+/* osmo-sip-connector test suite in TTCN-3
+ * (C) 2018-2019 Harald Welte <laforge@gnumonks.org>
+ * 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 Osmocom_Types all;
 
