Diff of /docs/formatV3.txt [5f71fb] .. [333dd9]  Maximize  Restore

Switch to side-by-side view

--- a/docs/formatV3.txt
+++ b/docs/formatV3.txt
@@ -1,5 +1,5 @@
-PasswordSafe database format description version 3.29Y
-------------------------------------------------------
+PasswordSafe database format description version 3.30
+-----------------------------------------------------
 
 Copyright (c) 2003-2013 Rony Shapiro <ronys@users.sourceforge.net>.
 All rights reserved. Use of the code is allowed under the Artistic
@@ -80,9 +80,10 @@
 as the encryption key.
 
 2.9.1 HDR: The database header. The header consists of one or more typed
-fields (as defined in section 3.2), terminated by the 'END' type field. The
-version number field is mandatory. Aside from the 'END' field, no
-order is assumed on the field types.
+fields (as defined in section 3.2), beginning with the Version type
+field, and terminated by the 'END' type field. The version number
+and END fields are mandatory. Aside from these two fields, no order is
+assumed on the field types.
 
 2.9.2 R1..Rn: The actual database records. Each record consists of one or
 more typed fields (as defined in Section 3.2), terminated by the 'END' type
@@ -156,11 +157,11 @@
 Recently Used Entries       0x0f        Text                         [14]
 Named Password Policies     0x10        Text                         [15]
 Empty Groups                0x11        Text                         [16]
-Yubico                      0x12        Text                         [17]
-End of Entry                0xff        [empty]       Y              [18]
+Yubico                      0x12        Text                         [13]
+End of Entry                0xff        [empty]       Y              [17]
 
 [1] The version number of the database format. For this version, the value
-is 0x030b (stored in little-endian format, that is, 0x0b, 0x03).
+is 0x0310 (stored in little-endian format, that is, 0x10, 0x03).
 PasswordSafe V3.01 introduced Format 0x0300
 PasswordSafe V3.03 introduced Format 0x0301
 PasswordSafe V3.09 introduced Format 0x0302
@@ -174,21 +175,22 @@
 PasswordSafe V3.28 introduced Format 0x030A
 PasswordSafe V3.29 introduced Format 0x030B
 PasswordSafe V3.29Y introduced Format 0x030C
-
+PasswordSafe V3.30 introduced Format 0x030D
 
 [2] A universally unique identifier is needed in order to synchronize
-databases, e.g., between a handheld pocketPC device and a
-PC. Representation is as described in Section 3.1.1.
-
-[3] Non-default preferences are encoded in a string as follows: The string
-is of the form "X nn vv X nn vv..." Where X=[BIS] for binary, integer and
-string respectively, nn is the numeric value of the enum, and vv is the
-value, {1 or 0} for bool, unsigned integer for int, and a delimited string
-for String. Only non-default values are stored. See PWSprefs.cpp for more
-details.  Note: normally strings are delimited by the doublequote character.
-However, if this character is in the string value, an arbitrary character
-will be chosen to delimit the string. Version 0x0309 added database wide
-special symbols to the Non-default preferences (0x02).
+databases across different machine. Representation is described in
+Section 3.1.1.
+
+[3] Non-default preferences are encoded in a string as follows: The
+string is of the form "X nn vv X nn vv..." Where X=[BIS] for boolean,
+integer and string respectively, nn is the numeric value of the enum,
+and vv is the value, {1 or 0} for bool, unsigned integer for int, and
+a delimited string for String. Only non-default values are stored. See
+PWSprefs.cpp for more details.  Note: normally strings are delimited
+by the doublequote character.  However, if this character is in the
+string value, an arbitrary character will be chosen to delimit the
+string. Version 0x0309 added database wide special symbols to the
+Non-default preferences (0x02).
 
 [4] If requested to be saved, this is a string of 1s and 0s indicating the
 expanded state of the tree display when the database was saved. This can
@@ -297,9 +299,7 @@
 
 This field was introduced in format version 0x030B.
 
-[17] This field contains keying material for the Yubico version.
-
-[18] An explicit end of entry field is useful for supporting new fields
+[17] An explicit end of entry field is useful for supporting new fields
 without breaking backwards compatability.
 
 3.3 Field types for database Records:
@@ -330,7 +330,8 @@
 Own symbols for password    0x16        Text          Y              [18]
 Shift Double-Click Action   0x17        2 bytes       Y              [15]
 Password Policy Name        0x18        Text          Y              [19]
-End of Entry                0xff        [empty]       Y              [20]
+Entry keyboard shortcut     0x19        4 bytes       Y              [20]
+End of Entry                0xff        [empty]       Y              [21]
 
 [1] Per-record UUID to assist in sync, merge, etc. Representation is
 as described in Section 3.1.1.
@@ -469,7 +470,20 @@
 symbols for password field [0x16]. This was introduced in version
 0x030A (PasswordSafe V3.28).
 
-[20] An explicit end of entry field is useful for supporting new fields
+[20] Entry keyboard shortcut.  Format is:
+  Bytes 0-1: Virtual KeyCode for the character (Windows only uses byte 1)
+  Byte  2  : zero
+  Byte  3  : Keyboard Modifiers - a bitwise OR of any valid combination of:
+    PWS_HOTKEYF_ALT     0x01
+    PWS_HOTKEYF_CONTROL 0x02
+    PWS_HOTKEYF_SHIFT   0x04
+    PWS_HOTKEYF_EXT     0x08
+    PWS_HOTKEYF_META    0x10 (not supported by Windows)
+    PWS_HOTKEYF_WIN     0x20 (not supported by Windows)
+    PWS_HOTKEYF_CMD     0x40 (not supported by Windows)
+This was introduced in version 0x030D (PasswordSafe V3.30).
+
+[21] An explicit end of entry field is useful for supporting new fields
 without breaking backwards compatability.
 
 4. Extensibility

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks