diff -u -r zarafa-7.1.12/ECtools/zarafa-archiver/ArchiverSession.cpp zarafa-7.1.12-licensepatch/ECtools/zarafa-archiver/ArchiverSession.cpp --- zarafa-7.1.12/ECtools/zarafa-archiver/ArchiverSession.cpp 2015-05-08 13:09:04.000000000 +0000 +++ zarafa-7.1.12-licensepatch/ECtools/zarafa-archiver/ArchiverSession.cpp 2015-06-04 13:25:20.000000000 +0000 @@ -50,8 +50,8 @@ #include "mapiext.h" #include "userutil.h" #include "ECMsgStore.h" -#include "ECLicense.h" -#include "ECMAPILicense.h" +//#include "ECLicense.h" +//#include "ECMAPILicense.h" typedef mapi_memory_ptr ECServerListPtr; @@ -879,60 +879,5 @@ typedef mapi_object_ptr ECMsgStorePtr; HRESULT ArchiverSession::ValidateArchiverLicense(bool attachnewuser /* = false*/) const { - IMsgStore *lpMsgStore = NULL; - IMsgStore *lpProxedMsgStore = NULL; - UnknownPtr ptrUnknown; - ECMsgStorePtr ptrOnlineStore; - - HRESULT hr = HrOpenDefaultStore(GetMAPISession(), MDB_WRITE | MDB_NO_DIALOG | MDB_NO_MAIL | MDB_TEMPORARY, &lpMsgStore); - if (hr != hrSuccess) - goto exit; - - hr = GetProxyStoreObject(lpMsgStore, &lpProxedMsgStore); - if (hr != hrSuccess) - goto exit; - - hr = lpProxedMsgStore->QueryInterface(IID_ECMsgStoreOnline, &ptrUnknown); - if (hr != hrSuccess) - goto exit; - - hr = ptrUnknown->QueryInterface(IID_ECMsgStore, &ptrOnlineStore); - if (hr != hrSuccess) { - m_lpLogger->Log(EC_LOGLEVEL_FATAL, "Unable to validate archived user count. Please check the archiver and licensed log for errors."); - hr = MAPI_E_NO_SUPPORT; - goto exit; - } - - hr = HrCheckLicense(&ptrOnlineStore->m_xMsgStore, SERVICE_TYPE_ARCHIVE, ZARAFA_ARCHIVE_DEFAULT); - if (hr != hrSuccess) - { - m_lpLogger->Log(EC_LOGLEVEL_FATAL, "No archiver license found."); - hr = MAPI_E_NO_SUPPORT; - } - else - { - unsigned int ulArchivedUsers = 0; - unsigned int ulMaxUsers = 0; - - hr = ValidateArchivedUserCount(m_lpLogger, this->GetMAPISession(), this->GetSSLPath(), this->GetSSLPass(), &ulArchivedUsers, &ulMaxUsers); - if (FAILED(hr)) { - m_lpLogger->Log(EC_LOGLEVEL_FATAL, "Unable to validate archived user count. Please check the archiver and licensed log for errors."); - goto exit; - } - - if (ulMaxUsers == 0) { - m_lpLogger->Log(EC_LOGLEVEL_INFO, "Not all commercial features will be available."); - // continue! - } else if (ulArchivedUsers >= ulMaxUsers) { - m_lpLogger->Log(EC_LOGLEVEL_FATAL, "You are over your archived user limit of %d users. Please remove an archived user relation or obtain an additional cal.", ulMaxUsers); - m_lpLogger->Log(EC_LOGLEVEL_FATAL, "Licensed extended archive features will be disabled until the archived user limit is decreased."); - hr = MAPI_E_NOT_FOUND; //@todo which error ? - goto exit; - } else if (ulArchivedUsers + 5 >= ulMaxUsers) { //@todo which warning limit? - m_lpLogger->Log(EC_LOGLEVEL_FATAL, "You almost reached the archived user limit. Archived users %d of %d", ulArchivedUsers, ulMaxUsers); - } - } - -exit: - return hr; + return hrSuccess; } diff -u -r zarafa-7.1.12/ECtools/zarafa-archiver/Makefile.in zarafa-7.1.12-licensepatch/ECtools/zarafa-archiver/Makefile.in --- zarafa-7.1.12/ECtools/zarafa-archiver/Makefile.in 2015-05-08 12:21:08.000000000 +0000 +++ zarafa-7.1.12-licensepatch/ECtools/zarafa-archiver/Makefile.in 2015-06-04 13:30:02.000000000 +0000 @@ -112,9 +112,7 @@ libarchiver_la_DEPENDENCIES = \ ${top_builddir}/mapi4linux/src/libmapi.la \ ${top_builddir}/common/libcommon_mapi.la \ - ${top_builddir}/common/libcommon_util.la \ - ${top_builddir}/liblicense/liblicense.la \ - ${top_builddir}/liblicense/liblicense_mapi.la + ${top_builddir}/common/libcommon_util.la am_libarchiver_la_OBJECTS = ArchiverSession.lo archiver-common.lo \ ArchiveManageImpl.lo ArchiveStateCollector.lo \ ArchiveStateUpdater.lo ArchiveHelper.lo StoreHelper.lo \ @@ -403,9 +401,7 @@ libarchiver_la_LIBADD = ${top_builddir}/mapi4linux/src/libmapi.la \ ${top_builddir}/common/libcommon_mapi.la \ - ${top_builddir}/common/libcommon_util.la \ - ${top_builddir}/liblicense/liblicense.la \ - ${top_builddir}/liblicense/liblicense_mapi.la + ${top_builddir}/common/libcommon_util.la libarchiver_la_SOURCES = \ ArchiverSession.cpp ArchiverSession.h ArchiverSessionPtr.h \