Merge pull request #2 from Tripwire/master

merge out from tripwire/master
This commit is contained in:
Brian Cox 2016-04-16 09:52:25 -07:00
commit 7b183eab5e
40 changed files with 148 additions and 111 deletions

View File

@ -1,5 +1,5 @@
#Open Source Tripwire®
#Open Source Tripwire<sup>®</sup>
Open Source Tripwire® software is a security and data integrity tool useful for monitoring and alerting on specific file change(s) on a range of systems. The project is based on code originally contributed by [Tripwire, Inc.](http://www.tripwire.com)in 2000.
Open Source Tripwire<sup>®</sup> software is a security and data integrity tool useful for monitoring and alerting on specific file change(s) on a range of systems. The project is based on code originally contributed by [Tripwire, Inc.](http://www.tripwire.com) in 2000.
Open Source Tripwire is suitable for monitoring a small number of Linux servers, where centralized control and reporting is not needed and professional support or system automation is not a requirement.

View File

@ -38,6 +38,7 @@ Linuxes
- Android 6.0 (arm) + gcc 4.9
- Raspbian 7 (wheezy) (armv6l) + gcc 4.6.3
- openSuSE Tumbleweed (20160408) (i586) + gcc 5.3.1
- RHEL 6.0 (powerpc64) + gcc 4.4.4
OSX
- Mac OS X 10.11 + LLVM 7.0.2 / clang-700.1.81
@ -51,6 +52,7 @@ BSDs
- HardenedBSD 11.0 + gcc 4.8.5
UNIXes
- Solaris 10 SPARC + gcc 3.4.6
- Solaris 10 x86 + gcc 3.4.3
- OpenIndiana 151 + gcc 4.8.5 [an OpenSolaris/illumos distro]
- AIX 5.2 + gcc 4.3.1

4
configure vendored
View File

@ -3251,8 +3251,8 @@ ac_config_headers="$ac_config_headers config.h"
rm -f src/tripwire/syslog.h 2> /dev/null
chmod 755 install-sh 2> /dev/null
CFLAGS=${CFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
CXXFLAGS=${CXXFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
CFLAGS=${CFLAGS:-"-O -pipe -Wall -Wextra -Wno-unused-parameter -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
CXXFLAGS=${CXXFLAGS:-"-O -pipe -Wall -Wextra -Wno-unused-parameter -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
# Check whether --enable-static was given.
if test "${enable_static+set}" = set; then :

View File

@ -17,8 +17,8 @@ chmod 755 install-sh 2> /dev/null
dnl ###############
dnl Setup defaults
dnl ###############
CFLAGS=${CFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
CXXFLAGS=${CXXFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
CFLAGS=${CFLAGS:-"-O -pipe -Wall -Wextra -Wno-unused-parameter -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
CXXFLAGS=${CXXFLAGS:-"-O -pipe -Wall -Wextra -Wno-unused-parameter -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
dnl #####################
dnl Configuration options

View File

@ -237,7 +237,7 @@ int64 cArchive::Copy(cArchive* pFrom, int64 amt)
while(amtLeft > 0)
{
int64 amtToRead = amtLeft > BUF_SIZE ? BUF_SIZE : amtLeft;
int64 amtToRead = amtLeft > (int64)BUF_SIZE ? (int64)BUF_SIZE : amtLeft;
int64 amtRead = pFrom->ReadBlob(buf, static_cast<int>( amtToRead ) );
amtLeft -= amtRead;
WriteBlob(buf, static_cast<int>( amtRead ) );

View File

@ -117,10 +117,9 @@ class iCodeConverter
protected:
iCodeConverter()
{
};
iCodeConverter() {}
virtual ~iCodeConverter() {}
private:
static iCodeConverter* CreateConverter();
@ -170,7 +169,7 @@ class cIconvConverter : public iCodeConverter
virtual int Convert( ntdbs_t, size_t, const_ntmbs_t, size_t );
cIconvConverter();
~cIconvConverter();
virtual ~cIconvConverter();
private:
void Init();
@ -189,7 +188,7 @@ class cDoubleIconvConverter : public iCodeConverter
virtual int Convert( ntdbs_t, size_t, const_ntmbs_t, size_t );
cDoubleIconvConverter();
~cDoubleIconvConverter();
virtual ~cDoubleIconvConverter();
private:
@ -221,6 +220,8 @@ class cWcharIs32BitUcs2Converterer : public iCodeConverter
public:
virtual int Convert( ntmbs_t, size_t, const_ntdbs_t, size_t );
virtual int Convert( ntdbs_t, size_t, const_ntmbs_t, size_t );
virtual ~cWcharIs32BitUcs2Converterer() {}
};
#endif // WCHAR_IS_32_BITS
@ -239,6 +240,8 @@ class cWcharIs16BitUcs2Converterer : public iCodeConverter
public:
virtual int Convert( ntmbs_t, size_t, const_ntdbs_t, size_t );
virtual int Convert( ntdbs_t, size_t, const_ntmbs_t, size_t );
virtual ~cWcharIs16BitUcs2Converterer() {}
};
#endif // WCHAR_IS_16_BITS
@ -250,6 +253,8 @@ class cGoodEnoughConverterer : public iCodeConverter
public:
virtual int Convert( ntmbs_t, size_t, const_ntdbs_t, size_t );
virtual int Convert( ntdbs_t, size_t, const_ntmbs_t, size_t );
virtual ~cGoodEnoughConverterer() {}
};

View File

@ -190,33 +190,33 @@ inline int cDebug::GetDebugLevel()
#else // DEBUG
inline cDebug::cDebug (const char *pLabel) {}
inline cDebug::cDebug (const char *) {}
inline cDebug::~cDebug () {}
inline cDebug::cDebug (const cDebug& rhs) {}
inline void cDebug::TraceAlways (const char *format, ...) {}
inline void cDebug::TraceError (const char *format, ...) {}
inline void cDebug::TraceWarning (const char *format, ...) {}
inline void cDebug::TraceDebug (const char *format, ...) {}
inline void cDebug::TraceDetail (const char *format, ...) {}
inline void cDebug::TraceNever (const char *format, ...) {}
inline void cDebug::TraceAlways (const wchar_t *format, ...) {}
inline void cDebug::TraceError (const wchar_t *format, ...) {}
inline void cDebug::TraceWarning (const wchar_t *format, ...) {}
inline void cDebug::TraceDebug (const wchar_t *format, ...) {}
inline void cDebug::TraceDetail (const wchar_t *format, ...) {}
inline void cDebug::TraceNever (const wchar_t *format, ...) {}
inline void cDebug::TraceVaArgs (int iDebugLevel, const char *format, va_list &args) {}
inline void cDebug::TraceVaArgs (int iDebugLevel, const wchar_t *format, va_list &args) {}
inline void cDebug::Trace (int levelNum, const char* format, ...) {}
inline void cDebug::Trace (int levelNum, const wchar_t* format, ...) {}
inline bool cDebug::AddOutTarget (OutTarget target) { return false; }
inline bool cDebug::RemoveOutTarget (OutTarget target) { return false; }
inline bool cDebug::HasOutTarget (OutTarget target) { return false; }
inline bool cDebug::SetOutputFile (const char* filename) { return false; }
inline void cDebug::SetDebugLevel (int level) {}
inline cDebug::cDebug (const cDebug&) {}
inline void cDebug::TraceAlways (const char *, ...) {}
inline void cDebug::TraceError (const char *, ...) {}
inline void cDebug::TraceWarning (const char *, ...) {}
inline void cDebug::TraceDebug (const char *, ...) {}
inline void cDebug::TraceDetail (const char *, ...) {}
inline void cDebug::TraceNever (const char *, ...) {}
inline void cDebug::TraceAlways (const wchar_t *, ...) {}
inline void cDebug::TraceError (const wchar_t *, ...) {}
inline void cDebug::TraceWarning (const wchar_t *, ...) {}
inline void cDebug::TraceDebug (const wchar_t *, ...) {}
inline void cDebug::TraceDetail (const wchar_t *, ...) {}
inline void cDebug::TraceNever (const wchar_t *, ...) {}
inline void cDebug::TraceVaArgs (int, const char *, va_list &) {}
inline void cDebug::TraceVaArgs (int, const wchar_t *, va_list &) {}
inline void cDebug::Trace (int, const char*, ...) {}
inline void cDebug::Trace (int, const wchar_t*, ...) {}
inline bool cDebug::AddOutTarget (OutTarget) { return false; }
inline bool cDebug::RemoveOutTarget (OutTarget) { return false; }
inline bool cDebug::HasOutTarget (OutTarget) { return false; }
inline bool cDebug::SetOutputFile (const char*) { return false; }
inline void cDebug::SetDebugLevel (int) {}
inline int cDebug::GetDebugLevel (void) { return 0; }
inline void cDebug::DebugOut ( const char* lpOutputString, ... ) {}
inline void cDebug::DebugOut ( const wchar_t* lpOutputString, ... ) {}
inline void cDebug::DebugOut ( const char*, ... ) {}
inline void cDebug::DebugOut ( const wchar_t*, ... ) {}
#endif // DEBUG

View File

@ -56,7 +56,6 @@ void cErrorReporter::PrintErrorMsg(const eError& error, const TSTRING& strExtra)
(cDisplayEncoder::Flags) ( cDisplayEncoder::NON_ROUNDTRIP |
cDisplayEncoder::ALLOW_WHITESPACE ) );
TSTRING errStr;
int len;
//
// if the ID is zero, just return.
@ -86,7 +85,7 @@ void cErrorReporter::PrintErrorMsg(const eError& error, const TSTRING& strExtra)
errStr = strm.str();
}
len = errStr.length(); // save for later
//int len = errStr.length(); // save for later
TCERR << errStr;
// "First Part" error string

View File

@ -54,7 +54,7 @@
///////////////////////////////////////////////////////////////////////////////
// util_GetErrnoString -- return the result of strerror(errno) as a tstring
///////////////////////////////////////////////////////////////////////////////
static TSTRING util_GetErrnoString()
/*static TSTRING util_GetErrnoString()
{
TSTRING ret;
char* pErrorStr = strerror(errno);
@ -64,7 +64,7 @@ static TSTRING util_GetErrnoString()
ret = pErrorStr;
#endif
return ret;
}
}*/
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////

3
src/core/fileheader.cpp Normal file → Executable file
View File

@ -145,7 +145,8 @@ cFileHeader::cFileHeader()
}
cFileHeader::cFileHeader(const cFileHeader& rhs)
: mID(rhs.mID),
: iSerializable(),
mID(rhs.mID),
mVersion(rhs.mVersion),
mEncoding(rhs.mEncoding)
{

2
src/core/fileheader.h Normal file → Executable file
View File

@ -86,7 +86,7 @@ inline cFileHeaderID::cFileHeaderID(const TCHAR* id)
inline
cFileHeaderID::cFileHeaderID( const cFileHeaderID& rhs ) :
mIDLen( rhs.mIDLen )
iSerializable(), mIDLen( rhs.mIDLen )
{
memcpy( mID, rhs.mID, MAXBYTES );
}

View File

@ -82,9 +82,7 @@ public:
virtual void Write(iSerializer* pSerializer) const = 0; // throw (eSerializer, eArchive)
// objects implement these methods to read and write themselves to a serializer.
#ifdef _SUNPRO
~iSerializable();
#endif
virtual ~iSerializable() {}
};
class iTypedSerializable : public iTyped, public iSerializable
@ -101,9 +99,7 @@ public:
static int16 MajorVersion(int32 version) { return (int16)((uint32)version >> 16); }
static int16 MinorVersion(int32 version) { return (int16)version; }
#ifdef _SUNPRO
~iTypedSerializable();
#endif
virtual ~iTypedSerializable() {}
};
//////////////////////////////

View File

@ -155,6 +155,8 @@ public:
E_OUTPUT_STREAM_FORMAT = 706,
E_NUMITEMS
};
virtual ~iSerializer() {}
};

View File

@ -88,6 +88,9 @@ private:
//
virtual int GetMax() { return LIMIT_MAX; };
virtual int GetMin() { return LIMIT_MIN; };
public:
virtual ~cInterpretInt() {}
};
///////////////////////////////////////////////
@ -104,6 +107,9 @@ private:
virtual int GetMax() { return LIMIT_MAX; };
virtual int GetMin() { return LIMIT_MIN; };
public:
virtual ~cSeverityLimits() {}
};
///////////////////////////////////////////////
@ -120,6 +126,9 @@ private:
virtual int GetMax() { return LIMIT_MAX; };
virtual int GetMin() { return LIMIT_MIN; };
public:
virtual ~cRecurseDepthLimits() {}
};
#endif //__TWLIMITS_H

