2010-07-05 08:02:04 +00:00
|
|
|
/* OpenBSC BSC code */
|
|
|
|
|
|
|
|
#ifndef OSMO_BSC_H
|
|
|
|
#define OSMO_BSC_H
|
|
|
|
|
|
|
|
#include "bsc_api.h"
|
|
|
|
|
2010-11-06 17:08:43 +00:00
|
|
|
struct sccp_connection;
|
|
|
|
|
2010-11-05 10:31:08 +00:00
|
|
|
struct osmo_bsc_sccp_con {
|
2010-11-06 17:08:43 +00:00
|
|
|
struct llist_head entry;
|
|
|
|
|
|
|
|
/* SCCP connection realted */
|
|
|
|
struct sccp_connection *sccp;
|
|
|
|
struct bsc_msc_connection *msc_con;
|
|
|
|
struct timer_list sccp_it_timeout;
|
|
|
|
struct timer_list sccp_cc_timeout;
|
|
|
|
|
2010-11-06 19:15:17 +00:00
|
|
|
struct gsm_subscriber_connection *conn;
|
2010-11-05 10:31:08 +00:00
|
|
|
uint8_t new_subscriber;
|
|
|
|
};
|
|
|
|
|
2010-07-05 08:02:04 +00:00
|
|
|
struct bsc_api *osmo_bsc_api();
|
|
|
|
|
2010-11-04 10:48:49 +00:00
|
|
|
int bsc_queue_for_msc(struct gsm_subscriber_connection *conn, struct msgb *msg);
|
2010-11-06 19:15:17 +00:00
|
|
|
int bsc_open_connection(struct osmo_bsc_sccp_con *sccp, struct msgb *msg);
|
2010-11-05 18:48:47 +00:00
|
|
|
int bsc_create_new_connection(struct gsm_subscriber_connection *conn);
|
2010-11-06 19:15:17 +00:00
|
|
|
int bsc_delete_connection(struct osmo_bsc_sccp_con *sccp);
|
2010-11-04 10:48:49 +00:00
|
|
|
|
2010-11-05 10:21:18 +00:00
|
|
|
int bsc_scan_bts_msg(struct gsm_subscriber_connection *conn, struct msgb *msg);
|
2010-11-05 17:11:19 +00:00
|
|
|
int bsc_scan_msc_msg(struct gsm_subscriber_connection *conn, struct msgb *msg);
|
2010-11-05 10:21:18 +00:00
|
|
|
|
2010-11-09 22:28:33 +00:00
|
|
|
int bsc_handle_udt(struct gsm_network *net, struct bsc_msc_connection *conn, struct msgb *msg, unsigned int length);
|
|
|
|
int bsc_handle_dt1(struct osmo_bsc_sccp_con *conn, struct msgb *msg, unsigned int len);
|
|
|
|
|
2010-11-06 22:50:06 +00:00
|
|
|
|
2010-07-05 08:02:04 +00:00
|
|
|
#endif
|