aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/bsc_data.h2
-rw-r--r--include/mtp_data.h15
-rw-r--r--include/sctp_m2ua.h2
3 files changed, 15 insertions, 4 deletions
diff --git a/include/bsc_data.h b/include/bsc_data.h
index c09d922..83061e2 100644
--- a/include/bsc_data.h
+++ b/include/bsc_data.h
@@ -46,7 +46,7 @@ struct mtp_udp_data {
struct mtp_udp_link {
/* subclass */
- struct mtp_link base;
+ struct mtp_link *base;
/* UDP specific stuff */
struct bsc_data *bsc;
diff --git a/include/mtp_data.h b/include/mtp_data.h
index eed113f..48a2b10 100644
--- a/include/mtp_data.h
+++ b/include/mtp_data.h
@@ -37,6 +37,12 @@ struct ss7_application;
#define MTP_T2 30, 0
#define START_DELAY 8, 0
+enum ss7_link_type {
+ SS7_LTYPE_NONE,
+ SS7_LTYPE_UDP,
+ SS7_LTYPE_M2UA,
+};
+
/**
* The state of the mtp_link in terms of layer3 and upwards
*/
@@ -120,6 +126,10 @@ struct mtp_link {
int (*shutdown)(struct mtp_link *);
int (*reset)(struct mtp_link *data);
int (*clear_queue)(struct mtp_link *data);
+
+ /* private data */
+ enum ss7_link_type type;
+ void *data;
};
@@ -130,7 +140,6 @@ int mtp_link_set_submit_sccp_data(struct mtp_link_set *link, int sls, const uint
int mtp_link_set_submit_isup_data(struct mtp_link_set *link, int sls, const uint8_t *data, unsigned int length);
void mtp_link_set_init_slc(struct mtp_link_set *set);
-int mtp_link_set_add_link(struct mtp_link_set *set, struct mtp_link *link);
void mtp_link_block(struct mtp_link *link);
void mtp_link_unblock(struct mtp_link *link);
@@ -147,7 +156,6 @@ int mtp_link_set_send(struct mtp_link_set *set, struct msgb *msg);
void mtp_link_down(struct mtp_link *data);
void mtp_link_up(struct mtp_link *data);
-int mtp_link_init(struct mtp_link *link);
void mtp_link_start_link_test(struct mtp_link *link);
void mtp_link_stop_link_test(struct mtp_link *link);
int mtp_link_slta(struct mtp_link *link, uint16_t l3_len, struct mtp_level_3_mng *mng);
@@ -161,4 +169,7 @@ struct msgb *mtp_msg_alloc(struct mtp_link_set *link);
struct mtp_link_set *mtp_link_set_alloc(struct bsc_data *bsc);
struct mtp_link_set *mtp_link_set_num(struct bsc_data *bsc, int num);
+struct mtp_link *mtp_link_alloc(struct mtp_link_set *set);
+struct mtp_link *mtp_link_num(struct mtp_link_set *set, int num);
+
#endif
diff --git a/include/sctp_m2ua.h b/include/sctp_m2ua.h
index 1c001cd..9f4d5c7 100644
--- a/include/sctp_m2ua.h
+++ b/include/sctp_m2ua.h
@@ -42,7 +42,7 @@ struct sctp_m2ua_transport {
};
struct mtp_m2ua_link {
- struct mtp_link base;
+ struct mtp_link *base;
int link_index;
struct llist_head entry;