Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libosmo-sccp for openSUSE:Factory 
checked in at 2022-08-04 13:23:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libosmo-sccp (Old)
 and      /work/SRC/openSUSE:Factory/.libosmo-sccp.new.1521 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libosmo-sccp"

Thu Aug  4 13:23:29 2022 rev:18 rq:992628 version:1.6.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/libosmo-sccp/libosmo-sccp.changes        
2021-11-20 02:40:50.064444723 +0100
+++ /work/SRC/openSUSE:Factory/.libosmo-sccp.new.1521/libosmo-sccp.changes      
2022-08-04 13:23:48.200556515 +0200
@@ -1,0 +2,7 @@
+Wed Aug  3 16:35:16 UTC 2022 - Jan Engelhardt <jeng...@inai.de>
+
+- Update to release 1.6.0
+  * Add ss7 instances to osmo_ss7_instances in creation order
+  * M3UA/SUA: Implement handling of SCON (signaling congestion)
+
+-------------------------------------------------------------------

Old:
----
  1.5.0.tar.gz

New:
----
  1.6.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libosmo-sccp.spec ++++++
--- /var/tmp/diff_new_pack.uUr3RK/_old  2022-08-04 13:23:48.720557990 +0200
+++ /var/tmp/diff_new_pack.uUr3RK/_new  2022-08-04 13:23:48.724558001 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package libosmo-sccp
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           libosmo-sccp
-Version:        1.5.0
+Version:        1.6.0
 Release:        0
 %define libversion %(echo "%version" | sed 's/\\./_/g')
 Summary:        Osmocom library for the A-bis interface between BTS and BSC
@@ -34,10 +34,10 @@
 BuildRequires:  lksctp-tools-devel
 BuildRequires:  pkg-config >= 0.20
 BuildRequires:  systemd-rpm-macros
-BuildRequires:  pkgconfig(libosmo-netif) >= 1.1.0
-BuildRequires:  pkgconfig(libosmocore) >= 1.5.0
-BuildRequires:  pkgconfig(libosmogsm) >= 1.5.0
-BuildRequires:  pkgconfig(libosmovty) >= 1.5.0
+BuildRequires:  pkgconfig(libosmo-netif) >= 1.2.0
+BuildRequires:  pkgconfig(libosmocore) >= 1.7.0
+BuildRequires:  pkgconfig(libosmogsm) >= 1.7.0
+BuildRequires:  pkgconfig(libosmovty) >= 1.7.0
 
 %description
 SCCP is a network layer protocol that provides extended routing, flow

++++++ 0001-build-fixes.patch ++++++
--- /var/tmp/diff_new_pack.uUr3RK/_old  2022-08-04 13:23:48.768558126 +0200
+++ /var/tmp/diff_new_pack.uUr3RK/_new  2022-08-04 13:23:48.772558138 +0200
@@ -20,22 +20,22 @@
  tests/xua/Makefile.am  |    6 ++----
  8 files changed, 24 insertions(+), 17 deletions(-)
 
-Index: libosmo-sccp-1.4.0/configure.ac
+Index: libosmo-sccp-1.6.0/configure.ac
 ===================================================================
---- libosmo-sccp-1.4.0.orig/configure.ac
-+++ libosmo-sccp-1.4.0/configure.ac
+--- libosmo-sccp-1.6.0.orig/configure.ac
++++ libosmo-sccp-1.6.0/configure.ac
 @@ -36,6 +36,7 @@ if test "x$PKG_CONFIG_INSTALLED" = "xno"
  fi
  PKG_PROG_PKG_CONFIG([0.20])
  
 +PKG_CHECK_MODULES([TALLOC], [talloc])
- PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.5.0)
- PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.5.0)
- PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.5.0)
-Index: libosmo-sccp-1.4.0/libosmo-mtp.pc.in
+ PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.7.0)
+ PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.7.0)
+ PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.7.0)
+Index: libosmo-sccp-1.6.0/libosmo-mtp.pc.in
 ===================================================================
---- libosmo-sccp-1.4.0.orig/libosmo-mtp.pc.in
-+++ libosmo-sccp-1.4.0/libosmo-mtp.pc.in
+--- libosmo-sccp-1.6.0.orig/libosmo-mtp.pc.in
++++ libosmo-sccp-1.6.0/libosmo-mtp.pc.in
 @@ -6,5 +6,5 @@ includedir=@includedir@
  Name: Osmo MTP Lib
  Description: Osmo MTP Lib
@@ -43,10 +43,10 @@
 -Libs: -L${libdir} -lmtp
 +Libs: -L${libdir} -losmo-mtp
  Cflags: -I${includedir}/
-Index: libosmo-sccp-1.4.0/libosmo-sccp.pc.in
+Index: libosmo-sccp-1.6.0/libosmo-sccp.pc.in
 ===================================================================
---- libosmo-sccp-1.4.0.orig/libosmo-sccp.pc.in
-+++ libosmo-sccp-1.4.0/libosmo-sccp.pc.in
+--- libosmo-sccp-1.6.0.orig/libosmo-sccp.pc.in
++++ libosmo-sccp-1.6.0/libosmo-sccp.pc.in
 @@ -6,5 +6,5 @@ includedir=@includedir@
  Name: OpenBSC SCCP Lib
  Description: OpenBSC SCCP Lib
@@ -54,11 +54,11 @@
 -Libs: -L${libdir} -lsccp
 +Libs: -L${libdir} -losmo-sccp
  Cflags: -I${includedir}/
-Index: libosmo-sccp-1.4.0/src/Makefile.am
+Index: libosmo-sccp-1.6.0/src/Makefile.am
 ===================================================================
---- libosmo-sccp-1.4.0.orig/src/Makefile.am
-+++ libosmo-sccp-1.4.0/src/Makefile.am
-@@ -7,15 +7,21 @@ noinst_HEADERS = sccp_internal.h xua_asp
+--- libosmo-sccp-1.6.0.orig/src/Makefile.am
++++ libosmo-sccp-1.6.0/src/Makefile.am
+@@ -7,15 +7,21 @@ noinst_HEADERS = sccp_internal.h ss7_int
  # Legacy static libs
  
  sccpdir = $(libdir)
@@ -93,20 +93,20 @@
 +noinst_LTLIBRARIES = libosmo-sigtran-internal.la
 +libosmo_sigtran_internal_la_SOURCES = $(libosmo_sigtran_la_SOURCES)
 +libosmo_sigtran_internal_la_LIBADD = $(libosmo_sigtran_la_LIBADD)
-Index: libosmo-sccp-1.4.0/tests/m2ua/Makefile.am
+Index: libosmo-sccp-1.6.0/tests/m2ua/Makefile.am
 ===================================================================
---- libosmo-sccp-1.4.0.orig/tests/m2ua/Makefile.am
-+++ libosmo-sccp-1.4.0/tests/m2ua/Makefile.am
+--- libosmo-sccp-1.6.0.orig/tests/m2ua/Makefile.am
++++ libosmo-sccp-1.6.0/tests/m2ua/Makefile.am
 @@ -5,4 +5,4 @@ EXTRA_DIST = m2ua_test.ok
  
- noinst_PROGRAMS = m2ua_test
+ check_PROGRAMS = m2ua_test
  m2ua_test_SOURCES = m2ua_test.c
 -m2ua_test_LDADD = $(top_builddir)/src/libxua.a $(LIBOSMOCORE_LIBS)
 +m2ua_test_LDADD = $(top_builddir)/src/libosmo-xua.la $(LIBOSMOCORE_LIBS) 
${TALLOC_LIBS}
-Index: libosmo-sccp-1.4.0/tests/sccp/Makefile.am
+Index: libosmo-sccp-1.6.0/tests/sccp/Makefile.am
 ===================================================================
---- libosmo-sccp-1.4.0.orig/tests/sccp/Makefile.am
-+++ libosmo-sccp-1.4.0/tests/sccp/Makefile.am
+--- libosmo-sccp-1.6.0.orig/tests/sccp/Makefile.am
++++ libosmo-sccp-1.6.0/tests/sccp/Makefile.am
 @@ -1,13 +1,13 @@
 -AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include
 +AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include ${TALLOC_CFLAGS}
@@ -114,7 +114,7 @@
  
  EXTRA_DIST = sccp_test.ok
  
- noinst_PROGRAMS = sccp_test
+ check_PROGRAMS = sccp_test
  
 -sccp_test_SOURCES = sccp_test.c
 +sccp_test_SOURCES = sccp_test.c ${top_srcdir}/src/sccp.c
@@ -124,10 +124,10 @@
 +      ${TALLOC_LIBS} \
        $(NULL)
  
-Index: libosmo-sccp-1.4.0/tests/ss7/Makefile.am
+Index: libosmo-sccp-1.6.0/tests/ss7/Makefile.am
 ===================================================================
---- libosmo-sccp-1.4.0.orig/tests/ss7/Makefile.am
-+++ libosmo-sccp-1.4.0/tests/ss7/Makefile.am
+--- libosmo-sccp-1.6.0.orig/tests/ss7/Makefile.am
++++ libosmo-sccp-1.6.0/tests/ss7/Makefile.am
 @@ -1,7 +1,5 @@
  AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include -Wall
  AM_CFLAGS=-Wall $(LIBOSMOCORE_CFLAGS) $(LIBOSMOVTY_CFLAGS)
@@ -136,10 +136,10 @@
  LDADD = $(top_builddir)/src/libosmo-sigtran.la \
        $(LIBOSMOCORE_LIBS) $(LIBOSMOVTY_LIBS) $(LIBOSMONETIF_LIBS) 
$(LIBSCTP_LIBS)
  
-Index: libosmo-sccp-1.4.0/tests/xua/Makefile.am
+Index: libosmo-sccp-1.6.0/tests/xua/Makefile.am
 ===================================================================
---- libosmo-sccp-1.4.0.orig/tests/xua/Makefile.am
-+++ libosmo-sccp-1.4.0/tests/xua/Makefile.am
+--- libosmo-sccp-1.6.0.orig/tests/xua/Makefile.am
++++ libosmo-sccp-1.6.0/tests/xua/Makefile.am
 @@ -1,8 +1,6 @@
 -AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include -Wall
 +AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include -Wall 
$(LIBOSMOCORE_CFLAGS) $(LIBOSMOVTY_CFLAGS) $(LIBOSMONETIF_CFLAGS) 
$(LIBSCTP_CFLAGS)

++++++ 1.5.0.tar.gz -> 1.6.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/README.md 
new/libosmo-sccp-1.6.0/README.md
--- old/libosmo-sccp-1.5.0/README.md    2021-11-16 14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/README.md    2022-06-28 18:22:14.000000000 +0200
@@ -20,10 +20,9 @@
 
 You can clone from the official git repository using
 
-       git clone git://git.osmocom.org/libosmo-sccp.git
-       git clone https://git.osmocom.org/libosmo-sccp.git
+       git clone https://gitea.osmocom.org/osmocom/libosmo-sccp
 
-There is a cgit interface at https://git.osmocom.org/libosmo-sccp/
+There is a web interface at <https://gitea.osmocom.org/osmocom/libosmo-sccp>
 
 Documentation
 -------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/configure.ac 
new/libosmo-sccp-1.6.0/configure.ac
--- old/libosmo-sccp-1.5.0/configure.ac 2021-11-16 14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/configure.ac 2022-06-28 18:22:14.000000000 +0200
@@ -36,10 +36,10 @@
 fi
 PKG_PROG_PKG_CONFIG([0.20])
 
-PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.5.0)
-PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.5.0)
-PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.5.0)
-PKG_CHECK_MODULES(LIBOSMONETIF, libosmo-netif >= 1.1.0)
+PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 1.7.0)
+PKG_CHECK_MODULES(LIBOSMOVTY, libosmovty >= 1.7.0)
+PKG_CHECK_MODULES(LIBOSMOGSM, libosmogsm >= 1.7.0)
+PKG_CHECK_MODULES(LIBOSMONETIF, libosmo-netif >= 1.2.0)
 
 old_LIBS=$LIBS
 AC_SEARCH_LIBS([sctp_recvmsg], [sctp], [
@@ -170,7 +170,7 @@
        AM_PATH_PYTHON
        AC_CHECK_PROG(OSMOTESTEXT_CHECK,osmo_verify_transcript_vty.py,yes)
         if test "x$OSMOTESTEXT_CHECK" != "xyes" ; then
-               AC_MSG_ERROR([Please install 
git://osmocom.org/python/osmo-python-tests to run the VTY/CTRL tests.])
+               AC_MSG_ERROR([Please install 
https://gitea.osmocom.org/cellular-infrastructure/osmo-python-tests to run the 
VTY/CTRL tests.])
        fi
 fi
 AC_MSG_CHECKING([whether to enable VTY/CTRL tests])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/contrib/libosmo-sccp.spec.in 
new/libosmo-sccp-1.6.0/contrib/libosmo-sccp.spec.in
--- old/libosmo-sccp-1.5.0/contrib/libosmo-sccp.spec.in 2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/contrib/libosmo-sccp.spec.in 2022-06-28 
18:22:14.000000000 +0200
@@ -34,10 +34,10 @@
 BuildRequires:  systemd-rpm-macros
 %endif
 BuildRequires:  xz
-BuildRequires:  pkgconfig(libosmo-netif) >= 1.1.0
-BuildRequires:  pkgconfig(libosmocore) >= 1.5.0
-BuildRequires:  pkgconfig(libosmogsm) >= 1.5.0
-BuildRequires:  pkgconfig(libosmovty) >= 1.5.0
+BuildRequires:  pkgconfig(libosmo-netif) >= 1.2.0
+BuildRequires:  pkgconfig(libosmocore) >= 1.7.0
+BuildRequires:  pkgconfig(libosmogsm) >= 1.7.0
+BuildRequires:  pkgconfig(libosmovty) >= 1.7.0
 %{?systemd_requires}
 
 %description
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/contrib/test/test-m3ua.sh 
new/libosmo-sccp-1.6.0/contrib/test/test-m3ua.sh
--- old/libosmo-sccp-1.5.0/contrib/test/test-m3ua.sh    2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/contrib/test/test-m3ua.sh    2022-06-28 
18:22:14.000000000 +0200
@@ -3,7 +3,7 @@
 # this script executes m3ua-testtool against osmo-stp.  It assumes that
 # it is called from within libosmo-sccp/contrib/test and also assumes
 # that adjacent to the libosmo-sccp, there's a check-out of
-# git://git.osmocom.org/nplab/m3ua-testtool
+# https://gitea.osmocom.org/nplab/m3ua-testtool
 
 # the top of the libosmo-sccp git repository
 TOPDIR=../../
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/contrib/test/test-sua.sh 
new/libosmo-sccp-1.6.0/contrib/test/test-sua.sh
--- old/libosmo-sccp-1.5.0/contrib/test/test-sua.sh     2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/contrib/test/test-sua.sh     2022-06-28 
18:22:14.000000000 +0200
@@ -3,7 +3,7 @@
 # this script executes m3ua-testtool against osmo-stp.  It assumes that
 # it is called from within libosmo-sccp/contrib/test and also assumes
 # that adjacent to the libosmo-sccp, there's a check-out of
-# git://git.osmocom.org/nplab/m3ua-testtool
+# https://gitea.osmocom.org/nplab/sua-testtool
 
 # the top of the libosmo-sccp git repository
 TOPDIR=../../
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/debian/changelog 
new/libosmo-sccp-1.6.0/debian/changelog
--- old/libosmo-sccp-1.5.0/debian/changelog     2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/debian/changelog     2022-06-28 18:22:14.000000000 
+0200
@@ -1,3 +1,37 @@
+libosmo-sccp (1.6.0) unstable; urgency=medium
+
+  [ Pau Espin Pedrol ]
+  * ss7: Use sctp value_string from libosmo-netif
+  * xua_default_lm_fsm.c: Fix typo in comment
+  * xua_asp_fsm: Fix gcc false positive warning
+  * Add ss7 instances to osmo_ss7_instances in creation order
+
+  [ Oliver Smith ]
+  * treewide: remove FSF address
+  * src/sccp_scmg: fix typo
+  * osmo_ss7_instance_destroy: use for_each_entry_safe
+  * include/osmocom/sigtran/sccp_sap.h: cosmetic fixes
+  * osmo_ss7_vty: add osmo_sccp_addr_by_name_local
+
+  [ Philipp Maier ]
+  * sccp_user: do not force the role ASP when configured differently
+
+  [ Harald Welte ]
+  * sccp_demo_user: Add command line argument to specify protocol (m3ua/ipa)
+  * sccp_demo_user: Add 'show stats' to VTY
+  * sccp_demo_user: make sure the command-line specified point codes are used
+  * sccp_demo_user: Allow user to specify logmask on command line
+  * sccp_demo_user: enable stats / rate_counter timers
+  * M3UA/SUA: Implement handling of SCON (signaling congestion)
+  * [cosmetic] sccp_scoc.c: fix comments about corresponding SCCP msg types
+  * [cosmetic] sccp_scoc: Fix typo in comment
+  * update git URLs (git -> https; gitea)
+
+  [ Vadim Yanitskiy ]
+  * tests: use 'check_PROGRAMS' instead of 'noinst_PROGRAMS'
+
+ -- Pau Espin Pedrol <pes...@sysmocom.de>  Tue, 28 Jun 2022 18:22:13 +0200
+
 libosmo-sccp (1.5.0) unstable; urgency=medium
 
   [ Harald Welte ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/debian/control 
new/libosmo-sccp-1.6.0/debian/control
--- old/libosmo-sccp-1.5.0/debian/control       2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/debian/control       2022-06-28 18:22:14.000000000 
+0200
@@ -5,7 +5,7 @@
 Build-Depends: debhelper (>= 9),
                autotools-dev,
                pkg-config,
-               libosmocore-dev (>= 1.5.0),
+               libosmocore-dev (>= 1.7.0),
                autoconf,
                automake,
                libtool,
@@ -13,12 +13,12 @@
                git,
                doxygen,
                libdpkg-perl,
-               libosmo-netif-dev (>= 1.1.0),
+               libosmo-netif-dev (>= 1.2.0),
                libsctp-dev,
-               osmo-gsm-manuals-dev (>= 1.1.0)
+               osmo-gsm-manuals-dev (>= 1.3.0)
 Standards-Version: 3.9.7
-Vcs-Git: git://git.osmocom.org/libosmo-sccp.git
-Vcs-Browser: http://git.osmocom.org/libosmo-sccp/
+Vcs-Git: https://gitea.osmocom.org/osmocom/libosmo-sccp
+Vcs-Browser: https://gitea.osmocom.org/osmocom/libosmo-sccp
 Homepage: https://projects.osmocom.org/projects/libosmo-sccp
 
 Package: libosmo-sccp-dev
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/examples/internal.h 
new/libosmo-sccp-1.6.0/examples/internal.h
--- old/libosmo-sccp-1.5.0/examples/internal.h  2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/examples/internal.h  2022-06-28 18:22:14.000000000 
+0200
@@ -12,6 +12,9 @@
 
 struct osmo_sccp_user;
 
+extern struct osmo_sccp_addr g_calling_addr;
+extern struct osmo_sccp_addr g_called_addr;
+
 int sccp_test_user_vty_install(struct osmo_sccp_instance *inst, int ssn);
 
 int sccp_test_server_init(struct osmo_sccp_instance *sccp);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/examples/sccp_demo_user.c 
new/libosmo-sccp-1.6.0/examples/sccp_demo_user.c
--- old/libosmo-sccp-1.5.0/examples/sccp_demo_user.c    2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/examples/sccp_demo_user.c    2022-06-28 
18:22:14.000000000 +0200
@@ -11,9 +11,12 @@
 #include <osmocom/core/logging.h>
 #include <osmocom/core/application.h>
 #include <osmocom/core/fsm.h>
+#include <osmocom/core/stats.h>
+#include <osmocom/core/rate_ctr.h>
 #include <osmocom/vty/vty.h>
 #include <osmocom/vty/telnet_interface.h>
 #include <osmocom/vty/logging.h>
+#include <osmocom/vty/stats.h>
 #include <osmocom/vty/misc.h>
 
 #include <osmocom/sigtran/osmo_ss7.h>
@@ -28,16 +31,17 @@
 
 static struct osmo_sccp_instance *g_sccp;
 
-static struct osmo_sccp_instance *sua_server_helper(int local_port, const char 
*local_address, int local_pc,
+static struct osmo_sccp_instance *sua_server_helper(enum osmo_ss7_asp_protocol 
protocol,
+                                                   int local_port, const char 
*local_address, int local_pc,
                                                    int remote_port, const char 
*remote_address, int remote_pc)
 {
        struct osmo_sccp_instance *sccp;
 
-       sccp = osmo_sccp_simple_server(NULL, local_pc, OSMO_SS7_ASP_PROT_M3UA, 
local_port, local_address);
+       sccp = osmo_sccp_simple_server(NULL, local_pc, protocol, local_port, 
local_address);
        if (sccp == NULL)
                return NULL;
 
-       osmo_sccp_simple_server_add_clnt(sccp, OSMO_SS7_ASP_PROT_M3UA, 
"client", remote_pc, local_port,
+       osmo_sccp_simple_server_add_clnt(sccp, protocol, "client", remote_pc, 
local_port,
                                         remote_port, remote_address);
 
        return sccp;
@@ -110,6 +114,7 @@
                        "             [-r REMOTE_ADDRESS[:REMOTE_PORT]]\n"
                        "             [-L LOCAL_POINT_CODE] [-R 
REMOTE_POINT_CODE]\n"
                        "Options:\n"
+                       "  -p: protocol to use (m3ua, sua, ipa; default is 
ipa)\n"
                        "  -c: Run in client mode (default is server mode)\n"
                        "  -l: local IP address and SCTP port (default is %s:%d 
in server mode,\n"
                        "                                       %s:%d in client 
mode)\n"
@@ -117,6 +122,7 @@
                        "                                       %s:%d in client 
mode)\n"
                        "  -L: local point code (default is %d in server mode, 
%d in client mode)\n"
                        "  -R: remote point code (default is %d in server mode, 
%d in client mode)\n",
+                       "  -d: LOGMASK (libosmocore log mask string, e.g. -d 
DLINP,1:DLSS7,2)\n"
                        DEFAULT_LOCAL_ADDRESS_SERVER, DEFAULT_LOCAL_PORT_SERVER,
                        DEFAULT_LOCAL_ADDRESS_CLIENT, DEFAULT_LOCAL_PORT_CLIENT,
                        DEFAULT_REMOTE_ADDRESS_SERVER, 
DEFAULT_REMOTE_PORT_SERVER,
@@ -179,9 +185,19 @@
        int remote_port = DEFAULT_REMOTE_PORT_SERVER;
        int remote_pc = DEFAULT_PC_CLIENT;
        bool lflag = false, rflag = false, Lflag = false, Rflag = false;
+       enum osmo_ss7_asp_protocol protocol = OSMO_SS7_ASP_PROT_M3UA;
 
-       while ((ch = getopt(argc, argv, "cl:r:L:R:C:")) != -1) {
+       void *tall_ctx = talloc_named_const(NULL, 1, "sccp_demo_user");
+       init_logging(tall_ctx);
+
+       while ((ch = getopt(argc, argv, "p:cl:r:L:R:C:d:")) != -1) {
                switch (ch) {
+               case 'p':
+                       rc = get_string_value(osmo_ss7_asp_protocol_vals, 
optarg);
+                       if (rc < 0)
+                               exit(1);
+                       protocol = rc;
+                       break;
                case 'c':
                        client = true;
 
@@ -228,6 +244,9 @@
                case 'C':
                        config_file = optarg;
                        break;
+               case 'd':
+                       log_parse_category_mask(osmo_stderr_target, optarg);
+                       break;
                default:
                        usage();
                }
@@ -243,14 +262,15 @@
        signal(SIGUSR1, &signal_handler);
        signal(SIGUSR2, &signal_handler);
 
-       void *tall_ctx = talloc_named_const(NULL, 1, "sccp_demo_user");
-       init_logging(tall_ctx);
+       osmo_stats_init(tall_ctx);
+       rate_ctr_init(tall_ctx);
        OSMO_ASSERT(osmo_ss7_init() == 0);
        osmo_fsm_log_addr(false);
        vty_info.tall_ctx = tall_ctx;
        vty_init(&vty_info);
        logging_vty_add_cmds();
        osmo_talloc_vty_add_cmds();
+       osmo_stats_vty_add_cmds();
        osmo_fsm_vty_add_cmds();
        osmo_ss7_vty_init_asp(NULL);
        osmo_sccp_vty_init();
@@ -273,7 +293,7 @@
        }
 
        if (client) {
-               g_sccp = osmo_sccp_simple_client(NULL, "client", local_pc, 
OSMO_SS7_ASP_PROT_M3UA,
+               g_sccp = osmo_sccp_simple_client(NULL, "client", local_pc, 
protocol,
                                                 local_port, local_address, 
remote_port, remote_address);
                if (g_sccp == NULL) {
                        perror("Could not create SCCP client");
@@ -281,7 +301,7 @@
                }
                sccp_test_user_vty_install(g_sccp, OSMO_SCCP_SSN_BSSAP);
        } else {
-               g_sccp = sua_server_helper(local_port, local_address, local_pc,
+               g_sccp = sua_server_helper(protocol, local_port, local_address, 
local_pc,
                                           remote_port, remote_address, 
remote_pc);
                if (g_sccp == NULL) {
                        perror("Could not create SCCP server");
@@ -289,6 +309,8 @@
                }
                sccp_test_server_init(g_sccp);
        }
+       g_calling_addr.pc = local_pc;
+       g_called_addr.pc = remote_pc;
 
        while (1) {
                osmo_select_main(0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/examples/sccp_test_vty.c 
new/libosmo-sccp-1.6.0/examples/sccp_test_vty.c
--- old/libosmo-sccp-1.5.0/examples/sccp_test_vty.c     2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/examples/sccp_test_vty.c     2022-06-28 
18:22:14.000000000 +0200
@@ -13,13 +13,13 @@
 
 static struct osmo_sccp_user *g_scu;
 
-static struct osmo_sccp_addr g_calling_addr = {
+struct osmo_sccp_addr g_calling_addr = {
        .presence = OSMO_SCCP_ADDR_T_SSN | OSMO_SCCP_ADDR_T_PC,
        .ri = OSMO_SCCP_RI_SSN_PC,
        .pc = 23,
 };
 
-static struct osmo_sccp_addr g_called_addr = {
+struct osmo_sccp_addr g_called_addr = {
        .presence = OSMO_SCCP_ADDR_T_SSN | OSMO_SCCP_ADDR_T_PC,
        .ssn = 1,
        .ri = OSMO_SCCP_RI_SSN_PC,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/include/osmocom/mtp/mtp_level3.h 
new/libosmo-sccp-1.6.0/include/osmocom/mtp/mtp_level3.h
--- old/libosmo-sccp-1.5.0/include/osmocom/mtp/mtp_level3.h     2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/include/osmocom/mtp/mtp_level3.h     2022-06-28 
18:22:14.000000000 +0200
@@ -14,10 +14,6 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- *
  */
 
 #pragma once
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/include/osmocom/mtp/mtp_pcap.h 
new/libosmo-sccp-1.6.0/include/osmocom/mtp/mtp_pcap.h
--- old/libosmo-sccp-1.5.0/include/osmocom/mtp/mtp_pcap.h       2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/include/osmocom/mtp/mtp_pcap.h       2022-06-28 
18:22:14.000000000 +0200
@@ -13,10 +13,6 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- *
  */
 #ifndef mtp_pcap_h
 #define mtp_pcap_h
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/include/osmocom/sccp/sccp.h 
new/libosmo-sccp-1.6.0/include/osmocom/sccp/sccp.h
--- old/libosmo-sccp-1.5.0/include/osmocom/sccp/sccp.h  2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/include/osmocom/sccp/sccp.h  2022-06-28 
18:22:14.000000000 +0200
@@ -16,10 +16,6 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- *
  */
 
 #ifndef SCCP_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/include/osmocom/sccp/sccp_types.h 
new/libosmo-sccp-1.6.0/include/osmocom/sccp/sccp_types.h
--- old/libosmo-sccp-1.5.0/include/osmocom/sccp/sccp_types.h    2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/include/osmocom/sccp/sccp_types.h    2022-06-28 
18:22:14.000000000 +0200
@@ -15,10 +15,6 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- *
  */
 
 #ifndef SCCP_TYPES_H
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/libosmo-sccp-1.5.0/include/osmocom/sigtran/sccp_sap.h 
new/libosmo-sccp-1.6.0/include/osmocom/sigtran/sccp_sap.h
--- old/libosmo-sccp-1.5.0/include/osmocom/sigtran/sccp_sap.h   2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/include/osmocom/sigtran/sccp_sap.h   2022-06-28 
18:22:14.000000000 +0200
@@ -281,8 +281,7 @@
 
 void osmo_sccp_vty_init(void);
 
-struct osmo_sccp_instance *
-osmo_sccp_instance_create(struct osmo_ss7_instance *ss7, void *priv);
+struct osmo_sccp_instance *osmo_sccp_instance_create(struct osmo_ss7_instance 
*ss7, void *priv);
 void osmo_sccp_instance_destroy(struct osmo_sccp_instance *inst);
 struct osmo_ss7_instance *osmo_sccp_get_ss7(const struct osmo_sccp_instance 
*sccp);
 struct osmo_sccp_instance *osmo_sccp_get_sccp(const struct osmo_sccp_user 
*scu);
@@ -291,22 +290,19 @@
 void osmo_sccp_user_set_priv(struct osmo_sccp_user *scu, void *priv);
 void *osmo_sccp_user_get_priv(struct osmo_sccp_user *scu);
 
-struct osmo_sccp_user *
-osmo_sccp_user_bind_pc(struct osmo_sccp_instance *inst, const char *name,
-                      osmo_prim_cb prim_cb, uint16_t ssn, uint32_t pc);
-
-struct osmo_sccp_user *
-osmo_sccp_user_bind(struct osmo_sccp_instance *inst, const char *name,
-                   osmo_prim_cb prim_cb, uint16_t ssn);
-struct osmo_sccp_user *
-osmo_sccp_user_find(struct osmo_sccp_instance *inst, uint16_t ssn, uint32_t 
pc);
+struct osmo_sccp_user *osmo_sccp_user_bind_pc(struct osmo_sccp_instance *inst, 
const char *name,
+                                             osmo_prim_cb prim_cb, uint16_t 
ssn, uint32_t pc);
+
+struct osmo_sccp_user *osmo_sccp_user_bind(struct osmo_sccp_instance *inst, 
const char *name,
+                                          osmo_prim_cb prim_cb, uint16_t ssn);
+struct osmo_sccp_user *osmo_sccp_user_find(struct osmo_sccp_instance *inst, 
uint16_t ssn, uint32_t pc);
 
 int osmo_sccp_user_sap_down(struct osmo_sccp_user *scu, struct osmo_prim_hdr 
*oph);
 int osmo_sccp_user_sap_down_nofree(struct osmo_sccp_user *scu, struct 
osmo_prim_hdr *oph);
 
-struct osmo_ss7_instance *
-osmo_sccp_addr_by_name(struct osmo_sccp_addr *dest_addr,
-                      const char *name);
+struct osmo_ss7_instance *osmo_sccp_addr_by_name(struct osmo_sccp_addr 
*dest_addr, const char *name);
+int osmo_sccp_addr_by_name_local(struct osmo_sccp_addr *dest_addr, const char 
*name,
+                                const struct osmo_ss7_instance *inst);
 
 const char *osmo_sccp_name_by_addr(const struct osmo_sccp_addr *addr);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/Makefile.am 
new/libosmo-sccp-1.6.0/src/Makefile.am
--- old/libosmo-sccp-1.5.0/src/Makefile.am      2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/Makefile.am      2022-06-28 18:22:14.000000000 
+0200
@@ -25,7 +25,7 @@
 # This is _NOT_ the library release version, it's an API version.
 # Please read Chapter 6 "Library interface versions" of the libtool
 # documentation before making any modification
-LIBVERSION=7:0:0
+LIBVERSION=7:1:0
 
 libosmo_sigtran_la_SOURCES = sccp_sap.c sua.c m3ua.c xua_msg.c sccp_helpers.c \
                             sccp2sua.c sccp_scrc.c sccp_sclc.c sccp_scoc.c \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/m3ua.c 
new/libosmo-sccp-1.6.0/src/m3ua.c
--- old/libosmo-sccp-1.5.0/src/m3ua.c   2021-11-16 14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/src/m3ua.c   2022-06-28 18:22:14.000000000 +0200
@@ -864,6 +864,40 @@
        xua_msg_free(xua);
 }
 
+/*! Transmit SSNM SCON message indicating congestion
+ *  \param[in] asp ASP through which to transmit message. Must be ACTIVE.
+ *  \param[in] rctx array of Routing Contexts in network byte order.
+ *  \param[in] num_rctx number of rctx
+ *  \param[in] aff_pc array of 'Affected Point Code' in network byte order.
+ *  \param[in] num_aff_pc number of aff_pc
+ *  \param[in] concerned_dpc optional concerned DPC (can be NULL)
+ *  \param[in] cong_level optional congestion level (can be NULL)
+ *  \param[in] info_string optional information string (can be NULL). */
+void m3ua_tx_snm_congestion(struct osmo_ss7_asp *asp, const uint32_t *rctx, 
unsigned int num_rctx,
+                           const uint32_t *aff_pc, unsigned int num_aff_pc,
+                           const uint32_t *concerned_dpc, const uint8_t 
*cong_level,
+                           const char *info_string)
+{
+       struct xua_msg *xua = xua_msg_alloc();
+
+       xua->hdr = XUA_HDR(M3UA_MSGC_SNM, M3UA_SNM_SCON);
+       xua->hdr.version = M3UA_VERSION;
+       if (rctx)
+               xua_msg_add_data(xua, M3UA_IEI_ROUTE_CTX, num_rctx * 
sizeof(*rctx), (const uint8_t *)rctx);
+
+       xua_msg_add_data(xua, M3UA_IEI_AFFECTED_PC, num_aff_pc * 
sizeof(*aff_pc), (const uint8_t *) aff_pc);
+
+       if (concerned_dpc)
+               xua_msg_add_u32(xua, M3UA_IEI_CONC_DEST, *concerned_dpc & 
0xffffff);
+       if (cong_level)
+               xua_msg_add_u32(xua, M3UA_IEI_CONG_IND, *cong_level & 0xff);
+       if (info_string)
+               xua_msg_add_data(xua, M3UA_IEI_INFO_STRING, 
strlen(info_string)+1, (const uint8_t *) info_string);
+
+       m3ua_tx_xua_asp(asp, xua);
+       xua_msg_free(xua);
+}
+
 /*! Transmit SSNM DUPU message indicating user unavailability.
  *  \param[in] asp ASP through which to transmit message. Must be ACTIVE.
  *  \param[in] rctx array of Routing Contexts in network byte order.
@@ -903,6 +937,8 @@
                xua_snm_rx_dupu(asp, as, xua);
                break;
        case M3UA_SNM_SCON:
+               xua_snm_rx_scon(asp, as, xua);
+               break;
        case M3UA_SNM_DRST:
                LOGPASP(asp, DLM3UA, LOGL_NOTICE, "Received unsupported M3UA 
SNM message type %u\n",
                        xua->hdr.msg_type);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/mtp_pcap.c 
new/libosmo-sccp-1.6.0/src/mtp_pcap.c
--- old/libosmo-sccp-1.5.0/src/mtp_pcap.c       2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/mtp_pcap.c       2022-06-28 18:22:14.000000000 
+0200
@@ -16,10 +16,6 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- *
  */
 
 #include <osmocom/mtp/mtp_pcap.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/osmo_ss7.c 
new/libosmo-sccp-1.6.0/src/osmo_ss7.c
--- old/libosmo-sccp-1.5.0/src/osmo_ss7.c       2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/osmo_ss7.c       2022-06-28 18:22:14.000000000 
+0200
@@ -45,6 +45,7 @@
 
 #include <osmocom/netif/stream.h>
 #include <osmocom/netif/ipa.h>
+#include <osmocom/netif/sctp.h>
 
 #include "sccp_internal.h"
 #include "xua_internal.h"
@@ -398,7 +399,7 @@
        inst->cfg.pc_fmt.component_len[1] = 8;
        inst->cfg.pc_fmt.component_len[2] = 3;
 
-       llist_add(&inst->list, &osmo_ss7_instances);
+       llist_add_tail(&inst->list, &osmo_ss7_instances);
 
        INIT_LLIST_HEAD(&inst->cfg.sccp_address_book);
 
@@ -409,20 +410,20 @@
  *  \param[in] inst SS7 Instance to be destroyed */
 void osmo_ss7_instance_destroy(struct osmo_ss7_instance *inst)
 {
-       struct osmo_ss7_linkset *lset;
-       struct osmo_ss7_as *as;
-       struct osmo_ss7_asp *asp;
+       struct osmo_ss7_linkset *lset, *lset2;
+       struct osmo_ss7_as *as, *as2;
+       struct osmo_ss7_asp *asp, *asp2;
 
        OSMO_ASSERT(ss7_initialized);
        LOGSS7(inst, LOGL_INFO, "Destroying SS7 Instance\n");
 
-       llist_for_each_entry(asp, &inst->asp_list, list)
+       llist_for_each_entry_safe(asp, asp2, &inst->asp_list, list)
                osmo_ss7_asp_destroy(asp);
 
-       llist_for_each_entry(as, &inst->as_list, list)
+       llist_for_each_entry_safe(as, as2, &inst->as_list, list)
                osmo_ss7_as_destroy(as);
 
-       llist_for_each_entry(lset, &inst->linksets, list)
+       llist_for_each_entry_safe(lset, lset2, &inst->linksets, list)
                osmo_ss7_linkset_destroy(lset);
 
        llist_del(&inst->list);
@@ -1663,32 +1664,6 @@
  * libosmo-netif integration for SCTP stream server/client
  ***********************************************************************/
 
-static const struct value_string sctp_assoc_chg_vals[] = {
-       { SCTP_COMM_UP,         "COMM_UP" },
-       { SCTP_COMM_LOST,       "COMM_LOST" },
-       { SCTP_RESTART,         "RESTART" },
-       { SCTP_SHUTDOWN_COMP,   "SHUTDOWN_COMP" },
-       { SCTP_CANT_STR_ASSOC,  "CANT_STR_ASSOC" },
-       { 0, NULL }
-};
-
-static const struct value_string sctp_sn_type_vals[] = {
-       { SCTP_ASSOC_CHANGE,            "ASSOC_CHANGE" },
-       { SCTP_PEER_ADDR_CHANGE,        "PEER_ADDR_CHANGE" },
-       { SCTP_SHUTDOWN_EVENT,          "SHUTDOWN_EVENT" },
-       { SCTP_SEND_FAILED,             "SEND_FAILED" },
-       { SCTP_REMOTE_ERROR,            "REMOTE_ERROR" },
-       { SCTP_PARTIAL_DELIVERY_EVENT,  "PARTIAL_DELIVERY_EVENT" },
-       { SCTP_ADAPTATION_INDICATION,   "ADAPTATION_INDICATION" },
-#ifdef SCTP_AUTHENTICATION_INDICATION
-       { SCTP_AUTHENTICATION_INDICATION, "AUTHENTICATION_INDICATION" },
-#endif
-#ifdef SCTP_SENDER_DRY_EVENT
-       { SCTP_SENDER_DRY_EVENT,        "SENDER_DRY_EVENT" },
-#endif
-       { 0, NULL }
-};
-
 static int get_logevel_by_sn_type(int sn_type)
 {
        switch (sn_type) {
@@ -1728,13 +1703,11 @@
        switch (notif->sn_header.sn_type) {
        case SCTP_ASSOC_CHANGE:
                LOGPASP(asp, DLSS7, log_level, "%s SCTP_ASSOC_CHANGE: %s\n",
-                       pfx, get_value_string(sctp_assoc_chg_vals,
-                               notif->sn_assoc_change.sac_state));
+                       pfx, 
osmo_sctp_assoc_chg_str(notif->sn_assoc_change.sac_state));
                break;
        default:
                LOGPASP(asp, DLSS7, log_level, "%s %s\n",
-                       pfx, get_value_string(sctp_sn_type_vals,
-                               notif->sn_header.sn_type));
+                       pfx, osmo_sctp_sn_type_str(notif->sn_header.sn_type));
                break;
        }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/osmo_ss7_vty.c 
new/libosmo-sccp-1.6.0/src/osmo_ss7_vty.c
--- old/libosmo-sccp-1.5.0/src/osmo_ss7_vty.c   2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/osmo_ss7_vty.c   2022-06-28 18:22:14.000000000 
+0200
@@ -1350,6 +1350,28 @@
        return entry->inst;
 }
 
+/*! \brief Lookup an SCCP address from the addressbook of a specific instance
+ *        by its name.
+ *  \param[out] dest_addr pointer to output the resulting sccp-address;
+ *             (set to NULL if not interested)
+ *  \param[in] name of the address to lookup
+ *  \param[in] inst ss7 instance of which the address book will be searched
+ *  \returns 0 on success; <0 on error */
+int osmo_sccp_addr_by_name_local(struct osmo_sccp_addr *dest_addr, const char 
*name,
+                                const struct osmo_ss7_instance *inst)
+{
+       struct osmo_sccp_addr_entry *entry;
+
+       entry = addr_entry_by_name_local(name, inst);
+       if (!entry)
+               return -ENOENT;
+
+       if (dest_addr)
+               *dest_addr = entry->addr;
+
+       return 0;
+}
+
 /*! \brief Reverse lookup the lookup-name of a specified SCCP address.
  *  \param[in] name of the address to lookup
  *  \returns char pointer to the lookup-name; NULL on error */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/sccp.c 
new/libosmo-sccp-1.6.0/src/sccp.c
--- old/libosmo-sccp-1.5.0/src/sccp.c   2021-11-16 14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/src/sccp.c   2022-06-28 18:22:14.000000000 +0200
@@ -18,10 +18,6 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- *
  */
 
 #include <string.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/sccp_scmg.c 
new/libosmo-sccp-1.6.0/src/sccp_scmg.c
--- old/libosmo-sccp-1.5.0/src/sccp_scmg.c      2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/sccp_scmg.c      2022-06-28 18:22:14.000000000 
+0200
@@ -308,7 +308,7 @@
 int sccp_scmg_init(struct osmo_sccp_instance *inst)
 {
        struct osmo_sccp_user *scu;
-       scu = osmo_sccp_user_bind(inst, "SCCP Maangement", scmg_prim_cb, 
SCCP_SSN_MANAGEMENT);
+       scu = osmo_sccp_user_bind(inst, "SCCP Management", scmg_prim_cb, 
SCCP_SSN_MANAGEMENT);
        if (!scu)
                return -1;
        return 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/sccp_scoc.c 
new/libosmo-sccp-1.6.0/src/sccp_scoc.c
--- old/libosmo-sccp-1.5.0/src/sccp_scoc.c      2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/sccp_scoc.c      2022-06-28 18:22:14.000000000 
+0200
@@ -615,7 +615,7 @@
                        xua_msg_add_data(xua, SUA_IEI_DATA, 
msgb_l2len(prim->oph.msg),
                                         msgb_l2(prim->oph.msg));
                break;
-       case SUA_CO_RELRE: /* Release Request == SCCP REL */
+       case SUA_CO_RELRE: /* Release Request == SCCP RLSD */
                if (!prim)
                        goto prim_needed;
                xua->hdr = XUA_HDR(SUA_MSGC_CO, SUA_CO_RELRE);
@@ -628,7 +628,7 @@
                        xua_msg_add_data(xua, SUA_IEI_DATA, 
msgb_l2len(prim->oph.msg),
                                         msgb_l2(prim->oph.msg));
                break;
-       case SUA_CO_RELCO: /* Release Confirm == SCCP RLSD */
+       case SUA_CO_RELCO: /* Release Confirm == SCCP RLC */
                xua->hdr = XUA_HDR(SUA_MSGC_CO, SUA_CO_RELCO);
                xua_msg_add_u32(xua, SUA_IEI_ROUTE_CTX, conn->inst->route_ctx);
                xua_msg_add_u32(xua, SUA_IEI_DEST_REF, conn->remote_ref);
@@ -807,7 +807,7 @@
 
 
 /***********************************************************************
- * Actual SCCP Connection Oriented Control (SCOC) Finite Stte Machine
+ * Actual SCCP Connection Oriented Control (SCOC) Finite State Machine
  ***********************************************************************/
 
 /* Figure C.2/Q.714 (sheet 1 of 7) and C.3/Q.714 (sheet 1 of 6) */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/sccp_user.c 
new/libosmo-sccp-1.6.0/src/sccp_user.c
--- old/libosmo-sccp-1.5.0/src/sccp_user.c      2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/sccp_user.c      2022-06-28 18:22:14.000000000 
+0200
@@ -633,7 +633,11 @@
 
        /* Ensure that the ASP we use is set to client mode. */
        asp->cfg.is_server = false;
-       asp->cfg.role = OSMO_SS7_ASP_ROLE_ASP;
+
+       /* Make sure that the role of this ASP is set to ASP unless the user
+        * made a concious decision about the role via the VTY */
+       if (!asp->cfg.role_set_by_vty)
+               asp->cfg.role = OSMO_SS7_ASP_ROLE_ASP;
 
        /* Restart ASP */
        if (prot != OSMO_SS7_ASP_PROT_IPA)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/sua.c 
new/libosmo-sccp-1.6.0/src/sua.c
--- old/libosmo-sccp-1.5.0/src/sua.c    2021-11-16 14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/src/sua.c    2022-06-28 18:22:14.000000000 +0200
@@ -875,6 +875,35 @@
        sua_tx_xua_asp(asp, xua);
 }
 
+
+/*! Transmit SSNM SCON message indicating congestion
+ *  \param[in] asp ASP through which to transmit message. Must be ACTIVE.
+ *  \param[in] rctx array of Routing Contexts in network byte order.
+ *  \param[in] num_rctx number of rctx
+ *  \param[in] aff_pc array of 'Affected Point Code' in network byte order.
+ *  \param[in] num_aff_pc number of aff_pc
+ *  \param[in] ssn optional SSN (can be NULL)
+ *  \param[in] cong_level optional congestion level (can be NULL)
+ *  \param[in] info_string optional information string (can be NULL). */
+void sua_tx_snm_congestion(struct osmo_ss7_asp *asp, const uint32_t *rctx, 
unsigned int num_rctx,
+                          const uint32_t *aff_pc, unsigned int num_aff_pc, 
const uint32_t *ssn,
+                          const uint8_t cong_level, const char *info_string)
+{
+       struct xua_msg *xua = xua_msg_alloc();
+
+       xua->hdr = XUA_HDR(SUA_MSGC_SNM, SUA_SNM_SCON);
+       xua->hdr.version = SUA_VERSION;
+       if (rctx)
+               xua_msg_add_data(xua, SUA_IEI_ROUTE_CTX, num_rctx * 
sizeof(*rctx), (const uint8_t *)rctx);
+       xua_msg_add_data(xua, SUA_IEI_AFFECTED_PC, num_aff_pc * 
sizeof(*aff_pc), (const uint8_t *) aff_pc);
+       if (ssn)
+               xua_msg_add_u32(xua, SUA_IEI_SSN, *ssn);
+       xua_msg_add_u32(xua, SUA_IEI_CONG_LEVEL, cong_level);
+       if (info_string)
+               xua_msg_add_data(xua, SUA_IEI_INFO_STRING, 
strlen(info_string)+1, (const uint8_t *) info_string);
+}
+
+
 /*! Transmit SSNM DUPU message indicating user unavailability.
  *  \param[in] asp ASP through which to transmit message. Must be ACTIVE.
  *  \param[in] rctx array of Routing Contexts in network byte order.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/xua_asp_fsm.c 
new/libosmo-sccp-1.6.0/src/xua_asp_fsm.c
--- old/libosmo-sccp-1.5.0/src/xua_asp_fsm.c    2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/xua_asp_fsm.c    2022-06-28 18:22:14.000000000 
+0200
@@ -473,7 +473,6 @@
        struct osmo_ss7_as *as;
        struct xua_msg *xua_in;
        uint32_t traf_mode = 0;
-       enum osmo_ss7_as_traffic_mode tmode;
        struct xua_msg_part *part;
        int i;
 
@@ -515,7 +514,6 @@
                                peer_send_error(fi, 
M3UA_ERR_UNSUPP_TRAF_MOD_TYP);
                                return;
                        }
-                       tmode = osmo_ss7_tmode_from_xua(traf_mode);
                }
                if ((part = xua_msg_find_tag(xua_in, M3UA_IEI_ROUTE_CTX))) {
                        for (i = 0; i < part->len / sizeof(uint32_t); i++) {
@@ -529,6 +527,7 @@
                }
 
                if (traf_mode) { /* if the peer has specified a traffic mode at 
all */
+                       enum osmo_ss7_as_traffic_mode tmode = 
osmo_ss7_tmode_from_xua(traf_mode);
                        llist_for_each_entry(as, &asp->inst->as_list, list) {
                                if (!osmo_ss7_as_has_asp(as, asp))
                                        continue;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/xua_default_lm_fsm.c 
new/libosmo-sccp-1.6.0/src/xua_default_lm_fsm.c
--- old/libosmo-sccp-1.5.0/src/xua_default_lm_fsm.c     2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/src/xua_default_lm_fsm.c     2022-06-28 
18:22:14.000000000 +0200
@@ -149,7 +149,7 @@
 {
        switch (event) {
        case LM_E_ASP_UP_CONF:
-               /* ASP is sup, wait for some time if any NOTIFY
+               /* ASP is up, wait for some time if any NOTIFY
                 * indications about AS in this ASP are received */
                osmo_fsm_inst_state_chg(fi, S_WAIT_NOTIFY, 2, T_WAIT_NOTIFY);
                break;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/xua_internal.h 
new/libosmo-sccp-1.6.0/src/xua_internal.h
--- old/libosmo-sccp-1.5.0/src/xua_internal.h   2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/xua_internal.h   2022-06-28 18:22:14.000000000 
+0200
@@ -21,6 +21,9 @@
 void sua_tx_snm_available(struct osmo_ss7_asp *asp, const uint32_t *rctx, 
unsigned int num_rctx,
                          const uint32_t *aff_pc, unsigned int num_aff_pc, 
const uint32_t *aff_ssn,
                          const uint32_t *smi, const char *info_string, bool 
available);
+void sua_tx_snm_congestion(struct osmo_ss7_asp *asp, const uint32_t *rctx, 
unsigned int num_rctx,
+                          const uint32_t *aff_pc, unsigned int num_aff_pc, 
const uint32_t *ssn,
+                          const uint8_t cong_level, const char *info_string);
 void sua_tx_dupu(struct osmo_ss7_asp *asp, const uint32_t *rctx, unsigned int 
num_rctx,
                 uint32_t dpc, uint16_t user, uint16_t cause, const char 
*info_str);
 
@@ -30,12 +33,18 @@
 void m3ua_tx_snm_available(struct osmo_ss7_asp *asp, const uint32_t *rctx, 
unsigned int num_rctx,
                           const uint32_t *aff_pc, unsigned int num_aff_pc,
                           const char *info_string, bool available);
+void m3ua_tx_snm_congestion(struct osmo_ss7_asp *asp, const uint32_t *rctx, 
unsigned int num_rctx,
+                           const uint32_t *aff_pc, unsigned int num_aff_pc,
+                           const uint32_t *concerned_dpc, const uint8_t 
*cong_level,
+                           const char *info_string);
 void m3ua_tx_dupu(struct osmo_ss7_asp *asp, const uint32_t *rctx, unsigned int 
num_rctx,
                  uint32_t dpc, uint16_t user, uint16_t cause, const char 
*info_str);
+
 void xua_snm_rx_daud(struct osmo_ss7_asp *asp, struct xua_msg *xua);
 void xua_snm_rx_duna(struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct 
xua_msg *xua);
 void xua_snm_rx_dava(struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct 
xua_msg *xua);
 void xua_snm_rx_dupu(struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct 
xua_msg *xua);
+void xua_snm_rx_scon(struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct 
xua_msg *xua);
 int m3ua_rx_msg(struct osmo_ss7_asp *asp, struct msgb *msg);
 
 struct msgb *m3ua_msgb_alloc(const char *name);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/src/xua_snm.c 
new/libosmo-sccp-1.6.0/src/xua_snm.c
--- old/libosmo-sccp-1.5.0/src/xua_snm.c        2021-11-16 14:44:42.000000000 
+0100
+++ new/libosmo-sccp-1.6.0/src/xua_snm.c        2022-06-28 18:22:14.000000000 
+0200
@@ -115,6 +115,24 @@
        }
 }
 
+static void xua_tx_scon(struct osmo_ss7_asp *asp, const uint32_t *rctx, 
unsigned int num_rctx,
+                       const uint32_t *aff_pc, unsigned int num_aff_pc,
+                       const uint32_t *concerned_dpc, const uint8_t 
*cong_level,
+                       const char *info_string)
+{
+       switch (asp->cfg.proto) {
+       case OSMO_SS7_ASP_PROT_M3UA:
+               m3ua_tx_snm_congestion(asp, rctx, num_rctx, aff_pc, num_aff_pc,
+                                      concerned_dpc, cong_level, info_string);
+               break;
+       case OSMO_SS7_ASP_PROT_SUA:
+               sua_tx_snm_congestion(asp, rctx, num_rctx, aff_pc, num_aff_pc, 
NULL,
+                                     cong_level ? *cong_level : 0, 
info_string);
+               break;
+       default:
+               break;
+       }
+}
 
 /* generate MTP-PAUSE / MTP-RESUME towards local SCCP users */
 static void xua_snm_pc_available_to_sccp(struct osmo_sccp_instance *sccp,
@@ -257,6 +275,36 @@
        }
 }
 
+static void xua_snm_scon(struct osmo_ss7_as *as, const uint32_t *aff_pc, 
unsigned int num_aff_pc,
+                        const uint32_t *concerned_dpc, const uint8_t 
*cong_level, const char *info_string)
+{
+       struct osmo_ss7_instance *s7i = as->inst;
+       struct osmo_ss7_asp *asp;
+       uint32_t rctx[32];
+       unsigned int num_rctx;
+
+       /* TODO: How to translate to MTP and towards SCCP (create N-PCSTATE.ind 
to SCU) */
+
+       /* inform remote ASPs via SCON */
+       llist_for_each_entry(asp, &s7i->asp_list, list) {
+               /* SSNM is only permitted for ASPs in ACTIVE state */
+               if (!osmo_ss7_asp_active(asp))
+                       continue;
+
+               /* only send SCON if we locally are the SG and the remote is 
ASP */
+               if (asp->cfg.role != OSMO_SS7_ASP_ROLE_SG)
+                       continue;
+
+               num_rctx = get_all_rctx_for_asp(rctx, ARRAY_SIZE(rctx), asp, 
as);
+               /* this can happen if the given ASP is only in the AS that 
reports the change,
+                * which shall be excluded */
+               if (num_rctx == 0)
+                       continue;
+
+               xua_tx_scon(asp, rctx, num_rctx, aff_pc, num_aff_pc, 
concerned_dpc, cong_level, info_string);
+       }
+}
+
 /* receive DAUD from ASP; pc is 'affected PC' IE with mask in network byte 
order! */
 void xua_snm_rx_daud(struct osmo_ss7_asp *asp, struct xua_msg *xua)
 {
@@ -405,3 +453,20 @@
 
        xua_snm_upu(as, aff_pc, user, cause, info_str);
 }
+
+/* an incoming SUA/M3UA SCON was received from a remote SG */
+void xua_snm_rx_scon(struct osmo_ss7_asp *asp, struct osmo_ss7_as *as, struct 
xua_msg *xua)
+{
+       struct xua_msg_part *ie_aff_pc = xua_msg_find_tag(xua, 
M3UA_IEI_AFFECTED_PC);
+       const char *info_str = xua_msg_get_str(xua, M3UA_IEI_INFO_STRING);
+       uint32_t _concerned_dpc, _cong_level;
+       const uint32_t *concerned_dpc = xua_msg_get_u32p(xua, 
M3UA_IEI_CONC_DEST, &_concerned_dpc);
+       const uint32_t *cong_level = xua_msg_get_u32p(xua, M3UA_IEI_CONG_IND, 
&_cong_level);
+       int log_ss = osmo_ss7_asp_get_log_subsys(asp);
+
+       LOGPASP(asp, log_ss, LOGL_NOTICE, "RX SCON(%s) for %s level=%u\n", 
info_str ? info_str : "",
+               format_affected_pcs_c(xua, asp->inst, ie_aff_pc), cong_level ? 
*cong_level : 0);
+
+       xua_snm_scon(as, (const uint32_t *) ie_aff_pc->dat, ie_aff_pc->len / 
sizeof(uint32_t),
+                    concerned_dpc, (const uint8_t *) cong_level, info_str);
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/tests/m2ua/Makefile.am 
new/libosmo-sccp-1.6.0/tests/m2ua/Makefile.am
--- old/libosmo-sccp-1.5.0/tests/m2ua/Makefile.am       2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/tests/m2ua/Makefile.am       2022-06-28 
18:22:14.000000000 +0200
@@ -3,6 +3,6 @@
 
 EXTRA_DIST = m2ua_test.ok
 
-noinst_PROGRAMS = m2ua_test
+check_PROGRAMS = m2ua_test
 m2ua_test_SOURCES = m2ua_test.c
 m2ua_test_LDADD = $(top_builddir)/src/libxua.a $(LIBOSMOCORE_LIBS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/tests/mtp/Makefile.am 
new/libosmo-sccp-1.6.0/tests/mtp/Makefile.am
--- old/libosmo-sccp-1.5.0/tests/mtp/Makefile.am        2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/tests/mtp/Makefile.am        2022-06-28 
18:22:14.000000000 +0200
@@ -1,5 +1,5 @@
 AM_CPPFLAGS = $(all_includes) -I$(top_srcdir)/include $(LIBOSMOCORE_CFLAGS) 
-Wall
-noinst_PROGRAMS = mtp_parse_test
+check_PROGRAMS = mtp_parse_test
 
 EXTRA_DIST = mtp_parse_test.ok
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/tests/sccp/Makefile.am 
new/libosmo-sccp-1.6.0/tests/sccp/Makefile.am
--- old/libosmo-sccp-1.5.0/tests/sccp/Makefile.am       2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/tests/sccp/Makefile.am       2022-06-28 
18:22:14.000000000 +0200
@@ -3,7 +3,7 @@
 
 EXTRA_DIST = sccp_test.ok
 
-noinst_PROGRAMS = sccp_test
+check_PROGRAMS = sccp_test
 
 sccp_test_SOURCES = sccp_test.c
 sccp_test_LDADD = \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/tests/sccp/sccp_test.c 
new/libosmo-sccp-1.6.0/tests/sccp/sccp_test.c
--- old/libosmo-sccp-1.5.0/tests/sccp/sccp_test.c       2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/tests/sccp/sccp_test.c       2022-06-28 
18:22:14.000000000 +0200
@@ -16,10 +16,6 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- *
  */
 
 #include <stdio.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/tests/ss7/Makefile.am 
new/libosmo-sccp-1.6.0/tests/ss7/Makefile.am
--- old/libosmo-sccp-1.5.0/tests/ss7/Makefile.am        2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/tests/ss7/Makefile.am        2022-06-28 
18:22:14.000000000 +0200
@@ -7,6 +7,6 @@
 
 EXTRA_DIST = ss7_test.ok ss7_test.err
 
-noinst_PROGRAMS = ss7_test
+check_PROGRAMS = ss7_test
 
 ss7_test_SOURCES = ss7_test.c
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/tests/vty/Makefile.am 
new/libosmo-sccp-1.6.0/tests/vty/Makefile.am
--- old/libosmo-sccp-1.5.0/tests/vty/Makefile.am        2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/tests/vty/Makefile.am        2022-06-28 
18:22:14.000000000 +0200
@@ -10,7 +10,7 @@
        vty_test_runner.py \
        $(NULL)
 
-noinst_PROGRAMS = ss7_asp_vty_test
+check_PROGRAMS = ss7_asp_vty_test
 
 ss7_asp_vty_test_SOURCES = ss7_asp_vty_test.c
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/tests/vty/ss7_asp_test.vty 
new/libosmo-sccp-1.6.0/tests/vty/ss7_asp_test.vty
--- old/libosmo-sccp-1.5.0/tests/vty/ss7_asp_test.vty   2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/tests/vty/ss7_asp_test.vty   2022-06-28 
18:22:14.000000000 +0200
@@ -337,10 +337,6 @@
 
 ss7_asp_vty_test(config)# show running-config
 ...
-cs7 instance 1
- sccp-address bar
-  routing-indicator PC
-  point-code 1.2.3
 cs7 instance 0
  asp my-asp 12345 54321 m3ua
   local-ip 127.0.0.100
@@ -351,6 +347,10 @@
  sccp-address foo
   routing-indicator PC
   point-code 1.2.3
+cs7 instance 1
+ sccp-address bar
+  routing-indicator PC
+  point-code 1.2.3
 end
 
 ss7_asp_vty_test(config)# do show cs7 instance 0 users
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/tests/vty/ss7_asp_vty_test.c 
new/libosmo-sccp-1.6.0/tests/vty/ss7_asp_vty_test.c
--- old/libosmo-sccp-1.5.0/tests/vty/ss7_asp_vty_test.c 2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/tests/vty/ss7_asp_vty_test.c 2022-06-28 
18:22:14.000000000 +0200
@@ -15,10 +15,6 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- *
  */
 
 #define _GNU_SOURCE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libosmo-sccp-1.5.0/tests/xua/Makefile.am 
new/libosmo-sccp-1.6.0/tests/xua/Makefile.am
--- old/libosmo-sccp-1.5.0/tests/xua/Makefile.am        2021-11-16 
14:44:42.000000000 +0100
+++ new/libosmo-sccp-1.6.0/tests/xua/Makefile.am        2022-06-28 
18:22:14.000000000 +0200
@@ -8,6 +8,6 @@
 EXTRA_DIST = xua_test.ok xua_test.err
 
 noinst_HEADERS = sccp_test_data.h
-noinst_PROGRAMS = xua_test
+check_PROGRAMS = xua_test
 
 xua_test_SOURCES = xua_test.c sccp_test_data.c

Reply via email to