Update NEWS.
[pwmd.git] / NEWS
blob520ecdcd6153245c871d2d69e78438bc62b0665f
1 PWMD v3.0.0
2 -----------
3 This version contains quite a few changes and enhancements. Most
4 commands and syntax have changed in this release so please read the
5 example configuration file and the html or texinfo documentation in
6 the doc/ directory.
8 You will need to convert your existing pwmd v2.x data file to the new
9 data file format by doing the following:
11         $ pwmd --convert datafile -o newfile
13 then place "newfile" in ~/.pwmd/data. If you built with gpg-agent
14 support by passing --enable-agent to configure, then append
15 --use-agent to the above command line to use the gpg-agent to generate
16 a public and private keypair. No keypair is generated by default; the
17 data file is symmetrically encrypted.
19 Pwmd now supports the use of the gpg-agent for passphrase caching and
20 key management. This means smartcards are also supported. A "stub" of
21 the secret key is stored in the above mentioned key directory, but the
22 secret portion of the key is stored on the smartcard. To convert your
23 existing data while encrypting to an existing public key, pass the
24 --keygrip option with --convert or --import, along with
25 --use-agent. You may also need to pass the --sign-keygrip, too. See
26 the pwmd manual for details.
28 The XML document is now cached in pwmd when the passphrase is also
29 cached. This is needed to prevent requiring a smartcard to be inserted
30 for each OPEN command although it can still be required by setting the
31 CACHETIMEOUT of a data file to 0. Pwmd will operate on a copy of the
32 cached document and update the cached one after a SAVE. It is also
33 much faster than having to decrypt the data file during each OPEN.
34 The cached document is encrypted to prevent memory grepping attacks.
36 Ported to POSIX threads (pthreads).
38 Renamed error codes:
39     PWMD_LIBXML_ERROR -> GPG_ERR_BAD_DATA
40     PWMD_NO_FILE -> GPG_ERR_INV_STATE
41     PWMD_FILE_MODIFIED -> GPG_ERR_CHECKSUM
43 Most commands now have an --inquire option to retrieve remaining
44 non-option arguments via a server inquire. This avoids the libassuan
45 line length limit for longer element paths.
47 Added the PASSWD command to change the passphrase of a secret key or a
48 symmetrically encrypted key (SAVE --no-agent).
50 The IMPORT command can now import siblings.
52 Added the AGENT command to send a command directly to gpg-agent.
54 Added the GETINFO command to retrieve server details. This removes the
55 VERSION and GETPID commands.
57 Removed the CONFIG and KEEPALIVE status messages.
59 Added the NEWFILE status message to determine when the file OPEN'ed is
60 a new one.
62 Added ISCACHED --lock to lock the file mutex. This doesn't require an
63 OPEN'd file. It was added to prevent a race condition with another
64 client accessing the same file when one client needed to determine the
65 cache status before the OPEN.
67 Texinfo documentation and the manual page is generated from the
68 texinfo source.
70 Commands that normally returned GPG_ERR_NO_VALUE now return
71 GPG_ERR_NO_DATA.
73 The --iterations command line, configuration and SAVE options have
74 been renamed to "s2k-count". The PASSWD command can be used to change
75 this value for an existing secret key.
77 The CLEARCACHE command returns an error when the file mutex associated
78 with the data file is locked by another client. Although an error is
79 returned the cached file is flagged for cache removal which will occur
80 when the data file mutex is released.
82 Added LIST --all to retrieve the entire element tree. Flags are
83 appended to each element path when this option is used. See the
84 documentation for details.
86 The checksum is now a CRC32 checksum rather than a stat() of the ctime
87 of the data file.
89 Can now listen for remote connections via TLS (IPv4 and IPv6) as well
90 as the local UNIX domain socket.
92 Added tests. Run them with 'make tests' in the tests/ directory.
94 More portable: *BSD, SunOS/Solaris/OpenSolaris, Android and Linux and
95 32 and 64 bit versions of these as well as little and big endian.
97 Removed the libglib-2.0 dependency.