[asterisk-commits] wdoekes: branch 11 r376471 - in /branches/11: ./ channels/ main/
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Mon Nov 19 13:54:21 CST 2012
Author: wdoekes
Date: Mon Nov 19 13:54:15 2012
New Revision: 376471
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=376471
Log:
Fix most leftover non-opaque ast_str uses.
Instead of calling str->str, one should use ast_str_buffer(str). Same
goes for str->used as ast_str_strlen(str) and str->len as
ast_str_size(str).
Review: https://reviewboard.asterisk.org/r/2198
........
Merged revisions 376469 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 376470 from http://svn.asterisk.org/svn/asterisk/branches/10
Modified:
branches/11/ (props changed)
branches/11/channels/chan_sip.c
branches/11/main/indications.c
branches/11/main/security_events.c
Propchange: branches/11/
------------------------------------------------------------------------------
Binary property 'branch-10-merged' - no diff available.
Modified: branches/11/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/branches/11/channels/chan_sip.c?view=diff&rev=376471&r1=376470&r2=376471
==============================================================================
--- branches/11/channels/chan_sip.c (original)
+++ branches/11/channels/chan_sip.c Mon Nov 19 13:54:15 2012
@@ -3837,18 +3837,18 @@
int res = 0;
const struct ast_sockaddr *dst = sip_real_dst(p);
- ast_debug(2, "Trying to put '%.11s' onto %s socket destined for %s\n", data->str, get_transport_pvt(p), ast_sockaddr_stringify(dst));
+ ast_debug(2, "Trying to put '%.11s' onto %s socket destined for %s\n", ast_str_buffer(data), get_transport_pvt(p), ast_sockaddr_stringify(dst));
if (sip_prepare_socket(p) < 0) {
return XMIT_ERROR;
}
if (p->socket.type == SIP_TRANSPORT_UDP) {
- res = ast_sendto(p->socket.fd, data->str, ast_str_strlen(data), 0, dst);
+ res = ast_sendto(p->socket.fd, ast_str_buffer(data), ast_str_strlen(data), 0, dst);
} else if (p->socket.tcptls_session) {
- res = sip_tcptls_write(p->socket.tcptls_session, data->str, ast_str_strlen(data));
+ res = sip_tcptls_write(p->socket.tcptls_session, ast_str_buffer(data), ast_str_strlen(data));
} else if (p->socket.ws_session) {
- if (!(res = ast_websocket_write(p->socket.ws_session, AST_WEBSOCKET_OPCODE_TEXT, data->str, ast_str_strlen(data)))) {
+ if (!(res = ast_websocket_write(p->socket.ws_session, AST_WEBSOCKET_OPCODE_TEXT, ast_str_buffer(data), ast_str_strlen(data)))) {
/* The WebSocket API just returns 0 on success and -1 on failure, while this code expects the payload length to be returned */
res = ast_str_strlen(data);
}
@@ -4109,10 +4109,10 @@
ast_verbose("Retransmitting #%d (%s) to %s:\n%s\n---\n",
pkt->retrans, sip_nat_mode(pkt->owner),
ast_sockaddr_stringify(dst),
- pkt->data->str);
- }
-
- append_history(pkt->owner, "ReTx", "%d %s", reschedule, pkt->data->str);
+ ast_str_buffer(pkt->data));
+ }
+
+ append_history(pkt->owner, "ReTx", "%d %s", reschedule, ast_str_buffer(pkt->data));
xmitres = __sip_xmit(pkt->owner, pkt->data);
/* If there was no error during the network transmission, schedule the next retransmission,
@@ -4270,7 +4270,7 @@
ast_free(pkt);
return AST_FAILURE;
}
- ast_str_set(&pkt->data, 0, "%s%s", data->str, "\0");
+ ast_str_set(&pkt->data, 0, "%s%s", ast_str_buffer(data), "\0");
/* copy other parameters from the caller */
pkt->method = sipmethod;
pkt->seqno = seqno;
@@ -4546,7 +4546,7 @@
return;
}
cur = p->packets;
- method = (cur->method) ? cur->method : find_sip_method(cur->data->str);
+ method = (cur->method) ? cur->method : find_sip_method(ast_str_buffer(cur->data));
__sip_ack(p, cur->seqno, cur->is_resp, method);
}
}
@@ -4559,7 +4559,7 @@
for (cur = p->packets; cur; cur = cur->next) {
if (cur->seqno == seqno && cur->is_resp == resp &&
- (cur->is_resp || method_match(sipmethod, cur->data->str))) {
+ (cur->is_resp || method_match(sipmethod, ast_str_buffer(cur->data)))) {
/* this is our baby */
if (cur->retransid > -1) {
if (sipdebug)
@@ -4675,12 +4675,12 @@
ast_verbose("\n<--- %sTransmitting (%s) to %s --->\n%s\n<------------>\n",
reliable ? "Reliably " : "", sip_nat_mode(p),
ast_sockaddr_stringify(dst),
- req->data->str);
+ ast_str_buffer(req->data));
}
if (p->do_history) {
struct sip_request tmp = { .rlpart1 = 0, };
parse_copy(&tmp, req);
- append_history(p, reliable ? "TxRespRel" : "TxResp", "%s / %s - %s", tmp.data->str, sip_get_header(&tmp, "CSeq"),
+ append_history(p, reliable ? "TxRespRel" : "TxResp", "%s / %s - %s", ast_str_buffer(tmp.data), sip_get_header(&tmp, "CSeq"),
(tmp.method == SIP_RESPONSE || tmp.method == SIP_UNKNOWN) ? REQ_OFFSET_TO_STR(&tmp, rlpart2) : sip_methods[tmp.method].text);
deinit_req(&tmp);
}
@@ -4720,15 +4720,15 @@
add_blank(req);
if (sip_debug_test_pvt(p)) {
if (ast_test_flag(&p->flags[0], SIP_NAT_FORCE_RPORT)) {
- ast_verbose("%sTransmitting (NAT) to %s:\n%s\n---\n", reliable ? "Reliably " : "", ast_sockaddr_stringify(&p->recv), req->data->str);
+ ast_verbose("%sTransmitting (NAT) to %s:\n%s\n---\n", reliable ? "Reliably " : "", ast_sockaddr_stringify(&p->recv), ast_str_buffer(req->data));
} else {
- ast_verbose("%sTransmitting (no NAT) to %s:\n%s\n---\n", reliable ? "Reliably " : "", ast_sockaddr_stringify(&p->sa), req->data->str);
+ ast_verbose("%sTransmitting (no NAT) to %s:\n%s\n---\n", reliable ? "Reliably " : "", ast_sockaddr_stringify(&p->sa), ast_str_buffer(req->data));
}
}
if (p->do_history) {
struct sip_request tmp = { .rlpart1 = 0, };
parse_copy(&tmp, req);
- append_history(p, reliable ? "TxReqRel" : "TxReq", "%s / %s - %s", tmp.data->str, sip_get_header(&tmp, "CSeq"), sip_methods[tmp.method].text);
+ append_history(p, reliable ? "TxReqRel" : "TxReq", "%s / %s - %s", ast_str_buffer(tmp.data), sip_get_header(&tmp, "CSeq"), sip_methods[tmp.method].text);
deinit_req(&tmp);
}
res = (reliable) ?
@@ -7039,7 +7039,7 @@
sip_scheddestroy(p, DEFAULT_TRANS_TIMEOUT);
/* Start the process if it's not already started */
- if (!p->alreadygone && p->initreq.data && !ast_strlen_zero(p->initreq.data->str)) {
+ if (!p->alreadygone && p->initreq.data && ast_str_strlen(p->initreq.data)) {
if (needcancel) { /* Outgoing call, not up */
if (ast_test_flag(&p->flags[0], SIP_OUTGOING)) {
/* if we can't send right now, mark it pending */
@@ -7053,7 +7053,7 @@
struct sip_pkt *cur;
for (cur = p->packets; cur; cur = cur->next) {
- __sip_semi_ack(p, cur->seqno, cur->is_resp, cur->method ? cur->method : find_sip_method(cur->data->str));
+ __sip_semi_ack(p, cur->seqno, cur->is_resp, cur->method ? cur->method : find_sip_method(ast_str_buffer(cur->data)));
}
p->invitestate = INV_CANCELLED;
/* Send a new request: CANCEL */
@@ -9495,8 +9495,8 @@
*c = '\0';
} else if (*c == '\n') { /* end of this line */
*c = '\0';
- current_header_offset = (c + 1) - req->data->str;
- previous_header = req->data->str + dst[i];
+ current_header_offset = (c + 1) - ast_str_buffer(req->data);
+ previous_header = ast_str_buffer(req->data) + dst[i];
if (skipping_headers) {
/* check to see if this line is blank; if so, turn off
the skipping flag, so the next line will be processed
@@ -9542,7 +9542,7 @@
if we've already reached the maximum number of lines for portion of the message
we were parsing, we can't accept any more, so just ignore it.
*/
- previous_header = req->data->str + dst[i];
+ previous_header = ast_str_buffer(req->data) + dst[i];
if ((i < lim) && !ast_strlen_zero(previous_header)) {
if (sipdebug) {
ast_debug(4, "%7s %2d [%3d]: %s\n",
@@ -9683,7 +9683,7 @@
holdstate ? "On" : "Off",
ast_channel_name(dialog->owner),
ast_channel_uniqueid(dialog->owner));
- append_history(dialog, holdstate ? "Hold" : "Unhold", "%s", req->data->str);
+ append_history(dialog, holdstate ? "Hold" : "Unhold", "%s", ast_str_buffer(req->data));
if (!holdstate) { /* Put off remote hold */
ast_clear_flag(&dialog->flags[1], SIP_PAGE2_CALL_ONHOLD); /* Clear both flags */
return;
@@ -13226,8 +13226,8 @@
switch (offer->type) {
case SDP_AUDIO:
if (needaudio) {
- add_content(resp, m_audio->str);
- add_content(resp, a_audio->str);
+ add_content(resp, ast_str_buffer(m_audio));
+ add_content(resp, ast_str_buffer(a_audio));
add_content(resp, hold);
if (a_crypto) {
add_content(resp, a_crypto);
@@ -13238,8 +13238,8 @@
break;
case SDP_VIDEO:
if (needvideo) { /* only if video response is appropriate */
- add_content(resp, m_video->str);
- add_content(resp, a_video->str);
+ add_content(resp, ast_str_buffer(m_video));
+ add_content(resp, ast_str_buffer(a_video));
add_content(resp, hold); /* Repeat hold for the video stream */
if (v_a_crypto) {
add_content(resp, v_a_crypto);
@@ -13250,8 +13250,8 @@
break;
case SDP_TEXT:
if (needtext) { /* only if text response is appropriate */
- add_content(resp, m_text->str);
- add_content(resp, a_text->str);
+ add_content(resp, ast_str_buffer(m_text));
+ add_content(resp, ast_str_buffer(a_text));
add_content(resp, hold); /* Repeat hold for the text stream */
if (t_a_crypto) {
add_content(resp, t_a_crypto);
@@ -13262,8 +13262,8 @@
break;
case SDP_IMAGE:
if (add_t38) {
- add_content(resp, m_modem->str);
- add_content(resp, a_modem->str);
+ add_content(resp, ast_str_buffer(m_modem));
+ add_content(resp, ast_str_buffer(a_modem));
} else {
add_content(resp, offer->decline_m_line);
}
@@ -13276,32 +13276,32 @@
} else {
/* generate new SDP from scratch, no offers */
if (needaudio) {
- add_content(resp, m_audio->str);
- add_content(resp, a_audio->str);
+ add_content(resp, ast_str_buffer(m_audio));
+ add_content(resp, ast_str_buffer(a_audio));
add_content(resp, hold);
if (a_crypto) {
add_content(resp, a_crypto);
}
}
if (needvideo) { /* only if video response is appropriate */
- add_content(resp, m_video->str);
- add_content(resp, a_video->str);
+ add_content(resp, ast_str_buffer(m_video));
+ add_content(resp, ast_str_buffer(a_video));
add_content(resp, hold); /* Repeat hold for the video stream */
if (v_a_crypto) {
add_content(resp, v_a_crypto);
}
}
if (needtext) { /* only if text response is appropriate */
- add_content(resp, m_text->str);
- add_content(resp, a_text->str);
+ add_content(resp, ast_str_buffer(m_text));
+ add_content(resp, ast_str_buffer(a_text));
add_content(resp, hold); /* Repeat hold for the text stream */
if (t_a_crypto) {
add_content(resp, t_a_crypto);
}
}
if (add_t38) {
- add_content(resp, m_modem->str);
- add_content(resp, a_modem->str);
+ add_content(resp, ast_str_buffer(m_modem));
+ add_content(resp, ast_str_buffer(a_modem));
}
}
@@ -13736,7 +13736,7 @@
/* This is the request URI, which is the next hop of the call
which may or may not be the destination of the call
*/
- ast_string_field_set(p, uri, invite->str);
+ ast_string_field_set(p, uri, ast_str_buffer(invite));
if (!ast_strlen_zero(p->todnid)) {
/*! \todo Need to add back the VXML URL here at some point, possibly use build_string for all this junk */
@@ -14565,7 +14565,7 @@
break;
}
- add_content(&req, tmp->str);
+ add_content(&req, ast_str_buffer(tmp));
p->pendinginvite = p->ocseq; /* Remember that we have a pending NOTIFY in order not to confuse the NOTIFY subsystem */
@@ -14621,7 +14621,7 @@
}
}
- add_content(&req, out->str);
+ add_content(&req, ast_str_buffer(out));
if (!p->initreq.headers) {
initialize_initreq(p, &req);
@@ -19645,7 +19645,7 @@
print_named_groups(fd, peer->named_pickupgroups, 0);
peer_mailboxes_to_str(&mailbox_str, peer);
ast_cli(fd, " MOH Suggest : %s\n", peer->mohsuggest);
- ast_cli(fd, " Mailbox : %s\n", mailbox_str->str);
+ ast_cli(fd, " Mailbox : %s\n", ast_str_buffer(mailbox_str));
ast_cli(fd, " VM Extension : %s\n", peer->vmexten);
ast_cli(fd, " LastMsgsSent : %d/%d\n", (peer->lastmsgssent & 0x7fff0000) >> 16, peer->lastmsgssent & 0xffff);
ast_cli(fd, " Call limit : %d\n", peer->call_limit);
@@ -19767,7 +19767,7 @@
ast_str_reset(tmp_str);
astman_append(s, "MOHSuggest: %s\r\n", peer->mohsuggest);
peer_mailboxes_to_str(&tmp_str, peer);
- astman_append(s, "VoiceMailbox: %s\r\n", tmp_str->str);
+ astman_append(s, "VoiceMailbox: %s\r\n", ast_str_buffer(tmp_str));
astman_append(s, "TransferMode: %s\r\n", transfermode2str(peer->allowtransfer));
astman_append(s, "LastMsgsSent: %d\r\n", peer->lastmsgssent);
astman_append(s, "Maxforwards: %d\r\n", peer->maxforwards);
@@ -20007,7 +20007,7 @@
ast_cli(a->fd, "\n");
ast_sched_report(sched, &cbuf, &cbnames);
- ast_cli(a->fd, "%s", cbuf->str);
+ ast_cli(a->fd, "%s", ast_str_buffer(cbuf));
return CLI_SUCCESS;
}
@@ -20548,7 +20548,7 @@
cur->subscribed == MWI_NOTIFICATION ? "--" : cur->subscribeuri,
cur->subscribed == MWI_NOTIFICATION ? "<none>" : ast_extension_state2str(cur->laststate),
subscription_type2str(cur->subscribed),
- cur->subscribed == MWI_NOTIFICATION ? S_OR(mailbox_str->str, "<none>") : "<none>",
+ cur->subscribed == MWI_NOTIFICATION ? S_OR(ast_str_buffer(mailbox_str), "<none>") : "<none>",
cur->expiry
);
arg->numchans++;
@@ -21719,7 +21719,7 @@
} else if (!strcasecmp(colname, "mailbox")) {
struct ast_str *mailbox_str = ast_str_alloca(512);
peer_mailboxes_to_str(&mailbox_str, peer);
- ast_copy_string(buf, mailbox_str->str, len);
+ ast_copy_string(buf, ast_str_buffer(mailbox_str), len);
} else if (!strcasecmp(colname, "context")) {
ast_copy_string(buf, peer->context, len);
} else if (!strcasecmp(colname, "expire")) {
@@ -24523,12 +24523,12 @@
ast_str_set(&str, 0, "%s@%s", extension, sip_cfg.notifycid == IGNORE_CONTEXT ? "PICKUPMARK" : context);
- ast_debug(2, "About to call Pickup(%s)\n", str->str);
+ ast_debug(2, "About to call Pickup(%s)\n", ast_str_buffer(str));
/* There is no point in capturing the return value since pickup_exec
doesn't return anything meaningful unless the passed data is an empty
string (which in our case it will not be) */
- pbx_exec(channel, pickup, str->str);
+ pbx_exec(channel, pickup, ast_str_buffer(str));
return 0;
}
@@ -28033,7 +28033,7 @@
lws2sws(req->data); /* Fix multiline headers */
if (req->debug) {
ast_verbose("\n<--- SIP read from %s:%s --->\n%s\n<------------->\n",
- sip_get_transport(req->socket.type), ast_sockaddr_stringify(addr), req->data->str);
+ sip_get_transport(req->socket.type), ast_sockaddr_stringify(addr), ast_str_buffer(req->data));
}
if (parse_request(req) == -1) { /* Bad packet, can't parse */
@@ -28076,7 +28076,7 @@
}
if (p->do_history) /* This is a request or response, note what it was for */
- append_history(p, "Rx", "%s / %s / %s", req->data->str, sip_get_header(req, "CSeq"), REQ_OFFSET_TO_STR(req, rlpart2));
+ append_history(p, "Rx", "%s / %s / %s", ast_str_buffer(req->data), sip_get_header(req, "CSeq"), REQ_OFFSET_TO_STR(req, rlpart2));
if (handle_incoming(p, req, addr, &recount, &nounlock) == -1) {
/* Request failed */
@@ -28368,17 +28368,17 @@
struct ast_str *mailbox_str = ast_str_alloca(512);
peer_mailboxes_to_str(&mailbox_str, peer);
/* if there is no mailbox do nothing */
- if (ast_strlen_zero(mailbox_str->str)) {
+ if (!ast_str_strlen(mailbox_str)) {
ao2_unlock(peer);
return -1;
}
ao2_unlock(peer);
/* If there is no mailbox do nothing */
- if (ast_strlen_zero(mailbox_str->str)) {
+ if (!ast_str_strlen(mailbox_str)) {
update_peer_lastmsgssent(peer, -1, 0);
return 0;
}
- ast_app_inboxcount(mailbox_str->str, &newmsgs, &oldmsgs);
+ ast_app_inboxcount(ast_str_buffer(mailbox_str), &newmsgs, &oldmsgs);
ao2_lock(peer);
}
@@ -30530,7 +30530,7 @@
ast_str_reset(fullcontact);
}
/* Reconstruct field, because realtime separates our value at the ';' */
- if (fullcontact->used > 0) {
+ if (ast_str_strlen(fullcontact) > 0) {
ast_str_append(&fullcontact, 0, ";%s", v->value);
} else {
ast_str_set(&fullcontact, 0, "%s", v->value);
@@ -30639,7 +30639,7 @@
/* XXX May need to revisit the final argument; does the realtime DB store whether
* the original contact was over TLS or not? XXX */
if (!ast_test_flag(&peer->flags[0], SIP_NAT_FORCE_RPORT) || ast_sockaddr_isnull(&peer->addr)) {
- __set_address_from_contact(fullcontact->str, &peer->addr, 0);
+ __set_address_from_contact(ast_str_buffer(fullcontact), &peer->addr, 0);
}
}
Modified: branches/11/main/indications.c
URL: http://svnview.digium.com/svn/asterisk/branches/11/main/indications.c?view=diff&rev=376471&r1=376470&r2=376471
==============================================================================
--- branches/11/main/indications.c (original)
+++ branches/11/main/indications.c Mon Nov 19 13:54:15 2012
@@ -873,7 +873,7 @@
(j == tz->nrringcadence - 1) ? "" : ",");
}
ast_str_append(&buf, 0, "\n");
- ast_cli(a->fd, "%s", buf->str);
+ ast_cli(a->fd, "%s", ast_str_buffer(buf));
AST_LIST_TRAVERSE(&tz->tones, ts, entry) {
ast_cli(a->fd, "%-7.7s %-15.15s %s\n", tz->country, ts->name, ts->data);
Modified: branches/11/main/security_events.c
URL: http://svnview.digium.com/svn/asterisk/branches/11/main/security_events.c?view=diff&rev=376471&r1=376470&r2=376471
==============================================================================
--- branches/11/main/security_events.c (original)
+++ branches/11/main/security_events.c Mon Nov 19 13:54:15 2012
@@ -491,7 +491,7 @@
return ast_event_new(AST_EVENT_SECURITY,
AST_EVENT_IE_SECURITY_EVENT, AST_EVENT_IE_PLTYPE_UINT, sec->event_type,
AST_EVENT_IE_EVENT_VERSION, AST_EVENT_IE_PLTYPE_UINT, sec->version,
- AST_EVENT_IE_EVENT_TV, AST_EVENT_IE_PLTYPE_STR, str->str,
+ AST_EVENT_IE_EVENT_TV, AST_EVENT_IE_PLTYPE_STR, ast_str_buffer(str),
AST_EVENT_IE_SERVICE, AST_EVENT_IE_PLTYPE_STR, sec->service,
AST_EVENT_IE_SEVERITY, AST_EVENT_IE_PLTYPE_STR, severity_str,
AST_EVENT_IE_END);
More information about the asterisk-commits
mailing list