00001 00032 #include "linden_common.h" 00033 00034 #include "llpacketbuffer.h" 00035 00036 #include "net.h" 00037 #include "timing.h" 00038 #include "llhost.h" 00039 00041 00042 LLPacketBuffer::LLPacketBuffer(const LLHost &host, const char *datap, const S32 size) : mHost(host) 00043 { 00044 if (size > NET_BUFFER_SIZE) 00045 { 00046 llerrs << "Sending packet > " << NET_BUFFER_SIZE << " of size " << size << llendl; 00047 } 00048 else // we previously relied on llerrs being fatal to not get here... 00049 { 00050 if (datap != NULL) 00051 { 00052 memcpy(mData, datap, size); 00053 mSize = size; 00054 } 00055 } 00056 00057 } 00058 00059 LLPacketBuffer::LLPacketBuffer (S32 hSocket) 00060 { 00061 init(hSocket); 00062 } 00063 00065 00066 LLPacketBuffer::~LLPacketBuffer () 00067 { 00068 free(); 00069 } 00070 00072 00073 void LLPacketBuffer::init (S32 hSocket) 00074 { 00075 mSize = receive_packet(hSocket, mData); 00076 mHost = ::get_sender(); 00077 } 00078 00080 00081 void LLPacketBuffer::free () 00082 { 00083 } 00084 00085 00086 00087 00088 00089 00090 00091 00092 00093 00094 00095 00096 00097 00098 00099 00100