chiark / gitweb /
Static buffers: ipaddr_getbuf: Rename some variables
[secnet.git] / ipaddr.c
index b3cd0a7bf55050c2957e72b341e838bb12e9bca1..b45afef1a36829d2c838c0bf14b2901948568ed8 100644 (file)
--- a/ipaddr.c
+++ b/ipaddr.c
@@ -18,7 +18,7 @@ struct subnet_list *subnet_list_new(void)
     NEW(r);
     r->entries=0;
     r->alloc=DEFAULT_ALLOC;
-    r->list=safe_malloc_ary(sizeof(*r->list),r->alloc,"subnet_list_new:data");
+    NEW_ARY(r->list,r->alloc);
     return r;
 }
 
@@ -30,15 +30,13 @@ void subnet_list_free(struct subnet_list *a)
 
 static void subnet_list_set_len(struct subnet_list *a, int32_t l)
 {
-    struct subnet *nd;
     int32_t na;
 
     if (l>a->alloc) {
-       assert(a->alloc < (int)(INT_MAX/sizeof(*nd))-EXTEND_ALLOC_BY);
+       assert(a->alloc < INT_MAX-EXTEND_ALLOC_BY);
        na=a->alloc+EXTEND_ALLOC_BY;
-       nd=safe_realloc_ary(a->list,sizeof(*nd),na,"subnet_list_set_len");
+       REALLOC_ARY(a->list,na);
        a->alloc=na;
-       a->list=nd;
     }
     a->entries=l;
 }
@@ -60,7 +58,7 @@ struct ipset *ipset_new(void)
     NEW(r);
     r->l=0;
     r->a=DEFAULT_ALLOC;
-    r->d=safe_malloc(sizeof(*r->d)*r->a,"ipset_new:data");
+    NEW_ARY(r->d,r->a);
     return r;
 }
 
@@ -112,15 +110,13 @@ struct ipset *ipset_from_subnet_list(struct subnet_list *l)
 
 static void ipset_set_len(struct ipset *a, int32_t l)
 {
-    struct iprange *nd;
     int32_t na;
 
     if (l>a->a) {
        assert(a->a < INT_MAX-EXTEND_ALLOC_BY);
        na=a->a+EXTEND_ALLOC_BY;
-       nd=safe_realloc_ary(a->d,sizeof(*nd),na,"ipset_set_len");
+       REALLOC_ARY(a->d,na);
        a->a=na;
-       a->d=nd;
     }
     a->l=l;
 }
@@ -323,12 +319,12 @@ struct subnet_list *ipset_to_subnet_list(struct ipset *is)
 
 static char *ipaddr_getbuf(void)
 {
-    static int ipaddr_bufnum;
-    static char ipaddr_bufs[IPADDR_NBUFS][IPADDR_BUFLEN];
+    static int b;
+    static char bufs[IPADDR_NBUFS][IPADDR_BUFLEN];
 
-    ipaddr_bufnum++;
-    ipaddr_bufnum &= IPADDR_NBUFS-1;
-    return ipaddr_bufs[ipaddr_bufnum];
+    b++;
+    b &= IPADDR_NBUFS-1;
+    return bufs[b];
 }
 
 /* The string buffer must be at least 16 bytes long */