} fwp_endpoint_reliability_t;
struct fwp_endpoint;
-typedef struct fwp_endpoint fwp_endpoint_t;
-/** fwp endpoint descriptor type */
-typedef struct fwp_endpoint* fwp_endpoint_d_t;
typedef unsigned int fwp_addr_t;
*/
typedef
struct fwp_endpoint_attr {
- /** Specifies whether fwp enpoint is reliable (TCP) or not (UDP)*/
+ /** Specifies whether fwp endpoint is reliable (TCP) or not (UDP)*/
unsigned int reliability;
- /** Specifies max number of allowed connections */
+ /** Specifies max number of allowed connections (for TCP only) */
unsigned int max_connections;
- /* queueing policy*/
} fwp_endpoint_attr_t;
#include "fwp_vres.h"
-int fwp_endpoint_get_params(fwp_endpoint_d_t epointd, unsigned int *node,
+int fwp_endpoint_get_params(struct fwp_endpoint *ep, unsigned int *node,
unsigned int *port, fwp_endpoint_attr_t *attr);
int fwp_send_endpoint_create(unsigned int node, unsigned int port,
fwp_endpoint_attr_t *attr,
- fwp_endpoint_d_t *epointd);
+ struct fwp_endpoint **epoint);
int fwp_receive_endpoint_create(/*unsigned int node,*/ unsigned int port,
fwp_endpoint_attr_t *attr,
- fwp_endpoint_d_t *epointd);
-int fwp_endpoint_destroy(fwp_endpoint_d_t epointd);
+ struct fwp_endpoint **epoint);
+int fwp_endpoint_destroy(struct fwp_endpoint *ep);
-int fwp_send_endpoint_bind(fwp_endpoint_d_t epointd, fwp_vres_d_t vresd);
-int fwp_send_endpoint_unbind(fwp_endpoint_d_t epointd);
+int fwp_send_endpoint_bind(struct fwp_endpoint *ep, fwp_vres_t *vres);
+int fwp_send_endpoint_unbind(struct fwp_endpoint *ep);
-ssize_t fwp_recv(fwp_endpoint_d_t epointd,
+ssize_t fwp_recv(struct fwp_endpoint *ep,
void *buffer, const size_t buffer_size,
unsigned int *from, int flags);
-int fwp_send(fwp_endpoint_d_t epointd, const void *msg, const size_t size,
- int flags);
+int fwp_send_sync(struct fwp_endpoint *ep, const void *msg, const size_t size);
+int fwp_send_async(struct fwp_endpoint *ep, const void *msg, const size_t size);
+ssize_t fwp_endpoint_do_send(struct fwp_endpoint *ep,
+ const void *data, const size_t size);
int fwp_endpoint_attr_init(fwp_endpoint_attr_t *attr);
static inline int fwp_endpoint_attr_setreliability(fwp_endpoint_attr_t *attr,