From: Damien Wedhorn Date: Thu, 6 Oct 2011 23:08:57 +0000 (+0000) Subject: Reject v17 skinny devices in Asterisk10 X-Git-Tag: 10.0.0-rc1~102 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9926417cacc4482147f707cad403bc97d77e8aaf;p=thirdparty%2Fasterisk.git Reject v17 skinny devices in Asterisk10 Small fix for Asterisk10 to reject skinny devices with skinny firmware version17 and above. Review: https://reviewboard.asterisk.org/r/1497/ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@339722 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c index dbec7e36da..cc63d6443f 100644 --- a/channels/chan_skinny.c +++ b/channels/chan_skinny.c @@ -273,6 +273,9 @@ struct register_message { uint32_t ip; uint32_t type; uint32_t maxStreams; + uint32_t space; + uint8_t protocolVersion; + char space2[3] ; }; #define IP_PORT_MESSAGE 0x0002 @@ -2049,6 +2052,11 @@ static int skinny_register(struct skinny_req *req, struct skinnysession *s) socklen_t slen; int instance; + if (letohl(req->data.reg.protocolVersion) >= 17) { + ast_log(LOG_WARNING, "Asterisk10 does not support skinny protocol 17 and above. Rejecting device.\n"); + return 0; + } + AST_LIST_LOCK(&devices); AST_LIST_TRAVERSE(&devices, d, list){ struct ast_sockaddr addr;