diff --git a/core/SipCtrlInterface.cpp b/core/SipCtrlInterface.cpp index 684e1a5f..91a4931b 100644 --- a/core/SipCtrlInterface.cpp +++ b/core/SipCtrlInterface.cpp @@ -750,7 +750,7 @@ void SipCtrlInterface::handle_reply_timeout(AmSipTimeoutEvent::EvType evt, case AmSipTimeoutEvent::noPRACK: { sip_msg msg(tr->retr_buf->c_str(), tr->retr_buf->length()); - char* err_msg=0; + const char* err_msg=0; int err = parse_sip_msg(msg, err_msg); if (err) { ERROR("failed to parse (own) reply[%d]: %s.\n", err, diff --git a/core/sip/sip_parser.cpp b/core/sip/sip_parser.cpp index 00ea200e..026cd4f4 100644 --- a/core/sip/sip_parser.cpp +++ b/core/sip/sip_parser.cpp @@ -519,7 +519,7 @@ int parse_headers(sip_msg& msg, const char** c, const char* end) return err; } -int parse_sip_msg(sip_msg& msg, char*& err_msg) +int parse_sip_msg(sip_msg& msg, const char*& err_msg) { const char* c = msg.buf.c_str(); const char* end = c + msg.buf.length(); @@ -527,7 +527,7 @@ int parse_sip_msg(sip_msg& msg, char*& err_msg) int err = parse_first_line(msg, &c, end); if(err) { - err_msg = (char*)"Could not parse first line"; + err_msg = "Could not parse first line"; return MALFORMED_FLINE; } @@ -544,19 +544,19 @@ int parse_sip_msg(sip_msg& msg, char*& err_msg) !msg.callid) { if(!msg.via1){ - err_msg = (char*)"missing Via header field"; + err_msg = "missing Via header field"; } else if(!msg.cseq){ - err_msg = (char*)"missing CSeq header field"; + err_msg = "missing CSeq header field"; } else if(!msg.from){ - err_msg = (char*)"missing From header field"; + err_msg = "missing From header field"; } else if(!msg.to){ - err_msg = (char*)"missing To header field"; + err_msg = "missing To header field"; } else if(!msg.callid){ - err_msg = (char*)"missing Call-ID header field"; + err_msg = "missing Call-ID header field"; } return INCOMPLETE_SIP_MSG; @@ -572,7 +572,7 @@ int parse_sip_msg(sip_msg& msg, char*& err_msg) msg.via1->p = via.release(); } else { - err_msg = (char*)"could not parse Via hf"; + err_msg = "could not parse Via hf"; return MALFORMED_SIP_MSG; } @@ -586,17 +586,17 @@ int parse_sip_msg(sip_msg& msg, char*& err_msg) msg.cseq->p = cseq.release(); } else { - err_msg = (char*)"could not parse CSeq hf"; + err_msg = "could not parse CSeq hf"; return MALFORMED_SIP_MSG; } unique_ptr from(new sip_from_to()); if(parse_from_to(from.get(), msg.from->value.s, msg.from->value.len) != 0) { - err_msg = (char*)"could not parse From hf"; + err_msg = "could not parse From hf"; return MALFORMED_SIP_MSG; } if(!from->tag.len) { - err_msg = (char*)"missing From-tag"; + err_msg = "missing From-tag"; return MALFORMED_SIP_MSG; } msg.from->p = from.release(); @@ -609,7 +609,7 @@ int parse_sip_msg(sip_msg& msg, char*& err_msg) msg.to->p = to.release(); } else { - err_msg = (char*)"could not parse To hf"; + err_msg = "could not parse To hf"; return MALFORMED_SIP_MSG; } @@ -618,7 +618,7 @@ int parse_sip_msg(sip_msg& msg, char*& err_msg) if (parse_rack(rack.get(), msg.rack->value.s, msg.rack->value.len)) { msg.rack->p = rack.release(); } else { - err_msg = (char *)"could not parse RAck hf"; + err_msg = "could not parse RAck hf"; return MALFORMED_SIP_MSG; } } diff --git a/core/sip/sip_parser.h b/core/sip/sip_parser.h index 846d4255..ca492910 100644 --- a/core/sip/sip_parser.h +++ b/core/sip/sip_parser.h @@ -157,7 +157,7 @@ struct sip_msg int parse_method(int* method, const char* beg, int len); int parse_headers(sip_msg& msg, const char** c, const char* end); -int parse_sip_msg(sip_msg& msg, char*& err_msg); +int parse_sip_msg(sip_msg& msg, const char*& err_msg); #define get_contact(msg) (msg->contacts.empty() ? NULL : (*msg->contacts.begin())) diff --git a/core/sip/trans_layer.cpp b/core/sip/trans_layer.cpp index 4df4e79d..48ad822b 100644 --- a/core/sip/trans_layer.cpp +++ b/core/sip/trans_layer.cpp @@ -864,7 +864,7 @@ static void set_err_reply_from_req(sip_msg* err, sip_msg* req, void trans_layer::transport_error(sip_msg* msg) { - char* err_msg=0; + const char* err_msg=0; int ret = parse_sip_msg(*msg, err_msg); if(ret){ DBG("parse_sip_msg returned %i\n",ret); @@ -1055,7 +1055,7 @@ static int generate_and_parse_new_msg(sip_msg* msg, sip_msg*& p_msg) buf += msg->body; // and parse it - char* err_msg=0; + const char* err_msg=0; if(parse_sip_msg(*p_msg, err_msg)){ ERROR("Parser failed on generated request\n"); ERROR("Message was: <%s>\n", buf.c_str()); @@ -1361,7 +1361,7 @@ int trans_layer::cancel(trans_ticket* tt, const string& dialog_id, buf += LF; // and parse it - char* err_msg=0; + const char* err_msg=0; if(parse_sip_msg(*p_msg, err_msg)){ ERROR("Parser failed on generated request\n"); ERROR("Message was: <%s>\n", buf.c_str()); @@ -1419,7 +1419,7 @@ int trans_layer::cancel(trans_ticket* tt, const string& dialog_id, void trans_layer::received_msg(sip_msg* msg) { - char* err_msg=0; + const char* err_msg=0; int err = parse_sip_msg(*msg, err_msg); if(err){