[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-server-cvs
Subject: [Server-cvs] fs/adminfs adminfo.cpp, 1.28, 1.29 adminfo.h, 1.10,
From: dcollins () helixcommunity ! org
Date: 2010-09-14 17:01:00
Message-ID: 201009141701.o8EH1AlG000812 () mailer ! progressive-comp ! com
[Download RAW message or body]
Update of /cvsroot/server/fs/adminfs
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv23120/server/fs/adminfs
Modified Files:
adminfo.cpp adminfo.h browse.cpp browse.h
Log Message:
Synopsis
========
Implements more enhancements related to 64-bit Large File Support (part 4)
Branches: SERVER_CURRENT_RN (HEAD)
Reviewer: Chytanya
Description
===========
This implements some server, datatype-restricted, server-restricted,
datatype_rn and server_rn module related updates necessary for supporting
large files (greater than 4GB) in our 64-bit Helix Server builds.
These updates relate primarily to the seek/tell/stat types of calls.
In some cases, the underlying implementation remains 32-bit, in which
case a comment is typically added to help me find these as I continue
enhancing and extending 64-bit/LFS functionality.
These changes are implented so that the impact on non-64-bit builds,
and non-server builds, should be minimal, ideally transparent.
While MEI/MII/rncache are updated to build using the 64-bit Helix APIs,
a seperate task is to update these to allow for large files, and for
backward compatability when talking to a legacy/32-bit server/proxy.
Files Affected
==============
server/appext/ramgen/ramplin.cpp
server/appext/ramgen/ramplin.h
server/broadcast/app/scalable-mcast/pplyfobj.cpp
server/broadcast/app/scalable-mcast/pub/pplyfobj.h
server/broadcast/transport/rtp/recv/qtbcobj.cpp
server/broadcast/transport/rtp/recv/qtbcobj.h
server/broadcast/transport/rtp/recv/qtdirmgr.cpp
server/broadcast/transport/rtp/recv/qtdirmgr.h
server/engine/core/_main.cpp
server/engine/dataflow/fastfile.cpp
server/engine/dataflow/flob_wrap.cpp
server/engine/dataflow/http.cpp
server/engine/dataflow/pub/fastfile.h
server/engine/dataflow/pub/flob_wrap.h
server/engine/dataflow/pub/http.h
server/engine/session/clientsession.cpp
server/engine/session/pub/clientsession.h
server/fs/adminfs/adminfo.cpp
server/fs/adminfs/adminfo.h
server/fs/adminfs/browse.cpp
server/fs/adminfs/browse.h
server/fs/asncfs/asncfobj.cpp
server/fs/asncfs/asncfobj.h
server/fs/sdpgenfsys/sdpgenfobj.cpp
server/fs/sdpgenfsys/sdpgenfobj.h
server/fs/shell/shelfsys.cpp
server/fs/shell/shelfsys.h
server/fs/tagfsys/pub/tagobj.h
server/fs/tagfsys/tagobj.cpp
server/protocol/http/httpprot.cpp
server/protocol/http/pub/httpbaseproto.h
server/protocol/http/pub/httpprot.h
server/protocol/rtsp/chxrtcptransmapsocket.cpp
server/protocol/rtsp/crtspbase.cpp
datatype-restricted/rm/fileformat/rmffplin.cpp
datatype-restricted/rm/fileformat/rmffplin.h
datatype-restricted/rm/fileformat/rmvsrc.cpp
datatype-restricted/rm/fileformat/rmvsrc.h
server-restricted/cache/meiffpln/meiffpln.cpp
server-restricted/cache/meiffpln/meiffpln.h
server-restricted/cache/miiplin/fastfob.cpp
server-restricted/cache/miiplin/fastfob.h
server-restricted/cache/miiplin/filesupp.cpp
server-restricted/cache/miiplin/filesupp.h
server-restricted/cache/miiplin/miifetch.cpp
server-restricted/cache/miiplin/miifetch.h
server-restricted/cache/miiplin/miifile.cpp
server-restricted/cache/miiplin/miifile.h
server-restricted/cache/miiplin/rmtfile.cpp
server-restricted/cache/miiplin/rmtfile.h
server-restricted/cache/rncache/cmegc.cpp
server-restricted/cache/rncache/cmegc.h
server-restricted/cache/rncache/rncf.cpp
server-restricted/cache/rncache/rncf.h
server-restricted/datatype/playlist/file_reader.cpp
server-restricted/datatype/playlist/pub/file_reader.h
server-restricted/fs/encfs/encfobj.cpp
server-restricted/fs/encfs/pub/encfobj.h
server-restricted/protocol/http-ctrl/baseswitchhandler.cpp
server-restricted/protocol/http-ctrl/compatibility_handler.cpp
server-restricted/protocol/http-ctrl/httpcontentmgr.cpp
server-restricted/protocol/http-ctrl/pub/baseswitchhandler.h
server-restricted/protocol/http-ctrl/pub/compatibility_handler.h
server-restricted/protocol/http-ctrl/pub/httpcontentmgr.h
datatype_rn/avi/fileformat/aviffpln.cpp
datatype_rn/avi/fileformat/pub/aviffpln.h
datatype_rn/flash/fileformat/flshvsrc.cpp
datatype_rn/flash/fileformat/flshvsrc.h
datatype_rn/flash/fileformat/swfread.cpp
datatype_rn/flash/fileformat/swfread.h
datatype_rn/mp4/fileformat/hinttrack/qthinttrack.cpp
datatype_rn/mp4/fileformat/hinttrack/qthinttrack.h
server_rn/appext/asxplin/asxplin.cpp
server_rn/appext/asxplin/asxplin.h
server_rn/appext/flashgen/flashgenfsys.cpp
server_rn/appext/flashgen/pub/flashgenfsys.h
server_rn/appext/m3ugen/m3ugenfsys.cpp
server_rn/appext/m3ugen/pub/m3ugenfsys.h
server_rn/cache/siiplin/mmsfob.cpp
server_rn/cache/siiplin/mmsfob.h
server_rn/protocol/wmt/http/wmt_httpprot.cpp
Testing Performed
=================
Unit Tests:
- N/A
Integration Tests:
- RTSP streaming and HTTP download of realvideo10.rm.
Leak Tests:
- N/A
Performance Tests:
- N/A
Platforms Tested: linux-rhel5-x86_64, sunos-5.10-sparc64, win-x86_64-vc10, win-x86-vc10
Build verified: linux-rhel5-x86_64, sunos-5.10-sparc64, win-x86_64-vc10, win-x86-vc10
QA Hints
========
* N/A
Index: browse.h
===================================================================
RCS file: /cvsroot/server/fs/adminfs/browse.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- browse.h 27 Dec 2007 06:06:18 -0000 1.3
+++ browse.h 14 Sep 2010 17:00:58 -0000 1.4
@@ -113,9 +113,13 @@
/************************************************************************
* IHXXMLFileStatResponce
*/
- STDMETHOD(StatDone) (THIS_ HX_RESULT status, UINT32 ulSize,
- UINT32 ulCreationTime, UINT32 ulAccessTime,
- UINT32 ulModificationTime, UINT32 ulMode);
+ STDMETHOD(StatDone) (THIS_
+ HX_RESULT status,
+ HX_OFF_T size,
+ HX_STAT_TIME_T tCreationTime,
+ HX_STAT_TIME_T tAccessTime,
+ HX_STAT_TIME_T tModificationTime,
+ HX_STAT_MODE_T mode);
/************************************************************************
* IHXDirHandlerResponse
@@ -200,7 +204,7 @@
IHXBuffer* m_pCurrentFile;
IHXRequest* m_pIndexRequest;
IUnknown* m_pObjectReady;
- UINT32 m_ulFileMode;
+ HX_STAT_MODE_T m_nFileMode;
IHXScheduler* m_pScheduler;
char* m_pRamGenURL;
char* m_pAsxGenURL;
@@ -224,8 +228,8 @@
char* m_pFileName;
- UINT32 m_ulFileSize;
- UINT32 m_ulModificationTime;
+ HX_OFF_T m_nFileSize;
+ HX_STAT_TIME_T m_tModificationTime;
CDirFormatter * m_pFormatter;
IHXBuffer* m_pHost;
};
Index: browse.cpp
===================================================================
RCS file: /cvsroot/server/fs/adminfs/browse.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- browse.cpp 27 Dec 2007 06:06:18 -0000 1.9
+++ browse.cpp 14 Sep 2010 17:00:57 -0000 1.10
@@ -65,14 +65,14 @@
, m_pFileObject(NULL)
, m_pFileViewSourceURL(NULL)
, m_state(kStateConstructed)
- , m_ulModificationTime(0)
- , m_ulFileSize(0)
+ , m_tModificationTime(0)
+ , m_nFileSize(0)
, m_pCurrentDirObj(NULL)
, m_pIndexRequest(NULL)
, m_pCurrentFile(NULL)
, m_pObjectReady(NULL)
, m_pScheduler(NULL)
- , m_ulFileMode(0)
+ , m_nFileMode(0)
, m_pExtensions(NULL)
, m_pRamGenURL(NULL)
, m_pAsxGenURL(NULL)
@@ -122,12 +122,12 @@
HX_VECTOR_DELETE(m_pAsxGenURL);
HX_VECTOR_DELETE(m_pIndexURL);
HX_VECTOR_DELETE(m_pFileName);
- m_ulFileMode = 0;
+ m_nFileMode = 0;
HX_RELEASE(m_pFileObject);
HX_RELEASE(m_pFileSystemManager);
- m_ulFileSize = 0;
- m_ulModificationTime = 0;
+ m_nFileSize = 0;
+ m_tModificationTime = 0;
return HXR_OK;
}
@@ -385,12 +385,12 @@
*
*/
STDMETHODIMP
-CDirBrowser::StatDone(HX_RESULT status,
- UINT32 ulSize,
- UINT32 ulCreationTime,
- UINT32 ulAccessTime,
- UINT32 ulModificationTime,
- UINT32 ulMode)
+CDirBrowser::StatDone(HX_RESULT status,
+ HX_OFF_T size,
+ HX_STAT_TIME_T tCreationTime,
+ HX_STAT_TIME_T tAccessTime,
+ HX_STAT_TIME_T tModificationTime,
+ HX_STAT_MODE_T mode)
{
if (m_state != kStateIndexStatFilePending)
{
@@ -402,9 +402,9 @@
{
if (SUCCEEDED(status))
{
- m_ulFileSize = ulSize;
- m_ulModificationTime = ulModificationTime;
- m_ulFileMode = ulMode;
+ m_nFileSize = size;
+ m_tModificationTime = tModificationTime;
+ m_nFileMode = mode;
// use the callback so we don't blow our stack
m_state = kStateIndexCallbackPending;
m_pScheduler->RelativeEnter(this, 0);
@@ -1634,10 +1634,10 @@
{
return HXR_UNEXPECTED;
}
- if (m_ulFileMode & HX_S_IFDIR)
+ if (m_nFileMode & HX_S_IFDIR)
{
m_pFormatter->AddDirEntry((const char*)m_pCurrentFile->GetBuffer(),
- m_ulModificationTime);
+ m_tModificationTime);
}
else
{
@@ -1682,7 +1682,7 @@
strcat(pURL, pFilePath);
}
- m_pFormatter->AddFileEntry(pURL, m_ulFileSize, m_ulModificationTime);
+ m_pFormatter->AddFileEntry(pURL, m_nFileSize, m_tModificationTime);
delete []pURL;
}
Index: adminfo.cpp
===================================================================
RCS file: /cvsroot/server/fs/adminfs/adminfo.cpp,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -d -r1.28 -r1.29
--- adminfo.cpp 6 Jan 2010 22:28:47 -0000 1.28
+++ adminfo.cpp 14 Sep 2010 17:00:57 -0000 1.29
@@ -1727,7 +1727,7 @@
* of the completeness of the operation.
*/
STDMETHODIMP
-AdminFileObject::Seek(UINT32 ulOffset, BOOL bRelative)
+AdminFileObject::Seek(HX_OFF_T ulOffset, BOOL bRelative)
{
DPRINTF(D_ENTRY, ("AFO::Seek(offset(%lu))\n", ulOffset));
@@ -2690,12 +2690,12 @@
}
STDMETHODIMP
-AdminFileObject::StatDone(HX_RESULT status,
- UINT32 size,
- UINT32 creationTime,
- UINT32 accessTime,
- UINT32 modificationTime,
- UINT32 flags)
+AdminFileObject::StatDone(HX_RESULT status,
+ HX_OFF_T size,
+ HX_STAT_TIME_T tCreationTime,
+ HX_STAT_TIME_T tAccessTime,
+ HX_STAT_TIME_T tModificationTime,
+ HX_STAT_MODE_T mode)
{
DPRINTF(D_ENTRY, ("AFO::StatDone(%ld)\n", status));
@@ -2718,17 +2718,17 @@
{
time_t now;
time(&now);
- modificationTime = now;
+ tModificationTime = now;
}
// Set size to 0, we will be adding stuff dynamically, and repeating
// the page multiple times. No content-length should be set.
m_pStatResponse->StatDone(status,
0,
- creationTime,
- accessTime,
- modificationTime,
- flags);
+ tCreationTime,
+ tAccessTime,
+ tModificationTime,
+ mode);
HX_RELEASE(m_pStatResponse);
return HXR_OK;
}
Index: adminfo.h
===================================================================
RCS file: /cvsroot/server/fs/adminfs/adminfo.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- adminfo.h 18 Aug 2007 00:21:14 -0000 1.10
+++ adminfo.h 14 Sep 2010 17:00:57 -0000 1.11
@@ -563,7 +563,7 @@
* of the completeness of the operation.
*/
STDMETHOD(Seek) (THIS_
- UINT32 ulOffset,
+ HX_OFF_T ulOffset,
BOOL bRelative);
/************************************************************************
@@ -612,12 +612,13 @@
STDMETHOD(SeekDone) (THIS_ HX_RESULT);
//FileStatResponse method
- STDMETHOD(StatDone) (THIS_ HX_RESULT,
- UINT32 size,
- UINT32 creationTime,
- UINT32 accessTime,
- UINT32 modificationTime,
- UINT32 flags);
+ STDMETHOD(StatDone) (THIS_
+ HX_RESULT status,
+ HX_OFF_T size,
+ HX_STAT_TIME_T tCreationTime,
+ HX_STAT_TIME_T tAccessTime,
+ HX_STAT_TIME_T tModificationTime,
+ HX_STAT_MODE_T mode);
//IHXFileExistsResponse method
STDMETHOD(DoesExistDone) (THIS_ BOOL);
_______________________________________________
Server-cvs mailing list
Server-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/server-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic