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