On Wed, Jan 22, 2014 at 10:05:55AM +0100, Andreas Eversberg wrote:
+#define MNCC_RTP_CREATE 0x0204 +#define MNCC_RTP_CONNECT 0x0205 +#define MNCC_RTP_FREE 0x0206
Increase the version. We have a uint32_t for the version number and it will take a while to overflow it.
- RTP_PROXY, /* forward from BTS to BTS */
- RTP_RECV_UPSTREAM, /* forward to L4 application */
- RTP_RECV_L4, /* receive RTP frames from L4 application */
L4? is that the best name you can think off?
- bts = trans->conn->lchan->ts->trx->bts;
- switch (bts->type) {
- case GSM_BTS_TYPE_NANOBTS:
- case GSM_BTS_TYPE_OSMO_SYSMO:
...
- case GSM_BTS_TYPE_BS11:
- case GSM_BTS_TYPE_RBS2000:
- case GSM_BTS_TYPE_NOKIA_SITE:
There are already methods for "is IP based BTS", "is E1 based BTS". Couldn't you use them here?
- /* L4 uses RTP for this transaction, we send our data via RTP,
* otherwise we send it through MNCC interface */- if (msg_type == GSM_TCHF_FRAME
|| msg_type == GSM_TCHF_FRAME_EFR|| msg_type == GSM_TCHH_FRAME|| msg_type == GSM_TCH_FRAME_AMR|| msg_type == GSM_BAD_FRAME) {
I have seen lchan->type checks and message type checks like these as well. Could you create a predicate function that check mncc_is_audio_message(), or lchan_voice_chan?