------------------------------------------------------------------------
r2197 | jkerihuel | 2010-10-16 23:38:51 +1100 (Sat, 16 Oct 2010) | 3 lines

Update version and codename for 0.11 TRANSPORTER


------------------------------------------------------------------------
r2199 | bradh | 2010-10-18 10:25:47 +1100 (Mon, 18 Oct 2010) | 9 lines

Minor fixes for property dumping in mapidump

Add support for PT_OBJECT and PT_CLSID property types.

Fix valgrind error in PT_UNICODE / PT_STRING8. The problem was that if
the string was empty (0x0000 for unicode), when we did a cast to a
uint32_t to test if it was MAPI_E_NOT_FOUND, we're using invalid memory.
The fix is good for unicode - perhaps could be better for string8.

------------------------------------------------------------------------
r2200 | bradh | 2010-10-18 13:47:34 +1100 (Mon, 18 Oct 2010) | 9 lines

Initial version of fast transfer parser.

This parser is callback based, so you can use it with different
output strategies.

Includes a test program, which you can use with something like
./bin/check_fasttransfer --profile=e2k10 --showprogress --dump-data
to show the contents of the stream.

------------------------------------------------------------------------
r2201 | bradh | 2010-10-19 16:13:17 +1100 (Tue, 19 Oct 2010) | 2 lines

API documentation typo fix.

------------------------------------------------------------------------
r2202 | bradh | 2010-10-19 16:17:17 +1100 (Tue, 19 Oct 2010) | 11 lines

Add support for private data in callback functions.

Used this in test program to allow deserialising a fast transfer stream
into a mapistore context. You can use it something like:
./bin/check_fasttransfer --showprogress --mapistore=/tmp/fx_fsocpf --profile=e2k10
(note that the directory should exist and be empty).

Fixed a couple of issues with the parser - missing property handling.

Updated mapitest to suit API changes.

------------------------------------------------------------------------
r2203 | jkerihuel | 2010-10-20 01:41:27 +1100 (Wed, 20 Oct 2010) | 6 lines

Patch from Reiner Bezuidenhout <rbezuide@yahoo.com>:

Fix invalid counter use within get_MAPITAGS_SRow with
an additional actual_count parameter


------------------------------------------------------------------------
r2204 | jkerihuel | 2010-10-20 01:50:26 +1100 (Wed, 20 Oct 2010) | 5 lines

Path from Reinier Bezuidenhout <rbezuide@yahoo.com>:
Add PR_SEND_RICH_INFO and PR_SEND_RICH_INFO_ERROR to the list of entries to be removed.
Fix a bug in ModifyRecipients and make possible to send emails to emitting account and other accounts in trusted domains.


------------------------------------------------------------------------
r2205 | bradh | 2010-10-20 12:34:05 +1100 (Wed, 20 Oct 2010) | 5 lines

Do the fast transfer stream from the top of the information store, rather than
just the Inbox.

Also remove some code that wasn't being used.

------------------------------------------------------------------------
r2206 | bradh | 2010-10-20 12:35:05 +1100 (Wed, 20 Oct 2010) | 2 lines

Improve handling of PT_DOUBLE in mapidump and fxparser code.

------------------------------------------------------------------------
r2207 | bradh | 2010-10-20 15:13:10 +1100 (Wed, 20 Oct 2010) | 2 lines

Add support for PT_DOUBLE for OCPF files.

------------------------------------------------------------------------
r2208 | bradh | 2010-10-20 16:27:59 +1100 (Wed, 20 Oct 2010) | 4 lines

Add better handling of folder hierarchies.

Unfortunately this shows a _lot_ of valgrind errors.

------------------------------------------------------------------------
r2211 | bradh | 2010-10-21 10:53:10 +1100 (Thu, 21 Oct 2010) | 5 lines

Initialise time structures - avoids valgrind warnings.

The complaint appears to be about tm_isdst element of the structure,
however it seems safest to initialise the whole thing.

------------------------------------------------------------------------
r2212 | bradh | 2010-10-21 12:43:05 +1100 (Thu, 21 Oct 2010) | 4 lines

Remove talloc_free causing double-free problems.

Fix by Julien. "Works for me"

------------------------------------------------------------------------
r2213 | bradh | 2010-10-21 12:44:44 +1100 (Thu, 21 Oct 2010) | 6 lines

Add a small valgrind suppression file for problems with OCPF.

These problems appear to be caused by bison / flex, rather than the way
we are using it. It would still be wise to apply some caution in regard
to these suppressions though.

------------------------------------------------------------------------
r2214 | jkerihuel | 2010-10-22 23:26:15 +1100 (Fri, 22 Oct 2010) | 2 lines

Fix PR_EMS_AB_OBJECT_GUID property type

------------------------------------------------------------------------
r2215 | jkerihuel | 2010-10-22 23:27:12 +1100 (Fri, 22 Oct 2010) | 3 lines

Fix print code when hitting invalid pointers


------------------------------------------------------------------------
r2216 | jkerihuel | 2010-10-22 23:34:35 +1100 (Fri, 22 Oct 2010) | 14 lines

- Comment AUX_HEADER ClientInfo structure for the moment. 
It requires manual NDR code to handle offset and missing parameters properly.
Fall back to DATA_BLOB for now

- Add IDL support for Async EMSMDB interface and EcDoAsyncConnectEx EMSMDB call
- Add server skeleton implementation for async EMSMDB and 0x{C,D,E} EMSMDB calls

