From b3e1068992244a35df5a56e064daaaa6d9c986f3 Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Thu, 30 Sep 2010 01:57:45 +0800 Subject: [PATCH] sccp: Move the SCCP connection out to a new structure. --- include/Makefile.am | 2 +- include/bsc_sccp.h | 54 +++++++++++++++++++++++++++++++++++++++++++++ src/main.c | 29 +----------------------- 3 files changed, 56 insertions(+), 29 deletions(-) create mode 100644 include/bsc_sccp.h diff --git a/include/Makefile.am b/include/Makefile.am index c6c6430..4b33dcd 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -1,5 +1,5 @@ noinst_HEADERS = mtp_level3.h mtp_data.h ipaccess.h thread.h mtp_pcap.h \ mgcp_ss7.h bss_patch.h bssap_sccp.h bsc_data.h udp_input.h \ - snmp_mtp.h cellmgr_debug.h + snmp_mtp.h cellmgr_debug.h bsc_sccp.h SUBDIRS = mgcp diff --git a/include/bsc_sccp.h b/include/bsc_sccp.h new file mode 100644 index 0000000..c8d7a90 --- /dev/null +++ b/include/bsc_sccp.h @@ -0,0 +1,54 @@ +/* + * (C) 2010 by Holger Hans Peter Freyther + * (C) 2010 by On-Waves + * All Rights Reserved + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * 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 bsc_sccp_h +#define bsc_sccp_h + +#include + +/* + * One SCCP connection. + * Use for connection tracking and fixups... + */ +struct active_sccp_con { + struct llist_head entry; + + struct sccp_source_reference src_ref; + struct sccp_source_reference dst_ref; + + int has_dst_ref; + + /* fixup stuff */ + + /* We get a RLSD from the MSC and need to send a RLC */ + int released_from_msc; + + /* timeout for waiting for the RLC */ + struct timer_list rlc_timeout; + + /* how often did we send a RLSD this */ + unsigned int rls_tries; + + /* sls id */ + int sls; +}; + +#endif diff --git a/src/main.c b/src/main.c index b56bb73..948d71b 100644 --- a/src/main.c +++ b/src/main.c @@ -28,9 +28,9 @@ #include #include #include +#include #include -#include #include #include @@ -64,33 +64,6 @@ static char *config = "cellmgr_ng.cfg"; static int flood = 0; static struct timer_list flood_timer; -/* - * One SCCP connection. - * Use for connection tracking and fixups... - */ -struct active_sccp_con { - struct llist_head entry; - - struct sccp_source_reference src_ref; - struct sccp_source_reference dst_ref; - - int has_dst_ref; - - /* fixup stuff */ - - /* We get a RLSD from the MSC and need to send a RLC */ - int released_from_msc; - - /* timeout for waiting for the RLC */ - struct timer_list rlc_timeout; - - /* how often did we send a RLSD this */ - unsigned int rls_tries; - - /* sls id */ - int sls; -}; - struct bsc_data bsc; extern void cell_vty_init(void);