fix warnings
authorChristoph von Wittich <christoph_vw@reactos.org>
Sat, 22 Oct 2005 01:46:46 +0000 (01:46 +0000)
committerChristoph von Wittich <christoph_vw@reactos.org>
Sat, 22 Oct 2005 01:46:46 +0000 (01:46 +0000)
svn path=/trunk/; revision=18670

reactos/services/dhcp/alloc.c
reactos/services/dhcp/dhclient.c
reactos/services/dhcp/include/dhcpd.h
reactos/services/dhcp/options.c
reactos/services/dhcp/util.c

index 5894a96..97027fa 100644 (file)
@@ -76,4 +76,18 @@ new_hash_bucket(void)
        return (rval);
 }
 
-void free_hash_bucket(struct hash_bucket *hb) { free(hb); }
+void
+dfree(void *ptr, char *name)
+{
+       if (!ptr) {
+               warning("dfree %s: free on null pointer.", name);
+               return;
+       }
+       free(ptr);
+}
+
+void
+free_hash_bucket(struct hash_bucket *ptr, char *name)
+{
+       dfree(ptr, name);
+}
index 0734bf0..88b0582 100644 (file)
@@ -234,7 +234,7 @@ state_reboot(void *ipp)
        /* make_request doesn't initialize xid because it normally comes
           from the DHCPDISCOVER, but we haven't sent a DHCPDISCOVER,
           so pick an xid now. */
-       ip->client->xid = arc4random();
+       ip->client->xid = rand();
 
        /* Make a DHCPREQUEST packet, and set appropriate per-interface
           flags. */
@@ -940,7 +940,7 @@ send_discover(void *ipp)
                        ip->client->interval =
                            ip->client->config->initial_interval;
                else {
-                       ip->client->interval += (arc4random() >> 2) %
+                       ip->client->interval += (rand() >> 2) %
                            (2 * ip->client->interval);
                }
 
@@ -949,7 +949,7 @@ send_discover(void *ipp)
                    ip->client->config->backoff_cutoff)
                        ip->client->interval =
                                ((ip->client->config->backoff_cutoff / 2)
-                                + ((arc4random() >> 2) %
+                                + ((rand() >> 2) %
                                    ip->client->config->backoff_cutoff));
        } else if (!ip->client->interval)
                ip->client->interval =
@@ -1142,7 +1142,7 @@ send_request(void *ipp)
        if (!ip->client->interval)
                ip->client->interval = ip->client->config->initial_interval;
        else
-               ip->client->interval += ((arc4random() >> 2) %
+               ip->client->interval += ((rand() >> 2) %
                    (2 * ip->client->interval));
 
        /* Don't backoff past cutoff. */
@@ -1150,7 +1150,7 @@ send_request(void *ipp)
            ip->client->config->backoff_cutoff)
                ip->client->interval =
                    ((ip->client->config->backoff_cutoff / 2) +
-                   ((arc4random() >> 2) % ip->client->interval));
+                   ((rand() >> 2) % ip->client->interval));
 
        /* If the backoff would take us to the expiry time, just set the
           timeout to the expiry time. */
@@ -1280,7 +1280,7 @@ make_discover(struct interface_info *ip, struct client_lease *lease)
        ip->client->packet.htype = ip->hw_address.htype;
        ip->client->packet.hlen = ip->hw_address.hlen;
        ip->client->packet.hops = 0;
-       ip->client->packet.xid = arc4random();
+       ip->client->packet.xid = rand();
        ip->client->packet.secs = 0; /* filled in by send_discover. */
        ip->client->packet.flags = 0;
 
@@ -1986,7 +1986,7 @@ int
 ipv4addrs(char * buf)
 {
     char *tmp;
-    struct in_addr jnk;
+    unsigned long jnk;
     int i = 0;
 
     note("Input: %s\n", buf);
@@ -1994,7 +1994,8 @@ ipv4addrs(char * buf)
     do {
         tmp = strtok(buf, " ");
         note("got %s\n", tmp);
-        if( tmp && inet_aton(tmp, &jnk) ) i++;
+               jnk = inet_addr( tmp );
+               if( tmp ) i++;
         buf = NULL;
     } while( tmp );
 
index 1434021..b99207f 100644 (file)
@@ -322,6 +322,9 @@ pair cons(caddr_t, pair);
 struct string_list     *new_string_list(size_t size);
 struct hash_table      *new_hash_table(int);
 struct hash_bucket     *new_hash_bucket(void);
+void dfree(void *, char *);
+void free_hash_bucket(struct hash_bucket *, char *);
+
 
 /* bpf.c */
 int if_register_bpf(struct interface_info *);
index a037712..135d608 100644 (file)
@@ -41,6 +41,7 @@
  */
 
 #include <ctype.h>
+#include <string.h>
 
 #define DHCP_OPTION_DATA
 #include "rosdhcp.h"
@@ -592,7 +593,8 @@ pretty_print_option(unsigned int code, unsigned char *data, int len,
                                break;
                        case 'I':
                                foo.s_addr = htonl(getULong(dp));
-                               opcount = strlcpy(op, inet_ntoa(foo), opleft);
+                               strncpy(op, inet_ntoa(foo), opleft - 1);
+                               op[opleft - 1] = ANSI_NULL;
                                if (opcount >= opleft)
                                        goto toobig;
                                opleft -= opcount;
@@ -650,8 +652,8 @@ pretty_print_option(unsigned int code, unsigned char *data, int len,
                                opleft -= opcount;
                                break;
                        case 'f':
-                               opcount = strlcpy(op,
-                                   *dp++ ? "true" : "false", opleft);
+                               opcount = (size_t) strncpy(op, *dp++ ? "true" : "false", opleft - 1);
+                               op[opleft - 1] = ANSI_NULL;
                                if (opcount >= opleft)
                                        goto toobig;
                                opleft -= opcount;
index 339c87a..cd0cf68 100644 (file)
@@ -93,7 +93,6 @@ int addr_eq( struct iaddr a, struct iaddr b ) {
 }
 
 void *dmalloc( int size, char *name ) { return malloc( size ); }
-void dfree( void *v, char *name ) { free( v ); }
 
 int read_client_conf(void) {
        error("util.c read_client_conf not implemented!");