connect.h
来自「包含客户和服务器的升级程序,在linux下可以运行的.」· C头文件 代码 · 共 66 行
H
66 行
/* * Copyright (C) 2006, Binary Ma * Licence: GNU GPL 1991 - version 2 * Bug report: binary@eniak.org*/#ifndef __LIB_CONNECT #define __LIB_CONNECT 1#include <sys/types.h>#include <string.h>extern const int ONTIME;int select_io( int fd, int delay, bool is_in );int select_i( int fd, int delay );int select_o( int fd, int delay );class tcpbase{public: tcpbase( int delay ); tcpbase( int sock, int delay ); ~tcpbase(); long recv( void* buf, long size ); long send( const void* buf, long size ); off_t sendfile( const char* file, off_t offset = 0 ); off_t recvfile( const char* file, bool brkmode = false ); int dup_sock(); void close_sock(); int error();protected: int m_sock; int m_error;private: int m_delay;};class tcpserver: public tcpbase{public: tcpserver( const char* host, const char* port, int delay, int backlog = 1024 ); ~tcpserver(); // if delay less then 0, block indefinitely. int accept( int delay = -1 ); void close_listen(); const char* accept_addr();private: int m_sock_listen; char m_accept[64];};class tcpclient: public tcpbase{public: tcpclient( const char* host, const char* port, int delay ); ~tcpclient();};#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?