mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-02 19:16:15 +00:00
properly handle signed integer input
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.0@45336 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -2305,6 +2305,10 @@ static int get_input(struct skinnysession *s)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
dlen = *(int *)s->inbuf;
|
dlen = *(int *)s->inbuf;
|
||||||
|
if (dlen < 0) {
|
||||||
|
ast_log(LOG_WARNING, "Skinny Client sent invalid data.\n");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
if (dlen+8 > sizeof(s->inbuf))
|
if (dlen+8 > sizeof(s->inbuf))
|
||||||
dlen = sizeof(s->inbuf) - 8;
|
dlen = sizeof(s->inbuf) - 8;
|
||||||
res = read(s->fd, s->inbuf+4, dlen+4);
|
res = read(s->fd, s->inbuf+4, dlen+4);
|
||||||
|
Reference in New Issue
Block a user