#ifndef __MOD_SOCKET_H__ #define __MOD_SOCKET_H__ #ifdef __cplusplus extern "C" { #endif enum socket_mod_t { PULL_PUSH = 1, REQ_REP = 2, PAIR = 3, PUB_SUB = 4, SURVEY = 5, BUS = 6 }; /** * 创建socket * @return socket地址 */ void *mod_open_socket(int mod); /** * 关闭socket * @return 0 成功, 其他值 失败的错误码 */ int mod_close_socket(void * _socket); /** * 绑定端口到socket, 如果不绑定则系统自动分配一个 * @return 0 成功, 其他值 失败的错误码 */ int mod_socket_bind(void * _socket, int port); /** * 服务端开启连接监听 * @return 0 成功, 其他值 失败的错误码 */ int mod_listen(void * _socket); /** * 客户端发起连接请求 */ int mod_connect(void * _socket, int port); /** * 发送信息 * @return 0 成功, 其他值 失败的错误码 */ int mod_send(void * _socket, const void *buf, const int size); /** * 接收信息 * @return 0 成功, 其他值 失败的错误码 */ int mod_recv(void * _socket, void **buf, int *size) ; /** * 释放存储接收信息的buf */ void mod_free(void *buf); /** * 获取soket端口号 */ int mod_get_socket_port(void * _socket); #ifdef __cplusplus } #endif #endif