changeset 108:1b2a4fac1303 stable-0-6-21

fix title bug with old schema in pst2ldif, also escape commas in distinguished names per rfc4514.
author Carl Byington <carl@five-ten-sg.com>
date Tue, 21 Oct 2008 14:37:13 -0700
parents 9f303a9ad042
children 7947334d53ad
files ChangeLog NEWS TODO configure.in libpst.spec.in regression/regression-tests.bash src/pst2ldif.cpp
diffstat 7 files changed, 40 insertions(+), 27 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Sat Oct 11 12:54:24 2008 -0700
+++ b/ChangeLog	Tue Oct 21 14:37:13 2008 -0700
@@ -1,36 +1,41 @@
+LibPST 0.6.21 (2008-10-21)
+===============================
+        * fix title bug with old schema in pst2ldif.
+	* also escape commas in distinguished names per rfc4514.
+
 LibPST 0.6.20 (2008-10-09)
 ===============================
-    	* add configure option --enable-dii=no to remove dependency on libgd.
-	* many fixes in pst2ldif by Robert Harris.
-	* add -D option to include deleted items, from Justin Greer
+        * add configure option --enable-dii=no to remove dependency on libgd.
+        * many fixes in pst2ldif by Robert Harris.
+        * add -D option to include deleted items, from Justin Greer
         * fix from Justin Greer to add missing email headers
         * fix from Justin Greer for my_stristr()
-	* fix for orphan children when building descriptor tree
-	* avoid writing uninitialized data to debug log file
-	* remove unreachable code
-	* create dummy top-of-folder descriptor if needed for corrupt pst files
+        * fix for orphan children when building descriptor tree
+        * avoid writing uninitialized data to debug log file
+        * remove unreachable code
+        * create dummy top-of-folder descriptor if needed for corrupt pst files
 
 LibPST 0.6.19 (2008-09-14)
 ===============================
-	* Fix base64 encoding that could create long lines
-	* Initial work on a .so shared library from Bharath Acharya.
+        * Fix base64 encoding that could create long lines
+        * Initial work on a .so shared library from Bharath Acharya.
 
 LibPST 0.6.18 (2008-08-28)
 ===============================
-    	* Fixes for iconv on Mac from Justin Greer.
+        * Fixes for iconv on Mac from Justin Greer.
 
 LibPST 0.6.17 (2008-08-05)
 ===============================
-    	* More fixes for 32/64 bit portability on big endian ppc.
+        * More fixes for 32/64 bit portability on big endian ppc.
 
 LibPST 0.6.16 (2008-08-05)
 ===============================
-    	* Use inttypes.h for portable printing of 64 bit items.
+        * Use inttypes.h for portable printing of 64 bit items.
 
 LibPST 0.6.15 (2008-07-30)
 ===============================
-    	* Patch from Robert Simpson for file handle leak in error case.
-    	* Fix for missing length on lz decompression, bug found by Chris White.
+        * Patch from Robert Simpson for file handle leak in error case.
+        * Fix for missing length on lz decompression, bug found by Chris White.
 
 LibPST 0.6.14 (2008-06-15)
 ===============================
--- a/NEWS	Sat Oct 11 12:54:24 2008 -0700
+++ b/NEWS	Tue Oct 21 14:37:13 2008 -0700
@@ -1,3 +1,4 @@
+0.6.21  2008-10-21 fix title bug with old schema in pst2ldif, also escape commas in distinguished names per rfc4514.
 0.6.20  2008-10-09 add configure option --enable-dii=no, fixes from Robert Harris for pst2ldif.
 0.6.19  2008-09-14 Initial work on a .so shared library from Bharath Acharya.
 0.6.18  2008-08-28 Fixes for iconv on Mac from Justin Greer.
--- a/TODO	Sat Oct 11 12:54:24 2008 -0700
+++ b/TODO	Tue Oct 21 14:37:13 2008 -0700
@@ -2,3 +2,5 @@
 Need testing on big-endian machines. We may be missing some LEnn_CPU()
 calls.
 
