-Thu Jul 9 19:50:55 CDT 2009
+Thu Jul 9 19:52:17 CDT 2009
for (n = l1; IS_LWS(s[n]); n++)
s[n] = '\0';
if (s[n] == '/') {
- for (n = n + 1; IS_LWS(s[n]); n++);
+ for (n = n + 1; IS_LWS(s[n]); n++)
+ {}
l2 = span_token(s + n);
n += l2;
}
*ss = (s + n);
if (nname) *nname = name;
- return code;
+ return (http_method_t)code;
}
/** Get method enum corresponding to method name */
/* Media type consists of two tokens, separated by / */
l1 = span_token(s);
- for (n = l1; IS_LWS(s[n]); n++);
+ for (n = l1; IS_LWS(s[n]); n++)
+ {}
if (s[n] == '/') {
- for (n++; IS_LWS(s[n]); n++);
+ for (n++; IS_LWS(s[n]); n++)
+ {}
l2 = span_token(s + n);
n += l2;
}
}
if (mo->msg_flags & MSG_FLG_TRAILERS)
- msg_set_streaming(msg, 0);
+ msg_set_streaming(msg, (enum msg_streaming_status)0);
if (msg->m_buffer->mb_used + msg->m_buffer->mb_commit ==
msg->m_buffer->mb_size)
if (n == N) {
/* Reallocate params */
- char const **nparams = su_realloc(home, params != stack ? params : NULL,
+ char const **nparams = su_realloc(home, (void*)(params != stack ? params : NULL),
(N = MSG_PARAMS_NUM(N + 1)) * sizeof(*params));
if (!nparams) {
goto error;
}
else if (n == N) {
/* Reallocate params */
- char const **nparams = su_realloc(home, params != stack ? params : NULL,
+ char const **nparams = su_realloc(home, (void*)(params != stack ? params : NULL),
(N = MSG_PARAMS_NUM(N + 1)) * sizeof(*params));
if (!nparams) {
goto error;
if (s == NULL)
return 0;
- for (M = 0; s[M]; M++);
+ for (M = 0; s[M]; M++)
+ {}
if (M == 0)
return 0;
dd = (msg_param_t **)((char *)dst + dst->h_class->hc_params);
d = *dd;
- for (N = 0; d && d[N]; N++);
+ for (N = 0; d && d[N]; N++)
+ {}
for (m = 0, M = 0, total = 0; s[m]; m++) {
t = s[m];
url->url_port = lv->v_port;
return 1;
}
- if (su_strmatch(url->url_port, url_port_default(url->url_type)) ||
+ if (su_strmatch(url->url_port, url_port_default((enum url_type_e)url->url_type)) ||
su_strmatch(url->url_port, ""))
/* Remove default or empty port */
url->url_port = NULL;
{
tport_t *tp;
- assert(orq); (void)tp;
+ assert(orq);
#if HAVE_SOFIA_STUN
return tport_keepalive(orq->orq_tport, msg_addrinfo(orq->orq_request),
if (!h || !url)
return -1;
- tpn->tpn_proto = url_tport_default(url->url_type);
+ tpn->tpn_proto = url_tport_default((enum url_type_e)url->url_type);
tpn->tpn_canon = h->h_host;
tpn->tpn_host = h->h_host;
if (h->h_port)
tpn->tpn_port = h->h_port;
else
- tpn->tpn_port = url_port_default(url->url_type);
+ tpn->tpn_port = url_port_default((enum url_type_e)url->url_type);
return 0;
}
if (streaming && !hc->hc_streaming) {
/* Disable streaming for this msg */
- msg_set_streaming(msg, 0);
+ msg_set_streaming(msg, (enum msg_streaming_status)0);
return 0; /* Wait for complete message */
}
shutdown = 2;
if (!streaming || shutdown)
- msg_set_streaming(msg, 0);
+ msg_set_streaming(msg, (enum msg_streaming_status)0);
if (hc->hc_pending) {
tport_release(hc->hc_tport, hc->hc_pending, hc->hc_request, msg, hc,
if (parent->site_path) {
/* subpath */
- url_init(url0, parent->site_url->url_type);
+ url_init(url0, (enum url_type_e)parent->site_url->url_type);
url0->url_path = s;
address = (url_string_t*)url0;
}
/* absolute URL with scheme */;
else if (s[sep] == '\0' && strchr(s, '.') && host_is_valid(s)) {
/* looks like a domain name */;
- url_init(url0, parent->site_url->url_type);
+ url_init(url0, (enum url_type_e)parent->site_url->url_type);
url0->url_host = s;
address = (url_string_t*)url0;
}
else {
/* looks like a path */
- url_init(url0, parent->site_url->url_type);
+ url_init(url0, (enum url_type_e)parent->site_url->url_type);
url0->url_path = s;
address = (url_string_t*)url0;
}
return NULL;
}
- tpn->tpn_proto = url_tport_default(url->url_type);
+ tpn->tpn_proto = url_tport_default((enum url_type_e)url->url_type);
tpn->tpn_canon = url->url_host;
tpn->tpn_host = url->url_host;
tpn->tpn_port = url_port(url);
/* Disable streaming */
if (msg_is_streaming(request)) {
- msg_set_streaming(request, 0);
+ msg_set_streaming(request, (enum msg_streaming_status)0);
return;
}
else {
tp_name_t const *tpn = tport_name(tport); assert(tpn);
loc->loc_url->url_host = tpn->tpn_canon;
- if (strcmp(url_port_default(loc->loc_url->url_type), tpn->tpn_port))
+ if (strcmp(url_port_default((enum url_type_e)loc->loc_url->url_type), tpn->tpn_port))
loc->loc_url->url_port = tpn->tpn_port;
}
}
if (!cr) {
return nua_stack_event(nh->nh_nua, nh,
NULL,
- event,
+ (enum nua_event_e)event,
NUA_ERROR_AT(__FILE__, __LINE__),
NULL);
}
int can_redirect(sip_contact_t const *m, sip_method_t method)
{
if (m && m->m_url->url_host) {
- enum url_type_e type = m->m_url->url_type;
+ enum url_type_e type = (enum url_type_e)m->m_url->url_type;
return
type == url_sip ||
type == url_sips ||
nua_stack_event(nh->nh_nua, nh,
nta_outgoing_getresponse(orq),
- cr->cr_event,
+ (enum nua_event_e)cr->cr_event,
status, phrase,
tags);
return 1;
}
SU_DEBUG_7(("nua(%p): authorize_watcher: %s\n", (void *)nh, what));
- nea_sub_auth(sn->sn_subscriber, substate,
+ nea_sub_auth(sn->sn_subscriber, (nea_state_t)substate,
TAG_IF(substate == nua_substate_pending,
NEATAG_FAKE(1)),
TAG_IF(substate == nua_substate_terminated,
TAG_END());
if (sub && state > 0) {
- nea_sub_auth(sub, state, TAG_NEXT(tags));
+ nea_sub_auth(sub, (nea_state_t)state, TAG_NEXT(tags));
nua_stack_event(nua, nh, NULL, e, SIP_200_OK, NULL);
}
else {
nua_stack_tevent(nh->nh_nua, nh,
nta_outgoing_getresponse(orq),
- cr->cr_event,
+ (enum nua_event_e)cr->cr_event,
status, phrase,
NUTAG_SUBSTATE(substate),
SIPTAG_EVENT(du ? du->du_event : NULL),
else if (refresher <= nua_no_refresher)
refresher = nua_no_refresher;
- NHP_SET(nhp, refresher, refresher);
+ NHP_SET(nhp, refresher, (enum nua_session_refresher)refresher);
}
/* NUTAG_UPDATE_REFRESH(update_refresh) */
else if (tag == nutag_update_refresh) {
}
else if (status < 300 && !sr->sr_event) {
msg_t *msg = msg_ref_create(sr->sr_request.msg);
- nua_event_t e = sr->sr_methods->sm_event;
+ nua_event_t e = (enum nua_event_e)sr->sr_methods->sm_event;
sr->sr_event = 1;
nua_stack_event(nua, nh, msg, e, status, phrase, tags);
}
}
else if (!nh->nh_valid) { /* Handle has been destroyed */
if (nua_log->log_level >= 7) {
- char const *name = nua_event_name(e->e_event) + 4;
+ char const *name = nua_event_name((enum nua_event_e)e->e_event) + 4;
SU_DEBUG_7(("nua(%p): event %s dropped\n", (void *)nh, name));
}
nua_handle_unref(nh);
su_msg_save(frame->nf_saved, sumsg);
frame->nf_next = nua->nua_current, nua->nua_current = frame;
- nua->nua_callback(e->e_event, e->e_status, e->e_phrase,
+ nua->nua_callback((enum nua_event_e)e->e_event, e->e_status, e->e_phrase,
nua, nua->nua_magic,
nh, nh ? nh->nh_magic : NULL,
e->e_msg ? sip_object(e->e_msg) : NULL,
}
if (nua_log->log_level >= 5) {
- char const *name = nua_event_name(e->e_event);
+ char const *name = nua_event_name((enum nua_event_e)e->e_event);
if (e->e_status == 0)
SU_DEBUG_5(("nua(%p): %s signal %s\n", (void *)nh, "recv", name + 4));
su_msg_save(nua->nua_signal, msg);
- event = e->e_event;
+ event = (enum nua_event_e)e->e_event;
if (nua->nua_shutdown && !e->e_always) {
/* Shutting down */
void nua_stack_destroy_handle(nua_t *nua, nua_handle_t *nh, tagi_t const *tags)
{
if (nh->nh_notifier)
- nua_stack_terminate(nua, nh, 0, NULL);
+ nua_stack_terminate(nua, nh, (enum nua_event_e)0, NULL);
nua_dialog_shutdown(nh, nh->nh_ds);
if (!error) {
/* Give application an Event header for matching NOTIFYs with REFER */
nua_stack_tevent(nh->nh_nua, nh, NULL,
- cr->cr_event, SIP_100_TRYING,
+ (enum nua_event_e)cr->cr_event, SIP_100_TRYING,
NUTAG_REFER_EVENT(event),
SIPTAG_EVENT(event),
TAG_END());
else if (sip_has_feature(sip->sip_unsupported, tag))
return outbound_feature_unsupported;
else
- return level;
+ return (enum outbound_feature)level;
}
sip_cseq_t *cs;
if (method)
- method_name = sip_method_name(method, method_name);
+ method_name = sip_method_name((sip_method_t)method, method_name);
if (method_name == NULL)
return NULL;
if (cs) {
cs->cs_seq = seq;
- cs->cs_method = method;
+ cs->cs_method = (sip_method_t)method;
if (!method)
method_name = strcpy((char *)(cs + 1), method_name);
cs->cs_method_name = method_name;
result = s;
l1 = span_token(s);
- for (n = l1; IS_LWS(s[n]); n++);
+ for (n = l1; IS_LWS(s[n]); n++)
+ {}
if (s[n] == '/') {
- for (n++; IS_LWS(s[n]); n++);
+ for (n++; IS_LWS(s[n]); n++)
+ {}
l2 = span_token(s + n);
n += l2;
}
*ss = (s + n);
if (return_name) *return_name = name;
- return code;
+ return (sip_method_t)code;
}
/** Get method enum corresponding to method name */
*in_out_s = s + strlen(s);
return 1;
} else if (s[0] == '"' && s[1] != '\0') {
- for (s++; IS_LWS(s[0]); s++);
+ for (s++; IS_LWS(s[0]); s++)
+ {}
} else
old_type = sp_error;
} else if (!s[0]) {
return 0;
if ((*return_negation = s[0] == '!'))
- for (s++; IS_LWS(s[0]); s++);
+ for (s++; IS_LWS(s[0]); s++)
+ {}
if (*s == '#') {
/* Numeric */
double n1, n2;
char s0, *e;
- for (s++; IS_LWS(s[0]); s++);
+ for (s++; IS_LWS(s[0]); s++)
+ {}
s0 = s[0];
s += n;
}
- for (; IS_LWS(s[0]); s++);
+ for (; IS_LWS(s[0]); s++)
+ {}
if (s[0] == ',' || (s[0] == '"' && s[1] == '\0'))
- for (s++; IS_LWS(s[0]); s++);
+ for (s++; IS_LWS(s[0]); s++)
+ {}
else
old_type = sp_error;
|| srtp_integrity != (int)ss->ss_srtp_integrity
;
- ss->ss_af = af;
+ ss->ss_af = (enum soa_af)af;
ss->ss_rtp_select = rtp_select;
ss->ss_rtp_sort = rtp_sort;
if (c->c_nettype != sdp_net_in ||
(c->c_addrtype != sdp_addr_ip4 && c->c_addrtype != sdp_addr_ip6)) {
- c->c_nettype = sdp_net_in, c->c_addrtype = 0;
+ c->c_nettype = sdp_net_in, c->c_addrtype = (sdp_addrtype_e)0;
c->c_address = strcpy(buffer, "");
}
if (ip4 && ip6) {
/* Prefer address family already used in session, if any */
- sdp_addrtype_e addrtype = 0;
+ sdp_addrtype_e addrtype = (sdp_addrtype_e)0;
char const *because = "error";
if (sdp && sdp->sdp_connection &&
if (session == NULL || user == NULL)
return (errno = EFAULT), -1;
- Ns = sdp_media_count(session, sdp_media_any, 0, 0, 0);
- Nu = sdp_media_count(user, sdp_media_any, 0, 0, 0);
- Nr = sdp_media_count(remote, sdp_media_any, 0, 0, 0);
+ Ns = sdp_media_count(session, sdp_media_any, (sdp_text_t)0, (sdp_proto_e)0, (sdp_text_t)0);
+ Nu = sdp_media_count(user, sdp_media_any, (sdp_text_t)0, (sdp_proto_e)0, (sdp_text_t)0);
+ Nr = sdp_media_count(remote, sdp_media_any, (sdp_text_t)0, (sdp_proto_e)0, (sdp_text_t)0);
if (remote == NULL)
Nmax = Ns + Nu;
continue;
}
- send_mode = um->m_mode & sdp_sendonly;
+ send_mode = (sdp_mode_t)(um->m_mode & sdp_sendonly);
if (rm)
send_mode = (rm->m_mode & sdp_recvonly) ? sdp_sendonly : 0;
- recv_mode = um->m_mode & sdp_recvonly;
+ recv_mode = (sdp_mode_t)(um->m_mode & sdp_recvonly);
if (rm && rm->m_mode == sdp_inactive) {
- send_mode = recv_mode = 0;
+ send_mode = recv_mode = (sdp_mode_t)0;
}
else if (inactive_all) {
- send_mode = recv_mode = 0;
+ send_mode = recv_mode = (sdp_mode_t)0;
}
else if (hold_all) {
- recv_mode = 0;
+ recv_mode = (sdp_mode_t)0;
}
else if (hold && (hold_media = su_strcasestr(hold, sm->m_type_name))) {
- recv_mode = 0;
+ recv_mode = (sdp_mode_t)0;
hold_media += strlen(sm->m_type_name);
hold_media += strspn(hold_media, " \t");
if (hold_media[0] == '=') {
hold_media += strspn(hold, " \t");
if (su_casenmatch(hold_media, "inactive", strlen("inactive")))
- recv_mode = send_mode = 0;
+ recv_mode = send_mode = (sdp_mode_t)0;
}
}
if (local && remote) switch (action) {
case generate_answer:
case process_answer:
- if (sdp_media_count(remote, sdp_media_any, "*", 0, 0) <
- sdp_media_count(local, sdp_media_any, "*", 0, 0)) {
+ if (sdp_media_count(remote, sdp_media_any, "*", (sdp_proto_e)0, (sdp_text_t)0) <
+ sdp_media_count(local, sdp_media_any, "*", (sdp_proto_e)0, (sdp_text_t)0)) {
SU_DEBUG_5(("%s: remote %s is truncated: expanding\n",
by, action == generate_answer ? "offer" : "answer"));
remote = soa_sdp_expand_media(tmphome, remote, local);
if (numeric) {
naptr = 0, srv = 0;
if (!port || !strlen(port))
- port = url_port_default(u->url_type);
+ port = url_port_default((enum url_type_e)u->url_type);
}
/* RFC 3263:
if (parent) {
su_block_t *sub = MEMLOCK(parent);
- home = sub_alloc(parent, sub, size, 2);
+ home = sub_alloc(parent, sub, size, (enum sub_zero)2);
UNLOCK(parent);
}
else {
void *data;
if (home) {
- data = sub_alloc(home, MEMLOCK(home), size, 0);
+ data = sub_alloc(home, MEMLOCK(home), size, (enum sub_zero)0);
UNLOCK(home);
}
else
sub = MEMLOCK(home);
if (!data) {
- data = sub_alloc(home, sub, size, 0);
+ data = sub_alloc(home, sub, size, (enum sub_zero)0);
UNLOCK(home);
return data;
}
assert (size >= 0);
if (home) {
- data = sub_alloc(home, MEMLOCK(home), size, 1);
+ data = sub_alloc(home, MEMLOCK(home), size, (enum sub_zero)1);
UNLOCK(home);
}
else
return (void)(errno = ENOMEM), NULL;
if (home) {
- retval = sub_alloc(home, MEMLOCK(home), size, 1);
+ retval = sub_alloc(home, MEMLOCK(home), size, (enum sub_zero)1);
UNLOCK(home);
}
else
server = 0;
if (server)
- retval = tport_bind_server(mr, mytpn, transports, public, ta_args(ta));
+ retval = tport_bind_server(mr, mytpn, transports, (enum tport_via)public, ta_args(ta));
else
- retval = tport_bind_client(mr, mytpn, transports, public, ta_args(ta));
+ retval = tport_bind_client(mr, mytpn, transports, (enum tport_via)public, ta_args(ta));
ta_end(ta);
return -1;
}
- tpn->tpn_proto = url_tport_default(url->url_type);
+ tpn->tpn_proto = url_tport_default((enum url_type_e)url->url_type);
tpn->tpn_canon = url->url_host;
tpn->tpn_host = url->url_host;
tpn->tpn_port = url_port(url);
if (self->tp_msg &&
su_time_cmp(su_time_add(self->tp_rtime, timeout), now) < 0) {
msg_t *msg = self->tp_msg;
- msg_set_streaming(msg, 0);
+ msg_set_streaming(msg, (enum msg_streaming_status)0);
msg_set_flags(msg, MSG_FLG_ERROR | MSG_FLG_TRUNC | MSG_FLG_TIMEOUT);
tport_deliver(self, msg, NULL, NULL, now);
self->tp_msg = NULL;
/** Return the URL port string, using default port if none present. */
#define URL_PORT(u) \
((u) && (u)->url_port ? (u)->url_port : \
- url_port_default((u) ? (u)->url_type : url_any))
+ url_port_default((u) ? (enum url_type_e)(u)->url_type : url_any))
/* ---------------------------------------------------------------------- */
/* url_string_t handling */
memset(url, 0, sizeof(*url));
url->url_type = type;
if (type > url_unknown) {
- char const *scheme = url_scheme(url->url_type);
+ char const *scheme = url_scheme((enum url_type_e)url->url_type);
if (scheme)
url->url_scheme = scheme;
}
url->url_type = url_get_type(url->url_scheme, n);
- have_authority = !url_type_is_opaque(url->url_type);
+ have_authority = !url_type_is_opaque((enum url_type_e)url->url_type);
}
else {
url->url_type = url_unknown;
srcp = &src->url_scheme;
if (dst->url_type > url_unknown)
- *dstp = url_scheme(dst->url_type);
+ *dstp = url_scheme((enum url_type_e)dst->url_type);
if (*dstp != NULL)
dstp++, srcp++; /* Skip scheme if it is constant */
char const *b_port;
if (url_type != url_sip && url_type != url_sips)
- a_port = b_port = url_port_default(url_type);
+ a_port = b_port = url_port_default((enum url_type_e)url_type);
else if (host_is_ip_address(a->url_host))
- a_port = b_port = url_port_default(url_type);
+ a_port = b_port = url_port_default((enum url_type_e)url_type);
else
a_port = b_port = "";
char const *b_port;
if (url_type != url_sip && url_type != url_sips)
- a_port = b_port = url_port_default(url_type);
+ a_port = b_port = url_port_default((enum url_type_e)url_type);
else if (host_is_ip_address(a->url_host))
- a_port = b_port = url_port_default(url_type);
+ a_port = b_port = url_port_default((enum url_type_e)url_type);
else
a_port = b_port = "";
if (!host_is_ip_address(u->url_host))
return "";
- return url_port_default(u->url_type);
+ return url_port_default((enum url_type_e)u->url_type);
}
/** Sanitize URL.