Convert all code to Linux coding style

After so many years of silence, we don't expect the original author to
return to the project.  To make things a bit simpler for us, we convert
the coding style to what we are used to (Linux style).

The conversion was made using the 'Lindent' script which is part of the
Linux kernel.
diff --git a/lib/ippool.c b/lib/ippool.c
index fa3d8af..7ece1e8 100644
--- a/lib/ippool.c
+++ b/lib/ippool.c
@@ -10,9 +10,9 @@
  */
 
 #include <sys/types.h>
-#include <netinet/in.h> /* in_addr */
-#include <stdlib.h>     /* calloc */
-#include <stdio.h>      /* sscanf */
+#include <netinet/in.h>		/* in_addr */
+#include <stdlib.h>		/* calloc */
+#include <stdio.h>		/* sscanf */
 #include <syslog.h>
 #include <string.h>
 #include <sys/socket.h>
@@ -21,312 +21,320 @@
 #include "ippool.h"
 #include "lookup.h"
 
+int ippool_printaddr(struct ippool_t *this)
+{
+	unsigned int n;
+	printf("ippool_printaddr\n");
+	printf("Firstdyn %d\n", this->firstdyn - this->member);
+	printf("Lastdyn %d\n", this->lastdyn - this->member);
+	printf("Firststat %d\n", this->firststat - this->member);
+	printf("Laststat %d\n", this->laststat - this->member);
+	printf("Listsize %d\n", this->listsize);
 
-int ippool_printaddr(struct ippool_t *this) {
-  unsigned int n;
-  printf("ippool_printaddr\n");
-  printf("Firstdyn %d\n", this->firstdyn - this->member);
-  printf("Lastdyn %d\n",  this->lastdyn - this->member);
-  printf("Firststat %d\n", this->firststat - this->member);
-  printf("Laststat %d\n",  this->laststat - this->member);
-  printf("Listsize %d\n",  this->listsize);
-
-  for (n=0; n<this->listsize; n++) {
-    printf("Unit %d inuse %d prev %d next %d addr %s %x\n", 
-	   n,
-	   this->member[n].inuse,
-	   this->member[n].prev - this->member,
-	   this->member[n].next - this->member,
-	   inet_ntoa(this->member[n].addr),	
-	   this->member[n].addr.s_addr
-	   );
-  }
-  return 0;
+	for (n = 0; n < this->listsize; n++) {
+		printf("Unit %d inuse %d prev %d next %d addr %s %x\n",
+		       n,
+		       this->member[n].inuse,
+		       this->member[n].prev - this->member,
+		       this->member[n].next - this->member,
+		       inet_ntoa(this->member[n].addr),
+		       this->member[n].addr.s_addr);
+	}
+	return 0;
 }
 
-int ippool_hashadd(struct ippool_t *this, struct ippoolm_t *member) {
-  uint32_t hash;
-  struct ippoolm_t *p;
-  struct ippoolm_t *p_prev = NULL; 
+int ippool_hashadd(struct ippool_t *this, struct ippoolm_t *member)
+{
+	uint32_t hash;
+	struct ippoolm_t *p;
+	struct ippoolm_t *p_prev = NULL;
 
-  /* Insert into hash table */
-  hash = ippool_hash4(&member->addr) & this->hashmask;
-  for (p = this->hash[hash]; p; p = p->nexthash)
-    p_prev = p;
-  if (!p_prev)
-    this->hash[hash] = member;
-  else 
-    p_prev->nexthash = member;
-  return 0; /* Always OK to insert */
+	/* Insert into hash table */
+	hash = ippool_hash4(&member->addr) & this->hashmask;
+	for (p = this->hash[hash]; p; p = p->nexthash)
+		p_prev = p;
+	if (!p_prev)
+		this->hash[hash] = member;
+	else
+		p_prev->nexthash = member;
+	return 0;		/* Always OK to insert */
 }
 
-int ippool_hashdel(struct ippool_t *this, struct ippoolm_t *member) {
-  uint32_t hash;
-  struct ippoolm_t *p;
-  struct ippoolm_t *p_prev = NULL; 
+int ippool_hashdel(struct ippool_t *this, struct ippoolm_t *member)
+{
+	uint32_t hash;
+	struct ippoolm_t *p;
+	struct ippoolm_t *p_prev = NULL;
 
-  /* Find in hash table */
-  hash = ippool_hash4(&member->addr) & this->hashmask;
-  for (p = this->hash[hash]; p; p = p->nexthash) {
-    if (p == member) {
-      break;
-    }
-    p_prev = p;
-  }
+	/* Find in hash table */
+	hash = ippool_hash4(&member->addr) & this->hashmask;
+	for (p = this->hash[hash]; p; p = p->nexthash) {
+		if (p == member) {
+			break;
+		}
+		p_prev = p;
+	}
 
-  if (p!= member) {
-    sys_err(LOG_ERR, __FILE__, __LINE__, 0,
-	    "ippool_hashdel: Tried to delete member not in hash table");
-    return -1;
-  }
+	if (p != member) {
+		sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+			"ippool_hashdel: Tried to delete member not in hash table");
+		return -1;
+	}
 
-  if (!p_prev)
-    this->hash[hash] = p->nexthash;
-  else
-    p_prev->nexthash = p->nexthash;
+	if (!p_prev)
+		this->hash[hash] = p->nexthash;
+	else
+		p_prev->nexthash = p->nexthash;
 
-  return 0;
+	return 0;
 }
 
-
-unsigned long int ippool_hash4(struct in_addr *addr) {
-  return lookup((unsigned char*) &addr->s_addr, sizeof(addr->s_addr), 0);
+unsigned long int ippool_hash4(struct in_addr *addr)
+{
+	return lookup((unsigned char *)&addr->s_addr, sizeof(addr->s_addr), 0);
 }
 
 #ifndef IPPOOL_NOIP6
-unsigned long int ippool_hash6(struct in6_addr *addr) {
-  return lookup((unsigned char*) addr->u6_addr8, sizeof(addr->u6_addr8), 0);
+unsigned long int ippool_hash6(struct in6_addr *addr)
+{
+	return lookup((unsigned char *)addr->u6_addr8, sizeof(addr->u6_addr8),
+		      0);
 }
 #endif
 
-
 /* Get IP address and mask */
 int ippool_aton(struct in_addr *addr, struct in_addr *mask,
-		char *pool, int number) {
+		char *pool, int number)
+{
 
-  /* Parse only first instance of network for now */
-  /* Eventually "number" will indicate the token which we want to parse */
+	/* Parse only first instance of network for now */
+	/* Eventually "number" will indicate the token which we want to parse */
 
-  unsigned int a1, a2, a3, a4;
-  unsigned int m1, m2, m3, m4;
-  int c;
-  int m;
-  int masklog;
+	unsigned int a1, a2, a3, a4;
+	unsigned int m1, m2, m3, m4;
+	int c;
+	int m;
+	int masklog;
 
-  c = sscanf(pool, "%u.%u.%u.%u/%u.%u.%u.%u",
-	     &a1, &a2, &a3, &a4,
-	     &m1, &m2, &m3, &m4);
-  switch (c) {
-  case 4:
-    mask->s_addr = 0xffffffff;
-    break;
-  case 5:
-    if (m1 > 32) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Invalid mask");
-      return -1; /* Invalid mask */
-    }
-    mask->s_addr = htonl(0xffffffff << (32 - m1));
-    break;
-  case 8:
-    if (m1 >= 256 ||  m2 >= 256 || m3 >= 256 || m4 >= 256) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Invalid mask");
-      return -1; /* Wrong mask format */
-    }
-    m = m1 * 0x1000000 + m2 * 0x10000 + m3 * 0x100 + m4;
-    for (masklog = 0; ((1 << masklog) < ((~m)+1)); masklog++);
-    if (((~m)+1) != (1 << masklog)) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Invalid mask");
-      return -1; /* Wrong mask format (not all ones followed by all zeros)*/
-    }
-    mask->s_addr = htonl(m);
-    break;
-  default:
-    sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Invalid mask");
-    return -1; /* Invalid mask */
-  }
+	c = sscanf(pool, "%u.%u.%u.%u/%u.%u.%u.%u",
+		   &a1, &a2, &a3, &a4, &m1, &m2, &m3, &m4);
+	switch (c) {
+	case 4:
+		mask->s_addr = 0xffffffff;
+		break;
+	case 5:
+		if (m1 > 32) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Invalid mask");
+			return -1;	/* Invalid mask */
+		}
+		mask->s_addr = htonl(0xffffffff << (32 - m1));
+		break;
+	case 8:
+		if (m1 >= 256 || m2 >= 256 || m3 >= 256 || m4 >= 256) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Invalid mask");
+			return -1;	/* Wrong mask format */
+		}
+		m = m1 * 0x1000000 + m2 * 0x10000 + m3 * 0x100 + m4;
+		for (masklog = 0; ((1 << masklog) < ((~m) + 1)); masklog++) ;
+		if (((~m) + 1) != (1 << masklog)) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Invalid mask");
+			return -1;	/* Wrong mask format (not all ones followed by all zeros) */
+		}
+		mask->s_addr = htonl(m);
+		break;
+	default:
+		sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Invalid mask");
+		return -1;	/* Invalid mask */
+	}
 
