int sockaddr_get_port_net_order(const struct sockaddr *client_addr)
 {
-   /* MA BUG 6 remove ifdefs */
    if (client_addr->sa_family == AF_INET) {
       return ((struct sockaddr_in *)client_addr)->sin_port;
    }
+#ifdef HAVE_IPV6
    else {
       return ((struct sockaddr_in6 *)client_addr)->sin6_port;
    }
+#endif
    return -1;
 }
 
 
    walk_index = 0;
 }
 
+#ifdef xxx
 void * htable::operator new(size_t)
 {
    return malloc(sizeof(htable));
    ((htable *)tbl)->destroy();
    free(tbl);
 }
+#endif
 
 uint32_t htable::size()
 {
 
    void grow_table();                 /* grow the table */
 public:
    htable(void *item, void *link, int tsize = 31);
+   ~htable() { destroy(); }
    void init(void *item, void *link, int tsize = 31);
    bool  insert(char *key, void *item);
    void *lookup(char *key);
 
    free(ptr);
 }
 
+void  operator delete(void *ptr, const char *fname, int line)
+{
+   free(ptr);
+}
+void  operator delete[](void *ptr, size_t i, const char *fname, int line) 
+{
+   free(ptr);
+}
+
+
 private:
 void *operator new(size_t s) throw() { return 0; }
 void *operator new[](size_t s) throw() { return 0; }