pespin has submitted this change. ( 
https://gerrit.osmocom.org/c/libosmo-sigtran/+/41501?usp=email )

Change subject: ss7_xua_srv: Make sure we don't accept conns for ASPs 
configured as transport-role client
......................................................................

ss7_xua_srv: Make sure we don't accept conns for ASPs configured as 
transport-role client

Change-Id: I955aed3c6cdaa0a7eaa14150eeb7458ee9b41d9d
---
M src/ss7_xua_srv.c
1 file changed, 17 insertions(+), 7 deletions(-)

Approvals:
  osmith: Looks good to me, but someone else must approve
  fixeria: Looks good to me, approved
  Jenkins Builder: Verified




diff --git a/src/ss7_xua_srv.c b/src/ss7_xua_srv.c
index a97b07f..7e55777 100644
--- a/src/ss7_xua_srv.c
+++ b/src/ss7_xua_srv.c
@@ -75,13 +75,23 @@
        LOGP(DLSS7, LOGL_INFO, "%s: New %s connection accepted\n", sock_name, 
proto_name);

        asp = ss7_asp_find_by_socket_addr(fd, oxs->cfg.trans_proto);
-       if (asp && asp->cfg.adm_state == OSMO_SS7_ASP_ADM_S_SHUTDOWN) {
-               LOGPASP(asp, DLSS7, LOGL_NOTICE,
-                       "Reject incoming new connection from %s for ASP in adm 
state %s\n",
-                       sock_name, 
get_value_string(osmo_ss7_asp_admin_state_names, asp->cfg.adm_state));
-               close(fd);
-               talloc_free(sock_name);
-               return 0;
+       if (asp) {
+               if (!asp->cfg.is_server) {
+                       LOGPASP(asp, DLSS7, LOGL_NOTICE,
+                               "Reject incoming new connection from %s for ASP 
configured as 'transport-role client'\n",
+                               sock_name);
+                       close(fd);
+                       talloc_free(sock_name);
+                       return 0;
+               }
+               if (asp->cfg.adm_state == OSMO_SS7_ASP_ADM_S_SHUTDOWN) {
+                       LOGPASP(asp, DLSS7, LOGL_NOTICE,
+                               "Reject incoming new connection from %s for ASP 
in adm state %s\n",
+                               sock_name, 
get_value_string(osmo_ss7_asp_admin_state_names, asp->cfg.adm_state));
+                       close(fd);
+                       talloc_free(sock_name);
+                       return 0;
+               }
        }

        srv = osmo_stream_srv_create2(oxs, link, fd, NULL);

--
To view, visit https://gerrit.osmocom.org/c/libosmo-sigtran/+/41501?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings?usp=email

Gerrit-MessageType: merged
Gerrit-Project: libosmo-sigtran
Gerrit-Branch: master
Gerrit-Change-Id: I955aed3c6cdaa0a7eaa14150eeb7458ee9b41d9d
Gerrit-Change-Number: 41501
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <[email protected]>
Gerrit-Reviewer: osmith <[email protected]>
Gerrit-Reviewer: pespin <[email protected]>

Reply via email to