Version 3.0.0.
[libpwmd.git] / NEWS
blob227c015f1dc563b38fff3e5e374a9d35aa138e77
1 libPWMD v3.0.0
2 --------------
3 Now uses the assuan protocol for communicating with pwmd. This changes things
4 quite a bit. Read on...
6 Uses more secure memory allocation. Kinda. It mainly just zero's out what is
7 allocated before free()'ing it.
9 Added pwmd_init(). Call this before anything else.
11 Added pwmd_open() and pwmd_save(). This removes PWMD_OPEN and PWMD_SAVE.
13 Removed PWMD_COMMAND. pwmd_command() now accepts a format string as the
14 command.
16 Added pwmd_free_result(). Use this to free a result from pwmd_command().
18 Removed PWMD_SETOPT. Changed to pwmd_setopt().
20 Added options for setting up the pinentry terminal and display.
22 Added pwmd_get_password(). This is a nonblocking way of calling pinentry. It
23 returns a file descriptor that select() can use to read from when a password
24 is ready to be read from with read() (mostly ripped from Elinks'
25 start_thread()). Thanks Kalle Olavi Niemitalo <kon@iki.fi> for the idea.
27 Now uses libgpg-error error codes.
29 Fixed pwmc and the BYE command.
31 A few other changes. Read the libpwmd.h header file, libpwmd.3 and ChangeLog
32 for all the details.
35 libPWMD v2.0.3
36 --------------
37 Split pwmd and libpwmd into their own packages.
39 Added PWMD_SETOPT options PWMD_OPTION_PASSWORD_FUNC and
40 PWMD_OPTION_PASSWORD_DATA to specify a custom password retrieval function for
41 use with the PWMD_OPEN and PWMD_SAVE commands.
43 gpg-agent(1) is no longer used for interacting with pinentry(1). Now libassuan
44 calls pinentry directly. This adds PWMD_OPTION_PINENTRY_PATH to specify the
45 location of the pinentry program. The default is /usr/bin/pinentry. New
46 programs should use PWMD_OPTION_PINENTRY instead of PWMD_OPTION_USEAGENT and
47 EPWMD_PINENTRY_ERROR instead of EPWMD_AGENT_ERROR.
50 libPWMD v2.0.2
51 --------------
52 Added a manual page.
54 Removed pwmd_list_free(). The prototype disappeared but I forgot to remove the
55 code.
58 libPWMD v2.0.1
59 --------------
60 Restore the working directory after connecting to the socket.
62 Changed the gpg-agent title and description strings in pwmc.
64 Fixed a segfault when looking for the empty string in a result from
65 pwmd_command().
68 libPWMD v2.0.0
69 --------------
70 Most of the PWMD_* commands have been removed. PWMD_OPEN, PWMD_SAVE,
71 PWMD_SETOPT and the new PWMD_COMMAND remain. PWMD_COMMAND takes a char*
72 argument being the protocol command along with any argument to send to the
73 server. This is alot simpler and less error prone than before. Also the
74 library won't need to be updated if a protocol command changed or is added.
76 Fixed PWMD_SAVE and asking for a password when the file was cached.
78 Added pwmc. This is a command line client for pwmd. It reads protocol commands
79 from stdin.
81 Removed pwmd_base64_encode() and pwmd_base64_decode().
83 Added a pkg-config meta file.
86 libPWMD v1.0.1
87 --------------
88 Added PWMD_ATTR_GET to get an attribute value from an element path.
90 pwmd_base64_decode() bugfix. Don't assume the return value is a character
91 array by nul-terminating it.
93 Added pwmd_list_free() to free a "list" result.
95 Can compile with g++ and maybe other C++ compilers.
97 Fixed some memory leaks.
99 Bugfix for the protocol parser.
102 libPWMD v1.0.0
103 --------------
104 Changed the version number as suggested by the libtool docs.
106 pwmd_base64_decode() bugfix. The returned string wasn't NULL terminated.
108 Updates for the OPEN and SAVE protocol commands. libPWMD no longer base64
109 encodes the key.
111 Updates for the new ATTR protocol command.
114 libPWMD v0.0.1
115 --------------
116 Initial release.