libosmo-sigtran 2.1.0.187-fd10
Osmocom SIGTRAN library
ss7_user.h
Go to the documentation of this file.
1#pragma once
2
3#include <stdint.h>
4#include <unistd.h>
5#include <osmocom/core/prim.h>
8
9/***********************************************************************
10 * SS7 User (MTP SAP)
11 ***********************************************************************/
12
14
16 /* pointer back to SS7 instance */
18 /* name of the user */
19 const char *name;
20 /* primitive call-back for incoming MTP primitives */
21 osmo_prim_cb prim_cb;
22 /* private data */
23 void *priv;
24};
25
26struct osmo_ss7_user *ss7_user_find(struct osmo_ss7_instance *inst, uint8_t service_indicator);
27void ss7_user_unregister_all(struct osmo_ss7_user *user);
28int ss7_user_mtp_sap_prim_up(const struct osmo_ss7_user *osu, struct osmo_mtp_prim *omp);
29
31 const uint8_t *user_data, size_t user_data_len);
32
34 enum mtp_unavail_cause cause,
35 bool cong_level_present,
36 uint8_t cong_level);
37void mtp_resume_ind_up_to_all_users(struct osmo_ss7_instance *s7i, uint32_t pc);
38void mtp_pause_ind_up_to_all_users(struct osmo_ss7_instance *s7i, uint32_t pc);
40 uint32_t dpc, enum mtp_unavail_cause cause,
41 bool cong_level_present, uint8_t cong_level);
42
43
44#define _LOGPSS7U(osu, subsys, level, fmt, args ...) \
45 _LOGSS7((osu)->inst, subsys, level, "ss7_user(%s) " fmt, osu->name, ## args)
46#define LOGPSS7U(osu, level, fmt, args ...) \
47 _LOGPSS7U(osu, DLSS7, level, fmt, ## args)
uint32_t dpc
Definition: m3ua.h:1
mtp_unavail_cause
Definition: mtp.h:37
void mtp_status_ind_up_to_all_users(struct osmo_ss7_instance *s7i, uint32_t dpc, enum mtp_unavail_cause cause, bool cong_level_present, uint8_t cong_level)
Definition: mtp_sap.c:181
struct osmo_mtp_prim * mtp_prim_xfer_ind_alloc(const struct osmo_mtp_transfer_param *param, const uint8_t *user_data, size_t user_data_len)
Definition: mtp_sap.c:118
struct osmo_ss7_user * ss7_user_find(struct osmo_ss7_instance *inst, uint8_t service_indicator)
Definition: ss7_user.c:57
int ss7_user_mtp_sap_prim_up(const struct osmo_ss7_user *osu, struct osmo_mtp_prim *omp)
Send a MTP SAP Primitive up to the MTP User.
Definition: mtp_sap.c:201
struct osmo_mtp_prim * mtp_prim_status_ind_alloc(uint32_t dpc, enum mtp_unavail_cause cause, bool cong_level_present, uint8_t cong_level)
Definition: mtp_sap.c:98
void ss7_user_unregister_all(struct osmo_ss7_user *user)
Definition: ss7_user.c:131
void mtp_pause_ind_up_to_all_users(struct osmo_ss7_instance *s7i, uint32_t pc)
Definition: mtp_sap.c:170
void mtp_resume_ind_up_to_all_users(struct osmo_ss7_instance *s7i, uint32_t pc)
Definition: mtp_sap.c:159
Definition: mtp_sap.h:64
Definition: mtp_sap.h:42
Definition: ss7_instance.h:31
Definition: ss7_user.h:15
const char * name
Definition: ss7_user.h:19
osmo_prim_cb prim_cb
Definition: ss7_user.h:21
void * priv
Definition: ss7_user.h:23
struct osmo_ss7_instance * inst
Definition: ss7_user.h:17