Loading codec/c++/sip_codets.cpp +47 −9 Original line number Diff line number Diff line Loading @@ -705,6 +705,9 @@ private: SIP_HEADER_ADD (Date, , date, DATE_E); SIP_HEADER_ADD (Error-Info, , errorInfo, ERROR_INFO_E); SIP_HEADER_ADD (Expires, , expires, EXPIRES_E); SIP_HEADER_ADD (In-Reply-To, , inReplyTo, IN_REPLY_TO_E); SIP_HEADER_ADD (MIME-Version, , mimeVersion, MIME_VERSION_E); SIP_HEADER_ADD (Min-Expires, , minExpires, MIN_EXPIRES_E); { mEntries.push_back(Entry("", "", MessageHeader::id_undefinedHeader_List, "")); Entry& e = *mEntries.rbegin(); Loading Loading @@ -1189,6 +1192,14 @@ void LanguageTag_List::PreDecodeField (int id, Buffer& buffer) throw (DecodeErro SetHypSize(-2); } void Date::PreDecodeField (int id, Buffer& buffer) throw (DecodeError){ static Regex reg_date ("^[^\\r\\n]+"); if (id == id_sipDate){ reg_date.AssertMatch(buffer, this); SetHypFieldLength(id, reg_date.GetMatchedLength()); } } void ErrorInfo::PreDecodeField (int id, Buffer& buffer) throw (DecodeError){ static Regex reg_error_info ("^[^;,\\r\\n]"); if (id == id_errorInfo){ Loading Loading @@ -1236,7 +1247,41 @@ void ErrorInfoBody_List::PreDecodeField (int id, Buffer& buffer) throw (DecodeEr void Expires::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_delta_sec ("^[0-9]"); static Regex reg_delta_sec ("^[0-9]+"); switch (id) { case id_deltaSec: reg_delta_sec.AssertMatch (buffer, this); SetHypFieldLength (id, reg_delta_sec.GetMatchedLength()); break; } } void CallidString_List::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { int nRes = detect_comma(this, buffer); if (nRes >= 0) SetHypFieldLength(nRes); else SetHypSize(-2); } void MimeVersion::PreDecode (Buffer& buffer) throw (DecodeError) { Get_majorNumber().SetFormat(Integer::AsciiDecimal); Get_minorNumber().SetFormat(Integer::AsciiDecimal); } void MimeVersion::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_separator ("^[.]+"); if (id == id_minorNumber) { reg_separator.AssertMatch (buffer, this); buffer.SetPosition(buffer.GetPosition() + 8); } } void MinExpires::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_delta_sec ("^[0-9]+"); switch (id) { case id_deltaSec: Loading @@ -1246,6 +1291,7 @@ void Expires::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) } } void NameAddr::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_display_name ("^" SIPREG_DISPLAY_NAME); Loading @@ -1271,14 +1317,6 @@ void NameAddr::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) } } void Date::PreDecodeField (int id, Buffer& buffer) throw (DecodeError){ static Regex reg_date ("^[^\\r\\n]+"); if (id == id_sipDate){ reg_date.AssertMatch(buffer, this); SetHypFieldLength(id, reg_date.GetMatchedLength()); } } void NameAddr::PostDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_raquot ("^>"); Loading Loading
codec/c++/sip_codets.cpp +47 −9 Original line number Diff line number Diff line Loading @@ -705,6 +705,9 @@ private: SIP_HEADER_ADD (Date, , date, DATE_E); SIP_HEADER_ADD (Error-Info, , errorInfo, ERROR_INFO_E); SIP_HEADER_ADD (Expires, , expires, EXPIRES_E); SIP_HEADER_ADD (In-Reply-To, , inReplyTo, IN_REPLY_TO_E); SIP_HEADER_ADD (MIME-Version, , mimeVersion, MIME_VERSION_E); SIP_HEADER_ADD (Min-Expires, , minExpires, MIN_EXPIRES_E); { mEntries.push_back(Entry("", "", MessageHeader::id_undefinedHeader_List, "")); Entry& e = *mEntries.rbegin(); Loading Loading @@ -1189,6 +1192,14 @@ void LanguageTag_List::PreDecodeField (int id, Buffer& buffer) throw (DecodeErro SetHypSize(-2); } void Date::PreDecodeField (int id, Buffer& buffer) throw (DecodeError){ static Regex reg_date ("^[^\\r\\n]+"); if (id == id_sipDate){ reg_date.AssertMatch(buffer, this); SetHypFieldLength(id, reg_date.GetMatchedLength()); } } void ErrorInfo::PreDecodeField (int id, Buffer& buffer) throw (DecodeError){ static Regex reg_error_info ("^[^;,\\r\\n]"); if (id == id_errorInfo){ Loading Loading @@ -1236,7 +1247,41 @@ void ErrorInfoBody_List::PreDecodeField (int id, Buffer& buffer) throw (DecodeEr void Expires::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_delta_sec ("^[0-9]"); static Regex reg_delta_sec ("^[0-9]+"); switch (id) { case id_deltaSec: reg_delta_sec.AssertMatch (buffer, this); SetHypFieldLength (id, reg_delta_sec.GetMatchedLength()); break; } } void CallidString_List::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { int nRes = detect_comma(this, buffer); if (nRes >= 0) SetHypFieldLength(nRes); else SetHypSize(-2); } void MimeVersion::PreDecode (Buffer& buffer) throw (DecodeError) { Get_majorNumber().SetFormat(Integer::AsciiDecimal); Get_minorNumber().SetFormat(Integer::AsciiDecimal); } void MimeVersion::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_separator ("^[.]+"); if (id == id_minorNumber) { reg_separator.AssertMatch (buffer, this); buffer.SetPosition(buffer.GetPosition() + 8); } } void MinExpires::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_delta_sec ("^[0-9]+"); switch (id) { case id_deltaSec: Loading @@ -1246,6 +1291,7 @@ void Expires::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) } } void NameAddr::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_display_name ("^" SIPREG_DISPLAY_NAME); Loading @@ -1271,14 +1317,6 @@ void NameAddr::PreDecodeField (int id, Buffer& buffer) throw (DecodeError) } } void Date::PreDecodeField (int id, Buffer& buffer) throw (DecodeError){ static Regex reg_date ("^[^\\r\\n]+"); if (id == id_sipDate){ reg_date.AssertMatch(buffer, this); SetHypFieldLength(id, reg_date.GetMatchedLength()); } } void NameAddr::PostDecodeField (int id, Buffer& buffer) throw (DecodeError) { static Regex reg_raquot ("^>"); Loading