changeset 2028:e0d4cd2bcc2c

* src/dns.c Various casts and type fixes to stop gcc 4 warnings.
author asl
date Sat, 30 Jul 2005 11:26:29 +0000
parents e5289c8ad97a
children 97165c79d7a1
files packages/net/ns/dns/current/ChangeLog packages/net/ns/dns/current/include/dns_impl.inl packages/net/ns/dns/current/src/dns.c packages/net/ns/dns/current/tests/dns1.c
diffstat 4 files changed, 21 insertions(+), 17 deletions(-) [+]
line wrap: on
line diff
--- a/packages/net/ns/dns/current/ChangeLog
+++ b/packages/net/ns/dns/current/ChangeLog
@@ -1,3 +1,7 @@
+2005-07-29  Andrew Lunn  <andrew.lunn@ascom.ch>
+
+	* src/dns.c Various casts and type fixes to stop gcc 4 warnings.
+
 2004-07-13  Andrew Lunn  <andrew.lunn@ascom.ch>
 
 	* src/dns.c (cyg_dns_getaddrinfo): Typo spotted by Andy Jackson.
--- a/packages/net/ns/dns/current/include/dns_impl.inl
+++ b/packages/net/ns/dns/current/include/dns_impl.inl
@@ -90,7 +90,7 @@ valid_hostname(const char *hostname)
    <len><label> where <label> is eg ma in tux.ma.tech.ascom.ch. len is
    the length of the label. */
 static int 
-build_qname(char *ptr, const char *hostname)
+build_qname(unsigned char *ptr, const char *hostname)
 {
     const char *label = hostname;
     char *end_label;
@@ -145,7 +145,7 @@ qname_len(unsigned char * qname)
 /* Build a real name from a qname. Alloc the memory needed and return
    it. Return NULL on error */
 char *
-real_name(char *msg, unsigned char *qname)
+real_name(unsigned char *msg, unsigned char *qname)
 {
     unsigned char * ptr = qname;
     char * name;
@@ -191,10 +191,10 @@ real_name(char *msg, unsigned char *qnam
 /* Build a query message which can be sent to the server. If something
    goes wrong return -1, otherwise the length of the query message */
 static int 
-build_query(const char * msg, const char * hostname, short rr_type)
+build_query(const unsigned char * msg, const char * hostname, short rr_type)
 {
     struct dns_header *dns_hdr;
-    char *ptr;
+    unsigned char *ptr;
     int len;
 
     /* Fill out the header */
@@ -205,7 +205,7 @@ build_query(const char * msg, const char
     dns_hdr->qdcount = htons(1);
   
     /* Now the question we want to ask */
-    ptr = (char *)&dns_hdr[1];
+    ptr = (unsigned char *)&dns_hdr[1];
 
     len = build_qname(ptr, hostname);
 
@@ -290,13 +290,13 @@ colon_hostname(const char *hostname)
                       must fill out!
 */
 static struct hostent *
-parse_answer(char * msg, short rr_type)
+parse_answer(unsigned char * msg, short rr_type)
 {
     static struct hostent *hent;
     struct dns_header *dns_hdr;
     struct resource_record rr, *rr_p = NULL;
-    char *qname = NULL;
-    char *ptr;
+    unsigned char *qname = NULL;
+    unsigned char *ptr;
 
     dns_hdr = (struct dns_header *)msg;
 
@@ -314,7 +314,7 @@ parse_answer(char * msg, short rr_type)
   
     dns_hdr->ancount = ntohs(dns_hdr->ancount);
     dns_hdr->qdcount = ntohs(dns_hdr->qdcount);
-    ptr = (char *)&dns_hdr[1];
+    ptr = (unsigned char *)&dns_hdr[1];
 
     /* Skip over the query section */
     if (dns_hdr->qdcount > 0) {
@@ -356,7 +356,7 @@ parse_answer(char * msg, short rr_type)
             hent->h_length = sizeof(struct in_addr);
             return hent;
         case DNS_TYPE_PTR:
-            hent->h_name = real_name(msg, rr_p->rdata);
+            hent->h_name = real_name(msg, (unsigned char *)rr_p->rdata);
             if (!hent->h_name) {
                 free_hent(hent);
                 return NULL;
--- a/packages/net/ns/dns/current/src/dns.c
+++ b/packages/net/ns/dns/current/src/dns.c
@@ -183,7 +183,7 @@ free_stored_hent(void)
    if it fails, otherwise put the response back in msg and return the
    length of the response. */
 static int 
-send_recv(char * msg, int len, int msglen)
+send_recv(unsigned char * msg, int len, int msglen)
 {
     struct dns_header *dns_hdr;
     struct timeval timeout;
@@ -391,13 +391,13 @@ add_answer(char *rdata, short rr_type, i
    i decided to leave parse_anser alone. */
 
 static int
-decode(char *msg, short rr_type, int family, 
+decode(unsigned char *msg, short rr_type, int family, 
        struct sockaddr addrs[], int num, int used, char **canon) {
   
     struct dns_header *dns_hdr;
     struct resource_record rr, *rr_p = NULL;
-    char *qname = NULL;
-    char *ptr;
+    unsigned char *qname = NULL;
+    unsigned char *ptr;
     
     dns_hdr = (struct dns_header *)msg;
     
@@ -417,7 +417,7 @@ decode(char *msg, short rr_type, int fam
 
     dns_hdr->ancount = ntohs(dns_hdr->ancount);
     dns_hdr->qdcount = ntohs(dns_hdr->qdcount);
-    ptr = (char *)&dns_hdr[1];
+    ptr = (unsigned char *)&dns_hdr[1];
     
     /* Skip over the query section */
     if (dns_hdr->qdcount > 0) {
@@ -665,7 +665,7 @@ cyg_dns_getnameinfo(const struct sockadd
     switch (sa->sa_family) {
     case AF_INET: {
         struct sockaddr_in * sa4 = (struct sockaddr_in *)sa;
-        unsigned char * addr = (char *)&sa4->sin_addr.s_addr;
+        unsigned char * addr = (unsigned char *)&sa4->sin_addr.s_addr;
         sprintf(hostname, "%d.%d.%d.%d.IN-ADDR.ARPA.",
                 addr[3],addr[2],addr[1],addr[0]);
         break;
--- a/packages/net/ns/dns/current/tests/dns1.c
+++ b/packages/net/ns/dns/current/tests/dns1.c
@@ -105,7 +105,7 @@ struct test_info_s test_info[] = {
 #endif
 #ifdef CYGPKG_NS_DNS_TESTS_LUNN
     {
-        "80.238.139.98",
+        "192.168.10.1",
         "3ffe:bc0:8000::839",
         "test.ecos.",
         "hostnamev4",