annotate ChangeLog @ 42:7a97f50c39c5 stable-0-5-12 **FUNKY**

security fix for potential buffer overrun in lz decompress
author carl
date Tue, 02 Oct 2007 16:10:36 -0700
parents 183ae993b9ad
children f6db1f060a95
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
41
183ae993b9ad security fix for potential buffer overrun in lz decompress
carl
parents: 40
diff changeset
1 LibPST 0.5.12 (2007-10-02)
183ae993b9ad security fix for potential buffer overrun in lz decompress
carl
parents: 40
diff changeset
2 ===============================
183ae993b9ad security fix for potential buffer overrun in lz decompress
carl
parents: 40
diff changeset
3
183ae993b9ad security fix for potential buffer overrun in lz decompress
carl
parents: 40
diff changeset
4 * security fix from Brad Hards <bradh@frogmouth.net> for buffer
183ae993b9ad security fix for potential buffer overrun in lz decompress
carl
parents: 40
diff changeset
5 overruns in liv-zemple decoding for corrupted or malicious pst files.
183ae993b9ad security fix for potential buffer overrun in lz decompress
carl
parents: 40
diff changeset
6
40
be6d5329cc01 fix unitialized variable
carl
parents: 39
diff changeset
7 LibPST 0.5.11 (2007-08-24)
be6d5329cc01 fix unitialized variable
carl
parents: 39
diff changeset
8 ===============================
be6d5329cc01 fix unitialized variable
carl
parents: 39
diff changeset
9
be6d5329cc01 fix unitialized variable
carl
parents: 39
diff changeset
10 * fix from Stevens Miller <smiller@novadatalabs.com>
be6d5329cc01 fix unitialized variable
carl
parents: 39
diff changeset
11 for unitialized variable.
be6d5329cc01 fix unitialized variable
carl
parents: 39
diff changeset
12
39
2ad7ef0a3c4f more valgrind fixes
carl
parents: 38
diff changeset
13 LibPST 0.5.10 (2007-08-20)
2ad7ef0a3c4f more valgrind fixes
carl
parents: 38
diff changeset
14 ===============================
2ad7ef0a3c4f more valgrind fixes
carl
parents: 38
diff changeset
15
2ad7ef0a3c4f more valgrind fixes
carl
parents: 38
diff changeset
16 * fix yet more valgrind errors - finally have a clean memory check.
2ad7ef0a3c4f more valgrind fixes
carl
parents: 38
diff changeset
17 * restructure readpst.c for proper recursive tree walk.
2ad7ef0a3c4f more valgrind fixes
carl
parents: 38
diff changeset
18 * buffer overrun test was backwards, introduced at 0.5.6
2ad7ef0a3c4f more valgrind fixes
carl
parents: 38
diff changeset
19 * fix broken email attachments, introduced at 0.5.6
2ad7ef0a3c4f more valgrind fixes
carl
parents: 38
diff changeset
20
38
f5c024aa1dc5 more valgrind fixes
carl
parents: 37
diff changeset
21 LibPST 0.5.9 (2007-08-12)
f5c024aa1dc5 more valgrind fixes
carl
parents: 37
diff changeset
22 ===============================
f5c024aa1dc5 more valgrind fixes
carl
parents: 37
diff changeset
23
f5c024aa1dc5 more valgrind fixes
carl
parents: 37
diff changeset
24 * fix more valgrind errors.
f5c024aa1dc5 more valgrind fixes
carl
parents: 37
diff changeset
25
37
ddfb25318812 more valgrind fixes
carl
parents: 36
diff changeset
26 LibPST 0.5.8 (2007-08-10)
ddfb25318812 more valgrind fixes
carl
parents: 36
diff changeset
27 ===============================
ddfb25318812 more valgrind fixes
carl
parents: 36
diff changeset
28
ddfb25318812 more valgrind fixes
carl
parents: 36
diff changeset
29 * fix more valgrind errors. lzfu_decompress needs to return the
ddfb25318812 more valgrind fixes
carl
parents: 36
diff changeset
30 actual buffer size, since the lz header overestimates the size.
ddfb25318812 more valgrind fixes
carl
parents: 36
diff changeset
31 This caused base64_encode to encode undefined bytes into the
ddfb25318812 more valgrind fixes
carl
parents: 36
diff changeset
32 email attachment.
ddfb25318812 more valgrind fixes
carl
parents: 36
diff changeset
33
36
6fe121a971c9 valgrind fixes
carl
parents: 35
diff changeset
34 LibPST 0.5.7 (2007-08-09)
6fe121a971c9 valgrind fixes
carl
parents: 35
diff changeset
35 ===============================
6fe121a971c9 valgrind fixes
carl
parents: 35
diff changeset
36
6fe121a971c9 valgrind fixes
carl
parents: 35
diff changeset
37 * fix valgrind errors, using uninitialized data.
6fe121a971c9 valgrind fixes
carl
parents: 35
diff changeset
38 * improve debug logging and readpstlog for indented listings.
6fe121a971c9 valgrind fixes
carl
parents: 35
diff changeset
39 * cleanup documentation.
6fe121a971c9 valgrind fixes
carl
parents: 35
diff changeset
40
35
b2f247463b83 better decoding of 7c blocks
carl
parents: 34
diff changeset
41 LibPST 0.5.6 (2007-07-15)
b2f247463b83 better decoding of 7c blocks
carl
parents: 34
diff changeset
42 ===============================
b2f247463b83 better decoding of 7c blocks
carl
parents: 34
diff changeset
43
34
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
44 * Fix to allow very small pst files with only one node in the
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
45 tree. We were mixing signed/unsigned types in comparisons.
35
b2f247463b83 better decoding of 7c blocks
carl
parents: 34
diff changeset
46 * More progress decoding the basic structure 7c blocks. Many
b2f247463b83 better decoding of 7c blocks
carl
parents: 34
diff changeset
47 four byte values may be ID2 indices with data outside the buffer.
b2f247463b83 better decoding of 7c blocks
carl
parents: 34
diff changeset
48 * Start using doxygen to generate internal documentation.
34
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
49
31
b88ceb81dba2 mege changes from Joe Nahmias
carl
parents: 30
diff changeset
50 LibPST 0.5.5 (2007-07-10)
b88ceb81dba2 mege changes from Joe Nahmias
carl
parents: 30
diff changeset
51 ===============================
b88ceb81dba2 mege changes from Joe Nahmias
carl
parents: 30
diff changeset
52
34
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
53 * merge the following changes from Joe Nahmias version:
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
54 * Lots of memory fixes. Thanks to Nigel Horne for his assistance
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
55 tracking these down!
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
56 * Fixed creation of vCards from contacts, thanks to Nigel Horne for
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
57 his help with this!
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
58 * fix for MIME multipart/alternative attachments.
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
59 * added -c options to readpst manpage.
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
60 * use 8.3 attachment filename if long filename isn't available.
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
61 * new -b option to skip rtf-body.rtf attachments.
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
62 * fix format of From header lines in mbox files.
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
63 * Add more appointment fields, thanks to Chris Hall for tracking
07177825c91b fix signed/unsigned to allow very small pst files with only leaf nodes
carl
parents: 31
diff changeset
64 them down!
31
b88ceb81dba2 mege changes from Joe Nahmias
carl
parents: 30
diff changeset
65
b88ceb81dba2 mege changes from Joe Nahmias
carl
parents: 30
diff changeset
66
30
45eccad4b606 more cleanup from Arne, document 7c block format
carl
parents: 24
diff changeset
67 LibPST 0.5.4 (2006-02-25)
45eccad4b606 more cleanup from Arne, document 7c block format
carl
parents: 24
diff changeset
68 ===============================
45eccad4b606 more cleanup from Arne, document 7c block format
carl
parents: 24
diff changeset
69
45eccad4b606 more cleanup from Arne, document 7c block format
carl
parents: 24
diff changeset
70 * patches from Arne, adding MH mode, remove leading zeros
45eccad4b606 more cleanup from Arne, document 7c block format
carl
parents: 24
diff changeset
71 from the generated numbered filenames starting with one
45eccad4b606 more cleanup from Arne, document 7c block format
carl
parents: 24
diff changeset
72 rather than zero. Miscellaneous code cleanup.
45eccad4b606 more cleanup from Arne, document 7c block format
carl
parents: 24
diff changeset
73
45eccad4b606 more cleanup from Arne, document 7c block format
carl
parents: 24
diff changeset
74 * document the "7c" descriptor block format.
45eccad4b606 more cleanup from Arne, document 7c block format
carl
parents: 24
diff changeset
75
24
f4643b609bdf switch to automake/autoconf
carl
parents: 16
diff changeset
76 LibPST 0.5.3 (2006-02-20)
16
c508ee15dfca switch to automake/autoconf
carl
parents: 12
diff changeset
77 ===============================
c508ee15dfca switch to automake/autoconf
carl
parents: 12
diff changeset
78
24
f4643b609bdf switch to automake/autoconf
carl
parents: 16
diff changeset
79 * switch to gnu autoconf/automake. This breaks the MS VC++ projects
f4643b609bdf switch to automake/autoconf
carl
parents: 16
diff changeset
80 since the source code is now in the src subdirectory.
f4643b609bdf switch to automake/autoconf
carl
parents: 16
diff changeset
81
16
c508ee15dfca switch to automake/autoconf
carl
parents: 12
diff changeset
82 * documentation switched to xml, building man pages and html
c508ee15dfca switch to automake/autoconf
carl
parents: 12
diff changeset
83 from the master xml copy.
c508ee15dfca switch to automake/autoconf
carl
parents: 12
diff changeset
84
24
f4643b609bdf switch to automake/autoconf
carl
parents: 16
diff changeset
85 * include rpm .spec file for building src and binary rpms.
f4643b609bdf switch to automake/autoconf
carl
parents: 16
diff changeset
86
16
c508ee15dfca switch to automake/autoconf
carl
parents: 12
diff changeset
87
12
3f627519a92d properly ignore (second block zero) errors. that will just drop some unknown attachments, but the rest of the data is still found
carl
parents: 11
diff changeset
88 LibPST 0.5.2 (2006-02-18)
11
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
89 ===============================
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
90
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
91 * Added pst2ldif to convert the contacts to ldif format for import
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
92 into ldap databases.
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
93
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
94 * Major changes to libpst.c to properly use the node depth values
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
95 from the b-tree nodes. We also use the item count values in the nodes
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
96 rather than trying to guess how many items are active.
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
97
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
98 * Cleanup whitespace - using tabs for every four columns.
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
99
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
100
3
fac01758bd41 Initial revision
carl
parents:
diff changeset
101 LibPST 0.5.1 (17 November 2004)
fac01758bd41 Initial revision
carl
parents:
diff changeset
102 ===============================
fac01758bd41 Initial revision
carl
parents:
diff changeset
103
fac01758bd41 Initial revision
carl
parents:
diff changeset
104 Well, alot has happened since the last release of libpst.
fac01758bd41 Initial revision
carl
parents:
diff changeset
105
fac01758bd41 Initial revision
carl
parents:
diff changeset
106 Release / Management:
fac01758bd41 Initial revision
carl
parents:
diff changeset
107
11
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
108 * The project has forked! The new maintainer is Joseph Nahmias.
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
109 * We have changed hosting sites, thanks to sourceforge for hosting
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
110 to this point. From this point forward we will be using
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
111 alioth.debian.org.
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
112 * The project is now using SubVersioN for source control. You can
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
113 get the latest code by running:
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
114 svn co svn://svn.debian.org/svn/libpst/trunk .
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
115 * See
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
116 <http://lists.alioth.debian.org/pipermail/libpst-devel/2004-November/000000.html>
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
117 for more information.
3
fac01758bd41 Initial revision
carl
parents:
diff changeset
118
fac01758bd41 Initial revision
carl
parents:
diff changeset
119 Code Changes:
fac01758bd41 Initial revision
carl
parents:
diff changeset
120
11
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
121 * Added lspst program to list items in a PST. Still incomplete.
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
122 * Added vim folding markers to readpst.c
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
123 * avoid the pseudo-prologue that MS prepends to the email headers
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
124 * fix build on msvc, since it doesn't have sys/param.h
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
125 * Re-vamped Makefile:
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
126 * Only define CFLAGS in Makefileif missing
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
127 * fixed {un,}install targets in Makefile
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
128 * Fixed up build process in Makefile
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
129 * Added mozilla conversion script from David Binard
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
130 * Fixed bogus creation of readpst.log on every invocation
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
131 * escaped dashes and apostrophe in manpages
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
132 * Updated TODO
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
133 * added manpages from debian pkg
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
134 * fix escaped-string length count to consider '\n',
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
135 thanks to Paul Bakker <bakker@fox-it.com>.
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
136 * ensure there's a blank line between header and body
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
137 patch from <johnh@aproposretail.com> (SourceForge #890745).
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
138 * Apply accumulated endian-related patches
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
139 * Removed unused files, upstream's debian/ dir
3
fac01758bd41 Initial revision
carl
parents:
diff changeset
140
fac01758bd41 Initial revision
carl
parents:
diff changeset
141 -- Joe Nahmias <joe@nahmias.net>
fac01758bd41 Initial revision
carl
parents:
diff changeset
142
fac01758bd41 Initial revision
carl
parents:
diff changeset
143 LibPST v0.5
fac01758bd41 Initial revision
carl
parents:
diff changeset
144 ===========
fac01758bd41 Initial revision
carl
parents:
diff changeset
145
fac01758bd41 Initial revision
carl
parents:
diff changeset
146 It is with GREAT relief that I bring you version 0.5 of the LibPST tools!
fac01758bd41 Initial revision
carl
parents:
diff changeset
147
fac01758bd41 Initial revision
carl
parents:
diff changeset
148 Through great difficulties, this tool has survived and expanded to become even
fac01758bd41 Initial revision
carl
parents:
diff changeset
149 better.
fac01758bd41 Initial revision
carl
parents:
diff changeset
150
fac01758bd41 Initial revision
carl
parents:
diff changeset
151 The changes are as follows:
fac01758bd41 Initial revision
carl
parents:
diff changeset
152 * RTF support. We can now decompress RTF bodies in emails, and are saved as attachments
fac01758bd41 Initial revision
carl
parents:
diff changeset
153 * Better support in reading the indexes. Fixed many bugs with them
fac01758bd41 Initial revision
carl
parents:
diff changeset
154 * Improved reliability. "Now we are getting somewhere!"
fac01758bd41 Initial revision
carl
parents:
diff changeset
155 * Improved compiling. Hopefully we won't be hitting too many compile errors now.
fac01758bd41 Initial revision
carl
parents:
diff changeset
156 * vCard handling. Contacts are now exported as vCard entries.
fac01758bd41 Initial revision
carl
parents:
diff changeset
157 * vEvent handling. Support has begun on exporting Calendar entries as events
fac01758bd41 Initial revision
carl
parents:
diff changeset
158 * Support for Journal entries has also begun
fac01758bd41 Initial revision
carl
parents:
diff changeset
159
fac01758bd41 Initial revision
carl
parents:
diff changeset
160 If you have any problems with this release, don't hesitate to contact me.
fac01758bd41 Initial revision
carl
parents:
diff changeset
161
fac01758bd41 Initial revision
carl
parents:
diff changeset
162 These changes come to you, as always, free under the GPL license!! What a wonderful
fac01758bd41 Initial revision
carl
parents:
diff changeset
163 thing it is. It does mean that you can write your own program off of this library
fac01758bd41 Initial revision
carl
parents:
diff changeset
164 and distribute it also for free. However, anyone with commercial interests for
fac01758bd41 Initial revision
carl
parents:
diff changeset
165 developing applications they will be charging for are encouraged to get in touch
fac01758bd41 Initial revision
carl
parents:
diff changeset
166 with me, as I am sure we can come to some arrangement.
fac01758bd41 Initial revision
carl
parents:
diff changeset
167
fac01758bd41 Initial revision
carl
parents:
diff changeset
168 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
169 <dave.s@earthcorp.com>
fac01758bd41 Initial revision
carl
parents:
diff changeset
170
fac01758bd41 Initial revision
carl
parents:
diff changeset
171 LibPST v0.4.3
fac01758bd41 Initial revision
carl
parents:
diff changeset
172 =============
fac01758bd41 Initial revision
carl
parents:
diff changeset
173
fac01758bd41 Initial revision
carl
parents:
diff changeset
174 Bug fix release. No extra functionality
fac01758bd41 Initial revision
carl
parents:
diff changeset
175
fac01758bd41 Initial revision
carl
parents:
diff changeset
176 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
177 <dave.s@earthcorp.com>
fac01758bd41 Initial revision
carl
parents:
diff changeset
178
fac01758bd41 Initial revision
carl
parents:
diff changeset
179 LibPST v0.4.2
fac01758bd41 Initial revision
carl
parents:
diff changeset
180 =============
fac01758bd41 Initial revision
carl
parents:
diff changeset
181
fac01758bd41 Initial revision
carl
parents:
diff changeset
182 The debug system has had an overhaul. The debug messages are no longer
fac01758bd41 Initial revision
carl
parents:
diff changeset
183 printed to the screen when they are enabled. They are dumped to a
fac01758bd41 Initial revision
carl
parents:
diff changeset
184 binary file. There is another utility called "readlog" that I have
fac01758bd41 Initial revision
carl
parents:
diff changeset
185 written to handle these log files. It should make it easier to
fac01758bd41 Initial revision
carl
parents:
diff changeset
186 selectively view bits of a log file. It also shows the position that
fac01758bd41 Initial revision
carl
parents:
diff changeset
187 the log message was printed from.
fac01758bd41 Initial revision
carl
parents:
diff changeset
188
fac01758bd41 Initial revision
carl
parents:
diff changeset
189 There is a new switch in readpst. It is -d. It enables the user to
fac01758bd41 Initial revision
carl
parents:
diff changeset
190 specify the log file which the binary log is written to. If the switch
fac01758bd41 Initial revision
carl
parents:
diff changeset
191 isn't used, the default file of "readpst.log" is used.
fac01758bd41 Initial revision
carl
parents:
diff changeset
192
fac01758bd41 Initial revision
carl
parents:
diff changeset
193 The code is now Visual C++ compatible. It has compiled on Visual C++
fac01758bd41 Initial revision
carl
parents:
diff changeset
194 .net Standard edition, and produces the readpst.exe file. Use the project
fac01758bd41 Initial revision
carl
parents:
diff changeset
195 file included in this distribution.
fac01758bd41 Initial revision
carl
parents:
diff changeset
196
fac01758bd41 Initial revision
carl
parents:
diff changeset
197 There have been minor improvements elsewhere too.
fac01758bd41 Initial revision
carl
parents:
diff changeset
198
fac01758bd41 Initial revision
carl
parents:
diff changeset
199
fac01758bd41 Initial revision
carl
parents:
diff changeset
200 LibPST v0.4.1
fac01758bd41 Initial revision
carl
parents:
diff changeset
201 =============
fac01758bd41 Initial revision
carl
parents:
diff changeset
202
fac01758bd41 Initial revision
carl
parents:
diff changeset
203 Fixed a couple more bugs. Is it me or do bugs just insert themselves
fac01758bd41 Initial revision
carl
parents:
diff changeset
204 in random, hard to find places!
fac01758bd41 Initial revision
carl
parents:
diff changeset
205
fac01758bd41 Initial revision
carl
parents:
diff changeset
206 Cured a few problems with regard to emails with multiple embeded
fac01758bd41 Initial revision
carl
parents:
diff changeset
207 items. They are not fully re-created using Mime-types, but are
fac01758bd41 Initial revision
carl
parents:
diff changeset
208 accessible with the -S switch (which saves everything as seperate
fac01758bd41 Initial revision
carl
parents:
diff changeset
209 items)
fac01758bd41 Initial revision
carl
parents:
diff changeset
210
fac01758bd41 Initial revision
carl
parents:
diff changeset
211 Fixed a problem reading the first index. Back sliders are now
fac01758bd41 Initial revision
carl
parents:
diff changeset
212 detected. (ie when the value following the current one is smaller, not
fac01758bd41 Initial revision
carl
parents:
diff changeset
213 bigger!)
fac01758bd41 Initial revision
carl
parents:
diff changeset
214
fac01758bd41 Initial revision
carl
parents:
diff changeset
215 Added some error messages when we try and read outside of the PST
fac01758bd41 Initial revision
carl
parents:
diff changeset
216 file, this was causing a few problems before, cause the return value
fac01758bd41 Initial revision
carl
parents:
diff changeset
217 wasn't always checked, so it was possible to be reading random data,
fac01758bd41 Initial revision
carl
parents:
diff changeset
218 and trying to make sense of it!
fac01758bd41 Initial revision
carl
parents:
diff changeset
219
fac01758bd41 Initial revision
carl
parents:
diff changeset
220 Anyway, if you find any problems, don't hesitate to mail me
fac01758bd41 Initial revision
carl
parents:
diff changeset
221
fac01758bd41 Initial revision
carl
parents:
diff changeset
222 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
223 <dave.s@earthcorp.com>
fac01758bd41 Initial revision
carl
parents:
diff changeset
224
fac01758bd41 Initial revision
carl
parents:
diff changeset
225 LibPST v0.4
fac01758bd41 Initial revision
carl
parents:
diff changeset
226 ===========
fac01758bd41 Initial revision
carl
parents:
diff changeset
227
fac01758bd41 Initial revision
carl
parents:
diff changeset
228 Fixed a nasty bug that occasionally corrupted attachments. Another bug
fac01758bd41 Initial revision
carl
parents:
diff changeset
229 with regard to reading of indexes (also occasional).
fac01758bd41 Initial revision
carl
parents:
diff changeset
230
fac01758bd41 Initial revision
carl
parents:
diff changeset
231 Another output method has been added which is called "Seperate". It is
fac01758bd41 Initial revision
carl
parents:
diff changeset
232 activated with the -S switch. It operates in the following manor:
fac01758bd41 Initial revision
carl
parents:
diff changeset
233
fac01758bd41 Initial revision
carl
parents:
diff changeset
234 |--Inbox-->000000
11
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
235 | 000001
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
236 | 000002
3
fac01758bd41 Initial revision
carl
parents:
diff changeset
237 |--Sentmail-->0000000
11
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
238 | 0000001
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
239 | 0000002
3
fac01758bd41 Initial revision
carl
parents:
diff changeset
240
fac01758bd41 Initial revision
carl
parents:
diff changeset
241 All the emails are stored in seperate files counting from 0 upwards,
fac01758bd41 Initial revision
carl
parents:
diff changeset
242 in a folder named as the PST folder.
fac01758bd41 Initial revision
carl
parents:
diff changeset
243
fac01758bd41 Initial revision
carl
parents:
diff changeset
244 When an email has an attachment, it is saved as a seperate file. The
fac01758bd41 Initial revision
carl
parents:
diff changeset
245 filename for the attachment is made up of 2 parts, the first is the
fac01758bd41 Initial revision
carl
parents:
diff changeset
246 email number to which it belongs, the second is its filename.
fac01758bd41 Initial revision
carl
parents:
diff changeset
247
fac01758bd41 Initial revision
carl
parents:
diff changeset
248 The should now be runnable on big-endian machines, if the define.h
fac01758bd41 Initial revision
carl
parents:
diff changeset
249 file is first modified. The #define LITTLE_ENDIAN must be commented
fac01758bd41 Initial revision
carl
parents:
diff changeset
250 out, and the #define BIG_ENDIAN must be uncommented.
fac01758bd41 Initial revision
carl
parents:
diff changeset
251
fac01758bd41 Initial revision
carl
parents:
diff changeset
252 More verbose error messages have been added. Apparently people got
fac01758bd41 Initial revision
carl
parents:
diff changeset
253 confused when the program stopped for no visible reason. This has now
fac01758bd41 Initial revision
carl
parents:
diff changeset
254 been resolved.
fac01758bd41 Initial revision
carl
parents:
diff changeset
255
fac01758bd41 Initial revision
carl
parents:
diff changeset
256 Thanks for the continued support of all people involved.
fac01758bd41 Initial revision
carl
parents:
diff changeset
257
fac01758bd41 Initial revision
carl
parents:
diff changeset
258 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
259 <dave.s@earthcorp.com>
fac01758bd41 Initial revision
carl
parents:
diff changeset
260
fac01758bd41 Initial revision
carl
parents:
diff changeset
261 Libpst v0.3.4
fac01758bd41 Initial revision
carl
parents:
diff changeset
262 =============
fac01758bd41 Initial revision
carl
parents:
diff changeset
263
fac01758bd41 Initial revision
carl
parents:
diff changeset
264 Several more fixes. An Infinite loop and incorrect interpreting of
fac01758bd41 Initial revision
carl
parents:
diff changeset
265 item index attributes. Work has started on making the code executable
fac01758bd41 Initial revision
carl
parents:
diff changeset
266 on big endian CPUs. At present it should work with Linux on these
fac01758bd41 Initial revision
carl
parents:
diff changeset
267 CPUs, but I would appreciate it if you could provide feedback with
fac01758bd41 Initial revision
carl
parents:
diff changeset
268 regard to it's performance. I am also working with some other people
fac01758bd41 Initial revision
carl
parents:
diff changeset
269 at make it operate on Solaris.
fac01758bd41 Initial revision
carl
parents:
diff changeset
270
fac01758bd41 Initial revision
carl
parents:
diff changeset
271 A whole load more items are now recognized by the Item records. With
fac01758bd41 Initial revision
carl
parents:
diff changeset
272 more items in Emails and Folders. I haven't got to the Contacts yet.
fac01758bd41 Initial revision
carl
parents:
diff changeset
273
fac01758bd41 Initial revision
carl
parents:
diff changeset
274 Anyway, this is what I would call a minor feature enhancment and
fac01758bd41 Initial revision
carl
parents:
diff changeset
275 bugfix release.
fac01758bd41 Initial revision
carl
parents:
diff changeset
276
fac01758bd41 Initial revision
carl
parents:
diff changeset
277 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
278 <dave.s@earthcorp.com>
fac01758bd41 Initial revision
carl
parents:
diff changeset
279
fac01758bd41 Initial revision
carl
parents:
diff changeset
280 LibPST v0.3.3
fac01758bd41 Initial revision
carl
parents:
diff changeset
281 =============
fac01758bd41 Initial revision
carl
parents:
diff changeset
282
fac01758bd41 Initial revision
carl
parents:
diff changeset
283 Fixed several items. Mainly memory leaks. Loads of them! oops..
fac01758bd41 Initial revision
carl
parents:
diff changeset
284
fac01758bd41 Initial revision
carl
parents:
diff changeset
285 I have added a new program, mainly of debugging, which when passed
11
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
286 an ID value and a pst file, will extract and decrypt that ID from
3
fac01758bd41 Initial revision
carl
parents:
diff changeset
287 the pst file. I don't see it being a huge attraction, or of much use
fac01758bd41 Initial revision
carl
parents:
diff changeset
288 to most people, but it is another example of writing an application
fac01758bd41 Initial revision
carl
parents:
diff changeset
289 to use the libpst interface.
fac01758bd41 Initial revision
carl
parents:
diff changeset
290
fac01758bd41 Initial revision
carl
parents:
diff changeset
291 Another fix was in the reading of the item index. This has hopefully
fac01758bd41 Initial revision
carl
parents:
diff changeset
292 now been corrected. The result of this bug was that not all the emails
fac01758bd41 Initial revision
carl
parents:
diff changeset
293 in a folder were converted. Hopefully you should have more luck now.
fac01758bd41 Initial revision
carl
parents:
diff changeset
294
fac01758bd41 Initial revision
carl
parents:
diff changeset
295 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
296 <dave.s@earthcorp.com>
fac01758bd41 Initial revision
carl
parents:
diff changeset
297
fac01758bd41 Initial revision
carl
parents:
diff changeset
298 LibPST v0.3.2
fac01758bd41 Initial revision
carl
parents:
diff changeset
299 =============
fac01758bd41 Initial revision
carl
parents:
diff changeset
300
fac01758bd41 Initial revision
carl
parents:
diff changeset
301 Quick bugfix release. There was a bug in the decryption of the basic
fac01758bd41 Initial revision
carl
parents:
diff changeset
302 encryption that outlook uses. One byte, 0x6c, was incorrectly decrypted
fac01758bd41 Initial revision
carl
parents:
diff changeset
303 to 0x6c instead of 0xcd. This release fixes this bug. Sorry...
fac01758bd41 Initial revision
carl
parents:
diff changeset
304
fac01758bd41 Initial revision
carl
parents:
diff changeset
305
fac01758bd41 Initial revision
carl
parents:
diff changeset
306 LibPST v0.3.1
fac01758bd41 Initial revision
carl
parents:
diff changeset
307 =============
fac01758bd41 Initial revision
carl
parents:
diff changeset
308
fac01758bd41 Initial revision
carl
parents:
diff changeset
309 Minor improvements. Fixed bug when linking multiple blocks together,
fac01758bd41 Initial revision
carl
parents:
diff changeset
310 so now the linking blocks are not "encrypted" when trying to read
fac01758bd41 Initial revision
carl
parents:
diff changeset
311 them.
fac01758bd41 Initial revision
carl
parents:
diff changeset
312
fac01758bd41 Initial revision
carl
parents:
diff changeset
313
fac01758bd41 Initial revision
carl
parents:
diff changeset
314 LibPST v0.3
fac01758bd41 Initial revision
carl
parents:
diff changeset
315 ===========
fac01758bd41 Initial revision
carl
parents:
diff changeset
316
fac01758bd41 Initial revision
carl
parents:
diff changeset
317 A lot of bug fixing has been done for this release. Testing has been
fac01758bd41 Initial revision
carl
parents:
diff changeset
318 done on the creation of the files by readpst. Better handling of
fac01758bd41 Initial revision
carl
parents:
diff changeset
319 large binaries being extracted from the PST file has been implemented.
fac01758bd41 Initial revision
carl
parents:
diff changeset
320
fac01758bd41 Initial revision
carl
parents:
diff changeset
321 Quite a few reports have come in about not being able to compile on
fac01758bd41 Initial revision
carl
parents:
diff changeset
322 Darwin. This could be down to using macros with variable parameter
fac01758bd41 Initial revision
carl
parents:
diff changeset
323 lists. This has now been changed to use C functions with variable
fac01758bd41 Initial revision
carl
parents:
diff changeset
324 parameters. I hope this fixes a lot of problems.
fac01758bd41 Initial revision
carl
parents:
diff changeset
325
fac01758bd41 Initial revision
carl
parents:
diff changeset
326 Added support for recreating the folder structure into normal
fac01758bd41 Initial revision
carl
parents:
diff changeset
327 directories. For Instance:
fac01758bd41 Initial revision
carl
parents:
diff changeset
328
fac01758bd41 Initial revision
carl
parents:
diff changeset
329 Personal Folders
fac01758bd41 Initial revision
carl
parents:
diff changeset
330 |-Inbox
fac01758bd41 Initial revision
carl
parents:
diff changeset
331 | |-Jokes
fac01758bd41 Initial revision
carl
parents:
diff changeset
332 | |-Meetings
fac01758bd41 Initial revision
carl
parents:
diff changeset
333 |-Send Items
fac01758bd41 Initial revision
carl
parents:
diff changeset
334
fac01758bd41 Initial revision
carl
parents:
diff changeset
335 each folder containing an mbox file with the correct emails for that
fac01758bd41 Initial revision
carl
parents:
diff changeset
336 folder.
fac01758bd41 Initial revision
carl
parents:
diff changeset
337
fac01758bd41 Initial revision
carl
parents:
diff changeset
338 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
339 <dave.s@earthcorp.com>
fac01758bd41 Initial revision
carl
parents:
diff changeset
340
fac01758bd41 Initial revision
carl
parents:
diff changeset
341
fac01758bd41 Initial revision
carl
parents:
diff changeset
342 LibPST v0.3 beta1
fac01758bd41 Initial revision
carl
parents:
diff changeset
343 =================
fac01758bd41 Initial revision
carl
parents:
diff changeset
344
fac01758bd41 Initial revision
carl
parents:
diff changeset
345 Again, a shed load of enhancements. More work has been done on the
fac01758bd41 Initial revision
carl
parents:
diff changeset
346 mime creation. A bug has been fixed that was letting part of the
11
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
347 attachments that were created disappear.
3
fac01758bd41 Initial revision
carl
parents:
diff changeset
348
fac01758bd41 Initial revision
carl
parents:
diff changeset
349 A major enhancement is that "compressible encryption" support has been
fac01758bd41 Initial revision
carl
parents:
diff changeset
350 added. This was an incredibly simple method to use. It is basically a
fac01758bd41 Initial revision
carl
parents:
diff changeset
351 ceasar cipher. It has been noted by several users already that the PST
fac01758bd41 Initial revision
carl
parents:
diff changeset
352 password that Outlook uses, serves *no purpose*. It is not used to
fac01758bd41 Initial revision
carl
parents:
diff changeset
353 encrypt the PST, it is mearly stored there. This means that the
fac01758bd41 Initial revision
carl
parents:
diff changeset
354 readpst application is able to convert PST files without knowing the
fac01758bd41 Initial revision
carl
parents:
diff changeset
355 password. Microsoft have some explaning to do!
fac01758bd41 Initial revision
carl
parents:
diff changeset
356
fac01758bd41 Initial revision
carl
parents:
diff changeset
357 Output files are now not overwritten if they already exist. This means
fac01758bd41 Initial revision
carl
parents:
diff changeset
358 that if you have two folders in your PST file named "fred", the first
fac01758bd41 Initial revision
carl
parents:
diff changeset
359 one encountered will be named "fred" and the second one will be named
fac01758bd41 Initial revision
carl
parents:
diff changeset
360 "fred00000001". As you can see, there is enough room there for many
fac01758bd41 Initial revision
carl
parents:
diff changeset
361 duplicate names!
fac01758bd41 Initial revision
carl
parents:
diff changeset
362
fac01758bd41 Initial revision
carl
parents:
diff changeset
363 Output filenames are now restricted. Any "/" or "\" characters in the
fac01758bd41 Initial revision
carl
parents:
diff changeset
364 name are replaced with "_". If you find that there are any other
fac01758bd41 Initial revision
carl
parents:
diff changeset
365 characters that need to be changed, could you please make me aware!
fac01758bd41 Initial revision
carl
parents:
diff changeset
366
fac01758bd41 Initial revision
carl
parents:
diff changeset
367 Thanks to Berry Wizard for help with supporting the encryption.
fac01758bd41 Initial revision
carl
parents:
diff changeset
368
fac01758bd41 Initial revision
carl
parents:
diff changeset
369 Thanks to Auke Kok, Carolus Walraven and Yogesh Kumar Guatam for providing debugging
fac01758bd41 Initial revision
carl
parents:
diff changeset
370 information and testing.
fac01758bd41 Initial revision
carl
parents:
diff changeset
371
fac01758bd41 Initial revision
carl
parents:
diff changeset
372 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
373 <dave.s@earthcorp.com>
fac01758bd41 Initial revision
carl
parents:
diff changeset
374
fac01758bd41 Initial revision
carl
parents:
diff changeset
375
fac01758bd41 Initial revision
carl
parents:
diff changeset
376 LibPST v0.2 beta1
fac01758bd41 Initial revision
carl
parents:
diff changeset
377 =================
fac01758bd41 Initial revision
carl
parents:
diff changeset
378
fac01758bd41 Initial revision
carl
parents:
diff changeset
379 Hello once more...
fac01758bd41 Initial revision
carl
parents:
diff changeset
380
fac01758bd41 Initial revision
carl
parents:
diff changeset
381 Attachments are now re-created in mime format. The method is very
fac01758bd41 Initial revision
carl
parents:
diff changeset
382 crude and could be prone to over generalisation. Please test this
fac01758bd41 Initial revision
carl
parents:
diff changeset
383 version, and if attachments are not recreated correctly, please send
fac01758bd41 Initial revision
carl
parents:
diff changeset
384 me the email (complete message source) of the original and
fac01758bd41 Initial revision
carl
parents:
diff changeset
385 converted. Cheers.
fac01758bd41 Initial revision
carl
parents:
diff changeset
386
fac01758bd41 Initial revision
carl
parents:
diff changeset
387 I hope this will work for everyone who uses this program, but reality
fac01758bd41 Initial revision
carl
parents:
diff changeset
388 can be very different!
fac01758bd41 Initial revision
carl
parents:
diff changeset
389
fac01758bd41 Initial revision
carl
parents:
diff changeset
390 Let us see how it goes...
fac01758bd41 Initial revision
carl
parents:
diff changeset
391
fac01758bd41 Initial revision
carl
parents:
diff changeset
392 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
393 <dave.s@earthcorp.com>
fac01758bd41 Initial revision
carl
parents:
diff changeset
394
fac01758bd41 Initial revision
carl
parents:
diff changeset
395 LibPST v0.2 alpha1
fac01758bd41 Initial revision
carl
parents:
diff changeset
396 ===========
fac01758bd41 Initial revision
carl
parents:
diff changeset
397
fac01758bd41 Initial revision
carl
parents:
diff changeset
398 Hello!
fac01758bd41 Initial revision
carl
parents:
diff changeset
399
fac01758bd41 Initial revision
carl
parents:
diff changeset
400 Some improvements. The internal code has been changed so that
fac01758bd41 Initial revision
carl
parents:
diff changeset
401 attachments are now processed and loaded into the structures. The
fac01758bd41 Initial revision
carl
parents:
diff changeset
402 readpst program is not finished yet. It needs to convert these binary
fac01758bd41 Initial revision
carl
parents:
diff changeset
403 structs into mime data. At present it just saves them to the current
fac01758bd41 Initial revision
carl
parents:
diff changeset
404 directory, overwriting any previous files with the attachment name.
fac01758bd41 Initial revision
carl
parents:
diff changeset
405
11
bf12a9d4524c more code cleanup
carl
parents: 3
diff changeset
406 Improvements over previous version:
3
fac01758bd41 Initial revision
carl
parents:
diff changeset
407 * KMail output is supported - if the "-k" flag is specified, all the
fac01758bd41 Initial revision
carl
parents:
diff changeset
408 directory hierarchy is created using the KMail standard
fac01758bd41 Initial revision
carl
parents:
diff changeset
409 * Lots of bugs and memory leaks fixed
fac01758bd41 Initial revision
carl
parents:
diff changeset
410
fac01758bd41 Initial revision
carl
parents:
diff changeset
411
fac01758bd41 Initial revision
carl
parents:
diff changeset
412 Usage:
fac01758bd41 Initial revision
carl
parents:
diff changeset
413
fac01758bd41 Initial revision
carl
parents:
diff changeset
414 ReadPST v0.2alpha1 implementing LibPST v0.2alpha1
fac01758bd41 Initial revision
carl
parents:
diff changeset
415 Usage: ./readpst [OPTIONS] {PST FILENAME}
fac01758bd41 Initial revision
carl
parents:
diff changeset
416 OPTIONS:
fac01758bd41 Initial revision
carl
parents:
diff changeset
417 -h - Help. This screen
fac01758bd41 Initial revision
carl
parents:
diff changeset
418 -k - KMail. Output in kmail format
fac01758bd41 Initial revision
carl
parents:
diff changeset
419 -o - Output Dir. Directory to write files to. CWD is changed *after* opening pst file
fac01758bd41 Initial revision
carl
parents:
diff changeset
420 -V - Version. Display program version
fac01758bd41 Initial revision
carl
parents:
diff changeset
421
fac01758bd41 Initial revision
carl
parents:
diff changeset
422 If you want to view lots of debug output, modify a line in "define.h"
fac01758bd41 Initial revision
carl
parents:
diff changeset
423 from "//#define DEBUG_ALL" to "#define DEBUG_ALL". It would then be
fac01758bd41 Initial revision
carl
parents:
diff changeset
424 advisable to pipe all output to a log file:
fac01758bd41 Initial revision
carl
parents:
diff changeset
425
fac01758bd41 Initial revision
carl
parents:
diff changeset
426 ./readpst -o out pst_file &> logfile
fac01758bd41 Initial revision
carl
parents:
diff changeset
427
fac01758bd41 Initial revision
carl
parents:
diff changeset
428 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
429
fac01758bd41 Initial revision
carl
parents:
diff changeset
430 LibPST v0.1
fac01758bd41 Initial revision
carl
parents:
diff changeset
431 ===========
fac01758bd41 Initial revision
carl
parents:
diff changeset
432
fac01758bd41 Initial revision
carl
parents:
diff changeset
433 Hi Folks!
fac01758bd41 Initial revision
carl
parents:
diff changeset
434
fac01758bd41 Initial revision
carl
parents:
diff changeset
435 This has been a long, hard slog, but I now feel that I have got
fac01758bd41 Initial revision
carl
parents:
diff changeset
436 somewhere useful. The included program "main" is able to read an
fac01758bd41 Initial revision
carl
parents:
diff changeset
437 Outlook PST file and dump the emails into mbox files, separating each
fac01758bd41 Initial revision
carl
parents:
diff changeset
438 folder into a different mbox file. All the mbox files are stored in
fac01758bd41 Initial revision
carl
parents:
diff changeset
439 the current directory and no attempt is yet made to organise these
fac01758bd41 Initial revision
carl
parents:
diff changeset
440 files into a directory hierarchy. This would not be too difficult to
fac01758bd41 Initial revision
carl
parents:
diff changeset
441 achieve though.
fac01758bd41 Initial revision
carl
parents:
diff changeset
442
fac01758bd41 Initial revision
carl
parents:
diff changeset
443 Email attachments are not yet handled, neither are Contacts.
fac01758bd41 Initial revision
carl
parents:
diff changeset
444
fac01758bd41 Initial revision
carl
parents:
diff changeset
445 There is no pretty interface yet, but you can convert a PST file in
fac01758bd41 Initial revision
carl
parents:
diff changeset
446 the following manner
fac01758bd41 Initial revision
carl
parents:
diff changeset
447
fac01758bd41 Initial revision
carl
parents:
diff changeset
448 ./main {path to PST file}
fac01758bd41 Initial revision
carl
parents:
diff changeset
449
fac01758bd41 Initial revision
carl
parents:
diff changeset
450 This is very much a work in progress, but I thought I should release
fac01758bd41 Initial revision
carl
parents:
diff changeset
451 this code so that people can lose their conception that outlook files
fac01758bd41 Initial revision
carl
parents:
diff changeset
452 will never be converted to Linux.
fac01758bd41 Initial revision
carl
parents:
diff changeset
453
fac01758bd41 Initial revision
carl
parents:
diff changeset
454 I am intending that the code I am writing will be developed into
fac01758bd41 Initial revision
carl
parents:
diff changeset
455 greater applications to provide USEFUL tools for accessing and
fac01758bd41 Initial revision
carl
parents:
diff changeset
456 converting PST files into a variety of formats.
fac01758bd41 Initial revision
carl
parents:
diff changeset
457
fac01758bd41 Initial revision
carl
parents:
diff changeset
458 One point I feel I should make is that Outlook, by default, creates
fac01758bd41 Initial revision
carl
parents:
diff changeset
459 "Compressible Encryption" PST files. I have not, as yet, attempted to
fac01758bd41 Initial revision
carl
parents:
diff changeset
460 write any decryption routines, so you will not be able to convert
fac01758bd41 Initial revision
carl
parents:
diff changeset
461 these files. However, if you create a new PST file and choose not to
fac01758bd41 Initial revision
carl
parents:
diff changeset
462 make an encrypted one, you can copy all your emails into this new one
fac01758bd41 Initial revision
carl
parents:
diff changeset
463 and then convert the unencrypted one.
fac01758bd41 Initial revision
carl
parents:
diff changeset
464
fac01758bd41 Initial revision
carl
parents:
diff changeset
465 I hope you enjoy,
fac01758bd41 Initial revision
carl
parents:
diff changeset
466
fac01758bd41 Initial revision
carl
parents:
diff changeset
467 Dave Smith
fac01758bd41 Initial revision
carl
parents:
diff changeset
468
fac01758bd41 Initial revision
carl
parents:
diff changeset
469 : vim: set tw=72 sw=4 ts=4: