static const gchar * afinet_dd_get_dest_name(AFSocketDestDriver *s) { AFInetDestDriver *self = (AFInetDestDriver *) s; static gchar buf[256]; if (strchr(self->hostname, ':') != NULL) g_snprintf(buf, sizeof(buf), "[%s]:%d", self->hostname, _determine_port(self)); else g_snprintf(buf, sizeof(buf), "%s:%d", self->hostname, _determine_port(self)); return buf; }
static gboolean afinet_dd_setup_addresses(AFSocketDestDriver *s) { AFInetDestDriver *self = (AFInetDestDriver *) s; if (!afsocket_dd_setup_addresses_method(s)) return FALSE; g_sockaddr_unref(self->super.bind_addr); g_sockaddr_unref(self->super.dest_addr); if (!resolve_hostname_to_sockaddr(&self->super.bind_addr, self->super.transport_mapper->address_family, self->bind_ip)) return FALSE; if (self->bind_port) g_sockaddr_set_port(self->super.bind_addr, afinet_lookup_service(self->super.transport_mapper, self->bind_port)); if (!resolve_hostname_to_sockaddr(&self->super.dest_addr, self->super.transport_mapper->address_family, self->hostname)) return FALSE; if (!self->dest_port) { const gchar *port_change_warning = transport_mapper_inet_get_port_change_warning(self->super.transport_mapper); if (port_change_warning) { msg_warning(port_change_warning, evt_tag_str("id", self->super.super.super.id)); } } g_sockaddr_set_port(self->super.dest_addr, _determine_port(self)); return TRUE; }