+The debug log code, and readpstlog, needs large file support to handle
+debug files larger than 2GB.
--- a/configure.in	Sat Oct 11 12:54:24 2008 -0700
+++ b/configure.in	Tue Oct 21 14:37:13 2008 -0700
@@ -1,5 +1,5 @@
 AC_PREREQ(2.59)
-AC_INIT(libpst,0.6.20,carl@five-ten-sg.com)
+AC_INIT(libpst,0.6.21,carl@five-ten-sg.com)
 AC_CONFIG_SRCDIR([config.h.in])
 AC_CONFIG_HEADER([config.h])
 
--- a/libpst.spec.in	Sat Oct 11 12:54:24 2008 -0700
+++ b/libpst.spec.in	Tue Oct 21 14:37:13 2008 -0700
@@ -47,6 +47,10 @@
 
 
 %changelog
+* Tue Oct 21 2008 Carl Byington <carl@five-ten-sg.com> - 0.6.21-1
+- fix title bug with old schema in pst2ldif.
+- also escape commas in distinguished names per rfc4514.
+
 * Thu Oct 09 2008 Carl Byington <carl@five-ten-sg.com> - 0.6.20-1
 - add configure option --enable-dii=no to remove dependency on libgd.
 - many fixes in pst2ldif by Robert Harris.
--- a/regression/regression-tests.bash	Sat Oct 11 12:54:24 2008 -0700
+++ b/regression/regression-tests.bash	Tue Oct 21 14:37:13 2008 -0700
@@ -42,14 +42,14 @@
     dodii 4 big_mail.pst
 else
     dopst  1 ams.pst
-    dopst  2 sample_64.pst
-    dopst  3 test.pst
-    dopst  4 big_mail.pst
-    dopst  5 mbmg.archive.pst
-    dopst  6 Single2003-read.pst
-    dopst  7 Single2003-unread.pst
-    dopst  8 ol2k3high.pst
-    dopst  9 ol97high.pst
-    dopst 10 returned_message.pst
+   #dopst  2 sample_64.pst
+   #dopst  3 test.pst
+   #dopst  4 big_mail.pst
+   #dopst  5 mbmg.archive.pst
+   #dopst  6 Single2003-read.pst
+   #dopst  7 Single2003-unread.pst
+   #dopst  8 ol2k3high.pst
+   #dopst  9 ol97high.pst
+   #dopst 10 returned_message.pst
 fi
 
--- a/src/pst2ldif.cpp	Sat Oct 11 12:54:24 2008 -0700
+++ b/src/pst2ldif.cpp	Tue Oct 21 14:37:13 2008 -0700
@@ -161,13 +161,13 @@
                                 print_ldif_single("personalTitle", item->contact->job_title);
                             if (item->contact->company_name)
                                 print_ldif_single("company", item->contact->company_name);
+                        }
                         else {
                             // new schema
                             if (item->contact->job_title)
                                 print_ldif_single("title", item->contact->job_title);
                             if (item->contact->company_name)
                                 print_ldif_single("o", item->contact->company_name);
-                            }
                         }
                         if (item->contact->address1  && *item->contact->address1)
                             print_ldif_single("mail", item->contact->address1);
@@ -640,6 +640,7 @@
             printf("objectClass: organization\n\n");
             printf("dn: cn=root, %s\n", ldap_base);
             printf("cn: root\n");
+            printf("sn: root\n");
             for (vector<string>::size_type i=0; i<ldap_class.size(); i++)
                 print_ldif_single("objectClass", ldap_class[i].c_str());
             printf("\n");
@@ -711,8 +712,7 @@
 
     print_escaped_dn(value);
     if (base && base[0]) {
-        printf(",");
-        print_escaped_dn(base);
+        printf(", %s", base);
     }
     printf("\n");
     return;
@@ -763,6 +763,7 @@
             case '\\':
             case '"' :
             case '+' :
+            case ',' :
             case ';' :
             case '<' :
             case '>' :