From: Dennis Syrovatsky Date: Sun, 18 Dec 2005 14:49:59 +0000 (+0000) Subject: Added code for all methods of the SFTMsgWriter class X-Git-Tag: v0.0.90~384^2~372 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=ed52135d769fe7fa51f0af9082a7641a7736b75b;p=tigervnc.git Added code for all methods of the SFTMsgWriter class besides writeFileListDataMsg() method. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@463 3789f03b-4d11-0410-bbf8-ca57d06f2519 --- diff --git a/rfb/SFTMsgWriter.cxx b/rfb/SFTMsgWriter.cxx index e74775e1..4ea85a8c 100644 --- a/rfb/SFTMsgWriter.cxx +++ b/rfb/SFTMsgWriter.cxx @@ -43,32 +43,51 @@ SFTMsgWriter::writeFileListData(unsigned char flags, rfb::FileInfo *pFileInfo) bool SFTMsgWriter::writeFileDownloadData(unsigned int dataSize, void *pData) { - return false; + m_pOS->writeU8(msgTypeFileDownloadData); + m_pOS->writeU8(0); + m_pOS->writeU16(dataSize); + m_pOS->writeU16(dataSize); + m_pOS->writeBytes(pData, dataSize); + m_pOS->flush(); + return true; } bool SFTMsgWriter::writeFileDownloadData(unsigned int modTime) { - return false; + m_pOS->writeU8(msgTypeFileDownloadData); + m_pOS->writeU8(0); + m_pOS->writeU16(0); + m_pOS->writeU16(0); + m_pOS->writeU32(modTime); + m_pOS->flush(); + return true; } bool SFTMsgWriter::writeFileUploadCancel(unsigned int reasonLen, char *pReason) { - return false; + m_pOS->writeU8(msgTypeFileUploadCancel); + return writeU8U16StringMsg(0, reasonLen, pReason); } bool SFTMsgWriter::writeFileDownloadFailed(unsigned int reasonLen, char *pReason) { - return false; + m_pOS->writeU8(msgTypeFileDownloadFailed); + return writeU8U16StringMsg(0, reasonLen, pReason); } bool SFTMsgWriter::writeFileDirSizeData(unsigned int dirSizeLow, unsigned short dirSizeHigh) { - return false; + m_pOS->writeU8(msgTypeFileDirSizeData); + m_pOS->writeU8(0); + m_pOS->writeU16(dirSizeHigh); + m_pOS->writeU32(dirSizeLow); + m_pOS->flush(); + return true; } bool @@ -76,11 +95,16 @@ SFTMsgWriter::writeFileLastRqstFailed(unsigned char lastRequest, unsigned short reasonLen, char *pReason) { - return false; + m_pOS->writeU8(msgTypeFileLastRequestFailed); + return writeU8U16StringMsg(lastRequest, reasonLen, pReason); } bool SFTMsgWriter::writeU8U16StringMsg(unsigned char p1, unsigned short p2, char *pP3) { - return false; + m_pOS->writeU8(p1); + m_pOS->writeU16(p2); + m_pOS->writeBytes(pP3, p2); + m_pOS->flush(); + return true; } diff --git a/rfb/SFTMsgWriter.h b/rfb/SFTMsgWriter.h index ba5bf1c9..dcf2e2d5 100644 --- a/rfb/SFTMsgWriter.h +++ b/rfb/SFTMsgWriter.h @@ -26,6 +26,7 @@ #include #include +#include namespace rfb { class SFTMsgWriter