22 #include <osmocom/core/linuxlist.h>
25 #define XUA_HDR(class, type) ((struct xua_common_hdr) { .spare = 0, .msg_class = (class), .msg_type = (type) })
39 struct llist_head
entry;
82 const struct xua_msg *xua_in, uint16_t tag_in);
105 unsigned int num_maps);
Definition: sccp_sap.h:151
Definition: sccp_sap.h:143
Definition: xua_types.h:31
uint16_t port
Definition: xua_msg.h:57
uint16_t ppid
Definition: xua_msg.h:58
int log_subsys
Definition: xua_msg.h:59
const char * name
Definition: xua_msg.h:56
const uint16_t * mand_ies[256]
Definition: xua_msg.h:52
const char * name
Definition: xua_msg.h:49
const struct value_string * iei_names
Definition: xua_msg.h:51
const struct value_string * msgt_names
Definition: xua_msg.h:50
uint8_t msg_type
Definition: xua_msg.h:65
uint8_t msg_class
Definition: xua_msg.h:64
int event
Definition: xua_msg.h:66
struct llist_head entry
Definition: xua_msg.h:39
uint8_t * dat
Definition: xua_msg.h:43
uint16_t tag
Definition: xua_msg.h:41
uint16_t len
Definition: xua_msg.h:42
struct osmo_mtp_transfer_param mtp
Definition: xua_msg.h:33
struct xua_common_hdr hdr
Definition: xua_msg.h:32
struct llist_head headers
Definition: xua_msg.h:35
struct xua_msg_part * xua_msg_find_tag(const struct xua_msg *msg, uint16_t tag)
Definition: xua_msg.c:86
void xua_msg_free(struct xua_msg *msg)
Definition: xua_msg.c:56
const struct xua_dialect xua_dialect_m3ua
Definition: m3ua.c:272
int xua_msg_free_tag(struct xua_msg *xua, uint16_t tag)
Definition: xua_msg.c:97
void osmo_xua_msg_tall_ctx_init(void *ctx)
Definition: xua_msg.c:39
struct xua_msg * xua_msg_alloc(void)
Definition: xua_msg.c:44
void xua_part_add_gt(struct msgb *msg, const struct osmo_sccp_gt *gt)
Definition: xua_msg.c:300
char * xua_hdr_dump(struct xua_msg *xua, const struct xua_dialect *dialect)
Definition: xua_msg.c:434
int msgb_t16l16vp_put(struct msgb *msg, uint16_t tag, uint16_t len, const uint8_t *data)
Definition: xua_msg.c:247
char * xua_msg_dump(struct xua_msg *xua, const struct xua_dialect *dialect)
Definition: xua_msg.c:494
int msgb_t16l16vp_put_u32(struct msgb *msg, uint16_t tag, uint32_t val)
Definition: xua_msg.c:273
int xua_msg_add_u32(struct xua_msg *xua, uint16_t iei, uint32_t val)
Definition: xua_msg.c:280
uint32_t xua_msg_get_u32(struct xua_msg *xua, uint16_t iei)
Definition: xua_msg.c:292
int xua_msg_copy_part(struct xua_msg *xua_out, uint16_t tag_out, const struct xua_msg *xua_in, uint16_t tag_in)
Definition: xua_msg.c:111
struct xua_msg * xua_from_msg(const int version, uint16_t len, uint8_t *data)
Definition: xua_msg.c:151
int xua_msg_add_sccp_addr(struct xua_msg *xua, uint16_t iei, const struct osmo_sccp_addr *addr)
Definition: xua_msg.c:338
uint32_t xua_msg_part_get_u32(struct xua_msg_part *part)
Definition: xua_msg.c:286
const struct xua_dialect xua_dialect_sua
Definition: sua.c:215
struct xua_msg * xua_from_nested(struct xua_msg_part *outer)
Definition: xua_msg.c:186
struct msgb * xua_to_msg(const int version, struct xua_msg *msg)
Definition: xua_msg.c:203
const char * xua_class_msg_name(const struct xua_msg_class *xmc, uint16_t msg_type)
Definition: xua_msg.c:410
int xua_msg_event_map(const struct xua_msg *xua, const struct xua_msg_event_map *maps, unsigned int num_maps)
Map from a xua_msg (class+type) to an event.
Definition: xua_msg.c:394
const char * xua_class_iei_name(const struct xua_msg_class *xmc, uint16_t iei)
Definition: xua_msg.c:422
int xua_dialect_check_all_mand_ies(const struct xua_dialect *dialect, struct xua_msg *xua)
Definition: xua_msg.c:449
int xua_msg_add_data(struct xua_msg *msg, uint16_t tag, uint16_t len, uint8_t *dat)
Definition: xua_msg.c:61
uint16_t tag
Definition: xua_types.h:0
uint16_t len
Definition: xua_types.h:1
uint8_t data[0]
Definition: xua_types.h:5
uint8_t version
Definition: xua_types.h:0
uint8_t msg_type
Definition: xua_types.h:3