aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/include/openbsc
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2010-09-20 02:59:25 +0800
committerHolger Hans Peter Freyther <zecke@selfish.org>2010-09-20 02:59:25 +0800
commitaf8a0104481846858bfe3ada9ddf3a2a42c38818 (patch)
treee74d583fa34f24095056cec9922db58db88a9978 /openbsc/include/openbsc
parente02860af0011e968dd21c33fa65aee8e106dab7e (diff)
parent9aa8a9c5a7f35770582bdb6d564f13caf852f91d (diff)
Merge branch 'zecke/mgcp-transcoder'openbsc/0.9.8
Diffstat (limited to 'openbsc/include/openbsc')
-rw-r--r--openbsc/include/openbsc/bsc_nat.h1
-rw-r--r--openbsc/include/openbsc/mgcp.h10
-rw-r--r--openbsc/include/openbsc/mgcp_internal.h2
3 files changed, 12 insertions, 1 deletions
diff --git a/openbsc/include/openbsc/bsc_nat.h b/openbsc/include/openbsc/bsc_nat.h
index 6b2a09940..ff0ee484c 100644
--- a/openbsc/include/openbsc/bsc_nat.h
+++ b/openbsc/include/openbsc/bsc_nat.h
@@ -190,7 +190,6 @@ struct bsc_nat {
/* MGCP config */
struct mgcp_config *mgcp_cfg;
- struct write_queue mgcp_queue;
uint8_t mgcp_msg[4096];
int mgcp_length;
diff --git a/openbsc/include/openbsc/mgcp.h b/openbsc/include/openbsc/mgcp.h
index 0a0032211..850396a8a 100644
--- a/openbsc/include/openbsc/mgcp.h
+++ b/openbsc/include/openbsc/mgcp.h
@@ -25,6 +25,7 @@
#define OPENBSC_MGCP_H
#include <osmocore/msgb.h>
+#include <osmocore/write_queue.h>
#include "debug.h"
@@ -114,8 +115,16 @@ struct mgcp_config {
int audio_payload;
int audio_loop;
+ /* transcoder handling */
+ char *transcoder_ip;
+ struct in_addr transcoder_in;
+ int transcoder_remote_base;
+
+ struct write_queue gw_fd;
+
struct mgcp_port_range bts_ports;
struct mgcp_port_range net_ports;
+ struct mgcp_port_range transcoder_ports;
int endp_dscp;
/* spec handling */
@@ -137,6 +146,7 @@ int mgcp_parse_config(const char *config_file, struct mgcp_config *cfg);
int mgcp_vty_init(void);
int mgcp_endpoints_allocate(struct mgcp_config *cfg);
void mgcp_free_endp(struct mgcp_endpoint *endp);
+int mgcp_reset_transcoder(struct mgcp_config *cfg);
/*
* format helper functions
diff --git a/openbsc/include/openbsc/mgcp_internal.h b/openbsc/include/openbsc/mgcp_internal.h
index 12e3ad9b1..7c5badc92 100644
--- a/openbsc/include/openbsc/mgcp_internal.h
+++ b/openbsc/include/openbsc/mgcp_internal.h
@@ -98,6 +98,7 @@ struct mgcp_endpoint {
/* port status for bts/net */
struct mgcp_rtp_end bts_end;
struct mgcp_rtp_end net_end;
+ struct mgcp_rtp_end transcoder_end;
/* sequence bits */
struct mgcp_rtp_state net_state;
@@ -123,6 +124,7 @@ int mgcp_analyze_header(struct mgcp_config *cfg, struct msgb *msg,
int mgcp_send_dummy(struct mgcp_endpoint *endp);
int mgcp_bind_bts_rtp_port(struct mgcp_endpoint *endp, int rtp_port);
int mgcp_bind_net_rtp_port(struct mgcp_endpoint *endp, int rtp_port);
+int mgcp_bind_transcoder_rtp_port(struct mgcp_endpoint *enp, int rtp_port);
int mgcp_free_rtp_port(struct mgcp_rtp_end *end);
#endif