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