char *host_string;
char ipv6_first_octet[3];
- memset(&globals.dst_sockaddrs[globals.num_dst_addrs].sockaddr, 0, sizeof(dst_sockaddr_t));
-
- if (globals.num_dst_addrs > MAX_DST_HOSTS) {
+ if (globals.num_dst_addrs >= MAX_DST_HOSTS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Cannot add destination address: %s, exceeded maximum of %d\n", dst_hosts[i], MAX_DST_HOSTS);
continue;
}
+ memset(&globals.dst_sockaddrs[globals.num_dst_addrs], 0, sizeof(dst_sockaddr_t));
+
if (switch_sockaddr_info_get(&globals.dst_sockaddrs[globals.num_dst_addrs].sockaddr, dst_hosts[i], SWITCH_UNSPEC, globals.port, 0, module_pool) != SWITCH_STATUS_SUCCESS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Cannot find address: %s\n", dst_hosts[i]);
switch_goto_status(SWITCH_STATUS_TERM, fail);
len = strlen(packet) + strlen((char *) MAGIC);
#endif
buf = malloc(len + 1);
- memset(buf, 0, len + 1);
switch_assert(buf);
+ memset(buf, 0, len + 1);
#ifdef HAVE_OPENSSL
if (globals.psk) {
switch_url_decode(val);
switch_snprintf(tmpname, sizeof(tmpname), "Orig-%s", var);
switch_event_add_header_string(local_event, SWITCH_STACK_BOTTOM, tmpname, val);
- var = term + 1;
+ if (term) {
+ var = term + 1;
+ } else {
+ var = NULL;
+ }
} else {
/* This should be our magic packet, done processing incoming headers */
break;