- Add a server-side implementation of EcDoRpcExt2 (using obfuscation by default for rgbOut
- Wrap mapi_response processing in a separate function
- Point EcDoRpc and EcDoRpcExt2 to this function for MAPI processing

- Add a server version that suits Outlook 2010 requirements in EcDoConnect.


------------------------------------------------------------------------
r2217 | jkerihuel | 2010-10-22 23:47:05 +1100 (Fri, 22 Oct 2010) | 3 lines

Fix prototypes and headers for EcDoConnectAsyncEx


------------------------------------------------------------------------
r2222 | jkerihuel | 2010-10-23 22:33:27 +1100 (Sat, 23 Oct 2010) | 3 lines

Add missing symbols / skeleton for recently new RPC calls added to the IDL


------------------------------------------------------------------------
r2228 | bradh | 2010-10-25 14:53:14 +1100 (Mon, 25 Oct 2010) | 3 lines

Temporarily work around linker problem caused by recent changes to samba


------------------------------------------------------------------------
r2231 | jkerihuel | 2010-10-26 00:47:04 +1100 (Tue, 26 Oct 2010) | 8 lines

Based on a patch from Milan Crha <mcrha@redhat.com>:
Resolve a naming conflict with Samba4 API

error_message used in libocpf parser moved to ocpf_error_message

Fix issue #285


------------------------------------------------------------------------
r2232 | jkerihuel | 2010-10-26 01:45:24 +1100 (Tue, 26 Oct 2010) | 3 lines

Propagate UNICODE string size calculation fix from r1694 to libmapi


------------------------------------------------------------------------
r2234 | bradh | 2010-10-26 10:53:43 +1100 (Tue, 26 Oct 2010) | 4 lines

Add support for "expected fail" tests to mapitest

Apply it to the LZXPRESS-VALIDATE-001 test

------------------------------------------------------------------------
r2235 | bradh | 2010-10-26 11:14:13 +1100 (Tue, 26 Oct 2010) | 6 lines

Use TransportNewMail correctly - run against a Logon object.

Partial fix for part of #227 - this gets us MAPI_E_INVALID_PARAMETER
instead of MAPI_E_NO_SUPPORT.


------------------------------------------------------------------------
r2236 | bradh | 2010-10-26 12:45:56 +1100 (Tue, 26 Oct 2010) | 8 lines

Fix TransportNewMail properly this time.

The real change here is the use of obj_store as the target in
libmapi/IMsgStore.c::TransportNewMail()

Inserting the pointer to context->obj_test_folder just fixes
the mistake in r2235.

------------------------------------------------------------------------
r2237 | bradh | 2010-10-26 13:20:27 +1100 (Tue, 26 Oct 2010) | 2 lines

Mask off mfEverRead flag, which occurs on Exchange 2010.

------------------------------------------------------------------------
r2247 | bradh | 2010-10-29 10:53:23 +1100 (Fri, 29 Oct 2010) | 2 lines

Update documentation to reflect recent changes in samba tool name

------------------------------------------------------------------------
r2248 | bradh | 2010-10-29 14:01:58 +1100 (Fri, 29 Oct 2010) | 5 lines

Harden the Fast Transfer parser a bit.

It now deals with PT_SVREID and PT_I2, and should handle PT_STRING8
and PT_BINARY much better.

------------------------------------------------------------------------
r2250 | bradh | 2010-11-01 19:46:26 +1100 (Mon, 01 Nov 2010) | 2 lines

Fix warning on 32-bit machines.

------------------------------------------------------------------------
r2251 | bradh | 2010-11-01 21:52:32 +1100 (Mon, 01 Nov 2010) | 2 lines

Fix warning about argument is not a string literal.

------------------------------------------------------------------------
r2252 | bradh | 2010-11-02 13:52:19 +1100 (Tue, 02 Nov 2010) | 15 lines

Fix CopyTo test case.

The problem was caused by use of PR_CONVERSATION_TOPIC as a property,
which is read-only for the client after the first save in Exchange 2010.
So we use PR_SUBJECT instead, removing this property on the target message
to allow testing of the "no-overwrite" case.

Also, we can't use CopyFlagsNoOverwrite|CopyFlagsMove on Exchange 2010
(which was fixed in r2147 for another case).

I also changed the filename for the attachments to be short enough to fit
into the "DOS" convention, to avoid server-side truncation.

That now passes, and resolves #227.

------------------------------------------------------------------------
r2253 | bradh | 2010-11-02 22:41:21 +1100 (Tue, 02 Nov 2010) | 2 lines

Fix valgrind error about uninitialised value.

------------------------------------------------------------------------
r2254 | bradh | 2010-11-03 19:35:28 +1100 (Wed, 03 Nov 2010) | 6 lines

Patch by Andrew Tridgell <tridge@samba.org> to improve openchange samba4 build script.
    - allow preset SAMBA_GIT_REPO
    - build samba4 with make -j

Minor additional work by me to conditionally use ccache, and to consistently use either gmake or make (we already had the logic, just need to use the variable instead of hard-coding in a couple of places).

------------------------------------------------------------------------
r2255 | bradh | 2010-11-04 20:08:16 +1100 (Thu, 04 Nov 2010) | 2 lines

Update flags definition to match MS-OXCMSG.

------------------------------------------------------------------------
r2256 | bradh | 2010-11-05 18:39:18 +1100 (Fri, 05 Nov 2010) | 4 lines

Implement fallback to PR_SUBJECT behaviour for exchange2mbox.

Resolves task #296.

------------------------------------------------------------------------
r2257 | bradh | 2010-11-10 10:12:05 +1100 (Wed, 10 Nov 2010) | 11 lines

Update NSPI tests to report errors properly.

This increases the amount of failing NSPI tests by two (i.e. get reported as
broken now) - NSPI-MODLINKATT and NSPI-MODPROPS.

Also fix one test (NspiSeekEntries), which was a bit flaky (it worked in some
configurations, and not in others). The problem turned out to be that we were
using the profile->username for PR_DISPLAY_NAME value. That doesn't always
hold, so we now use the EMSMDB login szDisplayName instead.


------------------------------------------------------------------------
r2258 | bradh | 2010-11-10 14:04:18 +1100 (Wed, 10 Nov 2010) | 8 lines

Fix NSPI ModProps test.

It appears that the PR_DISPLAY_NAME is not changeable, which is probably
a good thing because the test didn't try to set it back, and a random
PR_DISPLAY_NAME would almost certainly have confused things.

The new test uses PR_OFFICE_LOCATION, and resets it at the end.

------------------------------------------------------------------------
r2259 | bradh | 2010-11-11 10:31:11 +1100 (Thu, 11 Nov 2010) | 2 lines

Add support for PT_OBJECT in property fetching.

------------------------------------------------------------------------
r2264 | jkerihuel | 2010-11-14 03:07:15 +1100 (Sun, 14 Nov 2010) | 3 lines

Merge mapi_context branch back into trunk.


------------------------------------------------------------------------
r2265 | jkerihuel | 2010-11-14 03:23:14 +1100 (Sun, 14 Nov 2010) | 3 lines

Delete deprecated torture suite and Perl swig bindings


------------------------------------------------------------------------
r2269 | bradh | 2010-11-16 12:39:42 +1100 (Tue, 16 Nov 2010) | 4 lines

Add support for associated messages (FAI) for GetContentsTable.

Update API documentation.

------------------------------------------------------------------------
r2270 | bradh | 2010-11-16 12:43:08 +1100 (Tue, 16 Nov 2010) | 6 lines

Link server code to libdcerpc-server.

This patch is somewhat incomplete, because it should use $(SAMBASERVER_LIBS)
instead of -ldcerpc-server. Unfortunately there is a typo in the dcerpc_server.pc
file, so this is the best we can do for now.

------------------------------------------------------------------------
r2271 | bradh | 2010-11-16 13:14:32 +1100 (Tue, 16 Nov 2010) | 2 lines

Minor format changes for autoconf output.

------------------------------------------------------------------------
r2272 | bradh | 2010-11-16 13:40:33 +1100 (Tue, 16 Nov 2010) | 2 lines

Fix warning about not checking return value of mkstemp()

------------------------------------------------------------------------
r2273 | jkerihuel | 2010-11-17 21:44:52 +1100 (Wed, 17 Nov 2010) | 3 lines

Quick openchangeclient hack to enable embedded images within HTML emails for Exchange below or equal to 2007.


------------------------------------------------------------------------
r2274 | jkerihuel | 2010-11-18 04:25:51 +1100 (Thu, 18 Nov 2010) | 3 lines

Fix a bug in openchangeclient, do not query message table if count is set to 0


------------------------------------------------------------------------
r2275 | jkerihuel | 2010-11-18 05:01:49 +1100 (Thu, 18 Nov 2010) | 3 lines

Some named properties used by openchangeclient (for sending contacts) were disabled in mapi-named-properties
Add some additional retval/sanity checks in openchangeclient

------------------------------------------------------------------------
r2278 | bradh | 2010-11-19 09:29:33 +1100 (Fri, 19 Nov 2010) | 4 lines

Fix entry ID structure.

Resolves bug #340.

------------------------------------------------------------------------
r2279 | bradh | 2010-11-19 10:01:34 +1100 (Fri, 19 Nov 2010) | 7 lines

Use symbolic name for dcerpc-server library.

Resolves task #339.

Also fix a copy/paste error in libmapiadmin installation.


------------------------------------------------------------------------
r2280 | bradh | 2010-11-22 12:59:23 +1100 (Mon, 22 Nov 2010) | 7 lines

Implement RTF compression.

Includes mapitest coverage for the cases in MS-OXRTFCP and a larger
file (to test dictionary wrap-around).

Resolves task #313.

------------------------------------------------------------------------
r2281 | bradh | 2010-11-22 13:14:54 +1100 (Mon, 22 Nov 2010) | 4 lines

Revert r2279 to allow building against current samba release.

Refer task #339.

------------------------------------------------------------------------
r2282 | bradh | 2010-11-23 10:42:04 +1100 (Tue, 23 Nov 2010) | 4 lines

Remove compatibility code from openchange.

Resolves task #280.

------------------------------------------------------------------------
r2283 | bradh | 2010-11-24 14:57:27 +1100 (Wed, 24 Nov 2010) | 2 lines

API documentation typo fix.

------------------------------------------------------------------------
r2284 | bradh | 2010-11-24 15:17:56 +1100 (Wed, 24 Nov 2010) | 3 lines

Remove unused parts of the Makefile configuration.


------------------------------------------------------------------------
r2285 | bradh | 2010-11-24 15:25:04 +1100 (Wed, 24 Nov 2010) | 11 lines

Commit an initial (incomplete) async notification implementation.

This is only client side. It comes with a simple test application
that basically just blocks waiting for the async notification.

This isn't the final API, and there are some structural issues
with the way in which Subscribe() works. 

Also, works a lot better on Exchange 2007, still need to work on
the Exchange 2010 issues.

------------------------------------------------------------------------
r2286 | bradh | 2010-11-24 15:44:01 +1100 (Wed, 24 Nov 2010) | 2 lines

Update FXICS tests to use real server versions, and to act on the proper object.

------------------------------------------------------------------------
r2305 | jkerihuel | 2010-11-26 07:56:28 +1100 (Fri, 26 Nov 2010) | 2 lines

Fix StreamSize size in libmapiserver

------------------------------------------------------------------------
r2310 | bradh | 2010-11-26 16:46:24 +1100 (Fri, 26 Nov 2010) | 2 lines

Fix some API documentation issues.

------------------------------------------------------------------------
r2314 | bradh | 2010-11-27 10:47:22 +1100 (Sat, 27 Nov 2010) | 2 lines

Minor docs update for OCPF.

------------------------------------------------------------------------
r2315 | bradh | 2010-11-27 11:15:56 +1100 (Sat, 27 Nov 2010) | 4 lines

Fix openchange tracker link for mapiproxy docs

Also fix a couple of typos.

------------------------------------------------------------------------
r2316 | bradh | 2010-11-27 18:19:30 +1100 (Sat, 27 Nov 2010) | 2 lines

Add PT_DOUBLE description.

------------------------------------------------------------------------
r2330 | jkerihuel | 2010-12-02 06:22:05 +1100 (Thu, 02 Dec 2010) | 3 lines

Fix mapitest when running without profiles or trying to use online suite when server is offline.


------------------------------------------------------------------------
r2331 | jkerihuel | 2010-12-02 07:54:27 +1100 (Thu, 02 Dec 2010) | 6 lines

Patch from Philip Spencer <pspencer@fields.utoronto.ca>:

Fix dlinklist allocation problems by allocating all list elements 
as children of fsocpf_ctx rather than as children of other list elements


------------------------------------------------------------------------
r2334 | bradh | 2010-12-02 09:57:36 +1100 (Thu, 02 Dec 2010) | 4 lines

Update man page to show how to run a suite of tests.

Thanks to Anatoliy Atanasov for explaining how to do this.

------------------------------------------------------------------------
r2335 | bradh | 2010-12-02 11:43:11 +1100 (Thu, 02 Dec 2010) | 3 lines

Remove unused code / obsolete documentation associated with swig bindings
and torture test.

------------------------------------------------------------------------
r2367 | bradh | 2010-12-09 15:39:29 +1100 (Thu, 09 Dec 2010) | 4 lines

Fix bug #343 relating to internal / external properties.

Add API documentation to explain the issue.

------------------------------------------------------------------------
r2368 | bradh | 2010-12-10 21:04:58 +1100 (Fri, 10 Dec 2010) | 5 lines

fix --folder option with openchange --fetchmail command.

The problem is that we were mixing PR_DISPLAY_NAME and PR_DISPLAY_NAME_UNICODE


------------------------------------------------------------------------
r2369 | bradh | 2010-12-12 10:38:37 +1100 (Sun, 12 Dec 2010) | 5 lines

use inttypes.h header instead of local PRIx64/PRIX64 defines

This should work on FreeBSD (not just Linux) where __WORDSIZE doesn't appear to
be defined.

------------------------------------------------------------------------
r2370 | bradh | 2010-12-12 10:53:41 +1100 (Sun, 12 Dec 2010) | 4 lines

Fix enum confusion.

Warning occurred on FreeBSD build with gcc 4.5

------------------------------------------------------------------------
r2371 | bradh | 2010-12-12 21:29:52 +1100 (Sun, 12 Dec 2010) | 7 lines

Merge patch by Anatoliy Atanasov <anatoliy.atanasov@postpath.com> to test case where recipient name cannot be resolved.

Based on earlier work by Kamen Mazdrashki <kamen.mazdrashki@postpath.com>.

Minor additional changes by me, mainly to test the result flag is as expected.


------------------------------------------------------------------------
r2375 | bradh | 2010-12-13 12:38:24 +1100 (Mon, 13 Dec 2010) | 6 lines

Change from using SPropTagArray to the proper NSPI PropertyTagArray_r type.

This changes a bit of API, but the fix is usually very easy: just replace
struct SPropTagArray with struct PropertyTagArray_r when trying to resolve
names.

------------------------------------------------------------------------
r2376 | bradh | 2010-12-13 20:09:10 +1100 (Mon, 13 Dec 2010) | 4 lines

Try harder to find bash.

This is useful on FreeBSD, where ports puts bash in /usr/local/bin

------------------------------------------------------------------------
r2377 | bradh | 2010-12-13 20:19:08 +1100 (Mon, 13 Dec 2010) | 2 lines

Try again with a working env line.

------------------------------------------------------------------------
r2390 | jkerihuel | 2010-12-17 22:11:23 +1100 (Fri, 17 Dec 2010) | 4 lines

Set cn attribute to prop_name for MNID_STRING named properties.
This fixes GetIdsFromNames searches on MNID_STRING named props.


------------------------------------------------------------------------
r2391 | jkerihuel | 2010-12-17 22:13:31 +1100 (Fri, 17 Dec 2010) | 5 lines

Outlook 2003 with SP1 refuses to launch (or seems to crash) if these named properties are missing:
- urn:schemas-microsoft-com:office:outlook#storetypeprivate
- urn:schemas-microsoft-com:office:outlook#noaclui


------------------------------------------------------------------------
r2392 | jkerihuel | 2010-12-17 22:15:53 +1100 (Fri, 17 Dec 2010) | 5 lines

Fix size calculation for stubs or calls failing.
'*size = ' needed to be replaced with '*size +='
to keep a consistent length among mapi_repl transaction.


------------------------------------------------------------------------
r2395 | jkerihuel | 2010-12-18 01:29:00 +1100 (Sat, 18 Dec 2010) | 3 lines

Add PSETID_Common to the known list of OLEGUID


------------------------------------------------------------------------
r2405 | jkerihuel | 2010-12-18 03:46:09 +1100 (Sat, 18 Dec 2010) | 4 lines

Prevent QueryRows from incorrect size calculation by checking 
RowCount value before attempting to add RowData length.


------------------------------------------------------------------------
r2406 | jkerihuel | 2010-12-18 03:47:56 +1100 (Sat, 18 Dec 2010) | 6 lines

Tweak initial processing order: First create a default QueryRows_repl blob
then do further checks.

Also create a proper QueryRows error blob when it fails finding parent handle.


------------------------------------------------------------------------
r2407 | jkerihuel | 2010-12-18 04:27:25 +1100 (Sat, 18 Dec 2010) | 3 lines

Add server-side stubs for ModifyRules Rop


------------------------------------------------------------------------
r2410 | bradh | 2010-12-18 20:07:52 +1100 (Sat, 18 Dec 2010) | 8 lines

Implement support for RopSynchronizationConfigure on client side.

The IDL was already there, but was updated to match latest specs
and re-use some existing enums. libmapi implementation and mapitest
unit tests were added.

Resolves Feature #60.

------------------------------------------------------------------------
r2411 | bradh | 2010-12-18 21:44:20 +1100 (Sat, 18 Dec 2010) | 9 lines

Implement RopSynchronizationUploadStateStreamBegin,
RopSynchronizationUploadStateStreamContinue and
RopSynchronizationUploadStateStreamEnd.

The IDL was already in place - this commit provides the libmapi
implementation and a simple mapitest case.

Resolves features #64, #65 and #66.

------------------------------------------------------------------------
r2418 | bradh | 2010-12-22 09:21:55 +1100 (Wed, 22 Dec 2010) | 2 lines

User autogen.sh instead of (removed) autogen-waf.sh script when building samba libs.

------------------------------------------------------------------------
r2465 | bradh | 2011-01-04 09:17:13 +1100 (Tue, 04 Jan 2011) | 2 lines

Bump to alpha14.

------------------------------------------------------------------------
r2519 | jkerihuel | 2011-01-19 20:57:15 +1100 (Wed, 19 Jan 2011) | 6 lines

Fix EcDoConnectEx server side implementation and ndr_push function.

Outlook can now use EcDoConnectEx/EcDoRpcExt2 to communicate with
OpenChange server.


------------------------------------------------------------------------
r2521 | bradh | 2011-01-22 05:31:09 +1100 (Sat, 22 Jan 2011) | 2 lines

Merge libmapiserver changes from mapistore_v2 branch.

------------------------------------------------------------------------
r2523 | jkerihuel | 2011-01-22 07:12:07 +1100 (Sat, 22 Jan 2011) | 6 lines

Merge preliminary mapistore_v2 code back into trunk:
- Enable mapistore.ldb root tree provisioning
- Add python bindings
- Turn MAPISTORE errors into an enum


------------------------------------------------------------------------
r2524 | bradh | 2011-01-22 07:17:49 +1100 (Sat, 22 Jan 2011) | 2 lines

Merge libmapiserver from sogo branch.

------------------------------------------------------------------------
r2527 | bradh | 2011-01-23 07:18:04 +1100 (Sun, 23 Jan 2011) | 5 lines

Remove the "second hand" FID / MID database, which we didn't (and couldn't safely) use anyway.

