aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@soleta.eu>2015-07-17 20:47:04 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2015-07-21 09:59:49 +0200
commitea549806c90f02f87a1fc6625e0626602048737c (patch)
tree303b601d006722c2842baef857687baa4a49ca6c /include
parentb3fc27423a76ab4178a3734423800bebd2e9f639 (diff)
osmux: introduce osmux_xfrm_input_open_circuit()
This new function allows you to create a circuit on an existing input handle. We don't create the circuit anymore from the first packet seen, instead the client application is in full control of opening and closing the circuit. This change includes a new feature to pad a circuit until we see the first packet that contains voice data. This is useful to preallocate bandwidth on satellite links such as Iridium/OpenPort.
Diffstat (limited to 'include')
-rw-r--r--include/osmocom/netif/osmux.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/osmocom/netif/osmux.h b/include/osmocom/netif/osmux.h
index 14c967f..c1f527a 100644
--- a/include/osmocom/netif/osmux.h
+++ b/include/osmocom/netif/osmux.h
@@ -5,7 +5,7 @@
/* OSmux header:
*
- * ft (3 bits): 0=signalling, 1=voice
+ * ft (3 bits): 0=signalling, 1=voice, 2=dummy
* ctr (3 bits): Number of batched AMR payloads (starting 0)
* amr_f (1 bit): AMR F field (RFC3267)
* amr_q (1 bit): AMR Q field (RFC3267)
@@ -17,6 +17,7 @@
#define OSMUX_FT_SIGNAL 0
#define OSMUX_FT_VOICE_AMR 1
+#define OSMUX_FT_DUMMY 2
struct osmux_hdr {
#if OSMO_IS_BIG_ENDIAN
@@ -84,6 +85,7 @@ int osmux_snprintf(char *buf, size_t size, struct msgb *msg);
void osmux_xfrm_input_init(struct osmux_in_handle *h);
void osmux_xfrm_input_fini(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);