Author: file
Date: Mon Mar 23 10:14:57 2015
New Revision: 433302

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=433302
Log:
Clean up code, actually put hostname in, and lessen the ntohs.

Modified:
    team/group/dns_srv/main/dns_srv.c

Modified: team/group/dns_srv/main/dns_srv.c
URL: 
http://svnview.digium.com/svn/asterisk/team/group/dns_srv/main/dns_srv.c?view=diff&rev=433302&r1=433301&r2=433302
==============================================================================
--- team/group/dns_srv/main/dns_srv.c (original)
+++ team/group/dns_srv/main/dns_srv.c Mon Mar 23 10:14:57 2015
@@ -47,14 +47,13 @@
        char *srv_offset;
        char *srv_search_base = (char *)query->result->answer;
        size_t remaining_size = query->result->answer_size;
-       char *buffer;
        size_t remaining = size;
        struct ast_dns_srv_record *srv;
-       unsigned short priority;
-       unsigned short weight;
-       unsigned short port;
+       uint16_t priority;
+       uint16_t weight;
+       uint16_t port;
        int host_size;
-       char host[256] = "";
+       char host[NI_MAXHOST] = "";
 
        while (1) {
                srv_offset = memchr(srv_search_base, data[0], remaining_size);
@@ -108,16 +107,15 @@
                return NULL;
        }
 
-       srv->priority = ntohs(priority);
-       srv->weight = ntohs(weight);
-       srv->port = ntohs(port);
-
-       buffer = srv->data;
-       strcpy(buffer, host); /* SAFE */
-       buffer[host_size] = '\0';
-       buffer += host_size + 1;
-
-       srv->generic.data_ptr = buffer;
+       srv->priority = priority;
+       srv->weight = weight;
+       srv->port = port;
+
+       srv->host = srv->data + size;
+       strcpy((char *)srv->host, host); /* SAFE */
+       ((char *)srv->host)[host_size] = '\0';
+
+       srv->generic.data_ptr = srv->data;
 
        return (struct ast_dns_record *)srv;
 }


-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

svn-commits mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/svn-commits

Reply via email to