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