/* -*- mode: c; c-basic-offset: 8; indent-tabs-mode: nil; -*-
* vim:expandtab:shiftwidth=8:tabstop=8:
*
* Copyright (c) 2002 Cray Inc.
*
* This file is part of Portals, http://www.sf.net/projects/sandiaportals/
*/
#include
typedef struct manager {
table connections;
int bound;
io_handler bound_handler;
int (*handler)(void *, void *);
void *handler_arg;
unsigned short port;
} *manager;
typedef struct connection {
unsigned int ip;
unsigned short port;
int fd;
manager m;
} *connection;
connection force_tcp_connection(manager m, unsigned int ip, unsigned int short);
manager init_connections(unsigned short, int (*f)(void *, void *), void *);
void remove_connection(void *arg);
void shutdown_connections(manager m);
int read_connection(connection c, unsigned char *dest, int len);