-  if (a1 >= 256 ||  a2 >= 256 || a3 >= 256 || a4 >= 256) {
-    sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Wrong IP address format");
-    return -1;
-  }
-  else
-    addr->s_addr = htonl(a1 * 0x1000000 + a2 * 0x10000 + a3 * 0x100 + a4);
+	if (a1 >= 256 || a2 >= 256 || a3 >= 256 || a4 >= 256) {
+		sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+			"Wrong IP address format");
+		return -1;
+	} else
+		addr->s_addr =
+		    htonl(a1 * 0x1000000 + a2 * 0x10000 + a3 * 0x100 + a4);
 
-  return 0;
+	return 0;
 }
 
 /* Create new address pool */
-int ippool_new(struct ippool_t **this, char *dyn,  char *stat, 
-	       int allowdyn, int allowstat, int flags) {
+int ippool_new(struct ippool_t **this, char *dyn, char *stat,
+	       int allowdyn, int allowstat, int flags)
+{
 
-  /* Parse only first instance of pool for now */
+	/* Parse only first instance of pool for now */
 
-  int i;
-  struct in_addr addr;
-  struct in_addr mask;
-  struct in_addr stataddr;
-  struct in_addr statmask;
-  unsigned int m;
-  int listsize;
-  int dynsize;
-  unsigned int statsize;
+	int i;
+	struct in_addr addr;
+	struct in_addr mask;
+	struct in_addr stataddr;
+	struct in_addr statmask;
+	unsigned int m;
+	int listsize;
+	int dynsize;
+	unsigned int statsize;
 
-  if (!allowdyn) {
-    dynsize = 0;
-  }
-  else {
-    if (ippool_aton(&addr, &mask, dyn, 0)) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, 
-	      "Failed to parse dynamic pool");
-      return -1;
-    }
+	if (!allowdyn) {
+		dynsize = 0;
+	} else {
+		if (ippool_aton(&addr, &mask, dyn, 0)) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+				"Failed to parse dynamic pool");
+			return -1;
+		}
 
