#include "Connect.h"
#include <netinet/in.h>

#ifdef SERVER
#define INETTABLESIZE 1000
#else
#define INETTABLESIZE 10
#endif

typedef struct _inetaddr
{
  Addr address;
  struct sockaddr_in netaddr;
  int socket;
  char *hostname;
  struct _inetaddr *nextaddr;
  struct _inetaddr *nextinet;
} inetaddr;

extern Trap ip_init(void);
extern inetaddr *ip_addrlookup(Addr addr);
extern inetaddr *ip_inetlookup(struct sockaddr_in *addr);
extern Trap ip_newaddress(int domain, inetaddr **new, inetaddr *addr);
extern void ip_freeaddr(inetaddr *freeaddr);
extern Trap ip_ntoa(int domain, char *protocol, char *name, Addr *address);
extern Trap ip_aton(Addr address, char *name, int length);
extern Trap Ip_NameResolve(int val);
