[asterisk-commits] qwell: branch 1.4 r68249 -
/branches/1.4/channels/chan_skinny.c
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Thu Jun 7 13:25:19 MST 2007
Author: qwell
Date: Thu Jun 7 15:25:18 2007
New Revision: 68249
URL: http://svn.digium.com/view/asterisk?view=rev&rev=68249
Log:
Fix an issue with newer phones which require packets be padded out to the correct length.
Issue 9887, patch by DEA.
Modified:
branches/1.4/channels/chan_skinny.c
Modified: branches/1.4/channels/chan_skinny.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/channels/chan_skinny.c?view=diff&rev=68249&r1=68248&r2=68249
==============================================================================
--- branches/1.4/channels/chan_skinny.c (original)
+++ branches/1.4/channels/chan_skinny.c Thu Jun 7 15:25:18 2007
@@ -258,15 +258,20 @@
#define START_TONE_MESSAGE 0x0082
struct start_tone_message {
uint32_t tone;
+ uint32_t space[3];
};
#define STOP_TONE_MESSAGE 0x0083
+struct stop_tone_message {
+ uint32_t space[2];
+};
#define SET_RINGER_MESSAGE 0x0085
struct set_ringer_message {
uint32_t ringerMode;
uint32_t unknown1; /* See notes in transmit_ringer_mode */
uint32_t unknown2;
+ uint32_t space[2];
};
#define SET_LAMP_MESSAGE 0x0086
@@ -291,7 +296,7 @@
struct media_qualifier {
uint32_t precedence;
uint32_t vad;
- uint32_t packets;
+ uint16_t packets;
uint32_t bitRate;
};
@@ -303,12 +308,14 @@
uint32_t packetSize;
uint32_t payloadType;
struct media_qualifier qualifier;
+ uint32_t space[16];
};
#define STOP_MEDIA_TRANSMISSION_MESSAGE 0x008B
struct stop_media_transmission_message {
uint32_t conferenceId;
uint32_t passThruPartyId;
+ uint32_t space[3];
};
#define CALL_INFO_MESSAGE 0x008F
@@ -330,6 +337,7 @@
char calledPartyVoiceMailbox[24];
char originalCalledPartyVoiceMailbox[24];
char lastRedirectingVoiceMailbox[24];
+ uint32_t space[3];
};
#define SPEED_DIAL_STAT_RES_MESSAGE 0x0091
@@ -343,8 +351,8 @@
struct line_stat_res_message {
uint32_t lineNumber;
char lineDirNumber[24];
- char lineDisplayName[42];
- uint32_t space;
+ char lineDisplayName[24];
+ uint32_t space[15];
};
#define DEFINETIMEDATE_MESSAGE 0x0094
@@ -429,7 +437,6 @@
};
#define CLEAR_NOTIFY_MESSAGE 0x0115
-#define CLEAR_PROMPT_MESSAGE 0x0113
#define CLEAR_DISPLAY_MESSAGE 0x009A
#define CAPABILITIES_REQ_MESSAGE 0x009B
@@ -465,12 +472,14 @@
uint32_t capability;
uint32_t echo;
uint32_t bitrate;
+ uint32_t space[16];
};
#define CLOSE_RECEIVE_CHANNEL_MESSAGE 0x0106
struct close_receive_channel_message {
uint32_t conferenceId;
uint32_t partyId;
+ uint32_t space[2];
};
#define SOFT_KEY_TEMPLATE_RES_MESSAGE 0x0108
@@ -660,6 +669,7 @@
uint32_t callState;
uint32_t lineInstance;
uint32_t callReference;
+ uint32_t space[3];
};
#define DISPLAY_PROMPT_STATUS_MESSAGE 0x0112
@@ -668,6 +678,12 @@
char promptMessage[32];
uint32_t lineInstance;
uint32_t callReference;
+};
+
+#define CLEAR_PROMPT_MESSAGE 0x0113
+struct clear_prompt_message {
+ uint32_t lineInstance;
+ uint32_t callReference;
};
#define DISPLAY_NOTIFY_MESSAGE 0x0114
@@ -699,6 +715,7 @@
struct button_template_res_message buttontemplate;
struct displaytext_message displaytext;
struct display_prompt_status_message displaypromptstatus;
+ struct clear_prompt_message clearpromptstatus;
struct definetimedate_message definetimedate;
struct start_tone_message starttone;
struct speed_dial_stat_res_message speeddial;
@@ -926,7 +943,7 @@
struct skinny_line {
ast_mutex_t lock;
char name[80];
- char label[42]; /* Label that shows next to the line buttons */
+ char label[24]; /* Label that shows next to the line buttons */
char accountcode[AST_MAX_ACCOUNT_CODE];
char exten[AST_MAX_EXTENSION]; /* Extension where to start */
char context[AST_MAX_CONTEXT];
@@ -1564,7 +1581,7 @@
if (!(req = req_alloc(sizeof(struct start_tone_message), START_TONE_MESSAGE)))
return;
} else {
- if (!(req = req_alloc(0, STOP_TONE_MESSAGE)))
+ if (!(req = req_alloc(sizeof(struct stop_tone_message), STOP_TONE_MESSAGE)))
return;
}
@@ -4108,6 +4125,8 @@
res = handle_speed_dial_stat_req_message(req, s);
break;
case LINE_STATE_REQ_MESSAGE:
+ if (skinnydebug)
+ ast_verbose("Received LineStatRequest\n");
res = handle_line_state_req_message(req, s);
break;
case TIME_DATE_REQ_MESSAGE:
More information about the asterisk-commits
mailing list