Mercurial > libpst
annotate xml/libpst.in @ 121:8399ef94c11b
strip and regenerate all MIME headers to avoid duplicates.
do a better job of making unique MIME boundaries.
only use base64 coding when strictly necessary.
author | Carl Byington <carl@five-ten-sg.com> |
---|---|
date | Sun, 01 Feb 2009 19:21:47 -0800 |
parents | 0f1492b7fe8b |
children | bdb38b434c0a |
rev | line source |
---|---|
16 | 1 <reference> |
2 <title>@PACKAGE@ Utilities - Version @VERSION@</title> | |
3 <partintro> | |
4 <title>Packages</title> | |
31 | 5 |
57
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
6 <para>The various source and binary packages are available at <ulink |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
7 url="http://www.five-ten-sg.com/@PACKAGE@/packages/">http://www.five-ten-sg.com/@PACKAGE@/packages/</ulink>. |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
8 The most recent documentation is available at <ulink |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
9 url="http://www.five-ten-sg.com/@PACKAGE@/">http://www.five-ten-sg.com/@PACKAGE@/</ulink>. |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
10 </para> |
31 | 11 |
57
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
12 <para>A <ulink |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
13 url="http://www.selenic.com/mercurial/wiki/">Mercurial</ulink> source |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
14 code repository for this project is available at <ulink |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
15 url="http://hg.five-ten-sg.com/@PACKAGE@/">http://hg.five-ten-sg.com/@PACKAGE@/</ulink>. |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
16 </para> |
54
e109391424b5
some misc. cleanup and convert to mercurial source control
carl@ns.five-ten-sg.com
parents:
52
diff
changeset
|
17 |
57
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
18 <para>This version can now convert both 32 bit Outlook files (pre 2003), and the |
64
2c6040b6e8f8
packaging for Fedora (#434727)
Carl Byington <carl@five-ten-sg.com>
parents:
63
diff
changeset
|
19 64 bit Outlook 2003 pst files. Utilities are supplied to convert email messages |
2c6040b6e8f8
packaging for Fedora (#434727)
Carl Byington <carl@five-ten-sg.com>
parents:
63
diff
changeset
|
20 to both mbox and MH mailbox formats, and to DII load file format for use with |
2c6040b6e8f8
packaging for Fedora (#434727)
Carl Byington <carl@five-ten-sg.com>
parents:
63
diff
changeset
|
21 many of the <ulink url="http://www.ctsummation.com">CT Summation</ulink> products. |
2c6040b6e8f8
packaging for Fedora (#434727)
Carl Byington <carl@five-ten-sg.com>
parents:
63
diff
changeset
|
22 Contacts can be converted to a simple list, to vcard format, or to ldif format |
2c6040b6e8f8
packaging for Fedora (#434727)
Carl Byington <carl@five-ten-sg.com>
parents:
63
diff
changeset
|
23 for import to an LDAP server. |
57
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
24 </para> |
51 | 25 |
24 | 26 </partintro> |
16 | 27 |
28 | |
29 <refentry id="readpst.1"> | |
30 <refentryinfo> | |
118
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
31 <date>2009-01-25</date> |
16 | 32 </refentryinfo> |
33 | |
34 <refmeta> | |
35 <refentrytitle>readpst</refentrytitle> | |
36 <manvolnum>1</manvolnum> | |
37 <refmiscinfo>readpst @VERSION@</refmiscinfo> | |
38 </refmeta> | |
39 | |
20 | 40 <refnamediv id='readpst.name.1'> |
16 | 41 <refname>readpst</refname> |
51 | 42 <refpurpose>convert PST (MS Outlook Personal Folders) files to mbox and other formats</refpurpose> |
16 | 43 </refnamediv> |
44 | |
20 | 45 <refsynopsisdiv id='readpst.synopsis.1'> |
16 | 46 <title>Synopsis</title> |
47 <cmdsynopsis> | |
48 <command>readpst</command> | |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
49 <arg><option>-C</option></arg> |
100
1e4a7610d525
fixes from Justin Greer to add -D option to include deleted items, to add missing email headers, to fix bug in my_stristr()
Carl Byington <carl@five-ten-sg.com>
parents:
99
diff
changeset
|
50 <arg><option>-D</option></arg> |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
51 <arg><option>-M</option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
52 <arg><option>-S</option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
53 <arg><option>-V</option></arg> |
31 | 54 <arg><option>-b</option></arg> |
16 | 55 <arg><option>-c <replaceable class="parameter">format</replaceable></option></arg> |
56 <arg><option>-d <replaceable class="parameter">debug-file</replaceable></option></arg> | |
57 <arg><option>-h</option></arg> | |
58 <arg><option>-k</option></arg> | |
59 <arg><option>-o <replaceable class="parameter">output-directory</replaceable></option></arg> | |
60 <arg><option>-q</option></arg> | |
61 <arg><option>-r</option></arg> | |
62 <arg><option>-w</option></arg> | |
43 | 63 <arg choice='plain'>pstfile</arg> |
16 | 64 </cmdsynopsis> |
65 </refsynopsisdiv> | |
66 | |
20 | 67 <refsect1 id='readpst.description.1'> |
68 <title>Description</title> | |
28 | 69 <para><command>readpst</command> is a program that can read an Outlook |
70 PST (Personal Folders) file and convert it into an mbox file, a format | |
71 suitable for KMail, a recursive mbox structure, or separate emails. | |
20 | 72 </para> |
73 </refsect1> | |
74 | |
75 <refsect1 id='readpst.options.1'> | |
16 | 76 <title>Options</title> |
77 <variablelist> | |
78 <varlistentry> | |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
79 <term>-C</term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
80 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
81 Decrypt the entire pst file and dump it to stdout. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
82 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
83 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
84 <varlistentry> |
100
1e4a7610d525
fixes from Justin Greer to add -D option to include deleted items, to add missing email headers, to fix bug in my_stristr()
Carl Byington <carl@five-ten-sg.com>
parents:
99
diff
changeset
|
85 <term>-D</term> |
1e4a7610d525
fixes from Justin Greer to add -D option to include deleted items, to add missing email headers, to fix bug in my_stristr()
Carl Byington <carl@five-ten-sg.com>
parents:
99
diff
changeset
|
86 <listitem><para> |
1e4a7610d525
fixes from Justin Greer to add -D option to include deleted items, to add missing email headers, to fix bug in my_stristr()
Carl Byington <carl@five-ten-sg.com>
parents:
99
diff
changeset
|
87 Include deleted items in the output. |
1e4a7610d525
fixes from Justin Greer to add -D option to include deleted items, to add missing email headers, to fix bug in my_stristr()
Carl Byington <carl@five-ten-sg.com>
parents:
99
diff
changeset
|
88 </para></listitem> |
1e4a7610d525
fixes from Justin Greer to add -D option to include deleted items, to add missing email headers, to fix bug in my_stristr()
Carl Byington <carl@five-ten-sg.com>
parents:
99
diff
changeset
|
89 </varlistentry> |
1e4a7610d525
fixes from Justin Greer to add -D option to include deleted items, to add missing email headers, to fix bug in my_stristr()
Carl Byington <carl@five-ten-sg.com>
parents:
99
diff
changeset
|
90 <varlistentry> |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
91 <term>-M</term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
92 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
93 Output messages in MH format as separate files. This will create |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
94 folders as named in the PST file, and will put each email together with |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
95 any attachments into its own file. These files will be numbered from 1 |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
96 to n with no leading zeros. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
97 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
98 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
99 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
100 <term>-S</term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
101 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
102 Output messages into separate files. This will create folders as named |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
103 in the PST file, and will put each email in its own file. These files |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
104 will be numbered from 1 increasing in intervals of 1 (ie 1, 2, 3, ...). |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
105 Any attachments are saved alongside each email as XXXXXXXXX-attach1, |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
106 XXXXXXXXX-attach2 and so on, or with the name of the attachment if one |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
107 is present. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
108 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
109 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
110 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
111 <term>-V</term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
112 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
113 Show program version and exit. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
114 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
115 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
116 <varlistentry> |
31 | 117 <term>-b</term> |
118 <listitem><para> | |
119 Do not save the attachments for the RTF format of the email body. | |
120 </para></listitem> | |
121 </varlistentry> | |
122 <varlistentry> | |
16 | 123 <term>-c <replaceable class="parameter">format</replaceable></term> |
124 <listitem><para> | |
125 Set the Contact output mode. Use -cv for vcard format or -cl for an email list. | |
126 </para></listitem> | |
127 </varlistentry> | |
128 <varlistentry> | |
129 <term>-d <replaceable class="parameter">debug-file</replaceable></term> | |
130 <listitem><para> | |
33
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
131 Specify name of debug log file. The |
28 | 132 log file is not an ascii file, it is a binary file readable |
133 by <command>readpstlog</command>. | |
16 | 134 </para></listitem> |
135 </varlistentry> | |
136 <varlistentry> | |
137 <term>-h</term> | |
138 <listitem><para> | |
31 | 139 Show summary of options and exit. |
16 | 140 </para></listitem> |
141 </varlistentry> | |
142 <varlistentry> | |
143 <term>-k</term> | |
144 <listitem><para> | |
145 Changes the output format to KMail. | |
146 </para></listitem> | |
147 </varlistentry> | |
148 <varlistentry> | |
20 | 149 <term>-o <replaceable class="parameter">output-directory</replaceable></term> |
16 | 150 <listitem><para> |
151 Specifies the output directory. The directory must already exist, and | |
152 is entered after the PST file is opened, but before any processing of | |
153 files commences. | |
154 </para></listitem> | |
155 </varlistentry> | |
156 <varlistentry> | |
157 <term>-q</term> | |
158 <listitem><para> | |
159 Changes to silent mode. No feedback is printed to the screen, except | |
160 for error messages. | |
161 </para></listitem> | |
162 </varlistentry> | |
163 <varlistentry> | |
164 <term>-r</term> | |
165 <listitem><para> | |
166 Changes the output format to Recursive. This will create folders as | |
21 | 167 named in the PST file, and will put all emails in a file called "mbox" |
16 | 168 inside each folder. These files are then compatible with all |
169 mbox-compatible email clients. | |
170 </para></listitem> | |
171 </varlistentry> | |
172 <varlistentry> | |
173 <term>-w</term> | |
174 <listitem><para> | |
20 | 175 Overwrite any previous output files. Beware: When used with the -S |
16 | 176 switch, this will remove all files from the target folder before |
177 writing. This is to keep the count of emails and attachments correct. | |
178 </para></listitem> | |
179 </varlistentry> | |
180 </variablelist> | |
181 </refsect1> | |
182 | |
20 | 183 <refsect1 id='readpst.also.1'> |
16 | 184 <title>See Also</title> |
185 <para> | |
25 | 186 <citerefentry><refentrytitle>readpstlog</refentrytitle> <manvolnum>1</manvolnum> </citerefentry> |
16 | 187 </para> |
188 </refsect1> | |
189 | |
20 | 190 <refsect1 id='readpst.author.1'> |
16 | 191 <title>Author</title> |
192 <para> | |
193 This manual page was originally written by Dave Smith | |
194 <dave.s@earthcorp.com>, and updated by Joe Nahmias <joe@nahmias.net> | |
195 for the Debian GNU/Linux system (but may be used by others). It was | |
20 | 196 subsequently updated by Brad Hards <bradh@frogmouth.net>, and converted to |
16 | 197 xml format by Carl Byington <carl@five-ten-sg.com>. |
198 </para> | |
199 </refsect1> | |
200 | |
20 | 201 <refsect1 id='readpst.copyright.1'> |
16 | 202 <title>Copyright</title> |
203 <para> | |
204 Copyright (C) 2002 by David Smith <dave.s@earthcorp.com>. | |
99
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
205 XML version Copyright (C) 2008 by 510 Software Group <carl@five-ten-sg.com>. |
16 | 206 </para> |
207 <para> | |
208 This program is free software; you can redistribute it and/or modify it | |
209 under the terms of the GNU General Public License as published by the | |
210 Free Software Foundation; either version 2, or (at your option) any | |
211 later version. | |
212 </para> | |
213 <para> | |
214 You should have received a copy of the GNU General Public License along | |
215 with this program; see the file COPYING. If not, please write to the | |
216 Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
217 </para> | |
218 </refsect1> | |
219 | |
20 | 220 <refsect1 id='readpst.version.1'> |
52 | 221 <title>Version</title> |
16 | 222 <para> |
52 | 223 @VERSION@ |
16 | 224 </para> |
225 </refsect1> | |
226 </refentry> | |
227 | |
228 | |
43 | 229 <refentry id="lspst.1"> |
230 <refentryinfo> | |
118
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
231 <date>2009-01-25</date> |
43 | 232 </refentryinfo> |
233 | |
234 <refmeta> | |
235 <refentrytitle>lspst</refentrytitle> | |
236 <manvolnum>1</manvolnum> | |
237 <refmiscinfo>lspst @VERSION@</refmiscinfo> | |
238 </refmeta> | |
239 | |
240 <refnamediv id='lspst.name.1'> | |
241 <refname>lspst</refname> | |
242 <refpurpose>list PST (MS Outlook Personal Folders) file data</refpurpose> | |
243 </refnamediv> | |
244 | |
245 <refsynopsisdiv id='lspst.synopsis.1'> | |
246 <title>Synopsis</title> | |
247 <cmdsynopsis> | |
248 <command>lspst</command> | |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
249 <arg><option>-V</option></arg> |
50 | 250 <arg><option>-d <replaceable class="parameter">debug-file</replaceable></option></arg> |
251 <arg><option>-h</option></arg> | |
43 | 252 <arg choice='plain'>pstfile</arg> |
253 </cmdsynopsis> | |
254 </refsynopsisdiv> | |
255 | |
50 | 256 <refsect1 id='lspst.options.1'> |
257 <title>Options</title> | |
258 <variablelist> | |
259 <varlistentry> | |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
260 <term>-V</term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
261 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
262 Show program version and exit. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
263 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
264 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
265 <varlistentry> |
50 | 266 <term>-d <replaceable class="parameter">debug-file</replaceable></term> |
267 <listitem><para> | |
268 Specify name of debug log file. The | |
269 log file is not an ascii file, it is a binary file readable | |
270 by <command>readpstlog</command>. | |
271 </para></listitem> | |
272 </varlistentry> | |
273 <varlistentry> | |
274 <term>-h</term> | |
275 <listitem><para> | |
276 Show summary of options and exit. | |
277 </para></listitem> | |
278 </varlistentry> | |
279 </variablelist> | |
280 </refsect1> | |
281 | |
43 | 282 <refsect1 id='lspst.description.1'> |
283 <title>Description</title> | |
284 <para><command>lspst</command> is a program that can read an Outlook | |
285 PST (Personal Folders) file and produce a simple listing of the | |
57
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
286 data (contacts, email subjects, etc). |
43 | 287 </para> |
288 </refsect1> | |
289 | |
290 <refsect1 id='lspst.also.1'> | |
291 <title>See Also</title> | |
292 <para> | |
293 <citerefentry><refentrytitle>readpstlog</refentrytitle> <manvolnum>1</manvolnum> </citerefentry> | |
294 </para> | |
295 </refsect1> | |
296 | |
297 <refsect1 id='lspst.author.1'> | |
298 <title>Author</title> | |
299 <para> | |
300 lspst was written by Joe Nahmias <joe@nahmias.net> based on readpst. | |
301 This man page was written by 510 Software Group <carl@five-ten-sg.com>. | |
302 </para> | |
303 </refsect1> | |
304 | |
305 <refsect1 id='lspst.copyright.1'> | |
306 <title>Copyright</title> | |
307 <para> | |
308 Copyright (C) 2004 by Joe Nahmias <joe@nahmias.net>. | |
309 </para> | |
310 <para> | |
311 This program is free software; you can redistribute it and/or modify it | |
312 under the terms of the GNU General Public License as published by the | |
313 Free Software Foundation; either version 2, or (at your option) any | |
314 later version. | |
315 </para> | |
316 <para> | |
317 You should have received a copy of the GNU General Public License along | |
318 with this program; see the file COPYING. If not, please write to the | |
319 Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
320 </para> | |
321 </refsect1> | |
322 | |
323 <refsect1 id='lspst.version.1'> | |
52 | 324 <title>Version</title> |
43 | 325 <para> |
52 | 326 @VERSION@ |
43 | 327 </para> |
328 </refsect1> | |
329 </refentry> | |
330 | |
331 | |
16 | 332 <refentry id="readpstlog.1"> |
333 <refentryinfo> | |
118
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
334 <date>2009-01-25</date> |
16 | 335 </refentryinfo> |
336 | |
337 <refmeta> | |
338 <refentrytitle>readpstlog</refentrytitle> | |
339 <manvolnum>1</manvolnum> | |
340 <refmiscinfo>readpstlog @VERSION@</refmiscinfo> | |
341 </refmeta> | |
342 | |
20 | 343 <refnamediv id='readpstlog.name.1'> |
16 | 344 <refname>readpstlog</refname> |
24 | 345 <refpurpose>convert a <command>readpst</command> logfile to text format</refpurpose> |
16 | 346 </refnamediv> |
347 | |
20 | 348 <refsynopsisdiv id='readpstlog.synopsis.1'> |
16 | 349 <title>Synopsis</title> |
350 <cmdsynopsis> | |
24 | 351 <command>readpstlog</command> |
16 | 352 <arg><option>-f <replaceable class="parameter">format</replaceable></option></arg> |
353 <arg><option>-t <replaceable class="parameter">include-types</replaceable></option></arg> | |
354 <arg><option>-x <replaceable class="parameter">exclude-types</replaceable></option></arg> | |
24 | 355 <arg choice='plain'>logfile</arg> |
16 | 356 </cmdsynopsis> |
357 </refsynopsisdiv> | |
358 | |
20 | 359 <refsect1 id='readpstlog.description.1'> |
360 <title>Description</title> | |
21 | 361 <para><command>readpstlog</command> |
24 | 362 is a program that converts the binary logfile generated |
363 by <command>readpst</command> to a more desirable text format. | |
20 | 364 </para> |
365 </refsect1> | |
366 | |
367 <refsect1 id='readpstlog.options.1'> | |
16 | 368 <title>Options</title> |
369 <variablelist> | |
370 <varlistentry> | |
371 <term>-f <replaceable class="parameter">format</replaceable></term> | |
372 <listitem><para> | |
373 Sets the format of the text log output. Currently, the only valid output | |
36 | 374 formats are T, for single line text, D for the default default multi line |
375 format, and I for an indented style with single line text. | |
16 | 376 </para></listitem> |
377 </varlistentry> | |
378 <varlistentry> | |
379 <term>-t <replaceable class="parameter">include-types</replaceable></term> | |
380 <listitem><para> | |
381 Print only the specified types of log messages. | |
382 Types are specified in a comma-delimited list (e.g. 3,10,5,6). | |
383 </para></listitem> | |
384 </varlistentry> | |
385 <varlistentry> | |
386 <term>-x <replaceable class="parameter">exclude-types</replaceable></term> | |
387 <listitem><para> | |
388 Exclude the specified types of log messages. | |
389 Types are specified in a comma-delimited list (e.g. 3,10,5,6). | |
390 </para></listitem> | |
391 </varlistentry> | |
392 </variablelist> | |
393 </refsect1> | |
394 | |
20 | 395 <refsect1 id='readpstlog.message.types.1'> |
16 | 396 <title>Message Types</title> |
24 | 397 <para><command>readpstlog</command> understands the following types of log |
398 messages: | |
16 | 399 </para> |
400 <variablelist> | |
20 | 401 <varlistentry> |
402 <term>1</term> | |
403 <listitem><para> | |
404 File accesses | |
405 </para></listitem> | |
406 </varlistentry> | |
407 <varlistentry> | |
408 <term>2</term> | |
409 <listitem><para> | |
410 Index accesses | |
411 </para></listitem> | |
412 </varlistentry> | |
413 <varlistentry> | |
414 <term>3</term> | |
415 <listitem><para> | |
416 New email found | |
417 </para></listitem> | |
418 </varlistentry> | |
419 <varlistentry> | |
420 <term>4</term> | |
421 <listitem><para> | |
422 Warnings | |
423 </para></listitem> | |
424 </varlistentry> | |
425 <varlistentry> | |
426 <term>5</term> | |
427 <listitem><para> | |
428 Read accesses | |
429 </para></listitem> | |
430 </varlistentry> | |
431 <varlistentry> | |
432 <term>6</term> | |
433 <listitem><para> | |
434 Informational messages | |
435 </para></listitem> | |
436 </varlistentry> | |
437 <varlistentry> | |
438 <term>7</term> | |
439 <listitem><para> | |
440 Main function calls | |
441 </para></listitem> | |
442 </varlistentry> | |
443 <varlistentry> | |
444 <term>8</term> | |
445 <listitem><para> | |
446 Decrypting calls | |
447 </para></listitem> | |
448 </varlistentry> | |
449 <varlistentry> | |
36 | 450 <term>9</term> |
451 <listitem><para> | |
452 Function entries | |
453 </para></listitem> | |
454 </varlistentry> | |
455 <varlistentry> | |
20 | 456 <term>10</term> |
457 <listitem><para> | |
36 | 458 Function exits |
20 | 459 </para></listitem> |
460 </varlistentry> | |
461 <varlistentry> | |
462 <term>11</term> | |
463 <listitem><para> | |
464 HexDump calls | |
465 </para></listitem> | |
466 </varlistentry> | |
16 | 467 </variablelist> |
468 </refsect1> | |
469 | |
20 | 470 <refsect1 id='readpstlog.author.1'> |
16 | 471 <title>Author</title> |
472 <para> | |
473 This manual page was written by Joe Nahmias <joe@nahmias.net> | |
474 for the Debian GNU/Linux system (but may be used by others). It was | |
475 converted to xml format by Carl Byington <carl@five-ten-sg.com>. | |
476 </para> | |
477 </refsect1> | |
478 | |
101
1fc33da23175
fix for orphan children when building descriptor tree, avoid writing uninitialized data to debug log file
Carl Byington <carl@five-ten-sg.com>
parents:
100
diff
changeset
|
479 <refsect1 id='readpstlog.todo.1'> |
1fc33da23175
fix for orphan children when building descriptor tree, avoid writing uninitialized data to debug log file
Carl Byington <carl@five-ten-sg.com>
parents:
100
diff
changeset
|
480 <title>TODO</title> |
1fc33da23175
fix for orphan children when building descriptor tree, avoid writing uninitialized data to debug log file
Carl Byington <carl@five-ten-sg.com>
parents:
100
diff
changeset
|
481 <para> |
1fc33da23175
fix for orphan children when building descriptor tree, avoid writing uninitialized data to debug log file
Carl Byington <carl@five-ten-sg.com>
parents:
100
diff
changeset
|
482 The binary debug log file is generally much larger than the .pst file, |
1fc33da23175
fix for orphan children when building descriptor tree, avoid writing uninitialized data to debug log file
Carl Byington <carl@five-ten-sg.com>
parents:
100
diff
changeset
|
483 so we need to switch to ftello/fseeko there also to handle files |
1fc33da23175
fix for orphan children when building descriptor tree, avoid writing uninitialized data to debug log file
Carl Byington <carl@five-ten-sg.com>
parents:
100
diff
changeset
|
484 larger than 2GB. |
1fc33da23175
fix for orphan children when building descriptor tree, avoid writing uninitialized data to debug log file
Carl Byington <carl@five-ten-sg.com>
parents:
100
diff
changeset
|
485 </para> |
1fc33da23175
fix for orphan children when building descriptor tree, avoid writing uninitialized data to debug log file
Carl Byington <carl@five-ten-sg.com>
parents:
100
diff
changeset
|
486 </refsect1> |
1fc33da23175
fix for orphan children when building descriptor tree, avoid writing uninitialized data to debug log file
Carl Byington <carl@five-ten-sg.com>
parents:
100
diff
changeset
|
487 |
20 | 488 <refsect1 id='readpstlog.copyright.1'> |
16 | 489 <title>Copyright</title> |
490 <para> | |
491 Copyright (C) 2002 by David Smith <dave.s@earthcorp.com>. | |
99
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
492 XML version Copyright (C) 2008 by 510 Software Group <carl@five-ten-sg.com>. |
16 | 493 </para> |
494 <para> | |
495 This program is free software; you can redistribute it and/or modify it | |
496 under the terms of the GNU General Public License as published by the | |
497 Free Software Foundation; either version 2, or (at your option) any | |
498 later version. | |
499 </para> | |
500 <para> | |
501 You should have received a copy of the GNU General Public License along | |
502 with this program; see the file COPYING. If not, please write to the | |
503 Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
504 </para> | |
505 </refsect1> | |
506 | |
20 | 507 <refsect1 id='readpstlog.version.1'> |
52 | 508 <title>Version</title> |
16 | 509 <para> |
52 | 510 @VERSION@ |
16 | 511 </para> |
512 </refsect1> | |
513 </refentry> | |
24 | 514 |
515 | |
516 <refentry id="pst2ldif.1"> | |
517 <refentryinfo> | |
118
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
518 <date>2009-01-25</date> |
24 | 519 </refentryinfo> |
520 | |
521 <refmeta> | |
522 <refentrytitle>pst2ldif</refentrytitle> | |
523 <manvolnum>1</manvolnum> | |
524 <refmiscinfo>pst2ldif @VERSION@</refmiscinfo> | |
525 </refmeta> | |
526 | |
527 <refnamediv id='pst2ldif.name.1'> | |
528 <refname>pst2ldif</refname> | |
529 <refpurpose>extract contacts from a MS Outlook .pst file in .ldif format</refpurpose> | |
530 </refnamediv> | |
531 | |
532 <refsynopsisdiv id='pst2ldif.synopsis.1'> | |
533 <title>Synopsis</title> | |
534 <cmdsynopsis> | |
535 <command>pst2ldif</command> | |
536 <arg><option>-V</option></arg> | |
537 <arg><option>-b <replaceable class="parameter">ldap-base</replaceable></option></arg> | |
538 <arg><option>-c <replaceable class="parameter">class</replaceable></option></arg> | |
99
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
539 <arg><option>-C <replaceable class="parameter">character-set</replaceable></option></arg> |
33
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
540 <arg><option>-d <replaceable class="parameter">debug-file</replaceable></option></arg> |
104
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
541 <arg><option>-l <replaceable class="parameter">extra-line</replaceable></option></arg> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
542 <arg><option>-o</option></arg> |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
543 <arg><option>-h</option></arg> |
24 | 544 <arg choice='plain'>pstfilename</arg> |
545 </cmdsynopsis> | |
546 </refsynopsisdiv> | |
547 | |
548 <refsect1 id='pst2ldif.options.1'> | |
549 <title>Options</title> | |
550 <variablelist> | |
551 <varlistentry> | |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
552 <term>-V</term> |
24 | 553 <listitem><para> |
554 Show program version. Subsequent options are then ignored. | |
555 </para></listitem> | |
556 </varlistentry> | |
557 <varlistentry> | |
558 <term>-b <replaceable class="parameter">ldap-base</replaceable></term> | |
559 <listitem><para> | |
560 Sets the ldap base value used in the dn records. You probably want to | |
561 use something like "o=organization, c=US". | |
562 </para></listitem> | |
563 </varlistentry> | |
564 <varlistentry> | |
565 <term>-c <replaceable class="parameter">class</replaceable></term> | |
566 <listitem><para> | |
567 Sets the objectClass values for the contact items. This class needs to be | |
568 defined in the schema used by your LDAP server, and at a minimum it must | |
104
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
569 contain the ldap attributes given below. This option may be specified |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
570 multiple times to generate entries with multiple object classes. |
24 | 571 </para></listitem> |
572 </varlistentry> | |
33
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
573 <varlistentry> |
99
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
574 <term>-C <replaceable class="parameter">character-set</replaceable></term> |
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
575 <listitem><para> |
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
576 Specify the name of the character set used in your pst file for contacts. |
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
577 </para></listitem> |
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
578 </varlistentry> |
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
579 <varlistentry> |
33
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
580 <term>-d <replaceable class="parameter">debug-file</replaceable></term> |
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
581 <listitem><para> |
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
582 Specify name of debug log file. The |
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
583 log file is not an ascii file, it is a binary file readable |
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
584 by <command>readpstlog</command>. |
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
585 </para></listitem> |
12cac756bc05
enable -d option, but if not specified, don't generate a debug file
carl
parents:
32
diff
changeset
|
586 </varlistentry> |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
587 <varlistentry> |
104
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
588 <term>-l <replaceable class="parameter">extra-line</replaceable></term> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
589 <listitem><para> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
590 Specify an extra line to be added to each ldap entry. This |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
591 option may be specified multiple times to add multiple lines |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
592 to each ldap entry. |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
593 </para></listitem> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
594 </varlistentry> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
595 <varlistentry> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
596 <term>-o</term> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
597 <listitem><para> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
598 Use the old ldap schema, rather than the default new ldap schema. |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
599 The old schema generates multiple postalAddress attributes for |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
600 a single entry. The new schema generates a single postalAddress |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
601 (and homePostalAddress when available) attribute with $ delimiters |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
602 as specified in RFC4517. Using the old schema also generates two |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
603 extra leading entries, one for "dn:ldap base", and one for |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
604 "dn: cn=root, ldap base". |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
605 </para></listitem> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
606 </varlistentry> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
607 <varlistentry> |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
608 <term>-h</term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
609 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
610 Show summary of options. Subsequent options are then ignored. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
611 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
612 </varlistentry> |
24 | 613 </variablelist> |
614 </refsect1> | |
615 | |
616 <refsect1 id='pst2ldif.description.1'> | |
617 <title>Description</title> | |
618 <para><command>pst2ldif</command> | |
619 reads the contact information from a MS Outlook .pst file | |
620 and produces a .ldif file that may be used to import those contacts | |
104
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
621 into an LDAP database. The following ldap attributes are generated |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
622 for the old ldap schema: |
24 | 623 <simplelist> |
624 <member>cn </member> | |
625 <member>givenName </member> | |
626 <member>sn </member> | |
627 <member>personalTitle </member> | |
628 <member>company </member> | |
629 <member>mail </member> | |
630 <member>postalAddress </member> | |
631 <member>l </member> | |
632 <member>st </member> | |
633 <member>postalCode </member> | |
634 <member>c </member> | |
635 <member>homePhone </member> | |
636 <member>telephoneNumber </member> | |
637 <member>facsimileTelephoneNumber </member> | |
638 <member>mobile </member> | |
639 <member>description </member> | |
640 </simplelist> | |
104
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
641 The following attributes are generated for the new ldap schema: |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
642 <simplelist> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
643 <member>cn </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
644 <member>givenName </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
645 <member>sn </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
646 <member>title </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
647 <member>o </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
648 <member>mail </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
649 <member>postalAddress </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
650 <member>homePostalAddress </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
651 <member>l </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
652 <member>st </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
653 <member>postalCode </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
654 <member>c </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
655 <member>homePhone </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
656 <member>telephoneNumber </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
657 <member>facsimileTelephoneNumber </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
658 <member>mobile </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
659 <member>description </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
660 <member>labeledURI </member> |
39ba19372732
many fixes in pst2ldif by Robert Harris
Carl Byington <carl@five-ten-sg.com>
parents:
101
diff
changeset
|
661 </simplelist> |
24 | 662 </para> |
663 </refsect1> | |
664 | |
665 <refsect1 id='pst2ldif.copyright.1'> | |
666 <title>Copyright</title> | |
667 <para> | |
99
b7f456946c5b
add configure option --enable-dii=no to remove dependency on libgd.
Carl Byington <carl@five-ten-sg.com>
parents:
79
diff
changeset
|
668 Copyright (C) 2008 by 510 Software Group <carl@five-ten-sg.com> |
24 | 669 </para> |
670 <para> | |
671 This program is free software; you can redistribute it and/or modify it | |
672 under the terms of the GNU General Public License as published by the | |
673 Free Software Foundation; either version 2, or (at your option) any | |
674 later version. | |
675 </para> | |
676 <para> | |
677 You should have received a copy of the GNU General Public License along | |
678 with this program; see the file COPYING. If not, please write to the | |
679 Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
680 </para> | |
681 </refsect1> | |
682 | |
683 <refsect1 id='pst2ldif.version.1'> | |
52 | 684 <title>Version</title> |
24 | 685 <para> |
52 | 686 @VERSION@ |
24 | 687 </para> |
688 </refsect1> | |
689 </refentry> | |
690 | |
691 | |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
692 <refentry id="pst2dii.1"> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
693 <refentryinfo> |
118
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
694 <date>2009-01-25</date> |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
695 </refentryinfo> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
696 |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
697 <refmeta> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
698 <refentrytitle>pst2dii</refentrytitle> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
699 <manvolnum>1</manvolnum> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
700 <refmiscinfo>pst2dii @VERSION@</refmiscinfo> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
701 </refmeta> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
702 |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
703 <refnamediv id='pst2dii.name.1'> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
704 <refname>pst2dii</refname> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
705 <refpurpose>extract email messages from a MS Outlook .pst file in DII load format</refpurpose> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
706 </refnamediv> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
707 |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
708 <refsynopsisdiv id='pst2dii.synopsis.1'> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
709 <title>Synopsis</title> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
710 <cmdsynopsis> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
711 <command>pst2dii</command> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
712 <arg><option>-B <replaceable class="parameter">bates-prefix</replaceable></option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
713 <arg><option>-O <replaceable class="parameter">dii-output-file</replaceable></option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
714 <arg><option>-V</option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
715 <arg><option>-b <replaceable class="parameter">bates-number</replaceable></option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
716 <arg><option>-c <replaceable class="parameter">bates-color</replaceable></option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
717 <arg><option>-d <replaceable class="parameter">debug-file</replaceable></option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
718 <arg><option>-f <replaceable class="parameter">ttf-font-file</replaceable></option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
719 <arg><option>-h</option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
720 <arg><option>-o <replaceable class="parameter">output-directory</replaceable></option></arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
721 <arg choice='plain'>pstfilename</arg> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
722 </cmdsynopsis> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
723 </refsynopsisdiv> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
724 |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
725 <refsect1 id='pst2dii.options.1'> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
726 <title>Options</title> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
727 <variablelist> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
728 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
729 <term>-B <replaceable class="parameter">bates-prefix</replaceable></term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
730 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
731 Sets the bates prefix string. The bates sequence number is appended to |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
732 this string, and printed on each page. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
733 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
734 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
735 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
736 <term>-O <replaceable class="parameter">dii-output-file</replaceable></term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
737 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
738 Name of the output DII load file. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
739 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
740 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
741 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
742 <term>-V</term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
743 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
744 Show program version. Subsequent options are then ignored. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
745 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
746 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
747 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
748 <term>-b <replaceable class="parameter">bates-number</replaceable></term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
749 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
750 Starting bates sequence number. The default is zero. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
751 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
752 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
753 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
754 <term>-c <replaceable class="parameter">bates-color</replaceable></term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
755 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
756 Font color for the bates stamp on each page, specified as 6 hex digits |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
757 as rrggbb values. The default is ff0000 for bright red. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
758 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
759 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
760 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
761 <term>-d <replaceable class="parameter">debug-file</replaceable></term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
762 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
763 Specify name of debug log file. The |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
764 log file is not an ascii file, it is a binary file readable |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
765 by <command>readpstlog</command>. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
766 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
767 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
768 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
769 <term>-f <replaceable class="parameter">ttf-font-file</replaceable></term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
770 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
771 Specify name of a true type font file. This should be a fixed pitch font. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
772 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
773 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
774 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
775 <term>-h</term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
776 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
777 Show summary of options. Subsequent options are then ignored. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
778 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
779 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
780 <varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
781 <term>-o <replaceable class="parameter">output-directory</replaceable></term> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
782 <listitem><para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
783 Specifies the output directory. The directory must already exist. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
784 </para></listitem> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
785 </varlistentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
786 </variablelist> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
787 </refsect1> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
788 |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
789 <refsect1 id='pst2dii.description.1'> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
790 <title>Description</title> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
791 <para><command>pst2dii</command> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
792 reads the email messages from a MS Outlook .pst file |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
793 and produces a DII load file that may be used to import message |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
794 summaries into a Summation DII system. The DII output file contains |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
795 references to the image and attachment files in the output directory. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
796 </para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
797 </refsect1> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
798 |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
799 <refsect1 id='pst2dii.copyright.1'> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
800 <title>Copyright</title> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
801 <para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
802 Copyright (C) 2008 by 510 Software Group <carl@five-ten-sg.com> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
803 </para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
804 <para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
805 This program is free software; you can redistribute it and/or modify it |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
806 under the terms of the GNU General Public License as published by the |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
807 Free Software Foundation; either version 2, or (at your option) any |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
808 later version. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
809 </para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
810 <para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
811 You should have received a copy of the GNU General Public License along |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
812 with this program; see the file COPYING. If not, please write to the |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
813 Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
814 </para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
815 </refsect1> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
816 |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
817 <refsect1 id='pst2dii.version.1'> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
818 <title>Version</title> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
819 <para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
820 @VERSION@ |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
821 </para> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
822 </refsect1> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
823 </refentry> |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
824 |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
825 |
24 | 826 <refentry id="pst.5"> |
827 <refentryinfo> | |
118
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
828 <date>2009-01-25</date> |
24 | 829 </refentryinfo> |
830 | |
831 <refmeta> | |
832 <refentrytitle>outlook.pst</refentrytitle> | |
833 <manvolnum>5</manvolnum> | |
834 </refmeta> | |
835 | |
836 <refnamediv id='pst.name.1'> | |
837 <refname>outlook.pst</refname> | |
838 <refpurpose>format of MS Outlook .pst file</refpurpose> | |
839 </refnamediv> | |
840 | |
841 <refsynopsisdiv id='pst.synopsis.1'> | |
842 <title>Synopsis</title> | |
843 <cmdsynopsis> | |
844 <command>outlook.pst</command> | |
845 </cmdsynopsis> | |
846 </refsynopsisdiv> | |
847 | |
848 <refsect1 id='pst.file.overview.5'> | |
849 <title>Overview</title> | |
850 <para> | |
851 Each item in a .pst file is identified by two id values ID1 and ID2. | |
852 There are two separate b-trees indexed by these ID1 and ID2 values. | |
57
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
853 Starting with Outlook 2003, the file format changed from one with 32 |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
854 bit pointers, to one with 64 bit pointers. We describe both formats |
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
855 here. |
24 | 856 </para> |
857 </refsect1> | |
858 | |
44 | 859 <refsect1 id='pst.file.header.32.5'> |
860 <title>32 bit File Header</title> | |
24 | 861 <para> |
44 | 862 The 32 bit file header is located at offset 0 in the .pst file. |
24 | 863 </para> |
864 <literallayout class="monospaced"><![CDATA[ | |
865 0000 21 42 44 4e 49 f8 64 d9 53 4d 0e 00 13 00 01 01 | |
866 0010 00 00 00 00 00 00 00 00 50 d6 03 00 bd 1e 02 00 | |
867 0020 08 4c 00 00 00 04 00 00 00 04 00 00 0f 04 00 00 | |
868 0030 0d 40 00 00 99 0a 01 00 18 04 00 00 0d 40 00 00 | |
869 0040 0d 40 00 00 11 80 00 00 02 04 00 00 0a 04 00 00 | |
870 0050 00 04 00 00 00 04 00 00 0f 04 00 00 0f 04 00 00 | |
871 0060 0f 04 00 00 0d 40 00 00 00 04 00 00 00 04 00 00 | |
872 0070 04 40 00 00 00 04 00 00 00 04 00 00 00 04 00 00 | |
873 0080 00 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 | |
874 0090 00 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 | |
875 00a0 0c 09 00 00 00 00 00 00 00 04 27 00 00 24 23 00 | |
876 00b0 c0 09 0a 00 00 c8 00 00 bc 1e 02 00 00 7e 0c 00 | |
877 00c0 b4 1e 02 00 00 54 00 00 01 00 00 00 23 55 44 d1 | |
878 00d0 5a 4f ce 6b 80 ff ff ff 00 00 00 00 00 00 00 00 | |
879 00e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
880 00f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
881 0100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
882 0110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
883 0120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
884 0130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
885 0140 00 00 00 00 00 00 00 00 00 00 00 00 3f ff ff ff | |
886 0150 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
887 0160 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
888 0170 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
889 0180 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
890 0190 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
891 01a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
892 01b0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
893 01c0 ff ff ff ff ff ff ff ff ff ff ff ff 80 01 00 00 | |
894 01d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
895 01e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
896 01f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
897 | |
898 0000 signature [4 bytes] 0x4e444221 constant | |
28 | 899 000a indexType [1 byte] 0x0e constant |
44 | 900 01cd encryptionType [1 byte] 0x01 in this case |
24 | 901 00a8 total file size [4 bytes] 0x270400 in this case |
28 | 902 00c0 backPointer1 [4 bytes] 0x021eb4 in this case |
903 00c4 offsetIndex1 [4 bytes] 0x005400 in this case | |
904 00b8 backPointer2 [4 bytes] 0x021ebc in this case | |
905 00bc offsetIndex2 [4 bytes] 0x0c7e00 in this case | |
24 | 906 ]]></literallayout> |
907 <para> | |
118
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
908 We only support index types 0x0e, 0x0f, and 0x17, and encryption types |
79
56fa05fd5271
Patch from Robert Simpson for encryption type 2.
Carl Byington <carl@five-ten-sg.com>
parents:
77
diff
changeset
|
909 0x00, 0x01 and 0x02. Index type 0x0e is the older 32 bit Outlook format. |
118
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
910 Index type 0x0f seems to be rare, and so far the data seems to be |
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
911 identical to that in type 0x0e files. |
57
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
912 Index type 0x17 is the newer 64 bit Outlook format. Encryption |
79
56fa05fd5271
Patch from Robert Simpson for encryption type 2.
Carl Byington <carl@five-ten-sg.com>
parents:
77
diff
changeset
|
913 type 0x00 is no encryption, type 0x01 is "compressible" encryption |
56fa05fd5271
Patch from Robert Simpson for encryption type 2.
Carl Byington <carl@five-ten-sg.com>
parents:
77
diff
changeset
|
914 which is a simple substitution cipher, and type 0x02 is "strong" |
118
0f1492b7fe8b
patch from Fridrich Strba for building on mingw and general cleanup of autoconf files
Carl Byington <carl@five-ten-sg.com>
parents:
104
diff
changeset
|
915 encryption, which is a simple three rotor Enigma cipher from WWII. |
24 | 916 </para> |
917 <para> | |
28 | 918 offsetIndex1 is the file offset of the root of the |
24 | 919 index1 b-tree, which contains (ID1, offset, size, unknown) tuples |
28 | 920 for each item in the file. backPointer1 is the value that should |
24 | 921 appear in the parent pointer of that root node. |
922 </para> | |
923 <para> | |
28 | 924 offsetIndex2 is the file offset of the root of the |
24 | 925 index2 b-tree, which contains (ID2, DESC-ID1, LIST-ID1, PARENT-ID2) |
28 | 926 tuples for each item in the file. backPointer2 is the value that should |
24 | 927 appear in the parent pointer of that root node. |
928 </para> | |
929 </refsect1> | |
930 | |
44 | 931 <refsect1 id='pst.file.header.64.5'> |
932 <title>64 bit File Header</title> | |
24 | 933 <para> |
44 | 934 The 64 bit file header is located at offset 0 in the .pst file. |
935 </para> | |
936 <literallayout class="monospaced"><![CDATA[ | |
937 0000 21 42 44 4e 03 02 23 b2 53 4d 17 00 13 00 01 01 | |
938 0010 00 00 00 00 00 00 00 00 04 00 00 00 01 00 00 00 | |
939 0020 8b 00 00 00 00 00 00 00 1d 00 00 00 00 04 00 00 | |
940 0030 00 04 00 00 04 04 00 00 00 40 00 00 02 00 01 00 | |
941 0040 00 04 00 00 00 04 00 00 00 04 00 00 00 80 00 00 | |
942 0050 00 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 | |
943 0060 04 04 00 00 04 04 00 00 04 04 00 00 00 04 00 00 | |
944 0070 00 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 | |
945 0080 00 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 | |
946 0090 00 04 00 00 00 04 00 00 00 04 00 00 00 04 00 00 | |
947 00a0 00 04 00 00 00 04 00 00 02 04 00 00 00 00 00 00 | |
948 00b0 00 00 00 00 00 00 00 00 00 24 04 00 00 00 00 00 | |
949 00c0 00 44 00 00 00 00 00 00 00 71 03 00 00 00 00 00 | |
950 00d0 00 22 00 00 00 00 00 00 83 00 00 00 00 00 00 00 | |
951 00e0 00 6a 00 00 00 00 00 00 8a 00 00 00 00 00 00 00 | |
952 00f0 00 60 00 00 00 00 00 00 01 00 00 00 00 00 00 00 | |
953 0100 ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
954 0110 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
955 0120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
956 0130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
957 0140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
958 0150 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
959 0160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
960 0170 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
961 0180 7f ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
962 0190 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
963 01a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
964 01b0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
965 01c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
966 01d0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
967 01e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
968 01f0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff | |
969 0200 80 00 00 00 e8 00 00 00 00 00 00 00 c4 68 cb 89 | |
970 | |
971 0000 signature [4 bytes] 0x4e444221 constant | |
972 000a indexType [1 byte] 0x17 constant | |
973 0201 encryptionType [1 byte] 0x00 in this case | |
974 00b8 total file size [8 bytes] 0x042400 in this case | |
975 00e8 backPointer1 [8 bytes] 0x00008a in this case | |
976 00f0 offsetIndex1 [8 bytes] 0x006000 in this case | |
977 00d8 backPointer2 [8 bytes] 0x000083 in this case | |
978 00e0 offsetIndex2 [8 bytes] 0x006a00 in this case | |
979 ]]></literallayout> | |
980 </refsect1> | |
981 | |
982 <refsect1 id='pst.file.node1.32.5'> | |
983 <title>32 bit Index 1 Node</title> | |
984 <para> | |
52 | 985 The 32 bit index1 b-tree nodes are 512 byte blocks with the |
44 | 986 following format. |
24 | 987 </para> |
988 <literallayout class="monospaced"><![CDATA[ | |
989 0000 04 00 00 00 8a 1e 02 00 00 1c 0b 00 | |
990 000c 58 27 03 00 b3 1e 02 00 00 52 00 00 | |
991 0018 00 00 00 00 00 00 00 00 00 00 00 00 | |
992 0024 00 00 00 00 00 00 00 00 00 00 00 00 | |
993 0030 00 00 00 00 00 00 00 00 00 00 00 00 | |
994 003c 00 00 00 00 00 00 00 00 00 00 00 00 | |
995 0048 00 00 00 00 00 00 00 00 00 00 00 00 | |
996 0054 00 00 00 00 00 00 00 00 00 00 00 00 | |
997 0060 00 00 00 00 00 00 00 00 00 00 00 00 | |
998 006c 00 00 00 00 00 00 00 00 00 00 00 00 | |
999 0078 00 00 00 00 00 00 00 00 00 00 00 00 | |
1000 0084 00 00 00 00 00 00 00 00 00 00 00 00 | |
1001 0090 00 00 00 00 00 00 00 00 00 00 00 00 | |
1002 009c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1003 00a8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1004 00b4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1005 00c0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1006 00cc 00 00 00 00 00 00 00 00 00 00 00 00 | |
1007 00d8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1008 00e4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1009 00f0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1010 00fc 00 00 00 00 00 00 00 00 00 00 00 00 | |
1011 0108 00 00 00 00 00 00 00 00 00 00 00 00 | |
1012 0114 00 00 00 00 00 00 00 00 00 00 00 00 | |
1013 0120 00 00 00 00 00 00 00 00 00 00 00 00 | |
1014 012c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1015 0138 00 00 00 00 00 00 00 00 00 00 00 00 | |
1016 0144 00 00 00 00 00 00 00 00 00 00 00 00 | |
1017 0150 00 00 00 00 00 00 00 00 00 00 00 00 | |
1018 015c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1019 0168 00 00 00 00 00 00 00 00 00 00 00 00 | |
1020 0174 00 00 00 00 00 00 00 00 00 00 00 00 | |
1021 0180 00 00 00 00 00 00 00 00 00 00 00 00 | |
1022 018c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1023 0198 00 00 00 00 00 00 00 00 00 00 00 00 | |
1024 01a4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1025 01b0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1026 01bc 00 00 00 00 00 00 00 00 00 00 00 00 | |
1027 01c8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1028 01d4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1029 01e0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1030 01ec 00 00 00 00 02 29 0c 02 80 80 b6 4a | |
52 | 1031 01f8 b4 1e 02 00 27 9c cc 56 |
24 | 1032 |
28 | 1033 01f0 itemCount [1 byte] 0x02 in this case |
1034 01f1 maxItemCount [1 byte] 0x29 constant | |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1035 01f2 itemSize [1 byte] 0x0c constant |
28 | 1036 01f3 nodeLevel [1 byte] 0x02 in this case |
1037 01f8 backPointer [4 bytes] 0x021eb4 in this case | |
24 | 1038 ]]></literallayout> |
1039 <para> | |
28 | 1040 The itemCount specifies the number of 12 byte records that |
1041 are active. The nodeLevel is non-zero for this style of nodes. | |
1042 The leaf nodes have a different format. The backPointer must | |
1043 match the backPointer from the triple that pointed to this node. | |
24 | 1044 </para> |
1045 <para> | |
35 | 1046 Each item in this node is a triple of (ID1, backPointer, offset) |
24 | 1047 where the offset points to the next deeper node in the tree, the |
28 | 1048 backPointer value must match the backPointer in that deeper node, |
35 | 1049 and ID1 is the lowest ID1 value in the subtree. |
24 | 1050 </para> |
1051 </refsect1> | |
1052 | |
44 | 1053 <refsect1 id='pst.file.node1.64.5'> |
1054 <title>64 bit Index 1 Node</title> | |
24 | 1055 <para> |
44 | 1056 The 64 bit index1 b-tree nodes are 512 byte blocks with the |
1057 following format. | |
1058 </para> | |
1059 <literallayout class="monospaced"><![CDATA[ | |
1060 0000 04 00 00 00 00 00 00 00 88 00 00 00 | |
1061 000C 00 00 00 00 00 48 00 00 00 00 00 00 | |
1062 0018 74 00 00 00 00 00 00 00 86 00 00 00 | |
1063 0024 00 00 00 00 00 54 00 00 00 00 00 00 | |
1064 0030 00 00 00 00 00 00 00 00 00 00 00 00 | |
1065 003C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1066 0048 00 00 00 00 00 00 00 00 00 00 00 00 | |
1067 0054 00 00 00 00 00 00 00 00 00 00 00 00 | |
1068 0060 00 00 00 00 00 00 00 00 00 00 00 00 | |
1069 006C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1070 0078 00 00 00 00 00 00 00 00 00 00 00 00 | |
1071 0084 00 00 00 00 00 00 00 00 00 00 00 00 | |
1072 0090 00 00 00 00 00 00 00 00 00 00 00 00 | |
1073 009C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1074 00A8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1075 00B4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1076 00C0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1077 00CC 00 00 00 00 00 00 00 00 00 00 00 00 | |
1078 00D8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1079 00E4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1080 00F0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1081 00FC 00 00 00 00 00 00 00 00 00 00 00 00 | |
1082 0108 00 00 00 00 00 00 00 00 00 00 00 00 | |
1083 0114 00 00 00 00 00 00 00 00 00 00 00 00 | |
1084 0120 00 00 00 00 00 00 00 00 00 00 00 00 | |
1085 012C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1086 0138 00 00 00 00 00 00 00 00 00 00 00 00 | |
1087 0144 00 00 00 00 00 00 00 00 00 00 00 00 | |
1088 0150 00 00 00 00 00 00 00 00 00 00 00 00 | |
1089 015C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1090 0168 00 00 00 00 00 00 00 00 00 00 00 00 | |
1091 0174 00 00 00 00 00 00 00 00 00 00 00 00 | |
1092 0180 00 00 00 00 00 00 00 00 00 00 00 00 | |
1093 018C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1094 0198 00 00 00 00 00 00 00 00 00 00 00 00 | |
1095 01A4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1096 01B0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1097 01BC 00 00 00 00 00 00 00 00 00 00 00 00 | |
1098 01C8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1099 01D4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1100 01E0 00 00 00 00 00 00 00 00 02 14 18 01 | |
1101 01EC 00 00 00 00 80 80 8a 60 68 e5 b5 19 | |
1102 01F8 8a 00 00 00 00 00 00 00 | |
1103 | |
1104 01e8 itemCount [1 byte] 0x02 in this case | |
1105 01e9 maxItemCount [1 byte] 0x14 constant | |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1106 01ea itemSize [1 byte] 0x18 constant |
44 | 1107 01eb nodeLevel [1 byte] 0x01 in this case |
1108 01f8 backPointer [8 bytes] 0x00008a in this case | |
1109 ]]></literallayout> | |
1110 <para> | |
1111 The itemCount specifies the number of 24 byte records that | |
1112 are active. The nodeLevel is non-zero for this style of nodes. | |
1113 The leaf nodes have a different format. The backPointer must | |
1114 match the backPointer from the triple that pointed to this node. | |
1115 </para> | |
1116 <para> | |
1117 Each item in this node is a triple of (ID1, backPointer, offset) | |
1118 where the offset points to the next deeper node in the tree, the | |
1119 backPointer value must match the backPointer in that deeper node, | |
1120 and ID1 is the lowest ID1 value in the subtree. | |
1121 </para> | |
1122 </refsect1> | |
1123 | |
1124 <refsect1 id='pst.file.leaf1.32.5'> | |
1125 <title>32 bit Index 1 Leaf Node</title> | |
1126 <para> | |
52 | 1127 The 32 bit index1 b-tree leaf nodes are 512 byte blocks with the |
44 | 1128 following format. |
24 | 1129 </para> |
1130 <literallayout class="monospaced"><![CDATA[ | |
1131 0000 04 00 00 00 00 58 00 00 64 00 0f 00 | |
1132 000c 08 00 00 00 80 58 00 00 ac 00 06 00 | |
1133 0018 0c 00 00 00 40 59 00 00 ac 00 06 00 | |
1134 0024 10 00 00 00 00 5a 00 00 bc 00 03 00 | |
1135 0030 14 00 00 00 00 5b 00 00 a4 00 02 00 | |
1136 003c 18 00 00 00 c0 5b 00 00 64 00 02 00 | |
1137 0048 1c 00 00 00 40 5c 00 00 5c 00 02 00 | |
1138 0054 50 00 00 00 80 62 00 00 60 00 02 00 | |
1139 0060 74 00 00 00 00 77 00 00 5e 00 02 00 | |
1140 006c 7c 00 00 00 80 77 00 00 66 00 02 00 | |
1141 0078 84 00 00 00 00 76 00 00 ca 00 02 00 | |
1142 0084 88 00 00 00 00 63 00 00 52 00 02 00 | |
1143 0090 90 00 00 00 00 79 00 00 58 00 02 00 | |
1144 009c cc 00 00 00 c0 61 00 00 76 00 02 00 | |
1145 00a8 e0 00 00 00 00 61 00 00 74 00 02 00 | |
1146 00b4 f4 00 00 00 80 65 00 00 6e 00 02 00 | |
1147 00c0 8c 01 00 00 40 60 00 00 70 00 02 00 | |
1148 00cc ea 01 00 00 80 61 00 00 10 00 02 00 | |
1149 00d8 ec 01 00 00 40 8a 00 00 f3 01 02 00 | |
1150 00e4 f0 01 00 00 80 93 00 00 f4 1f 02 00 | |
1151 00f0 fa 01 00 00 c0 7f 00 00 10 00 02 00 | |
1152 00fc 00 02 00 00 00 89 00 00 34 01 02 00 | |
1153 0108 1c 02 00 00 40 ec 00 00 12 06 02 00 | |
1154 0114 22 02 00 00 00 84 00 00 10 00 02 00 | |
1155 0120 24 02 00 00 c0 ea 00 00 3c 01 02 00 | |
1156 012c 40 02 00 00 00 f4 00 00 0a 06 02 00 | |
1157 0138 46 02 00 00 40 8c 00 00 10 00 02 00 | |
1158 0144 48 02 00 00 80 f2 00 00 36 01 02 00 | |
1159 0150 64 02 00 00 80 fb 00 00 bf 07 02 00 | |
1160 015c 6a 02 00 00 80 63 00 00 10 00 02 00 | |
1161 0168 6c 02 00 00 40 fa 00 00 2a 01 02 00 | |
1162 0174 6c 02 00 00 40 fa 00 00 2a 01 02 00 | |
1163 0180 6c 02 00 00 40 fa 00 00 2a 01 02 00 | |
1164 018c 6c 02 00 00 40 fa 00 00 2a 01 02 00 | |
1165 0198 6c 02 00 00 40 fa 00 00 2a 01 02 00 | |
1166 01a4 6c 02 00 00 40 fa 00 00 2a 01 02 00 | |
1167 01b0 64 02 00 00 80 fb 00 00 bf 07 02 00 | |
1168 01bc 64 02 00 00 80 fb 00 00 bf 07 02 00 | |
1169 01c8 64 02 00 00 80 fb 00 00 bf 07 02 00 | |
1170 01d4 64 02 00 00 80 fb 00 00 bf 07 02 00 | |
1171 01e0 64 02 00 00 80 fb 00 00 bf 07 02 00 | |
1172 01ec 00 00 00 00 1f 29 0c 00 80 80 5b b3 | |
52 | 1173 01f8 5a 67 01 00 4f ae 70 a7 |
24 | 1174 |
28 | 1175 01f0 itemCount [1 byte] 0x1f in this case |
1176 01f1 maxItemCount [1 byte] 0x29 constant | |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1177 01f2 itemSize [1 byte] 0x0c constant |
44 | 1178 01f3 nodeLevel [1 byte] 0x00 defines a leaf node |
28 | 1179 01f8 backPointer [4 bytes] 0x01675a in this case |
24 | 1180 ]]></literallayout> |
1181 <para> | |
28 | 1182 The itemCount specifies the number of 12 byte records that |
1183 are active. The nodeLevel is zero for these leaf nodes. | |
1184 The backPointer must match the backPointer from the triple | |
24 | 1185 that pointed to this node. |
1186 </para> | |
1187 <para> | |
1188 Each item in this node is a tuple of (ID1, offset, size, unknown) | |
35 | 1189 The two low order bits of the ID1 value seem to be flags. I have |
1190 never seen a case with bit zero set. Bit one indicates that the | |
1191 item is <emphasis>not</emphasis> encrypted. Note that references | |
1192 to these ID1 values elsewhere may have the low order bit set (and | |
1193 I don't know what that means), but when we do the search in this | |
1194 tree we need to clear that bit so that we can find the correct item. | |
24 | 1195 </para> |
1196 </refsect1> | |
1197 | |
44 | 1198 <refsect1 id='pst.file.leaf1.64.5'> |
1199 <title>64 bit Index 1 Leaf Node</title> | |
24 | 1200 <para> |
44 | 1201 The 64 bit index1 b-tree leaf nodes are 512 byte blocks with the |
1202 following format. | |
1203 </para> | |
1204 <literallayout class="monospaced"><![CDATA[ | |
1205 0000 04 00 00 00 00 00 00 00 00 58 00 00 | |
1206 000C 00 00 00 00 6c 00 05 00 00 00 00 00 | |
1207 0018 08 00 00 00 00 00 00 00 80 58 00 00 | |
1208 0024 00 00 00 00 b4 00 06 00 d8 22 37 08 | |
1209 0030 0c 00 00 00 00 00 00 00 80 59 00 00 | |
1210 003C 00 00 00 00 ac 00 07 00 d8 22 37 08 | |
1211 0048 10 00 00 00 00 00 00 00 40 5a 00 00 | |
1212 0054 00 00 00 00 bc 00 03 00 d8 22 37 08 | |
1213 0060 14 00 00 00 00 00 00 00 40 5b 00 00 | |
1214 006C 00 00 00 00 a4 00 02 00 d8 22 37 08 | |
1215 0078 18 00 00 00 00 00 00 00 00 5c 00 00 | |
1216 0084 00 00 00 00 64 00 02 00 d8 22 37 08 | |
1217 0090 1c 00 00 00 00 00 00 00 80 5c 00 00 | |
1218 009C 00 00 00 00 5c 00 02 00 d8 22 37 08 | |
1219 00A8 24 00 00 00 00 00 00 00 80 5d 00 00 | |
1220 00B4 00 00 00 00 72 00 02 00 d8 22 37 08 | |
1221 00C0 34 00 00 00 00 00 00 00 00 70 00 00 | |
1222 00CC 00 00 00 00 8c 00 02 00 00 0d 00 00 | |
1223 00D8 38 00 00 00 00 00 00 00 c0 71 00 00 | |
1224 00E4 00 00 00 00 5c 00 02 00 d8 22 9c 00 | |
1225 00F0 40 00 00 00 00 00 00 00 40 72 00 00 | |
1226 00FC 00 00 00 00 26 00 02 00 d8 22 9c 00 | |
1227 0108 4c 00 00 00 00 00 00 00 80 5f 00 00 | |
1228 0114 00 00 00 00 3e 00 02 00 d8 22 9c 00 | |
1229 0120 5c 00 00 00 00 00 00 00 c0 76 00 00 | |
1230 012C 00 00 00 00 8c 00 02 00 d8 22 9c 00 | |
1231 0138 64 00 00 00 00 00 00 00 40 75 00 00 | |
1232 0144 00 00 00 00 76 00 02 00 d8 22 9c 00 | |
1233 0150 6c 00 00 00 00 00 00 00 c0 73 00 00 | |
1234 015C 00 00 00 00 5e 00 02 00 d8 22 9c 00 | |
1235 0168 70 00 00 00 00 00 00 00 80 72 00 00 | |
1236 0174 00 00 00 00 1e 01 02 00 d8 22 9c 00 | |
1237 0180 70 00 00 00 00 00 00 00 80 72 00 00 | |
1238 018C 00 00 00 00 1e 01 02 00 d8 22 9c 00 | |
1239 0198 70 00 00 00 00 00 00 00 80 72 00 00 | |
1240 01A4 00 00 00 00 1e 01 02 00 d8 22 9c 00 | |
1241 01B0 74 00 00 00 00 00 00 00 40 74 00 00 | |
1242 01BC 00 00 00 00 e0 00 02 00 d8 22 9c 00 | |
1243 01C8 7c 00 00 00 00 00 00 00 80 77 00 00 | |
1244 01D4 00 00 00 00 dc 00 02 00 d8 22 9c 00 | |
1245 01E0 00 00 00 00 00 00 00 00 10 14 18 00 | |
1246 01EC 00 00 00 00 80 80 88 48 3f 50 0b 04 | |
1247 01F8 88 00 00 00 00 00 00 00 | |
1248 | |
1249 01e8 itemCount [1 byte] 0x10 in this case | |
1250 01e9 maxItemCount [1 byte] 0x14 constant | |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1251 01ea itemSize [1 byte] 0x18 constant |
44 | 1252 01eb nodeLevel [1 byte] 0x00 defines a leaf node |
1253 01f8 backPointer [8 bytes] 0x000088 in this case | |
1254 ]]></literallayout> | |
1255 <para> | |
1256 The itemCount specifies the number of 24 byte records that | |
1257 are active. The nodeLevel is zero for these leaf nodes. | |
1258 The backPointer must match the backPointer from the triple | |
1259 that pointed to this node. | |
1260 </para> | |
1261 <para> | |
1262 Each item in this node is a tuple of (ID1, offset, size, unknown) | |
1263 The two low order bits of the ID1 value seem to be flags. I have | |
1264 never seen a case with bit zero set. Bit one indicates that the | |
1265 item is <emphasis>not</emphasis> encrypted. Note that references | |
1266 to these ID1 values elsewhere may have the low order bit set (and | |
1267 I don't know what that means), but when we do the search in this | |
1268 tree we need to clear that bit so that we can find the correct item. | |
1269 </para> | |
1270 </refsect1> | |
1271 | |
1272 <refsect1 id='pst.file.node2.32.5'> | |
1273 <title>32 bit Index 2 Node</title> | |
1274 <para> | |
52 | 1275 The 32 bit index2 b-tree nodes are 512 byte blocks with the |
44 | 1276 following format. |
24 | 1277 </para> |
1278 <literallayout class="monospaced"><![CDATA[ | |
1279 0000 21 00 00 00 bb 1e 02 00 00 e2 0b 00 | |
1280 000c 64 78 20 00 8c 1e 02 00 00 dc 0b 00 | |
1281 0018 00 00 00 00 00 00 00 00 00 00 00 00 | |
1282 0024 00 00 00 00 00 00 00 00 00 00 00 00 | |
1283 0030 00 00 00 00 00 00 00 00 00 00 00 00 | |
1284 003c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1285 0048 00 00 00 00 00 00 00 00 00 00 00 00 | |
1286 0054 00 00 00 00 00 00 00 00 00 00 00 00 | |
1287 0060 00 00 00 00 00 00 00 00 00 00 00 00 | |
1288 006c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1289 0078 00 00 00 00 00 00 00 00 00 00 00 00 | |
1290 0084 00 00 00 00 00 00 00 00 00 00 00 00 | |
1291 0090 00 00 00 00 00 00 00 00 00 00 00 00 | |
1292 009c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1293 00a8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1294 00b4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1295 00c0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1296 00cc 00 00 00 00 00 00 00 00 00 00 00 00 | |
1297 00d8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1298 00e4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1299 00f0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1300 00fc 00 00 00 00 00 00 00 00 00 00 00 00 | |
1301 0108 00 00 00 00 00 00 00 00 00 00 00 00 | |
1302 0114 00 00 00 00 00 00 00 00 00 00 00 00 | |
1303 0120 00 00 00 00 00 00 00 00 00 00 00 00 | |
1304 012c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1305 0138 00 00 00 00 00 00 00 00 00 00 00 00 | |
1306 0144 00 00 00 00 00 00 00 00 00 00 00 00 | |
1307 0150 00 00 00 00 00 00 00 00 00 00 00 00 | |
1308 015c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1309 0168 00 00 00 00 00 00 00 00 00 00 00 00 | |
1310 0174 00 00 00 00 00 00 00 00 00 00 00 00 | |
1311 0180 00 00 00 00 00 00 00 00 00 00 00 00 | |
1312 018c 00 00 00 00 00 00 00 00 00 00 00 00 | |
1313 0198 00 00 00 00 00 00 00 00 00 00 00 00 | |
1314 01a4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1315 01b0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1316 01bc 00 00 00 00 00 00 00 00 00 00 00 00 | |
1317 01c8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1318 01d4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1319 01e0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1320 01ec 00 00 00 00 02 29 0c 02 81 81 b2 60 | |
52 | 1321 01f8 bc 1e 02 00 7e 70 dc e3 |
24 | 1322 |
28 | 1323 01f0 itemCount [1 byte] 0x02 in this case |
1324 01f1 maxItemCount [1 byte] 0x29 constant | |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1325 01f2 itemSize [1 byte] 0x0c constant |
28 | 1326 01f3 nodeLevel [1 byte] 0x02 in this case |
1327 01f8 backPointer [4 bytes] 0x021ebc in this case | |
24 | 1328 ]]></literallayout> |
1329 <para> | |
28 | 1330 The itemCount specifies the number of 12 byte records that |
1331 are active. The nodeLevel is non-zero for this style of nodes. | |
1332 The leaf nodes have a different format. The backPointer must | |
1333 match the backPointer from the triple that pointed to this node. | |
24 | 1334 </para> |
1335 <para> | |
28 | 1336 Each item in this node is a triple of (ID2, backPointer, offset) |
24 | 1337 where the offset points to the next deeper node in the tree, the |
28 | 1338 backPointer value must match the backPointer in that deeper node, |
24 | 1339 and ID2 is the lowest ID2 value in the subtree. |
1340 </para> | |
1341 </refsect1> | |
1342 | |
44 | 1343 <refsect1 id='pst.file.node2.64.5'> |
1344 <title>64 bit Index 2 Node</title> | |
24 | 1345 <para> |
44 | 1346 The 64 bit index2 b-tree nodes are 512 byte blocks with the |
1347 following format. | |
1348 </para> | |
1349 <literallayout class="monospaced"><![CDATA[ | |
1350 0000 21 00 00 00 00 00 00 00 77 00 00 00 | |
1351 000C 00 00 00 00 00 56 00 00 00 00 00 00 | |
1352 0018 4c 06 00 00 00 00 00 00 82 00 00 00 | |
1353 0024 00 00 00 00 00 68 00 00 00 00 00 00 | |
1354 0030 4f 80 00 00 00 00 00 00 84 00 00 00 | |
1355 003C 00 00 00 00 00 6e 00 00 00 00 00 00 | |
1356 0048 00 00 00 00 00 00 00 00 00 00 00 00 | |
1357 0054 00 00 00 00 00 00 00 00 00 00 00 00 | |
1358 0060 00 00 00 00 00 00 00 00 00 00 00 00 | |
1359 006C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1360 0078 00 00 00 00 00 00 00 00 00 00 00 00 | |
1361 0084 00 00 00 00 00 00 00 00 00 00 00 00 | |
1362 0090 00 00 00 00 00 00 00 00 00 00 00 00 | |
1363 009C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1364 00A8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1365 00B4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1366 00C0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1367 00CC 00 00 00 00 00 00 00 00 00 00 00 00 | |
1368 00D8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1369 00E4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1370 00F0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1371 00FC 00 00 00 00 00 00 00 00 00 00 00 00 | |
1372 0108 00 00 00 00 00 00 00 00 00 00 00 00 | |
1373 0114 00 00 00 00 00 00 00 00 00 00 00 00 | |
1374 0120 00 00 00 00 00 00 00 00 00 00 00 00 | |
1375 012C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1376 0138 00 00 00 00 00 00 00 00 00 00 00 00 | |
1377 0144 00 00 00 00 00 00 00 00 00 00 00 00 | |
1378 0150 00 00 00 00 00 00 00 00 00 00 00 00 | |
1379 015C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1380 0168 00 00 00 00 00 00 00 00 00 00 00 00 | |
1381 0174 00 00 00 00 00 00 00 00 00 00 00 00 | |
1382 0180 00 00 00 00 00 00 00 00 00 00 00 00 | |
1383 018C 00 00 00 00 00 00 00 00 00 00 00 00 | |
1384 0198 00 00 00 00 00 00 00 00 00 00 00 00 | |
1385 01A4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1386 01B0 00 00 00 00 00 00 00 00 00 00 00 00 | |
1387 01BC 00 00 00 00 00 00 00 00 00 00 00 00 | |
1388 01C8 00 00 00 00 00 00 00 00 00 00 00 00 | |
1389 01D4 00 00 00 00 00 00 00 00 00 00 00 00 | |
1390 01E0 00 00 00 00 00 00 00 00 03 14 18 01 | |
1391 01EC 00 00 00 00 81 81 83 6a 49 da f3 d3 | |
1392 01F8 83 00 00 00 00 00 00 00 | |
1393 | |
1394 01e8 itemCount [1 byte] 0x03 in this case | |
1395 01e9 maxItemCount [1 byte] 0x14 constant | |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1396 01ea itemSize [1 byte] 0x18 constant |
44 | 1397 01eb nodeLevel [1 byte] 0x01 in this case |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1398 01f8 backPointer [8 bytes] 0x000083 in this case |
44 | 1399 ]]></literallayout> |
1400 <para> | |
1401 The itemCount specifies the number of 24 byte records that | |
1402 are active. The nodeLevel is non-zero for this style of nodes. | |
1403 The leaf nodes have a different format. The backPointer must | |
1404 match the backPointer from the triple that pointed to this node. | |
1405 </para> | |
1406 <para> | |
1407 Each item in this node is a triple of (ID2, backPointer, offset) | |
1408 where the offset points to the next deeper node in the tree, the | |
1409 backPointer value must match the backPointer in that deeper node, | |
1410 and ID2 is the lowest ID2 value in the subtree. | |
1411 </para> | |
1412 </refsect1> | |
1413 | |
1414 <refsect1 id='pst.file.leaf2.32.5'> | |
1415 <title>32 bit Index 2 Leaf Node</title> | |
1416 <para> | |
52 | 1417 The 32 bit index2 b-tree leaf nodes are 512 byte blocks with the |
44 | 1418 following format. |
24 | 1419 </para> |
1420 <literallayout class="monospaced"><![CDATA[ | |
1421 0000 21 00 00 00 38 e6 00 00 00 00 00 00 00 00 00 00 | |
1422 0010 61 00 00 00 2c a8 02 00 36 a8 02 00 00 00 00 00 | |
1423 0020 22 01 00 00 20 a2 02 00 00 00 00 00 22 01 00 00 | |
1424 0030 2d 01 00 00 88 7b 03 00 00 00 00 00 00 00 00 00 | |
1425 0040 2e 01 00 00 08 00 00 00 00 00 00 00 00 00 00 00 | |
1426 0050 2f 01 00 00 0c 00 00 00 00 00 00 00 00 00 00 00 | |
1427 0060 e1 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
1428 0070 01 02 00 00 b4 e4 02 00 00 00 00 00 00 00 00 00 | |
1429 0080 61 02 00 00 a0 e4 02 00 00 00 00 00 00 00 00 00 | |
1430 0090 0d 06 00 00 04 00 00 00 00 00 00 00 00 00 00 00 | |
1431 00A0 0e 06 00 00 08 00 00 00 00 00 00 00 00 00 00 00 | |
1432 00B0 0f 06 00 00 0c 00 00 00 00 00 00 00 00 00 00 00 | |
1433 00C0 10 06 00 00 10 00 00 00 00 00 00 00 00 00 00 00 | |
1434 00D0 2b 06 00 00 84 00 00 00 00 00 00 00 00 00 00 00 | |
1435 00E0 4c 06 00 00 1c 00 00 00 00 00 00 00 00 00 00 00 | |
1436 00F0 71 06 00 00 18 00 00 00 00 00 00 00 00 00 00 00 | |
1437 0100 92 06 00 00 14 00 00 00 00 00 00 00 00 00 00 00 | |
1438 0110 23 22 00 00 14 a0 02 00 00 00 00 00 22 01 00 00 | |
1439 0120 26 22 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
1440 0130 27 22 00 00 1c a0 02 00 00 00 00 00 00 00 00 00 | |
1441 0140 22 80 00 00 50 00 00 00 00 00 00 00 22 01 00 00 | |
1442 0150 2d 80 00 00 f8 9f 02 00 00 00 00 00 00 00 00 00 | |
1443 0160 2e 80 00 00 08 00 00 00 00 00 00 00 00 00 00 00 | |
1444 0170 2f 80 00 00 34 e6 00 00 00 00 00 00 00 00 00 00 | |
1445 0180 42 80 00 00 3c 6d 02 00 00 00 00 00 22 80 00 00 | |
1446 0190 4d 80 00 00 04 00 00 00 00 00 00 00 00 00 00 00 | |
1447 01A0 4e 80 00 00 10 6d 02 00 00 00 00 00 00 00 00 00 | |
1448 01B0 4f 80 00 00 ec 23 00 00 00 00 00 00 00 00 00 00 | |
1449 01C0 62 80 00 00 38 78 02 00 00 00 00 00 22 01 00 00 | |
1450 01D0 6d 80 00 00 34 78 02 00 00 00 00 00 00 00 00 00 | |
1451 01E0 6e 80 00 00 08 00 00 00 00 00 00 00 00 00 00 00 | |
1452 01F0 10 1f 10 00 81 81 a0 9a ae 1e 02 00 89 44 6a 0f | |
1453 | |
28 | 1454 01f0 itemCount [1 byte] 0x10 in this case |
1455 01f1 maxItemCount [1 byte] 0x1f constant | |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1456 01f2 itemSize [1 byte] 0x10 constant |
28 | 1457 01f3 nodeLevel [1 byte] 0x00 in this case |
1458 01f8 backPointer [4 bytes] 0x021eae in this case | |
24 | 1459 ]]></literallayout> |
1460 <para> | |
28 | 1461 The itemCount specifies the number of 16 byte records that |
1462 are active. The nodeLevel is zero for these leaf nodes. | |
1463 The backPointer must match the backPointer from the triple | |
24 | 1464 that pointed to this node. |
1465 </para> | |
1466 <para> | |
1467 Each item in this node is a tuple of (ID2, DESC-ID1, LIST-ID1, PARENT-ID2) | |
1468 </para> | |
1469 </refsect1> | |
1470 | |
44 | 1471 <refsect1 id='pst.file.leaf2.64.5'> |
1472 <title>64 bit Index 2 Leaf Node</title> | |
1473 <para> | |
1474 The 64 bit index2 b-tree leaf nodes are 512 byte blocks with the | |
1475 following format. | |
1476 </para> | |
1477 <literallayout class="monospaced"><![CDATA[ | |
1478 0000 21 00 00 00 00 00 00 00 74 00 00 00 00 00 00 00 | |
1479 0010 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1480 0020 61 00 00 00 00 00 00 00 34 00 00 00 00 00 00 00 | |
1481 0030 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1482 0040 22 01 00 00 00 00 00 00 4c 00 00 00 00 00 00 00 | |
1483 0050 00 00 00 00 00 00 00 00 22 01 00 00 02 00 00 00 | |
1484 0060 2d 01 00 00 00 00 00 00 70 00 00 00 00 00 00 00 | |
1485 0070 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1486 0080 2e 01 00 00 00 00 00 00 08 00 00 00 00 00 00 00 | |
1487 0090 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1488 00A0 2f 01 00 00 00 00 00 00 0c 00 00 00 00 00 00 00 | |
1489 00B0 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1490 00C0 e1 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
1491 00D0 00 00 00 00 00 00 00 00 00 00 00 00 d8 e3 13 00 | |
1492 00E0 01 02 00 00 00 00 00 00 8c 00 00 00 00 00 00 00 | |
1493 00F0 00 00 00 00 00 00 00 00 00 00 00 00 b0 e3 13 00 | |
1494 0100 61 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
1495 0110 00 00 00 00 00 00 00 00 00 00 00 00 d8 e3 13 00 | |
1496 0120 0d 06 00 00 00 00 00 00 04 00 00 00 00 00 00 00 | |
1497 0130 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1498 0140 0e 06 00 00 00 00 00 00 08 00 00 00 00 00 00 00 | |
1499 0150 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1500 0160 0f 06 00 00 00 00 00 00 0c 00 00 00 00 00 00 00 | |
1501 0170 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1502 0180 10 06 00 00 00 00 00 00 10 00 00 00 00 00 00 00 | |
1503 0190 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1504 01A0 2b 06 00 00 00 00 00 00 24 00 00 00 00 00 00 00 | |
1505 01B0 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1506 01C0 71 06 00 00 00 00 00 00 18 00 00 00 00 00 00 00 | |
1507 01D0 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 | |
1508 01E0 00 00 00 00 00 00 00 00 0e 0f 20 00 00 00 00 00 | |
1509 01F0 81 81 77 56 f8 32 43 49 77 00 00 00 00 00 00 00 | |
1510 | |
1511 01e8 itemCount [1 byte] 0x0e in this case | |
1512 01e9 maxItemCount [1 byte] 0x0f constant | |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1513 01ea itemSize [1 byte] 0x20 constant |
44 | 1514 01eb nodeLevel [1 byte] 0x00 defines a leaf node |
71
1bd4491cf8ff
fix documentation of 8 byte backpointers
Carl Byington <carl@five-ten-sg.com>
parents:
64
diff
changeset
|
1515 01f8 backPointer [8 bytes] 0x000077 in this case |
44 | 1516 ]]></literallayout> |
1517 <para> | |
1518 The itemCount specifies the number of 32 byte records that | |
1519 are active. The nodeLevel is zero for these leaf nodes. | |
1520 The backPointer must match the backPointer from the triple | |
1521 that pointed to this node. | |
1522 </para> | |
1523 <para> | |
1524 Each item in this node is a tuple of (ID2, DESC-ID1, LIST-ID1, PARENT-ID2) | |
1525 </para> | |
1526 </refsect1> | |
1527 | |
46 | 1528 <refsect1 id='pst.file.list.32.5'> |
48 | 1529 <title>32 bit Associated List Item 0x0002</title> |
24 | 1530 <para> |
1531 Contains associations between id1 and id2 for the items controlled by the record. | |
44 | 1532 In the above 32 bit leaf node, we have a tuple of (0x61, 0x02a82c, 0x02a836, 0) |
24 | 1533 0x02a836 is the ID1 of the associated list, and we can lookup that ID1 value |
1534 in the index1 b-tree to find the (offset,size) of the data in the .pst file. | |
1535 </para> | |
1536 <literallayout class="monospaced"><![CDATA[ | |
1537 0000 02 00 01 00 9f 81 00 00 30 a8 02 00 00 00 00 00 | |
1538 | |
48 | 1539 0000 signature [2 bytes] 0x0002 constant |
24 | 1540 0002 count [2 bytes] 0x0001 in this case |
1541 repeating | |
1542 0004 id2 [4 bytes] 0x00819f in this case | |
1543 0008 id [4 bytes] 0x02a830 in this case | |
46 | 1544 000c table2 [4 bytes] 0 in this case |
1545 ]]></literallayout> | |
1546 </refsect1> | |
1547 | |
1548 <refsect1 id='pst.file.list.64.5'> | |
48 | 1549 <title>64 bit Associated List Item 0x0002</title> |
46 | 1550 <para> |
1551 Contains associations between id1 and id2 for the items controlled by the record. | |
1552 </para> | |
1553 <literallayout class="monospaced"><![CDATA[ | |
1554 0000 02 00 02 00 00 00 00 00 92 06 00 00 00 00 00 00 | |
1555 0010 a8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
1556 0020 3f 80 00 00 00 00 00 00 98 00 00 00 00 00 00 00 | |
1557 0030 00 00 00 00 00 00 00 00 | |
1558 | |
48 | 1559 0000 signature [2 bytes] 0x0002 constant |
46 | 1560 0002 count [2 bytes] 0x0002 in this case |
57
de3753c3160a
add archive directory with history of alioth versions that have been merged here
Carl Byington <carl@five-ten-sg.com>
parents:
55
diff
changeset
|
1561 0004 unknown [4 bytes] 0 possibly constant |
46 | 1562 repeating |
48 | 1563 0008 id2 [4 bytes] 0x000692 in this case |
1564 000c unknown1 [2 bytes] 0 may be a count or size | |
1565 000e unknown2 [2 bytes] 0 may be a count or size | |
1566 0010 id [8 bytes] 0x0000a8 in this case | |
1567 0018 table2 [8 bytes] 0 in this case | |
24 | 1568 ]]></literallayout> |
1569 </refsect1> | |
1570 | |
1571 <refsect1 id='pst.file.desc.5'> | |
28 | 1572 <title>Associated Descriptor Item 0xbcec</title> |
24 | 1573 <para> |
28 | 1574 Contains information about the item, which may be email, contact, or |
1575 other outlook types. In the above leaf node, we have a tuple of (0x21, | |
1576 0x00e638, 0, 0) 0x00e638 is the ID1 of the associated descriptor, and we | |
1577 can lookup that ID1 value in the index1 b-tree to find the (offset,size) | |
1578 of the data in the .pst file. | |
24 | 1579 </para> |
1580 <literallayout class="monospaced"><![CDATA[ | |
1581 0000 3c 01 ec bc 20 00 00 00 00 00 00 00 b5 02 06 00 | |
1582 0010 40 00 00 00 f9 0f 02 01 60 00 00 00 01 30 1e 00 | |
1583 0020 80 00 00 00 04 30 1e 00 00 00 00 00 df 35 03 00 | |
1584 0030 ff 00 00 00 e0 35 02 01 a0 00 00 00 e2 35 02 01 | |
1585 0040 e0 00 00 00 e3 35 02 01 c0 00 00 00 e4 35 02 01 | |
1586 0050 00 01 00 00 e5 35 02 01 20 01 00 00 e6 35 02 01 | |
1587 0060 40 01 00 00 e7 35 02 01 60 01 00 00 1e 66 0b 00 | |
1588 0070 00 00 00 00 ff 67 03 00 00 00 00 00 d2 7f 17 d8 | |
1589 0080 64 8c d5 11 83 24 00 50 04 86 95 45 53 74 61 6e | |
1590 0090 6c 65 79 00 00 00 00 d2 7f 17 d8 64 8c d5 11 83 | |
1591 00A0 24 00 50 04 86 95 45 22 80 00 00 00 00 00 00 d2 | |
1592 00B0 7f 17 d8 64 8c d5 11 83 24 00 50 04 86 95 45 42 | |
1593 00C0 80 00 00 00 00 00 00 d2 7f 17 d8 64 8c d5 11 83 | |
1594 00D0 24 00 50 04 86 95 45 a2 80 00 00 00 00 00 00 d2 | |
1595 00E0 7f 17 d8 64 8c d5 11 83 24 00 50 04 86 95 45 c2 | |
1596 00F0 80 00 00 00 00 00 00 d2 7f 17 d8 64 8c d5 11 83 | |
1597 0100 24 00 50 04 86 95 45 e2 80 00 00 00 00 00 00 d2 | |
1598 0110 7f 17 d8 64 8c d5 11 83 24 00 50 04 86 95 45 02 | |
1599 0120 81 00 00 00 00 00 00 d2 7f 17 d8 64 8c d5 11 83 | |
1600 0130 24 00 50 04 86 95 45 62 80 00 00 00 0b 00 00 00 | |
1601 0140 0c 00 14 00 7c 00 8c 00 93 00 ab 00 c3 00 db 00 | |
1602 0150 f3 00 0b 01 23 01 3b 01 | |
1603 | |
28 | 1604 0000 indexOffset [2 bytes] 0x013c in this case |
24 | 1605 0002 signature [2 bytes] 0xbcec constant |
35 | 1606 0004 b5offset [4 bytes] 0x0020 index reference |
24 | 1607 ]]></literallayout> |
1608 <para> | |
35 | 1609 Note the signature of 0xbcec. There are other descriptor block formats |
1610 with other signatures. Note the indexOffset of 0x013c - starting at | |
1611 that position in the descriptor block, we have an array of two byte | |
1612 integers. The first integer (0x000b) is a (count-1) of the number of | |
1613 overlapping pairs following the count. The first pair is (0, 0xc), the | |
1614 next pair is (0xc, 0x14) and the last (12th) pair is (0x123, 0x13b). | |
1615 These pairs are (start,end+1) offsets of items in this block. So we | |
1616 have count+2 integers following the count value. | |
24 | 1617 </para> |
1618 <para> | |
35 | 1619 Note the b5offset of 0x0020, which is a type that I will call an index |
49 | 1620 reference. Such index references have at least two different forms, |
1621 and may point to data either in this block, or in some other block. | |
35 | 1622 External pointer references have the low order 4 bits all set, and are |
1623 ID2 values that can be used to fetch data. This value of 0x0020 is an | |
49 | 1624 internal pointer reference, which needs to be right shifted by 4 bits |
1625 to become 0x0002, which is then a byte offset to be added to the above | |
35 | 1626 indexOffset plus two (to skip the count), so it points to the (0xc, |
1627 0x14) pair. | |
1628 </para> | |
1629 <para> | |
49 | 1630 So far we have only described internal index references where the high |
1631 order 16 bits are zero. That suffices for single descriptor | |
1632 blocks. But in the case of the type 0x0101 descriptor block, we have | |
1633 an array of subblocks. In this case, the high order 16 bits of an | |
1634 internal index reference are used to select the subblock. Each | |
1635 subblock starts with a 16 bit indexOffset which points to the count | |
1636 and array of 16 bit integer pairs which are offsets in the current | |
1637 subblock. | |
1638 </para> | |
1639 <para> | |
35 | 1640 Finally, we have the offset and size of the "b5" block located at offset 0xc |
24 | 1641 with a size of 8 bytes in this descriptor block. The "b5" block has the |
1642 following format: | |
1643 </para> | |
1644 <literallayout class="monospaced"><![CDATA[ | |
1645 0000 signature [2 bytes] 0x02b5 constant | |
75
987aa872294e
Use ftello/fseeko to properly handle large files.
Carl Byington <carl@five-ten-sg.com>
parents:
71
diff
changeset
|
1646 0002 datasize [2 bytes] 0x0006 constant +2 for 8 byte entries |
35 | 1647 0004 descoffset [4 bytes] 0x0040 index reference |
24 | 1648 ]]></literallayout> |
1649 <para> | |
35 | 1650 Note the descoffset of 0x0040, which again is an index reference. In this |
1651 case, it is an internal pointer reference, which needs to be right shifted by 4 bits | |
24 | 1652 to become 0x0004, which is then a byte offset to be added to the above |
28 | 1653 indexOffset plus two (to skip the count), so it points to the (0x14, 0x7c) |
77 | 1654 pair. The datasize (6) plus the b5 code (02) gives the size of the entries, |
75
987aa872294e
Use ftello/fseeko to properly handle large files.
Carl Byington <carl@five-ten-sg.com>
parents:
71
diff
changeset
|
1655 in this case 8 bytes. We now have the offset 0x14 of the descriptor array, |
987aa872294e
Use ftello/fseeko to properly handle large files.
Carl Byington <carl@five-ten-sg.com>
parents:
71
diff
changeset
|
1656 composed of 8 byte entries. Each descriptor entry has the following format: |
24 | 1657 </para> |
1658 <literallayout class="monospaced"><![CDATA[ | |
28 | 1659 0000 itemType [2 bytes] |
1660 0002 referenceType [2 bytes] | |
24 | 1661 0004 value [4 bytes] |
1662 ]]></literallayout> | |
1663 <para> | |
1664 For some reference types (2, 3, 0xb) the value is used directly. Otherwise, | |
35 | 1665 the value is an index reference, which is either an ID2 value, or an |
1666 offset, to be right shifted by 4 bits and used to fetch a pair from the | |
1667 index table to find the offset and size of the item in this descriptor block. | |
24 | 1668 </para> |
1669 <para> | |
1670 The following reference types are known, but not all of these | |
1671 are implemented in the code yet. | |
1672 </para> | |
1673 <literallayout class="monospaced"><![CDATA[ | |
1674 0x0002 - Signed 16bit value | |
1675 0x0003 - Signed 32bit value | |
1676 0x0004 - 4-byte floating point | |
1677 0x0005 - Floating point double | |
1678 0x0006 - Signed 64-bit int | |
1679 0x0007 - Application Time | |
1680 0x000A - 32-bit error value | |
1681 0x000B - Boolean (non-zero = true) | |
1682 0x000D - Embedded Object | |
1683 0x0014 - 8-byte signed integer (64-bit) | |
1684 0x001E - Null terminated String | |
1685 0x001F - Unicode string | |
1686 0x0040 - Systime - Filetime structure | |
1687 0x0048 - OLE Guid | |
1688 0x0102 - Binary data | |
1689 0x1003 - Array of 32bit values | |
1690 0x1014 - Array of 64bit values | |
1691 0x101E - Array of Strings | |
1692 0x1102 - Array of Binary data | |
1693 ]]></literallayout> | |
1694 <para> | |
1695 The following item types are known, but not all of these | |
1696 are implemented in the code yet. | |
1697 </para> | |
1698 <literallayout class="monospaced"><![CDATA[ | |
51 | 1699 0002 Alternate recipient allowed |
24 | 1700 0003 Extended Attributes Table |
1701 0017 Importance Level | |
51 | 1702 001a IPM Context, message class |
1703 0023 Global delivery report requested | |
24 | 1704 0026 Priority |
1705 0029 Read Receipt | |
1706 002b Reassignment Prohibited | |
1707 002e Original Sensitivity | |
1708 0036 Sensitivity | |
51 | 1709 0037 Email Subject |
60
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1710 0039 Client submit time / date sent |
24 | 1711 003b Outlook Address of Sender |
1712 003f Outlook structure describing the recipient | |
1713 0040 Name of the Outlook recipient structure | |
1714 0041 Outlook structure describing the sender | |
1715 0042 Name of the Outlook sender structure | |
1716 0043 Another structure describing the recipient | |
1717 0044 Name of the second recipient structure | |
1718 004f Reply-To Outlook Structure | |
1719 0050 Name of the Reply-To structure | |
1720 0051 Outlook Name of recipient | |
1721 0052 Second Outlook name of recipient | |
1722 0057 My address in TO field | |
1723 0058 My address in CC field | |
1724 0059 Message addressed to me | |
1725 0063 Response requested | |
1726 0064 Sender's Address access method (SMTP, EX) | |
1727 0065 Sender's Address | |
63
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
1728 0070 Conversation topic, processed subject (with Fwd:, Re, ... removed) |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
1729 0071 Conversation index |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
1730 0072 Original display BCC |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
1731 0073 Original display CC |
cfd6175f9334
Start work on pst2dii to convert to Summation dii load file format.
Carl Byington <carl@five-ten-sg.com>
parents:
60
diff
changeset
|
1732 0074 Original display TO |
24 | 1733 0075 Recipient Address Access Method (SMTP, EX) |
1734 0076 Recipient's Address | |
1735 0077 Second Recipient Access Method (SMTP, EX) | |
1736 0078 Second Recipient Address | |
1737 007d Email Header. This is the header that was attached to the email | |
1738 0c17 Reply Requested | |
52 | 1739 0c19 Second sender structure |
1740 0c1a Name of second sender structure | |
24 | 1741 0c1d Second outlook name of sender |
1742 0c1e Second sender access method (SMTP, EX) | |
1743 0c1f Second Sender Address | |
1744 0e01 Delete after submit | |
60
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1745 0e02 BCC Addresses |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1746 0e03 CC Addresses |
24 | 1747 0e04 SentTo Address |
1748 0e06 Date. | |
60
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1749 0e07 Flag bits |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1750 0x01 - Read |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1751 0x02 - Unmodified |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1752 0x04 - Submit |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1753 0x08 - Unsent |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1754 0x10 - Has Attachments |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1755 0x20 - From Me |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1756 0x40 - Associated |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1757 0x80 - Resend |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1758 0x100 - RN Pending |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
1759 0x200 - NRN Pending |
24 | 1760 0e08 Message Size |
1761 0e0a Sentmail EntryID | |
1762 0e1f Compressed RTF in Sync | |
1763 0e20 Attachment Size | |
1764 0ff9 binary record header | |
1765 1000 Plain Text Email Body. Does not exist if the email doesn't have a plain text version | |
1766 1006 RTF Sync Body CRC | |
1767 1007 RTF Sync Body character count | |
1768 1008 RTF Sync body tag | |
1769 1009 RTF Compressed body | |
1770 1010 RTF whitespace prefix count | |
1771 1011 RTF whitespace tailing count | |
36 | 1772 1013 HTML Email Body. Does not exist if the email doesn't have an HTML version |
24 | 1773 1035 Message ID |
1774 1042 In-Reply-To or Parent's Message ID | |
1775 1046 Return Path | |
1776 3001 Folder Name? I have seen this value used for the contacts record aswell | |
1777 3002 Address Type | |
1778 3003 Contact Address | |
1779 3004 Comment | |
1780 3007 Date item creation | |
1781 3008 Date item modification | |
1782 300b binary record header | |
1783 35df Valid Folder Mask | |
51 | 1784 35e0 binary record contains a reference to "Top of Personal Folder" item |
1785 35e2 binary record contains a reference to default outbox item | |
1786 35e3 binary record contains a reference to "Deleted Items" item | |
1787 35e4 binary record contains a reference to sent items folder item | |
1788 35e5 binary record contains a reference to user views folder item | |
1789 35e6 binary record contains a reference to common views folder item | |
1790 35e7 binary record contains a reference to "Search Root" item | |
24 | 1791 3602 the number of emails stored in a folder |
1792 3603 the number of unread emails in a folder | |
1793 360a Has Subfolders | |
1794 3613 the folder content description | |
1795 3617 Associate Content count | |
1796 3701 Binary Data attachment | |
1797 3704 Attachment Filename | |
1798 3705 Attachement method | |
1799 3707 Attachment Filename long | |
1800 370b Attachment Position | |
1801 370e Attachment mime encoding | |
51 | 1802 3710 Attachment mime Sequence |
24 | 1803 3a00 Contact's Account name |
1804 3a01 Contact Alternate Recipient | |
1805 3a02 Callback telephone number | |
1806 3a03 Message Conversion Prohibited | |
1807 3a05 Contacts Suffix | |
1808 3a06 Contacts First Name | |
1809 3a07 Contacts Government ID Number | |
1810 3a08 Business Telephone Number | |
1811 3a09 Home Telephone Number | |
1812 3a0a Contacts Initials | |
1813 3a0b Keyword | |
1814 3a0c Contact's Language | |
1815 3a0d Contact's Location | |
1816 3a0e Mail Permission | |
1817 3a0f MHS Common Name | |
1818 3a10 Organizational ID # | |
1819 3a11 Contacts Surname | |
1820 3a12 original entry id | |
1821 3a13 original display name | |
1822 3a14 original search key | |
1823 3a15 Default Postal Address | |
1824 3a16 Company Name | |
1825 3a17 Job Title | |
1826 3a18 Department Name | |
1827 3a19 Office Location | |
1828 3a1a Primary Telephone | |
1829 3a1b Business Phone Number 2 | |
1830 3a1c Mobile Phone Number | |
1831 3a1d Radio Phone Number | |
1832 3a1e Car Phone Number | |
1833 3a1f Other Phone Number | |
1834 3a20 Transmittable Display Name | |
1835 3a21 Pager Phone Number | |
1836 3a22 user certificate | |
1837 3a23 Primary Fax Number | |
1838 3a24 Business Fax Number | |
1839 3a25 Home Fax Number | |
1840 3a26 Business Address Country | |
1841 3a27 Business Address City | |
1842 3a28 Business Address State | |
1843 3a29 Business Address Street | |
1844 3a2a Business Postal Code | |
1845 3a2b Business PO Box | |
1846 3a2c Telex Number | |
1847 3a2d ISDN Number | |
1848 3a2e Assistant Phone Number | |
1849 3a2f Home Phone 2 | |
1850 3a30 Assistant's Name | |
1851 3a40 Can receive Rich Text | |
1852 3a41 Wedding Anniversary | |
1853 3a42 Birthday | |
1854 3a43 Hobbies | |
1855 3a44 Middle Name | |
1856 3a45 Display Name Prefix (Title) | |
1857 3a46 Profession | |
1858 3a47 Preferred By Name | |
1859 3a48 Spouse's Name | |
1860 3a49 Computer Network Name | |
1861 3a4a Customer ID | |
1862 3a4b TTY/TDD Phone | |
1863 3a4c Ftp Site | |
1864 3a4d Gender | |
1865 3a4e Manager's Name | |
1866 3a4f Nickname | |
1867 3a50 Personal Home Page | |
1868 3a51 Business Home Page | |
1869 3a57 Company Main Phone | |
1870 3a58 childrens names | |
1871 3a59 Home Address City | |
1872 3a5a Home Address Country | |
1873 3a5b Home Address Postal Code | |
1874 3a5c Home Address State or Province | |
1875 3a5d Home Address Street | |
1876 3a5e Home Address Post Office Box | |
1877 3a5f Other Address City | |
1878 3a60 Other Address Country | |
1879 3a61 Other Address Postal Code | |
1880 3a62 Other Address State | |
1881 3a63 Other Address Street | |
1882 3a64 Other Address Post Office box | |
1883 65e3 Entry ID | |
1884 67f2 Attachment ID2 value | |
36 | 1885 67ff Password checksum |
24 | 1886 6f02 Secure HTML Body |
1887 6f04 Secure Text Body | |
36 | 1888 7c07 Top of folders RecID |
24 | 1889 8005 Contact Fullname |
1890 801a Home Address | |
1891 801b Business Address | |
1892 801c Other Address | |
51 | 1893 8045 Work Address Street |
1894 8046 Work Address City | |
1895 8047 Work Address State | |
1896 8048 Work Address Postal Code | |
1897 8049 Work Address Country | |
1898 804a Work Address Post Office Box | |
24 | 1899 8082 Email Address 1 Transport |
1900 8083 Email Address 1 Address | |
1901 8084 Email Address 1 Description | |
1902 8085 Email Address 1 Record | |
1903 8092 Email Address 2 Transport | |
1904 8093 Email Address 2 Address | |
36 | 1905 8094 Email Address 2 Description |
24 | 1906 8095 Email Address 2 Record |
36 | 1907 80a2 Email Address 3 Transport |
24 | 1908 80a3 Email Address 3 Address |
1909 80a4 Email Address 3 Description | |
1910 80a5 Email Address 3 Record | |
1911 80d8 Internet Free/Busy | |
1912 8205 Appointment shows as | |
1913 8208 Appointment Location | |
51 | 1914 820d Appointment start |
1915 820e Appointment end | |
24 | 1916 8214 Label for appointment |
32 | 1917 8215 All day appointment flag |
51 | 1918 8231 Recurrence type |
1919 8232 Recurrence description | |
24 | 1920 8234 TimeZone of times |
51 | 1921 8235 Recurrence Start Time |
1922 8236 Recurrence End Time | |
1923 8501 Reminder minutes before appointment start | |
1924 8503 Reminder alarm | |
1925 8516 Common Time Start | |
1926 8517 Common Time End | |
1927 851f Play reminder sound filename | |
24 | 1928 8530 Followup String |
1929 8534 Mileage | |
1930 8535 Billing Information | |
1931 8554 Outlook Version | |
1932 8560 Appointment Reminder Time | |
1933 8700 Journal Entry Type | |
1934 8706 Start Timestamp | |
1935 8708 End Timestamp | |
51 | 1936 8712 Journal Entry Type - duplicate? |
24 | 1937 ]]></literallayout> |
1938 </refsect1> | |
1939 | |
28 | 1940 <refsect1 id='pst.file.desc2.5'> |
1941 <title>Associated Descriptor Item 0x7cec</title> | |
1942 <para> | |
35 | 1943 This style of descriptor block is similar to the 0xbcec format. |
28 | 1944 </para> |
1945 <literallayout class="monospaced"><![CDATA[ | |
1946 0000 7a 01 ec 7c 40 00 00 00 00 00 00 00 b5 04 02 00 | |
1947 0010 60 00 00 00 7c 18 60 00 60 00 62 00 65 00 20 00 | |
1948 0020 00 00 80 00 00 00 00 00 00 00 03 00 20 0e 0c 00 | |
1949 0030 04 03 1e 00 01 30 2c 00 04 0b 1e 00 03 37 28 00 | |
1950 0040 04 0a 1e 00 04 37 14 00 04 05 03 00 05 37 10 00 | |
1951 0050 04 04 1e 00 07 37 24 00 04 09 1e 00 08 37 20 00 | |
1952 0060 04 08 02 01 0a 37 18 00 04 06 03 00 0b 37 08 00 | |
1953 0070 04 02 1e 00 0d 37 1c 00 04 07 1e 00 0e 37 40 00 | |
1954 0080 04 10 02 01 0f 37 30 00 04 0c 1e 00 11 37 34 00 | |
1955 0090 04 0d 1e 00 12 37 3c 00 04 0f 1e 00 13 37 38 00 | |
1956 00A0 04 0e 03 00 f2 67 00 00 04 00 03 00 f3 67 04 00 | |
1957 00B0 04 01 03 00 09 69 44 00 04 11 03 00 fa 7f 5c 00 | |
1958 00C0 04 15 40 00 fb 7f 4c 00 08 13 40 00 fc 7f 54 00 | |
1959 00D0 08 14 03 00 fd 7f 48 00 04 12 0b 00 fe 7f 60 00 | |
1960 00E0 01 16 0b 00 ff 7f 61 00 01 17 45 82 00 00 00 00 | |
1961 00F0 45 82 00 00 78 3c 00 00 ff ff ff ff 49 1e 00 00 | |
1962 0100 06 00 00 00 00 00 00 00 a0 00 00 00 00 00 00 00 | |
1963 0110 00 00 00 00 00 00 00 00 00 00 00 00 c0 00 00 00 | |
1964 0120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | |
1965 0130 00 00 00 00 00 00 00 00 00 00 00 00 00 40 dd a3 | |
1966 0140 57 45 b3 0c 00 40 dd a3 57 45 b3 0c 02 00 00 00 | |
1967 0150 00 00 fa 10 3e 2a 86 48 86 f7 14 03 0a 03 02 01 | |
1968 0160 4a 2e 20 44 61 76 69 64 20 4b 61 72 61 6d 27 73 | |
1969 0170 20 42 69 72 74 68 64 61 79 00 06 00 00 00 0c 00 | |
1970 0180 14 00 ea 00 f0 00 55 01 60 01 79 01 | |
1971 | |
1972 0000 indexOffset [2 bytes] 0x017a in this case | |
1973 0002 signature [2 bytes] 0x7cec constant | |
35 | 1974 0004 7coffset [4 bytes] 0x0040 index reference |
28 | 1975 ]]></literallayout> |
1976 <para> | |
1977 Note the signature of 0x7cec. There are other descriptor block | |
1978 formats with other signatures. | |
1979 Note the indexOffset of 0x017a - starting at that position in the | |
1980 descriptor block, we have an array of two byte integers. The first | |
1981 integer (0x0006) is a (count-1) of the number of overlapping pairs | |
1982 following the count. The first pair is (0, 0xc), the next pair is (0xc, 0x14) | |
1983 and the last (7th) pair is (0x160, 0x179). These pairs are (start,end+1) | |
1984 offsets of items in this block. So we have count+2 integers following | |
1985 the count value. | |
1986 </para> | |
1987 <para> | |
35 | 1988 Note the 7coffset of 0x0040, which is an index reference. In this case, |
1989 it is an internal reference pointer, which needs to be right shifted by 4 bits | |
28 | 1990 to become 0x0004, which is then a byte offset to be added to the above |
1991 indexOffset plus two (to skip the count), so it points to the (0x14, 0xea) | |
1992 pair. We have the offset and size of the "7c" block located at offset 0x14 | |
1993 with a size of 214 bytes in this case. The "7c" block starts with | |
1994 a header with the following format: | |
1995 </para> | |
1996 <literallayout class="monospaced"><![CDATA[ | |
1997 0000 signature [1 bytes] 0x7c constant | |
1998 0001 itemCount [1 bytes] 0x18 in this case | |
1999 0002 unknown [2 bytes] 0x0060 in this case | |
2000 0004 unknown [2 bytes] 0x0060 in this case | |
2001 0006 unknown [2 bytes] 0x0062 in this case | |
2002 0008 recordSize [2 bytes] 0x0065 in this case | |
35 | 2003 000a b5Offset [4 bytes] 0x0020 index reference |
2004 000e index2Offset [4 bytes] 0x0080 index reference | |
28 | 2005 0012 unknown [2 bytes] 0x0000 in this case |
2006 0014 unknown [2 bytes] 0x0000 in this case | |
2007 ]]></literallayout> | |
2008 <para> | |
35 | 2009 Note the b5Offset of 0x0020, which is an index reference. In this case, |
2010 it is an internal reference pointer, which needs to be right shifted by 4 bits | |
28 | 2011 to become 0x0002, which is then a byte offset to be added to the above |
2012 indexOffset plus two (to skip the count), so it points to the (0xc, | |
2013 0x14) pair. Finally, we have the offset and size of the "b5" block | |
2014 located at offset 0xc with a size of 8 bytes in this descriptor block. | |
2015 The "b5" block has the following format: | |
2016 </para> | |
2017 <literallayout class="monospaced"><![CDATA[ | |
2018 0000 signature [2 bytes] 0x04b5 constant | |
75
987aa872294e
Use ftello/fseeko to properly handle large files.
Carl Byington <carl@five-ten-sg.com>
parents:
71
diff
changeset
|
2019 0002 datasize [2 bytes] 0x0002 +4 for 6 byte entries in this case |
35 | 2020 0004 descoffset [4 bytes] 0x0060 index reference |
28 | 2021 ]]></literallayout> |
2022 <para> | |
35 | 2023 Note the descoffset of 0x0060, which again is an index reference. In this |
2024 case, it is an internal pointer reference, which needs to be right shifted by 4 | |
28 | 2025 bits to become 0x0006, which is then a byte offset to be added to the |
2026 above indexOffset plus two (to skip the count), so it points to the | |
75
987aa872294e
Use ftello/fseeko to properly handle large files.
Carl Byington <carl@five-ten-sg.com>
parents:
71
diff
changeset
|
2027 (0xea, 0xf0) pair. The datasize (2) plus the b5 code (04) gives the size |
987aa872294e
Use ftello/fseeko to properly handle large files.
Carl Byington <carl@five-ten-sg.com>
parents:
71
diff
changeset
|
2028 of the entries, in this case 6 bytes. We now have the offset 0xea of an |
987aa872294e
Use ftello/fseeko to properly handle large files.
Carl Byington <carl@five-ten-sg.com>
parents:
71
diff
changeset
|
2029 unused block of data in an unknown format, composed of 6 byte entries. |
987aa872294e
Use ftello/fseeko to properly handle large files.
Carl Byington <carl@five-ten-sg.com>
parents:
71
diff
changeset
|
2030 That gives us (0xf0 - 0xea)/6 = 1, so we have a recordCount of one. |
28 | 2031 </para> |
2032 <para> | |
60
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
2033 We have seen cases where the descoffset in the b5 block is zero, and |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
2034 the index2Offset in the 7c block is zero. This has been seen for |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
2035 objects that seem to be attachments on messages that have been |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
2036 read. Before the message was read, it did not have any attachments. |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
2037 </para> |
97b7706bdda2
Work around bogus 7c.b5 blocks in some messages that have been read.
Carl Byington <carl@five-ten-sg.com>
parents:
58
diff
changeset
|
2038 <para> |
35 | 2039 Note the index2Offset above of 0x0080, which again is an index reference. In this |
2040 case, it is an internal pointer reference, which needs to be right shifted | |
28 | 2041 by 4 bits to become 0x0008, which is then a byte offset to be added to |
2042 the above indexOffset plus two (to skip the count), so it points to the | |
2043 (0xf0, 0x155) pair. This is an array of tables of four byte integers. | |
2044 We will call these the IND2 tables. The size of each of these tables is | |
2045 specified by the recordSize field of the "7c" header. The number of | |
2046 these tables is the above recordCount value derived from the "b5" block. | |
2047 </para> | |
2048 <para> | |
2049 Now the remaining data in the "7c" block after the header starts at | |
2050 offset 0x2a. There should be itemCount 8 byte items here, with the | |
2051 following format: | |
2052 </para> | |
2053 <literallayout class="monospaced"><![CDATA[ | |
2054 0000 referenceType [2 bytes] | |
2055 0002 itemType [2 bytes] | |
2056 0004 ind2Offset [2 bytes] | |
35 | 2057 0006 size [1 byte] |
2058 0007 unknown [1 byte] | |
28 | 2059 ]]></literallayout> |
2060 <para> | |
35 | 2061 The ind2Offset is a byte offset into the current IND2 table of some value. |
2062 If that is a four byte integer value, then once we fetch that, we have | |
2063 the same triple (item type, reference type, value) as we find in the | |
2064 0xbcec style descriptor blocks. If not, then this value is used directly. | |
2065 These 8 byte descriptors are processed recordCount times, each | |
28 | 2066 time using the next IND2 table. The item and reference types are as |
2067 described above for the 0xbcec format descriptor block. | |
2068 </para> | |
2069 </refsect1> | |
2070 | |
48 | 2071 <refsect1 id='pst.file.desc3.32.5'> |
2072 <title>32 bit Associated Descriptor Item 0x0101</title> | |
35 | 2073 <para> |
49 | 2074 This descriptor block contains a list of ID1 values. It is used when |
2075 an ID1 (that would normally point to a type 0x7cec or 0xbcec | |
2076 descriptor block) contains more data than can fit in any single | |
2077 descriptor of those types. In this case, it points to a type 0x0101 | |
2078 block, which contains a list of ID1 values that themselves point to | |
2079 the actual descriptor blocks. The total length value in the 0x0101 | |
2080 header is the sum of the lengths of the blocks pointed to by the list | |
2081 of ID1 values. The result is an array of subblocks, that may contain | |
2082 index references where the high order 16 bits specify which descriptor | |
2083 subblock to use. Only the first descriptor subblock contains the | |
2084 signature (0xbcec or 0x7cec). | |
35 | 2085 </para> |
2086 <literallayout class="monospaced"><![CDATA[ | |
2087 0000 01 01 02 00 26 28 00 00 18 77 0c 00 b8 04 00 00 | |
2088 | |
2089 0000 signature [2 bytes] 0x0101 constant | |
2090 0002 count [2 bytes] 0x0002 in this case | |
49 | 2091 0004 total length [4 bytes] 0x002826 in this case |
35 | 2092 repeating |
49 | 2093 0008 id1 [4 bytes] 0x0c7718 in this case |
2094 000c id1 [4 bytes] 0x0004b8 in this case | |
35 | 2095 ]]></literallayout> |
2096 </refsect1> | |
2097 | |
48 | 2098 <refsect1 id='pst.file.desc3.64.5'> |
2099 <title>64 bit Associated Descriptor Item 0x0101</title> | |
2100 <para> | |
2101 This descriptor block contains a list of ID1 values. | |
2102 </para> | |
2103 <literallayout class="monospaced"><![CDATA[ | |
2104 0000 01 01 02 00 ea 29 00 00 10 83 00 00 00 00 00 00 | |
2105 0010 1c 83 00 00 00 00 00 00 | |
2106 | |
2107 0000 signature [2 bytes] 0x0101 constant | |
2108 0002 count [2 bytes] 0x0002 in this case | |
49 | 2109 0004 total length [4 bytes] 0x0029ea in this case |
48 | 2110 repeating |
49 | 2111 0008 id1 [8 bytes] 0x008310 in this case |
2112 0010 id1 [8 bytes] 0x00831c in this case | |
48 | 2113 ]]></literallayout> |
2114 </refsect1> | |
2115 | |
24 | 2116 </refentry> |
16 | 2117 </reference> |