--- lbbs/src/tcplib.c 2025/04/28 03:31:00 1.2 +++ lbbs/src/tcplib.c 2025/05/10 02:14:46 1.4 @@ -3,10 +3,10 @@ void MsToTimeval(const int ms, struct timeval *tv) { tv->tv_sec = ms / TIME_CNV_RATIO; - tv->tv_usec = (ms - tv->tv_sec * TIME_CNV_RATIO) * TIME_CNV_RATIO; + tv->tv_usec = ms % TIME_CNV_RATIO * TIME_CNV_RATIO; } -int TimevalToMs(const struct timeval *tv) +long int TimevalToMs(const struct timeval *tv) { return (tv->tv_sec * TIME_CNV_RATIO + tv->tv_usec / TIME_CNV_RATIO); } @@ -143,7 +143,7 @@ done: return 0; /* 连接服务器成功 */ } -int DoConnect(const char *ip, const int port, const int msec) +int DoConnect(const char *ip, const in_port_t port, const int msec) { struct sockaddr_in sa; int conn_fd; @@ -241,12 +241,12 @@ int SafeAccept(int sockfd, struct sockad return conn_fd; } -int DoSendData(int sockfd, const void *buf, const size_t len, int msec) +long int DoSendData(int sockfd, const void *buf, const size_t len, int msec) { struct timeval tv; fd_set wset; int rv; - int wc; + ssize_t wc; MsToTimeval(msec, &tv); FD_ZERO(&wset); @@ -267,12 +267,12 @@ int DoSendData(int sockfd, const void *b return 0; /* nothing had sent */ } -int DoRecvData(int sockfd, void *buf, const size_t len, int msec) +long int DoRecvData(int sockfd, void *buf, const size_t len, int msec) { struct timeval tv; fd_set rset; int rv; - int rc; + ssize_t rc; MsToTimeval(msec, &tv); FD_ZERO(&rset);