-    /* Set IPPOOL_NONETWORK if IPPOOL_NOGATEWAY is set */
-    if (flags & IPPOOL_NOGATEWAY) {   
-      flags |= IPPOOL_NONETWORK;
-    }
-    
-    m = ntohl(mask.s_addr);
-    dynsize = ((~m)+1);
-    if (flags & IPPOOL_NONETWORK)   /* Exclude network address from pool */
-      dynsize--;
-    if (flags & IPPOOL_NOGATEWAY)   /* Exclude gateway address from pool */
-      dynsize--;
-    if (flags & IPPOOL_NOBROADCAST) /* Exclude broadcast address from pool */
-      dynsize--;
-  }
+		/* Set IPPOOL_NONETWORK if IPPOOL_NOGATEWAY is set */
+		if (flags & IPPOOL_NOGATEWAY) {
+			flags |= IPPOOL_NONETWORK;
+		}
 
-  if (!allowstat) {
-    statsize = 0;
-    stataddr.s_addr = 0;
-    statmask.s_addr = 0;
-  }
-  else {
-    if (ippool_aton(&stataddr, &statmask, stat, 0)) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0,
-	      "Failed to parse static range");
-      return -1;
-    }
+		m = ntohl(mask.s_addr);
+		dynsize = ((~m) + 1);
+		if (flags & IPPOOL_NONETWORK)	/* Exclude network address from pool */
+			dynsize--;
+		if (flags & IPPOOL_NOGATEWAY)	/* Exclude gateway address from pool */
+			dynsize--;
+		if (flags & IPPOOL_NOBROADCAST)	/* Exclude broadcast address from pool */
+			dynsize--;
+	}
 