View File

@ -57,11 +57,13 @@
//=========================================================================
// UTIL FUNCTION PROTOTYPES
//=========================================================================
static TSTRING& util_FormatTimeC( struct tm* ptm, TSTRING& strBuf );
static TSTRING& util_FormatTimeCPlusPlus( struct tm* ptm, TSTRING& strBuf );
static TSTRING& util_FormatTime( struct tm* ptm, TSTRING& strBuf );
#if !USES_CLIB_DATE_FUNCTION
static TSTRING& util_FormatTimeCPlusPlus( struct tm* ptm, TSTRING& strBuf );
#endif
//=========================================================================
// PUBLIC METHOD CODE
//=========================================================================
@ -281,6 +283,7 @@ TSTRING& util_FormatTime( struct tm* ptm, TSTRING& strBuf )
}
#if !USES_CLIB_DATE_FUNCTION
TSTRING& util_FormatTimeCPlusPlus( struct tm* ptm, TSTRING& strBuf )
{
ASSERT( ptm );
@ -299,6 +302,7 @@ TSTRING& util_FormatTimeCPlusPlus( struct tm* ptm, TSTRING& strBuf )
strBuf = sstr.str();
return strBuf;
}
#endif
TSTRING& util_FormatTimeC( struct tm* ptm, TSTRING& strBuf )

