--- chan_sip.c 2004-09-09 21:06:50.000000000 -0300 +++ channels/chan_sip.c 2004-09-09 21:10:31.000000000 -0300 @@ -2163,16 +2163,19 @@ static char *__get_header(struct sip_request *req, char *name, int *start) { int x; - int len = strlen(name); + int len = strlen(name), i = 0; char *r; for (x=*start;xheaders;x++) { - if (!strncasecmp(req->header[x], name, len) && - (req->header[x][len] == ':')) { - r = req->header[x] + len + 1; + if (!strncasecmp(req->header[x], name, len)) { + for (i=0;i<(strlen(req->header[x])-len);i++) { + if (req->header[x][(len+i)] == ':') { + r = req->header[x] + len + i + 1; while(*r && (*r < 33)) r++; *start = x+1; return r; + } + } } } /* Try aliases */