Index: channels/chan_sip.c =================================================================== --- channels/chan_sip.c (revision 61638) +++ channels/chan_sip.c (working copy) @@ -6014,7 +6014,7 @@ snprintf(tmp, sizeof(tmp), "%d", p->expiry); add_header(resp, "Expires", tmp); if (p->expiry) { /* Only add contact if we have an expiry time */ - char contact[256]; + char contact[384]; snprintf(contact, sizeof(contact), "%s;expires=%d", p->our_contact, p->expiry); add_header(resp, "Contact", contact); /* Not when we unregister */ } @@ -7046,7 +7046,7 @@ /*! \brief Check Contact: URI of SIP message */ static void extract_uri(struct sip_pvt *p, struct sip_request *req) { - char stripped[256]; + char stripped[BUFSIZ]; char *c; ast_copy_string(stripped, get_header(req, "Contact"), sizeof(stripped)); @@ -8208,7 +8208,7 @@ /*! \brief Save contact header for 200 OK on INVITE */ static int parse_ok_contact(struct sip_pvt *pvt, struct sip_request *req) { - char contact[250]; + char contact[378]; char *c; /* Look for brackets */ @@ -12238,7 +12238,7 @@ /*! \brief Parse 302 Moved temporalily response */ static void parse_moved_contact(struct sip_pvt *p, struct sip_request *req) { - char tmp[256]; + char tmp[384]; char *s, *e; char *domain;