Changed FTMsgReader::readFileDownloadData() method.
Added the FileTransfer::downloadFile() method.
Added the FileTransfer::procFileDownloadDataMsg().
Code improvements.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@440 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/rfb/CMsgReaderV3.cxx b/rfb/CMsgReaderV3.cxx
index b8242a0..9370804 100644
--- a/rfb/CMsgReaderV3.cxx
+++ b/rfb/CMsgReaderV3.cxx
@@ -58,8 +58,15 @@
case msgTypeSetColourMapEntries: readSetColourMapEntries(); break;
case msgTypeBell: readBell(); break;
case msgTypeServerCutText: readServerCutText(); break;
+
case msgTypeFileListData:
+ case msgTypeFileDownloadData:
+ case msgTypeFileUploadCancel:
+ case msgTypeFileDownloadFailed:
+ case msgTypeFileDirSizeData:
+ case msgTypeFileLastRequestFailed:
handler->processFTMsg(type); break;
+
default:
fprintf(stderr, "unknown message type %d\n", type);
throw Exception("unknown message type");
diff --git a/rfb/FileManager.cxx b/rfb/FileManager.cxx
index 1bd3ab6..44d7890 100644
--- a/rfb/FileManager.cxx
+++ b/rfb/FileManager.cxx
@@ -43,7 +43,7 @@
strcpy(m_szFilename, pFilename);
m_pFile = fopen(m_szFilename, m_szMode);
-
+
if (m_pFile == NULL) {
return false;
} else {
diff --git a/rfb/FileReader.cxx b/rfb/FileReader.cxx
index 13c677f..063b742 100644
--- a/rfb/FileReader.cxx
+++ b/rfb/FileReader.cxx
@@ -33,7 +33,7 @@
bool
FileReader::read(void *pBuf, unsigned int count, unsigned int *pBytesRead)
{
- if (m_pFile == NULL) return false;
+ if (!isCreated()) return false;
*pBytesRead = fread(pBuf, 1, count, m_pFile);
@@ -41,3 +41,9 @@
return true;
}
+
+unsigned int
+FileReader::getTime()
+{
+ return 0;
+}
diff --git a/rfb/FileReader.h b/rfb/FileReader.h
index e6ec064..12cdfa1 100644
--- a/rfb/FileReader.h
+++ b/rfb/FileReader.h
@@ -32,6 +32,8 @@
FileReader();
bool read(void *pBuf, unsigned int count, unsigned int *pBytesRead);
+
+ unsigned int getTime();
};
}
#endif // __RFB_FILEREADER_H__
diff --git a/rfb/FileWriter.cxx b/rfb/FileWriter.cxx
index 9d8c4a5..9c06c37 100644
--- a/rfb/FileWriter.cxx
+++ b/rfb/FileWriter.cxx
@@ -33,7 +33,7 @@
bool
FileWriter::write(const void *pBuf, unsigned int count, unsigned int *pBytesWritten)
{
- if (m_pFile == NULL) return false;
+ if (!isCreated()) return false;
unsigned int bytesWritten = fwrite(pBuf, 1, count, m_pFile);
@@ -42,3 +42,9 @@
*pBytesWritten = bytesWritten;
return true;
}
+
+bool
+FileWriter::setTime(unsigned int modTime)
+{
+ return false;
+}
diff --git a/rfb/FileWriter.h b/rfb/FileWriter.h
index 3b3318a..e522ae1 100644
--- a/rfb/FileWriter.h
+++ b/rfb/FileWriter.h
@@ -32,6 +32,7 @@
FileWriter();
bool write(const void *pBuf, unsigned int count, unsigned int *pBytesWritten);
+ bool setTime(unsigned int modTime);
};
}