View File

@ -62,9 +62,7 @@ public:
// (b) returning that object in their implementation of GetType()
// You can use the macros below to simplify the process
#ifdef _SUNPRO
~iTyped();
#endif
virtual ~iTyped() {}
};
//////////////////////////////////////////////

9
src/fco/fconame.cpp Normal file → Executable file
View File

@ -93,7 +93,7 @@ void cFCOName::ClearNameTable()
// ctor, dtor
///////////////////////////////////////////////////////////////////////////////
cFCOName::cFCOName(iFCONameInfo* pNI) :
mpPathName(0), mDelimiter('/')
iTypedSerializable(), mpPathName(0), mDelimiter('/')
{
SetNameInfo(pNI);
mpPathName = new cFCOName_i;
@ -105,6 +105,7 @@ cFCOName::cFCOName(iFCONameInfo* pNI) :
}
cFCOName::cFCOName(const cFCOName& rhs) :
iTypedSerializable(),
mpPathName(rhs.mpPathName),
mDelimiter(rhs.mDelimiter),
mbCaseSensitive(rhs.mbCaseSensitive)
@ -117,8 +118,8 @@ cFCOName::cFCOName(const cFCOName& rhs) :
#endif
}
cFCOName::cFCOName(const TSTRING& rhs, iFCONameInfo* pNI) :
mpPathName(0), mDelimiter('/')
cFCOName::cFCOName(const TSTRING& rhs, iFCONameInfo* pNI) :
iTypedSerializable(), mpPathName(0), mDelimiter('/')
{
SetNameInfo(pNI);
mpPathName = new cFCOName_i;
@ -132,7 +133,7 @@ cFCOName::cFCOName(const TSTRING& rhs, iFCONameInfo* pNI) :
}
cFCOName::cFCOName(const TCHAR* rhs, iFCONameInfo* pNI) :
mpPathName(0), mDelimiter('/')
iTypedSerializable(), mpPathName(0), mDelimiter('/')
{
SetNameInfo(pNI);
mpPathName = new cFCOName_i;

View File

@ -47,6 +47,7 @@ class iFCONameInfo
public:
virtual bool IsCaseSensitive() const = 0;
virtual TCHAR GetDelimitingChar() const = 0;
virtual ~iFCONameInfo() {}
};

