libosmo-netif 1.6.0
Osmocom network interface library
|
Osmocom multiplex protocol helpers. More...
#include <osmocom/core/endian.h>
#include <osmocom/core/timer.h>
#include <osmocom/core/msgb.h>
Go to the source code of this file.
Data Structures | |
struct | osmux_hdr |
Osmux protocol header. More... | |
struct | osmux_in_handle |
one to handle all existing RTP flows More... | |
struct | osmux_out_handle |
one per OSmux circuit_id, ie. More... | |
Typedefs | |
typedef struct msgb *(* | rtp_msgb_alloc_cb_t) (void *rtp_msgb_alloc_priv_data, unsigned int msg_len) |
Functions | |
struct osmux_hdr | __attribute__ ((packed)) |
int | osmux_snprintf (char *buf, size_t size, struct msgb *msg) |
Print osmux header fields and payload from msg into buffer buf. More... | |
struct osmux_in_handle * | osmux_xfrm_input_alloc (void *ctx) |
Allocate a new osmux in handle (osmux source, tx side) More... | |
void | osmux_xfrm_input_init (struct osmux_in_handle *h) OSMO_DEPRECATED("Use osmux_xfrm_input_alloc() instead") |
void | osmux_xfrm_input_fini (struct osmux_in_handle *h) OSMO_DEPRECATED("Use talloc_free() instead") |
void | osmux_xfrm_input_set_name (struct osmux_in_handle *h, const char *name) |
int | osmux_xfrm_input_set_batch_factor (struct osmux_in_handle *h, uint8_t batch_factor) |
void | osmux_xfrm_input_set_batch_size (struct osmux_in_handle *h, uint16_t batch_size) |
void | osmux_xfrm_input_set_initial_seqnum (struct osmux_in_handle *h, uint8_t osmux_seqnum) |
void | osmux_xfrm_input_set_deliver_cb (struct osmux_in_handle *h, void(*deliver_cb)(struct msgb *msg, void *data), void *data) |
void * | osmux_xfrm_input_get_deliver_cb_data (struct osmux_in_handle *h) |
int | osmux_xfrm_input_open_circuit (struct osmux_in_handle *h, int ccid, int dummy) |
void | osmux_xfrm_input_close_circuit (struct osmux_in_handle *h, int ccid) |
int | osmux_xfrm_input (struct osmux_in_handle *h, struct msgb *msg, int ccid) |
osmux_xfrm_input - add RTP message to OSmux batch More... | |
void | osmux_xfrm_input_deliver (struct osmux_in_handle *h) |
struct osmux_out_handle * | osmux_xfrm_output_alloc (void *ctx) |
Allocate a new osmux out handle. More... | |
void | osmux_xfrm_output_init (struct osmux_out_handle *h, uint32_t rtp_ssrc) OSMO_DEPRECATED("Use osmux_xfrm_output_alloc() and osmux_xfrm_output_set_rtp_*() instead") |
void | osmux_xfrm_output_init2 (struct osmux_out_handle *h, uint32_t rtp_ssrc, uint8_t rtp_payload_type) OSMO_DEPRECATED("Use osmux_xfrm_output_alloc() and osmux_xfrm_output_set_rtp_*() instead") |
void | osmux_xfrm_output_set_rtp_ssrc (struct osmux_out_handle *h, uint32_t rtp_ssrc) |
Set SSRC of generated RTP packets from Osmux frames. More... | |
void | osmux_xfrm_output_set_rtp_pl_type (struct osmux_out_handle *h, uint32_t rtp_payload_type) |
Set Payload Type of generated RTP packets from Osmux frames. More... | |
void | osmux_xfrm_output_set_tx_cb (struct osmux_out_handle *h, void(*tx_cb)(struct msgb *msg, void *data), void *data) |
Set transmission callback to call when a generated RTP packet is to be transmitted. More... | |
void | osmux_xfrm_output_set_rtp_msgb_alloc_cb (struct osmux_out_handle *h, rtp_msgb_alloc_cb_t cb, void *cb_data) |
Set callback to call when an RTP packet to be generated is to be allocated. More... | |
int | osmux_xfrm_output_sched (struct osmux_out_handle *h, struct osmux_hdr *osmuxh) |
Generate RTP packets from osmux frame AMR payload set and schedule them for transmission at appropriate time. More... | |
void | osmux_xfrm_output_flush (struct osmux_out_handle *h) |
Flush all scheduled RTP packets still pending to be transmitted. More... | |
struct osmux_hdr * | osmux_xfrm_output_pull (struct msgb *msg) |
Variables | |
uint8_t | seq |
uint8_t | circuit_id |
uint8_t | data [0] |
struct osmux_in_handle | __attribute__ |
Osmocom multiplex protocol helpers.