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