View File

@ -82,6 +82,8 @@ public:
virtual bool DisplayStringToFCOName( const TSTRING& str, cFCOName& name ) const = 0;
// this function converts strings from FCONameToDisplayString back into an fconame
// returns false if can't convert.
virtual ~iFCONameTranslator() {}
};
#endif //__FCONAMETRANSLATOR_H

4
src/fco/fcopropvector.cpp Normal file → Executable file
View File

@ -45,7 +45,7 @@ int cFCOPropVector::msBitlength(sizeof (uint32) * 8);
///////////////////////////////////////////////////////////////////////////////
// Constructor -- Sets mSize. Default = 32.
///////////////////////////////////////////////////////////////////////////////
cFCOPropVector::cFCOPropVector(int size)
cFCOPropVector::cFCOPropVector(int size) : iSerializable()
{
mSize = 32;
mMask = 0;
@ -65,7 +65,7 @@ cFCOPropVector::~cFCOPropVector()
///////////////////////////////////////////////////////////////////////////////
// Copy Constructor
///////////////////////////////////////////////////////////////////////////////
cFCOPropVector::cFCOPropVector(const cFCOPropVector &rhs)
cFCOPropVector::cFCOPropVector(const cFCOPropVector &rhs) : iSerializable()
{
mSize = rhs.mSize;
mMask = rhs.mMask;

4
src/fco/fcosetimpl.cpp Normal file → Executable file
View File

@ -63,7 +63,7 @@ inline static const cFCOIterImpl* CreateIterator(const cFCOSetImpl* pSet)
///////////////////////////////////////////////////////////////////////////////
// ctor and dtor
///////////////////////////////////////////////////////////////////////////////
cFCOSetImpl::cFCOSetImpl()
cFCOSetImpl::cFCOSetImpl() : iFCOSet()
{
}
@ -72,7 +72,7 @@ cFCOSetImpl::~cFCOSetImpl()
Clear();
}
cFCOSetImpl::cFCOSetImpl(const cFCOSetImpl& rhs)
cFCOSetImpl::cFCOSetImpl(const cFCOSetImpl& rhs) : iFCOSet()
{
*this = rhs;
}

View File

@ -56,6 +56,8 @@ class iFCOSpecHelper;
class iFCOSpec : public iSerRefCountObj
{
public:
virtual ~iFCOSpec() {}
virtual const TSTRING& GetName() const = 0;
// returns the name of this FCOSpec
virtual void SetName(const TSTRING& name) = 0;
@ -120,13 +122,14 @@ public:
class iFCOSpecMask
{
public:
virtual const TSTRING& GetName() const = 0;
virtual ~iFCOSpecMask() {}
virtual const TSTRING& GetName() const = 0;
// return the name of this mask
virtual bool Accept(const iFCO* pFCO) const = 0;
virtual bool Accept(const iFCO* pFCO) const = 0;
// returns true if the fco matches the criterion in the SpecMask
static const iFCOSpecMask* GetDefaultMask();
static const iFCOSpecMask* GetDefaultMask();
// returns the "default mask" that all iFCOSpecs must have. The default
// mask matches every FCO and is called "Default". There is no need to
// destroy the returned pointer
@ -136,7 +139,7 @@ public:
// inline implementation
inline const cFCOPropVector& iFCOSpec::GetPropVector(const iFCO* pFCO) const
{
return GetPropVector(GetSpecMask(pFCO));
return GetPropVector(GetSpecMask(pFCO));
}

2
src/fco/fcospecimpl.cpp Normal file → Executable file
View File

@ -61,6 +61,7 @@ cFCOSpecImpl::cFCOSpecImpl(const TSTRING& name, void* pSrc, iFCOSpecHelper* pHel
}
cFCOSpecImpl::cFCOSpecImpl() :
iFCOSpec(),
mName(_T("Unnamed_FCOSpecImpl")),
mpHelper(0)
{
@ -72,6 +73,7 @@ cFCOSpecImpl::cFCOSpecImpl() :
}
cFCOSpecImpl::cFCOSpecImpl(const cFCOSpecImpl& rhs) :
iFCOSpec(),
mpHelper(0)
{
*this = rhs;

3
src/fco/fcospeclist.h Normal file → Executable file
View File

@ -150,7 +150,8 @@ protected:
mutable std::list<cFCOSpecList::PairType>::iterator mIter;
};
inline cFCOSpecList::cFCOSpecList(const cFCOSpecList& rhs)
inline cFCOSpecList::cFCOSpecList(const cFCOSpecList& rhs)
: iTypedSerializable()
{
*this = rhs;
}

View File

@ -81,10 +81,12 @@ void cGenreSpecListPair::SetSpecList(const cFCOSpecList& speclist)
//=============================================================================
cGenreSpecListVector::cGenreSpecListVector()
: std::vector<cGenreSpecListPair>()
{
}
cGenreSpecListVector::cGenreSpecListVector(const cGenreSpecListVector& rhs)
cGenreSpecListVector::cGenreSpecListVector(const cGenreSpecListVector& rhs)
: std::vector<cGenreSpecListPair>()
{
*this = rhs;
}

View File

@ -523,24 +523,22 @@ TSTRING cMD5Signature::AsString() const
return AsStringHex();
TSTRING ret;
char buf[24];
int length;
char buf[24];
ASSERT( sizeof( uint8 ) == sizeof( byte ) ); /* everything breaks otherwise */
btob64((byte*)md5_digest, buf, SIG_BYTE_SIZE*8);
btob64((byte*)md5_digest, buf, SIG_BYTE_SIZE*8);
//converting to base64 representation.
length = strlen(buf);
#ifdef _UNICODE //making it TSTRING sensitive
ret.resize(length);
mbstowcs((TCHAR*) ret.data(), buf, length);
int length;
length = strlen(buf);
ret.resize(length);
mbstowcs((TCHAR*) ret.data(), buf, length);
#else
ret.append(buf);
ret.append(buf);
#endif
return ret;
//return ret;
//ret holds base64 representation of digest.
return ret;
}
TSTRING cMD5Signature::AsStringHex() const
@ -649,13 +647,13 @@ TSTRING cSHASignature::AsString(void) const
TSTRING ret;
char* ps_signature;
char buf[100];
int length;
ps_signature = btob64((uint8*)sha_digest, buf, SIG_UINT32_SIZE*sizeof(uint32)*8);
//converting to base64 representation.
length = strlen(ps_signature);
#ifdef _UNICODE //making it TSTRING sensitive
int length;
length = strlen(ps_signature);
ret.resize(length);
mbstowcs((TCHAR*) ret.data(), ps_signature, length);
#else
@ -839,23 +837,21 @@ TSTRING cHAVALSignature::AsString() const
return AsStringHex();
TSTRING ret;
char buf[24];
int length;
char buf[24];
btob64((byte*)mSignature, buf, 128);
//converting to base64 representation.
length = strlen(buf);
btob64((byte*)mSignature, buf, 128);
//converting to base64 representation.
#ifdef _UNICODE //making it TSTRING sensitive
ret.resize(length);
mbstowcs((TCHAR*) ret.data(), buf, length);
int length;
length = strlen(buf);
ret.resize(length);
mbstowcs((TCHAR*) ret.data(), buf, length);
#else
ret.append(buf);
ret.append(buf);
#endif
return ret;
//return ret;
//ret holds base64 representation of digest.
return ret;
}
TSTRING cHAVALSignature::AsStringHex() const

View File

@ -55,11 +55,10 @@
// METHOD CODE
//=========================================================================
cFSDataSourceIter::cFSDataSourceIter()
cFSDataSourceIter::cFSDataSourceIter() : cFCODataSourceIterImpl(), mDev(0)
{
// set the case sensitiveness of the parent...
//
mDev = 0;
mParentName.SetCaseSensitive( iTWFactory::GetInstance()->GetNameInfo()->IsCaseSensitive() );
}
@ -67,7 +66,7 @@ cFSDataSourceIter::~cFSDataSourceIter()
{
}
cFSDataSourceIter::cFSDataSourceIter( const cFSDataSourceIter& rhs )
cFSDataSourceIter::cFSDataSourceIter( const cFSDataSourceIter& rhs ) : cFCODataSourceIterImpl(), mDev(0)
{
// set the case sensitiveness of the parent...
//

View File

@ -59,6 +59,8 @@ public:
{
return _T('/');
}
virtual ~cUnixNameInfo() {}
};

View File

@ -58,6 +58,8 @@ public:
virtual TSTRING ToStringAPI( const cFCOName& name ) const;
virtual TSTRING ToStringDisplay( const cFCOName& name, bool bUnique = false ) const;
virtual bool DisplayStringToFCOName( const TSTRING& str, cFCOName& name ) const;
virtual ~cFSNameTranslator() {}
};
#endif //__FSNAMETRANSLATOR_H

2
src/fs/fspropset.cpp Normal file → Executable file
View File

@ -191,6 +191,7 @@ int cFSPropSet::GetNumFSProps()
// ctors. dtor, operator=
///////////////////////////////////////////////////////////////////////////////
cFSPropSet::cFSPropSet() :
iFCOPropSet(),
mValidProps(cFSPropSet::PROP_NUMITEMS),
mUndefinedProps(cFSPropSet::PROP_NUMITEMS)
{
@ -203,6 +204,7 @@ cFSPropSet::~cFSPropSet()
}
cFSPropSet::cFSPropSet(const cFSPropSet& rhs) :
iFCOPropSet(),
mValidProps(cFSPropSet::PROP_NUMITEMS)
{
*this = rhs;

View File

@ -150,8 +150,9 @@ public:
class iMimeEncoding
{
public:
public:
virtual ~iMimeEncoding() {}
virtual
std::string
Encode( const std::string& sIn,
@ -173,7 +174,9 @@ class iMimeEncoding
// TODO:BAM -- convert ToBase64 to Encode
class cBase64Encoding : public iMimeEncoding
{
public:
public:
virtual ~cBase64Encoding() {}
virtual
std::string
Encode( const std::string& sIn,
@ -191,7 +194,9 @@ class cBase64Encoding : public iMimeEncoding
class cQuotedPrintableEncoding : public iMimeEncoding
{
public:
public:
virtual ~cQuotedPrintableEncoding() {}
virtual
std::string
Encode( const std::string& sIn,

View File

@ -86,8 +86,6 @@ bool cPipedMailMessage::Send()
// Get Body and Attachments
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
bool allOK = true;
// get body
std::string sNBody = cStringUtil::TstrToStr( mstrBody );
@ -96,7 +94,6 @@ bool cPipedMailMessage::Send()
if( ! GetAttachmentsAsString( sAttachments ) )
{
sAttachments.erase();
allOK = false;
}
std::string sSend = sNBody + sAttachments;

View File

@ -75,7 +75,7 @@
static bool PopNextLine( TSTRING& fileIn, TSTRING& sLine, int& nLine );
static bool IsReturnChar( TCHAR tch );
static bool IsComment( const TSTRING& sLine );
static void GetKeyValuePair( const TSTRING& sLine, TSTRING& sKey, TSTRING& sVal ); // throw( eConfigFile );
//static void GetKeyValuePair( const TSTRING& sLine, TSTRING& sKey, TSTRING& sVal ); // throw( eConfigFile );
static TSTRING& util_MakeTripwireDateString( TSTRING& strBuf );
//=========================================================================

3
src/tw/dbdatasource.cpp Normal file → Executable file
View File

@ -78,7 +78,8 @@ cDbDataSourceIter::cDbDataSourceIter(cHierDatabase* pDb, int genreNum )
// cDbDataSourceIter
///////////////////////////////////////////////////////////////////////////////
cDbDataSourceIter::cDbDataSourceIter( const cDbDataSourceIter& rhs )
: mDbIter ( rhs.mDbIter ),
: iFCODataSourceIter(),
mDbIter ( rhs.mDbIter ),
mFCOCreateFunc ( rhs.mFCOCreateFunc ),
mFlags ( rhs.mFlags ),
mpErrorBucket ( rhs.mpErrorBucket )

View File

@ -67,9 +67,9 @@
// UTILITY METHODS
//////////////////////////////////////////////////////////////////////////////////////////////////
//
static void util_PrintFCO(const iFCO* pFCO, iFCOPropDisplayer * pPropDisplayer);
//static void util_PrintFCO(const iFCO* pFCO, iFCOPropDisplayer * pPropDisplayer);
static void util_InitBlockArray( cBlockRecordArray& block );
static void util_MapHierRoot( std::map< std::pair< int, int>, int > dbMap );
//static void util_MapHierRoot( std::map< std::pair< int, int>, int > dbMap );
//////////////////////////////////////////////////////////////////////////////////////////////////
// Insulated implementation:

0
src/tw/headerinfo.h Normal file → Executable file
View File

View File

@ -2688,6 +2688,8 @@ static bool NotifyEncryptionType(cFileHeader::Encoding encoding, iUserNotify::Ve
case cFileHeader::ASYM_ENCRYPTION:
iUserNotify::GetInstance()->Notify(vl, TSS_GetString(cTWAdmin, twadmin::STR_ENCRYPT_TYPE_ASYM).c_str());
return true;
default:
ASSERT("Unexpeced encryption type");
}
iUserNotify::GetInstance()->Notify(vl, TSS_GetString(cTWAdmin, twadmin::STR_ENCRYPT_TYPE_UNK).c_str());

5
src/twcrypto/bytequeue.cpp Normal file → Executable file
View File

@ -134,13 +134,14 @@ unsigned int cByteQueueNode::Peek(byte &outByte) const
//-----------------------------------------------------------------------------
cByteQueue::cByteQueue(int mNodeSize)
: mNodeSize(mNodeSize),
: BufferedTransformation(),
mNodeSize(mNodeSize),
mCurrentSize(0)
{
head = tail = new cByteQueueNode(mNodeSize);
}
cByteQueue::cByteQueue(const cByteQueue &copy)
cByteQueue::cByteQueue(const cByteQueue &copy) : BufferedTransformation()
{
CopyFrom(copy);
}

View File

@ -58,9 +58,9 @@
//=========================================================================
static std::string util_ConvertMB( const std::string& sIn );
static bool util_ReadMBCharAsSBString( std::stringstream& ss, std::string& strCh );
//static bool util_ReadMBCharAsSBString( std::stringstream& ss, std::string& strCh );
static std::string convert_to_encoded_hex( char ch );
static std::string util_Output512Chars( const std::string& s );
//static std::string util_Output512Chars( const std::string& s );
// don't want to pass debug a string over 1024, so play it safe with 512
//=========================================================================

View File

@ -121,6 +121,8 @@ public:
// Returns a TSTRING that describes specific usage for a derived mode.
virtual cTWPrintCmdLine::CmdLineArgs GetModeID() = 0;
virtual void SetConfigFile( TSTRING configFilePath ) = 0;
virtual ~iTWMode() {}
};
///////////////////////////////////////////////////////////////////////////////