-    m = ntohl(statmask.s_addr);
-    statsize = ((~m)+1);
-    if (statsize > IPPOOL_STATSIZE) statsize = IPPOOL_STATSIZE;
-  }
+	if (!allowstat) {
+		statsize = 0;
+		stataddr.s_addr = 0;
+		statmask.s_addr = 0;
+	} else {
+		if (ippool_aton(&stataddr, &statmask, stat, 0)) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+				"Failed to parse static range");
+			return -1;
+		}
 
-  listsize = dynsize + statsize; /* Allocate space for static IP addresses */
+		m = ntohl(statmask.s_addr);
+		statsize = ((~m) + 1);
+		if (statsize > IPPOOL_STATSIZE)
+			statsize = IPPOOL_STATSIZE;
+	}
 
-  if (!(*this = calloc(sizeof(struct ippool_t), 1))) {
-    sys_err(LOG_ERR, __FILE__, __LINE__, 0,
-	    "Failed to allocate memory for ippool");
-    return -1;
-  }
-  
-  (*this)->allowdyn  = allowdyn;
-  (*this)->allowstat = allowstat;
-  (*this)->stataddr  = stataddr;
-  (*this)->statmask  = statmask;
+	listsize = dynsize + statsize;	/* Allocate space for static IP addresses */
 
-  (*this)->listsize += listsize;
-  if (!((*this)->member = calloc(sizeof(struct ippoolm_t), listsize))){
-        sys_err(LOG_ERR, __FILE__, __LINE__, 0,
-		"Failed to allocate memory for members in ippool");
-    return -1;
-  }
-  
-  for ((*this)->hashlog = 0; 
-       ((1 << (*this)->hashlog) < listsize);
-       (*this)->hashlog++);
+	if (!(*this = calloc(sizeof(struct ippool_t), 1))) {
+		sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+			"Failed to allocate memory for ippool");
+		return -1;
+	}
 
-  /*   printf ("Hashlog %d %d %d\n", (*this)->hashlog, listsize, (1 << (*this)->hashlog)); */
+	(*this)->allowdyn = allowdyn;
+	(*this)->allowstat = allowstat;
+	(*this)->stataddr = stataddr;
+	(*this)->statmask = statmask;
 
-  /* Determine hashsize */
-  (*this)->hashsize = 1 << (*this)->hashlog; /* Fails if mask=0: All Internet*/
-  (*this)->hashmask = (*this)->hashsize -1;
-  
-  /* Allocate hash table */
-  if (!((*this)->hash = calloc(sizeof(struct ippoolm_t), (*this)->hashsize))){
-    sys_err(LOG_ERR, __FILE__, __LINE__, 0,
-	    "Failed to allocate memory for hash members in ippool");
-    return -1;
-  }
-  
-  (*this)->firstdyn = NULL;
-  (*this)->lastdyn = NULL;
-  for (i = 0; i<dynsize; i++) {
+	(*this)->listsize += listsize;
+	if (!((*this)->member = calloc(sizeof(struct ippoolm_t), listsize))) {
+		sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+			"Failed to allocate memory for members in ippool");
+		return -1;
+	}
 
-    if (flags & IPPOOL_NOGATEWAY)
-      (*this)->member[i].addr.s_addr = htonl(ntohl(addr.s_addr) + i + 2);
-    else if (flags & IPPOOL_NONETWORK)
-      (*this)->member[i].addr.s_addr = htonl(ntohl(addr.s_addr) + i + 1);
-    else
-      (*this)->member[i].addr.s_addr = htonl(ntohl(addr.s_addr) + i);
-    
-    (*this)->member[i].inuse = 0;
+	for ((*this)->hashlog = 0;
+	     ((1 << (*this)->hashlog) < listsize); (*this)->hashlog++) ;
 
