SCCP + SIGTRAN (SUA/M3UA) libraries as well as OsmoSTP https://osmocom.org/projects/libosmo-sccp
Go to file
Harald Welte c288852320 Revert "osmo_ss7: free the sock_name string once an ASP socket is closed"
This reverts commit 03e3b04234.

It caused a regression, as apparently some code is using the sock_name
string even after the close:

DLSS7 osmo_ss7.c:1676 0: asp-asp-dyn-0: xua_srv_conn_cb(): sctp_recvmsg() returned 12 (flags=0x8080)
DLSS7 osmo_ss7.c:1608 0: asp-asp-dyn-0: xUA SRV SCTP NOTIFICATION 32773 flags=0x0
DLSS7 osmo_ss7.c:1621 0: asp-asp-dyn-0: xUA SRV SHUTDOWN_EVENT
DLSS7 osmo_ss7.c:1875 asp-dyn-0: connection closed
DLSS7 osmo_ss7.c:1881 XUA_ASP(asp-dyn-0){ASP_INACTIVE}: Received Event SCTP-COMM_DOWN.ind
DLSS7 xua_asp_fsm.c:669 XUA_ASP(asp-dyn-0){ASP_INACTIVE}: state_chg to ASP_DOWN
DLSS7 xua_asp_fsm.c:113 0: asp-asp-dyn-0: No Layer Manager, dropping M-ASP_DOWN.indication
DLSS7 xua_asp_fsm.c:113 0: asp-asp-dyn-0: No Layer Manager, dropping M-SCTP_RELEASE.indication
DLSS7 osmo_ss7.c:1442 0: asp-asp-dyn-0: Destroying ASP
DLSS7 osmo_ss7.c:1449 XUA_ASP(asp-dyn-0){ASP_DOWN}: Terminating (cause = OSMO_FSM_TERM_REQUEST)
DLSS7 osmo_ss7.c:1449 XUA_ASP(asp-dyn-0){ASP_DOWN}: Freeing instance
DLSS7 fsm.c:573 XUA_ASP(asp-dyn-0){ASP_DOWN}: Deallocated
=================================================================
==2928584==ERROR: AddressSanitizer: heap-use-after-free on address 0x618000004d28 at pc 0x7fd6cddeaff8 bp 0x7ffe978fbad0 sp 0x7ffe978fbac8
READ of size 8 at 0x618000004d28 thread T0
    #0 0x7fd6cddeaff7 in xua_srv_conn_closed_cb (/space/home/laforge/projects/git/libosmo-sccp/src/.libs/libosmo-sigtran.so.5+0x17bff7)
    #1 0x7fd6cc443d0f in osmo_stream_srv_destroy (/usr/local/lib/libosmonetif.so.8+0x7ed0f)
    #2 0x7fd6cdde8ce8 in xua_srv_conn_cb (/space/home/laforge/projects/git/libosmo-sccp/src/.libs/libosmo-sigtran.so.5+0x179ce8)
    #3 0x7fd6cc44285e in osmo_stream_srv_read (/usr/local/lib/libosmonetif.so.8+0x7d85e)
    #4 0x7fd6cc44331d in osmo_stream_srv_cb (/usr/local/lib/libosmonetif.so.8+0x7e31d)
    #5 0x7fd6cd88a1c7 in poll_disp_fds (/usr/local/lib/libosmocore.so.17+0x10d1c7)
    #6 0x7fd6cd88a30d in _osmo_select_main (/usr/local/lib/libosmocore.so.17+0x10d30d)
    #7 0x7fd6cd88a32c in osmo_select_main (/usr/local/lib/libosmocore.so.17+0x10d32c)
    #8 0x557aab05c078 in main /space/home/laforge/projects/git/libosmo-sccp/stp/stp_main.c:267
    #9 0x7fd6ccc50d09 in __libc_start_main ../csu/libc-start.c:308
    #10 0x557aab05b389 in _start (/space/home/laforge/projects/git/libosmo-sccp/stp/.libs/osmo-stp+0x3389)

