projects
/
lcr.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
SIP: Fix incoming re-invite
[lcr.git]
/
vbox.cpp
diff --git
a/vbox.cpp
b/vbox.cpp
index
c8c3012
..
8447b89
100644
(file)
--- a/
vbox.cpp
+++ b/
vbox.cpp
@@
-23,7
+23,7
@@
int record_timeout(struct lcr_timer *timer, void *instance, int index);
/*
* initialize vbox port
*/
/*
* initialize vbox port
*/
-VBoxPort::VBoxPort(int type, struct port_settings *settings) : Port(type, "vbox", settings)
+VBoxPort::VBoxPort(int type, struct port_settings *settings) : Port(type, "vbox", settings
, NULL
)
{
p_vbox_timeout = 0;
p_vbox_announce_fh = -1;
{
p_vbox_timeout = 0;
p_vbox_announce_fh = -1;
@@
-191,6
+191,11
@@
void VBoxPort::send_announcement(void)
int VBoxPort::bridge_rx(unsigned char *data, int len)
{
int VBoxPort::bridge_rx(unsigned char *data, int len)
{
+ int ret;
+
+ if ((ret = Port::bridge_rx(data, len)))
+ return ret;
+
if (p_record)
record(data, len, 1); // from up
return 0;
if (p_record)
record(data, len, 1); // from up
return 0;
@@
-251,7
+256,8
@@
int VBoxPort::message_epoint(unsigned int epoint_id, int message_id, union param
case MESSAGE_SETUP: /* dial-out command received from epoint, answer with connect */
/* get apppbx */
case MESSAGE_SETUP: /* dial-out command received from epoint, answer with connect */
/* get apppbx */
- memcpy(&p_vbox_ext, &((class EndpointAppPBX *)(epoint->ep_app))->e_ext, sizeof(p_vbox_ext));
+ if (epoint->ep_app_type == EAPP_TYPE_PBX)
+ memcpy(&p_vbox_ext, &((class EndpointAppPBX *)(epoint->ep_app))->e_ext, sizeof(p_vbox_ext));
/* extract optional announcement file */
if ((c = strchr(param->setup.dialinginfo.id, ','))) {
if (c[1] == '/')
/* extract optional announcement file */
if ((c = strchr(param->setup.dialinginfo.id, ','))) {
if (c[1] == '/')