summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/backupstore/BackupStoreFilenameClear.cpp20
-rw-r--r--lib/backupstore/BackupStoreFilenameClear.h1
2 files changed, 17 insertions, 4 deletions
diff --git a/lib/backupstore/BackupStoreFilenameClear.cpp b/lib/backupstore/BackupStoreFilenameClear.cpp
index e529d8d3..ad5666cf 100644
--- a/lib/backupstore/BackupStoreFilenameClear.cpp
+++ b/lib/backupstore/BackupStoreFilenameClear.cpp
@@ -59,8 +59,8 @@ BackupStoreFilenameClear::BackupStoreFilenameClear(const std::string &rToEncode)
//
// --------------------------------------------------------------------------
BackupStoreFilenameClear::BackupStoreFilenameClear(const BackupStoreFilenameClear &rToCopy)
- : BackupStoreFilename(rToCopy),
- mClearFilename(rToCopy.mClearFilename)
+: BackupStoreFilename(rToCopy),
+ mClearFilename(rToCopy.mClearFilename)
{
}
@@ -73,7 +73,7 @@ BackupStoreFilenameClear::BackupStoreFilenameClear(const BackupStoreFilenameClea
//
// --------------------------------------------------------------------------
BackupStoreFilenameClear::BackupStoreFilenameClear(const BackupStoreFilename &rToCopy)
- : BackupStoreFilename(rToCopy)
+: BackupStoreFilename(rToCopy)
{
// Will get a clear filename when it's required
}
@@ -112,6 +112,18 @@ const std::string &BackupStoreFilenameClear::GetClearFilename() const
MakeClearAvailable();
return mClearFilename;
}
+const std::string &BackupStoreFilenameClear::GetClearFilenameIfPossible(const std::string& alternative) const
+{
+ if(mClearFilename.empty() && !(sBlowfishDecrypt.IsInitialised()))
+ {
+ // encrypted and cannot decrypt
+ return alternative;
+ }
+ else
+ {
+ return GetClearFilename();
+ }
+}
#endif
// --------------------------------------------------------------------------
@@ -167,7 +179,7 @@ void BackupStoreFilenameClear::MakeClearAvailable() const
switch(encoding)
{
case Encoding_Clear:
- BOX_TRACE("**** BackupStoreFilename encoded with "
+ BOX_WARNING("**** BackupStoreFilename encoded with "
"Clear encoding ****");
mClearFilename.assign(GetEncodedFilename().c_str() + 2,
size - 2);
diff --git a/lib/backupstore/BackupStoreFilenameClear.h b/lib/backupstore/BackupStoreFilenameClear.h
index d4c45701..595d1158 100644
--- a/lib/backupstore/BackupStoreFilenameClear.h
+++ b/lib/backupstore/BackupStoreFilenameClear.h
@@ -38,6 +38,7 @@ public:
const std::string GetClearFilename() const;
#else
const std::string &GetClearFilename() const;
+ const std::string &GetClearFilenameIfPossible(const std::string& alternative) const;
#endif
void SetClearFilename(const std::string &rToEncode);