Change-Id: I72f83114408e7a54d1f3072338fa6f189bf4064f
2021-04-30 15:51:22 +02:00
contrib Bump version: 1.3.0.51-6858-dirty → 1.4.0 2021-02-23 17:57:33 +01:00
debian Bump version: 1.3.0.51-6858-dirty → 1.4.0 2021-02-23 17:57:33 +01:00
doc manuals: generate vty reference xml at build time 2021-02-23 17:20:08 +01:00
examples examples/sccp_test_server: Log disconnect indication in echo service 2020-01-21 10:53:34 +01:00
include osmo_ss7: Truncate route 'mask' to point code bit length 2021-04-29 20:07:34 +02:00
specs add RFC 3868 (SUA) spec in HTML 2017-01-27 09:59:30 +01:00
src Revert "osmo_ss7: free the sock_name string once an ASP socket is closed" 2021-04-30 15:51:22 +02:00
stp stp: generate coredump and exit upon SIGABRT received 2021-02-23 17:40:46 +01:00
tests tests: Replace deprecated API log_set_print_filename 2021-02-19 13:10:35 +01:00
.gitignore gitignore: Ignore autofoo *~ churn 2021-02-19 13:06:27 +01:00
.gitreview Add gerrit settings 2016-12-21 13:46:12 +01:00
COPYING move openbsc into its own subdirectory 2009-06-10 05:40:52 +08:00
Doxyfile.in Doxugen: s/libosmo-sccp/libosmo-sigtran/g 2017-10-27 21:10:18 +02:00
Makefile.am Makefile.am: EXTRA_DIST: debian, contrib/*.spec.in 2020-05-22 13:29:41 +02:00
README.md Add README.md describing what this repo is about 2021-03-21 22:56:42 +01:00
TODO-RELEASE Bump version: 1.3.0.51-6858-dirty → 1.4.0 2021-02-23 17:57:33 +01:00
configure.ac Bump version: 1.3.0.51-6858-dirty → 1.4.0 2021-02-23 17:57:33 +01:00
git-version-gen git-version-gen: Don't check for .git directory 2018-07-24 18:03:20 +02:00
libosmo-mtp.pc.in Revert "Fix the .pc files so the -l arg matches the installed libraries" 2016-11-03 13:04:34 +00:00
libosmo-sccp.pc.in Revert "Fix the .pc files so the -l arg matches the installed libraries" 2016-11-03 13:04:34 +00:00
libosmo-sigtran.pc.in libosmo-sigtran: Add pkg-config integration 2015-12-22 23:03:44 +01:00
libosmo-xua.pc.in Add missing xua.pc file 2016-11-03 12:36:41 +00:00
osmoappdesc.py osmoappdesc.py, tests: switch to python 3 2019-12-12 09:18:58 +00:00

README.md

libosmo-sccp - Osmocom SCCP, SIGTRAN and STP

This repository contains a C-language library implementation of a variety of telecom signaling protocols, such as M3UA, SUA, SCCP (connection oriented and connectionless), as well as the OsmoSTP, a SS7 Transfer Point.

Homepage

The official homepage of libosmo-sccp is https://osmocom.org/projects/libosmo-sccp/wiki

The official homepage of osmo-stp is https://osmocom.org/projects/osmo-stp/wiki

GIT Repository

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

There is a cgit interface at https://git.osmocom.org/libosmo-sccp/

Documentation

User Manuals and VTY reference manuals are [optionally] built in PDF form as part of the build process.

Pre-rendered PDF version of the current "master" can be found at User Manual as well as the VTY reference manuals

Mailing List

Discussions related to osmo-stp are happening on the openbsc@lists.osmocom.org mailing list, please see https://lists.osmocom.org/mailman/listinfo/openbsc for subscription options and the list archive.

Please observe the Osmocom Mailing List Rules when posting.

Contributing

Our coding standards are described at https://osmocom.org/projects/cellular-infrastructure/wiki/Coding_standards

We us a gerrit based patch submission/review process for managing contributions. Please see https://osmocom.org/projects/cellular-infrastructure/wiki/Gerrit for more details

The current patch queue can be seen at https://gerrit.osmocom.org/#/q/project:libosmo-sccp+status:open