MT#55283 convert sockaddr_parse_any_str to bool

Change-Id: Iaf9179bf1f55774bc9c63fd1238155f7ff3b7570
pull/1910/head
Richard Fuchs 10 months ago
parent 81899d5483
commit 3cce4ac230

@ -1880,7 +1880,7 @@ void call_ng_main_flags(const ng_parser_t *parser, str *key, parser_arg value, h
break;
case CSH_LOOKUP("media address"):
case CSH_LOOKUP("media-address"):
if (sockaddr_parse_any_str(&out->media_address, &s))
if (!sockaddr_parse_any_str(&out->media_address, &s))
ilog(LOG_WARN, "Could not parse 'media-address'");
break;
case CSH_LOOKUP("media echo"):
@ -2212,7 +2212,7 @@ void call_ng_main_flags(const ng_parser_t *parser, str *key, parser_arg value, h
break;
case CSH_LOOKUP("xmlrpc-callback"):
case CSH_LOOKUP("XMLRPC-callback"):
if (sockaddr_parse_any_str(&out->xmlrpc_callback, &s))
if (!sockaddr_parse_any_str(&out->xmlrpc_callback, &s))
ilog(LOG_WARN, "Failed to parse 'xmlrpc-callback' address '" STR_FORMAT "'",
STR_FMT(&s));
break;
@ -3166,7 +3166,7 @@ static const char *media_block_match1(call_t *call, struct call_monologue **mono
}
else if (flags->address.s) {
sockaddr_t addr;
if (sockaddr_parse_any_str(&addr, &flags->address))
if (!sockaddr_parse_any_str(&addr, &flags->address))
return "Failed to parse network address";
// walk our structures to find a matching stream
for (__auto_type l = call->monologues.head; l; l = l->next) {

@ -2126,7 +2126,7 @@ static void json_restore_call(struct redis *r, const str *callid, bool foreign)
c->created_from = call_strdup_str(&id);
if (!redis_hash_get_str(&id, &call, "created_from_addr")) {
err = "failed to parse 'created_from_addr'";
if (sockaddr_parse_any_str(&c->created_from_addr, &id))
if (!sockaddr_parse_any_str(&c->created_from_addr, &id))
goto err8;
}
if (!redis_hash_get_int(&i, &call, "block_dtmf"))

@ -446,7 +446,7 @@ static int __parse_address(sockaddr_t *out, str *network_type, str *address_type
}
if (!address_type->len) {
if (sockaddr_parse_any_str(out, address))
if (!sockaddr_parse_any_str(out, address))
return -1;
return 0;
}
@ -771,7 +771,7 @@ static int parse_attribute_candidate(struct sdp_attribute *output, bool extended
if (ep == c->priority_str.s)
return -1;
if (sockaddr_parse_any_str(&c->cand_parsed.endpoint.address, &c->address_str))
if (!sockaddr_parse_any_str(&c->cand_parsed.endpoint.address, &c->address_str))
return 0;
c->cand_parsed.endpoint.port = strtoul(c->port_str.s, &ep, 10);
@ -797,7 +797,7 @@ static int parse_attribute_candidate(struct sdp_attribute *output, bool extended
if (str_cmp(&c->rport_str, "rport"))
return -1;
if (sockaddr_parse_any_str(&c->cand_parsed.related.address, &c->related_address_str))
if (!sockaddr_parse_any_str(&c->cand_parsed.related.address, &c->related_address_str))
return 0;
c->cand_parsed.related.port = strtoul(c->related_port_str.s, &ep, 10);

@ -561,14 +561,14 @@ bool sockaddr_parse_any(sockaddr_t *dst, const char *src) {
}
return false;
}
int sockaddr_parse_any_str(sockaddr_t *dst, const str *src) {
bool sockaddr_parse_any_str(sockaddr_t *dst, const str *src) {
char buf[64];
if (!src || !src->s)
return -1;
return false;
if (src->len >= sizeof(buf))
return -1;
return false;
sprintf(buf, STR_FORMAT, STR_FMT(src));
return sockaddr_parse_any(dst, buf) ? 0 : -1;
return sockaddr_parse_any(dst, buf);
}
int sockaddr_parse_str(sockaddr_t *dst, sockfamily_t *fam, const str *src) {
char buf[64];

@ -287,7 +287,7 @@ void dummy_socket(socket_t *r, const sockaddr_t *);
sockfamily_t *get_socket_family_rfc(const str *s);
sockfamily_t *__get_socket_family_enum(enum socket_families);
bool sockaddr_parse_any(sockaddr_t *dst, const char *src);
int sockaddr_parse_any_str(sockaddr_t *dst, const str *src);
bool sockaddr_parse_any_str(sockaddr_t *dst, const str *src);
int sockaddr_parse_str(sockaddr_t *dst, sockfamily_t *fam, const str *src);
int endpoint_parse_any(endpoint_t *, const char *); // address (ip) optional
int sockaddr_getaddrinfo_alt(sockaddr_t *a, sockaddr_t *a2, const char *s);

Loading…
Cancel
Save