-    /* Insert into list of unused */
-    (*this)->member[i].prev = (*this)->lastdyn;
-    if ((*this)->lastdyn) {
-      (*this)->lastdyn->next = &((*this)->member[i]);
-    }
-    else {
-      (*this)->firstdyn = &((*this)->member[i]);
-    }
-    (*this)->lastdyn = &((*this)->member[i]);
-    (*this)->member[i].next = NULL; /* Redundant */
+	/*   printf ("Hashlog %d %d %d\n", (*this)->hashlog, listsize, (1 << (*this)->hashlog)); */
 
-    ( void)ippool_hashadd(*this, &(*this)->member[i]);
-  }
+	/* Determine hashsize */
+	(*this)->hashsize = 1 << (*this)->hashlog;	/* Fails if mask=0: All Internet */
+	(*this)->hashmask = (*this)->hashsize - 1;
 
-  (*this)->firststat = NULL;
-  (*this)->laststat = NULL;
-  for (i = dynsize; i<listsize; i++) {
+	/* Allocate hash table */
+	if (!
+	    ((*this)->hash =
+	     calloc(sizeof(struct ippoolm_t), (*this)->hashsize))) {
+		sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+			"Failed to allocate memory for hash members in ippool");
+		return -1;
+	}
 
-    (*this)->member[i].addr.s_addr = 0;
-    (*this)->member[i].inuse = 0;
+	(*this)->firstdyn = NULL;
+	(*this)->lastdyn = NULL;
+	for (i = 0; i < dynsize; i++) {
 
-    /* Insert into list of unused */
-    (*this)->member[i].prev = (*this)->laststat;
-    if ((*this)->laststat) {
-      (*this)->laststat->next = &((*this)->member[i]);
-    }
-    else {
-      (*this)->firststat = &((*this)->member[i]);
-    }
-    (*this)->laststat = &((*this)->member[i]);
-    (*this)->member[i].next = NULL; /* Redundant */
-  }
+		if (flags & IPPOOL_NOGATEWAY)
+			(*this)->member[i].addr.s_addr =
+			    htonl(ntohl(addr.s_addr) + i + 2);
+		else if (flags & IPPOOL_NONETWORK)
+			(*this)->member[i].addr.s_addr =
+			    htonl(ntohl(addr.s_addr) + i + 1);
+		else
+			(*this)->member[i].addr.s_addr =
+			    htonl(ntohl(addr.s_addr) + i);
 
-  if (0) (void)ippool_printaddr(*this);
-  return 0;
+		(*this)->member[i].inuse = 0;
+
+		/* Insert into list of unused */
+		(*this)->member[i].prev = (*this)->lastdyn;
+		if ((*this)->lastdyn) {
+			(*this)->lastdyn->next = &((*this)->member[i]);
+		} else {
+			(*this)->firstdyn = &((*this)->member[i]);
+		}
+		(*this)->lastdyn = &((*this)->member[i]);
+		(*this)->member[i].next = NULL;	/* Redundant */
+
+		(void)ippool_hashadd(*this, &(*this)->member[i]);
+	}
+
+	(*this)->firststat = NULL;
+	(*this)->laststat = NULL;
+	for (i = dynsize; i < listsize; i++) {
+
+		(*this)->member[i].addr.s_addr = 0;
+		(*this)->member[i].inuse = 0;
+
+		/* Insert into list of unused */
+		(*this)->member[i].prev = (*this)->laststat;
+		if ((*this)->laststat) {
+			(*this)->laststat->next = &((*this)->member[i]);
+		} else {
+			(*this)->firststat = &((*this)->member[i]);
+		}
+		(*this)->laststat = &((*this)->member[i]);
+		(*this)->member[i].next = NULL;	/* Redundant */
+	}
+
+	if (0)
+		(void)ippool_printaddr(*this);
+	return 0;
 }
 
-
-
 /* Delete existing address pool */
