+ /* Create the SDP */
+ static const struct addrinfo hints = {
+ .ai_family = AF_UNSPEC,
+ .ai_socktype = SOCK_DGRAM,
+ .ai_protocol = 0,
+ .ai_flags = AI_NUMERICHOST | AI_NUMERICSERV
+ };
+ char *shost = var_GetNonEmptyString (p_access, "src-addr");
+ char *dhost = var_GetNonEmptyString (p_access, "dst-addr");
+ int sport = var_GetInteger (p_access, "src-port");
+ int dport = var_GetInteger (p_access, "dst-port");
+ char port[6];
+ struct sockaddr_storage src, dst;
+ socklen_t srclen = 0, dstlen = 0;
+ struct addrinfo *res;
+
+ snprintf (port, sizeof (port), "%d", dport);
+ if (getaddrinfo (dhost, port, &hints, &res) == 0)
+ {
+ memcpy (&dst, res->ai_addr, dstlen = res->ai_addrlen);
+ freeaddrinfo (res);
+ }