(merge rev 2526 from mapistore_v2 branch)


------------------------------------------------------------------------
r2532 | jkerihuel | 2011-01-23 08:47:02 +1100 (Sun, 23 Jan 2011) | 5 lines

- propagate usage of enum MAPITAGS instead of uint32_t
- remove usage of c++ reserved keywords
- cast values properly to remove g++ warnings


------------------------------------------------------------------------
r2533 | jkerihuel | 2011-01-23 08:48:06 +1100 (Sun, 23 Jan 2011) | 3 lines

- cast values properly to remove g++ warnings


------------------------------------------------------------------------
r2534 | jkerihuel | 2011-01-23 08:48:46 +1100 (Sun, 23 Jan 2011) | 3 lines

Remove unmaintained sqlite3 backends from trunk


------------------------------------------------------------------------
r2535 | jkerihuel | 2011-01-23 08:50:08 +1100 (Sun, 23 Jan 2011) | 4 lines

- cast values properly to remove g++ warnings
- makes reference to inttypes.h for PRIx64 support


------------------------------------------------------------------------
r2536 | jkerihuel | 2011-01-23 08:51:36 +1100 (Sun, 23 Jan 2011) | 5 lines

- Convert return type to enum MAPISTORE_ERROR
- use inttypes.h for PRIx64 support
- Fix cast to prevent g++ warnings


------------------------------------------------------------------------
r2537 | jkerihuel | 2011-01-23 08:52:24 +1100 (Sun, 23 Jan 2011) | 3 lines

Cast values and prevent g++ from compilation errors


------------------------------------------------------------------------
r2538 | bradh | 2011-01-23 08:54:26 +1100 (Sun, 23 Jan 2011) | 4 lines

Merge r2528 and r2529 from mapistore_v2 branch.

This are small changes to protect against problems running mapitest, but are generally useful.

------------------------------------------------------------------------
r2540 | jkerihuel | 2011-01-23 11:02:36 +1100 (Sun, 23 Jan 2011) | 5 lines

- Turn return value to MAPISTORE_ERROR for remaining function
- Ensure retval match the function prototype
- Fix cast warning


------------------------------------------------------------------------
r2543 | jkerihuel | 2011-01-23 13:27:15 +1100 (Sun, 23 Jan 2011) | 7 lines

Implements mapistore layered functions that allows a backend to specify the URI it wants to use for a specific system/special folder:
- Add an enum MAPISTORE_DFLT_FOLDERS for possible folders to lookup
- Implement behavior in fsocpf backend
- Implement Python bindings bits
- Update mapistoredb_test.py to reflect this behavior


------------------------------------------------------------------------
r2544 | jkerihuel | 2011-01-24 04:50:42 +1100 (Mon, 24 Jan 2011) | 6 lines

Introduce a mapistore_backend_context opaque structure for backends, 
wrapping the mapistore context into an opaque structure and giving 
backends the ability to use some mapistore functions.



------------------------------------------------------------------------
r2545 | jkerihuel | 2011-01-24 04:59:57 +1100 (Mon, 24 Jan 2011) | 4 lines

Convenient function to retrieve the mapistore database path from mapistore.
Required by forthcoming mstoredb backend.


------------------------------------------------------------------------
r2546 | bradh | 2011-01-24 06:20:06 +1100 (Mon, 24 Jan 2011) | 7 lines

Split out back-end specific API into separate header, and introduce a shared definitions file.

One change in here that isn't really ideal is the get_mapping_path() function that isn't really
part of the shared data structures, but is used across the API.

Also convert the registration function to take a structure pointer in lieu of a void pointer.

------------------------------------------------------------------------
r2547 | jkerihuel | 2011-01-24 07:04:37 +1100 (Mon, 24 Jan 2011) | 7 lines

Add getsetters for firstorgdn (CN=...) in mapistore_processing.c which 
makes possible for forthcoming mstoredb backend to retrieve the default baseDN

Call mapistore_processing getters for firstorgdn within mapistoredb_conf 
getsetters for firstorg and firstou.


------------------------------------------------------------------------
r2548 | jkerihuel | 2011-01-24 07:08:06 +1100 (Mon, 24 Jan 2011) | 6 lines

- Add preliminary mstoredb backend to trunk with ({add,del}_context and create_uri) functions.
- Add mapistore_backend_public.c file to mapistore which makes use of mapistore_backend_context
opaque structure and gives backends ability to call part of the mapistore API
- Update mapistoredb_test python script to test mstoredb create_URI and getsetters effectiveness


------------------------------------------------------------------------
r2549 | jkerihuel | 2011-01-24 07:11:14 +1100 (Mon, 24 Jan 2011) | 3 lines

Make sure oxctabl.c handles potential MAPISTORE_ERROR code returned by mapistore_get_table_property


------------------------------------------------------------------------
r2551 | bradh | 2011-01-24 08:05:12 +1100 (Mon, 24 Jan 2011) | 4 lines

Split out libmapistore API documentation from mapiproxy documentation.

Mostly infrastructure work, but a few docs fixes too.

------------------------------------------------------------------------
r2552 | bradh | 2011-01-24 08:22:36 +1100 (Mon, 24 Jan 2011) | 2 lines

A little more work on API documentation.

------------------------------------------------------------------------
r2553 | jkerihuel | 2011-01-24 08:30:11 +1100 (Mon, 24 Jan 2011) | 4 lines

Move mapistore database (mapistore.ldb) initialization from
mapistore database layer to mapistore_processing layer.


------------------------------------------------------------------------
r2554 | bradh | 2011-01-24 14:09:16 +1100 (Mon, 24 Jan 2011) | 2 lines

Modify API for table types to use an enum, instead of #defines. Also general update to API documentation

------------------------------------------------------------------------
r2555 | jkerihuel | 2011-01-24 14:23:56 +1100 (Mon, 24 Jan 2011) | 8 lines

- Add GlobalCount attribute to the server object
- Add a function that returns the next available folder or message identifier
- Add a function that allocates a range of IDs and return the identifier to the range start and end

Code functions have been developed in mapistore_processing.c with wrappers in mapistoredb.c
Associated python bindings and test code is also available


------------------------------------------------------------------------
r2556 | bradh | 2011-01-24 15:58:01 +1100 (Mon, 24 Jan 2011) | 2 lines

libmapistore: minor API documentation update

------------------------------------------------------------------------
r2557 | bradh | 2011-01-24 16:00:20 +1100 (Mon, 24 Jan 2011) | 2 lines

libmapistore: Switch to using an enum to indicate the type of deletion operation (instead of #defines)

------------------------------------------------------------------------
r2558 | bradh | 2011-01-24 17:32:55 +1100 (Mon, 24 Jan 2011) | 4 lines

Move more functionality out of mapistore.h into a new shared header.

This avoids importing mapistore.h into the backends.

------------------------------------------------------------------------
r2559 | jkerihuel | 2011-01-25 04:08:18 +1100 (Tue, 25 Jan 2011) | 12 lines

Add the mapistore_v2 indexing IDL that will be used in conjunction to the new indexing API:
This IDL is designed to pull/push the TDB value part of the key/value pair and hold information such as:
- type of item (folder/message/soft deleted)
- mapistore URI
- Parent folder ID
- allocation range for messages
- basic ACLs for folders

It furthermore introduces a versioning system which will help keeping consistencies 
across further and potential updates.


------------------------------------------------------------------------
r2560 | jkerihuel | 2011-01-25 04:27:12 +1100 (Tue, 25 Jan 2011) | 3 lines

Update the svn ignore list for the indexing folder


------------------------------------------------------------------------
r2561 | jkerihuel | 2011-01-25 09:14:00 +1100 (Tue, 25 Jan 2011) | 16 lines

- Commit preliminary bits of mapistore_v2 indexing database implementation.
- Add comments to distinguish between mapistore_v1 and mapistore_v2 bits.
  For the moment both implementation coexist to keep the transition stage 
  when switching from v1 to v2 as short as possible

- Fix compilation dependencies rules

- Solve the chicken/egg problem and create the Mailbox Root container for mstoredb
  in mapistore.ldb through mapistoredb interface

- Add context creation/deletion in mapistore_v2 indexing API
- Add function to add new fmid in mapistore_v2 indexing API

- Update mapistoredb bindings and test code to test new mailbox creation


------------------------------------------------------------------------
r2562 | jkerihuel | 2011-01-25 09:23:09 +1100 (Tue, 25 Jan 2011) | 4 lines

Factorize title creation within a convenient function.
Make Jelmer smile ;-)


------------------------------------------------------------------------
r2563 | jkerihuel | 2011-01-25 10:12:19 +1100 (Tue, 25 Jan 2011) | 4 lines

Move errors macro from mapistore_private.h to mapistore_errors.h
Make macros available for backends


------------------------------------------------------------------------
r2564 | jkerihuel | 2011-01-25 10:13:16 +1100 (Tue, 25 Jan 2011) | 4 lines

Turn enum MAPISTATUS_ERROR sanity checks with if statement into MAPISTORE_RETVAL_IF
wherever possible


------------------------------------------------------------------------
r2566 | jkerihuel | 2011-01-25 12:34:39 +1100 (Tue, 25 Jan 2011) | 5 lines

Merge change from plugfest branch:

Cleanup policy handle upon disconnect


------------------------------------------------------------------------
r2567 | jkerihuel | 2011-01-25 14:25:26 +1100 (Tue, 25 Jan 2011) | 2 lines

Revert local hack which shouldn't have ended on svn

------------------------------------------------------------------------
r2568 | jkerihuel | 2011-01-25 14:27:42 +1100 (Tue, 25 Jan 2011) | 11 lines

- Add mapistore_indexing implementation got get/update operations

- Add a function to let mapistoredb register a message ID allocation 
range for mailbox root container

- Update mapistoredb python test accordingly.

- Add preliminary (internal) dump routines for mapistore_indexing_entry objects.



------------------------------------------------------------------------
r2569 | jkerihuel | 2011-01-25 16:48:33 +1100 (Tue, 25 Jan 2011) | 3 lines

Let a backend queries mapistore whether a given URI exists in the indexing database or not.


------------------------------------------------------------------------
r2570 | jkerihuel | 2011-01-25 17:00:04 +1100 (Tue, 25 Jan 2011) | 6 lines

After a full and long programming day, it happends to be tired.
This is a typical example of a programmer that needs a beer...

Fix the opaque to mapistore_context assignation


------------------------------------------------------------------------
r2572 | bradh | 2011-01-25 18:11:31 +1100 (Tue, 25 Jan 2011) | 2 lines

libmapistore: Minor API documentation fixes.

------------------------------------------------------------------------
r2573 | jkerihuel | 2011-01-25 18:12:18 +1100 (Tue, 25 Jan 2011) | 7 lines

- Do not assign mstore_ctx until we've had a chance to check if mapistore_backend_context exist
- Implement mapistore_register_folder function which lets backend register a folder using its mapistore URI.
- Add a mapistore_indexing function that retrieves the FMID associated to a mapistore URI

This is Rock n' Roll code - untested but looks promising ;p


------------------------------------------------------------------------
r2574 | jkerihuel | 2011-01-26 09:30:36 +1100 (Wed, 26 Jan 2011) | 16 lines

Handle FID/MID uniqueness BY MAILBOX rather than BY SERVER

The FID/MID namespace is unique per mailbox which means that even if
you get out of IDs, you only crash your mailbox, not the entire
server

The following commit introduces a user store object within mapistore.ldb located
under CN=${username},${firstorgdn} responsible from maintaining the GLobalCount
for the user mailbox.

Furthermore, this alters the core behavior of provisioning and introduce username
as being a parameter to most of the mapistore API (propagation scheduled among
mapistore_v1 to mapistore_v2 transition).



------------------------------------------------------------------------
r2575 | jkerihuel | 2011-01-26 09:48:39 +1100 (Wed, 26 Jan 2011) | 11 lines

Providing setters for netbiosname, firstorg and firstou is messy.

If done after provisioning stage, introduce inconsistent entries within
mapistore.ldb database.

This commit replaces getters with parameters to the provision() 
function in python bindings code.

Change python test code to reflect this change


------------------------------------------------------------------------
r2577 | jkerihuel | 2011-01-26 11:37:49 +1100 (Wed, 26 Jan 2011) | 3 lines

Fix uninitialized parent value in CreateMessage function.


------------------------------------------------------------------------
r2580 | jkerihuel | 2011-01-26 12:06:43 +1100 (Wed, 26 Jan 2011) | 6 lines

- Forgot the most obvious ... a reference to FMID within mapistore_indexing_entry IDL structure.
- Also add an IDL for reverse entries URI/... -> FMID/...
- Fix the reverse entries checking with NDR code rather than fuzzy str ops
- Add a dumping function for mapistore_indexing_entry_r


------------------------------------------------------------------------
r2582 | jkerihuel | 2011-01-26 14:17:29 +1100 (Wed, 26 Jan 2011) | 4 lines

Add a release function so we can safely free mapistore database references without relying
on unpredictable timing from python garbage collector


------------------------------------------------------------------------
r2583 | jkerihuel | 2011-01-26 14:18:15 +1100 (Wed, 26 Jan 2011) | 3 lines

Ensure we reset mapping_path to NULL after free


------------------------------------------------------------------------
r2584 | jkerihuel | 2011-01-26 14:30:02 +1100 (Wed, 26 Jan 2011) | 14 lines

- Add login_user and username to mapistore context creation.
These parameters are needed to query the correct indexing database (user based).
In the future login_user != username will be used for ACLs check etc.

- Add a provision.py script which will be used to test mapistore_v2 provisioning.

- We can now retrieve a context on the root mailbox folder from a mapistore.ldb 
provisioning with mapistoredb and accessed through mapistore API.

Normally everything *SHOULD* still be working properly. 
However *should* is not *must* and still I must commit.
I should shut up ...


------------------------------------------------------------------------
r2585 | jkerihuel | 2011-01-27 09:16:51 +1100 (Thu, 27 Jan 2011) | 3 lines

Introduce debugging macros and levels for backend willing to use a consistent debugging mechanism


------------------------------------------------------------------------
r2586 | jkerihuel | 2011-01-28 05:04:29 +1100 (Fri, 28 Jan 2011) | 3 lines

Improve DEBUG macros to handle va_args instead of a static format string


------------------------------------------------------------------------
r2587 | jkerihuel | 2011-01-28 12:15:03 +1100 (Fri, 28 Jan 2011) | 23 lines

- Implement the root_mkdir (db_mkdir) mapistore implementation which lets
  create default system/special folders in mstoredb (mapistore.ldb), get
  new FIDs for these folders and register them in the indexing database.

- Update provision.py test provisioning script to reflect latest changes

- Add MDB default folders to pymapistore

- Add a new MAPISTORE error (MAPISTORE_ERR_INVALID_URI)

- Add username to backend_context structure

- Turn some DEBUG into MSTORE_DEBUG macros in mstoredb backend

- Add CN (default folder name) to the list of known folders for mstoredb backend.
  This provides a list of default names (English) for PidTagDisplayName property
  if not specified at provisioning time.

mapistore_mstoredb.c:289: warning: assignment from incompatible pointer type
This warning will be fixed in further commits when we come to propagate
mapistore_v2 mkdir implementation to fsocpf.


------------------------------------------------------------------------
r2588 | jkerihuel | 2011-01-28 12:28:42 +1100 (Fri, 28 Jan 2011) | 4 lines

ALlow mstoredb to specify a different container class than IPF.Note
depending on the root folder we are creating.


------------------------------------------------------------------------
r2590 | jkerihuel | 2011-01-31 22:32:24 +1100 (Mon, 31 Jan 2011) | 3 lines

Fix a typo in serverdn format string when setting up mapistore with a DC


------------------------------------------------------------------------
r2591 | jkerihuel | 2011-02-01 03:08:44 +1100 (Tue, 01 Feb 2011) | 3 lines

set params to NULL after calls to talloc_free


------------------------------------------------------------------------
r2592 | jkerihuel | 2011-02-01 03:14:46 +1100 (Tue, 01 Feb 2011) | 6 lines

- Fix context_id sign in python bindings ParseTuple
- Use METH_KEYWORDS for some functions
- Add missing Py_INCREF in modules
- Moving mailbox provisioning into a start() function


------------------------------------------------------------------------
r2593 | jkerihuel | 2011-02-01 03:22:20 +1100 (Tue, 01 Feb 2011) | 3 lines

Remove warning.


------------------------------------------------------------------------
r2594 | jkerihuel | 2011-02-01 03:26:49 +1100 (Tue, 01 Feb 2011) | 3 lines

Force dflt_folders to be int in ParseTuple parsing


------------------------------------------------------------------------
r2595 | jkerihuel | 2011-02-01 03:30:24 +1100 (Tue, 01 Feb 2011) | 3 lines

Retrieve value within uint32_t before casting it to MAPISTORE_DFLT_FOLDERS enum


------------------------------------------------------------------------
r2596 | jkerihuel | 2011-02-01 04:09:20 +1100 (Tue, 01 Feb 2011) | 14 lines

- Add getsetters for mapistore_uri to mapistore python interface

- Implement the function required to update a mapistore uri

- Add a function to add an entry_r record to the indexing database

- Add a function to delete an entry_r record from the indexing
  database

- Update provision.py script to reflect this change

- Factorize code to add an entry_r record


------------------------------------------------------------------------
r2597 | jkerihuel | 2011-02-01 21:28:22 +1100 (Tue, 01 Feb 2011) | 15 lines

Merge makepropslist script from Brad from mapistore_v2 back into
trunk.

This script takes Microsoft [MS-OXPROPS].pdf and turn it into C header
and source code file + an v1_enum used by exchange.idl. It is a
replacement to the existing mapitags.{c,h} and the static mparse.pl
script for MAPITAGS.

Generated files have also been added to the repository. We do not need
to update them unless next Microsoft documentation release (3 up to 6
months release cycle).

Update openchange code to use canonical names whereas needed.


------------------------------------------------------------------------
r2598 | jkerihuel | 2011-02-01 21:29:32 +1100 (Tue, 01 Feb 2011) | 2 lines

Add missing file

------------------------------------------------------------------------
r2599 | jkerihuel | 2011-02-02 02:14:25 +1100 (Wed, 02 Feb 2011) | 8 lines

Fix Property tag attribute fetching for named properties. The split on
':' was applied to the entire string. However some entries were using
urn: or DAV: or even http:.

This fix splits but with a maxCount of 1, preserving the remaining
string upon success.


------------------------------------------------------------------------
r2601 | jkerihuel | 2011-02-03 23:03:59 +1100 (Thu, 03 Feb 2011) | 15 lines

- Update makepropslist.py to generate named properties header files
  and mapistore_v2 named props database LDIF file.

- Do not generate mapi_nameid.h and mapi_nameid_private.h using
  mparse.pl but makepropslist.py

- Add these files to the repository. We shouldn't have to update them
  until next Microsoft Documentation release.

- Add additional documentation fix to makepropslist.h

- Add a static mapistore_namedprops_v2.ldif which will replace
  mapistore_namedprops.ldif once we switch from v1 to v2.


------------------------------------------------------------------------
r2602 | jkerihuel | 2011-02-03 23:41:54 +1100 (Thu, 03 Feb 2011) | 7 lines

- Add getsetters on mapistore_named_properties.ldb database

- Add a pointer to mapistore_named_properties database in
  mapistoredb_conf structure and initialize it within
  mapistoredb_init() function.


------------------------------------------------------------------------
r2603 | jkerihuel | 2011-02-04 00:55:50 +1100 (Fri, 04 Feb 2011) | 3 lines

Release mem_ctx where needed


------------------------------------------------------------------------
r2604 | jkerihuel | 2011-02-04 02:45:41 +1100 (Fri, 04 Feb 2011) | 10 lines

- Fix LDIF file generation for named properties database (dn: was
  missing)

- Remove named properties duplicate (MNID_ID or MNID_STRING). This was
  also preventing from provisioning the named properties database
  properly.

- Update files concerned by the parser changes


------------------------------------------------------------------------
r2605 | jkerihuel | 2011-02-04 03:14:23 +1100 (Fri, 04 Feb 2011) | 7 lines

For named properties duplicate checks on MNID_STRING we want to couple
the keyword to the oleguid, if oleguid mismatches, then it must not be
considered as a duplicate.

Update generated code concerned by this change


------------------------------------------------------------------------
r2606 | jkerihuel | 2011-02-04 03:36:44 +1100 (Fri, 04 Feb 2011) | 22 lines

- Move named properties database provisioning out of mapistore_init()

- Only create it through mapistoredb at provisioning time

- Add an interface in libmapistore/database to provision named
  properties and add associated python bindings and working code
  example within pyopenchange/tests/provision.py

- Remove deprecated code from mparse.pl for known and named property tags

- Add a convenient function in mapistore_processing.c to provision a
  LDB database using a LDIF file

- Add database schema and ROOTDSE to mapi_named_properties.ldb
  database

- Add MAPISTORE_ERR_NOT_IMPLEMENTED error code to the MAPISTORE_ERROR
  enum

- Replace some existing DEBUG macros with MSTORE_DEBUG_ equivalent


------------------------------------------------------------------------
r2607 | jkerihuel | 2011-02-04 03:59:32 +1100 (Fri, 04 Feb 2011) | 4 lines

Remove remaining references to nprops_ctx and replace them with
mapistore_nprops_ctx.


------------------------------------------------------------------------
r2608 | jkerihuel | 2011-02-04 04:06:42 +1100 (Fri, 04 Feb 2011) | 3 lines

Fix incorrect cn for CN=External,CN=Server record


------------------------------------------------------------------------
r2609 | jkerihuel | 2011-02-04 04:48:11 +1100 (Fri, 04 Feb 2011) | 6 lines

- Add mapistore function and associate bindings to retrieve the
  default first available ID both for external and internal mappings.

- Remove unused variable in mapistore_namedprops.c


------------------------------------------------------------------------
r2611 | jkerihuel | 2011-02-04 23:45:55 +1100 (Fri, 04 Feb 2011) | 14 lines

- Generate pymapi properties objects from makepropslist.py rather than
  mparse.pl

- Commit pymapi_properties.c instead of auto-generating during make
  process

- Remove pymapi_properties code generation from mparse.pl and avoid it
  from being removed upon make clean.

- Adjust the very basic properties.py sample to use canonical names
  instead of altnames and remove unsupported (not covered by MS Doc)
  properties from the example.


------------------------------------------------------------------------
r2612 | jkerihuel | 2011-02-05 01:07:37 +1100 (Sat, 05 Feb 2011) | 14 lines

- Add a function to provision a namespace in named properties database
  for a given user and associated python bindings code

- Add a function to check if a user exists in named properties
  database

- Add python bindings code to turn MAPISTORE_ERROR into string error
  messages both within mapistore and mapistoredb interfaces

- Update provision script to display error strings instead of integer
  values and update provision.py test code to create a named
  properties namespace for the user.


------------------------------------------------------------------------
r2617 | bradh | 2011-02-07 09:51:29 +1100 (Mon, 07 Feb 2011) | 2 lines

Minor update for API documentation

------------------------------------------------------------------------
r2618 | bradh | 2011-02-07 21:50:45 +1100 (Mon, 07 Feb 2011) | 4 lines

Update build script to reflect samba buildsystem changes.

More changes are required for documentation.

------------------------------------------------------------------------
r2619 | bradh | 2011-02-07 22:01:10 +1100 (Mon, 07 Feb 2011) | 2 lines

Minor documentation update to reflect samba4 buildsystem changes.

------------------------------------------------------------------------
r2620 | jkerihuel | 2011-02-07 22:45:43 +1100 (Mon, 07 Feb 2011) | 4 lines

Add an objectClass: External and objectClass: Internal for better
indexing and search


------------------------------------------------------------------------
r2621 | jkerihuel | 2011-02-08 02:38:43 +1100 (Tue, 08 Feb 2011) | 3 lines

Start internal index mapping at 0x1 instead of 0x0


------------------------------------------------------------------------
r2622 | jkerihuel | 2011-02-08 03:10:32 +1100 (Tue, 08 Feb 2011) | 18 lines

- Let backends register named properties:
  - Either external == public, used by a client and understood by the
    associated backend only
  - Or internal == private, only for backend's internal usage

Backends can either specify a buffer with LDIF data or full patch to
the LDIF file.

mapping index attribute is automatically updated both for CN=External
and CN=Internal. Backends are guaranteed (upon successful
registration) that each of the backend property is mapped and available.

- Add MAPISTORE_ERR_NOT_IMPLEMENTED error code to mapistore errors enum

- Add skeleton backend's hook for namedprops provisioning in mstoredb
  and fsocpf backends.


------------------------------------------------------------------------
r2626 | jkerihuel | 2011-02-08 11:00:46 +1100 (Tue, 08 Feb 2011) | 2 lines

Turn DEBUG() macros into MSTORE_DEBUG_*()

------------------------------------------------------------------------
r2627 | jkerihuel | 2011-02-08 22:03:07 +1100 (Tue, 08 Feb 2011) | 11 lines

- Add an initialization function for backends. This function offers
  backends the ability to remove empty skeleton from their code and
  ensure they won't crash the server if one ops is missing.

- Make defaults ops return MAPISTORE_ERR_NOT_IMPLEMENTED

- Call mapistore_backend_init_defaults from backends

- Turn DEBUG macros into MSTORE_DEBUG_* in backends


------------------------------------------------------------------------
r2628 | jelmer | 2011-02-08 22:16:28 +1100 (Tue, 08 Feb 2011) | 1 line

Fix typo in Makefile (DESTIDR -> DESTDIR).
------------------------------------------------------------------------
r2629 | bradh | 2011-02-09 16:00:47 +1100 (Wed, 09 Feb 2011) | 2 lines

Minor additional samba4 build script fixes.

------------------------------------------------------------------------
r2631 | bradh | 2011-02-10 15:49:11 +1100 (Thu, 10 Feb 2011) | 5 lines

Minor addition documentation changes for samba build system changes.

We can now do the whole provisioning stage from the top level
openchange directory.

------------------------------------------------------------------------
r2633 | bradh | 2011-02-11 12:12:31 +1100 (Fri, 11 Feb 2011) | 4 lines

server: Update to reflect samba4 auth changes

Patch by Andrew Tridgell. Thanks!

------------------------------------------------------------------------
r2635 | bradh | 2011-02-11 14:52:22 +1100 (Fri, 11 Feb 2011) | 2 lines

Comment fix.

------------------------------------------------------------------------
r2641 | bradh | 2011-02-13 15:05:11 +1100 (Sun, 13 Feb 2011) | 2 lines

check_fasttransfer: Fix warnings from recent mapistore changes.

------------------------------------------------------------------------
r2642 | bradh | 2011-02-13 17:49:37 +1100 (Sun, 13 Feb 2011) | 4 lines

Add PtypString8 entries for each string to enum mapitags.

This prevents some warnings, and is useful for completeness.

------------------------------------------------------------------------
r2643 | bradh | 2011-02-13 19:50:04 +1100 (Sun, 13 Feb 2011) | 3 lines

libexchange2ical: handle change in function signature introduced in libical 0.46


------------------------------------------------------------------------
r2644 | bradh | 2011-02-13 20:31:45 +1100 (Sun, 13 Feb 2011) | 4 lines

libmapi: change mapidump_recipients to use PropertyTagArray_r 

This matches the ResolveNames() argument, and fixes 3 warnings.

------------------------------------------------------------------------
r2645 | bradh | 2011-02-14 08:57:46 +1100 (Mon, 14 Feb 2011) | 5 lines

server: Fix IDL for parsing of AUX_PERF_PROCESSINFO buffer.

This is a merge of r2589 from plugfest branch


------------------------------------------------------------------------
r2646 | bradh | 2011-02-14 09:15:27 +1100 (Mon, 14 Feb 2011) | 5 lines

server: fix samdb_connect() signature.

This is a merge of r2578 from the plugfest branch. Providing
signatures of samba functions was a hack, which we'll fix in due course.

------------------------------------------------------------------------
r2647 | bradh | 2011-02-14 09:25:52 +1100 (Mon, 14 Feb 2011) | 7 lines

server: Correct handling of rgwBestVersion

The logic is to return either the client version (if its ok) or the minimum
version that is required to connect (if the client version is not ok).

This is a merge of r2576 from the plugfest branch.

------------------------------------------------------------------------
r2648 | bradh | 2011-02-14 10:13:35 +1100 (Mon, 14 Feb 2011) | 5 lines

server: fix handling of XorMagic flag

This is a merge of r2571 from the plugfest branch, and addresses some of
the problems seen with the Microsoft MS-OXCRPC test.

------------------------------------------------------------------------
r2649 | bradh | 2011-02-14 10:33:36 +1100 (Mon, 14 Feb 2011) | 4 lines

server: intialize aux_header buffer to null if the data is missing.

This is a merge of r2581 from the plugfest branch.

------------------------------------------------------------------------
r2653 | bradh | 2011-02-15 10:00:41 +1100 (Tue, 15 Feb 2011) | 6 lines

Remove temporary hack introduced in r2228

The linking problem with samba4 is now fixed

This resolves task #330.

------------------------------------------------------------------------
r2655 | jkerihuel | 2011-02-16 02:32:03 +1100 (Wed, 16 Feb 2011) | 44 lines

Definitely change API and move from mapistore v1 to mapistore
v2. Server is currently broken and many fsocpf features are not
working. They will be fixed along future commits.

In a nutshell, this commit change mapistore so backend only have to
deal with URI. They don't have any knowledge about FID or MID.

It also implements mkdir for mstoredb and fsocpf.

In details:
- Update provision test script to: 
  - create Conflicts folder within Sync Issues folder (not root
  folder)
  - change MDB_INBOX from mstoredb to fsocpf after mstoredb Inbox
    creation

- Update python bindings. 
  - Add working implementation for:
    - add_context
    - get_folder_identifier
    - opendir
    - mkdir
  - Add mapistore python bindings getsetters for debuglevel. This offers
  an easy way to increase verbosity when debugging or analyzing
  failures.
  - Add objects for folder type enum (generic, search)

- Fix fsocpf model to use URI instead of FID/MID
- Fix create_context, opendir, mkdir implementation for fsocpf

- Commit all mapistore code within EMSMDB server.

- Add mapistore_set_debuglevel to set the mapistore debug level
- Add convenient public/common function to remove the namespace from a
  URI
- Add a function to return the URI for a default folder within a given
  context
- Add a function to return the folder identifier associated to a
  mapistore URI relative to a context identifier

- Add a mapistore indexing function to return the URI associated to a
  mapistore FMID for a given folder or message.


------------------------------------------------------------------------
r2657 | bradh | 2011-02-16 11:07:26 +1100 (Wed, 16 Feb 2011) | 7 lines

mapistore: minor cleanups for mapistore_mkdir()

 - initialize pointers to NULL
 - API documentation updates
 - comment fixes
 - relabel one label to make it clearer

------------------------------------------------------------------------
r2658 | bradh | 2011-02-16 11:14:01 +1100 (Wed, 16 Feb 2011) | 2 lines

mapistore: fix API documentation for mapistore_createmessage()

------------------------------------------------------------------------
r2659 | bradh | 2011-02-16 11:42:52 +1100 (Wed, 16 Feb 2011) | 2 lines

Try harder to not show _PUBLIC_ export defines in the API documentation

------------------------------------------------------------------------
r2660 | bradh | 2011-02-16 11:43:42 +1100 (Wed, 16 Feb 2011) | 2 lines

mapistore: Fix API documentation formatting for enum MAPISTORE_NAMEDPROPS_PROVISION_TYPE

------------------------------------------------------------------------
r2661 | bradh | 2011-02-16 12:35:45 +1100 (Wed, 16 Feb 2011) | 2 lines

mapistore: Clean up api documentation noise

------------------------------------------------------------------------
r2662 | bradh | 2011-02-16 13:47:38 +1100 (Wed, 16 Feb 2011) | 2 lines

mapistore: Remove commented-out declaration.

------------------------------------------------------------------------
r2663 | bradh | 2011-02-16 14:53:40 +1100 (Wed, 16 Feb 2011) | 2 lines

mapistore: debug typo fix.

------------------------------------------------------------------------
r2664 | bradh | 2011-02-16 14:55:28 +1100 (Wed, 16 Feb 2011) | 4 lines

pyopenchange: Minor cleanup in mapistoredb test

Remove stray semicolon, and fix typo.

------------------------------------------------------------------------
r2665 | bradh | 2011-02-16 14:58:55 +1100 (Wed, 16 Feb 2011) | 2 lines

pyopenchange: add setters for database path and named properties database path.

------------------------------------------------------------------------
r2666 | bradh | 2011-02-16 14:59:33 +1100 (Wed, 16 Feb 2011) | 2 lines

Remove stray semicolons.

------------------------------------------------------------------------
r2667 | bradh | 2011-02-16 15:30:31 +1100 (Wed, 16 Feb 2011) | 4 lines

mapistore: Use __FUNCTION__ macro instead of the literal function name for talloc_named()

Just makes it easier to update / harder to forget to change the name.

------------------------------------------------------------------------
r2668 | bradh | 2011-02-16 16:14:13 +1100 (Wed, 16 Feb 2011) | 8 lines

mapistore: Move some function declarations from mapistore_common.h to mapistore_backend.h

Most of these require a backend context. mapistore_strip_ns_from_uri() doesn't
require one, but its currently only used from the backends, and that seems
the mostly use.

Also fix / move a bit of API documentation.

------------------------------------------------------------------------
r2670 | jkerihuel | 2011-02-17 10:04:06 +1100 (Thu, 17 Feb 2011) | 9 lines

- Introduce preliminary WAF build system support for libmapistore 
- Remove libmapi/libmapi.h references within libmapistore

- Add a WAF_BUILD_INC macros to config.mk.in so waf and autoconf 
  requirements with regards to includes gets similar

- Change libmapistore includes


------------------------------------------------------------------------
r2671 | jkerihuel | 2011-02-17 10:27:54 +1100 (Thu, 17 Feb 2011) | 3 lines

Install header files for libmapistore


------------------------------------------------------------------------
r2672 | bradh | 2011-02-17 12:54:56 +1100 (Thu, 17 Feb 2011) | 2 lines

mapistore: Turn down URI generation message to DEBUG level

------------------------------------------------------------------------
r2673 | bradh | 2011-02-17 14:41:30 +1100 (Thu, 17 Feb 2011) | 6 lines

Add unit tests for python mapistore / mapistoredb

Run it like:
./pyopenchange/unittest/unittest_mapistoredb.py 
(or add -v for more verbose output)

------------------------------------------------------------------------
r2674 | bradh | 2011-02-17 14:59:00 +1100 (Thu, 17 Feb 2011) | 2 lines

mapistore: add unit tests of creating a sub-folder.

------------------------------------------------------------------------
r2675 | bradh | 2011-02-17 16:05:56 +1100 (Thu, 17 Feb 2011) | 2 lines

buildsystem: cleanup mapistore coverage noise files on make clean / distclean

------------------------------------------------------------------------
r2676 | bradh | 2011-02-17 16:06:52 +1100 (Thu, 17 Feb 2011) | 4 lines

mapistore: Add unit tests for opendir and setprops.

This currently breaks the tests (i.e. they fail / segfault).

------------------------------------------------------------------------
r2677 | jkerihuel | 2011-02-18 04:51:39 +1100 (Fri, 18 Feb 2011) | 5 lines

- Move libmapistore pc file into mapiproxy/libmapistore
- Complete make install process for waf libmapistore
- Add backends compilation and dependencies check to WAF libmapistore


------------------------------------------------------------------------
r2678 | bradh | 2011-02-18 09:57:12 +1100 (Fri, 18 Feb 2011) | 7 lines

mapistore: fix fsocpf backend opendir and set_props calls

The set_props call isn't right - it only works for the case where
the folder we are changing is the root of the context. I see
"Invalid OCPF context" error messages, although we do try to write
to the correct file.

------------------------------------------------------------------------
r2679 | bradh | 2011-02-18 15:04:06 +1100 (Fri, 18 Feb 2011) | 4 lines

fsocpf: Minor work on set properties

The problem is that we can't yet update .properties

------------------------------------------------------------------------
r2680 | bradh | 2011-02-19 22:16:12 +1100 (Sat, 19 Feb 2011) | 5 lines

fsocpf: Fix updating of properties

We can now either set properties where none exist, update existing property
values, and add properties to those that are already set.

------------------------------------------------------------------------
r2681 | bradh | 2011-02-20 21:22:42 +1100 (Sun, 20 Feb 2011) | 2 lines

pyopenchange: add test case for mapistore closedir()

------------------------------------------------------------------------
r2682 | bradh | 2011-02-21 13:19:57 +1100 (Mon, 21 Feb 2011) | 9 lines

mapistore: implement get_folder_count() in mapistore python bindings

Also convert mapistore_strip_ns_from_uri to use const char**

Also add a test for mapistore rmdir(), which appears to have
some kind of reference count problem - it is causing a python
assert that indicates that something is still reachable.


------------------------------------------------------------------------
r2683 | bradh | 2011-02-22 11:07:33 +1100 (Tue, 22 Feb 2011) | 4 lines

mapistore: parameterise out some variables in the provision test script

Also add a test for creating the Inbox context.

------------------------------------------------------------------------
r2685 | jkerihuel | 2011-02-23 04:10:54 +1100 (Wed, 23 Feb 2011) | 4 lines

Fix debuglevel setter for mapistore Python bindings
Implement debuglevel getter for mapistore Python bindings


------------------------------------------------------------------------
r2686 | bradh | 2011-02-24 09:58:16 +1100 (Thu, 24 Feb 2011) | 2 lines

mapistore: trivial API docs fix.

------------------------------------------------------------------------
r2692 | jkerihuel | 2011-02-25 08:13:10 +1100 (Fri, 25 Feb 2011) | 8 lines

Split mapistoredb initialization into 2 different steps:
- mapistoredb_new: memory allocation and default names provisioning
- mapistore_init: fill in last bits if unset by user and call mapistore_init

- Add mapistoredb assessors on database_path, mapping_path and named_properties_database_path
- Update python bindings to reflect these changes + associated python scripts.


------------------------------------------------------------------------
r2693 | bradh | 2011-02-25 08:20:38 +1100 (Fri, 25 Feb 2011) | 2 lines

mapistore: typo fixes.

------------------------------------------------------------------------
r2695 | bradh | 2011-02-25 08:37:52 +1100 (Fri, 25 Feb 2011) | 2 lines

mapistore: update API documentation

------------------------------------------------------------------------
r2696 | jkerihuel | 2011-02-25 08:39:20 +1100 (Fri, 25 Feb 2011) | 4 lines

Add sanity check, prevent from provisioning if mapistoredb_init failed or wasn't called
Fix unittest for mapistoredb


------------------------------------------------------------------------
r2697 | bradh | 2011-02-25 11:04:20 +1100 (Fri, 25 Feb 2011) | 2 lines

libmapi: remove stray quote in doxygen configuration.

------------------------------------------------------------------------
r2698 | bradh | 2011-02-26 17:50:16 +1100 (Sat, 26 Feb 2011) | 2 lines

mapistore: add unit tests and docs for debug getter function

------------------------------------------------------------------------
r2699 | bradh | 2011-02-26 21:48:06 +1100 (Sat, 26 Feb 2011) | 4 lines

mapistore: add closedir implementation

This isn't properly implemented in fsocpf yet.

------------------------------------------------------------------------
r2700 | bradh | 2011-02-27 11:12:33 +1100 (Sun, 27 Feb 2011) | 2 lines

mapistore: add python bindings and tests for get_message_count()

------------------------------------------------------------------------
r2701 | bradh | 2011-02-27 12:35:56 +1100 (Sun, 27 Feb 2011) | 2 lines

mapistore: Add a test of folder creation without a folder comment.

------------------------------------------------------------------------
r2702 | bradh | 2011-02-27 17:56:23 +1100 (Sun, 27 Feb 2011) | 12 lines

mapistore: rename get_fid_by_name to be get_uri_by_name in backend ops

This reflects actual usage / arguments. It might be possible to avoid
doing any backend operation for this (just use indexing DB instead), but
this allows us to check if the backend folder has been created by some
other process and would create a problem at next update. Not sure if that
is important yet.

Fix implementation of this backend function in FSOCPF backend.

Add unit testing of duplicate folder creation, which exercises this.

------------------------------------------------------------------------
r2703 | bradh | 2011-02-27 21:04:58 +1100 (Sun, 27 Feb 2011) | 2 lines

mapistore: trivial documentation fixes.

------------------------------------------------------------------------
r2704 | bradh | 2011-02-28 09:28:48 +1100 (Mon, 28 Feb 2011) | 4 lines

mapistore: Fix prototype for mapistore_backend_get_uri_by_name

This should have been part of r2702.

------------------------------------------------------------------------
r2705 | bradh | 2011-02-28 09:30:12 +1100 (Mon, 28 Feb 2011) | 4 lines

mapistore: Remove lpcfg_server_role prototype imported from samba

This is now propery exported from samba, and no longer required here.

------------------------------------------------------------------------
r2706 | bradh | 2011-02-28 15:17:55 +1100 (Mon, 28 Feb 2011) | 4 lines

pyopenchange: fix error string

Also use PT_I2 instead of PT_SHORT, to match convention in SPropValue_CTR.

------------------------------------------------------------------------
r2707 | bradh | 2011-02-28 15:22:56 +1100 (Mon, 28 Feb 2011) | 2 lines

mapitest: Minor test clean ups for Some ResolveRecipients-related problems

------------------------------------------------------------------------
r2708 | bradh | 2011-02-28 15:24:51 +1100 (Mon, 28 Feb 2011) | 4 lines

mapistore: implement setprops for mstoredb backend.

This doesn't work correctly for PT_DOUBLE. Still working on that.

------------------------------------------------------------------------
r2709 | jkerihuel | 2011-03-01 05:02:34 +1100 (Tue, 01 Mar 2011) | 22 lines

Replace existing OCPF recipients implementation with a SRowSet
Use PT_UNICODE instead of PT_STRING8 for most string properties (except MNID_ID specifically tagged as PT_STRING8)
Use Recipient blocks instead of strings similar to:

RECIPIENT {
	TO {
		prop1 = propvalue
		prop2 = propvalue2
	};

	CC {
		[...]
	};

	BCC {
		[...]
	};
};

Works with internal/external recipients too.


------------------------------------------------------------------------
r2710 | jkerihuel | 2011-03-01 19:25:09 +1100 (Tue, 01 Mar 2011) | 3 lines

Reimplement ocpf_get_recipients and update its API
Reflect changes in mapistore_fsocpf backend

------------------------------------------------------------------------
r2711 | jkerihuel | 2011-03-01 23:38:30 +1100 (Tue, 01 Mar 2011) | 10 lines

- Make folderID uint64_t optional when writing ocpf
  files. (ocpf_write_init called with folderID set to 0)
  mapistore_fsocpf doesn't need to handle fmid on behalf of mapistore
  anymore.

- only write type if PidTagMessageClass is specified/used

- do not write RECIPIENT block if recipients are NULL (e.g. folder)


------------------------------------------------------------------------
r2712 | jkerihuel | 2011-03-02 04:10:55 +1100 (Wed, 02 Mar 2011) | 3 lines

Only add TYPE and PidTagMessageClass if ctx->type exists


------------------------------------------------------------------------
r2713 | bradh | 2011-03-02 14:56:40 +1100 (Wed, 02 Mar 2011) | 2 lines

Implement unit tests for python properties handling.

------------------------------------------------------------------------
r2716 | bradh | 2011-03-04 09:01:19 +1100 (Fri, 04 Mar 2011) | 2 lines

build: Work around linker problem on Fedora 13/14 (probably gold related)

------------------------------------------------------------------------
r2717 | bradh | 2011-03-04 09:04:38 +1100 (Fri, 04 Mar 2011) | 2 lines

libmapiadmin: Adapt to API change in Samba4

------------------------------------------------------------------------
r2718 | bradh | 2011-03-04 10:07:44 +1100 (Fri, 04 Mar 2011) | 4 lines

Add workaround for missing samba4 headers

Workaround (but not fix) for bug 350.

------------------------------------------------------------------------
r2719 | bradh | 2011-03-04 10:51:13 +1100 (Fri, 04 Mar 2011) | 2 lines

OCPF: apidocs typo fix.

------------------------------------------------------------------------
r2721 | bradh | 2011-03-07 09:43:59 +1100 (Mon, 07 Mar 2011) | 5 lines

Revert change in r2716

This appears to cause problems on (at least) Ubuntu boxes. So we leave it 
for the user to modify if needed.

------------------------------------------------------------------------
r2722 | bradh | 2011-03-07 12:45:18 +1100 (Mon, 07 Mar 2011) | 2 lines

Add a little example of GAL fetching with restrictions

------------------------------------------------------------------------
r2723 | bradh | 2011-03-07 14:02:41 +1100 (Mon, 07 Mar 2011) | 2 lines

libmapi: fix documentation typos.

------------------------------------------------------------------------
r2732 | bradh | 2011-03-08 11:25:31 +1100 (Tue, 08 Mar 2011) | 2 lines

libmapi: minor NSPI cleanup.

------------------------------------------------------------------------
r2737 | bradh | 2011-03-14 19:37:23 +1100 (Mon, 14 Mar 2011) | 2 lines

mapiproxy: Update to reflect samba4 API change.

------------------------------------------------------------------------
r2738 | bradh | 2011-03-15 20:38:09 +1100 (Tue, 15 Mar 2011) | 4 lines

server: Update to use new samba4 APIs.

Patches by Andrew Tridgell. Thanks very much!

------------------------------------------------------------------------
r2739 | jkerihuel | 2011-03-15 22:58:59 +1100 (Tue, 15 Mar 2011) | 3 lines

Remove NTLM_AUTH_IS_OK macro and replace it directly with dcesrv_call_authenticated


------------------------------------------------------------------------
r2740 | jkerihuel | 2011-03-16 20:17:36 +1100 (Wed, 16 Mar 2011) | 4 lines

Split mapistore bindings between module and object.
Prepare further commit implementing folders, messages etc.


------------------------------------------------------------------------
r2741 | jkerihuel | 2011-03-16 21:03:08 +1100 (Wed, 16 Mar 2011) | 3 lines

Add mapistore folder object skeleton for mapistore python bindings


------------------------------------------------------------------------
r2742 | jkerihuel | 2011-03-16 21:20:17 +1100 (Wed, 16 Mar 2011) | 6 lines

Import rfc1738 version from Samba4 (originally from squid) into openchange and
modify it to include '.' as an escapable character. 

This will prevent path traversal attacks within new fsocpf design (name based)


------------------------------------------------------------------------
r2743 | jkerihuel | 2011-03-16 21:33:43 +1100 (Wed, 16 Mar 2011) | 5 lines

Add a public backend function allowing backends to retrieve a folder or message identifier given a URI.

FID / MID are Exchange related only but some backends may require it (such as fsocpf).


------------------------------------------------------------------------
r2744 | jkerihuel | 2011-03-17 01:15:10 +1100 (Thu, 17 Mar 2011) | 3 lines

Add a pointer to mapistore backend context in fsocpf context initialization


------------------------------------------------------------------------
r2745 | jkerihuel | 2011-03-17 01:18:40 +1100 (Thu, 17 Mar 2011) | 3 lines

Remove parameter naming for pointer on functions in mapistore backend header file.


------------------------------------------------------------------------
r2746 | bradh | 2011-03-17 13:02:22 +1100 (Thu, 17 Mar 2011) | 2 lines

nspi: use PropertyTagArray_r for minimal ids.

------------------------------------------------------------------------
r2747 | bradh | 2011-03-18 10:40:28 +1100 (Fri, 18 Mar 2011) | 4 lines

libmapiserver: remove unused smb_iconv_convenience argument

Update callers to match.

------------------------------------------------------------------------
r2748 | bradh | 2011-03-18 16:50:27 +1100 (Fri, 18 Mar 2011) | 6 lines

buildsystem: make samba detection logic more flexible.

Patch by Sean Finney - thanks very much!

Resolves bug #348.

------------------------------------------------------------------------
r2751 | bradh | 2011-04-01 08:59:35 +1100 (Fri, 01 Apr 2011) | 2 lines

Specify outputdir for mapicodes_enum.h (like other files)

------------------------------------------------------------------------
r2754 | bradh | 2011-04-01 11:21:03 +1100 (Fri, 01 Apr 2011) | 2 lines

revert previous change. Didn't work quite as expected...

------------------------------------------------------------------------
r2756 | jelmer | 2011-04-11 03:21:07 +1000 (Mon, 11 Apr 2011) | 1 line

Clean up some more files in 'make clean'.
------------------------------------------------------------------------
r2762 | bradh | 2011-04-15 10:51:03 +1000 (Fri, 15 Apr 2011) | 5 lines

restore prefix when the "configure" script is run from make

This is a merge of r2460 from sogo branch (by Wolfgang).
Typo fix by me.

------------------------------------------------------------------------
r2802 | bradh | 2011-05-01 18:27:04 +1000 (Sun, 01 May 2011) | 4 lines

Don't build samba3 - we only need samba4.

The default changed in Samba, so we need to explicitly disable it now.

------------------------------------------------------------------------
r2803 | bradh | 2011-05-02 14:57:14 +1000 (Mon, 02 May 2011) | 8 lines

build: update to support alpha 15.

This requires a hacky change to the build script, since the
previous change (adding disable-s3build) won't work in alpha15.

So we detect the kind of build, and adjust the configure line to
match. Ugly.

------------------------------------------------------------------------
r2804 | jkerihuel | 2011-05-03 02:14:27 +1000 (Tue, 03 May 2011) | 10 lines

Patch from David McCullough <david_mccullough@mcafee.com>:

- handle different attachment types
- including attached emails, 
- include mail headers
- speed up performance as much as possible

Thank you for this patch. Much appreciated!


------------------------------------------------------------------------
r2806 | bradh | 2011-05-04 12:47:43 +1000 (Wed, 04 May 2011) | 5 lines

mapiproxy: update to match recent samba fixes.

Unfortunately this breaks compatibility with Samba4
alpha15.

------------------------------------------------------------------------
r2807 | bradh | 2011-05-04 18:40:54 +1000 (Wed, 04 May 2011) | 4 lines

update the property parser

I'm still checking the results, so not committing those results yet.

------------------------------------------------------------------------
r2808 | bradh | 2011-05-08 23:24:59 +1000 (Sun, 08 May 2011) | 7 lines

mapiprofile: allow creating of new profiles again

fixes #357.

The problem is that we can't pass in anything other than decimal values.
Samba4 (ldb) was previously more tolerant, but no more.

------------------------------------------------------------------------
r2809 | bradh | 2011-05-09 00:52:21 +1000 (Mon, 09 May 2011) | 4 lines

build: use symbolic name for dcerpc-server lib

Fixes task #339

------------------------------------------------------------------------
r2810 | bradh | 2011-05-09 02:54:26 +1000 (Mon, 09 May 2011) | 6 lines

ics: implement client side of SetLocalReplicaMidsetDeleted

Includes IDL, libmapi and mapitest.

Resolves #207

------------------------------------------------------------------------
r2811 | bradh | 2011-05-09 21:17:30 +1000 (Mon, 09 May 2011) | 2 lines

blackbox: Allow us to work without mapiprofile in path.

------------------------------------------------------------------------
r2812 | bradh | 2011-05-10 00:15:09 +1000 (Tue, 10 May 2011) | 2 lines

mapiprofile: avoid gcc 4.6 warnings.

------------------------------------------------------------------------
r2813 | bradh | 2011-05-10 00:37:20 +1000 (Tue, 10 May 2011) | 2 lines

libmapi: rename function to avoid conflict with samba

------------------------------------------------------------------------
r2814 | bradh | 2011-05-10 17:18:40 +1000 (Tue, 10 May 2011) | 4 lines

Implement RopSynchronizeOpenCollector

We already have the IDL. This adds the libmapi and mapitest parts.

------------------------------------------------------------------------
r2815 | bradh | 2011-05-10 19:54:25 +1000 (Tue, 10 May 2011) | 4 lines

Implement RopSynchronizationGetTransferState

We already had the IDL. This adds the libmapi and mapitest elements.

------------------------------------------------------------------------
r2816 | bradh | 2011-05-11 01:50:25 +1000 (Wed, 11 May 2011) | 5 lines

build: remove workaround for Samba bug 8113

We can now build alpha15 and git master from the same
script again. We can't build trunk against alpha15 though.

------------------------------------------------------------------------
r2820 | bradh | 2011-05-11 19:27:26 +1000 (Wed, 11 May 2011) | 8 lines

update properties list

This patch updates openchange to use the latest [MS-OXPROPS] document, and to provide MNID_STRINGS

Many thanks to Milan Crha and Sean Finney for their work (and patience) on this.

Resolves bug #355

------------------------------------------------------------------------
r2822 | bradh | 2011-05-12 18:45:48 +1000 (Thu, 12 May 2011) | 5 lines

libmapi: partial fix for bug #336

This has some gross gcc pragma stuff to hide the deprecation
warning.

------------------------------------------------------------------------
r2840 | bradh | 2011-05-14 01:24:51 +1000 (Sat, 14 May 2011) | 5 lines

buildsystem: fix some incomplete linkage

This shouldn't change behaviour, but it will make detecting linker
and dependency problems easier.

------------------------------------------------------------------------
r2850 | bradh | 2011-05-19 14:52:46 +1000 (Thu, 19 May 2011) | 9 lines

Implement RopSynchronizationOpenAdvisor (0x83)

Includes IDL, client side library (libmapi) and
mapitest coverage.

This ROP is not supported on Exchange 2010. Testing
was successful on Exchange 2007 SP3. mapitest skips
this test for Exchange 2010.

------------------------------------------------------------------------
r2851 | bradh | 2011-05-19 14:57:37 +1000 (Thu, 19 May 2011) | 2 lines

Add forgotten file from r2850.

------------------------------------------------------------------------
r2854 | bradh | 2011-05-20 09:13:57 +1000 (Fri, 20 May 2011) | 8 lines

Implement RopSetSynchronizationGuid

We already had the IDL. This adds the libmapi implementation and mapitest.

Note that this ROP is probably not supported on Exchange 2010 (since it
requires an input handle that has to come from RopSynchronizationOpenAdvisor
and that ROP isn't supported on Exchange 2010). Tested on Exchange 2007.

------------------------------------------------------------------------
r2856 | bradh | 2011-05-25 11:18:24 +1000 (Wed, 25 May 2011) | 7 lines

Correct IDL for ExceptionInfo

Problem report and patch by Sean Finney - thanks very much.
Minor additional changes by me.

Resolves bug #349

------------------------------------------------------------------------
r2857 | bradh | 2011-05-25 17:23:10 +1000 (Wed, 25 May 2011) | 4 lines

Fix case where exchange2mbox will crash if "From" is missing

Patch by David McCullough (david_mccullough@mcafee.com) - thanks very much!

------------------------------------------------------------------------
r2874 | bradh | 2011-05-27 14:14:43 +1000 (Fri, 27 May 2011) | 6 lines

Fix leak of server resource in Logoff().

Problem investigation and patch by Milan Crha. Thanks very much!

Resolves bug #361.

------------------------------------------------------------------------
r2875 | bradh | 2011-05-27 14:57:13 +1000 (Fri, 27 May 2011) | 7 lines

Update loadparm stuff to use global context.

Without this we can't set the log level (i.e. debug output) any more
(after http://git.samba.org/?p=samba.git;a=commit;h=958368efd0f0db4a0e77f6a374d3c7b5056105c6)

Resolves ticket #360

------------------------------------------------------------------------
r2882 | jkerihuel | 2011-06-01 00:36:34 +1000 (Wed, 01 Jun 2011) | 8 lines

Patch from Sean Finney <seanius@seanius.net>:

Fix ppszServer value in RfrGetNewDSA

Thanks for the fix!



------------------------------------------------------------------------
r2883 | jkerihuel | 2011-06-01 00:37:40 +1000 (Wed, 01 Jun 2011) | 2 lines

Fix cast

------------------------------------------------------------------------
r2895 | jkerihuel | 2011-06-01 21:37:46 +1000 (Wed, 01 Jun 2011) | 5 lines

Patch from Sean Finney <seanius@seanius.net>:

Add authservice keyword to IDL for proper service lookup when doing Kerberos


------------------------------------------------------------------------
r2896 | bradh | 2011-06-02 08:01:32 +1000 (Thu, 02 Jun 2011) | 4 lines

exchange2ical: prevent segfault on missing property

Patch by Sean Finney. Thanks very much!

------------------------------------------------------------------------
r2904 | bradh | 2011-06-06 09:11:36 +1000 (Mon, 06 Jun 2011) | 6 lines

libmapi: Fix some string handling issues

Resolves ticket #359

Problem report and patch by Sean Finney. Thanks very much.

------------------------------------------------------------------------
r2959 | bradh | 2011-06-08 09:22:16 +1000 (Wed, 08 Jun 2011) | 4 lines

update to match Samba 4 API change

samba change is http://git.samba.org/?p=samba.git;a=commit;h=907cdb5de7f16a2540299aeba211bf2a5ae6fafe

------------------------------------------------------------------------
r2968 | bradh | 2011-06-11 15:41:59 +1000 (Sat, 11 Jun 2011) | 2 lines

mapiproxy: update to reflect recent samba API changes.

------------------------------------------------------------------------
r2971 | bradh | 2011-06-19 10:47:21 +1000 (Sun, 19 Jun 2011) | 6 lines

libmapi: Improve unicode support

Patch from Milan Crha

Resolves bug #269.

------------------------------------------------------------------------
r3030 | bradh | 2011-07-02 14:09:15 +1000 (Sat, 02 Jul 2011) | 2 lines

minor update to build script.

------------------------------------------------------------------------
r3035 | bradh | 2011-07-07 09:38:51 +1000 (Thu, 07 Jul 2011) | 2 lines

Bump to current (alpha16) version of Samba.

------------------------------------------------------------------------
r3036 | bradh | 2011-07-07 14:35:38 +1000 (Thu, 07 Jul 2011) | 19 lines

Patch from Sean Finney:
Okay, here's something that gets pretty darned close, probably "close enough"
for the next release. With this patch (along with the previous, already
committed patches), one can create a profile that uses kerberos (and even the
existing kerberose credentials cache for SSO users). to create such a profile:

mapiprofile -c -P kerbtest --username <username> --nopass -k yes --address <exchangeserver>

afterwards, if you run openchangeclient -m -p kerbtest, you will see the
fetched kerberos tickets in your klist output. Ideally this could be
completely automagic and not require a -k flag at all (nor the username), but
the fix for that would be a bit more complicated and is left for a future
exercise. In the meantime this solution will not get in the way and isn't too 
bad, at least IMHO :)

Addresses ticket #336.

Thanks for the patch!

------------------------------------------------------------------------
