📄 tcptool.c
字号:
#include <stdio.h>#include <string.h>#include <errno.h>#include <fcntl.h>#include <signal.h>#include <time.h>#include <sys/types.h>#include <sys/wait.h>#include <sys/timeb.h>#include <sys/msg.h>#include <sys/ipc.h>#include <sys/uio.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <unistd.h>#include <netdb.h>#include <wait.h>#include <stdarg.h>#include "mpgfront.h"extern SYSCTRL Termctrl;int TCP_Connect (char *_ConnectIp ,int _ConnectPort){ int setflag=1; int Socketid; char ConIp[30]; struct sockaddr_in MpsServer; memset( ConIp, 0x00, sizeof(ConIp)); memcpy( ConIp,_ConnectIp, 19); Socketid = socket(AF_INET,SOCK_STREAM,0); if(Socketid<0){ Errlog(ERRFILE,"Create Socketid error!\n"); return -1; } if(setsockopt(Socketid,SOL_SOCKET,SO_KEEPALIVE,&setflag, sizeof(setflag))<0) { close(Socketid); Errlog(ERRFILE,"setsockopt error!\n"); return -1 ; } memset(&MpsServer,0,sizeof(struct sockaddr_in)); MpsServer.sin_family = AF_INET; MpsServer.sin_port =htons(_ConnectPort); TrimAll(_ConnectIp); if(inet_pton(AF_INET,_ConnectIp,&MpsServer.sin_addr)<0){ Errlog(ERRFILE,"Tcp inet_pton error!"); return -1; } alarm(3); if(connect(Socketid,(struct sockaddr *)&MpsServer,sizeof(MpsServer))<0){ close(Socketid); Errlog(ERRFILE,"tcp connect error!-[%s]--[%d]", _ConnectIp,_ConnectPort); return -1 ; } return Socketid ;}int TCP_Write(int _Socketid, char *_WrtBuf, int _BufLen ){ int i; if ((i=write(_Socketid,_WrtBuf,_BufLen))<0){ Errlog(ERRFILE,"Write sockeid [%d] error!",_Socketid); return -1; } return i;}int TCP_Read(int _Socketid, char *_ReadBuf, int _BufLen ){ int i; int pos; char TmpBuf[2048]; pos=0; while ( 1 ){ memset( TmpBuf, 0x00, sizeof(TmpBuf)); alarm(5); if ((i=read(_Socketid,TmpBuf,_BufLen))<=0){ Errlog(ERRFILE,"read sockeid [%d] error!",_Socketid); return pos; } memcpy(_ReadBuf+pos,TmpBuf,i); pos+=i; if ( pos >= _BufLen) return pos; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -