📄 peersocket.cpp
字号:
// PeerSocket.cpp: implementation of the PeerSocket class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "MultiBuffer.h"
#include "PeerSocket.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
#define MINBUFLEN 6
#define DATA '0'
#define CTRL_READSOCKET_ERROR '2'
PeerSocket::PeerSocket()
{
}
PeerSocket::~PeerSocket()
{
}
int PeerSocket::read(void* aBuffer, int aBufLen) throw(SocketException)
{
if(aBuffer==NULL||aBufLen<MINBUFLEN)return -1;
char *buf = (char *)aBuffer;
int len = 0;
len = check(::recv(sock,buf,aBufLen,0),true);
if(len==0||len==SOCKET_ERROR)return len;
//Analyze received data
char symbol;
int datasize;
sscanf(buffer,"%c%d",&symbol,&datasize);
if(datasize==0)
{
printf("reach the end of socket read stream");
len = 0;
}else if(datasize>0&&symbol!=DATA)
{
printf("upload server error:%c,%s",symbol,&buffer[6]);
len = SOCKET_ERROR;
}
return len;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -