Daily ChangeLog Update
[jelmer/openchange-proposed.git/.git] / ChangeLog
1 2010-02-01
2     jkerihuel
3         [r1695]
4                 Fix ticket #123 (known as 562948 on gnome bugzilla):
5                 "Unable to send mails containing UTF8 strings"
6                 
7                 OpenChange was using strlen(str) * 2 + 2 to calculate the 
8                 expected size for utf16 string. This patch fixes this and
9                 replaces it with a function that make proper utf8 to utf16 
10                 conversion.
11                 
12                 This commit also replaces PT_STRING8 properties in openchangeclient.c
13                 with PT_UNICODE ones to ensure utf8 strings get converted properly.
14
15 2010-01-26
16     jkerihuel
17         [r1693]
18                 - Add NormalizedSubject and SubjectPrefix strings to object_message_t
19                   structure.
20                 - Add a function to retrieve TypedString value
21                 - Add a mapidump function for obj_message (only retrieve subject and
22                   recipients)
23                 - Add --fetchsummary option to openchangeclient: Dumps properties from
24                   OpenMessage response only (subject and recipients) rather than going
25                   through GetProps and dumping a more complete version.
26     bradh
27         [r1692]
28                 Move make distclean to the end again.
29
30 2010-01-23
31     bradh
32         [r1690]
33                 Remove a copy of the dlinklist.h header, and just use the samba
34                 version instead.
35
36 2010-01-20
37     bradh
38         [r1688]
39                 Install missing file.
40
41 2010-01-13
42     bradh
43         [r1686]
44                 Allow us to find samba python code on 64-bit machines.
45
46 2010-01-10
47     jkerihuel
48         [r1684]
49                 Update EcDoConnectEx IDL to match latest specifications
50     bradh
51         [r1683]
52                 Minor additions to "make clean" / "make distclean" to remove
53                 generated python bits, and also the config.h file.
54
55 2010-01-08
56     bradh
57         [r1681]
58                 Implement IsMailboxFolder for public folder types.
59                 
60                 Involves some refactoring of the way we handled the mapi_object_store_t,
61                 such that we now talloc_zero the structure. 
62                 
63                 Adds mapitest coverage for these.
64                 
65                 Resolves Ticket #134.
66
67 2010-01-06
68     bradh
69         [r1679]
70                 Add unit tests for IsMailboxFolder
71                 
72                 Also use 0xFFFFFFFFF instead of -1 for no-such-mailbox, consistent with the unsigned data type.
73
74 2010-01-04
75     jkerihuel
76         [r1677]
77                 Change location of .cpp.o and .ccp.po to the correct location
78                 and inhibit compilation line output for moc and cpp compilation.
79     bradh
80         [r1676]
81                 Try harder to clean up libmapi++ bits.
82
83 2010-01-03
84     jkerihuel
85         [r1673]
86                 Ignore moc files and generated binary
87         [r1672]
88                 Update OpenChange version to 0.10 NOMAD
89                 
90                 Nomad is a mechanical explorer sent from Earth in 2002. 
91                 It was melded with an alien device named Tan Ru and the resulting robotic
92                 hybrid began destroying anything that was imperfect including, in 2267,
93                 itself. 
94     bradh
95         [r1674]
96                 Add documentation for qt/ subdirectory.
97         [r1671]
98                 Try harder to find moc.
99         [r1670]
100                 Initial commit of some Qt-style bindings.
101                 
102                 This is mostly for testing, although hopefully the library will
103                 emerge with a set of mostly-useful widgets for implementing
104                 real clients.
105
106 2009-12-31
107     bradh
108         [r1668]
109                 Quiet the build here.
110                 
111                 Inadvertent removal in a previous patch.
112         [r1667]
113                 Some support for ReviewBoard.
114
115 2009-12-29
116     bradh
117         [r1665]
118                 Update OpenMessage flags to match specification values.
119         [r1664]
120                 Cleanup libmapi++ code when we "make clean".
121         [r1663]
122                 Add svn ignore entries.
123         [r1662]
124                 Remove inline from shared library class.
125                 
126                 Fixes build on Intel C++ compiler.
127
128 2009-12-27
129     clsk
130         [r1660]
131                 libmapi++ is no longer a header-only library
132
133 2009-12-26
134     bradh
135         [r1658]
136                 Add first part of Restrictions support.
137         [r1657]
138                 A little more documentation fixes.
139 2009-12-25
140     jkerihuel
141         [r1654]
142                 Fix MAPIUninitialize() crash when leaving after an unsuccessful call.
143                 In such situation, mapi_response is not allocated but has a destructor
144                 associated. This fix removes the destructor whenever the error code is
145                 different from MAPI_E_SUCCESS.
146                 
147                 Also add a minor (probably useless) check on mapi_response pointer validity
148                 before attempting any other child's free.
149     bradh
150         [r1656]
151                 A couple of minor API documentation fixes.
152
153 2009-12-24
154     jkerihuel
155         [r1651]
156                 Rename libmapi into openchange in our release script.
157                 Makes more sense given the scope of our releases.
158         [r1650]
159                 Fix format string warnings.
160         [r1649]
161                 New ModifyRecipients IDL and implementation.
162                 
163                 This patch improves the logic within the RecipientFlags bitmask
164                 calculation function and make use of different MAPI properties for
165                 ModifyRecipients. 
166                 
167                 Fix trac ticket #125 and https://bugzilla.gnome.org/show_bug.cgi?id=568763
168     bradh
169         [r1648]
170                 Minor API documentation fix.
171 2009-12-23
172     bradh
173         [r1647]
174                 Fix some exchange2ical memory leaks / "still reachable" memory.
175         [r1645]
176                 Fix property tag array count, so we get the language in Summary
177                 lines in the ical output.
178         [r1644]
179                 Add protection against null CN values.
180                 
181                 Resolves ticket #232.
182                 
183                 Thanks to Arnout Engelen for the bug report and the patch to fix the problem.
184         [r1643]
185                 Handle all day events for UTC+  timezones.
186                 
187                 This resolves ticket #217. Thanks to Arnout Engelen for both reporting
188                 the problem, and providing a patch. In the end I heavily modified the 
189                 patch, and implemented a much simpler version while we sort out the
190                 timezone identifier problems.
191
192 2009-12-22
193     bradh
194         [r1641]
195                 Minor documentation update to reflect GSoC exchange2ical merge.
196         [r1640]
197                 temporary fix for building on FreeBSD 7.2.
198         [r1639]
199                 Remove this file - converted it to trac tasks.
200 2009-12-21
201     jkerihuel
202         [r1635]
203                 Patch from Johnny Jacob <johnnyjacob@gmail.com>:
204                 
205                 Changed MonitorNotification to be non-blocking.
206                 Also checks whether to process notifications using a callback.
207         [r1634]
208                 Open Profile Store using global_mapi_ctx for the memory context. This
209                 fix removes 20 context errors when running valgrind on mapitest.
210         [r1633]
211                 - Fix important memory leaks in OpenChange NSPI stack. The memory
212                   context modifications applied to the EMSMDB stack have been
213                   propagated to the NSPI one. NSPI dcerpc_* functions now rely on a
214                   temporary context passed in parameter to the nspi_* functions from
215                   libmapi/nspi.c.
216                 
217                 - Changes propagated to torture, mapitest, IProfAdmin interface and
218                   ResolveNames function to match the internal API.
219                 
220                 - Add missing MAPIFreeBuffer call in mapitest modules
221         [r1632]
222                 Minor cosmetic change
223         [r1631]
224                 Minor changes to match our coding convention more closely
225         [r1630]
226                 Return (const void *) instead of (void *) where missing
227         [r1629]
228                 - Fix important memory leaks within the OpenChange stack. Most of the
229                   leaks came from the pipe memory context used in emsmdb_transaction
230                   which was only released on MAPIUninitialize and sometimes leaded in
231                   lost blocks. This fix makes extensive usage of the temporary memory
232                   context used in top MAPI calls implementation. This context is
233                   passed in argument to emsmdb_transaction and used for dcerpc_*
234                   operations.
235                 
236                   When we return from any libmapi call implementation, this context is
237                   destroyed. This guarantee no extra memory within NDR layer is kept.
238                 
239                   The only requirement for this patch to work is to make sure the data
240                   we return from MAPI calls is either reparent to another memory
241                   context or copied properly.
242     bradh
243         [r1638]
244                 Add support for skipping tests that don't apply to some
245                 server versions.
246         [r1637]
247                 Change the format of the server version, so it matches the Microsoft
248                 way of doing versions.
249
250 2009-12-20
251     jkerihuel
252         [r1627]
253                 Fix store version info assignment - Exchange version now works again
254                 in mapitest.
255         [r1626]
256                 Clarify the developer's task when using GetPropList.
257                 
258                 We were allocating the SPropTag proptag array with the session context
259                 pointer, which was not released with a MAPIFreeBuffer(SPropTagArray).
260                 
261                 We are now using SPropTagArray pointer as parent context and clarify
262                 that the developer must pass an allocated SPropTagArray pointer to the
263                 function.
264         [r1625]
265                 Missing mapi_object_release leading in small leaks.
266         [r1624]
267                 Sanitize RfrGetNewDSA function and memory usage.
268                 
269                 The function was returning either a const char * passed in parameter
270                 or the string returned by RfrGetNewDSA call. Furthermore we were using
271                 the session pointer for the memory context. Finally the function description
272                 was not matching its behavior.
273                 
274                 What this patch does:
275                 - use a named memory context for RfrGetNewDSA call
276                 - return an allocated string on success otherwise NULL
277                 - release RFR memory context properly
278                 
279                 valgrind before patch (mapitest):
280                 ==28876== LEAK SUMMARY:
281                 ==28876==    definitely lost: 0 bytes in 0 blocks
282                 ==28876==    indirectly lost: 0 bytes in 0 blocks
283                 ==28876==      possibly lost: 3,193,529 bytes in 23,296 blocks
284                 ==28876==    still reachable: 345 bytes in 2 blocks
285                 ==28876==         suppressed: 0 bytes in 0 blocks
286                 ==28876==
287                 ==28876== For counts of detected and suppressed errors, rerun with: -v
288                 ==28876== ERROR SUMMARY: 2351 errors from 2351 contexts (suppressed: 45 from 10)
289                 
290                 valgrind after patch (mapitest):
291                 ==29083== LEAK SUMMARY:
292                 ==29083==    definitely lost: 0 bytes in 0 blocks
293                 ==29083==    indirectly lost: 0 bytes in 0 blocks
294                 ==29083==      possibly lost: 3,190,285 bytes in 23,256 blocks
295                 ==29083==    still reachable: 345 bytes in 2 blocks
296                 ==29083==         suppressed: 0 bytes in 0 blocks
297                 ==29083==
298                 ==29083== For counts of detected and suppressed errors, rerun with: -v
299                 ==29083== ERROR SUMMARY: 2338 errors from 2338 contexts (suppressed: 45 from 10)
300         [r1623]
301                 This patch fixes most of the leaks coming from pull_emsmdb_property() function.
302                 pull_emsmdb_property is using pointers and allocate memory to prevent from
303                 returning a local variable address. Such pointers include PT_I2, PT_I8, PT_LONG, 
304                 PT_ERROR or PT_BOOLEAN. Pointer's values are assigned in set_SPropValue but were
305                 never released/free'd. This patch implements free_emsmdb_property to fix this problem.
306                 
307                 valgrind before patch (mapitest):
308                 ==26674== LEAK SUMMARY:
309                 ==26674==    definitely lost: 0 bytes in 0 blocks
310                 ==26674==    indirectly lost: 0 bytes in 0 blocks
311                 ==26674==      possibly lost: 3,264,485 bytes in 23,387 blocks
312                 ==26674==    still reachable: 345 bytes in 2 blocks
313                 ==26674==         suppressed: 0 bytes in 0 blocks
314                 ==26674==
315                 ==26674== For counts of detected and suppressed errors, rerun with: -v
316                 ==26674== ERROR SUMMARY: 2370 errors from 2370 contexts (suppressed: 45 from 10)
317                 
318                 valgrind after patch (mapitest):
319                 ==27270== LEAK SUMMARY:
320                 ==27270==    definitely lost: 0 bytes in 0 blocks
321                 ==27270==    indirectly lost: 0 bytes in 0 blocks
322                 ==27270==      possibly lost: 3,127,733 bytes in 23,293 blocks
323                 ==27270==    still reachable: 345 bytes in 2 blocks
324                 ==27270==         suppressed: 0 bytes in 0 blocks
325                 ==27270==
326                 ==27270== For counts of detected and suppressed errors, rerun with: -v
327                 ==27270== ERROR SUMMARY: 2348 errors from 2348 contexts (suppressed: 45 from 10)
328     bradh
329         [r1622]
330                 Minor API documentation fixes.
331
332 2009-12-19
333     jkerihuel
334         [r1620]
335                 - Add a macro to mparse.pl to free both mapi_response 
336                   and mem_ctx within OpenChange calls implementation.
337                   For the moment it is only implemented in OpenUserMailbox call.
338                 
339                 - Fix a memory leak in OpenUserMailbox: When the call failed 
340                   (ecUnknownUser or ecUseEnryption) mapi_response was not free'd
341                   properly.
342         [r1619]
343                 Minor indentation fix
344     bradh
345         [r1618]
346                 Add some missing newlines to reduce compilation noise.
347         [r1617]
348                 Merge in Ryan Lepinski's Google Summer of Code work on exchange2ical.
349                 
350                 See the gsoc_exchange2ical branch history for commits.
351                 
352                 I also made a change to address ticket #216, and
353                 fixed a couple of typos.
354
355 2009-12-18
356     bradh
357         [r1615]
358                 Minor updates to provisioning instructions.
359                 
360                 Thanks to Girish Venkatachalam for some suggestions.
361
362 2009-12-17
363     jkerihuel
364         [r1611]
365                 Fix 'unused variable' warning on FreeBSD for exchange2mbox
366     bradh
367         [r1613]
368                 Add documentation for the --freebusy option.
369         [r1612]
370                 Warning fix.
371
372 2009-12-16
373     jkerihuel
374         [r1607]
375                 Fix segfaults in mapitest launched with exchange2010
376         [r1606]
377                 Fix compilation warnings
378     bradh
379         [r1609]
380                 Add missing -L directory specifier.
381                 
382                 Looks like this was tolerated by gnu ld, but not by opensolaris ld.
383                 
384                 Patch by Brian Lu (Sun). Thanks again.
385         [r1608]
386                 Add documentation for new mapiprofile --encrypt option, introduced in r1602.
387         [r1605]
388                 Fix a couple of typos that trash CFLAGS during build.
389
390 2009-12-15
391     jkerihuel
392         [r1603]
393                 Automatically switch from connect to seal on the emsmdb pipe if
394                 ecNotEncrypted is returned by EcDoConnect.
395         [r1602]
396                 - Make OpenChange natively working with Exchange 2010
397                 - Factorize binding string construction code within a single function
398                 - the seal flag is mandatory to connect to Exchange 2010
399                 - add seal boolean value to MAPI profile creation and mapi_profile
400                   structure
401                 - add --encrypt option to mapiprofile to set the seal value
402
403 2009-12-14
404     bradh
405         [r1600]
406                 Add documentation for set_SPropTagArray().
407                 
408                 Thanks to Brian Lu (Sun) for reporting.
409
410 2009-12-13
411     jkerihuel
412         [r1598]
413                 This doesn't really fix ticket #149, but this should
414                 at least prevent from triggering segmentation fault when
415                 PR_EMAIL_ADDRESS_UNICODE doesn't have any cn=Recipients,cn= substring 
416     bradh
417         [r1597]
418                 Trivial fix (newline) for warning on FreeBSD compiler.
419         [r1596]
420                 Add support for manually creating the library symlinks for FreeBSD
421                 
422                 This is a somewhat speculative commit. 
423                 
424                 Also fixes a couple of cosmetic whitespace issues.
425
426 2009-12-12
427     jkerihuel
428         [r1594]
429                 Patch from Bryan Lu <brian.lu@sun.com>:
430                 
431                 Create symbol link only on Solaris
432                 
433                 This closes ticket #221 and makes it possible to compile openchange
434                 on Solaris.
435         [r1593]
436                 Temporary bug fix in emsabp.c - If restrictions are NULL in
437                 emsabp_search, return MAPI_E_INVALID_OBJECT. This prevents from using
438                 invalid res pointer leading in segmentation fault.
439                 
440                 Initial fix proposed by Erik Hovland <erik@hovland.org>
441         [r1592]
442                 Patch from Erik Hovland <erik@hovland.org>:
443                 
444                 fid might be null. Check it before dereferencing in the
445                 ocpf_folder_lookup() call. Similar behavior fixed in openchangeclient
446                 folder_lookup() function.
447         [r1591]
448                 Patch from Erik Hovland <erik@hovland.org>:
449                 
450                 NotificationData 'could' be null. Check it before handing it to
451                 notification-callback(). This is important because eventually
452                 NotificationData will be dereferenced in the code path.
453         [r1590]
454                 Patch from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>:
455                 
456                 Fix MAPI Warning error codes
457         [r1589]
458                 Patch from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>:
459                 
460                 bugfix: Bugs in abp_tdb layer fixed.
461                 
462                 emsabp_tdb_traverse_MId() returns 'false' (i.e. not found) in most of
463                 the cases.
464         [r1588]
465                 Patch from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>:
466                 
467                 Implement NspiQueryRows() address list enumeration
468                 
469                 We can now run openchangeclient --userlist on OpenChange NSPI server
470                 and Outlook 2003 is able to query GAL.
471                 
472                 Note: the initial patch was proposing:
473                 "(&%s(showInAddressBook=*))", purportedSearch
474                 
475                 I replaced it with "%s", purportedSearch only since we don't have yet
476                 any showInAddressBook attribute in AD.
477         [r1587]
478                 Patch from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>:
479                 
480                 - Add server side implementation for NspiResolveNamesW
481                 - Refactor and split emsabp_verify_user in two functions
482                 
483                 A new function emsabp_get_account_info() implemented to fetch info
484                 about given user name.  emsabp_verify_user() uses the above function
485                 check if authenticated account_name is valid mail account and if so,
486                 account_name is cached in emsabp context for future use
487         [r1586]
488                 Patch from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>:
489                 
490                 NspiGetProps() reimplemented to match [MS-NSPI] specification more
491                 closely.
492                 
493                 As a side-effect, emsabp_fetch_attrs() was altered to return
494                 MAPI_E_INVALID_BOOKMARK in case requested MId is not found.  This way
495                 the function returns more meaningful error codes - if requested MId is
496                 not found this surely means InvalidBookmark rather than CorruptStore
497
498 2009-12-11
499     jkerihuel
500         [r1584]
501                 Path from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>:
502                 
503                 Propagate dwFlags for incoming call to get EntryIDs correctly.
504                 
505                 Actually we need to propagate dwFlags so that emsabp_query()
506                 function to be able to determine whether EphemeralEntryID
507                 or PermanentEntryID is requested to be built.
508         [r1583]
509                 Patch from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>:
510                 
511                 Implement PR_SEARCH_KEY attribute getter
512         [r1582]
513                 Patch from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>
514                 
515                 Add PR_ADDRTYPE_UNICODE and PR_EMS_AB_PROXY_ADDRESSES_UNICODE getters.
516         [r1581]
517                 Patch from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>:
518                 
519                 - Extend NspiDNToMId() to search in Configuration and Domain
520                   partitions.
521                 
522                 - NspiDNToMId() has been extended to cache returned data properly,
523                   i.e. DNs from Configuration partition are cached in ttb_ctx db, DNs
524                   from Domain partition are cached in in-memory db ttdb_ctx.
525         [r1580]
526                 Patch from Kamen Mazdrashki <kamen.mazdrashki@postpath.com>:
527                 
528                 emsabp_set_PermanentEntryID() implements MS specification more
529                 closely.  For reference: [MS-NSPI] and [MS-OXOABK]
530         [r1579]
531                 - Replace emsabp_get_server_GUID with samdb_ntds_objectGUID Samba4
532                   function.
533                 - Change the way we initially fetched server GUID
534                 
535                 Credits to Kamen Mazdrashki <kamen.mazdrashki@postpath.com> for
536                 initial patch and associated research:
537                 
538                 It turns out MS implementation for NSPI reads the guid from: "CN=NTDS
539                 Settings,CN=<NETBIOS_NAME>,CN=Servers,CN=Default-First-Site-Name,CN=Sites,<CONFIG_DN>" entry.
540         [r1578]
541                 Fix samdb_connect warning.
542                 Add function prototype to nsp,emsmdb header files.
543                 Change samdb_ctx from void * to ldb_context *
544     bradh
545         [r1577]
546                 Update docs to match those in mapiproxy doxygen docs.
547         [r1576]
548                 Roll to the latest Samba4 version.
549                 
550                 This should have no noticeable difference over the
551                 Samba4 alpha9 release, but its nice to use the latest
552                 version, and it might make a difference on the server
553                 side.
554 2009-12-10
555     jkerihuel
556         [r1575]
557                 Fix OpenChange server code and access to Samba4 databases.
558                 Starting with samba4-alpha9, there is no more configuration.ldb or users.ldb.
559                 All information can be accessed through a single access to SamDB and configuration records
560                 accessed through ldb_get_config_basedn.
561                 
562                 The following implementation has been tested and is working with:
563                 - mapiprofile profile creation
564                 - openchangeclient --mailbox
565                 - Outlook 2003 account creation
566                 - Outlook 2003 mailbox opening
567
568 2009-12-09
569     jkerihuel
570         [r1573]
571                 Fix openchange user provisioning scripts
572         [r1572]
573                 Forgot to commit this LDIF modifications for openchange provisioning
574
575 2009-12-08
576     jkerihuel
577         [r1570]
578                 - Fix OpenChange server provisioning (exchange classes and attribute only)
579                 - Remove deprecated provisioning steps
580                 - OpenChange user provisioning is still broken at this point, but will be
581                 fixed in further revisions.
582
583 2009-12-02
584     jkerihuel
585         [r1568]
586                 Fix a cast warning at compilation time for libmapi++
587         [r1567]
588                 - Update openchange libraries to 0.9: close trac ticket #165
589                 - Propagate pkgconfig solution in trac ticket #94 to other libs
590         [r1566]
591                 - Update openchange code to work with samba4-alpha9 release
592                 - Apply minor fix to ldb_wrap_connect (number of parameters)
593                 - Update mapiproxy code to handle new Samba4 assoc_group implementation properly
594                 - Update samba4 version script to match alpha9 and related git commit
595
596 2009-11-27
597     bradh
598         [r1564]
599                 Ensure we get output if sqlite3 isn't found at configure time.
600                 
601                 Now outputs "no" instead of a blank.
602
603 2009-11-26
604     bradh
605         [r1562]
606                 Fix attribution, per IRC discussion.
607
608 2009-11-25
609     bradh
610         [r1560]
611                 Ensure API documentation gets generated for utilities functions.
612                 
613                 Some undocumented stuff in here to look at later.
614         [r1559]
615                 Add additional mapidump functions for notifications
616                 
617                 This is a patch from Johnny Jacob (Novell), with unit tests and some extra checks by me.
618                 
619                 Maintains good test coverage for this file.
620
621 2009-11-23
622     bradh
623         [r1557]
624                 Avoid use-after-free for the number of rows in the SRowSet.
625                 
626                 Resolves issue #212, which has the valgrind error.
627
628 2009-11-22
629     bradh
630         [r1555]
631                 Add test for get_proptag_value().
632         [r1554]
633                 Minor cleanups for mapidump functions.
634                 
635                 - Add support for dumping property tags using PT_SHORT.
636                 - Modify the tag for PR_whatever_ERROR results to include the _ERROR bit
637                 - Minor format change for PT_BINARY (training colon)
638                 - Ensure PT_SYSTIME respects the seperator value (API change)
639                 - Add a conditional assert() using infrastructure introduced in r1553.
640                 
641                 Implement mapitest support for all of libmapi/mapidump.c
642                 
643                 Update openchangeclient for the API change.
644         [r1553]
645                 Introduce a compile time definition that is set for SVN snapshot releases.
646                 
647                 The intent is to use this to protect assert() calls that indicate incomplete code.
648
649 2009-11-19
650     bradh
651         [r1551]
652                 Improved Sun Studio compiler support.
653                 
654                 Patch by Brian Lu (Sun) - thanks again.
655         [r1550]
656                 Revert inadvertent part from previous commit (r1549)
657         [r1549]
658                 Add coverage testing support.
659                 
660                 ./configure now supports --enable-coverage, which builds with the right options
661                 to support gcov. Also adds a new makefile target ("coverage") that runs the
662                 required post-processing steps.
663                 
664                 Also added a test script that does a range of openchange related (client side)
665                 operations. This is useful for generating the test load for coverage checks.
666                 
667                 So the basic recipe here is
668                 1. Add the --enable-coverage option at configure time.
669                 2. Do a clean build
670                 3. Install it, or otherwise ensure that coverage-enabled libs are used
671                 4. generate the test load (e.g. run ./script/smoketest.sh)
672                 5. "make coverage"
673                 6. Inspect the results in ./covresults
674
675 2009-11-13
676     bradh
677         [r1547]
678                 Add support for the SunStudio compiler.
679                 
680                 I previously special-cased the Intel C compiler, and relied on some ugly ordering requirements to
681                 ensure it all worked.
682                 
683                 This approach is cleaner, allowing options to be build up separately for each compiler, and for
684                 the C and C++ versions.
685                 
686                 Tested on Linux with all three compilers.
687
688 2009-11-09
689     bradh
690         [r1545]
691                 Adding missing include.
692                 
693                 Ticket #220.
694                 
695                 Patch from Brian Lu (Sun). Thanks very much.
696
697 2009-11-07
698     bradh
699         [r1543]
700                 Additional portability fixes for SunOS.
701                 
702                 Based on a patch (ticket #220) by Brian Lu (Sun). Thanks very much.
703                 
704                 I modified the patch to try to use autoconf where possible.
705                 
706                 Resolves ticket #220.
707         [r1542]
708                 Remove MAP_FILE flag from mmap(). Looks like this is only required on really
709                 old unix systems (e.g. NetBSD prior to 1.0), which we probably won't ever support.
710                 
711                 Patch by Brian Lu (Sun) - thanks very much.
712                 
713                 Partly resolves ticket #220 - still need to handle the first patch.
714
715 2009-11-02
716     bradh
717         [r1540]
718                 Fix build problem using Sun Studio compiler.
719                 
720                 Reported by Brian Lu (Sun), including a patch (Ticket #219)
721                 
722                 I slightly modified the patch, but nothing substantial.
723
724 2009-10-21
725     jkerihuel
726         [r1538]
727                 Patches provided by raboof:
728                 - Ticket #213 deprecated include directive removal
729                 - Ticket #214 missing sanity check
730                 - Ticket #215 fix some DEBUG macro level for sain ouput
731
732 2009-10-19
733     bradh
734         [r1536]
735                 spello fixes.
736
737 2009-10-18
738     clsk
739         [r1534]
740                 Use mapi_profile_get_ldif_path to find ldif path when one is not given
741
742 2009-10-09
743     clsk
744         [r1531]
745                 Added libmapi++ wrapper function for CreateProfileStore
746
747 2009-10-08
748     bradh
749         [r1529]
750                 Update buildsystem to avoid using bash-specific (well, not sh-supported) +=
751                 mechanism.
752                 
753                 Should allow FreeBSD to be supported.
754
755 2009-10-06
756     bradh
757         [r1527]
758                 Alternative solution to ticket #179, provided by Alan Alvarez.
759                 
760                 This alternative avoids the need for the user to clean up the string returned by what().
761                 
762                 Also includes a test case, which I've used to validate that the original (prior to r1524) code 
763                 is faulty, and that both fixes (From Erik Hovland and from Alan Alvarez) deal with it.
764                 
765                 Resolves Ticket #179 (again).
766
767 2009-09-26
768     bradh
769         [r1524]
770                 Make sure that the string given by what() can be used. 
771                 
772                 Patch by Erik Hovland - thanks very much.
773                 
774                 Resolves ticket #179.
775         [r1523]
776                 Ensure that the libmapi++ messages example works even if there is no
777                 PR_CONVERSATION_TOPIC (subject).
778     jelmer
779         [r1525]
780                 Add 'make dist'.
781
782 2009-09-20
783     bradh
784         [r1521]
785                 Modify mapi_object_set_logon_id() to be able to report errors.
786                 
787                 Original patch by Erik Hovland, I made some changes.
788
789 2009-09-19
790     bradh
791         [r1519]
792                 Implement RopReloadCachedInformation (0x10).
793                 
794                 Minor change to IDL (previously implemented), and adds
795                 implementaiton and mapitest code.
796                 
797                 Also editorial comment fix in some related mapitest stuff.
798                 
799                 Resolves ticket #186
800         [r1518]
801                 Implement GetValidAttachments ROP (0x52).
802                 
803                 Includes IDL, implementation and mapitest.
804                 
805                 mapitest also checks DeleteAttach behaviour, which I don't think we previously
806                 covered anywhere. 
807                 
808                 Also includes a comment fix in the mapitest code.
809
810 2009-09-16
811     bradh
812         [r1516]
813                 Whitespace cleanup.
814                 
815                 Patch by Erik Hovland <erik at hovland.org>
816
817 2009-09-14
818     bradh
819         [r1514]
820                 Update the properties list.
821                 
822                 Patch from Girish Venkatachalam <girish at gayatri-hitech.com>
823
824 2009-09-12
825     bradh
826         [r1512]
827                 Update API to use MAPITAGS enum.
828         [r1511]
829                 Update to match API change.
830         [r1510]
831                 Use appropriate enum here.
832         [r1509]
833                 Use enum for OpenEmbeddedMessage call.
834         [r1508]
835                 Use enums where appropriate.
836         [r1507]
837                 Update users of FindRow to use enums.
838         [r1506]
839                 We are supposed to be returning a MAPISTATUS, so switch to using 
840                 the OPENCHANGE_RETVAL_ERR macro here.
841         [r1505]
842                 Use appropriate enums instead of int types.
843         [r1504]
844                 Use enums instead of ints / hardcoded values.
845         [r1503]
846                 Use enum types where appropriate.
847                 
848                 Fixes warnings from Intel C compiler.
849         [r1502]
850                 Return a suitable MAPISTATUS if we can't talloc sufficient memory here.
851                 
852                 Fixes warning from Intel compiler.
853
854 2009-09-11
855     bradh
856         [r1500]
857                 Only pass "-Wmissing-prototypes -Wstrict-prototypes" to CFLAGS,
858                 not to CXXFLAGS as well.
859                 
860                 Avoids g++ warnings.
861         [r1499]
862                 Use enumerated type instead of integer.
863         [r1498]
864                 Remove unreachable code.
865         [r1497]
866                 Add "static" to avoid the need for additional declarations.
867                 
868                 Avoids noise from the intel c compiler.
869         [r1496]
870                 Namespace variable in macro, so we don't get noise about shadowing a
871                 declaration of "i"
872         [r1495]
873                 Help icc find comparison_fn_t.
874         [r1494]
875                 Match up data types in argument and format string.
876         [r1493]
877                 Remove unused variable, and change a name to avoid a "shadowed declaration" 
878                 warning.
879
880 2009-09-10
881     bradh
882         [r1491]
883                 Portability fixes for Intel C Compiler.
884                 
885                 Set CFLAGS early, otherwise AC_PROG_CC will set
886                 CFLAGS to "-O2 -g", which later has -O3 appended, which
887                 icc complains about.
888                 
889                 Check if we're really icc, and if so, turn off some warnings.
890                 Also turn off the "FORTIFY_SOURCE" define which causes problems
891                 with missing builtins.
892                 
893                 The warnings can (and should) be turned back on later, after we
894                 fix the current issues.
895
896 2009-09-02
897     bradh
898         [r1489]
899                 Correct diagnostics messages.
900
901 2009-08-29
902     bradh
903         [r1487]
904                 Remove explicit -Wstrict-aliasing=3 from command line.
905                 
906                 This is implied by gcc -Wall option, and icc produces nuisance warnings
907                 with it enabled (related to the -W option, not the code being compiled).
908         [r1486]
909                 Fix some memory leaks and a bug in mapiprofile.
910                 
911                 I introduced the bug in r1467, there could be others that are similar.
912
913 2009-08-24
914     bradh
915         [r1484]
916                 Minor rewording of description
917         [r1483]
918                 Minor cleanups.
919
920 2009-08-18
921     bradh
922         [r1477]
923                 Move initialisation up, to make sure everything is valid in the failure paths
924                 
925                 Patch by Erik Hovland. Thanks once again.
926                 
927                 This closes out ticket #178.
928         [r1476]
929                 Remove unreachable code.
930                 
931                 Patch by Erik Hovland. Thanks again.
932                 
933                 This is the second part of ticket #177. This completes the checkin of that ticket.
934         [r1475]
935                 Remove unreachable code.
936                 
937                 Patch by Erik Hovland. Thanks very much.
938                 
939                 This is the first part of ticket #177.
940
941 2009-08-17
942     bradh
943         [r1473]
944                 Ensure that we check the result of the operation we just performed.
945                 
946                 Patch by Erik Hovland. Thanks very much for continuing to provide these.
947                 
948                 This is the third part of the patch in ticket #177. The first two parts are yet to be addressed.
949         [r1472]
950                 Make sure that return values are checked and report that given status if there is an error. 
951                 
952                 Patch from Erik Hovland, with minor additional changes. Thanks again for the patch.
953                 
954                 Resolves #176.
955         [r1471]
956                 More cleanups of memory leaks for setting up database and an associated failure case.
957         [r1468]
958                 fix leak in openchangeclient
959                 
960                 (as seen with valgrind of "openchangeclient -m")
961         [r1467]
962                 Fix memory leak in mapiprofile utility
963
964 2009-08-14
965     bradh
966         [r1465]
967                 Ensure that when we pass --profile to mapitest, that profile
968                 gets used instead of the default.
969                 
970                 Also fix a small memory leak when using --profile, and add some
971                 extra comments.
972         [r1464]
973                 Fix error handling case.
974                 
975                 Patch from Erik Hovland - thanks very much.
976                 
977                 Resolves ticket #175.
978
979 2009-08-13
980     bradh
981         [r1461]
982                 Remove unused enum values.
983         [r1460]
984                 Remove unused code - no simple tests.
985
986 2009-08-09
987     bradh
988         [r1454]
989                 Update the script version of samba4 to alpha8.
990
991 2009-08-05
992     jelmer
993         [r1450]
994                 Add tevent to dependencies.
995
996 2009-08-03
997     bradh
998         [r1448]
999                 Remove unused headers.
1000                 
1001                 Patch by Erik Hovland - thanks very much,
1002                 
1003                 Resolves ticket #164.
1004         [r1447]
1005                 Apply patch from Erik Hovland, from ticket #162.
1006                 
1007                 From the original patch:
1008                 "The problem is that when you do stat first w/ a file string anyone can
1009                 exploit the time in between to do whatever they want with the file that
1010                 the string is a name for. Instead, try to open straight away. Then fstat
1011                 w/ the file descriptor."
1012                 
1013                 I think the patch is fine, although I didn't run the torture test.
1014
1015 2009-08-02
1016     bradh
1017         [r1444]
1018                 Avoid duplicate call to mapi_object_get_logon_id
1019                 
1020                 Based on a patch proposed by Erik Hovland, but adapted to follow the
1021                 pattern used in OpenStream().
1022                 
1023                 Resolves issue #163.
1024         [r1443]
1025                 Applied modified version of patch from Erik Hovland to address unused variables.
1026                 
1027                 See http://trac.openchange.org/attachment/ticket/160/unused-values for
1028                 the rationale.
1029                 
1030                 This resolves #160.
1031                 
1032                 My version removes variables (rather than commenting them out) since we don't need
1033                 them now. I also updated the documentation for options that are no longer available
1034                 
1035                 The origin of the unused PR_FOLDER_CHILD_COUNT is a bit strange. It was introduced
1036                 in r808 (to resolve #103), and looks like it might have been used for debugging - no
1037                 impact on the code. I pulled out the whole lot.
1038                 
1039                 Tested with openchangeclient --fetchmail --folder="Sent Mail" and mapitest.
1040         [r1442]
1041                 Use array form of delete (error identified with libmapixx-attach test, using valgrind).
1042         [r1441]
1043                 Fix potentially unused variable.
1044                 
1045                 Tested with mapitest (even though nothing should have been affected) and
1046                 with libmapixx-test and libmapixx-attach under valgrind.
1047                 
1048                 Patch is remaining part of http://trac.openchange.org/ticket/153
1049                 
1050                 Thanks to Erik Hovland for the patch.
1051
1052 2009-07-29
1053     bradh
1054         [r1433]
1055                 Remove dead / unused code.
1056                 
1057                 See http://trac.openchange.org/ticket/152#comment:1 for rationale.
1058                 
1059                 Original patch by Erik Hovland - thanks again.
1060         [r1432]
1061                 Update test case to reflect new behaviour
1062
1063 2009-07-18
1064     jelmer
1065         [r1423]
1066                 Link libmapistore against tdb.
1067         [r1422]
1068                 Update copies of config.guess and config.sub.
1069         [r1421]
1070                 Link libmapiproxy against tdb.
1071         [r1420]
1072                 Declare a SOVERSION for libmapistore.
1073         [r1419]
1074                 Use LDFLAGS when linking exchange2ical.
1075         [r1418]
1076                 Create symlink for libmapistore.
1077         [r1417]
1078                 Link libmapi against tevent since it uses tevent_context_init, link ndr_exchange.po into libmapiserver since it uses some ndr_push_* symbols.
1079         [r1416]
1080                 Fix typo in variable name.
1081
1082 2009-06-21
1083     jelmer
1084         [r1365]
1085                 Fix typo in Python variable name.
1086         [r1364]
1087                 Keep separate flags for libraries around in config.mk.
1088         [r1362]
1089                 Link libmapiserver against all libraries.
1090
1091 2009-06-18
1092     jkerihuel
1093         [r1357]
1094                 Add some PidTag* mapping involved with Recipients and RecipientRow
1095
1096 2009-05-28
1097     jkerihuel
1098         [r1350]
1099                 Patch from Erik Hovland <erik@hovland.org>:
1100                 
1101                 Initializes variables to make sure they aren't used uninitialized.
1102                 
1103                 Ref ticket #153
1104         [r1349]
1105                 - Add sanity check on mapitest_common creation routines within
1106                   mapitest modules
1107                 
1108                 - Apply patch from Erik Hovland <erik@hovland.org>: check return
1109                   types.
1110         [r1348]
1111                 Patch From Erik Hovland <erik@hovland.org>
1112                 
1113                 In torture_rpc_mapi_sendattach a call is made to the system function
1114                 read at line 199. The return value of read is assigned to read_size,
1115                 which happens to be of unsigned type. So if read returns -1 (which it
1116                 can) it will not be noticed. The patch changes the type to ssize_t
1117                 (signed) and checks for -1 as well as zero to break out of the loop.
1118                 
1119                 Ref ticket #156
1120         [r1347]
1121                 Patch from Erik Hovland <erik@hovland.org>
1122                 
1123                 1. In mapiproxy, the directory handle dir will be leaked after it is
1124                 done being used.
1125                 2. exchange2mbox main() should use exit at line 785 just like all of
1126                 the other error paths so that we don't leak anything
1127                 
1128                 ref. ticket #157
1129         [r1346]
1130                 Patch from Erik Hovland <erik@hovland.org>
1131                 
1132                 Adds a #include config.h to suppress compiler warnings for vasprintf
1133         [r1345]
1134                 Patch from Erik Hovland <erik@hovland.org>:
1135                 
1136                 Make sure pointers are valid before dereferencing
1137                 1. lpProps 'might' be null
1138                 2. Add folder to variables checked before moving on.
1139                 4. Check nprop->guid before giving to strcmp, two times
1140                 6. Check definition before handing to strlen (which will dereference
1141                 it) Reworked this one to include talloc_free
1142                 7. Check MessageClass? before handing to strncasecmp
1143                 8. Check backend, return if null.
1144                 10. Don't print out anything if lpProp is null
1145                 11. Check attach_size before dereferencing
1146
1147 2009-05-25
1148     jkerihuel
1149         [r1343]
1150                 Fix pull structure for QueryRows reply when no RowData is available
1151
1152 2009-05-07
1153     jkerihuel
1154         [r1341]
1155                 - Add preliminary IDL support for Exchange 2003/2007 EMSMDB RPC calls:
1156                   * EcDoConnectEx
1157                   * EcDoRpcExt2
1158                 
1159                 - Add LZxpress and XorMagic support to EcDoRpcExt2 request/reply
1160                   blob. However it doesn't yet support Chained calls.
1161                 
1162                 - Add AuxInfo/AUX_HEADER structures and IDL
1163                 
1164                 - Refactor mapi_request and mapi_response: move obfuscate_data calls
1165                   up to the EcDoRpc layer
1166
1167 2009-04-27
1168     jkerihuel
1169         [r1339]
1170                 Patch from Paolo Abeni <paolo.abeni@gmail.com>:
1171                 
1172                 call ProcessNotification() after each successful 
1173                 emsmdb_transaction() in all the libmapi calls.
1174         [r1338]
1175                 Patch from Paolo Abeni <paolo.abeni@gmail.com>:
1176                 
1177                 Mapi notifications can occurs inside any emsmdb_transaction; currently
1178                 only the notification send by the server inside the
1179                 emsmdb_transaction_null() in MonitorNotification() are
1180                 parsed/processed/delivered to the appropriate callback.
1181                 
1182                 To be able to process all the received notifications, the notification
1183                 structure must comprise the private data to be passed to the
1184                 notification callback, since in the average mapi call this data is not
1185                 available. This patch modifies the Subscribe() call and the 
1186                 mapi_notification structure, adding the private_data parameter (also the 
1187                 related Subscribe() calls are update)  and add a libmapi call 
1188                 (DispatchNotifications) to force the notification dispatching in
1189                 a [quite] non blocking way
1190
1191 2009-04-26
1192     jkerihuel
1193         [r1336]
1194                 Patch from Paolo Abeni <paolo.abeni@gmail.com>:
1195                 
1196                 ProcessNotification() is ignoring the handle value contained into the
1197                 processed notifications. This means that if many Subscribe() calls are
1198                 performed on different folders but with the same flags, all the
1199                 registered callback are [incorrectly] signaled with each received
1200                 notification.
1201                 
1202                 The attached patch match the handler contained into the notification
1203                 message against the notification object handle to avoid such
1204                 replication.
1205
1206 2009-04-23
1207     jkerihuel
1208         [r1331]
1209                 Make sure delayed authenication is not called when server mode is enabled
1210     bradh
1211         [r1333]
1212                 Update property list to reflect current OAB props.
1213                 
1214                 This deletes a few incompatible properties. Cannot determine the history of the PR_MAILBEAT_ props.
1215         [r1332]
1216                 Fix display of Folder ID values (one is filled with ., the other is prefixed with .16 instead of being filled.
1217                 
1218                 Also remove duplicate close() of file descriptor.
1219         [r1330]
1220                 Typo fix.
1221
1222 2009-04-22
1223     bradh
1224         [r1328]
1225                 Warning fix.
1226
1227 2009-04-21
1228     bradh
1229         [r1326]
1230                 Implement RopTransportNewMail (0x51).
1231                 
1232                 Includes IDL, libmapi implementation, and basic mapitest coverage.
1233                 
1234                 Also fix a few doxygen / formatting things.
1235
1236 2009-04-19
1237     jkerihuel
1238         [r1324]
1239                 - Add Redirect buffer support for OpenMsgStore and OpenPublicFolder.
1240                 This commit fixes the ecWrongServer (0x478) error users encounter
1241                 while running openchange based software in a clustered Exchange 
1242                 environment.
1243
1244 2009-04-18
1245     bradh
1246         [r1322]
1247                 Implement RopCloneStream (0x3b) and RopWriteAndCommitStream (0x90).
1248                 
1249                 Includes IDL, implementation and mapitest tests.
1250
1251 2009-04-17
1252     bradh
1253         [r1320]
1254                 Fix Search notifications.
1255                 
1256                 MS concurred that the docs are wrong.
1257                 
1258                 Patch by Paolo Abeni - thanks very much for the
1259                 investigation and the patch.
1260         [r1319]
1261                 Update GetStoreState documentation.
1262         [r1318]
1263                 Implement RopSetPropertiesNoReplicate (0x79).
1264                 
1265                 IDL was already done. mapitest for DeletePropertiesNoReplicate was
1266                 reused / updated.
1267
1268 2009-04-16
1269     bradh
1270         [r1316]
1271                 Implement (IDL, libmapi, mapitest) RopHardDeleteMessagesAndSubfolders (0x92)
1272                 
1273                 Also fix some bugs in mapitest common code, and an incorrect sanity check in CreateFolder().
1274
1275 2009-04-15
1276     bradh
1277         [r1314]
1278                 Implement RopHardDeleteMessages (0x91). 
1279                 
1280                 Includes IDL, implementation and mapitest.
1281     jelmer
1282         [r1313]
1283                 Ignore generated property file.
1284
1285 2009-04-13
1286     bradh
1287         [r1311]
1288                 Add PT_ACTIONS to list of data types.
1289                 
1290                 Not fully/correctly handled yet.
1291
1292 2009-04-12
1293     jkerihuel
1294         [r1309]
1295                 - Add dcerpc_mapiproxy:delegated_auth option 
1296                 This option delays mapiproxy-remote server authentication when
1297                 the client sends the first request on a given pipe. This is
1298                 mandatory in order to have delegated credentials to work.
1299                 
1300                 - Factor remote connection into mapiproxy_op_connect
1301
1302 2009-04-11
1303     bradh
1304         [r1307]
1305                 Add session state to the notification.
1306                 Patch by Paolo Abeni - thanks for the investigation and fix.
1307                 
1308                 Also remove a stray debug message.
1309         [r1306]
1310                 Add a new mapitest suite for OXCNOTIF (Core Notifications).
1311                 
1312                 Add a test to the OXCNOTIF suite based on test case provided by Paolo Abeni.
1313
1314 2009-04-10
1315     bradh
1316         [r1304]
1317                 Update IDL for ModifyRules (0x41) and add IDL for 
1318                 UpdateDeferredActionMessages (0x57).
1319                 
1320                 This is a checkpoint commit, pending further investigation
1321                 into how we handle PtypRestriction and PtypRuleAction.
1322
1323 2009-04-08
1324     bradh
1325         [r1302]
1326                 Mapitest cleanups - remove GetLastError(), and other minor edits.
1327         [r1301]
1328                 Implement LockRegionStream and UnlockRegionStream ROPs.
1329                 
1330                 These appear to be a relatively recent addition to the 
1331                 documentation, possibly only used in Exchange 2007 / Outlook
1332                 2007.
1333                 
1334                 This is complete except for testing of whether the locking
1335                 actually works.
1336
1337 2009-04-06
1338     jkerihuel
1339         [r1299]
1340                 Use parent folder full replica ID: 2 bytes instead of 1 byte
1341         [r1297]
1342                 - Add Implementation for Logon redirect response buffer in OpenChange IDL
1343                 - Update libmapiserver size calculation routine for Logon call to handle this case
1344
1345 2009-03-30
1346     jkerihuel
1347         [r1293]
1348                 Add session and logon_id to the list of parameters to copy between objects.
1349                 This patch fixes a problem in openchangeclient when using the --folder parameter.
1350     bradh
1351         [r1294]
1352                 Remove code relating to free'ing the bookmark returned
1353                 by SetCollapseState. Initial investigations with MS
1354                 lead me to believe that you can't free that resource.
1355                 
1356                 May be more work in this area as investigation continues.
1357
1358 2009-03-25
1359     jkerihuel
1360         [r1291]
1361                 Fix memory leaks for functions relying on pull_emsmdb_property
1362
1363 2009-03-16
1364     jkerihuel
1365         [r1289]
1366                 Fix emsabp valgrind errors
1367
1368 2009-03-12
1369     jkerihuel
1370         [r1287]
1371                 Make it possible to specify a version number for release different
1372                 from major/minor from configure.ac
1373
1374 2009-03-11
1375     jkerihuel
1376         [r1285]
1377                 Make it possible to open and control up to 255 mailboxes within a 
1378                 single MAPI session.
1379                 
1380                 It implements an internal management of a logon_id array at session
1381                 level + enable transparent transport/copy of current logon_id value
1382                 among MAPI calls + finally transparently free the logon_id value when
1383                 the store object (PF or mailbox) is being released.
1384         [r1284]
1385                 - Retrieve recipients from OpenEmbeddedMessage reply
1386                 - Test the implementation in mapitest
1387                 - Avoid potential memory leak: steal context for returned ulPropTags.
1388
1389 2009-03-08
1390     jkerihuel
1391         [r1282]
1392                 Be more tolerant with Logon request flags
1393         [r1281]
1394                 Set retval to MAPI_E_INVALID_BOOKMARK rather than returning.
1395                 This case still needs to be fixed though.
1396         [r1280]
1397                 Delete debug message
1398         [r1279]
1399                 Create a default GetProps reply on error
1400
1401 2009-03-06
1402     jkerihuel
1403         [r1277]
1404                 Fix retval problem in libmapi/nspi.c for GetIDsFromNames.
1405                 Function returns MAPI_E_SUCCESS, but errno is set to 0x0000000b.
1406                 Set errno to retval to work around this problem.
1407                 
1408                 
1409                 NSPI-GETIDSFROMNAMES
1410         [r1276]
1411                 OXCPRPT-NAME-ID mapitest now passes: The QueryNamedProperties ecMemory retval
1412                 has been worked-around by setting QueryFlags to NoStrings to limite the results
1413                 scope. This means the MNID_STRING case is not fully checked anymore. We should maybe
1414                 add additional tests to do full coverage.
1415         [r1275]
1416                 Fix GetNamesFromIDs IDL and implementation.
1417                 
1418                 Note: We should probably update the function prototype
1419                 so it takes a mapi_SPropTagArray rather than a single property.
1420     bradh
1421         [r1274]
1422                 Protect against bad results from GetGALTable().
1423                 
1424                 Resolves ticket #142
1425
1426 2009-03-04
1427     jkerihuel
1428         [r1272]
1429                 Patch from Paolo Abeni: Add sanity check to Subscribe
1430                 and prevent applications from crashing if notify context 
1431                 is uninitialized.
1432
1433 2009-03-03
1434     jkerihuel
1435         [r1270]
1436                 Ensure NSPI server functions have a valid dcesrv_handle
1437         [r1269]
1438                 Add quick/additional configuration information on how to setup openchange server
1439         [r1268]
1440                 This commit adds a retval check on private data retrieval function and prevents QueryPosition from causing a 
1441                 segfault when parent object is meant to come from GetContentsTable.
1442         [r1267]
1443                 - Fix NspiGetMatches server reply when specified username is invalid and
1444                 search fails.
1445                 - Make use of talloc hierarchy for NspiGetProps properties fetch + fix
1446                 a talloc_free bug leading to segfault on failure.
1447         [r1265]
1448                 Prevent from registering same mapistore backend multiple times
1449     bradh
1450         [r1266]
1451                 Howto updates.
1452
1453 2009-03-02
1454     jkerihuel
1455         [r1261]
1456                 Add skeleton for GetRulesTable 
1457         [r1258]
1458                 - return MAPI_E_SUCCESS when QueryRows reply count is 0
1459                 - Move Reminders from IPM Subtree to Mailbox root
1460         [r1257]
1461                 - Add QueryPosition implementation
1462                 - Move from offset to numerator/denominator couple for table objects
1463                 
1464                 Outlook now opens properly using openchange server and display the
1465                 mailbox folder list with icons ;-)
1466         [r1256]
1467                 - Add skeletons for Restrict, SortTable, FindRow calls
1468                 - Introduce emsmdb provider table object
1469                 - Add preliminary table implementation for system/special folders
1470                 - Add preliminary implementation of GetHierarchyTable, SetColumns and QueryRows
1471                 - Improve creation of GetProps reply blob for Mailbox folder
1472                 - Fix bug in EcRRegisterPushNotification when associated handle is invalid
1473                 - Remove some usage of ldb_filter and use format string instead 
1474                 - Update libmapiserver sanity checks and look for error_code != MAPI_E_SUCCESS
1475                   so openchange server is able to return failed replies to MAPI clients
1476                 - Introduce flaggedPropertyRows in libmapiserver_push_property (needed by QueryRows)
1477                 
1478                 This commit makes openchange server work with "openchangeclient --mailbox" ;-)
1479                 
1480                 Still preliminary but anyway worthwhile enough to be mentioned ...
1481         [r1255]
1482                 - Add a function to count subfolders of a container
1483                 - Add a function to wrap MAPI tables over openchangedb
1484                 - Factorize code used to fetch property values from LDB records
1485         [r1254]
1486                 - Add default properties to folder records while provisioning mailbox
1487                 - Add few more mapping for PR_* to PidTag
1488                 - Add a new MAPI property to the list
1489         [r1253]
1490                 Avoid openchangeclient --mailbox to segfault when run vs openchange server
1491     bradh
1492         [r1263]
1493                 Remove some ldb_filters, and just use varargs into ldb_search
1494         [r1262]
1495                 warning fix for 64-bit arch.
1496         [r1260]
1497                 Revert previous commit.
1498         [r1259]
1499                 Experimental commit to fix build problems resulting
1500                 from property changes.
1501
1502 2009-03-01
1503     jkerihuel
1504         [r1251]
1505                 - Add PidTagDisplayName property to Mailbox object
1506                 - Add PidTagParentFolderId to all system/special folders
1507         [r1250]
1508                 - handles array depends if a valid mapi_repl exists. This commit
1509                   fixes the destructor semantics.
1510                 - Fix a mapitest segfault encountered while run vs openchange server
1511                 - Return 1 in SRowSet_propcpy if an error was encountered.
1512         [r1249]
1513                 Fix libmapi stack segfault when MAPI calls returns 
1514                 with error_code different from MAPI_E_SUCCESS.
1515         [r1248]
1516                 Do not process NSPI request if we can't find the handle
1517         [r1247]
1518                 Remove unnecessary ldb_filter parameter and replace it
1519                 with ldb_search format string.
1520
1521 2009-02-28
1522     jkerihuel
1523         [r1245]
1524                 - GetPropertyIdsFromNames skeleton added
1525         [r1244]
1526                 - Fix how Release replies are handled in mapi_repl[] array
1527                 - Remove Release size calculation
1528                 - Fix QueryRows size in libmapiserver
1529                 - Add a dummy/skeleton GetPropertiesSpecific function for mapistore objects.
1530                 - GetHierarchyTable skeleton added
1531                 - SetProperties skeleton added
1532                 - CreateMessage skeleton added
1533                 - SaveChangesMessage skeleton added
1534                  
1535
1536 2009-02-27
1537     jkerihuel
1538         [r1241]
1539                 Set mapi_response to NULL upon init ... just to get sure
1540         [r1240]
1541                 Fix MAPIUninitialize segfault
1542     bradh
1543         [r1242]
1544                 Warning fix.
1545
1546 2009-02-26
1547     jkerihuel
1548         [r1238]
1549                 - Add skeleton for GetContentsTable Rop
1550                 - Add skeleton for some [MS-OXCTABL] Rops: SetColumns, SortTable, QueryRows, SeekRows
1551                 - Add libmapiserver size calculation functions for all the above
1552                 - Ensure we only set objects parameter if it exists
1553                 - Return when dcesrv handle is not available
1554         [r1236]
1555                 Merge s4-alpha7 branch back into trunk
1556
1557 2009-02-25
1558     jkerihuel
1559         [r1227]
1560                 - Add several PidTag to openchange.ldb folders
1561                 - Add provisioning convenient function which adds attribute/value pair
1562                 to a given folder record
1563                 - Replace existing special folders reference within Inbox with PidTagIpm* tags
1564                 - Add new PidTag values to mapi-properties
1565                 - Add a function to libmapiproxy to build a folder EntryID as described in MS-OXODATA
1566                 - Add a function which builds special properties for openchangedb folders
1567                 - Add PT_BOOLEAN case to openchangedb folder get property function
1568                 - Keep a reference to the mailbox username within emsmdb provider context
1569                 - Create and return a handle in RegisterNotification
1570                  
1571         [r1226]
1572                 Improve PT_I8 dump
1573         [r1225]
1574                 Wrong MessageClass size calculation fixed 
1575     jelmer
1576         [r1229]
1577                 Remove duplicate _GNU_SOURCE definition (already specified by Makefile)
1578         [r1228]
1579                 Ignore new binary and trial output.
1580
1581 2009-02-24
1582     jkerihuel
1583         [r1223]
1584                 - Fix systemfolder value for System/Special folders
1585                 - Add GetProps support to System/Special folders
1586         [r1222]
1587                 Add auto-generated parser to the ignore list
1588         [r1221]
1589                 - Add auto-generated parser for MAPI property to PidTag mapping
1590                 - Add some PidTag values
1591                 - Add a lookup and get property functions on system folders
1592         [r1220]
1593                 - tuple SystemIdx in the dictionnary to workaround the ordering problem
1594                 - Add ParentFolderId attribute to System Folders
1595         [r1217]
1596                 - Add creation of "Special folders" to mailbox provisioning
1597                 - Rename fid attribute to PidTagFolderId
1598                 - Rename name attribute to PidTagDisplayName
1599                 - Rename ExplicitContainerClass to PidTagContainerClass
1600         [r1216]
1601                 Fix GlobalCount increment
1602         [r1215]
1603                 Fix mailbox provisioning
1604     bradh
1605         [r1219]
1606                 Add test for FILETIME structure.
1607         [r1218]
1608                 Update docs for mapiproxy entry.
1609     jelmer
1610         [r1214]
1611                 Fix handling of fids.
1612 2009-02-23
1613     jkerihuel
1614         [r1208]
1615                 - Fix openchangedb mailbox hierarchy and introduces subfolders
1616                 as described in [MS-OXOFOLDS] specifications.
1617                 - Update openchangedb API to reflect this change.
1618         [r1207]
1619                 Rename private mailbox folder "non_ipm_subtree" to "mailbox_root"
1620                 to fit with MS-OXOFOLDS specifications.
1621         [r1206]
1622                 - Add provisioning code for GetReceiveFolder defaults
1623                 - Check if mapistore content repository already exists for the user
1624                 - Make mailbox creation verbose
1625     jelmer
1626         [r1213]
1627                 Fix parentfolder reference.
1628         [r1212]
1629                 Fix syntax error.
1630         [r1211]
1631                 Use recursive call to create folders.
1632         [r1210]
1633                 Simplify list iteration, PEP8, avoid using string exceptions.
1634
1635 2009-02-22
1636     jkerihuel
1637         [r1204]
1638                 Fix 'dereferencing type-punned pointer' warnings
1639         [r1203]
1640                 - Add strict-aliasing compiler flags
1641                 - Fix format string warnings on ubuntu buildbot
1642         [r1202]
1643                 - Add _FORTIFY_SOURCE=2 to the compiler CFLAGS
1644                 - Fix warnings introduced by -D_FORTIFY_SOURCE
1645     bradh
1646         [r1201]
1647                 I might have been a bit hasty with that last commit...
1648                 
1649                 Need sqlite3.
1650         [r1200]
1651                 Try harder to find sqlite3.
1652                 
1653                 Seems to be in sqlite.pc on Ubuntu.
1654         [r1198]
1655                 Fix warning on 64-bit arch.
1656 2009-02-21
1657     jkerihuel
1658         [r1197]
1659                 - Add RopGetReceiveFolder (0x27) implementation
1660                 The function respects should respect the semantics and behavior
1661                 as described in MS-OXCSTOR specifications. However the python's
1662                 code modification required: add ExplicitMessageClass attributes
1663                 to folder records is not yet effective.
1664                 
1665                 - Add GetReceiveFolder size calculation function to libmapiserver
1666                 - Add a function to openchangedb API to retrieve the FID/ExplicitMessageClass
1667                 couple for a given SystemFolder within user's mailbox.
1668         [r1196]
1669                 - Provision scripts: create a mapistore default storage space within ${private}/mapistore/${username}
1670                 - Provision scripts: add default sqlite:// mapistore URI for system folders
1671                 - Add mapistore context initialization when calling OpenFolder on SystemFolder
1672                 - Add mapistore context release for folders in emsmdbp object destructor
1673         [r1195]
1674                 Factorize emsmdbp objects
1675                 Add emsmdbp_object generic talloc destructor
1676     bradh
1677         [r1194]
1678                 Add test for PT_MV_LONG.
1679         [r1193]
1680                 Add tests for PT_I8 and PT_BINARY
1681         [r1192]
1682                 Fix warning about no newline at end of file.
1683                 
1684                 Remove most recently added tests from "to be done" list.
1685         [r1191]
1686                 Add a couple more mapi_SPropValue tests.
1687
1688 2009-02-19
1689     jkerihuel
1690         [r1189]
1691                 - Initialize mapistore within emsmdb provider context
1692                 - Add destructors for MAPI handles and mapistore contexts
1693                 - Remove emsmdbp_ctx memory context structure member and
1694                 allocate directly with emsmdbp_ctx
1695         [r1188]
1696                 I don't see any good reason why we would pad MAPI replies with some bytes. 
1697                 I guess it comes from some prehistoric openchange code.
1698         [r1187]
1699                 Fix systemfolder assignment depending on IsSystemFolder value
1700         [r1186]
1701                 - Initialize OpenFolder server reply
1702         [r1185]
1703                 - Wrap TDB connections to mapistore (code from samba4) so
1704                 multiple instances can open read/write to the same TDB database
1705                 - Remove static id_mapping_context (replaced with tdb_wrap calls)
1706                 - Update mapistore linkage rules so mapistore can be used with exchange_emsmdb server
1707                 - Link mapistore with exchange_emsmdb
1708         [r1183]
1709                 Fix aclocal warning for AC_DEFINE comparison_fn_t
1710         [r1182]
1711                 Remove useless GetProfilePtr from IProfAdmin interface
1712                 Closes trac ticket #131
1713         [r1181]
1714                 Add missing script - prevent configure from generating warning vs missing file.
1715         [r1180]
1716                 Remove stamp-h1 file during distclean and add it
1717                 to the ignore list.
1718         [r1179]
1719                 - Add server-side GetReceiveFolder (0x27) skeleton
1720         [r1178]
1721                 Work around the comparison_fn_t redefinition problem
1722                 between libocpf and ndr.h
1723         [r1177]
1724                 FreeBSD doesn't have time.h daylight global variable
1725     bradh
1726         [r1184]
1727                 start testing mapi_SPropValue_array.
1728                 This also tests some underlying functions.
1729
1730 2009-02-18
1731     jkerihuel
1732         [r1175]
1733                 Add comparison_fn_t support to ndr.h
1734                 This was the latest change require to make openchange compiles under FreeBSD
1735                 
1736                 = samba4/openchange FreeBSD support completed =
1737
1738 2009-02-17
1739     jkerihuel
1740         [r1173]
1741                 Remove duplicated post_install call
1742         [r1172]
1743                 Add a post_install operation on FreeBSD
1744                 Make sure pidl is installed properly.
1745         [r1171]
1746                 Patch samba4 tarball so it compiles properly on FreeBSD 7.0
1747                 Note: this is a dirty hack which needs to be removed in the future
1748         [r1170]
1749                 Install Samba4 correctly although user's PKG_CONFIG_PATH env variable
1750                 may not be adjusted properly.
1751         [r1169]
1752                 Avoid download samba4 release tarball if already available
1753                 in current directory.
1754         [r1168]
1755                 - Add test for comparison_fn_t in configure.ac
1756                 - libocpf auto-generated files include stdlib.h and prevent from
1757                 having the proper comparison_fn_t typedef. This commit works around this
1758                 problem and define comparison_fn_t within a private header.
1759         [r1165]
1760                 getline is a stdio GNU_SOURCE extension not available under FreeBSD.
1761                 Use fgetln instead when it is compiled on this OS.
1762         [r1164]
1763                 FreeBSD doesn't define sighandler_t but sig_t
1764         [r1163]
1765                 Replace open() call with O_DIRECTORY flag (Linux specific) with opendir
1766         [r1162]
1767                 - Add non-default search path /usr/local/{include,lib} to
1768                 CFLAGS and LDFLAGS when compiling OpenChange under FreeBSD
1769                 - Make use of LDFLAGS while compiling openchange tools
1770     bradh
1771         [r1167]
1772                 A few improvements for property handling.
1773                 
1774                 Also add unit tests to verify behaviour is correct.
1775                 
1776                 The implementation for the FlatUID (GUID) structure appears broken. Perhaps I'm not using it correctly.
1777         [r1166]
1778                 Microsoft confirmed the LCID is wrong in the spec, and will be updated in the next rev.
1779
1780 2009-02-16
1781     jkerihuel
1782         [r1160]
1783                 Check for Flex version < 2.5.35
1784                 Make sure users can define the FLEX environment variable
1785         [r1159]
1786                 Add automake scripts for AC_CANONICAL_HOST support
1787                 Needed for FreeBSD OS detection in configure.ac
1788
1789 2009-02-14
1790     bradh
1791         [r1153]
1792                 Fix warnings from lexer output.
1793         [r1152]
1794                 Fixes for warnings on 64-bit architectures.
1795         [r1151]
1796                 Fix warning on 64-bit architecture.
1797     jelmer
1798         [r1157]
1799                 Add some more tests for openchange.mailbox.
1800         [r1156]
1801                 Fix creation of new mailbox after provision.
1802         [r1155]
1803                 Always use the same URL when connecting to openchangedb.
1804         [r1154]
1805                 Fix arguments to openchangedb_provision.
1806
1807 2009-02-13
1808     jkerihuel
1809         [r1149]
1810                 Fix libmapi 64-bit machine cast warnings mentioned in Brad's devel email
1811     bradh
1812         [r1148]
1813                 Warning fix for 64-bit arch.
1814
1815 2009-02-12
1816     jkerihuel
1817         [r1146]
1818                 Add doxygen definition for RopRelease
1819         [r1145]
1820                 - Add server-side skeleton implementation for RopOpenFolder and RopRegisterNotification
1821                 - Add preliminary size calculation functions in libmapiserver for the 2 calls above
1822                 - Fix size bug for serialized requests
1823                 - Add skeleton case for RopGetPropertiesSpecific on SystemFolders
1824                 - Make sure the GetProps reply blob is initialized whatever happen
1825                 - Add a skeleton emsmdbp folder object init function
1826
1827 2009-02-11
1828     jkerihuel
1829         [r1143]
1830                 Remove debug strings for GetPropertiesSpecific Rop
1831         [r1142]
1832                 Enable verbose output in server mode - useful during development
1833         [r1141]
1834                 Implement preliminary server-side RopGetPropertiesSpecific call for mailbox object.
1835         [r1140]
1836                 - Fix GetProps blob for PT_BINARY: use SBinary_short instead of Binary_r
1837                 - Fix GetProps size: subcontext is not added to the fixed size calculation
1838         [r1133]
1839                 - GetPropsSpecific size calculation function added to libmapiserver
1840                 - Function to create a GetProps reply property blob added to libmapiserver
1841     jelmer
1842         [r1139]
1843                 Add tests for provisioning.
1844         [r1138]
1845                 Several cleanups in python code, add tests for schema use.
1846         [r1137]
1847                 Don't clear PYTHONPATH override.
1848         [r1136]
1849                 Remove unused imports, add extra tests.
1850         [r1135]
1851                 Use member variable for Ldb, rather than subclassing.
1852         [r1134]
1853                 Remove print statements to avoid cluttering test output.
1854         [r1130]
1855                 Add simple and incomplete testcase for OpenChangeDB.
1856         [r1129]
1857                 Move wipe of data to mailbox.py, simplify arguments to add_root_mailbox.
1858         [r1128]
1859                 Move adding a server to mailbox.py.
1860         [r1127]
1861                 Move ldif from oc_provision_openchange.ldif into Python.
1862         [r1126]
1863                 Stop providing setup_path to OpenChangeDB, as it's no longer used.
1864         [r1125]
1865                 Avoid using separate LDIF file when creating folder mailboxes.
1866         [r1124]
1867                 Avoid using separate LDIF file when creating mailboxes.
1868         [r1123]
1869                 Avoid passing full names object.
1870         [r1122]
1871                 Add check-python target.
1872
1873 2009-02-10
1874     jelmer
1875         [r1120]
1876                 fix openchange_newuser.
1877         [r1119]
1878                 Use SamDB for actual SAM databases, Ldb otherwise.
1879         [r1118]
1880                 Remove unused parameters, don't make parameters optional if they are mandatory.
1881         [r1117]
1882                 remove unused parameters.
1883         [r1116]
1884                 make mailbox object-oriented, remove creds/lp parameters.
1885         [r1115]
1886                 Fix OpenChangeDB syntax.
1887
1888 2009-02-09
1889     jkerihuel
1890         [r1113]
1891                 - Add a systemfolder member to the MAPI handle structure to make a difference
1892                   between objects managed by mapistore and those stored within openchange.ldb 
1893                   (root mailbox folders).
1894                 
1895                 - Add opaque functions to set/get private_data and systemfolder to the MAPI 
1896                   handles API.
1897         [r1112]
1898                 Minor doxygen fix/improvement
1899         [r1109]
1900                 Add libmapistore object files to the ignore list
1901         [r1108]
1902                 - Add a very preliminary and light libmapistore implementation.
1903                 mapistore only supplies init/release and add/del backend contexts.
1904                 This commit also includes a sqlite3 backend skeleton (open/close sqlite db)
1905                 - A temporary mapistore testing tool has been added locally for implementation checks.
1906     jelmer
1907         [r1111]
1908                 Use convenience function for connecting to openchange.ldb.
1909         [r1110]
1910                 Use standard LDB functions - openchange.ldb is not a SAM database.
1911
1912 2009-02-08
1913     bradh
1914         [r1106]
1915                 Implement support the SUMMARY language tag.
1916         [r1105]
1917                 Initial checking of libical based exchange2ical code.
1918                 
1919                 This has a long way to go, so think of this as more of a checkpoint
1920                 than a release.
1921                 
1922                 See http://sourceforge.net/projects/freeassociation/ for the library, or
1923                 see if your distro has a package.
1924         [r1104]
1925                 Reduce warnings.
1926         [r1103]
1927                 Add missing parameter to API documentation.
1928                 
1929                 Resolves ticket #130.
1930         [r1102]
1931                 API documentation fixes for OpenEmbeddedMessage()
1932         [r1101]
1933                 Implement OpenEmbeddedMessage ROP (0x46).
1934                 
1935                 Resolves Ticket #93
1936         [r1100]
1937                 Factor out message creation and message fill actions.
1938                 
1939                 Also remove GetLastError() where appropriate.
1940         [r1099]
1941                 Add some API documentation.
1942
1943 2009-02-07
1944     jkerihuel
1945         [r1097]
1946                 Update openchangepfadmin description
1947                 Fix tool relying on libmapiadmin
1948     bradh
1949         [r1096]
1950                 Minor code tweak.
1951                 
1952                 Fix ticket #132.
1953         [r1095]
1954                 Add more explanation for README
1955         [r1094]
1956                 Reimplement RTF decompression.
1957                 
1958                 Add unit tests from MS-OXRTFCP.
1959         [r1093]
1960                 Fix warnings in example code
1961         [r1092]
1962                 Add description for libmapiadmin
1963         [r1091]
1964                 Add description for libmapi / libmapi++
1965         [r1090]
1966                 Start on the directory descriptions.
1967         [r1089]
1968                 doc/ pointers
1969 2009-02-06
1970     bradh
1971         [r1088]
1972                 Add overview. Extracted from API docs.
1973         [r1087]
1974                 Additional docs.
1975         [r1084]
1976                 Outline of README file.
1977                 
1978                 (also using this to test buildbot without changing real code)
1979 2009-02-05
1980     jkerihuel
1981         [r1081]
1982                 Add Version field - avoid breaking pkg-config --list-all
1983         [r1080]
1984                 Fix warnings (gcc 4.2.4)
1985     jelmer
1986         [r1083]
1987                 Use variable for package version rather than hardcoding it.
1988
1989 2009-02-04
1990     jkerihuel
1991         [r1078]
1992                 Fix pc file libs
1993
1994 2009-02-03
1995     jkerihuel
1996         [r1070]
1997                 - Add an implementation of the MAPI handles management API. The API
1998                   internally uses an in-memory TDB database to keep object hierarchy
1999                   and a doubled chained list to associate private data to handles.
2000                 
2001                 The API currently provides add, search and delete facilities. Note
2002                 that while untested, the delete operation is designed to recursively
2003                 delete children of the 'meant to be deleted' handle.
2004                 
2005                 Finally the API doesn't remove TDB records but mark them as free so
2006                 they can be reused across MAPI session and prevent from handle counter
2007                 growing indefinitely.
2008                 
2009                 - Add a preliminary implementation of the Release call
2010                 - Add Release size calculation to libmapiserver
2011                 - Update EMSMDB provider to use MAPI handles API
2012     bradh
2013         [r1075]
2014                 Minor api documentation fix.
2015         [r1074]
2016                 Minor API docs fix.
2017         [r1073]
2018                 Minor API docs fix.
2019         [r1072]
2020                 Minor API docs tweak.
2021         [r1071]
2022                 Token commit of tiny API docs fix.
2023     jelmer
2024         [r1076]
2025                 Look for GNU make harder (gmake on BSDs).
2026
2027 2009-02-02
2028     jkerihuel
2029         [r1068]
2030                 - Add preliminary EMSMDB provider implementation for RopLogon (0xFE)
2031                 - Add common routines for OpenChange LDB context init and search
2032                   within libmapiproxy
2033                 - Add libmapiserver skeleton with size calculation routine for RopLogon
2034                 - Change DSO linking dependencies for mapiproxy shared libraries
2035                 - Propagate _GNU_SOURCE change from libmapi.h to mapiproxy
2036 2009-02-01
2037     jkerihuel
2038         [r1067]
2039                 Remove .po and .o objects within libmapiproxy subdirectory
2040         [r1066]
2041                 Move libmapiproxy into its own directory and rebase mapiproxy headers accordingly
2042                 Fix make uninstall for AD and profiles directories
2043         [r1064]
2044                 doxygen typo fix
2045         [r1063]
2046                 Add python code and ldif files needed to create and populate the experimental
2047                 openchange dispatcher database.
2048         [r1062]
2049                 Add 5-Minute configuration documentation for OpenChange server mode
2050         [r1061]
2051                 - Rebase ldif files into sub directories:
2052                   * AD for OpenChange AD modifications
2053                   * profiles for OpenChange IProfAdmin interface
2054                 - Makes it easier figuring out LDIF files scope
2055                 - Prepare setup folder for LDIF openchangedb files integration
2056                 - Update install/uninstall Makefile rules for ldif files and
2057                   make sure everything got removed
2058     bradh
2059         [r1060]
2060                 Add forgotten file.
2061         [r1059]
2062                 Add support for short language names (e.g. en-AU) for lcid.
2063
2064 2009-01-31
2065     jkerihuel
2066         [r1057]
2067                 Delete deprecated libmapi setup Perl script
2068     bradh
2069         [r1056]
2070                 Add summary report for tests.
2071         [r1055]
2072                 Make mapitest return the number of failed tests.
2073
2074 2009-01-29
2075     jkerihuel
2076         [r1052]
2077                 - Add pkg-config pc file for libmapiproxy
2078                 - Improve mapiproxy rules so libmapiproxy gets installed and cleaned properly
2079         [r1051]
2080                 Free memory allocated by the fake subcontext in
2081                 ndr_pull_mapi_response.
2082                 
2083                 This fix saves 300kb of memory and removes 700 loss records while
2084                 valgrinding mapitest.
2085         [r1050]
2086                 Fix segfault - Add sanity check - when SPropTagArray is NULL in
2087                 NspiQueryRows request
2088         [r1048]
2089                 Fix openchange_newuser name typo
2090         [r1047]
2091                 Fix server provisioning command line examples
2092         [r1045]
2093                 Fix several libmapi leaks.
2094                 
2095                 mapi_response was allocated using emsmdb_ctx->mem_ctx memory context
2096                 and was not free'd when libmapi function released their
2097                 context. Furthermore we need to release mapi_response->mapi_repl and
2098                 mapi_response->handles which are now automatically free'd when
2099                 mapi_response destructor is called.
2100                 
2101                 However note that this fix is not perfect: mapi_response memory is not
2102                 free'd properly when calls exit with an error.
2103                 
2104                 This commit also make use of talloc_steal where necessary to keep
2105                 returned fields allocated.
2106 2009-01-28
2107     jkerihuel
2108         [r1040]
2109                 Use named context rather than autofree
2110         [r1039]
2111                 Fix memory leak in emsmdb.c: Use a temporary memory context for
2112                 request and length allocation in emsmdb_transaction.
2113                 
2114                 - This removes 827 loss records and approximatively saves 41kb of
2115                   memory while valgrinding mapitest
2116         [r1038]
2117                 - Fix memory leak in GetDefaultProfile and GetProfileTable.
2118                 - Save from 10 loss records while valgrinding mapitest
2119                 - Developers are now responsible from freeing the GetDefaultProfile
2120                   string the function allocates.
2121                 - Apply changes to all openchange tools.
2122         [r1037]
2123                 Add blackbox subunit tests for mapiprofile tool
2124     bradh
2125         [r1043]
2126                 One more trivial fix.
2127         [r1042]
2128                 Typo fixes.
2129                 
2130                 (Yep, more trivial changes)
2131         [r1041]
2132                 Fix incorrect LCID for en-CA.
2133                 
2134                 (OK, its token, I admit).
2135     jelmer
2136         [r1044]
2137                 Don't define _GNU_SOURCE unconditionally.
2138 2009-01-27
2139     jkerihuel
2140         [r1036]
2141                 Prevent mapiproxy from multiple init and modules/server register
2142                 when an smb client connect to the server (e.g. windows browser or smbclient)
2143 2009-01-26
2144     bradh
2145         [r1033]
2146                 According to [MS-OXOCAL] Section 2.2.1.44.1 
2147                 "RecurrencePattern Structure", a monthly recurrence
2148                 also has a Day specific parameter.
2149                 
2150                 Add that here.
2151     jelmer
2152         [r1035]
2153                 Simply run autogen.sh rather than replicating it inside the Makefile.
2154         [r1034]
2155                 need to run aclocal before autoconf for the pkg-config macros.
2156 2009-01-25
2157     jkerihuel
2158         [r1032]
2159                 Use a autofree context rather than a named one - makes sure memory is free'd when we exit the test.
2160                 Saves from 4 loss records while valgrind'ing mapitest.
2161         [r1031]
2162                 Use temporary memory context for EcDoConnect.
2163                 Saves from 20 loss records when valgrind'ing mapitest.
2164         [r1030]
2165                 Free PropertyProblem structures returned by CopyTo.
2166         [r1029]
2167                 Replace deprecated talloc_init calls with talloc_named
2168                 This commit removes some valgrind loss records talloc_init was responsible for
2169         [r1028]
2170                 Free everything
2171                 Free everything when running mapitest --list-all.
2172                 Valgrind however shows a loss record related to talloc_init ...
2173     bradh
2174         [r1027]
2175                 Minor Intel C compiler warning fixes.
2176         [r1026]
2177                 Minor apidocs cleanups.
2178 2009-01-24
2179     jkerihuel
2180         [r1024]
2181                 Use double pointer for lp_ctx in GetLoadparmContext assessor
2182         [r1023]
2183                 Fix memory leak in utf8 lexer.
2184         [r1022]
2185                 - Remove custom iconv_convenience from pull_emsmdb_property and use 
2186                 lp_iconv_convenience on loadparm_context argument instead. 
2187                 
2188                 - Change OpenChange libmapi API to reflect this change
2189                 
2190                 - Introduce a lp_ctx assessor in libmapi/cdo_mapi.c 
2191                 (mostly for mapitest modules). libmapi/mapiproxy developers
2192                 should never have to make use of it.
2193                 
2194                 - Remove pointless duplicated call to lp_load_default in MAPIInitialize.
2195         [r1021]
2196                 Free lpProps returned by GetProps, Fix context error in valgrind
2197         [r1020]
2198                 - Fix memory leak bug: release ndr context in pull_emsmdb_property before returning
2199                 - Terminate SPropValue and SPropTagArray using an element with ulPropTag = 0. This
2200                 prevent from "invalid read size of 4" messages from valgrind and remove context errors.
2201     jelmer
2202         [r1025]
2203                 Don't install mapiproxy if python wasn't found, since 
2204                 we wouldn't know where to install the provisioning scripts or be able 
2205                 to use them.
2206 2009-01-20
2207     jkerihuel
2208         [r1018]
2209                 Merge libmapi-0.8 branch r1015 to 1017 into trunk
2210         [r1015]
2211                 ** Start libmapi-0.9 COCHRANE development **
2212         [r1014]
2213                 Merge libmapi-0.8 branch changes into trunk
2214 2009-01-18
2215     jkerihuel
2216         [r1007]
2217                 Add python install/uninstall rules to provision rather than mapiproxy-servers
2218         [r1006]
2219                 - Remove server Makefile rules
2220                 - Remove dead code
2221                 
2222                 Note: server and providers have been merged within mapiproxy,
2223                 so there is no reason keeping this deprecated code.
2224 2009-01-17
2225     jkerihuel
2226         [r1005]
2227                 Undoing change committed in r1004.
2228         [r1004]
2229                 Use .po files instead of .o files for openchange tools
2230         [r1003]
2231                 Add --version to openchange tools
2232         [r1002]
2233                 Add COPYING file with GPLv3 license
2234 2009-01-16
2235     jkerihuel
2236         [r1001]
2237                 - Add RenameProfile function to IProfAdmin API
2238                 - Remove pointless CopyProfile from IProfAdmin API
2239                 - Add --rename option to mapiprofile tool
2240                 - Update man page to reflect this addition
2241                 
2242                 (close trac ticket #124)
2243         [r1000]
2244                 Fix libmapi from crashing when mapi_repl is NULL.
2245         [r999]
2246                 Update Samba4 git rev to fix the charcnv segfault met in openchange
2247                 tools
2248     jelmer
2249         [r998]
2250                 Try to find the Samba python modules if they're not installed in the system 
2251                 python directory.
2252 2009-01-15
2253     jkerihuel
2254         [r997]
2255                 - Fix Subscribe semantic bug and add WholeStore boolean parameter
2256                 - propagate API change to tools/torture callers
2257         [r996]
2258                 - Add assessor functions to set dumpdata and debug level in libmapi
2259                   (SetMAPIDumpData and SetMAPIDebugLevel)
2260                 - OpenChange tools modified to use these function rather than set these
2261                   parameters on their own
2262         [r995]
2263                 - Fix --debuglevel segfault in openchange tools
2264                 - Enable logging to stdout in MAPIInitialize
2265 2009-01-14
2266     jkerihuel
2267         [r994]
2268                 * OpenChange libmapi function now returns MAPI error instead of -1
2269                 - use OPENCHANGE_RETVAL_IF instead of MAPI_RETVAL_IF
2270                 - add doxygen documentation for some missing functions/files
2271         [r993]
2272                 - Missed this event->tevent change in previous commit
2273         [r992]
2274                 - Update openchange to use latest Samba4 master git rev (990491d)
2275                 - Fix references to tevent_context structures
2276                 - Fix iconv_convenience init in MAPIInitialize
2277                 - Remove errorchecks mapitest module warning
2278     jelmer
2279         [r991]
2280                 Use tevent_context_init.
2281         [r990]
2282                 Ignore binaries.
2283 2009-01-13
2284     jkerihuel
2285         [r989]
2286                 Some Exchange server (stand-alone) return MAPI_E_LOGON_FAILED when setting EssDN with username rather than
2287                 using profile's mailbox string directly. This commit fixes the bug.
2288         [r988]
2289                 - Add EcDoConnect and EcDoDisconnect preliminary support to
2290                   dcesrv_exchange_emsmdb.c
2291                 - Add internal session management mechanism to EMSMDB server
2292                 - Add init and unbind modules function to EMSMDB server
2293                 - Add emsmdbp_context and session to dcesrv_exchange_emsmdb.h
2294     bradh
2295         [r987]
2296                 Fix valgrind errors caused by using free'd memory.
2297 2009-01-12
2298     jkerihuel
2299         [r986]
2300                 Implement 'mapiproxy downgrade' behavior in EMSMDB server and force
2301                 Outlook to use EcDoConnect (0x0) and EcDoRpc (0x2) rather than 0xA and
2302                 0xB (opnums using LZ based compression).
2303         [r985]
2304                 - Add Preliminary implementation for RfrGetFQDNFromLegacyDN DS RFR server
2305 2009-01-11
2306     jkerihuel
2307         [r984]
2308                 - Preliminary implementation of NspiGetProps NSPI server function
2309                 - Makes sure emsabp_tdb_traverse_MId uses the correct dbuf size
2310                 - Use correct ldb context (users or conf) depending on where MId is
2311                   located (on-memory or on-disk)
2312                 - Add PR_EMS_AB_NETWORK_ADDRESS mapping to emsabp_property
2313                 
2314                 *** Outlook is now able to create MAPI profile using OpenChange Server ONLY! ***
2315         [r983]
2316                 - Preliminary implementation of NspiDNToMId NSPI server function
2317                 - Add emsabp_search_legacyExchangeDN to search for a record given its
2318                   legacyExchangeDN attribute.
2319         [r982]
2320                 - Preliminary implementation of NspiQueryRows NSPI server function added
2321                 - fix a bug in the MID TDB traversal routine: cut dptr to dsize length
2322                   rather assuming it is NULL terminated
2323                 - Add support for "referenced" property tags
2324                 - Add support for PR_MV_STRING8
2325                 - Add emsabp_search_dn which search for a DN within AD and return the
2326                   associated LDB message
2327                 - Add PR_EMS_AB_HOME_MDB and PR_EMS_AB_PROXY_ADDRESSES to
2328                   emsabp_property array
2329         [r981]
2330                 Prevent from trying to add a NULL element to profile database and segfault on strlen
2331         [r980]
2332                 Prevent x500_get_dn_element from segfaulting when an incorrect DN string parameter is supplied
2333         [r979]
2334                 - Preliminary implementation of NspiGetMatches NSPI server function
2335                 - Make use of a on-memory TDB database for Ephemeral Entry IDs
2336                 - Add TDB traversal routines to retrieve DN associated to MId
2337                 - Move lp_ctx within emsabp_ctx for convenience
2338                 - Add EphemeralEntryID to Binary_r routine
2339                 - add emsabp_query (Find attribute matching given property tag and
2340                   return associated data)
2341                 - add emsabp_fetch_attrs which builds a SRow array given a MId and
2342                   requested property tags.
2343                 - add emsabp_search which searches AD given input search criteria
2344                 - add a preliminary Property Tag to AD attribute mapping + associated
2345                   functions in emsabp_property.c
2346                 
2347                 Note: This NspiGetMatches is limited to MAILUSER which means we only
2348                 look for users (located within users.ldb). This limitation will be
2349                 removed when we have a preliminary working emsmdb server, so we can do
2350                 more extensive NSPI server tests.
2351         [r978]
2352                 Add sanity check to get_SPropValue_SRowSet, prevents the function
2353                 from segfault when RowSet is NULL (e.g. crafted NspiQueryRows replies)
2354         [r977]
2355                 Prevent IProfAdmin based code from crashing when a crafted NspiGetMatches reply
2356                 with NULL ppOutMIds is returned.
2357                  
2358 2009-01-10
2359     jkerihuel
2360         [r976]
2361                 - Preliminary NspiGetSpecialTable implementation added to NSPI
2362                   server/EMSABP provider: Hierarchy Table supported (required during
2363                   profile creation)
2364                 - add PT_BINARY support for mapidump_SPropValue
2365                 - fix a bug when PT_STRING8 or PT_UNICODE pointer is set to
2366                   MAPI_E_NOT_FOUND
2367
2368 2009-01-06
2369     jkerihuel
2370         [r974]
2371                 Add new Display Type values (used by EMSABP provider)
2372         [r973]
2373                 Change DEBUGLEVEL for RfrGetNewDSA
2374         [r972]
2375                 - preliminary implementation of RFR server (RfrGetNewDSA): makes Outlook happy
2376                 - mapiproxy-servers-install now installs openchange python scripts and ldif file
2377 2009-01-05
2378     jkerihuel
2379         [r971]
2380                 Move auth_serversupplied_info structure from dcesrv_exchange_nsp.h to libmapiproxy.h
2381                 This structure is required for NTLM_AUTH_IS_OK macro
2382         [r969]
2383                 - Add doxygen comments for all OpenChange server modules
2384                 - Fix doxygen return value for exchange_nsp
2385         [r968]
2386                 - Add mapiproxy server unbind function and hook in dcesrv_mapiproxy.c
2387                 - Add exchange handle enum to dcesrv_mapiproxy.h
2388                 - Add authentication verifier macro to libmapiproxy.h
2389                 - Add preliminary EMSABP Address Book Provider implementation:
2390                   * supports initialization, destructor (talloc)
2391                   * implements user and codepage check routines
2392                   * retrieve NSPI server GUID
2393                 - Add NspiBind and NspiUnbind support to dcesrv_exchange_nsp.c
2394                 - Add internal session mechanism management to NSPI server
2395                 - Add init and unbind modules function to NSPI server
2396                 - Add doxygen comments to all dcesrv_exchange_nsp.c functions
2397                 - Add emsabp_context, session and non-exported Samba structure to dcesrv_exchange_nsp.h
2398         [r967]
2399                 OpenChange configuration schema updated with Addressing schema
2400                 (Address-Templates, Address-Types and Display-Templates - Exchange 2003 based)
2401         [r966]
2402                 Execute server modules init function when loaded
2403     bradh
2404         [r965]
2405                 A few API documentation fixes.
2406
2407 2009-01-04
2408     jkerihuel
2409         [r963]
2410                 Add documentation for MAPIProxy 'server mode'
2411
2412 2009-01-02
2413     jkerihuel
2414         [r961]
2415                 - Implement mapiproxy server mode architecture
2416                 - Add server modules management API
2417                 - Add skeletons for default OpenChange servers (nspi, emsmdb, ds_rfr)
2418                 - Add temporary provision Makefile rule
2419
2420 2008-12-30
2421     jkerihuel
2422         [r959]
2423                 Initial text was correct - rollback
2424         [r958]
2425                 Fix path typo
2426     bradh
2427         [r957]
2428                 Ensure that GetLastError() also returns the correct value.
2429         [r956]
2430                 Start changing the MAPI_RETVAL_IF() usage to two new macros:
2431                 OPENCHANGE_RETVAL_IF() and OPENCHANGE_RETVAL_ERR().
2432                 
2433                 simple_mapi.c is the only one converted at this stage.
2434                 
2435                 Also added a set of unit tests that verify at least some initial
2436                 sanity checks.
2437         [r955]
2438                 Remove unreachable code.
2439                 
2440                 Partly resolves ticket #124
2441
2442 2008-12-29
2443     jkerihuel
2444         [r953]
2445                 Remove references to ldap.h header file - not installed anymore with samba4 git rev openchange uses
2446         [r952]
2447                 mapiproxy documentation update: 3 questions added to FAQ section
2448         [r951]
2449                 Patch from Corentin Chary:
2450                         - Add PR_CONTENT_FILTER_SCL property to libmapi
2451         [r950]
2452                 - Update openchange to work with samba4 master git rev f308c2f
2453                 - Replace reference to events.h with tevent.h
2454                 - Update installsamba4.sh script to reflect latest samba4 compilation changes/requirements 
2455
2456 2008-12-27
2457     jkerihuel
2458         [r948]
2459                 Fix mapidump date/month when freebusy period covers end of one year - beginning of next year
2460                 Update openchangeclient to reflect these changes.
2461
2462 2008-12-24
2463     jelmer
2464         [r946]
2465                 Export PKG_CONFIG_PATH if it wasn't exported yet. Patch by Metze
2466         [r945]
2467                 Fix PIC object flags for SWIG build. Patch by metze.
2468
2469 2008-12-21
2470     bradh
2471         [r943]
2472                 User %u format specifier for unsigned integer.
2473         [r942]
2474                 Make return value match signature.
2475         [r941]
2476                 Miscellaneous minor cleanups. Mainly making return types
2477                 match signatues, format conversion (%u for unsigned values) and
2478                 matching up result variable types (bool instead of enum MAPISTATUS).
2479         [r940]
2480                 Return an enum MAPISTATUS, instead of a bool, to match function signature.
2481         [r939]
2482                 Use %u instead of %d for unsigned values.
2483
2484 2008-12-20
2485     bradh
2486         [r937]
2487                 Another minor APIdox edit.
2488         [r936]
2489                 API documentation tweak.
2490         [r935]
2491                 API dox fix.
2492         [r934]
2493                 API dox fix.
2494         [r933]
2495                 Minor apidox fixes.
2496         [r932]
2497                 More apidox triviality.
2498         [r931]
2499                 Trivial APIdox edits.
2500         [r930]
2501                 Supplement the user's PKG_CONFIG_PATH rather than 
2502                 overriding it.
2503     jelmer
2504         [r929]
2505                 Add bindings for GetBestBody(), GetDefaultFolder(), GetDefaultPublicFolder(), AddUserPermission(), ModifyUserPermission().
2506         [r928]
2507                 Add bindings for create_message, delete_messages, get_message_status, set_read_flags.
2508         [r927]
2509                 Add Python bindings for Unsubscribe(), get_task_status(), get_importance(), get_proptag_name(), get_proptag_value(), DeleteFolder(), CreateFolder(), EmptyFolder(), RemoveUserPermissions(), IsMailboxFolder().
2510
2511 2008-12-19
2512     jelmer
2513         [r925]
2514                 Actually use pymapi variables in Makefile.
2515         [r924]
2516                 Add configure flags for building and installing Python MAPI bindings (disabled by default).
2517
2518 2008-12-18
2519     bradh
2520         [r922]
2521                 Add namespace prefix to scanner.
2522
2523 2008-12-16
2524     jkerihuel
2525         [r920]
2526                 - spnego / gssapi_krb5 authentication now available for mapiprofile
2527                 - add the --realm | -R option
2528                 - update mapiprofile man page
2529
2530 2008-12-14
2531     bradh
2532         [r912]
2533                 Remove entries for --properties and --priority, which have been removed from the openchangeclient utility.
2534                 
2535                 Partly fixes #113.
2536         [r911]
2537                 Don't generate / install man3 pages for libmapi++ or mapitest.
2538                 
2539                 Resolves ticket #121.
2540                 
2541                 Also don't install man3 pages that are just copies of the C implementation files, or just document bugs / todo items.
2542     jelmer
2543         [r918]
2544                 Allow retrieving id and session of MAPI objects.
2545         [r917]
2546                 Add MessageStore and Object Python classes, add bindings for OpenMsgStore, OpenUserMailbox, OpenPublicFolder.
2547         [r916]
2548                 Add stubs for Session class.
2549         [r915]
2550                 Add infrastructure for MAPI python module.
2551         [r914]
2552                 Look for python and python-config binaries.
2553         [r913]
2554                 Remove empty directory.
2555 2008-12-13
2556     jkerihuel
2557         [r910]
2558                 Remove obsolete --properties option and related code
2559
2560 2008-12-10
2561     jkerihuel
2562         [r908]
2563                 Fix RecipientRow member's order
2564
2565 2008-12-09
2566     jkerihuel
2567         [r906]
2568                 - Update to latest samba4 git master revision (3508a66)
2569                 - Fix references to samr info24 struct
2570                 - Add support for assoc_group_id proxy
2571                 - Add support in mapiproxy for bind/alter connections using assoc_group_id
2572                 - Update mapiproxy documentation
2573
2574 2008-12-07
2575     bradh
2576         [r904]
2577                 Improve building. Partially addresses #94.
2578                 
2579                 More work required on this as we work on the 
2580                 portability in the future.
2581         [r903]
2582                 Expose the underlying session.
2583
2584 2008-11-30
2585     bradh
2586         [r901]
2587                 Remove unused --priority option.
2588         [r900]
2589                 These offsets / values can be negative, so we shouldn't
2590                 use unsigned int type to represent them.
2591
2592 2008-11-29
2593     jkerihuel
2594         [r898]
2595                 Fix Logon problem for users running Exchange 2k7 in a clustered Exchange environment.
2596                 
2597                 This patch first tries to forge EssDN Logon string from "o" and "ou" 
2598                 attributes stored in the profile. If Logon fails with ecUnknownUser,
2599                 then try to open the mailbox using the mailbox attribute stored in 
2600                 the profile.
2601
2602 2008-11-28
2603     bradh
2604         [r896]
2605                 Document the --label option.
2606
2607 2008-11-26
2608     jkerihuel
2609         [r893]
2610                 Make openchange compile and work against latest samba4 master git rev (58db2be)
2611     jelmer
2612         [r894]
2613                 Remove check for unused type 'uint_t'.
2614
2615 2008-11-22
2616     bradh
2617         [r888]
2618                 More tweaks on the openchangeclient man1 page.
2619         [r887]
2620                 More updates for man1 page for openchangeclient.
2621                 Still doesn't fully address #113.
2622         [r886]
2623                 Update the openchangeclient man1 page.
2624                 
2625                 Partly addresses ticket #113.
2626                 
2627                 There is still some work to do on this.
2628         [r885]
2629                 Fix a typo, and try to make the descriptions more
2630                 consistent.
2631
2632 2008-11-21
2633     bradh
2634         [r883]
2635                 Initial version of man1 page for mapitest
2636         [r882]
2637                 Initial man1 page for exchange2ical utility.
2638
2639 2008-11-14
2640     bradh
2641         [r879]
2642                 Update man1 page for openchangepfadmin
2643         [r878]
2644                 Minor updates for the man pages.
2645
2646 2008-11-13
2647     jkerihuel
2648         [r875]
2649                 Fix build errors: wrong number of arguments for ocpf_propvalue
2650         [r874]
2651                 Fix warnings when compiling with -Wextra
2652         [r873]
2653                 Fix warnings when compiling with -Wextra
2654         [r872]
2655                 Fix warnings when compiling with -Wextra
2656     bradh
2657         [r876]
2658                 Complete initializers here.
2659
2660 2008-11-10
2661     bradh
2662         [r870]
2663                 Update to reflect latest state of mapiprofile.
2664
2665 2008-11-09
2666     bradh
2667         [r868]
2668                 Prevent segfault when running mapitest. Looks like the we can
2669                 return MAPI_E_SUCCESS even if one of the property values is
2670                 MAPI_E_NOTFOUND. That error then get turned into a char*, and
2671                 strncmp faults.
2672                 
2673                 Also fix a possible bug relating to operator precedence, and 
2674                 a couple of warnings (one for signed / unsigned comparison, and
2675                 the other for an unsigned value never being less than zero).
2676
2677 2008-11-08
2678     bradh
2679         [r866]
2680                 Enable output to stdout.
2681                 
2682                 Resolves ticket #106.
2683                 
2684                 Thanks to raboof for the report and fix.
2685
2686 2008-11-07
2687     bradh
2688         [r864]
2689                 Fix missing initialisers (issue #110).
2690                 
2691                 Also fix some signed/unsigned warnings.
2692         [r863]
2693                 Fix problems with incorrect initialisers (#110) and
2694                 operator precedence.
2695                 
2696                 Also fix a couple of places with signed/unsigned confusion.
2697         [r862]
2698                 Partial fix for issue #110, and a couple of very minor cleanups.
2699
2700 2008-11-06
2701     bradh
2702         [r860]
2703                 Minor cleanups.
2704         [r859]
2705                 We probably want to return here, not do nothing.
2706
2707 2008-11-05
2708     jkerihuel
2709         [r855]
2710                 Fix empty patch function problem: add a retval
2711     bradh
2712         [r857]
2713                 Typo fix.
2714         [r856]
2715                 Explain the boost-thread trick.
2716         [r854]
2717                 Minor documentation tweaks.
2718
2719 2008-11-04
2720     jkerihuel
2721         [r852]
2722                 - remove usage of global_loadparm in libmapiadmin
2723                 - make use of session context rather than global_mapi_ctx in libmapiadmin
2724                 - use local context rather than mapiadmin context in libmapiadmin
2725                 - libmapiadmin now uses ldb helper rather than raw implementation (ldb async code)
2726                 - libmapiadmin and openchangepfadmin now works again (user creation/deletion) !! ;-)
2727                 - remove global_loadparm in torture test and replace it with torture context
2728                 - fix dcerpc_init to match latest samba4 API
2729                 - update samba4 version required to build openchange
2730     bradh
2731         [r850]
2732                 More API documentation tweaks.
2733         [r849]
2734                 More API documentation tweaks.
2735         [r848]
2736                 Some API dox fixes for libmapi++.
2737     jelmer
2738         [r851]
2739                 Remove unnecessary patching of lib/events/events.h.
2740
2741 2008-11-03
2742     bradh
2743         [r846]
2744                 Update to a more recent Samba4.
2745     jelmer
2746         [r845]
2747                 Remove some usages of deprecated global_loadparm.
2748         [r844]
2749                 Cope with new argument to dcerpc_log_packet().
2750
2751 2008-11-01
2752     jelmer
2753         [r842]
2754                 Fix includes for DEBUG(), fix some more warnings.
2755         [r841]
2756                 Use same_net_v4 rather than deprecated same_net().
2757         [r840]
2758                 Fix Samba 4 git revision.
2759         [r839]
2760                 Fix includes - debug.h can only be included once.
2761         [r838]
2762                 Include debug header.
2763         [r837]
2764                 Cope with API changes in Samba functions.
2765         [r836]
2766                 Use new function is_zero_ip_v4 rather than removed is_zero_ip.
2767
2768 2008-10-31
2769     jkerihuel
2770         [r833]
2771                 Fix OpenMsgStore binding in swig perl and fetchmail script
2772
2773 2008-10-21
2774     jkerihuel
2775         [r824]
2776                 Fix pointless const definition for GetFreeBusyYear return type
2777 2008-10-20
2778     jkerihuel
2779         [r823]
2780                 - Add the IsFreeBusyConflict convenient function which checks if a
2781                   given date conflicts with existing FreeBusy Busy/OOF events
2782                 
2783                 - Modify openchangeclient --sendappointment behavior to check whether
2784                   start or end date conflicts with FreeBusy published data for the
2785                   user.
2786                 
2787                 - Add the --force option to openchangeclient to override this behavior
2788                 
2789                 - Fix a counter bug in mapidump_freebusy_events
2790         [r821]
2791                 Fix doxygen typo error
2792         [r820]
2793                 - Add GetUserFreeBusyData convenient function which retrieves FreeBusy
2794                   data in public folders for a given user. Note: Ambiguous name is not
2795                   supported at the moment.
2796                 
2797                 - Add convenient FreeBusy mapidump routines
2798                 
2799                 - Add FreeBusy read support to openchangelient
2800                 
2801                 - Add PT_MV_LONG and PT_MV_BINARY support to pull_emsmdb_property and
2802                   property.c functions
2803                 
2804                 - Add OpenUserMailbox which let developers open other mailboxes
2805                   instead of the default profile one.
2806                 
2807                 - Add GetABRecipientInfo: convenient function which retrieves Address
2808                   Book information for a given recipient
2809
2810 2008-10-17
2811     jkerihuel
2812         [r818]
2813                 - Add libmapi implementation for DeletePropertiesNoReplicate
2814                 - Add mapitest test units for DeleteProps and DeletePropertiesNoReplicate
2815         [r817]
2816                 Fix doxygen documentation
2817
2818 2008-10-16
2819     jkerihuel
2820         [r815]
2821                 - Implement multisession into libmapi
2822                 - Update openchange tools and suite to reflect these changes
2823                 - Fix SRow_addprop behavior
2824                 
2825                 NOTE: OpenMsgStore, ResolveNames, GetGALTable and RFR functions
2826                 now take a mapi_session parameter.
2827     jelmer
2828         [r814]
2829                 Use my openchange.org email address.
2830
2831 2008-10-09
2832     jkerihuel
2833         [r812]
2834                 - Add a session management API for mapiproxy modules. Similar code
2835                   already existed for mpm_cache module. Common functions are now
2836                   available to all mapiproxy modules through libmapiproxy
2837                 
2838                 - replace smbd with samba in mapiproxy documentation
2839         [r811]
2840                 - Cache calendar, contact, journal, note, task and drafts folders IDs
2841                   when GetDefaultFolder call is performed on one of these folders and
2842                   keep them until obj_store is released.
2843                 
2844                 - Add a reverse lookup routine which says whether a given FID belongs
2845                   to a default folder and which olFolderType it is.
2846         [r810]
2847                 - Remove pointless memory context in GetDefaultFolder
2848                 - Move entryID to FID code into a separated routine (GetFIDFromEntryID)
2849         [r809]
2850                 Restore install rule for mapi profiles ldif files in
2851                 libmapi-installscript. Fix the MAPI_E_NO_ACCESS bug when mapiprofile
2852                 tries to create a new mapi profile store.
2853 2008-10-08
2854     jkerihuel
2855         [r808]
2856                 - Ticket #103 resolved. openchangeclient can now perform custom folder lookup, fetch, mkdir and rmdir.
2857                 - mapi_object_copy routine added to mapi_object.c
2858
2859 2008-10-06
2860     jkerihuel
2861         [r806]
2862                 Fix missing Month field in LogonTime structure
2863 2008-10-05
2864     jkerihuel
2865         [r805]
2866                 propagate IDL warning fix to property.idl
2867     jelmer
2868         [r804]
2869                 Add target for building python API documentation.
2870 2008-10-01
2871     jkerihuel
2872         [r802]
2873                 Fix samba4 release and git revision
2874         [r801]
2875                 Fix installsamba4.sh script paths
2876     jelmer
2877         [r803]
2878                 Avoid warning.
2879         [r800]
2880                 Install OpenChange python modules.
2881         [r799]
2882                 Check for python dir during configure.
2883         [r798]
2884                 ignore generated files.
2885         [r797]
2886                 Stop installing js files.
2887         [r796]
2888                 Use autoconf cache prefix.
2889         [r795]
2890                 Use newer version of Samba 4.
2891 2008-09-30
2892     jkerihuel
2893         [r791]
2894                 Remove dcesrv_exchange.so from server Makefile rule and
2895                 move mapiproxy from TOOLS to SERVER.
2896                 
2897                 dcesrv_exchange and providers Makefile rules are orphan, planned
2898                 to be removed (with their associated code) when emsabp merge process 
2899                 into mapiproxy is over.
2900 2008-09-23
2901     bradh
2902         [r790]
2903                 Export the Binary_r structure.
2904 2008-09-22
2905     bradh
2906         [r789]
2907                 Use more descriptive variable names in messages example code.
2908         [r788]
2909                 Add a description of messages to libmapi++ API documentation.
2910         [r787]
2911                 Add messages binary to the ignore list.
2912         [r786]
2913                 Add new example showing libmapi++ message handling, and
2914                 associated API documentation and build system changes.
2915 2008-09-21
2916     bradh
2917         [r785]
2918                 Update the API documentation main page for libmapi++
2919 2008-09-19
2920     jkerihuel
2921         [r784]
2922                 Add foldertree binary to the ignore list
2923         [r783]
2924                 - Add missing Input parameter
2925                 - Add sanity check on ppNames
2926                 - Fix ticket #102
2927         [r781]
2928                 - Fix a bug in NspiUpdateStat: make plDelta mandatory and use it for in,out
2929                 - Add a NspiGetSpecialTable test for Address Creation Template
2930     bradh
2931         [r780]
2932                 Fix valgrind-reported error, per ticket #101.
2933         [r779]
2934                 Make sure we clean up after mapitest runs.
2935                 
2936                 Resolves ticket #84
2937 2008-09-17
2938     jkerihuel
2939         [r778]
2940                 - Add msExchUserAccountControl attribute to extended user record
2941                 - openchange_newuser can now create/enable/disable an OpenChange account
2942         [r776]
2943                 Exit the test if the WriteStream operation fails
2944         [r773]
2945                 Fix ncacn_ip_tcp binding string for OpenChange server object
2946         [r772]
2947                 With new NSPI IDL, using cValues - 1 is incorrect and lead to errors. Use cValues directly instead
2948         [r771]
2949                 Fix pipe function check and use ndr autogenerated defines rather than static strings
2950                 Fix calls to NspiDNToMId
2951     bradh
2952         [r774]
2953                 Make sure we set the body and body format properties, to
2954                 ensure that the message is shown correctly with 
2955                 openchangeclient -F.
2956 2008-09-16
2957     jkerihuel
2958         [r770]
2959                 - Fix provisioning
2960                 - Rename oc_* python scripts to openchange_*
2961                 - Add Full Exchange 2003 schema (classes and attributes)
2962                 - Full Exchange 2003 modified classes and attributes support 
2963                 - Add prefixmap OID for some Exchange classes and attributes
2964                 - Add missing ADSC classes and attributes
2965                 - Improve configuration LDIF file with new objects
2966                 
2967                 NOTE: provision.py should find a way to handle firstorg properly
2968                 NOTE: oc_provision_configuration.ldif is still incomplete
2969     bradh
2970         [r768]
2971                 API documentation improvements.
2972 2008-09-15
2973     bradh
2974         [r767]
2975                 Add an example to the libmapi++ documentation, and 
2976                 the right build magic and doxygen linkage.
2977         [r766]
2978                 Minor API documentation fix
2979 2008-09-14
2980     bradh
2981         [r765]
2982                 Add forgotten part of API documentation fixes for mapitest.
2983         [r764]
2984                 Improve mapitest API documentation.
2985 2008-09-13
2986     bradh
2987         [r763]
2988                 Use new DeleteFolder flags to clean up folders on deletion.
2989                 
2990                 This doesn't completely resolve ticket #84, but it does help.
2991         [r762]
2992                 Ignore API documentation.
2993         [r761]
2994                 Add Doxyfile to ignore list.
2995         [r760]
2996                 Add initial support for Doxygen API documentation
2997                 for libmapiadmin.
2998 2008-09-12
2999     bradh
3000         [r759]
3001                 Implement the remainder of the standard public folders.
3002 2008-09-10
3003     bradh
3004         [r758]
3005                 Only do header line removal at the start of the file
3006                 (lines 20 through 40 seems like a good compromise).
3007         [r757]
3008                 libmapi++ is C++, not C, so we should not optimise
3009                 Doxygen output for C.
3010 2008-09-09
3011     jkerihuel
3012         [r755]
3013                 - Update the Logon_repl IDL (0xFE) and implementation
3014                 - Add new folders to the mapi_obj_store for PF folders
3015                 - rename pf_finder to pf_search 
3016     bradh
3017         [r756]
3018                 Suppress some more unwanted headers.
3019 2008-09-08
3020     jkerihuel
3021         [r754]
3022                 - Add GetStoreState (0x7b) IDL, implementation and mapitest unit
3023         [r753]
3024                 Fix typo error
3025         [r752]
3026                 - Update the EmptyFolder IDL
3027         [r751]
3028                 - Update the SearchFlags enum, GetSearchCriteria and SetSearchCriteria IDL
3029                 - Add mapitest units for GetSearchCriteria and SetSearchCriteria
3030         [r750]
3031                 Link libmapi++ documentation to main apidocs page
3032         [r749]
3033                 Update GetAttachmentTable IDL and remove the unknown field
3034         [r748]
3035                 - Update DeleteFolder IDL and implementation
3036                 - It now supports DeleteFolderFlags as input parameter and can return the ParticalCompletion state
3037                 - Sanity checks added at the beginning of the function
3038         [r747]
3039                 - Rename GetRowCount to QueryPosition
3040                 - IDL, implementation, documentation and openchange code updated
3041                 - ActionType enum fields prefixed with 'ActionType_'. Original
3042                 values were causing conflicts while building Perl bindings with
3043                 'i386-linux-thread-multi/CORE/opnames.h where OP_DELETE was already defined'
3044         [r746]
3045                 Change enum SaveFlags to uint8_t for doxygen documentation to be generated properly
3046         [r743]
3047                 - Update SaveChangesMessage IDL and implementation
3048                 - Add a SaveFlags parameter to SaveChangesMessage function
3049                 - update openchange code to reflect this change
3050     bradh
3051         [r745]
3052                 Build fix / fix for ticket #99.
3053         [r744]
3054                 Filter out some new #include lines.
3055                 
3056                 This needs to be applied to other modules too.
3057 2008-09-07
3058     jkerihuel
3059         [r742]
3060                 Update SRow and SRowSet IDL
3061         [r741]
3062                 Delete obsolete input_locale and instance_key structures
3063         [r740]
3064                 Fix WStringArray_r IDL
3065         [r739]
3066                 - Move from MV_UNICODE_STRUCT and LPWSTR to WStringArray
3067                 - LPWSTR structure removed
3068         [r738]
3069                 Rename SDateTimeArray to DateTimeArray_r
3070         [r737]
3071                 Rename SGuidArray to FlatUIDArray_r and fix the IDL
3072         [r736]
3073                 Rename MV_LONG_STRUCT to LongArray_r
3074         [r735]
3075                 Rename SBinary to Binary_r
3076         [r734]
3077                 - Add removal of libmapi++ Doxyfile in make distclean rule
3078                 - Add Doxyfile to svn:ignore 
3079         [r733]
3080                 Rename SShortArray to ShortArray_r
3081         [r732]
3082                 - Move from SLPSTRArray to StringArray_r
3083                 - LPSTR structure removed
3084         [r731]
3085                 Rename MAPIUID to FlatUID_r
3086         [r730]
3087                 Fix lexer warnings during compilation (ticket #100)
3088         [r729]
3089                 - Update the EcDoConnect IDL (ref. ticket #99)
3090                 - Add new fields to the emsmdb info structure
3091                 - Add doxygen comments to libmapi/emsmdb.c
3092     bradh
3093         [r728]
3094                 Reduce warnings when compiling with 64-bit arch.
3095         [r727]
3096                 Initial checkin of infrastructure for libmapi++ API documentation.
3097 2008-09-06
3098     jkerihuel
3099         [r726]
3100                 - MAJOR NSPI protocol and libmapi stack update
3101                 - All NSPI protocol functions implemented
3102                 - NSPI stack fully documented
3103                 - NspiGetHierarchyInfo renamed to NspiGetSpecialTable
3104                 - NspiDNToEph renamed to NspiDNToMId
3105                 - instance_key removed from nspi_context and set as a parameter to NSPI functions
3106                 - SPropertyRestriction renamed to PropertyRestriction_r
3107                 - FlagList structure removed and replaced by a SPropTagArray
3108                 - MAPI_SETTINGS removed and replaced by a STAT structure
3109                 - new MAPI property tags added to libmapi/conf/mapi-properties
3110                 - NSPI module added to mapitest
3111     bradh
3112         [r725]
3113                 Clean up on failure.
3114         [r724]
3115                 Clean up on failure.
3116         [r723]
3117                 Minor improvements to ensure cleanup on failure.
3118         [r722]
3119                 API documentation fix
3120         [r721]
3121                 API documentation fix.
3122         [r720]
3123                 API documentation fix.
3124         [r719]
3125                 API documentation fix.
3126         [r718]
3127                 API documentation fixes.
3128 2008-09-05
3129     bradh
3130         [r717]
3131                 API documentation fixes.
3132 2008-09-04
3133     jkerihuel
3134         [r716]
3135                 Fix EMSMDB 0xb function name
3136         [r715]
3137                 - update EcRRegisterPushNotification IDL
3138                 - update Notify IDL
3139                 - implement complete MAPI notifications
3140                 - update libmapi to reflect these changes
3141                 - make openchangeclient prints a brief summary for each notification found
3142                 - update ulEventMask used in openchangeclient
3143 2008-09-03
3144     jkerihuel
3145         [r714]
3146                 - Rename Advise MAPI call to RegisterNotification
3147                 - Update RegisterNotification IDL and implementation
3148 2008-09-02
3149     jkerihuel
3150         [r713]
3151                 - Fix Restrict IDL and implementation
3152                 - Add a new parameter to the Restrict function
3153                 - close ticket #32
3154         [r712]
3155                 Add mapi_nameid.h to the ignore list
3156         [r711]
3157                 - Replace libmapi/mapi_nameid.h with a generated mparse file
3158                 - Add a mapi_nameid.h parser to mparse.pl
3159                 - Add canonical names for named properties
3160                 - GetProps and SetProps resolves named properties if they exist
3161                 - named properties can now be set directly and make mapi_nameid API be
3162                   optional.
3163                 - replace named property tags hex value with their canonimal names
3164                 - replace several use of the mapi_nameid API with smaller code
3165         [r710]
3166                 - Add new IDL file (property.idl) to push/pull structures from binary
3167                   blobs and not directly related to any MAPI calls. Include the
3168                   generated property.h file into libmapi.h
3169                 
3170                 - Add PT_MV_STRING8 support in pull_emsmdb_property (GetProps reply
3171                   parsing) and mapidump_SPropValue
3172                 
3173                 - Add functions to property.c to retrieve RecurrencePattern,
3174                   TimeZoneStruct and GlobalObjectId structures (see property.idl).
3175                 
3176                 - add a preliminary version of exchange2ical tool. This version only
3177                   dumps calendar folder appointments into ICS file on standard output.
3178 2008-08-30
3179     jkerihuel
3180         [r709]
3181                 - Update mapi-nameid-properties with a more complete set of properties
3182                 - Add a header to mapi-nameid-properties for sanity purposes
3183                 - Move named properties with PT_STRING8 type to PT_UNICODE
3184                 - update openchange code to reflect these changes
3185                 - Add PSETID_Attachment to mapidefs.h
3186 2008-08-28
3187     jkerihuel
3188         [r707]
3189                 Add missing check on password for the create command
3190         [r706]
3191                 Fix incorrect usage of realm in mapiproxy
3192 2008-08-27
3193     jkerihuel
3194         [r705]
3195                 Check for provider_rpc_connection retval for RFR functions.
3196         [r704]
3197                 Update Doxyfile to parse mapiproxy/modules files and
3198                 include documentation on static functions.
3199         [r703]
3200                 - Add NSPI hook on NspiQueryRows and NspiDNToEph and replace the
3201                   Exchange server name with mapiproxy one.
3202                 - documentation updated to reflect these changes
3203                 - new FAQ question added
3204                 - developer documentation improved
3205         [r702]
3206                 Add the RFR mapiproxy file.
3207         [r701]
3208                 - Implement RfrGetNewDSA DN replacement in mapiproxy
3209                 - use lp_realm rather than sockaddr in NspiGetProps (FQDN rather than IP address)
3210                 - update mapiproxy documentation to reflect these changes
3211 2008-08-26
3212     jkerihuel
3213         [r698]
3214                 - Add implementation of the NSPI Referral protocol (exchangeRFR)
3215                 - update dcesrv_exchange and mapiproxy prototypes for RFR
3216                 - add references to the RFR pipe in mapiproxy
3217                 - prefix NSPI client connections with a RfrGetNewDSA call
3218                 - add RFR functions implementation in libmapi/IMSProvider.c
3219                 - add a --getfqdn option to mapiprofile
3220                 - fix a minor mapiprofile option parsing bug
3221 2008-08-25
3222     jkerihuel
3223         [r697]
3224                 Fix mapiproxy dummy module unbind prototype
3225         [r696]
3226                 - Remove flags in EcDoRpc top function, fix compilation vs latest samba4-git version
3227                 - EcDoRpc indent updated
3228 2008-08-15
3229     clsk
3230         [r694]
3231                 Get rid of initialization order warning
3232 2008-08-11
3233     jkerihuel
3234         [r691]
3235                 - add unbind hook for mapiproxy
3236                 - add ahead mapiproxy mode
3237                 - add read ahead in cache module
3238                 - add synchronization mechanism in cache module
3239                 - update mapiproxy documentation to reflect these changes
3240 2008-08-08
3241     bradh
3242         [r690]
3243                 Temporarily comment out installation of files removed
3244                 in r683.
3245 2008-08-01
3246     jelmer
3247         [r685]
3248                 Fix arguments, paths in provision scripts.
3249         [r683]
3250                 Merge python provision/newuser scripts.
3251         [r681]
3252                 Simplify installation of manpages a bit.
3253 2008-07-29
3254     jkerihuel
3255         [r679]
3256                 Add configure check for libboost-thread. Add libmapi++ to the build
3257                 only if it is available.
3258 2008-07-27
3259     clsk
3260         [r678]
3261                 - session constructor doesn't login to the server anymore, it calls MAPIInitialize().
3262                 - Created session::login() members.
3263                 - test applications use default profile.
3264 2008-07-26
3265     jkerihuel
3266         [r676]
3267                 - Import Alan Alvarez work from libmapi++ into trunk
3268                 - Add a g++ check in configure.ac: don't call libmapi++ rules if g++
3269                   is missing
3270                 - Add libmapi++ to the build system
3271                 - Add a patch function to installsamba4.sh: rename private to
3272                   private_data in samba4 events.h header file
3273                 - Change #include directives so it uses <libmapi++ ... rather than
3274                   relative paths.
3275 2008-07-24
3276     jkerihuel
3277         [r674]
3278                 - Add a statitic function monitoring streams over OpenStream and Last
3279                   ReadStream operations. Monitoring stream Release is not relevant
3280                   since Outlook does not close the handle directly after last
3281                   ReadStream operation. Should put in evidence difference between
3282                   non-cached(1st retrieval) and cached (further retrieval).
3283                 
3284                 - Fix a few memory leaks
3285 2008-07-23
3286     jkerihuel
3287         [r672]
3288                 - Commit initial revision for the mapiproxy cache module
3289                 - Update mapiproxy hook API for the dispatch routine
3290                 - Introduce the mapiproxy structure for modules to control top-level
3291                   mapiproxy behavior.
3292                 - Update mapiproxy documentation to reflect these changes
3293 2008-07-21
3294     jkerihuel
3295         [r670]
3296                 * Fix remaining ByteRead parameter size for ReadStream operations.
3297 2008-07-20
3298     jkerihuel
3299         [r669]
3300                 * Improve/Update Open/Read/WriteStream IDLs
3301                 * Fix ByteRead parameter size for ReadStream operation.
3302 2008-07-19
3303     jkerihuel
3304         [r668]
3305                 Improve OpenAttach, CreateAttach and DeleteAttach IDL - remove unknown
3306                 parameters.
3307         [r667]
3308                 Propagate r666 changes to OpenMsgStore and fix build
3309     bradh
3310         [r666]
3311                 Minor rename of bitmap value to avoid conflict with
3312                 Private as a class name.
3313 2008-07-17
3314     jkerihuel
3315         [r663]
3316                 Minor change: remove old debugging string from mapitest
3317         [r660]
3318                 Fix incorrect header
3319         [r658]
3320                 Remove deprecated mapi_handles API
3321     bradh
3322         [r665]
3323                 Initial checkin of some uno (static checker) support
3324                 files.
3325                 
3326                 There will be a script to run uno with the right options,
3327                 but that requires more work.
3328 2008-07-16
3329     jkerihuel
3330         [r655]
3331                 Fix OXOMSG-ABORT-SUBMIT return value and return success when expected
3332                 error values (MAPI_E_UNABLE_TO_ABORT, ecNoDelSubmitMsg) are encountered.
3333         [r654]
3334                 - Call mapi_object_release in GetDefaultFolder
3335                 - Remove pointless references to mapi_object_t
3336     bradh
3337         [r656]
3338                 Fix little memory leak.
3339 2008-07-15
3340     jkerihuel
3341         [r653]
3342                 Fix invalid OpenFolder calls in mapitest modules
3343         [r652]
3344                 Remove references to SaveChanges in doxygen see also statement
3345         [r651]
3346                 - Rename SaveChanges to SaveChangesAttachment (0x25)
3347                 - Update SaveChangesAttachment IDL
3348                 - Update references to SaveChanges
3349         [r650]
3350                 - Fix the huge memory leak described in Ticket #91
3351                 - Rewrite the mapitest NameID test to use the mapi_nameid convenient
3352                   API
3353 2008-07-12
3354     jkerihuel
3355         [r648]
3356                 - Add mapi_get_errstr auto-generated routine which returns the MAPI
3357                   retval as a string
3358                 - Add print routine for MAPI retval in mapitest
3359                 - Add a color mode (--color) which prints either green or red MAPISTATUS
3360                 - Update mapitest modules to use these new routines
3361     bradh
3362         [r647]
3363                 Minor API documentation fix.
3364 2008-07-11
3365     jkerihuel
3366         [r646]
3367                 Add all MAPI errors
3368         [r645]
3369                 - Add GetOwningServers (0x42) implementation (IDL + libmapi + mapitest)
3370         [r644]
3371                 - Report and make consistent usage of PropertyProblem in the IDL:
3372                   SetProps, DeleteProps and CopyProperties
3373                 
3374                 - Remove unknown field in GetProps and GetPropsAll and replace them
3375                   with the correct IDL mapping.
3376                 
3377                 - Add IDL for SetPropertiesNoReplicate (0x79) MAPI call
3378                 
3379                 - Minor typo fix in IMAPIProp.c
3380         [r643]
3381                 Improve CreateMessage request IDL
3382         [r642]
3383                 Improve OpenMessage response IDL
3384         [r641]
3385                 - Add PublicFolderIsGhosted (0x45) MAPI call (IDL + libmapi + mapitest)
3386                 
3387                 - Improve OpenFolder, CreateFolder and OpenPublicFolderByName response
3388                   IDL: make these call able to check whether the folder is ghosted or
3389                   not.
3390         [r640]
3391                 Revert emsmdb pipe version to the hacked one. Makes mapiproxy work with samba4-alpha5 release.
3392         [r639]
3393                 SeekRow and SeekRowBookmark IDL improved
3394         [r638]
3395                 Improve the SetColumns IDL: remove unknown fields
3396 2008-07-06
3397     jkerihuel
3398         [r637]
3399                 Minor code convention fix
3400         [r636]
3401                 Check NTSTATUS return value from dcerpc_ndr_request. Prevent mapiproxy
3402                 from segfault when invalid dcerpc response is received.
3403         [r635]
3404                 Expose MAPISTATUS error in OXCTABLE-CATEGORY::FreeBookmark. 
3405                 Requires investigation
3406     bradh
3407         [r634]
3408                 Implement GetIdFromLongTermId and GetLongTermIdFromId
3409                 functions (ROP:0x43 and 0x44), and associated mapitest.
3410         [r633]
3411                 Documentation typo fix.
3412         [r632]
3413                 Change the QueryNamesFromIDs() call to match
3414                 MSDN, including changing the name to QueryNamedProperties().
3415                 
3416                 Also implement mapitest for QueryNamedProperties(),
3417                 GetNamesFromIDs() and GetIDsFromNames().
3418                 
3419                 Update torture test to match.
3420 2008-07-05
3421     jkerihuel
3422         [r631]
3423                 - Build system update: use samba4-alpha5 release with wget method
3424                 - introduce 'make samba' and 'make samba-git'
3425 2008-07-04
3426     bradh
3427         [r630]
3428                 Make sure we have names[] array large enough.
3429                 
3430                 Problem identified using default uno run.
3431                 
3432                 Resolves #87.
3433 2008-07-03
3434     jkerihuel
3435         [r629]
3436                 Fix a small errno bug in GetBestBody
3437                 Add dump-data and debug options to exchange2mbox
3438 2008-06-30
3439     jkerihuel
3440         [r627]
3441                 - Move emsmdb interface version back to 0.81 (patch applied in samba4 trunk)
3442                 - remove sed hack, modifications applied in samba4 trunk
3443                 - update required samba4 git rev required
3444     bradh
3445         [r628]
3446                 Typo fix.
3447 2008-06-25
3448     jkerihuel
3449         [r626]
3450                 Minor documentation update: remove deprecated reference to ./bin/smbpython
3451         [r625]
3452                 Fix torture suite entry point name
3453                 Fix torture module installation path
3454         [r624]
3455                 - Add implementation for the BestBody algorithm
3456                 - Add MAPI_E_NOT_ENOUGH_MEMORY error code
3457                 - Remove trailing }}\0 from lzfu code
3458                 - Update openchange tools to use GetBestBody rather than
3459                 the initial check on PR_MSG_EDITOR_FORMAT
3460         [r623]
3461                 Add a very basic stat module for mapitest: gives a quick overview
3462                 of tests which failed at the end of the report.
3463         [r622]
3464                 - Defines a global stream size in mapitest.h
3465                 - Decrease stream size from 0x4000 to 0x3000
3466                   Sounds like Exchange 2003 SP2 doesn't support 0x4000, return MAPI_E_CALL_FAILED
3467                  
3468 2008-06-24
3469     jkerihuel
3470         [r621]
3471                 Fix OC_CHECK_SAMBA_VERSION string
3472         [r620]
3473                 - Move samba4_ver.sh from top dir to script
3474                 - update parts of openchange relying on samba4_ver.sh
3475         [r619]
3476                 Add configure check for lib Z
3477                  
3478         [r618]
3479                 - Temporary fix ldb.pc problem and patch ldb.pc.in
3480                 - Update samba4 version to the latest revision
3481                 - Add libmapiproxy to svn:ignore proplist
3482     bradh
3483         [r617]
3484                 Try a different git revision, just for now.
3485 2008-06-17
3486     jkerihuel
3487         [r614]
3488                 - Update Samba4 version needed
3489                 - Change entry point function from init_module to samba_init_module
3490                 - update documentation
3491 2008-06-16
3492     jelmer
3493         [r613]
3494                 Fix calls of ldb_init() as required by newer versions of Samba.
3495         [r612]
3496                 Avoid bashisms.
3497         [r611]
3498                 Support newer versions of Samba4.
3499 2008-06-14
3500     bradh
3501         [r609]
3502                 Add some other standard GUIDs
3503 2008-06-11
3504     jelmer
3505         [r605]
3506                 Fix silly typo.
3507         [r604]
3508                 Fix linking.
3509         [r603]
3510                 Use version and soversion in mapiproxy library.
3511         [r602]
3512                 Make modules directory overridable.
3513 2008-06-10
3514     bradh
3515         [r601]
3516                 Change API as identified on devel mailing list.
3517                 
3518                 Here is the email:
3519                 After some investigation into an error reported by valgrind, I'm proposing an
3520                 API change for the MoveCopyMessages() function.
3521                 
3522                 The signature is currently
3523                 enum MAPISTATUS MoveCopyMessages(mapi_object_t *obj_src,  mapi_object_t 
3524                 *obj_dst,  mapi_id_t *message_id,  bool WantCopy)
3525                 
3526                 The problem is the message_id array. The subtle part is that it needs to be 
3527                 terminated with a null mapi_id_t*, because of this:
3528                 for (request.count = 0; message_id[request.count]; request.count++);
3529                 
3530                 That is a bit error prone - enough so to be wrong in the mapitest.
3531                 
3532                 Now we could just fix the mapitest and document the requirements, or we could 
3533                 change the signature.
3534                 
3535                 Two ideas for a different signature:
3536                 1. We could add a uint16_t count to the signature, that says how long the 
3537                 array is.
3538                 2. We could use a better data structure than mapi_id_t*. I'm suggesting
3539                 mapi_id_array_t:
3540                 enum MAPISTATUS MoveCopyMessages(mapi_object_t *obj_src,
3541                                                           mapi_object_t *obj_dst,
3542                                                           mapi_id_array_t *message_id,
3543                                                           bool WantCopy)
3544 2008-06-09
3545     bradh
3546         [r600]
3547                 Add mapitest coverage for CopyTo operations on 
3548                 folders and attachments, and update API docs.
3549                 
3550                 Also fix one place where we inadvertently used
3551                 CopyProps instead of CopyTo...
3552 2008-06-08
3553     bradh
3554         [r597]
3555                 Typo fixes in comments.
3556         [r596]
3557                 Minor documentation updates.
3558         [r595]
3559                 Clean up created message for SpoolerLockMessage() test.
3560 2008-06-07
3561     bradh
3562         [r594]
3563                 Update samba4 version test.
3564         [r593]
3565                 typo fix.
3566         [r592]
3567                 Make sure properties are copies into the last valid 
3568                 location in the extended array (i.e. count-1) not the
3569                 count location.
3570                 
3571                 Also, make sure we cast the data to a uint8_t for
3572                 conversion to boolean.
3573                 
3574                 Also fix compile warning about returning integer instead
3575                 of pointer.
3576         [r591]
3577                 We may read up to 0x1000 bytes, so ensure there is
3578                 enough room to add the terminating null.
3579         [r590]
3580                 Minor cleanup of the talloc context for FreeBookmark().
3581                 
3582                 Also change around some code to protect things a bit
3583                 better against null pointer inputs.
3584 2008-06-06
3585     bradh
3586         [r588]
3587                 Implement a bit more mapitest for CopyTo (0x39), in
3588                 support of #83.
3589                 
3590                 Also make it clean up and report failures properly.
3591 2008-06-05
3592     bradh
3593         [r587]
3594                 Implement the CopyTo operation (0x39), including initial mapitest.
3595                 JK previously committed the IDL for this.
3596                 
3597                 Also make CopyProps (0x67) use an appropriate data structure for
3598                 its IDL and update implementation to match.
3599 2008-06-04
3600     bradh
3601         [r586]
3602                 Minor documentation updates/corrections.
3603 2008-06-02
3604     jkerihuel
3605         [r583]
3606                 Introduce a default case for MAPI Restriction. In some circumstances -
3607                 while Outlook creates an OOF Rules - it sets a PT_SRESTRICT mapi
3608                 property tag which value is set to 0xFF. However 0xFF doesn't match
3609                 any restriction case.
3610 2008-06-01
3611     jkerihuel
3612         [r582]
3613                 - Add IDL for OpenEmbeddedMessage (0x46) MAPI call
3614         [r581]
3615                 - Add IDL for ReloadCachedInformation (0x10) MAPI call
3616         [r580]
3617                 - Add IDL for CopyTo (0x39) MAPI call
3618         [r573]
3619                 - Update the Samba4 GIT revision needed to run openchange properly
3620         [r572]
3621                 - import mapiproxy project from mapiproxy branch
3622                 - add custom proxypack MAPI call
3623                 - remove deprecated dcesrv_exchange_remote
3624     bradh
3625         [r579]
3626                 Add missing part of mapitest for SetReadFlags
3627                 
3628                 This should have been part of r578.
3629         [r578]
3630                 mapitest for SetReadFlags
3631         [r577]
3632                 Implement SetReadFlags (operation 0x66).
3633                 
3634                 Also minor API docs fix.
3635         [r576]
3636                 Move some test infrastructure from the oxctable.c module
3637                 into the common area.
3638         [r575]
3639                 Fix IDL error for SetReadFlags, and use existing flags
3640                 define (MSGFLAGS_READ) instead of creating a new set.
3641         [r574]
3642                 Build fix for relocation of mapiproxy/ to be under the
3643                 top level directory (instead of under the utils/
3644                 directory)
3645 2008-05-31
3646     jkerihuel
3647         [r571]
3648                 merge from mapiproxy branch:
3649                       * ndr_push Logon_req manually
3650         [r568]
3651                 merge from mapiproxy branch:
3652                       * Add IDL and server boiler template for EcDoConnectEx (0xA)
3653                         EMSMDB RPC function
3654                 
3655                       * Fix ndr_push_mapi_response code in ndr_mapi.c
3656                 
3657                       * Add the ndr_push_EcDoRpc_MAPI_REPL function in
3658                         ndr_mapi.c. Handles special Notify and Pending cases
3659                 
3660                       * Handle op_MAPI_Pending case properly in
3661                         ndr_pull_EcDoRpc_MAPI_REPL
3662                 
3663                       * Add code to ndr_push QueryRows in ndr_mapi.c: Do not push any
3664                         DATA_BLOB if there is no RowCount
3665         [r565]
3666                 merge from mapiproxy branch:
3667                       * Fix GetReceiveFolder [out] IDL
3668                       * Fix some naming convention typo
3669         [r564]
3670                 merge from mapiproxy branch:
3671                       * Fix SetMessagReadFlag [out] IDL
3672         [r563]
3673                 - Add [flag(NDR_REMAINING)] to SetMessageReadFlag. This is not
3674                   perfect, but it will prevent mapiproxy from ndr_pull error while
3675                   setting message read flag on public folders messages.
3676         [r562]
3677                 merge from mapiproxy branch:
3678                       * Fix CreateMessage [out] IDL
3679         [r561]
3680                 merge from mapiproxy branch:
3681                       * rename OpenModeFlags to OpenFolder_OpenModeFlags in OpenFolder
3682                       * rewrite OpenMessage [in] IDL and report changes in
3683                         libmapi/IStoreFolder.c
3684         [r560]
3685                 merge from mapiproxy branch:
3686                       * Add IDL for Pending (0x6e) MAPI call
3687                       * Reorder some MAPI calls in EcDoRpc_MAPI_REPL_UNION
3688         [r559]
3689                 - Add SetReadFlags to EcDoRpc_MAPI_{REQ,REPL}_UNION
3690         [r558]
3691                 merge from mapiproxy branch:
3692                       * Add IDL for SetSyncNotificationGuid (0x88) MAPI call
3693         [r557]
3694                 merge from mapiproxy branch:
3695                       * Add IDL for SyncGetTransferState (0x82) MAPI call
3696         [r556]
3697                 merge from mapiproxy branch:
3698                       * Add IDL for SyncImportReadStateChanges (0x80) MAPI call
3699                 
3700                 Note: This IDL is temporary and should be improved after completion of
3701                 the merging process.
3702         [r555]
3703                 merge from mapiproxy branch:
3704                       * Add IDL for SyncOpenCollector (0x7e) MAPI call
3705         [r554]
3706                 merge from mapiproxy branch:
3707                       * Add IDL for DeletePropertiesNoReplicate (0x7a) MAPI call
3708         [r553]
3709                 merge from mapiproxy branch:
3710                       * Add IDL for SyncImportMessageMove (0x78) MAPI call
3711         [r552]
3712                 merge from mapiproxy branch:
3713                       * Add IDL for SyncUploadStateStreamBegin (0x75) MAPI call
3714                       * Add IDL for SyncUploadStateStreamContinue (0x76) MAPI call
3715                       * Add IDL for SyncUploadStateStreamEnd (0x77) MAPI call
3716         [r551]
3717                 merge from mapiproxy branch:
3718                       * Add IDL for SyncImportDeletes (0x74) MAPI call
3719         [r550]
3720                 merge from mapiproxy branch:
3721                       * Add IDL for SyncImportHierarchyChange (0x73) MAPI call
3722         [r549]
3723                 merge from mapiproxy branch:
3724                       * Add IDL for SyncImportMessageChange (0x72) MAPI call
3725         [r548]
3726                 merge from mapiproxy branch:
3727                       * Add IDL for SyncConfigure (0x70) MAPI call
3728         [r547]
3729                 merge from mapiproxy branch:
3730                       * Add IDL for RegisterOptions (0x6f) MAPI call
3731                 
3732                 Note: This call is undocumented in Microsoft documentation, but MSDN
3733                 RegisterOptions function generates this call on the wire.
3734         [r546]
3735                 merge from mapiproxy branch:
3736                       * Add IDL for Progress (0x50) MAPI call
3737         [r545]
3738                 merge from mapiproxy branch:
3739                       * Add IDL for FastTransferSourceGetBuffer (0x4a) MAPI call
3740         [r544]
3741                 merge from mapiproxy branch:
3742                       * Add IDL for GetPerUserLongTermIds (0x60) MAPI call
3743                       * Add IDL for GetPerUserGuid (0x61) MAPI call
3744                       * Add IDL for ReadPerUserInformation (0x63) MAPI call
3745         [r543]
3746                 merge from mapiproxy branch:
3747                       * Add IDL for LongTermIdFromId (0x43) MAPI call
3748                       * Add IDL for IdFromLongTermId (0x44) MAPI call
3749         [r542]
3750                 merge from mapiproxy branch:
3751                       * Add IDL for ModifyRules (0x41) MAPI call
3752         [r541]
3753                 merge from mapiproxy branch:
3754                       * Add PT_SRESTRICT support in mapi_SPropValue_CTR
3755                 
3756                       * Add PT_ACTIONS and RuleAction support in mapi_SPropValue_CTR
3757                 
3758                       * Fix mapi_SNotRestriction NDR push routine - add a wrapper to
3759                         work around the no-pointer deep recursion pb and remove
3760                         existing nopull,nopush,noprint code from ndr_mapi.c
3761                 
3762                       * Fix mapi_SComment_Restriction IDL
3763                       
3764         [r540]
3765                 - Introduce PT_MV_UNICODE support in mapi_SPropValue_CTR (IDL only)
3766                 - use mapi_LPWSTR for PT_MV_UNICODE
3767                 - rename mapi_LPWSTR structure to mapi_name in Kind structure and
3768                   change its field names.
3769         [r536]
3770                 - Fix emsmdb version
3771                 - Change MAPI opnum enum identation -- Helps to fine down merging from
3772                   mapiproxy branch
3773     bradh
3774         [r539]
3775                 API docs typo fix.
3776         [r538]
3777                 Minor API documentation fixes.
3778         [r537]
3779                 Update label to reflect SetReadFlags -> SetMessageReadFlag 
3780                 renaming.
3781                 
3782                 This should have been part of r529 - missed it.
3783 2008-05-30
3784     jkerihuel
3785         [r535]
3786                 merging from mapiproxy branch:
3787                         - Fix MV_UNICODE_STRUCT and unicode strings
3788                         - Keep LPWSTR for exchange_nsp and move from LPWSTR to
3789                           mapi_LPWSTR for exchange_emsmdb
3790                         - Add the NspiGetTemplateInfo IDL
3791                         - Fix the NspiUpdateStat IDL
3792         [r534]
3793                 Fix build: SetMessageReadFlag function name was not propagated in the
3794                 module_oxcmsg.c
3795     bradh
3796         [r529]
3797                 Initial merge of changes for rename of SetReadFlags to
3798                 SetMessageReadFlags (op 0x11) and IDL for SetReadFlags 
3799                 (op 0x66).
3800         [r528]
3801                 Use private_data instead of private, for C++ happiness.
3802         [r527]
3803                 Minor cleanup. Using "try" confuses my c++ compiler...
3804         [r526]
3805                 This is really part of r525. It moved to IMAPITable.c
3806         [r525]
3807                 Update the table operations:
3808                  - implement ExpandRow and CollapseRow
3809                  - implement GetCollapseState and SetCollapseState
3810                  - add mapitest coverage for the above, plus the Restrict call
3811                  - implement ResetTable
3812                  - implement FreeBookmark
3813                  - add mapitest coverage for SRowSet parsing code
3814                  - minor IDL fixes
3815                  - various API documentation bits
3816     jelmer
3817         [r533]
3818                 Use right directory for samba4_ver.sh script.
3819         [r532]
3820                 Use common location for Samba 4 git revision.
3821 2008-05-27
3822     bradh
3823         [r522]
3824                 Use PT_ERROR where appropriate.
3825         [r521]
3826                 Update the SRowSet parser, fixing breakage I introduced.
3827 2008-05-26
3828     bradh
3829         [r518]
3830                 Update examples to reflect recent API changes.
3831     jelmer
3832         [r520]
3833                 Don't rely on absolute file paths since the distribution may be installing 
3834                 in other locations.
3835         [r519]
3836                 make scripts executable.
3837 2008-05-25
3838     bradh
3839         [r515]
3840                 Avoid segfaulting if you ask for a specific test or tests and 
3841                 forgot to start the server.
3842                 
3843                 Here is an example:
3844                 [bradh@conferta trunk]$ ./bin/mapitest --mapi-calls=OXCTABLE-CATEGORY --mapi-calls=OXCTABLE-RESTRICT --mapi-calls=NOSERVER-LZFU
3845                 Failed to connect host 192.168.11.77 on port 135 - NT_STATUS_HOST_UNREACHABLE
3846                 Failed to connect host 192.168.11.77 (192.168.11.77) on port 135 - NT_STATUS_HOST_UNREACHABLE.
3847                     MapiLogonEx              : MAPI_E_RESERVED (0xFFFFFFFF)
3848                 #############################[mapitest report]#################################
3849                         [*] Date                     : Sun May 25 11:45:29 2008
3850                         [*] Confidential mode        : [no]
3851                         [*] Samba Information        : 4.0.0alpha4-GIT-44d8b70
3852                         [*] OpenChange Information   : 0.8-SVN-build-510 (Romulus)
3853                 
3854                         [*] System Information       :
3855                                 Kernel name          : Linux
3856                                 Kernel release       : 2.6.23.17-88.fc7
3857                                 Processor            : x86_64
3858                 ###############################################################################
3859                 
3860                 
3861                 [*] NOSERVER-LZFU
3862                 [TEST] NOSERVER-LZFU
3863                 ------------------------------------------------------------------------
3864                         * uncompress_rtf2                    : 0x00000000
3865                         * uncompress_rtf2                    : PASSED
3866                 ------------------------------------------------------------------------
3867                 [RESULT] NOSERVER-LZFU: [SUCCESS]
3868                 ========================================================================
3869                 
3870                 [*] OXCTABLE-RESTRICT
3871                 Server is offline, skipping test: "OXCTABLE-RESTRICT"
3872                 [*] OXCTABLE-CATEGORY
3873                 Server is offline, skipping test: "OXCTABLE-CATEGORY"
3874 2008-05-24
3875     bradh
3876         [r510]
3877                 ignores objects that contain invalid handlers in mapi_object_release().
3878                 
3879                 Patch by Alan Alvarez. Compile tested, passes mapitest on SBS2003.
3880 2008-05-23
3881     bradh
3882         [r507]
3883                 Fix API documentation to match signature.
3884 2008-05-20
3885     bradh
3886         [r504]
3887                 Update QueryRows IDL and implementation to match
3888                 msdn documentation.
3889                 
3890                 The main work here is reworking the SRowSet parsing
3891                 routine.
3892 2008-05-18
3893     bradh
3894         [r501]
3895                 Typo fix - allow cleanup to work properly.
3896 2008-05-17
3897     bradh
3898         [r497]
3899                 Make sure it has a return value.
3900 2008-05-11
3901     bradh
3902         [r495]
3903                 Rename GetColumns remote operation to GetColumnsAll, and 
3904                 fix up IDL and implementation to match.
3905                 
3906                 Add some more unit test coverage, and pretty-up the
3907                 output a little.
3908         [r494]
3909                 Fix up breakage introduced in r493.
3910     jelmer
3911         [r496]
3912                 Make sure nagios directory gets created if it didn't exist yet.
3913 2008-05-10
3914     bradh
3915         [r493]
3916                 Refactor the unit tests.
3917                 
3918                 Extract out the setup and some of the cleanup code.
3919 2008-05-08
3920     jkerihuel
3921         [r490]
3922                 - Update openchange code to work with Samba4 4.0.0alpha4-GIT-44d8b70
3923                 - Use event_context structure
3924                 - update installsamba4.sh script to revert to this revision.
3925                 - update torture modulesdir reference
3926     jelmer
3927         [r492]
3928                 Look a little bit harder for the Samba installation.
3929 2008-05-05
3930     jkerihuel
3931         [r489]
3932                 - Add GetLocalReplicaIds MAPI call (IDL + implementation + mapitest)
3933                 - Add OXCFXICS mapitest module
3934 2008-05-03
3935     jkerihuel
3936         [r488]
3937                 - Fix "the very secret" openchange coding style
3938                 - Add Copyright for our humble new libmapi developer ;-)
3939     bradh
3940         [r487]
3941                 Implement the CopyProperties operation, including
3942                 a mapitest for this.
3943 2008-05-02
3944     jkerihuel
3945         [r485]
3946                 - Add TransportSend MAPI call (IDL + implementation + mapitest). This
3947                 code maybe needs some review regarding memory.
3948         [r484]
3949                 - Add the GetTransportFolder MAPI call (IDL + implementation +
3950                   mapitest)
3951         [r483]
3952                 - Add SpoolerLockMessage MAPI call (IDL + implementation + mapitest)
3953         [r482]
3954                 - Add SetSpooler MAPI call (IDL + implementation + mapitest)
3955         [r481]
3956                 - Add GetRulesTable (IDL + implementation + mapitest)
3957                 - Add the OXORULE mapitest suite
3958     bradh
3959         [r480]
3960                 Typo fix.
3961     jelmer
3962         [r486]
3963                 Make sure config.mk is the last file removed during distclean.
3964 2008-05-01
3965     jkerihuel
3966         [r479]
3967                 - Add the Abort MAPI call (IDL + implementation)
3968                 
3969                 OpenChange doesn't support yet asynchronous operation which explains
3970                 why no associated mapitest test has been implemented. This should be
3971                 done in the future.
3972         [r478]
3973                 - Add the MoveFolder MAPI call (IDL + implementation + mapitest)
3974                 - Fix some typo in mapitest doxygen
3975         [r477]
3976                 - Add MoveFolder MAPI call (IDL + implementation + mapitest)
3977                 - Fix some doxygen stuff
3978                 - add a common function within mapitest which looks for a folder name
3979                   within a container and return the opened folder object on success.
3980         [r476]
3981                 Add auto-generated Doxyfile to the svn ignore list
3982         [r475]
3983                 - Add AbortSubmit MAPI call (IDL + implementation + mapitest)
3984         [r473]
3985                 - Uninitialize MAPI and general memory context at the end of mapitest
3986     bradh
3987         [r474]
3988                 Clean up / flush the stream after use. 
3989                 
3990                 Saves a bit more "still reachable" in valgrind too.
3991 2008-04-30
3992     jkerihuel
3993         [r470]
3994                 - Rename CopyMessages to MoveCopyMessages
3995                 - Improve IDL + implementation and mapitest added
3996     bradh
3997         [r471]
3998                 Make sure the version shown for mapitest documentation
3999                 is automatically set to match the package version.
4000         [r468]
4001                 complete the rest of the API documentation autonumbering.
4002     jelmer
4003         [r472]
4004                 Remove duplicate use of $(SHLIBEXT).
4005         [r469]
4006                 Avoid parallel builds for now.
4007 2008-04-29
4008     jkerihuel
4009         [r467]
4010                 Fix GetContentsTable binding in perl swig
4011         [r466]
4012                 - Improve the GetHierarchyTable and GetContentsTable IDL and public
4013                   IDL implementation (new parameters in,out)
4014     bradh
4015         [r465]
4016                 Initial part of automatic list numbering for doxygen comments.
4017                 
4018                 This doesn't work correctly with the current apidocs.css, which
4019                 turns the list numbers into bullet points for reasons I don't 
4020                 understand.
4021 2008-04-28
4022     jkerihuel
4023         [r464]
4024                 - Improve the DeleteMessages IDL request
4025         [r463]
4026                 - Update libmapi version from 0.7 to 0.8
4027                 
4028                 - Public API change for the GetReceiveFolder function; now takes a
4029                   message class as 3rd parameter.
4030         [r458]
4031                 - Improve GetSearchCriteria request IDL (unknown removed)
4032                 - update libmapi copyright headers 2007 -> 2007-2008.
4033         [r457]
4034                 - Improve the SubmitMessage IDL
4035                 - minor indentation fixed in IMessage.c
4036         [r456]
4037                 - Add CopyToStream MAPI call (IDL + implementation + mapitest)
4038         [r455]
4039                 - Add SeekStream MAPI call (IDL + implementation + mapitest)
4040                 - Add SetStreamSize MAPI call (IDL + implementation + mapitest)
4041         [r454]
4042                 - Add CommitStream MAPI call (IDL + implementation + mapitest)
4043                 - Add GetStreamSize MAPI call (IDL + implementation + mapitest)
4044                 - refactor the stream test to include all stream related operations
4045                 - add a common function which generates a random ASCII blob of data
4046     bradh
4047         [r453]
4048                 Add doxygen support for the mapitest examples.
4049     jelmer
4050         [r459]
4051                 Allow cleaning individual parts.
4052 2008-04-27
4053     jkerihuel
4054         [r452]
4055                 - Add GetStatus call (IDL + implementation + mapitest)
4056         [r451]
4057                 - Fix format string problem in mapitest headers
4058         [r450]
4059                 Run offline suites by default.
4060         [r449]
4061                 - Introduce the online/offline mode for suite
4062                 - Fix Exchange headers print bug when server is offline
4063                 - reset errno to 0 before running new test
4064     bradh
4065         [r447]
4066                 Install the libmapiadmin.h header.
4067         [r446]
4068                 Fix a compile-time warning on amd64, for the second
4069                 argument to the getline() call - incompatible pointer
4070                 type.
4071                 
4072                 I'm assuming that size_t is equivalent to uint32_t
4073                 on a 32-bit architecture, but not on a 64-bit arch.
4074                 
4075                 A quick test showed no difference in actual output.
4076     jelmer
4077         [r448]
4078                 Remove bashisms in installsamba4.sh
4079 2008-04-26
4080     jkerihuel
4081         [r445]
4082                 - Add ReadRecipients MAPI call (IDL + implementation + mapitest)
4083                 - Improve some ModifyRecipients and Recipients structure naming
4084 2008-04-25
4085     jkerihuel
4086         [r444]
4087                 - Add RemoveAllRecipients call (IDL + implementation + mapitest)
4088         [r443]
4089                 - Add OpenPublicFolderByName call added (IDL and implementation).
4090                 
4091                 - Note: the reply IDL doesn't handle Server and ServerCount yet.
4092                 
4093                 - Note: this call only refers to NNTP folders (e.g: folders located
4094                 within "Internet Newsgroups". If developers use this call within "All
4095                 Public Folders", then the call with return MAPI_E_NOT_FOUND.
4096                 
4097                 - Call not added to mapitest cause it require RightsAuthor permissions
4098                 on Internet Newsgroups which is not the case by default.
4099                 
4100                 - dump-data and debug options added to mapitest
4101                 - FOLDER suite renamed to OXCFOLD (naming convention)
4102         [r441]
4103                 Rename module folder to oxcfold
4104         [r440]
4105                 Replace the existing mapitest tool with a new implementation. It is
4106                 less complete but more modular.
4107     jelmer
4108         [r442]
4109                 Add proto headers to ignore file.
4110 2008-04-20
4111     jkerihuel
4112         [r438]
4113                 OpenFolder request: replace unknown field with OpenModeFlags
4114         [r437]
4115                 - Rename 0xFE opnum from OpenMsgStore to Logon
4116                 - Update the Logon request IDL
4117     bradh
4118         [r439]
4119                 Add BEGIN_DECLS for private_proto.h.
4120         [r436]
4121                 Add forgotten part of rev435.
4122         [r435]
4123                 Add unit test framework for compressed RTF decoding.
4124                 
4125                 Refactor lzfu.c to improve testability.
4126 2008-04-19
4127     jkerihuel
4128         [r434]
4129                 Fix openchangeclient --mailbox --pf with wasn't launched anymore due
4130                 to some incorrect sanity check tests.
4131         [r433]
4132                 - Remove deprecated fuzzer_msgstore torture test
4133                 - replace mapi_flags with logon_id in EcDoRpc_MAPI_REQ
4134 2008-04-16
4135     bradh
4136         [r432]
4137                 A couple of minor fixes to make it read better.
4138     jelmer
4139         [r431]
4140                 properly clean up sofiles
4141         [r430]
4142                 Import exchange nagios check script by Bill Edmunds.
4143         [r429]
4144                 Add support for creating libocpf soname symlink.
4145         [r428]
4146                 Use standard include for uint64_t definition.
4147         [r427]
4148                 Cleanup talloc and tdb before building samba4.
4149 2008-04-14
4150     jkerihuel
4151         [r426]
4152                 Check for ocpf_set_Recipients retval (MAPI_E_NOT_FOUND)
4153         [r425]
4154                 - Reset ocpf to NULL after release so the ocpf_init/release couple can be called more than once.
4155                 - Sanity check on recipient, avoid parsing if no recipient is set. Return MAPI_E_NOT_FOUND instead.
4156         [r424]
4157                 Add reference to the ocpf lib within the pc file.
4158 2008-04-09
4159     jelmer
4160         [r423]
4161                 Remove duplicate SWIG instructions (already covered by stdint.i).
4162         [r422]
4163                 Ignore files created by swig.
4164         [r421]
4165                 Use config.mk in swig/perl/Makefile.
4166         [r420]
4167                 Allow sambaprefix and prefix to be different. Allow building with unknown 
4168                 Samba git revisions (will still warn though).
4169         [r419]
4170                 Add --with-samba argument to configure so samba and openchange can be installed in different directories.
4171 2008-04-08
4172     jkerihuel
4173         [r418]
4174                 Add domain to the mapiprofile dump output.
4175         [r417]
4176                 Fix OpenMessage IDL and GetRecipientTable fetched data
4177                 
4178                 -This line, and those below, will be ignored--
4179                 
4180                 _M   trunk
4181                 M    trunk/exchange.idl
4182                 M    trunk/libmapi/IStoreFolder.c
4183                 M    trunk/libmapi/emsmdb.c
4184                 M    trunk/libmapi/IMessage.c
4185 2008-04-07
4186     jelmer
4187         [r416]
4188                 Fix typo, change samba-config -> samba-hostconfig.
4189 2008-04-06
4190     jkerihuel
4191         [r415]
4192                 - Add openchangepfadmin to make install
4193                 - Add openchangemapidump and locale_codepage to make clean
4194 2008-04-05
4195     jelmer
4196         [r413]
4197                 Merge the samba4-latest branch.
4198 2008-04-03
4199     jkerihuel
4200         [r408]
4201                 Revert so version number to 0.7
4202         [r407]
4203                 Fix Perl bindings: update mapidump_message
4204         [r405]
4205                 ** Start libmapi-0.8 ROMULUS development **
4206         [r402]
4207                 Add ChangeLog and apidocs to the releases
4208         [r400]
4209                 - Delete unmaintained regression suite
4210                 - Fix typo error in torture-clean rule
4211         [r399]
4212                 Add modified release script originally from abartlett/samba4
4213         [r398]
4214                 - Check for specific Samba4 git revision in configure.ac
4215                 - Prefix locale functions with lcid and make them _PUBLIC_
4216     bradh
4217         [r406]
4218                 API documentation update.
4219     jelmer
4220         [r403]
4221                 Fix some typos.
4222 2008-04-02
4223     jkerihuel
4224         [r397]
4225                 Add installation script for samba4
4226         [r396]
4227                 - Apply the nspi pointer patch - make openchange works with
4228                 samba4-alpha3 git 41309dc
4229                 
4230                 - update howto.txt
4231     bradh
4232         [r390]
4233                 Move the top level API documentation to an "overview"
4234                 section and add a redirect to that overview.
4235                 
4236                 This keeps the doxygen output more nicely separated for
4237                 packaging.
4238                 
4239                 Also, generate the man pages where the install expects
4240                 to find them.
4241 2008-04-01
4242     jkerihuel
4243         [r388]
4244                 - Fix strsep bug in openchangeclient
4245                 - Add RECIPIENT support to libocpf
4246         [r383]
4247                 - escape/unescape strings support added
4248                 - PT_MV_STRING8 type added to OCPF write API
4249 2008-03-31
4250     jkerihuel
4251         [r382]
4252                 - return MAPI_E_NOT_FOUND if NspiGetMatches doesn't return any results
4253                   (based upon patch from lofi@mountproc.org)
4254                 - makes the workstation parameter of mapiprofile optional (use
4255                   gethostname if not defined by the user on command line)
4256         [r381]
4257                 - Fix an allocation memory problem in cast_SPropValue
4258                 - update svn:ignore proplist
4259 2008-03-30
4260     jkerihuel
4261         [r380]
4262                 Update the documentation build so it keeps generating an embedded
4263                 website in with apidocs/html as root directory.
4264         [r378]
4265                 - Add support for PT_UNICODE and PT_SHORT to libocpf
4266                 - Initial implementation of the libocpf write API
4267                 - Update libocpf documentation
4268                 - add --ocpf-dump option in openchangeclient
4269                 - Fix realdistclean rules for server
4270                 - add cast_SPropValue function to libmapi/property.c which cast
4271                   mapi_SPropValue to SPropValue
4272     bradh
4273         [r379]
4274                 Split API documentation into two separate sections - one
4275                 for libmapi and one for libocpf.
4276                 
4277                 Also add in a top level intro page.
4278 2008-03-27
4279     jkerihuel
4280         [r376]
4281                 New build system which gathers a list of things that can be built with
4282                 the libraries/utilities the user has installed and build that when
4283                 "make all" is run.
4284 2008-03-26
4285     jkerihuel
4286         [r375]
4287                 Add missing allocation for OLEGUID
4288         [r373]
4289                 --ocpf-syntax doesn't require MAPI to be initialized. Furthermore
4290                   makes ocpf-syntax "exclusive" (quit after performing the operation).
4291     bradh
4292         [r372]
4293                 r371 was bad. What was I thinking with that nonsense!
4294                 
4295                 Revert to something sane.
4296         [r371]
4297                 Make the ./bin/ directory if it doesn't exist.
4298                 
4299                 This should resolve ticket #33.
4300 2008-03-23
4301     bradh
4302         [r370]
4303                 Improve language handling when creating profiles.
4304                 
4305                 You can now get a list of valid languages and use either
4306                 the language code ID or the language name to specify what
4307                 language later versions of Exchange should reply with.
4308         [r369]
4309                 Typo fix - duplicate ; at the end of the structure.
4310         [r368]
4311                 Match format to unsigned int argument.
4312         [r367]
4313                 Make the format specifier match the unsigned argument.
4314 2008-03-22
4315     jkerihuel
4316         [r366]
4317                 propset svn:ignore update
4318         [r365]
4319                 Update propset svn:ignore on doc/examples and libocpf targets
4320         [r364]
4321                 - Fix ticket #29: http://trac.openchange.org/ticket/29
4322                 
4323                 - use access(2) to see if the database already exists
4324                 - test if the profile already exists prior trying to add it
4325                 - add descriptive error messages
4326                 - catch CTRL-C signal and run a profile deletion routine
4327     bradh
4328         [r363]
4329                 Update API documentation for ocpf_nproperty_add().
4330         [r362]
4331                 Typo fix.
4332 2008-03-16
4333     jkerihuel
4334         [r361]
4335                 Fix mapidump_message call parameters
4336 2008-03-13
4337     jkerihuel
4338         [r360]
4339                 Add fid/mid parameters to mapidump_message and changed
4340                 openchangeclient_fetchitems to reflect these changes.
4341         [r359]
4342                 Patch from Brad Hards <bradh@frogmouth.net>:
4343                 updates the OCPF doxygen file.
4344         [r358]
4345                 Patch from Brad Hards <bradh@frogmouth.net>:
4346                 adds the doc/examples into the build system and enables make examples.
4347         [r357]
4348                 Patch From Brad Hards, <bradh@frogmouth.net>:
4349                 API documentation update and minor fix for the error value change.
4350 2008-03-09
4351     jelmer
4352         [r355]
4353                 Update bzr ignores.
4354 2008-03-06
4355     jkerihuel
4356         [r354]
4357                 - Add PT_BINARY property support to OCP
4358                 - Add stream support to OCPF for large PT_BINARY blobs.
4359                 - Fix a bug which prevented from having no/empty PROPERTY or NPROPERTY
4360                   sections.
4361 2008-03-05
4362     jkerihuel
4363         [r353]
4364                 - Prevent from assigning a value which type doesn't match with
4365                   the property one.
4366                 - Add missing substitution variable support for some named properties
4367                   declaration
4368                 - Improve sample_appointment.ocpf example
4369                 - Add PT_MV_STRING8 keyword to the list of supported property type
4370                   identifiers.
4371 2008-03-04
4372     jkerihuel
4373         [r352]
4374                 Improve OCPF PT_MV_STRING8 support.
4375         [r351]
4376                 - Initial revision for libocpf and its documentation
4377                 - YACC support added to the build system
4378                 - custom lid and string support in mapi_nameid
4379                 - lookup functions added for OOM, lid and string
4380                 - OCPF commands added to openchangeclient (ocpf-file, ocpf-syntax,
4381                   ocpf-sender)
4382                 - PR_FID displayed in openchangeclient --mailbox
4383                 - PT_MV_STRING8 support added to cast_mapi_SPropValue
4384 2008-03-02
4385     jkerihuel
4386         [r350]
4387                 Patch from Brad Hards <bradh@frogmouth.net>:
4388                         updates code to build with current API
4389         [r349]
4390                 Patch from Brad Hards <bradh@frogmouth.net>:
4391                         little update for some API dox
4392 2008-02-21
4393     jkerihuel
4394         [r348]
4395                 - Add --update option to openchangeclient and allow users to modify
4396                   existing messages (calendar, task, contact, note)
4397                 - Add --delete option to openchangeclient and allow users to delete
4398                   existing messages (calendar, task, contact, note)
4399                 - Add some folder/message unique ID to mapidump outputs and send*
4400                   openchangeclient functions.
4401                 - Fix a bug in set_SPropValue: add sanity check on unicode
4402                   string. Thanks to Suman Manjunath for this patch.
4403                 - Fix mapidump_task function and identifiers of named properties used.
4404 2008-02-19
4405     jkerihuel
4406         [r347]
4407                 Fix missing sanity check on priority
4408         [r346]
4409                 Fix a bug in openchangeclient when tasks are created without body
4410         [r345]
4411                 private flag added to openchangeclient appointments
4412         [r344]
4413                 Fix folder IDs problem for Exchange 2007 SP1
4414 2008-02-09
4415     jkerihuel
4416         [r343]
4417                 Fix names IDL against Samba4 4.0.0alpha3-GIT-41309dc
4418 2008-01-24
4419     jkerihuel
4420         [r342]
4421                 - Fix a bug in IStoreFolder.c:OpenMessage which was also affecting
4422                   GetRecipientTable. We were extending SPropTagArray prior calling
4423                   emsmdb_get_SRow. This was causing ndr_pull_error in OpenMessage_repl
4424                   and erroneous data to be inserted in the SRow.
4425                 
4426                 - Fix libmapi/socket/interface.c:
4427                      - Use the latest version from Samba4 which removes reference to
4428                        global_loadparm.
4429                      - Moves struct interface declaration to netif.h
4430                      - Report changes to emsmdb.c notification functions.
4431                 
4432                 - Change GetGALTable prototype to match general libmapi policy. Remove
4433                   the usage of bool and replace it with uint8_t. Possible values added
4434                   to mapidefs.h
4435 2008-01-22
4436     jkerihuel
4437         [r341]
4438                 - Improve NspiQueryRows IDL and implementation
4439                 - Add GetGALTable implementation: fetch all the Global Address List
4440                   recipients
4441                 - Add --userlist option to openchangeclient
4442                 - Add a convenient and basic dumping function for Global Address List
4443                   recipients.
4444         [r340]
4445                 - Improve OpenMessage reply IDL
4446                 - Fetch mapi recipients from OpenMessage reply
4447                 - Add GetRecipientTable convenient function
4448                 - Add OPENCHANGE-MAPI-RECIPIENT torture test to test
4449                   GetRecipientTable implementation.
4450                 - Add convenient SPropTagArray_add function
4451                 - Add internal emsmdb_get_SRow routine
4452 2008-01-21
4453     jkerihuel
4454         [r339]
4455                 Patch from Suman Manjunath <msuman@novell.com>:
4456                 
4457                 - Adds named-properties which define recurrence patterns for
4458                   appointment and task. 
4459                 - Adds named properties for appointment timezone
4460         [r338]
4461                 - Fix the SNotRestriction IDL and write custom push,pull,print
4462                   functions
4463                 - Add 2 new MAPI calls to the IDL: 
4464                   * GetSearchCriteria,
4465                   * SetSearchCriteria
4466                 - add sample {Get,Set}SearchCriteria torture test
4467                 - add convenient mapi_id_array implementation
4468                 - add GetDefaultFolder support for CommonView and Finder folders
4469 2008-01-20
4470     jelmer
4471         [r337]
4472                 Make sure directory exists.
4473 2008-01-18
4474     jkerihuel
4475         [r336]
4476                 - Fix tiny 'nail down samba4 version' bug
4477                 - update the minimal Samba4 required version
4478         [r335]
4479                 - Add FindRow call to the IDL
4480                 - Improve mapi_Restriction support
4481                 - Remove deprecated ndr_print_QueryRows function
4482                 - Add a print function for fuzzyLevel
4483                 - Add preliminary FindRow implementation test to MAPI-RESTRICTIONS
4484                   torture test
4485                 - Add couple of new MAPI tags to mapi-properties
4486                 - change initial bookmark index to 3
4487 2008-01-16
4488     jkerihuel
4489         [r334]
4490                 - Add 2 new MAPI calls to the IDL and mapitest:
4491                   * SetReceiveFolder
4492                   * GetReceiveFolderTable
4493                 
4494                 - Fix a bug in the SortTable test when no messages are returned by
4495                   QueryRows
4496         [r333]
4497                 - Add SeekRowApprox to the IDL and mapitest
4498                 - Fix some doxygen typo
4499         [r332]
4500                 - New calls added to the IDL, torture suite and mapitest:
4501                     * CreateBookmark
4502                     * SeekRowBookmark
4503                 - Internal mapi_object_bookmark_t implementation added to
4504                   mapi_object_table_t
4505                 - SBinary_short default ndr_print function changed to custom
4506 2008-01-14
4507     jkerihuel
4508         [r331]
4509                 Temporary fixes unexpected segfault in SortTable test. Emails sent
4510                 during the Submit test have sometimes not yet been dispatched when the
4511                 SortTable test begins. This fix adds a sleep(1) and an arbitrary
4512                 number of attempts (5).
4513         [r330]
4514                 Add 2 new MAPI calls to the IDL and libmapi:
4515                     * AddressTypes
4516                     * SortTable
4517                 
4518                 Tests for SortTable added to mapitest and the torture suite
4519                 Test  for AddressTypes added to mapitest.
4520 2008-01-13
4521     jkerihuel
4522         [r329]
4523                 Fix perl bindings and fetchmail test
4524         [r328]
4525                 2 new MAPI call added to the IDL and mapitest: 
4526                   * GetMessageStatus
4527                   * SetMessageStatus
4528 2008-01-11
4529     jkerihuel
4530         [r327]
4531                 - Add DeleteAttach MAPI call
4532                 - Add new mapi unit tests:
4533                   * QueryColumns
4534                   * CreateAttach
4535                   * SaveChanges
4536                   * GetAttachmentTable
4537                   * DeleteAttach
4538                 - Update mapitest README
4539                 - Add some convenient functions to mapitest_common.c
4540 2008-01-10
4541     jkerihuel
4542         [r326]
4543                 Add a preliminary draft of the mapitest standalone MAPI test suite.
4544 2008-01-05
4545     jkerihuel
4546         [r324]
4547                 Add missing files
4548         [r323]
4549                 - Fix the build with the latest Samba4 version.
4550                 
4551                 - Add a basic libmapi/version.h auto-generated 
4552                   file (based on Samba4 one)
4553                 - Remove some warnings when compiling the utf8 
4554                   lexer
4555                 - Add a emsmdb_info structure to fetch some 
4556                   information from the Exchange server
4557                 
4558                 WARNING: Please note that EMSABP is definitely broken and 
4559                          requires a review and update.
4560     jelmer
4561         [r325]
4562                 DESTDIR should never get into any source files, that would defeat its purpose.
4563 2008-01-04
4564     jkerihuel
4565         [r322]
4566                 Fix the torture suite.
4567 2007-12-28
4568     jelmer
4569         [r321]
4570                 provide extra required argument.
4571         [r320]
4572                 Store a loadparm context in the global mapi context.
4573         [r319]
4574                 Deal with samba version.h's that don't contain the Subversion revision.
4575 2007-12-15
4576     jelmer
4577         [r318]
4578                 Use SWIG-provided typemaps for stdint.
4579 2007-11-29
4580     ali
4581         [r317]
4582                 Fix Content-Type field in exchange2mbox
4583                 Reported by Yuriy Filatov <yuriy.filatov@gmail.com>
4584 2007-11-28
4585     jkerihuel
4586         [r316]
4587                 - Improve the CreateMessage IDL
4588                 - Add new parameters to IMAPIFolder CreateMessage libmapi function
4589                 - Add --mkdir --rmdir options to openchangeclient
4590                 - Update the CreateFolder API and openchangeclient documentation
4591                 - Fix CreateFolder calls in openchange tools and torture suite
4592                 - Fix gendb_search warning
4593 2007-11-25
4594     jkerihuel
4595         [r315]
4596                 Add new PSETID_Address named properties 
4597         [r314]
4598                 Fix a few code convention typos 
4599                 
4600                 Patch from Suman Manjunath <msuman@novell.com> applied:
4601                 converts a 'struct timeval' to 'NTTIME'.
4602                 minor extension of 'set_SPropValue_proptag', used while setting PT_SYSTIME properties.
4603 2007-11-21
4604     jkerihuel
4605         [r313]
4606                 update Samba4 first revision to 26100
4607     jelmer
4608         [r312]
4609                 Cope with ndr updates.
4610 2007-11-12
4611     jkerihuel
4612         [r311]
4613                 Patch from Brad Hards: Fix possible Heap overflow in lzfu code
4614 2007-11-07
4615     jkerihuel
4616         [r310]
4617                 Fix profile creation in a clustered Exchange 2007 environment.
4618 2007-11-02
4619     jkerihuel
4620         [r309]
4621                 Fix QueryColumns req size.
4622 2007-11-01
4623     jkerihuel
4624         [r308]
4625                 ** Start libmapi-0.7 PHASER development **
4626                 
4627                 add --dump-data option to mapiprofile for debugging purpose
4628 2007-10-31
4629     jkerihuel
4630         [r306]
4631                 openchangepfadmin (1) man page added
4632         [r305]
4633                 Store messageID in the object when SaveChangesMessage is called
4634         [r304]
4635                 Nail down Samba4 version for libmapi-0.6
4636 2007-10-30
4637     jkerihuel
4638         [r303]
4639                 - Add PR_MSG_EDITOR_FORMAT property to the sendmail operation
4640                 - Fix body dump bug when PR_MSG_EDITOR_FORMAT property is missing (default set to PLAINTEXT)
4641                 - Continue to process the mailbox when a problem is encountered with mesage contents (not attachment)
4642                 - Fix a typo bug in openchangeclient body help string
4643         [r302]
4644                 Update doxygen section
4645 2007-10-29
4646     jkerihuel
4647         [r301]
4648                 - Add doxygen man (3) pages to installman and uninstallman rules
4649                 - do not run doxygen if apidocs already exists
4650 2007-10-28
4651     jkerihuel
4652         [r300]
4653                 Move documentation to doxygen 
4654 2007-10-25
4655     jkerihuel
4656         [r299]
4657                 Add convenient date related functions for implementors:
4658                 returns a timeval struct matching a PT_SYSTIME property
4659                 for improved date manipulation in 3rd party softwares
4660 2007-10-24
4661     jkerihuel
4662         [r298]
4663                 Fix build to work with latest Samba4 revision (4.0.0alpha2-SVN-build-25722)
4664         [r297]
4665                 Fix make realdistclean when swig perl is enabled
4666         [r296]
4667                 Fix swig perl bindins compilation: move *.o to *.po
4668         [r295]
4669                 use talloc_memdup to copy const data in the body DATA_BLOB
4670                 Should only provide valid pointer to talloc_free 
4671 2007-10-23
4672     jkerihuel
4673         [r294]
4674                 Fix the DeleteMessages [out] IDL.
4675                 
4676                 The remaining bytes were not part of DeleteMessages but
4677                 MAPI notification (0x2a)
4678 2007-10-22
4679     jkerihuel
4680         [r293]
4681                 - Add RTF support in exchange2mbox
4682                 - Use openchange-tools public functions
4683                 - Replace GetPropsAll calls with GetProps
4684         [r292]
4685                 - fetchmail: 
4686                         * Use GetProps rather than GetPropsAll for message dump
4687                         * Rely on PR_MSG_EDITOR_FORMAT to select the type of body
4688                         * Open a stream for PR_BODY and PR_HTML if the size exceeds max property size
4689                 
4690                 -This line, and those below, will be ignored--
4691                 
4692                 M    trunk/Makefile.in
4693                 A    trunk/utils/openchange-tools.c
4694                 M    trunk/utils/openchangeclient.c
4695                 M    trunk/utils/openchange-tools.h
4696                 M    trunk/utils/openchangeclient.h
4697                 M    trunk/libmapi/mapidefs.h
4698 2007-10-20
4699     jelmer
4700         [r291]
4701                 Fix ignores.
4702 2007-10-19
4703     ali
4704         [r290]
4705                 Remove useless svn:ignore
4706     jkerihuel
4707         [r289]
4708                 Add WrapCompressedRTFStream function for PR_RTF_COMPRESSED content.
4709                 
4710                 Original lzfu decompress routine fetched from libpst-0.5.2
4711         [r288]
4712                 make enum MAPISTATUS variables naming uniform in libmapi
4713 2007-10-16
4714     jkerihuel
4715         [r287]
4716                 Add PT_CLSID case to get_SPropValue_data
4717         [r286]
4718                 Add/Fix pull property support for PT_UNICODE and PT_CLSID (used by GetProps)
4719         [r285]
4720                 Patch from Brad Hards <bradh@frogmouth.net>:
4721                 Fix compilation for x86_64 platforms.
4722 2007-10-14
4723     ali
4724         [r284]
4725                 More svn:ignore updates
4726         [r283]
4727                 Update of svn:ignore
4728 2007-10-10
4729     jkerihuel
4730         [r282]
4731                 added the IDL license
4732         [r281]
4733                 Convert OpenChange to GPLv3
4734         [r280]
4735                 - Add .po files to make clean 
4736                 - Fix a couple of warnings in the utf8 conversion lexer 
4737                 - Prefer long filenames to truncated one for attachments in openchangeclient
4738 2007-10-09
4739     jkerihuel
4740         [r279]
4741                 Prevent exchange2mbox from segfault when PR_MESSAGE_DELIVERY_DATE is unset
4742         [r278]
4743                 Add PT_CLSID and PT_MV_CLSID support to the IDL
4744         [r274]
4745                 - Add new named properties
4746                 - Convenient function for MNID_STRING props lookup added
4747     jelmer
4748         [r277]
4749                 Make .po a recognized suffix.
4750         [r276]
4751                 Fix compile error.
4752         [r275]
4753                 Use -fPIC for library objects.
4754 2007-10-08
4755     jkerihuel
4756         [r273]
4757                 - Rename GetAllNamesFromIDs to QueryNamesFromIDs (better naming)
4758                 - fix SPropValue_CTR boolean to uint8_t in the IDL and emsmdb.c
4759                 
4760                 - add mapi_nameid convenient interface and headers
4761                 - mapi-named-properties populated, parser added to mparse.pl, file
4762                   added to the build system
4763                 
4764                 - remove any incorrect reference to named properties in openchange
4765                   tree
4766                 
4767                 - remove deprecated libmapi/mapi.h file
4768                 - remove unused ulFlag parameter from IProfAdmin functions
4769                 - remove unused memory context from libmapi/x500.c
4770                 
4771                 - support sendnote operation in openchangeclient
4772                 - optimize check/list oc_element functions in openchangeclient
4773                 
4774                 - update swig interface
4775 2007-10-05
4776     jkerihuel
4777         [r272]
4778                 - New MAPI calls: Named properties support
4779                          * GetNamesFromIDs
4780                          * GetIDsFromNames
4781                          * GetAllNamesFromIDs
4782                 
4783                 - Modified MAPI calls:
4784                          * OpenMessage
4785                          * SaveChanges
4786                 These calls now have more granularity in libmapi with flags support
4787                 
4788                 - sample mapi-named-properties file introduced in libmapi/conf
4789                 
4790                 - Torture test suite:
4791                         * suite temporary fixed (import torture_rpc_* functions from
4792                           Samba4)
4793                         * torture_namedprops test added
4794                 
4795                 - SWIG Perl bindings fixed according to changes described above
4796                 - minor improvements in libmapi/mapidump.c
4797 2007-10-02
4798     jkerihuel
4799         [r271]
4800                 - Decrease MAX_READ_SIZE to 0x1000
4801                 - Clean-up Read/WritreStream related code
4802                 - add dump-data option to openchangepfadmin (debugging purpose)
4803 2007-10-01
4804     jkerihuel
4805         [r270]
4806                 Fix build: 
4807                         - remove reference to core/nterr.h
4808                         - add global_loadparm reference where missing
4809                         - add reference to core/error.h where needed
4810     jelmer
4811         [r269]
4812                 Improve output during build.
4813         [r268]
4814                 Fix lp_load().
4815         [r267]
4816                 Pass loadparm contexts, should fix the build with newer Samba revisions.
4817 2007-09-28
4818     jkerihuel
4819         [r266]
4820                 - WriteStream API changed: now returns the number of bytes written
4821                 - WriteStream man page updated
4822                 - 16 bytes extra-data bug fixed when sending attachments in openchangeclient
4823                 - Set open mode to 0600 when attachments are stored on the filesystem
4824                  
4825 2007-09-19
4826     jkerihuel
4827         [r265]
4828                 Fix preliminary Perl bindings so it works with Samba4 alpha2
4829                 and latest libmapi revision.
4830         [r264]
4831                 Patch from Andrew Gaylard <ag@computer.org>:
4832                 
4833                 - When calling openchangeclient with the --dump-data switch, it will
4834                 dump core, since the global_mapi_ctx pointer isn't initialised yet.
4835                 The fix is to wait until it's set before accessing it.
4836         [r263]
4837                 Patch from Andrew Gaylard <ag@computer.org>:
4838                 - Leaving any blank lines before .TH directives appears to cause a blank page
4839                 to be output when converting man pages to DVI files (which is a step to converting
4840                 them to PDF). The following patch remove the blank line above the .TH in each man page file. 
4841                 
4842                 - mapiprofile doesn't understand the -A switch, as mentioned in it's man page.
4843                 It should be -I.
4844 2007-09-13
4845     jkerihuel
4846         [r262]
4847                 - Add objectClass to the object: container, message or attachment
4848                 - Rename content to message in openchangebackup functions
4849                 - add objectClass parameter to ocb_record_init
4850 2007-09-12
4851     jkerihuel
4852         [r261]
4853                 - Move debug options to their correct location (after MAPIInitialize)
4854                 - Improve code related to LDB transactions
4855                 - Add convenient error checking macros
4856 2007-09-11
4857     jkerihuel
4858         [r260]
4859                 - Add preliminary openchangemapidump draft
4860                 - Fix lp_parm_* 1st parameter in the torture suite
4861                 - New functions in property.c for MAPI data retrieval
4862 2007-09-09
4863     jelmer
4864         [r259]
4865                 Use configure definition for mandir.
4866 2007-09-08
4867     dan
4868         [r258]
4869                 Activate debugs this time
4870         [r257]
4871                 Replaced remaining gotos with MAPI_RETVAL_IF so errno is set correctly
4872         [r256]
4873                 MAPI_RETVAL_IF missing ";" could cause surprises ;-)
4874         [r255]
4875                 Add error check for samr call.
4876                 set errno with MAPI_RETVAL_IF.
4877 2007-09-06
4878     dan
4879         [r254]
4880                 Make required packaged more clear (LinuxMagazin input)
4881 2007-09-05
4882     jelmer
4883         [r253]
4884                 Remove invalid comment.
4885 2007-09-04
4886     jkerihuel
4887         [r252]
4888                 - Clean-up function prototypes
4889                 - Dump email when NEWMAIL notification is received
4890 2007-08-31
4891     jelmer
4892         [r251]
4893                 Proper dependencies.
4894         [r250]
4895                 Don't regenerate proto headers unless necessary.
4896         [r249]
4897                 Add 'make check'.
4898         [r248]
4899                 Use install for installing files/directories.
4900         [r247]
4901                 Actually use replacement variable for libmagic.
4902 2007-08-30
4903     jkerihuel
4904         [r246]
4905                 Remove forgotten BOOL
4906         [r245]
4907                 Remove mapi_session pointer in mapi_objects
4908                 Add public function to IProfAdmin: retrieve default ldif path location outside the OC tree
4909 2007-08-28
4910     jkerihuel
4911         [r244]
4912                 Prevent users from creation of *undeletable* folders in Outlook and
4913                 perform sanity check on dirclass + display possible values. 
4914         [r243]
4915                 Provides a way to modify Default and Anonymous permissions for a given folder.
4916         [r242]
4917                 Fix errno in getdir function + add sanity check on opt_rmdir
4918         [r241]
4919                 - Fix a memory related bug in mapiadmin_add_user
4920                 - Add latest howto.txt modifications from Dan
4921         [r240]
4922                 - Fix bug in *UserPermission function: return when user is not found
4923                 - Add sanity checks to mapi_object API functions
4924                 - mapi_object_release reset errno to 0: need to release object
4925                 after displaying the potential error message.
4926         [r239]
4927                 Fix a mapidump_appointment bug
4928                 Add PF folder support to fetch-items operation
4929 2007-08-27
4930     jkerihuel
4931         [r238]
4932                 openchangeclient now support send/read/delete operation on custom PF directories.
4933         [r233]
4934                 - Add libmapiadmin library draft: Add/Remove Exchange user
4935                 - openchangepfadmin tool added: Public Folders management
4936                 - Add Sanity check to CreateFolder
4937     jelmer
4938         [r237]
4939                 Update ignore list.
4940         [r236]
4941                 Fix last references to BOOL, True and False.
4942         [r235]
4943                 Fix more references to BOOL, False and True.
4944         [r234]
4945                 Use standard type and values for booleans since Samba no longer exports 
4946                 BOOL, True and False.
4947 2007-08-21
4948     jkerihuel
4949         [r232]
4950                 - Add OpenPublicFolder function to libmapi, Open Public Folder store
4951                 - change torture suite API to match latest Samba4 pidl changes
4952                 - utf8_convert regexp improved
4953                 - minor changes: printf to DEBUG
4954                 - howto.txt patch from Dan included
4955                 - Samba4 torture code related to user account creation included in the
4956                   torture suite.
4957 2007-08-06
4958     jkerihuel
4959         [r231]
4960                 Fix segmentation fault when running update prior populating the database.
4961 2007-07-31
4962     jkerihuel
4963         [r230]
4964                 Remove obsolete file from the torture suite 
4965         [r229]
4966                 - Add Exchange Administration test to the torture suite: Create Exchange user
4967         [r228]
4968                 Dan update on howto.txt
4969 2007-07-10
4970     jkerihuel
4971         [r227]
4972                 - Add Exchange ACLs support to MAPI library
4973                 - Add 2 new MAPI opnum: GetTable and ModifyTable
4974                 - Improve mapidump functions
4975 2007-07-04
4976     jkerihuel
4977         [r226]
4978                 - Improve aclocal check in autogen.sh
4979                 - Fix flex binary detection in configure.ac
4980 2007-06-22
4981     jkerihuel
4982         [r225]
4983                 Same player ...
4984         [r224]
4985                 Fix libmapi symlink
4986         [r223]
4987                 Create libmapi.so symlink
4988 2007-06-21
4989     jkerihuel
4990         [r222]
4991                 Fix mandir installation path
4992                 Add ldconfig intructions to openchange installation documentation
4993         [r221]
4994                 Fix build.
4995 2007-06-20
4996     jkerihuel
4997         [r220]
4998                 RES_AND and RES_OR preliminary implementation.
4999 2007-06-19
5000     jkerihuel
5001         [r218]
5002                 - doc patch from Brad Hards
5003                 - rename PROFILE_NOPASSWORD to OC_PROFILE_NOPASSWORD
5004                 - fix a warning in property.c
5005 2007-06-16
5006     jelmer
5007         [r210]
5008                 Add some 'const' (fixes compile warnings).
5009         [r209]
5010                 Use sonames (required for the Debian packages).
5011         [r208]
5012                 Add .bzrignore file.
5013         [r207]
5014                 Update version number and use globally defined version number in libmapi.pc.
5015 2007-06-15
5016     jkerihuel
5017         [r205]
5018                 - Add IDL implementation for restrictions Content, Property,
5019                 CompareProps, Bitmask, Size, Exist.
5020                 - Add Restrict MAPI call handling the restrictions above
5021                 - OPENCHANGE-MAPI-RESTRICTIONS torture test added to the suite.
5022                 - convenient sendmail function added to mapi_common.c
5023                 - get property size function for mapi_SPropValue added to property.c
5024                 
5025                 test --This line, and those below, will be ignored--
5026                 
5027                 M    Makefile.in
5028                 M    exchange.idl
5029                 M    torture/openchange.c
5030                 A    torture/mapi_restrictions.c
5031                 M    torture/mapi_common.c
5032                 M    libmapi/property.c
5033                 M    libmapi/IMAPITable.c
5034 2007-06-11
5035     jkerihuel
5036         [r204]
5037                 Documentation update: Perl bindings installation
5038 2007-06-10
5039     jkerihuel
5040         [r203]
5041                 - Add mapitags and mapicode support to Perl SWIG bindings
5042                 - SPropTagArray support
5043                 - SRowSet preliminary support
5044                 - new constructor/destructor for mapi objects
5045 2007-06-09
5046     jkerihuel
5047         [r202]
5048                 - IProfAdmin patch applied: having password outside of the profile
5049                 
5050                 - Perl bindings draft added to the trunk and to the build system:
5051                   --enable-swig-perl=yes
5052                 
5053                 - datarootdir fixed in libmapi.pc.in
5054 2007-06-06
5055     jkerihuel
5056         [r201]
5057                 - Add CopyMessages IDL and COPYMAIL torture implementation
5058                 - Fix man page install dir according to latest Samba4 changes
5059                 - Add datarootdir var to libmapi.pc.in and fix configure warning
5060 2007-06-01
5061     jkerihuel
5062         [r199]
5063                 convenient function which retrieve a value from a SPropValue array
5064                 given its property tag name, otherwise NULL
5065 2007-05-31
5066     jkerihuel
5067         [r198]
5068                 Patch from Brad Hards <bradh@frogmouth.net>:
5069                 openchangeclient man page updated
5070         [r197]
5071                 - Add Windows UTF8 to classic UTF8 conversion through a lexer
5072                 - openchangeclient --mailbox option changed to use it
5073                 - flex and bison support added to configure.ac
5074                 - windows_to_utf8 function added: wrapper over yyparse_utf8 routine
5075 2007-05-29
5076     jkerihuel
5077         [r196]
5078                 - features added to openchangeclient:
5079                         * --send-appointment
5080                         * --send-contact
5081                         * --send-task
5082                         * custom parameters
5083                 - openchangeclient man page updated
5084                 - new properties added to mapi-properties
5085         [r195]
5086                 - Add man pages for simple_mapi.c functions:
5087                  * GetDefaultFolder
5088                  * GetFolderItemsCount
5089         [r194]
5090                 - Remove deprecated functions from IMsgStore.c
5091                 - Update man pages documentation
5092         [r193]
5093                 Fix install rule in Makefile: add missing headers
5094                 Move callback retval from uint32_t to int
5095         [r192]
5096                 Fix notification callback retval
5097         [r191]
5098                 - Advise opnum added to the IDL
5099                 - Parts of the Notify response IDL implementation
5100                 - Add Notification support to libmapi
5101                 - Add --notifications option to openchangeclient
5102 2007-05-28
5103     jkerihuel
5104         [r190]
5105                 Patch from Brad Hards <bradh@frogmouth.net>:
5106                         - PR_BUSINESS_FAX_NUMBER 
5107                         - improves the information provided on a contact by 
5108                           mapidump_contact()
5109 2007-05-25
5110     jkerihuel
5111         [r189]
5112                 - Fix the release call in,out
5113                 - Call Release from mapi_release_object
5114                 - Add sanity check to OpenMsgStore
5115                 - clean up parts of the mapi_newmail test
5116         [r188]
5117                 EcDoDisconnect code now sounds to work properly
5118                 Tested against Exchange 2000 / Exchange 2003
5119         [r187]
5120                 - Fix SpropValue property pull problem when GetProps layout is set
5121                 - Add a dumpdata boolean to mapi_ctx_t so tools can dump hex data
5122                 - Add PR_CONTAINER_CLASS fetch to openchangeclient --mailbox
5123                 - Add debuglevel and dumpdata options support to openchangeclient
5124 2007-05-24
5125     jkerihuel
5126         [r186]
5127                 - Remove useless memory allocation in mapidump.c
5128                 - Improve mapidump_appointment
5129                 - Add sample mapidump_note
5130                 - Add --fetchitems option to openchangeclient:
5131                 This command offers an easy way to fetch calendar, contacts,
5132                 tasks, notes and mails from the Exchange server.
5133                 - Add IPF container class defines to mapidefs.h
5134                 - Add and Fix property tags
5135 2007-05-22
5136     jkerihuel
5137         [r185]
5138                 - Commit the EcDoRpc max_data patch proposed on the devel list
5139                 - Clean up folders related functions from the torture suite 
5140                 (GetDefaultFolder makes this code obsolete)
5141 2007-05-21
5142     jkerihuel
5143         [r184]
5144                 Add the --mailbox option to openchangeclient which recursively
5145                 lists the full mailbox folder hierarchy
5146         [r183]
5147                 - Add PT_SYSTTIME support to get_SPropValue_data
5148                 - Add mapidump_SPropValue_date dumping function
5149                 - Add PT_SYSTIME support to mapidump_SPropValue
5150         [r182]
5151                 - Add multi-valued SBinary_short support to mapi_SPropValue_CTR in the
5152                 IDL
5153                 
5154                 - Add GetDefaultFolder implementation to simple_mapi.c. This function
5155                 provides a convenient way to retrieve default folders ID. const
5156                 olFolder values are stored in libmapi/mapidefs.h
5157                 
5158                 - Modify the torture test suite to reflect these changes.
5159                 
5160                 - OpenMsgStore now decodes all the fid returned in the response
5161                 
5162                 - fix a bug size in libmapi/property.c
5163 2007-05-18
5164     jkerihuel
5165         [r181]
5166                 - Fix SMTP recipient in libmapi
5167                 - Add SMTP recipient support to openchangeclient
5168                 and the torture test suite
5169                 - Fix a bug in SRow_addprop
5170 2007-05-17
5171     jkerihuel
5172         [r180]
5173                 - OpenMessage IDL changed: we have a permission field.
5174                 It is now set by default to 0x3 (read/write) until we 
5175                 change OpenMessage prototype.
5176                 
5177                 - Add a sanity check to MAPIInitialize when no profdb
5178                 is specified
5179 2007-05-15
5180     jkerihuel
5181         [r179]
5182                 Remove remaining MAPISTATUS and replace them with enum MAPISTATUS
5183         [r178]
5184                 - SetReadFlags IDL and implementation added to libmapi
5185                 - Warning fixed in emsabp.h
5186         [r177]
5187                 Fix a bug in openchangeclient when attachments are using
5188                 PR_ATTACH_LONG_FILENAME rather than PR_ATTACH_FILENAME to store
5189                 attachment filename.
5190         [r176]
5191                 Patch supplied by Brad Hards <bradh@frogmouth.net> which renames 
5192                 private structure member to private_data for C++ compatibility.
5193         [r175]
5194                 Add libmapi/simple_mapi.c designed to hold convenient 
5195                 functions for application development.
5196                 
5197                 - GetFolderItemsCount added which returns the number of
5198                 total and unread messages for a given folder.
5199 2007-05-14
5200     jkerihuel
5201         [r174]
5202                 - Fix a body openchangeclient bug which now prevent openchangeclient
5203                 from segfault when no body is specified.
5204                 - Add GetDefaultProfile call to exchange2mbox for the default
5205                 operation.
5206                 - Improve fuzzer_msgtore output
5207 2007-05-13
5208     jkerihuel
5209         [r173]
5210                 Add a fuzzer torture test on OpenMsgStore which
5211                 test all the possible max_data value.
5212                 
5213                 Should help to understand if libmapi fails because
5214                 of max_data or not. 
5215 2007-05-12
5216     jkerihuel
5217         [r171]
5218                 exchange2mbox improved:
5219                 - tdb dependency removed
5220                 - message-id are now stored in the profile database
5221                 - it now mirrors deletion operation from the mbox file back to the
5222                 Exchange server.
5223                 - man page updated to reflect these changes
5224         [r170]
5225                 - GetProfileAttr function prototype modified. It now returns the
5226                 results count for the given attribute and store values in a string
5227                 array.
5228                 - GetProfileAttr man page updated to reflect these changes
5229                 - Fix mapiprofile attribute search command
5230                 - migrate from open/write calls to stream ones in exchange2mbox
5231     texane
5232         [r172]
5233                 newmail torture + notifications implementation
5234                 
5235                 -- texane
5236 2007-05-11
5237     jkerihuel
5238         [r169]
5239                 Fix the SambaXP live demo segfault: When an ambiguous recipient is
5240                 specified, it now skips the name properly and maintain a correct
5241                 SRowSet.
5242         [r168]
5243                 - Fix a bug when storing attachments into mbox
5244                 - Add default path support to exchange2mbox
5245 2007-05-10
5246     jkerihuel
5247         [r167]
5248                 - Update libmapi version according to the roadmap
5249                 - Fix nspi_resolvenames to use default profile database and profile
5250 2007-05-09
5251     jkerihuel
5252         [r166]
5253                 - Add default profile database and profile support in the torture suite.
5254                 - Fix a bug in mapidump_task
5255 2007-05-08
5256     jkerihuel
5257         [r165]
5258                 - Change MAPILogonEx to MAPILogonProvider and avoid potential
5259                 emsmdb endpoint related problem
5260                 - add sanity check on global session pointer
5261 2007-05-06
5262     ali
5263         [r164]
5264                 Merged MAILOOK-branch changes r64:163 into the trunk.
5265 2007-03-04
5266     jkerihuel
5267         [r79]
5268                 Remove ChangeLog, use svn log instead ;p
5269 2007-02-13
5270     jkerihuel
5271         [r63]
5272                 - libmapi includes moved from libmapi/include to libmapi
5273                 - Remove arguments from prototype definitions generation in mkproto.pl
5274                 - __BEGIN_DECLS __END_DECLS support in header files
5275                 - united libmapi/libmapi.h header file
5276                 - openchange.h header removed
5277                 - PIDL generated files moved to gen_ndr
5278                 - compilation rule for libmapi header installation added
5279                 - useless torture tests removed
5280                 
5281                 jkerihuel.
5282 2007-02-12
5283     jkerihuel
5284         [r62]
5285                 Replace OpenProperty and ReadAttach calls with OpenStream and ReadStream call
5286                 Add GetAttachmentTable call
5287                 
5288                 jkerihuel.
5289 2007-02-09
5290     jkerihuel
5291         [r58]
5292                 Remove -Werror CFLAGS until I figure out how to fix
5293                 our problem definitively.
5294                 
5295                 Remove static from dcesrv_exchange.c functions definition
5296                 
5297                 jkerihuel.
5298     texane
5299         [r61]
5300                 . reimplement GetProps
5301                 . retrieve attachment size
5302                 . modify fetchmail and fetchattach torture
5303                 
5304                 -- texane
5305         [r60]
5306                 
5307                 . add GetPropList to exchange.idl
5308                 . add GetPropList implementation to IMAPIProp.c
5309                 -- texane
5310         [r59]
5311                 - Add fetchattach torture; Attachment size is not yet
5312                 defined and 42 is used.
5313                 - add 3 new EcDoRpc opnums:
5314                         - OpenAttach
5315                         - ReadAttach
5316                         - OpenProperty
5317                 
5318                 -- texane
5319 2007-02-08
5320     jkerihuel
5321         [r57]
5322                 Forgot to add IMAPISession.c
5323                 
5324                 jkerihuel.
5325 2007-02-07
5326     jkerihuel
5327         [r56]
5328                 Remove spurious warnings at compile time and
5329                 add -Werror -Wstrict-prototypes to CC.
5330                 
5331                 jkerihuel.
5332         [r55]
5333                 Dispatch libmapi functions into filenames matching
5334                 the MAPI interface they belong to.
5335                 
5336                 jkerihuel.
5337         [r54]
5338                 Fix the attach issue by value and add torture test to
5339                 the openchange torture suite.
5340                 
5341                 jkerihuel.
5342     texane
5343         [r53]
5344                 attachment torture test implementation
5345                 
5346                 -- texane
5347 2007-02-06
5348     jkerihuel
5349         [r52]
5350                 Add a null element at the end of MAPI_REQ array
5351                 so we can exit from the loop in ndr_print_mapi_request
5352                 
5353                 jkerihuel.
5354         [r49]
5355                 - Add the DeleteMessages IDL
5356                 - New torture tests added:
5357                         * OPENCHANGE-MAPI-SENDMAIL
5358                         * OPENCHANGE-MAPI-DELETEMAIL
5359                 
5360                 These are experimental implementation
5361                 
5362                 jkerihuel.
5363     texane
5364         [r51]
5365                 subject option for delete message torture test
5366                 
5367                 -- texane
5368         [r50]
5369                 added (recipients == null) check
5370                 added default body
5371                 added default subject
5372                 -- texane
5373 2007-02-03
5374     jkerihuel
5375         [r48]
5376                 Add NspiResolveNames and the associated torture test.
5377                 
5378                 jkerihuel.
5379 2007-02-01
5380     jkerihuel
5381         [r47]
5382                 Fix nspi decoding problem due to the usage of
5383                 a hyper instead of a dlong.
5384                 
5385                 jkerihuel.
5386         [r46]
5387                 - Add a preliminary NspiUpdateStat IDL
5388                 - Fix the new server code convention naming 
5389                 (function prefixed with dcesrv_)
5390                 - Fix a security bug in emsabp provider code
5391                 
5392                 jkerihuel.
5393         [r45]
5394                 Fix the allocation memory for the EcDoRpc_{MAPI_REQ,MAPI_REPL} pointer.
5395                 
5396                 jkerihuel.
5397         [r44]
5398                 Add SetProps [out] support.
5399                 
5400                 Temporary allocation pb fixed in ndr_pull_mapi_response.
5401                 Final fix in next commit.
5402                 
5403                 jkerihuel.
5404 2007-01-31
5405     jkerihuel
5406         [r43]
5407                 Fix the SetProps [in] IDL
5408                 
5409                 New mapi call support added:
5410                 - ModifyRecipients [in,out]
5411                 - SubmitMessage [in,out]
5412                 
5413                 jkerihuel.
5414         [r42]
5415                 Add IDL support for the following mapi calls:
5416                 
5417                 [in] CreateMessage
5418                 [in] SetProps
5419                 
5420                 The SetProps IDL is still experimental and the
5421                 content blob should be decoded more than the current 
5422                 IDL does.
5423                 
5424                 jkerihuel.
5425 2007-01-30
5426     jkerihuel
5427         [r41]
5428                 Fix the align problem in QueryRows reply blob
5429                 Add some printing output and clean useless DEBUG.
5430                 
5431                 jkerihuel.
5432 2007-01-29
5433     jkerihuel
5434         [r40]
5435                 Fix the OpenMessage IDL and add ndr_print support
5436                 to the MAPI-FETCHMAIL torture test so we can
5437                 read information.
5438                 
5439                 jkerihuel.
5440         [r39]
5441                 Commit of the first experimental but working implementation
5442                 of the MAPI-FETCHMAIL torture test able to retrieve mails
5443                 from an Exchange Server.
5444                 
5445                 jkerihuel.
5446         [r38]
5447                 - Add a preview implementation of cached data system for multi MAPI calls requests
5448                 - Add SetColumns and QueryRows calls to mapi.c + mapi_fetchmail torture test
5449                 - Enhance some MAPI calls IDL
5450                 - Fix some pull/print functions according to error_code and row_count values
5451                 
5452                 jkerihuel.
5453 2007-01-28
5454     jkerihuel
5455         [r37]
5456                 Manual handling of EcDoRpc_MAPI_REPL pull and print function.
5457                 When a mapi call returns an error_code different from MAPI_E_SUCCESS,
5458                 we have to stop processing the function IDL since no parameters follow.
5459                 
5460                 jkerihuel.
5461         [r36]
5462                 add MAPISTATUS to EcDoRpc_MAPI_REPL
5463                 add mapi library code for:
5464                 - OpenFolder
5465                 - Release
5466                 - GetContentsTable
5467                 - GetReceiveFolder
5468                 
5469                 add mapi calls described above to MAPI-FETCHMAIL torture test
5470                 
5471                 jkerihuel.
5472         [r35]
5473                 add mapi_response to emsmdb_transaction so we can get the results
5474                 check the mapi call error core in OpenMsgStore
5475                 
5476                 jkerihuel.
5477         [r34]
5478                 Add MAPISTATUS field in each mapi calls
5479                 Add new MAPICODE (MAPI_E_CALL_FAILED)
5480                 
5481                 jkerihuel.
5482         [r33]
5483                 Fix the mapi_request push function
5484                 Add a first approach to the MAPI client side library
5485                 Add a first approach of the MAPI-FETCHMAIL torture test
5486                 Fix the smb.conf.example with new fields and remove Samba4 unused ones
5487                 
5488                 jkerihuel.
5489 2007-01-27
5490     jkerihuel
5491         [r32]
5492                 Initial mapidump commit
5493                 OpenMessage IDL fixed
5494                 
5495                 jkerihuel.
5496 2007-01-24
5497     jkerihuel
5498         [r31]
5499                 Unused and dummy code removed
5500                 
5501                 jkerihuel
5502         [r30]
5503                 - Remove the MAPI decoding TDR layer and associated functions
5504                 - Add MAPI decoding in exchange.idl at NDR layer
5505                 - mapi_request / mapi_response pull/print ok
5506                 - implement subcontext for async response decoding in
5507                 some EcDoRpc IDLs.
5508                 - new MAPITAGS added related to Message envelope properties
5509                 - clean up the code and remove unused files
5510                 
5511                 - Add new MAPI opnums and associated IDL:
5512                         * [in]     Release          (opnum=0x1)
5513                         * [in,out] OpenFolder       (opnum=0x2)
5514                         * [in,out] OpenMessage      (opnum=0x3)
5515                         * [in,out] GetContentsTable (opnum=0x5)
5516                         * [in,out] GetProps         (opnum=0x7)
5517                         * [in,out] Secolumns        (opnum=0x12)
5518                         * [in,out] QueryRows        (opnum=0x15)
5519                         * [in,out] GetReceiveFolder (opnum=0x27)
5520                         * [in,out] OpenMsgStore     (opnum=0xFE)
5521                 
5522                 ** WARNING  **
5523                 
5524                 1. Assumption
5525                 ==============
5526                 For IDL with unknown fields followed the IDL may 
5527                 change and the mapping of these unknown bytes incorrect. 
5528                 It's just based on assumptions and results of the different
5529                 wireshark captures.
5530                 
5531                 2. Broken Code
5532                 ==============
5533                 - The mapi_request / mapi_response pull function
5534                 - emsmdb torture tests and libmapi/emsmdb.c
5535                 
5536                 All this code is currently broken and will be fixed
5537                 when we start writing the new emsmdb torture suite
5538                 using the new API.
5539                 
5540                 
5541                 jkerihuel
5542 2007-01-22
5543     jkerihuel
5544         [r29]
5545                 Fix ndr_pull_MAPI_DATA function
5546                 
5547                 jkerihuel.
5548         [r28]
5549                 - Add new mapi opnums
5550                 - Add a first IDL implementation for OpenMsgStore out
5551                 
5552                 jkerihuel.
5553         [r27]
5554                 - Enhance the handles id support in MAPI_DATA
5555                 - Remove unused code
5556                 
5557                 EMSMDB encoding/decoding is currently broken.
5558                 It will be fixed when we start the client side
5559                 mapi library implementation.
5560                 
5561                 jkerihuel.
5562 2007-01-21
5563     jkerihuel
5564         [r26]
5565                 - Change IMAPISession.idl to mapi.idl
5566                 - enhance mapi content payload decoding (multiple calls supported)
5567                 - add sub EcDoRpc opnums and IDL for setcolumns (in)
5568                 
5569                 jkerihuel
5570     pkhun
5571         [r25]
5572                 
5573                 - memory leak fixed
5574                 - new function on emsabp provider for entry id generation
5575                 
5576                 pkhun
5577 2006-12-27
5578     jkerihuel
5579         [r24]
5580                 Old mapitables code deleted and merge of the samdb
5581                 code used in openchange (emsabp_result_guid function).
5582                 
5583                 The following revision compiles and work fine with
5584                 Samba4 revision 20341
5585                 
5586                 jkerihuel.
5587 2006-12-17
5588     pkhun
5589         [r23]
5590                 
5591                 Instance keys management changed (we now use struct instance_key and uint32_t instead of an array of 4 uint8_t)
5592                 
5593                 pkhun
5594 2006-12-15
5595     jkerihuel
5596         [r22]
5597                 - Fix compilation warnings based on patches provided 
5598                 by Stefan Huehner <stefan@huehner.org>
5599                 - Fix the DSO issue for x64 platforms
5600                 - Add the evolution plugin in the compilation process
5601                 - remove the mapidump code (obsolete and replaced with ndrdump usage)
5602                 
5603                 jkerihuel.
5604 2006-12-13
5605     jkerihuel
5606         [r21]
5607                 evolution plugin moved into client/evolution for
5608                 a correct and extensible naming convention.
5609                 
5610                 EcDoRpc IDL modified:
5611                 - opnum are now 8 bits
5612                 - action enum added 
5613                 - EcDoRpc ndrdump output enhanced
5614                 
5615                 IMAPISession IDL modified:
5616                 - Change OpenMsgStore function name to MAPI_RPC_LOGON
5617                 for the 0xFE opnum operation.
5618                 
5619                 Fix warnings in the code.
5620                 
5621                 jkerihuel.
5622 2006-12-09
5623     loic
5624         [r20]
5625                 Openchange-Evolution plugin commit
5626                 I reorganized openchange evolution plugin source tree.
5627                 Now we have one directory for the camel-openchange provider, and one for the openchange eplugin.
5628                 Everything can be found in the oc-evolution directory.
5629                 This is code a minimalist implementation of the camel provider for evolution.
5630                 It will make appears an openchange server type in the server list handled by evolution.
5631                 Still have to fix the ./configure to create a Makefile though.
5632 2006-12-05
5633     jkerihuel
5634         [r19]
5635                 Fix the memory allocation problems in the emsmdb torture test
5636 2006-12-03
5637     jkerihuel
5638         [r17]
5639                 Removed ascstr and directly add it to the IDL
5640         [r16]
5641                 Fix the NspiQueryRows response where strings
5642                 containing the user email address have to be
5643                 NULL terminated.
5644                 
5645                 The EMSABP provider is working ;-)
5646     pkhun
5647         [r18]
5648                 
5649                 The emsabp provider is now able to return multiple users
5650                 when searching for part of a username.
5651                 
5652                 pkhun
5653 2006-11-30
5654     jkerihuel
5655         [r15]
5656                 Fix the networkAddress binding strings for the
5657                 Exchange object in the configuration db. The
5658                 SERVER variable based on exchange:server had
5659                 been added while we needed the NETBIOSNAME one
5660                 
5661                 Fix a segmentation fault in emsabp.c due to an
5662                 unchecked pointer res->msgs. This was causing
5663                 smbd to segfault when the supplied legacyExchangeDN
5664                 sent by the user wasn't present in the database.
5665                 
5666                 jkerihuel
5667 2006-11-27
5668     jkerihuel
5669         [r14]
5670                 Remove unused files and directory.
5671                 Update Makefile.in and remove storedb compilation
5672                 rules.
5673     pkhun
5674         [r13]
5675                 
5676                 Fixed :
5677                 - NspiQueryRows
5678                 - NspiDNToEph
5679                 - NspiGetProps
5680                 - provisioning (for the legacyExchangeDN of the server entry)
5681 2006-11-26
5682     jkerihuel
5683         [r11]
5684                 Fix the build and remove dynconfig samba lib
5685                 dependency.
5686                 
5687                 jkerihuel
5688     pkhun
5689         [r12]
5690                 Unused ldif files removed + Schemas definitions updated
5691                 
5692                 pkhun
5693         [r10]
5694                 Provisionning fixed (old ldif files cleaned)
5695                 
5696                 pkhun
5697 2006-11-22
5698     jkerihuel
5699         [r9]
5700                 add tags rules to the Makefile
5701                 
5702                 jkerihuel.
5703         [r8]
5704                 add the \\pipe\\protected_storage named pipe
5705                 to exchange_nsp bindings
5706                 
5707                 jkerihuel.
5708 2006-11-21
5709     jkerihuel
5710         [r7]
5711                 Add a dcerpc_server module in charge of the 
5712                 exchange interfaces registration. When this module
5713                 is loaded prior the remote endpoint, it let us proxify 
5714                 the exchange_nsp and exchange_emsmdb ones.
5715                 
5716                 Change the exchange_nsp ncacn_np binding string to
5717                 reflect how Exchange server is currently using it.
5718                 
5719                 Conform the IDL with latest pidl requirements and
5720                 move the MAPI_DATA structure from exchange_nsp to
5721                 exchange_emsmdb.
5722                 
5723                 jkerihuel
5724 2006-11-14
5725     jkerihuel
5726         [r6]
5727                 Create the $prefix/modules/{dcerpc_server,torture}
5728                 directories.
5729                 
5730                 This fix openchange make install rule.
5731                 
5732                 jkerihuel.
5733         [r5]
5734                 This commit conforms openchange with the Samba4
5735                 trunk and fix the autotools checks.
5736                 
5737                 I've modified the openchange torture file to
5738                 match the current smbtorture API and the
5739                 OPENCHANGE-NSPI-PROFILE test was successful.
5740                 
5741                 The NSPI ndrdump suite has fully been tested and
5742                 works correctly.
5743                 
5744                 jkerihuel.
5745 2006-11-05
5746     jkerihuel
5747         [r3]
5748                 This commit fix the build system:
5749                 - add the -ldynconfig dependency to LDFLAGS
5750                 - add header checks in configure.ac. We need them
5751                 for the moment cause Samba4 doesn't install some headers
5752                 required by openchange core
5753                 - fix the make install
5754                 
5755                 - remove autotools generated files and definitively
5756                 ignore them with the .svnignore file
5757                 
5758                 - keepref keyword removed from exchange_nsp interface
5759                 
5760                 jkerihuel.
5761     pkhun
5762         [r4]
5763                 + aclocal.m4 removed from repository
5764                 + provisionning fixed
5765                 
5766                 pkhun.