7fdbfd4dafe614e70e8880369a9176e99e316638
[pgp-tools.git] / gpgdir / ChangeLog
1 gpgdir-1.9.4 (02/12/2009):
2 - Fixed a bug in missing the proper handling of files with spaces when
3 using the --Wipe secure deletion mode (reported by Lars Wilke).
4 - The --Force option now supports the ability to encrypt/decrypt hidden
5 files (suggested by Lars Wilke).
6
7 gpgdir-1.9.3 (11/05/2008):
8 - Bugfix for using -f instead of -I for non-interactive file erasure
9 (Franck Joncourt).
10 - Simplified test suite code by creating a set of default arguments for
11 the gpgdir command line as each test is executed.
12
13 gpgdir-1.9.2 (08/31/2008):
14 - Added new modes '--sign <dir>' and '--verify <dir>' to allow all files
15 in the specified directory to be signed or verified instead of encrypted
16 or decrypted. All GnuPG signatures are created as "<file>.asc", and the
17 original file is not removed in --sign mode. In --verify mode, if any
18 file does not match the expected .asc signature, then a warning like the
19 following will be generated:
20
21 [+] Verifying: /home/mbr/src/gpgdir/test/data-dir/multi-line-ascii.asc
22 [GNUPG:] BADSIG 9EDEEEEBA742EEEF Some User <someuser@domain.org>
23
24 - Bugfix to not die() when files that are encrypted with a different GnuPG
25 key are encountered in a directory that is being decrypted. A warning
26 message (see below) is now generated and the file is skipped:
27
28 [+] Decrypting: /home/mbr/tmp/gpgdir/a.gpg
29 [GNUPG:] BAD_PASSPHRASE CF16F0FCFFF3FF4F
30 [-] Skipping file encrypted with different GnuPG key: a.gpg
31
32 - Updated to use the status output from GnuPG::Interface to detect a bad
33 passphrase and whether a file is encrypted with the expected GnuPG key.
34 - Moved the GnuPG::Interface, Class::MethodMaker, and Term::ReadKey
35 modules to the deps/ directory, and updated the installer and RPM spec
36 file to account for the path change. This change was suggested by
37 Franck Joncourt for the other cipherdyne.org projects.
38 - Updated the test suite to generate files in the output/ directory
39 according to test number and append the result of each test within each
40 file. This makes it easy to tell which tests have failed with a simple
41 'grep fail output/*test'.
42 - Added the gpgdir-nodeps.spec file to allow an RPM to be built that does
43 not contain any perl modules dependencies.
44 - Updated gpgdir to import perl modules via 'require' statements instead
45 of 'use' statements so that the path to the modules directory can be
46 changed via the --Lib-dir command line argument. Also updated to use
47 the 'auto' heuristic (first implemented in the fwknop project) to detect
48 perl module directories that should be used in the --Lib-dir directory
49 to import perl modules from.
50
51 gpgdir-1.9.1 (06/07/2008):
52 - Updated to Class::MethodMaker 2.11 from CPAN. This helps with systems
53 running perl-5.10.0 and greater (such as Fedora 9).
54 - Updated to always set the LC_ALL environmental variable to the "C"
55 locale. This can be set to other locales with a new argument --locale,
56 or the default locale can be used by using --no-locale argument.
57
58 gpgdir-1.9 (05/31/2008):
59 - Changed --Obfuscate-filenames format to not include the gpgdir PID.
60 This allows directories to be encrypted/decrypted under -O multiple
61 times without creating new filenames (which would pollute encrypted
62 directories under rsync to other systems). The new -O encrypted
63 filename format is just "gpgdir_<num>.gpg".
64 - Added PID locking against directories so that multiple gpgdir processes
65 cannot operate against the same top-level directory simultaneously.
66 This is useful for users that typically operate with multiple shells
67 and might launch gpgdir from any of them.
68
69 gpgdir-1.8 (04/04/2008):
70 - Updated the test suite to validate the gpgdir --Obfuscate-filenames
71 mode to ensure that files are encrypted as "gpgdir_<pid>_<num>.gpg".
72 - Minor bug fix to remove the .gpgdir_map_file in --Obfuscate-filenames
73 mode after a successful decryption cycle.
74 - Updated to version 0.36 of CPAN GnuPG::Interface module.
75
76 gpgdir-1.7 (02/18/2008):
77 - Bugfix to ensure that encrypted directories can actually be decrypted.
78 This bug was reported by Per Ronny Westin.
79 - Updated to use the ".asc" extension for encrypted files in --Plain-ascii
80 mode.
81 - Added gpgdir test suite. All future gpgdir releases (and including this
82 1.7 release) require that all gpgdir tests pass on the systems where
83 gpgdir is developed.
84
85 gpgdir-1.6 (02/17/2008):
86 - Bugfix to not include previously encrypted files (i.e. those with a .gpg
87 extension) in the encryption/decryption file list. This bug was
88 introduced in gpgdir-1.5 when a change was made to ignore ascii-armored
89 files.
90 - Added added LC_ALL=C locale setting for the install.pl script (this
91 should help to ensure gpgdir is properly installed on most systems). Two
92 new command line arguments --LC_ALL and --no-LC_ALL also allow the
93 locale setting to be changed or not used at all.
94 - Added --Exclude-mod-regex option to the install.pl script so that it is
95 possible to force the exclusion of perl modules that gpgdir would
96 normally install. This is useful for ensuring that gpgdir references
97 perl modules that are already installed in the system perl library tree
98 instead of using those that are installed in /usr/lib/gpgdir.
99 - Updated to display command line usage warnings without automatically
100 displaying the entire usage() page (which is quite long).
101
102 gpgdir-1.5 (08/31/2007):
103 - Added the --Symmetric option so that files can be encrypted/decrypted
104 via a symmetric encryption algorithm (GnuPG commonly uses CAST5 for
105 this).
106 - Added the --Plain-ascii option so that GnuPG is invoked with the -a
107 option so that encrypted files are ascii armored instead of encrypted in
108 binary form.
109 - Bugfix to ensure not to delete zero-size files if a bad password is
110 given (gpgdir now just throws a warning and exits in this case).
111 - Minor code enhancements to provide a consistent hash_init() invocation
112 with the same options hash.
113 - Updated to exclude .asc files from the encryption/decryption process.
114
115 gpgdir-1.4 (07/20/2007):
116 - (Anthony Chivetta) Submitted patch to implement the
117 --overwrite-encrypted command line argument to allow previously
118 encrypted files to be overwritten. This is useful for updating an
119 encrypted directory with new versions of the previously encrypted files.
120 Also added the --overwrite-decrypted command line argument to perform
121 the same function for previously decrypted files.
122 - (Anthony Chivetta) Submitted patch to fix a bug where a filename of
123 "0.gpg" could not be decrypted because "0" does not evaluate to a true
124 value.
125
126 gpgdir-1.3 (06/09/2007):
127 - Added --Obfuscate mode so that the files within a directory can be
128 altered into unrecognizable names (which are stored within the file
129 .gpgdir_map_file within each sub-directory, and this file is itself
130 encrypted). The obfuscated file names are reversed when a directory
131 is decrypted.
132 - Added the --Agent-info command line argument so that the value of the
133 GPG_AGENT_INFO environment variable can be specified on the gpgdir
134 command line.
135
136 gpgdir-1.2 (05/28/2007):
137 - Added support for installing gpgdir on Windows under Cygwin (via the
138 install.pl script). Installing gpgdir on FreeBSD systems also works.
139 - Added support for installing gpgdir within a user home directory without
140 the need for root access (this requires installing gpgdir with the
141 install.pl script).
142 - Added --agent to have gpgdir acquire gpg key password from a running
143 gpg-agent instance.
144 - Added --no-password so gpgdir can use a gpg key with no associated
145 password (this is not common). The user is not prompted for a password
146 in this case.
147
148 gpgdir-1.1 (05/21/2007):
149 - Added the ability to securely delete the original versions of files with
150 the 'wipe' program (after they have been successfully encrypted). Also
151 added --wipe-path to specify a path to the wipe binary (the default is
152 /usr/bin/wipe), --wipe-interactive to force the wipe program to prompt
153 the user before a file is deleted, and --wipe-cmdline to allow the user
154 to build a set of command line arguments that are passed to the wipe
155 program.
156 - Added --Force to have gpgdir skip over the error condition where a file
157 cannot be deleted (because of a permissions issue for example).
158 - Added --Trial-run to allow the user to see what actions gpgdir would
159 take to encrypt or decrypt files, but no files are actually modified.
160 - Added --Interactive to have gpgdir prompt the user before every file is
161 encrypted, decrypted.
162 - Added the gpgdir.SlackBuild script (contributed by pyllyukko originally
163 for the psad project) for building gpgdir on Slackware systems.
164
165 gpgdir-1.0.3 (09/17/2006):
166 - Minor bugfix to correct 1.0.1 version number (which should have been set
167 to 1.0.2) in the gpgdir RPM spec file.
168
169 gpgdir-1.0.2 (09/17/2006):
170 - Minor bugfix to correct 1.0 version number (which should have been set
171 to 1.0.1). The result is the 1.0.2 release.
172
173 gpgdir-1.0.1 (09/16/2006):
174 - Added --quiet option to have gpgdir print as little as possible to the
175 screen when encrypting or decrypting a directory.
176 - Added x86_64 RPM (original patch from Mate Wierdl adapted for gpgdir).
177
178 gpgdir-1.0 (09/13/2006):
179 - Added --Key-id command line argument so that use_key can be overridden
180 from the command line
181 - Made the argument to use_key not have to strictly be a keyID since GnuPG
182 allows a unique string match on keys in the key ring
183 - Added --Default-key to allow the user to have gpgdir use the default
184 key that is defined by GnuPG within the ~/.gnupg/options file.
185 - Updated the .gpgdirrc file to include the line "default_key" to allow
186 the user to have gpgdir prefer to use the GnuPG default key.
187 - Added the ChangeLog.svn file to show exactly which files have been
188 changed from release to release, and what the corresponding Subversion
189 log messages are.
190 - Minor documentation updates.
191
192 gpgdir-0.9.9 (09/07/2006):
193 - Added RPM .spec file to build gpgdir as an RPM.
194 - Added the --Skip-mod-install command line argument to install.pl to
195 allow all perl module installs to be skipped.
196 - Added the --force-mod-regex command line argument to install.pl to allow
197 a regex match on perl module names to force matching modules to be
198 installed.
199 - Updated to TermReadKey-2.30 from 2.21.
200
201 gpgdir-0.9.8 (07/03/2006):
202 - Updated to use GnuPG::Interface instead of GnuPG module. This should
203 fix the incompatibility issues seen between the GnuPG module and some
204 GnuPG installations.
205 - Added perl module installation code from fwknop (see
206 http://www.cipherdyne.org/fwknop/). This allows gpgdir to
207 preferentially use any perl modules that are already be installed on the
208 system.
209
210 gpgdir-0.9.4 (10/12/2005):
211 - Updated test mode to encrypt and decrypt a testing file within the
212 directory to be encrypted or decrypted. This file is located at
213 <dir>/gpgdir_test, and is removed after the test is completed.
214 - Bugfix for "protocol error: expected SHM_GET_XXX got GOOD_PASSPHRASE"
215 error in GnuPG module.
216
217 gpgdir-0.9.3 (02/20/2005):
218 - Added --Include and --Include-from options to allow inclusion
219 regular expressions to be specified.
220 - Bugfix for not decrypting filesnames that contain spaces.
221
222 gpgdir-0.9.2 (01/05/2005):
223 - Added preservation of file mtime and atime values (may be disabled
224 with the --no-preserve-times option).
225 - Added testing encryption and decryption of dummy file (may be
226 disabled with --skip-test) by default for both encrypt and decrypt
227 modes.
228 - Added --test-mode to run encrypt -> decrypt test and exit.
229 - Removed unnecessary compression options.
230 - Updated get_homedir() to reference HOME environmental variable if
231 the /etc/passwd file does not exist (OS X being a good example).
232 - Added --verbose mode.
233 - Updated output to generate errors on a per-file basis instead of
234 dumping them at the end of an encrypt/decrypt operation.
235
236 gpgdir-0.9.1 (11/11/2004):
237 - Updated GnuPG.pm perl module to handle return code of PLAINTEXT
238 which seems to be returned by GunPG now (as of version 1.2.6)
239 instead of DECRYPTION_OKAY upon a successful decryption.
240
241 gpgdir-0.9 (09/12/2004):
242 - Added --gnupg-dir option to allow a user to specify a different
243 user's .gnupg directory for encryption keys.
244 - Switched to "[+]" (and related) message prefixes.
245
246 gpgdir-0.8 (05/29/2004):
247 - Added --Exclude and --Exclude-from options to allow files to be
248 excluded based on regex matches.
249 - Reworked error messages so they contain the filename associated
250 with each error.
251
252 gpgdir-0.4 (04/23/2004):
253 - Added --pw-file option so that a decryption password can be
254 read out of a file.
255 - Better directory validation (filesystem -e and -d checks).
256 - Added INSTALL file.
257 - Updated man page and README file.
258
259 gpgdir-0.3 (09/27/2003):
260 - Bundled perl modules GnuPG and TermReadKey with gpgdir.
261 - Modified install.pl and gpgdir to install and use GnuPG and
262 TermReadKey modules from the /usr/lib/gpgdir directory.
263 - Added check_commands() subroutine from psad.