-int ippool_free(struct ippool_t *this) {
-  free(this->hash);
-  free(this->member);
-  free(this);
-  return 0; /* Always OK */
+int ippool_free(struct ippool_t *this)
+{
+	free(this->hash);
+	free(this->member);
+	free(this);
+	return 0;		/* Always OK */
 }
 
 /* Find an IP address in the pool */
 int ippool_getip(struct ippool_t *this, struct ippoolm_t **member,
-		 struct in_addr *addr) {
-  struct ippoolm_t *p;
-  uint32_t hash;
+		 struct in_addr *addr)
+{
+	struct ippoolm_t *p;
+	uint32_t hash;
 
-  /* Find in hash table */
-  hash = ippool_hash4(addr) & this->hashmask;
-  for (p = this->hash[hash]; p; p = p->nexthash) {
-    if ((p->addr.s_addr == addr->s_addr) && (p->inuse)) {
-      if (member) *member = p;
-      return 0;
-    }
-  }
-  if (member) *member = NULL;
-  /*sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Address could not be found");*/
-  return -1;
+	/* Find in hash table */
+	hash = ippool_hash4(addr) & this->hashmask;
+	for (p = this->hash[hash]; p; p = p->nexthash) {
+		if ((p->addr.s_addr == addr->s_addr) && (p->inuse)) {
+			if (member)
+				*member = p;
+			return 0;
+		}
+	}
+	if (member)
+		*member = NULL;
+	/*sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Address could not be found"); */
+	return -1;
 }
 
 /**
@@ -337,188 +345,193 @@
  * address space.
 **/
 int ippool_newip(struct ippool_t *this, struct ippoolm_t **member,
-		 struct in_addr *addr, int statip) {
-  struct ippoolm_t *p;
-  struct ippoolm_t *p2 = NULL;
-  uint32_t hash;
+		 struct in_addr *addr, int statip)
+{
+	struct ippoolm_t *p;
+	struct ippoolm_t *p2 = NULL;
+	uint32_t hash;
 
-  /* If static:
-   *   Look in dynaddr. 
-   *     If found remove from firstdyn/lastdyn linked list.
-   *   Else allocate from stataddr.
-   *    Remove from firststat/laststat linked list.
-   *    Insert into hash table.
-   *
-   * If dynamic
-   *   Remove from firstdyn/lastdyn linked list.
-   *
-   */
+	/* If static:
+	 *   Look in dynaddr. 
+	 *     If found remove from firstdyn/lastdyn linked list.
+	 *   Else allocate from stataddr.
+	 *    Remove from firststat/laststat linked list.
+	 *    Insert into hash table.
+	 *
+	 * If dynamic
+	 *   Remove from firstdyn/lastdyn linked list.
+	 *
+	 */
 
-  if (0) (void)ippool_printaddr(this);
+	if (0)
+		(void)ippool_printaddr(this);
 
-  /* First check to see if this type of address is allowed */
-  if ((addr) && (addr->s_addr) && statip) { /* IP address given */
-    if (!this->allowstat) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Static IP address not allowed");
-      return -1;
-    }
-    if ((addr->s_addr & this->statmask.s_addr) != this->stataddr.s_addr) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Static out of range");
-      return -1;
-    }
-  }
-  else {
-    if (!this->allowdyn) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, 
-	      "Dynamic IP address not allowed");
-      return -1; 
-    }
-  }
+	/* First check to see if this type of address is allowed */
+	if ((addr) && (addr->s_addr) && statip) {	/* IP address given */
+		if (!this->allowstat) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+				"Static IP address not allowed");
+			return -1;
+		}
+		if ((addr->s_addr & this->statmask.s_addr) !=
+		    this->stataddr.s_addr) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+				"Static out of range");
+			return -1;
+		}
+	} else {
+		if (!this->allowdyn) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+				"Dynamic IP address not allowed");
+			return -1;
+		}
+	}
 
-  /* If IP address given try to find it in dynamic address pool */
-  if ((addr) && (addr->s_addr)) { /* IP address given */
-    /* Find in hash table */
-    hash = ippool_hash4(addr) & this->hashmask;
-    for (p = this->hash[hash]; p; p = p->nexthash) {
-      if ((p->addr.s_addr == addr->s_addr)) {
-	p2 = p;
-	break;
-      }
-    }
-  }
+	/* If IP address given try to find it in dynamic address pool */
+	if ((addr) && (addr->s_addr)) {	/* IP address given */
+		/* Find in hash table */
+		hash = ippool_hash4(addr) & this->hashmask;
+		for (p = this->hash[hash]; p; p = p->nexthash) {
+			if ((p->addr.s_addr == addr->s_addr)) {
+				p2 = p;
+				break;
+			}
+		}
+	}
 
