summaryrefslogtreecommitdiffstats
path: root/dss1.cpp
diff options
context:
space:
mode:
authorAndreas Eversberg2009-10-27 08:02:16 +0100
committerAndreas Eversberg2009-10-27 08:02:16 +0100
commit3ac6881c22bce18091f19b06958ac66016bf9a32 (patch)
treeb658b2d5b5c66145d86a8a5c820f0b76d08825eb /dss1.cpp
parentMerge branch 'master' of ssh://jolly@www.mISDN.org/var/git/lcr (diff)
downloadlcr-3ac6881c22bce18091f19b06958ac66016bf9a32.tar.gz
lcr-3ac6881c22bce18091f19b06958ac66016bf9a32.tar.xz
lcr-3ac6881c22bce18091f19b06958ac66016bf9a32.zip
Added keypad forwarding, keypad parameter, chan_lcr keypad option 'k'.
modified: README modified: action.cpp modified: apppbx.cpp modified: chan_lcr.c modified: chan_lcr.h modified: dss1.cpp modified: joinpbx.cpp modified: joinpbx.h modified: message.h modified: route.c modified: route.h
Diffstat (limited to 'dss1.cpp')
-rw-r--r--dss1.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/dss1.cpp b/dss1.cpp
index 1cb52d1..e318aa3 100644
--- a/dss1.cpp
+++ b/dss1.cpp
@@ -402,7 +402,7 @@ void Pdss1::setup_ind(unsigned int cmd, unsigned int pid, struct l3_msg *l3m)
int bearer_coding, bearer_capability, bearer_mode, bearer_rate, bearer_multi, bearer_user;
int exclusive, channel;
int ret;
- unsigned char keypad[32] = "";
+ unsigned char keypad[33] = "";
unsigned char useruser[128];
int useruser_len = 0, useruser_protocol;
class Endpoint *epoint;
@@ -746,7 +746,7 @@ void Pdss1::setup_ind(unsigned int cmd, unsigned int pid, struct l3_msg *l3m)
void Pdss1::information_ind(unsigned int cmd, unsigned int pid, struct l3_msg *l3m)
{
int type, plan;
- unsigned char keypad[32] = "", display[128] = "";
+ unsigned char keypad[33] = "", display[128] = "";
struct lcr_msg *message;
l1l2l3_trace_header(p_m_mISDNport, this, L3_INFORMATION_IND, DIRECTION_IN);
@@ -2098,6 +2098,9 @@ void Pdss1::message_setup(unsigned int epoint_id, int message_id, union paramete
enc_ie_called_pn(l3m, 0, 1, (unsigned char *)p_dialinginfo.id, max);
SCPY(p_m_d_queue, p_dialinginfo.id + max);
}
+ /* keypad */
+ if (p_dialinginfo.keypad[0])
+ enc_ie_keypad(l3m, (unsigned char *)p_dialinginfo.keypad);
/* sending complete */
if (p_dialinginfo.sending_complete)
enc_ie_complete(l3m, 1);