Jan Engelhardt dbba6e1bab provider: remove unnecessary braces for all-1-line blocks 7 éve
..
ClientUtil.cpp 685580974e client: abolish goto statements (5/5) 7 éve
ClientUtil.h 6b1d87e46b build: obsolete tstring.h 7 éve
DLLGlobal.h 2a5437fbcc Initial commit 8 éve
ECABContainer.cpp 6246879921 treewide: check return values of ECAllocateMore (2/2) 7 éve
ECABContainer.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECABLogon.cpp 685580974e client: abolish goto statements (5/5) 7 éve
ECABLogon.h 2e18d88fb5 client: use initialization and in-class defaults 8 éve
ECABProp.cpp 6246879921 treewide: check return values of ECAllocateMore (2/2) 7 éve
ECABProp.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECABProvider.cpp b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECABProvider.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECABProviderSwitch.cpp b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECABProviderSwitch.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECArchiveAwareAttach.cpp b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECArchiveAwareAttach.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECArchiveAwareMessage.cpp b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECArchiveAwareMessage.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECArchiveAwareMsgStore.cpp b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECArchiveAwareMsgStore.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECAttach.cpp dbba6e1bab provider: remove unnecessary braces for all-1-line blocks 7 éve
ECAttach.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECChangeAdvisor.cpp 3166997125 treewide: replace type repetitions by "auto" in casting statements 7 éve
ECChangeAdvisor.h 2e18d88fb5 client: use initialization and in-class defaults 8 éve
ECDisplayTable.cpp 6465bee19c client: remove empty ECDisplayTable.h 8 éve
ECDistList.cpp b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECDistList.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECExchangeExportChanges.cpp 685580974e client: abolish goto statements (5/5) 7 éve
ECExchangeExportChanges.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECExchangeImportContentsChanges.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECExchangeImportContentsChanges.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECExchangeImportHierarchyChanges.cpp 685580974e client: abolish goto statements (5/5) 7 éve
ECExchangeImportHierarchyChanges.h 6aba05950b misc: add override markers 8 éve
ECExchangeModifyTable.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECExchangeModifyTable.h 2e18d88fb5 client: use initialization and in-class defaults 8 éve
ECExportAddressbookChanges.cpp 2e18d88fb5 client: use initialization and in-class defaults 8 éve
ECExportAddressbookChanges.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECGenericProp.cpp dbba6e1bab provider: remove unnecessary braces for all-1-line blocks 7 éve
ECGenericProp.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECMAPIContainer.cpp 685580974e client: abolish goto statements (5/5) 7 éve
ECMAPIContainer.h 1b08d97d15 build: work around gcc 4.7 dtor behavior 8 éve
ECMAPIFolder.cpp dbba6e1bab provider: remove unnecessary braces for all-1-line blocks 7 éve
ECMAPIFolder.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECMAPIFolderPublic.cpp cce193af64 client: abolish goto statements (4/5) 7 éve
ECMAPIFolderPublic.h 732f2a49da mapi: make SetProps's SPropValue const 8 éve
ECMAPIProp.cpp 685580974e client: abolish goto statements (5/5) 7 éve
ECMAPIProp.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECMAPITable.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECMAPITable.h 6aba05950b misc: add override markers 8 éve
ECMSProvider.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECMSProvider.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECMSProviderSwitch.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECMSProviderSwitch.h 6aba05950b misc: add override markers 8 éve
ECMailUser.cpp b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECMailUser.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECMemTablePublic.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECMemTablePublic.h 2e18d88fb5 client: use initialization and in-class defaults 8 éve
ECMessage.cpp 61e1d7bcc3 client: abolish goto statements (2/5) 7 éve
ECMessage.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECMessageStreamImporterIStreamAdapter.cpp 2e8744c8b6 hl: make object_ptr reset explicit 8 éve
ECMessageStreamImporterIStreamAdapter.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECMsgStore.cpp dbba6e1bab provider: remove unnecessary braces for all-1-line blocks 7 éve
ECMsgStore.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
ECMsgStorePublic.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECMsgStorePublic.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECNamedProp.cpp 72c9c4cc54 client: use memory_ptr for automatic deallocation (2/6) 7 éve
ECNamedProp.h b794e0e875 treewide: drop FAR type qualifiers 8 éve
ECNotifyClient.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECNotifyClient.h 6aba05950b misc: add override markers 8 éve
ECNotifyMaster.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECNotifyMaster.h 3165e9462c treewide: add default initializers (1/n) 8 éve
ECParentStorage.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECParentStorage.h 66387dc636 mapi: make DeleteProps's SPropTagArray const 8 éve
ECPropertyEntry.cpp 6246879921 treewide: check return values of ECAllocateMore (2/2) 7 éve
ECPropertyEntry.h f88f537775 treewide: drop redundant access control specifiers 8 éve
ECSessionGroupManager.cpp cc26b712e8 doc: fixup grammar of "IDs" 8 éve
ECSessionGroupManager.h 631dab76cb treewide: switch from pthread to std::{mutex,condition_variable} (11/n) 8 éve
ECXPLogon.cpp 72c9c4cc54 client: use memory_ptr for automatic deallocation (2/6) 7 éve
ECXPLogon.h 2e18d88fb5 client: use initialization and in-class defaults 8 éve
ECXPProvider.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
ECXPProvider.h 2e18d88fb5 client: use initialization and in-class defaults 8 éve
EntryPoint.h 6b1d87e46b build: obsolete tstring.h 7 éve
IECPropStorage.h 3069510ca2 client: drop unnecessary heap allocations in MAPIOBJECT 8 éve
Mem.cpp 623a8a4d21 client: remove redundant assignments for MAPIOBJECTS 8 éve
Mem.h 452e3c78dd client: use memory_ptr for automatic deallocation (1/6) 7 éve
ProviderUtil.cpp 4837c0f86d treewide: remove dependency on boost filesystem library 8 éve
ProviderUtil.h 9150f14f7a misc: move once-used decls to implementation file 8 éve
README.md 09aa08f1ac Add basic README files 8 éve
SessionGroupData.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
SessionGroupData.h 2e18d88fb5 client: use initialization and in-class defaults 8 éve
WSABPropStorage.cpp 394a67d0e8 provider: check return value of ECAllocateBuffer 7 éve
WSABPropStorage.h 66387dc636 mapi: make DeleteProps's SPropTagArray const 8 éve
WSABTableView.cpp 999a083af7 treewide: offer robust version of REGISTER_INTERFACE macro 8 éve
WSABTableView.h 6aba05950b misc: add override markers 8 éve
WSMAPIFolderOps.cpp 72c9c4cc54 client: use memory_ptr for automatic deallocation (2/6) 7 éve
WSMAPIFolderOps.h f88f537775 treewide: drop redundant access control specifiers 8 éve
WSMAPIPropStorage.cpp 72c9c4cc54 client: use memory_ptr for automatic deallocation (2/6) 7 éve
WSMAPIPropStorage.h 2e18d88fb5 client: use initialization and in-class defaults 8 éve
WSMessageStreamExporter.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
WSMessageStreamExporter.h f88f537775 treewide: drop redundant access control specifiers 8 éve
WSMessageStreamImporter.cpp f160ba86a2 treewide: simplify small functions to be even smaller 7 éve
WSMessageStreamImporter.h f88f537775 treewide: drop redundant access control specifiers 8 éve
WSSerializedMessage.cpp f160ba86a2 treewide: simplify small functions to be even smaller 7 éve
WSSerializedMessage.h f88f537775 treewide: drop redundant access control specifiers 8 éve
WSStoreTableView.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
WSStoreTableView.h f88f537775 treewide: drop redundant access control specifiers 8 éve
WSTableView.cpp 2b50cdfe01 client: gracefully handle allocation failures 7 éve
WSTableView.h f88f537775 treewide: drop redundant access control specifiers 8 éve
WSTransport.cpp 685580974e client: abolish goto statements (5/5) 7 éve
WSTransport.h b138071256 provider: condense repeated new-QueryInterface logic 7 éve
WSUtil.cpp 2c00b03a08 client: abolish goto statements (3/5) 7 éve
WSUtil.h 7e560f153f misc: add const qualifiers to variables and functions 8 éve
epclient.cpp 2bc99518c5 misc: resolve 7 missing return value checks 7 éve
ics_client.hpp 1f33f1ea2a src: dissolve pointless typedefs 8 éve
kopano.inf 2a5437fbcc Initial commit 8 éve
resource.h 2a5437fbcc Initial commit 8 éve

README.md

Kopano basic tech. information

The Kopano Message store provider works with the following components (layered top-to-bottom):

Client side:

  • Full MAPI implementation to the client
  • Local client handling of data structures, formats, and anything needing caching or local processing
  • Abstract 'storage' classes for doing the actual transport of data to and from the server
  • Currently only the WS (WebService) Transport is implemented, using gSOAP for serialization

Network:

  • HTTP / SOAP network transport

Server side:

  • Server deserialisation and RPC with gSOAP (through either Apache or standalone server)
  • Storage layer for database communication
  • MySQL database storage