-  /* If IP was already allocated we can not use it */
-  if ((!statip) && (p2) && (p2->inuse)) {
-    p2 = NULL; 
-  }
+	/* If IP was already allocated we can not use it */
+	if ((!statip) && (p2) && (p2->inuse)) {
+		p2 = NULL;
+	}
 
-  /* If not found yet and dynamic IP then allocate dynamic IP */
-  if ((!p2) && (!statip)) {
-    if (!this ->firstdyn) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, 
-	      "No more IP addresses available");
-      return -1;
-    }
-    else
-      p2 = this ->firstdyn;
-  }
-  
-  if (p2) { /* Was allocated from dynamic address pool */
-    if (p2->inuse) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, 
-	      "IP address allready in use");
-      return -1; /* Allready in use / Should not happen */
-    }
+	/* If not found yet and dynamic IP then allocate dynamic IP */
+	if ((!p2) && (!statip)) {
+		if (!this->firstdyn) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+				"No more IP addresses available");
+			return -1;
+		} else
+			p2 = this->firstdyn;
+	}
 
-    /* Remove from linked list of free dynamic addresses */
-    if (p2->prev) 
-      p2->prev->next = p2->next;
-    else
-      this->firstdyn = p2->next;
-    if (p2->next) 
-      p2->next->prev = p2->prev;
-    else
-      this->lastdyn = p2->prev;
-    p2->next = NULL;
-    p2->prev = NULL;
-    p2->inuse = 1; /* Dynamic address in use */
-    
-    *member = p2;
-    if (0) (void)ippool_printaddr(this);
-    return 0; /* Success */
-  }
+	if (p2) {		/* Was allocated from dynamic address pool */
+		if (p2->inuse) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+				"IP address allready in use");
+			return -1;	/* Allready in use / Should not happen */
+		}
 
-  /* It was not possible to allocate from dynamic address pool */
-  /* Try to allocate from static address space */
+		/* Remove from linked list of free dynamic addresses */
+		if (p2->prev)
+			p2->prev->next = p2->next;
+		else
+			this->firstdyn = p2->next;
+		if (p2->next)
+			p2->next->prev = p2->prev;
+		else
+			this->lastdyn = p2->prev;
+		p2->next = NULL;
+		p2->prev = NULL;
+		p2->inuse = 1;	/* Dynamic address in use */
 
-  if ((addr) && (addr->s_addr) && (statip)) { /* IP address given */
-    if (!this->firststat) {
-      sys_err(LOG_ERR, __FILE__, __LINE__, 0, 
-	      "No more IP addresses available");
-      return -1; /* No more available */
-    }
-    else
-      p2 = this ->firststat;
+		*member = p2;
+		if (0)
+			(void)ippool_printaddr(this);
+		return 0;	/* Success */
+	}
 
-    /* Remove from linked list of free static addresses */
-    if (p2->prev) 
-      p2->prev->next = p2->next;
-    else
-      this->firststat = p2->next;
-    if (p2->next) 
-      p2->next->prev = p2->prev;
-    else
-      this->laststat = p2->prev;
-    p2->next = NULL;
-    p2->prev = NULL;
-    p2->inuse = 2; /* Static address in use */
-    memcpy(&p2->addr, addr, sizeof(addr));
-    *member = p2;
-    (void)ippool_hashadd(this, *member);
-    if (0) (void)ippool_printaddr(this);
-    return 0; /* Success */
-  }
+	/* It was not possible to allocate from dynamic address pool */
+	/* Try to allocate from static address space */
 
-  sys_err(LOG_ERR, __FILE__, __LINE__, 0, 
-	  "Could not allocate IP address");
-  return -1; /* Should never get here. TODO: Bad code */
+	if ((addr) && (addr->s_addr) && (statip)) {	/* IP address given */
+		if (!this->firststat) {
+			sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+				"No more IP addresses available");
+			return -1;	/* No more available */
+		} else
+			p2 = this->firststat;
+
+		/* Remove from linked list of free static addresses */
+		if (p2->prev)
+			p2->prev->next = p2->next;
+		else
+			this->firststat = p2->next;
+		if (p2->next)
+			p2->next->prev = p2->prev;
+		else
+			this->laststat = p2->prev;
+		p2->next = NULL;
+		p2->prev = NULL;
+		p2->inuse = 2;	/* Static address in use */
+		memcpy(&p2->addr, addr, sizeof(addr));
+		*member = p2;
+		(void)ippool_hashadd(this, *member);
+		if (0)
+			(void)ippool_printaddr(this);
+		return 0;	/* Success */
+	}
+
+	sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+		"Could not allocate IP address");
+	return -1;		/* Should never get here. TODO: Bad code */
 }
 
+int ippool_freeip(struct ippool_t *this, struct ippoolm_t *member)
+{
 
-int ippool_freeip(struct ippool_t *this, struct ippoolm_t *member) {
-  
-  if (0) (void)ippool_printaddr(this);
+	if (0)
+		(void)ippool_printaddr(this);
 
-  if (!member->inuse) {
-    sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Address not in use");
-    return -1; /* Not in use: Should not happen */
-  }
+	if (!member->inuse) {
+		sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Address not in use");
+		return -1;	/* Not in use: Should not happen */
+	}
 
-  switch (member->inuse) {
-  case 0: /* Not in use: Should not happen */
-    sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Address not in use");
-    return -1;
-  case 1: /* Allocated from dynamic address space */
-    /* Insert into list of unused */
-    member->prev = this->lastdyn;
-    if (this->lastdyn) {
-      this->lastdyn->next = member;
-    }
-    else {
-      this->firstdyn = member;
-    }
-    this->lastdyn = member;
-    
-    member->inuse = 0;
-    member->peer = NULL;
-    if (0) (void)ippool_printaddr(this);
-    return 0;
-  case 2: /* Allocated from static address space */
-    if (ippool_hashdel(this, member))
-      return -1;
-    /* Insert into list of unused */
-    member->prev = this->laststat;
-    if (this->laststat) {
-      this->laststat->next = member;
-    }
-    else {
-      this->firststat = member;
-    }
-    this->laststat = member;
-    
-    member->inuse = 0;
-    member->addr.s_addr = 0;
-    member->peer = NULL;
-    member->nexthash = NULL;
-    if (0) (void)ippool_printaddr(this);
-    return 0;
-  default: /* Should not happen */
-    sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Could not free IP address");
-    return -1;
-  }
+	switch (member->inuse) {
+	case 0:		/* Not in use: Should not happen */
+		sys_err(LOG_ERR, __FILE__, __LINE__, 0, "Address not in use");
+		return -1;
+	case 1:		/* Allocated from dynamic address space */
+		/* Insert into list of unused */
+		member->prev = this->lastdyn;
+		if (this->lastdyn) {
+			this->lastdyn->next = member;
+		} else {
+			this->firstdyn = member;
+		}
+		this->lastdyn = member;
+
+		member->inuse = 0;
+		member->peer = NULL;
+		if (0)
+			(void)ippool_printaddr(this);
+		return 0;
+	case 2:		/* Allocated from static address space */
+		if (ippool_hashdel(this, member))
+			return -1;
+		/* Insert into list of unused */
+		member->prev = this->laststat;
+		if (this->laststat) {
+			this->laststat->next = member;
+		} else {
+			this->firststat = member;
+		}
+		this->laststat = member;
+
+		member->inuse = 0;
+		member->addr.s_addr = 0;
+		member->peer = NULL;
+		member->nexthash = NULL;
+		if (0)
+			(void)ippool_printaddr(this);
+		return 0;
+	default:		/* Should not happen */
+		sys_err(LOG_ERR, __FILE__, __LINE__, 0,
+			"Could not free IP address");
+		return -1;
+	}
 }
 
-
 #ifndef IPPOOL_NOIP6
 extern unsigned long int ippool_hash6(struct in6_addr *addr);
 extern int ippool_getip6(struct ippool_t *this, struct in6_addr *addr);