diff options
| author | Michele Calgaro <michele.calgaro@yahoo.it> | 2025-05-25 14:15:29 +0900 |
|---|---|---|
| committer | Michele Calgaro <michele.calgaro@yahoo.it> | 2025-09-25 12:14:56 +0900 |
| commit | e09aff21f81165479e531aa78670447680b70559 (patch) | |
| tree | 68e431a89aeedc74060808012a392ee002f95bce /main/pinentry-tqt/ChangeLog-old | |
| parent | 5e806f0b9db5f5681705e1e2ce2ead7f06ae581f (diff) | |
| download | extra-dependencies-feat/restructuring.tar.gz extra-dependencies-feat/restructuring.zip | |
Restructuring: pinentry-tqtfeat/restructuring
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'main/pinentry-tqt/ChangeLog-old')
| -rw-r--r-- | main/pinentry-tqt/ChangeLog-old | 2175 |
1 files changed, 2175 insertions, 0 deletions
diff --git a/main/pinentry-tqt/ChangeLog-old b/main/pinentry-tqt/ChangeLog-old new file mode 100644 index 00000000..02a8010a --- /dev/null +++ b/main/pinentry-tqt/ChangeLog-old @@ -0,0 +1,2175 @@ +2012-08-08 Werner Koch <wk@gnupg.org> + + NB: ChangeLog files are no longer manually maintained. Starting + on August 8, 2012 we put change information only in the GIT commit + log, and generate a top-level ChangeLog file from logs at "make + dist". See doc/HACKING for details. + +2011-08-10 Werner Koch <wk@g10code.com> + + * configure.ac: Change bug report address to the BTS. Fix + autoconf warnings. + +2011-06-28 Werner Koch <wk@g10code.com> + + * gtk+-2/gtksecentry.c (PROP_EDITING_CANCELED): New. + (gtk_secure_entry_class_init, gtk_secure_entry_set_property) + (gtk_secure_entry_get_property): Implement as dummy it to get rid + of a runtime warning. + +2010-12-16 Werner Koch <wk@g10code.com> + + Release 0.8.1. + + * doc/pinentry.texi: Remove the custom font setting for underscores. + + Update to automake 1.10. + + * missing, config.guess, config.sub: Update from GnuPG. + + * w32/main.c (debugfp): Define to stderr. + (raise_sip) [!W32CE]: Make it a dummy function. + + * qt4/pinentrydialog.cpp (raiseWindow): Use SetForegroundWindow + API directly. + (SetForegroundWindowEx): Comment out. + +2010-10-19 Werner Koch <wk@g10code.com> + + * pinentry/pinentry.c (pinentry_have_display): Also detect + --display=DISPID. + +2010-10-12 Werner Koch <wk@g10code.com> + + * qt/main.cpp (escape_accel): New. Adapt from from qt4/. + (qt_cmd_handler): Implement default-ok and default-cancel. Escape + accelerators. + +2010-09-30 Werner Koch <wk@g10code.com> + + * pinentry/pinentry.h (struct pinentry): Add CLOSE_BUTTON. + * pinentry/pinentry.c (cmd_getpin, cmd_confirm, cmd_message): Send + BUTTON_INFO. + * gtk+-2/pinentry-gtk-2.c (delete_event): Set close_button. + +2010-09-22 Werner Koch <wk@g10code.com> + + * gtk+-2/pinentry-gtk-2.c (create_window): Make use of + default_cancel and default_ok. + +2010-08-19 Werner Koch <wk@g10code.com> + + * gtk+-2/Makefile.am (pinentry_gtk_2_SOURCES): Add gseal-gtk-compat.h. + + * configure.ac (AH_TOP, AH_BOTTOM): New. Define + GPG_ERR_ENABLE_ERRNO_MACROS. + +2010-06-08 Marc Mutz <marc.mutz@kdab.com> (wk) + + * qt4/pinentrydialog.cpp (PinEntryDialog): Add WindowStaysOnTopHint. + + * qt/pinentrydialog.cpp (PinEntryDialog): Add WStyle_StaysOnTop. + +2010-05-12 Guido Günther <agx@sigxcpu.org> (wk) + + * gtk+-2/gtksecentry.c: Make -DSEAL safe. + * gtk+-2/gseal-gtk-compat.h: New. + * gtk+-2/gtksecentry.h: Include new header. + +2010-05-07 Werner Koch <wk@g10code.com> + + * gtk+-2/pinentry-gtk-2.c (create_window): Keep the window above + and make sure it has the focus. Fixes bug#1162. + +2010-05-03 Werner Koch <wk@g10code.com> + + * gtk+-2/pinentry-gtk-2.c (create_window): Use + visibility-notify-event instead of map-event. Suggested by Ed + Marten. + +2010-04-26 Werner Koch <wk@g10code.com> + + * gtk+-2/pinentry-gtk-2.c (grab_failed): New. + (grab_keyboard): s/g_error/g_critical/. Set GRAB_FAILED. + (gtk_cmd_handler): Return Cancel if a grab failed. + +2010-04-20 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry.c: Move include config.h to top! + +2010-04-19 Werner Koch <wk@g10code.com> + + * gtk+-2/gtksecentry.c (gtk_secure_entry_delete_cb) + (gtk_secure_entry_toggle_overwrite, activate_cb) + (unichar_chosen_func): Comment out these unused functions. + (secentry_malloc): Fix format string error. + +2010-04-19 Stanislav Ochotnicky <sochotnicky@redhat.com> (wk) + + * gtk+-2/pinentry-gtk-2.c (ungrab_keyboard): Fix segv when using + option -g. + +2010-04-16 Marcus Brinkmann <marcus@g10code.de> + + * secmem/util.c: Fix inverted test. + +2010-04-12 Werner Koch <wk@g10code.com> + + * w32/main.c (dlg_proc): Act on VK_RETURN. + + * w32/pinentry-w32.rc: Include config.h. Add basic support for + small screens as used with WindowsCE. + + * w32/Makefile.am (pinentry-w32.o): Add -I.. to the command. + +2010-04-08 Werner Koch <wk@g10code.com> + + * pinentry/pinentry.c [W32CE]: Do not include errno.h and + locale.h. + (pinentry_have_display) [W32CE]: Do not use getenv. + (pinentry_parse_opts) [W32CE]: No error diagnostics due to missing + errno. + (sleep) [W32CE]: New. + (option_handler) [W32CE]: Ignore option --debug-wait. + (getpid) [W32CE]: New. + (pinentry_loop): Use STDIN_FILENO and STDOUT_FILENO. + (pinentry_loop): Factor code out to ... + (pinentry_loop2): New. + * w32/main.c (w32_strerror) [W32CE]: Do not use FormatMessage. + (main) [W32CE]: Do not use LockSetForegroundWindow. + (set_dlg_item_text): Use wchar_t for static string. + * secmem/util.c [W32CE]: Do not include errno.h. + (xwrite) [W32CE]: Shortcut EINTR loop. + +2010-04-07 Werner Koch <wk@g10code.com> + + * autogen.sh: Modernized. + +2010-03-03 Werner Koch <wk@g10code.com> + + Release 0.8.0. + +2010-03-02 Werner Koch <wk@g10code.com> + + * qt4/main.cpp (from_utf8): Add extra braces for clarity. + (main): Copy the fixed --display string. + +2010-02-25 Marc Mutz <marc@kdab.com> (wk) + + * qt4/main.cpp (from_utf8): don't throw InvalidUtf8(); for now, + fall back to QString::fromLocal8Bit() + +2010-02-22 Marc Mutz <marc@kdab.com> (wk) + + * qt4/main.cpp (InvalidUtf8): New exception class. + (from_utf8): wrapper around QString::fromUtf8 throwing + InvalidUtf8. + (qt_cmd_handler): Use from_utf8 instead of QString::fromUtf8. + (qt_cmd_handler_ex): New wrapper around qt_cmd_handler. + (pinentry_cmd_handler): Use qt_cmd_handler_ex. + + * qt4/main.cpp (qt_cmd_handler): Also handle accels in + SET{OK,NOTOK,CANCEL} string. + +2010-02-19 Marc Mutz <marc@kdab.com> (wk) + + * qt4/main.cpp (qt_cmd_handler), qt4/pinentrydialog.cpp + (PinentryDialog::PinEntryDialog): Use the button icons that come + with Qt. + + * qt4/pinentry_qrc, qt4/qrc_pinentry.cpp: New. + * qt4/gtk-cancel.png, qt4/gtk-ok.png: Removed. + * qt4/Makefile.am (EXTRA_DIST): Remove the GTK icons, add + pinentry.qrc. + (pinentry_qt4_SOURCES): add qrc_pinentry.cpp. + + * qt4/main.cpp (qt_cmd_handler): Remove i18n support again. + + * qt4/pinentrydialog.cpp (PinentryDialog::PinentryDialog): + set PIN entry field as buddy of its prompt + + * qt4/main.cpp (escape_accel): New. + (qt_cmd_handler): use it on default_cancel, default_ok, prompt. + + * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp + (PinEntryDialog::PinEntryDialog): don't use a nested vbox layout. + + * qt4/pinentrydialog.h: replace include file with forward decl. + * qt4/pinentrydialog.cpp: add include file here. + + * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp + (PinentryDialog::keyPressEvent()): Removed. + + * qt/4pinentrydialog.cpp (PinEntryDialog::PinEntryDialog): use + QLayout::SetFixedSize instead of rolling our own solution. + * qt4/pinentrydialog.h: (PinentryDialog::setFixedSize): Removed. + * qt4/pinentrydialog.moc: Re-created. + + * qt4/main.cpp: (qt_cmd_handler) make Cancel the default button + for CONFIRM + + * qt4/main.cpp: (qt_cmd_handler) implement the confirm/message + logic correctly + + * qt4/pinentrydialog.h (accepted, rejected): Removed; already + provided by base class. + * qt4/pinentrydialog.cpp (PinEntryDialog::PinEntryDialog): Use + QDialog::{accepted,rejected}. + * qt4/pinentrydialog.moc: Re-created. + + * qt4/pinentrydialog.moc, qt4/qsecurelineedit.moc: Make compatible + with newer Qt version. + +2010-02-19 Werner Koch <wk@g10code.com> + + * gtk+-2/pinentry-gtk-2.c (create_window): Allow mnemonics in + button labels. + + * pinentry/pinentry.h (struct pinentry): Add default_prompt. + * pinentry/pinentry.c (option_handler): Support "default-prompt". + (cmd_getpin): Use it. + (noprefix_strdup): Remove; should be done by caller. + +2010-02-17 Werner Koch <wk@g10code.com> + + * pinentry/pinentry.h (struct pinentry): Add default_ok and + default_cancel. + * pinentry/pinentry.c (noprefix_strdup): New. + (option_handler): Support "default-ok" and "default-cancel". + (strcpy_escaped): Change second arg from unsigend char to char. + +2010-02-16 Werner Koch <wk@g10code.com> + + * qt4/document-encrypt.png, qt4/gtk-cancel.png, qt4/gtk-ok.png: New. + * qt4/Makefile.am (EXTRA_DIST): Add them. + +2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk) + + Also attributed to Marc Mutz <marc@kdab.com>. + + * qt4/main.cpp, qt/pinentrydialog.cpp: If the style says so, + set (GTK) icons on OK and Cancel buttons. + +2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk) + + * qt4/main.cpp: Use an explicit QMessageBox instead of the + 'information' convenience method. We do this for two reasons: + 1. So we can set our own icon (icon()). 2. So we can call our + raiseWindow() function on it. + +2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> + + * qt4/main.cpp: Use title. Use Qt translation of "OK" and "Cancel" + + * qt4/pinentrydialog.cpp: Don't show the question-mark icon in the + window title. + +2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk) + + * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp: Use the + document-encrypt icon instead of the + QMessageBox::{Information,Critical} ones. + +2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk) + + Also attributed to Marc Mutz <marc@kdab.com>. + + * qt4/pinentrydialog.cpp: Properly show/hide optional widgets. + +2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> + + * qt4/pinentrydialog.cpp: Set text color or error label to red. + +2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk) + + Also attributed to Marc Mutz <marc@kdab.com>. + + * qt4/pinentrydialog.cpp: Gather scattered layouting code, use a + single gridlayout for all, and use QDialogButtonBox. + +2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk) + + * qt4/pinentrydialog.cpp: Call SetForegroundWindow on showEvent() + and set a fixed size on the dialog. + + * qt4/main.cpp: Set document-encrypt as the window icon. + +2010-02-15 Marc Mutz <marc@kdab.com> (wk) + + * qt4/main.cpp: Load the correct Qt translation file based on + either lc_messages or the current locale. + + * qt4/main.cpp: Use pinentry_t->parent_wid also for message-box + case. + + * qt4/main.cpp: Properly delete the QApplication. + +2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk) + + * qt4/main.cpp: Remove guard clause with impossible condition. + + * qt4/main.cpp: Respect pinentry_t->title. + + * qt4/main.cpp: Include config.h. + +2009-12-16 Marcus Brinkmann <marcus@g10code.de> + + * gtk+-2/gtksecentry.c: Don't translate properties. + Patch by Guido Guenther <agx@sigxcpu.org>. + +2009-12-02 Werner Koch <wk@g10code.com> + + * secmem/util.c: Re-indent function names. + (TEMP_FAILURE_RETRY): Remove because it is non-portable. + (xwrite): Open code the EINTR retry. + * pinentry/pinentry-curses.c (dialog_run): Replace '\e' by a + standard escape. Reported by Wyllys Ingersoll. + +2009-08-10 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry.c [!ENABLE_ENHANCED]: Remove option enhanced. + * pinentry/pinentry.h (struct pinentry) [!ENABLE_ENHANCED]: Remove + member enhanced. + * gtk+-2/pinentry-gtk-2.c: New macro. + (button_clicked, create_window) [!ENABLE_ENHANCED]: Disable code. + * gtk/pinentry-gtk.c (button_clicked, create_window): Likewise. + * doc/pinentry.texi (Using pinentry): Comment out enhanced option. + +2009-07-10 Till Adam <till@kdab.com> + + * qt4/pinentrydialog.cpp (PinEntryDialog): Redesign the dialog to + be prettier. + +2009-06-19 Marcus Brinkmann <marcus@g10code.de> + + * configure.ac: Post-release changes. + + Release version 0.7.6. + + * configure.ac: Bump version. + +2009-01-29 Bernhard Reiter <bernhard@intevation.de> + + * doc/pinentry.texi (Using pinentry): Fix typo. + +2009-04-24 Guido Guenther <agx@sigxcpu.org> + + * gtk+-2/gtksecentry.c (gtk_secure_entry_class_init): Don't + install "gtk-entry-select-on-focus" settings property since it + clashes with the one from GtkEntry. + (gtk_secure_entry_grab_focus): Create a temporary GtkEntry widget + to read that value instead. Allows to have GtkEntry and + GtkSecureEntry in the same process. + +2009-06-19 Marcus Brinkmann <marcus@g10code.de> + + Suggested by Simon McVittie: + * gtk+-2/gtksecentry.c (g_malloc, g_realloc, g_free): Renamed to + secentry_malloc, secentry_realloc. + (g_malloc0): Removed. + (GMALLOC_SIZE): Move to ... + * gtk+-2/gtksecentry.h (GMALLOC_SIZE): ... here. + (secentry_malloc, secentry_realloc, secentry_free): New prototypes. + * gtk+-2/pinentry-gtk-2.c (main): Set memory allocation vtable. + +2009-05-04 Till Adam <till@kdab.net> + + * qt4/main.cpp (qt_cmd_handler): Use WId instead of HWND. + +2009-04-14 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry.h (struct pinentry): New member NOTOK. + Rename member USER_CLOSED to CANCELED. + * pinentry/pinentry.c: Add initializer for NOTOK. + (register_commands): Add SETNOTOK. + * pinentry/pinentry-curses.c (STRING_NOTOK): New macro. + (dialog_pos_t): New value DIALOG_POS_NOTOK. + (struct dialog): New members notok, notok_x, notok_y. + (dialog_create): Implement NOTOK. + (dialog_switch_pos): Likewise. + (dialog_run): Likewise. + * gtk+-2/pinentry-gtk-2.c: Rename confirm_yes to confirm_value. + (confirm_value_t): New type. Use it for confirm_value. + (window_closed): Remove. + (confirm_button_clicked): Set confirm_value. + (create_window): Implement NOTOK. + (gtk_cmd_handler): Implement cancel behaviour a bit differently. + +2009-04-09 Marcus Brinkmann <marcus@g10code.de> + + * qt4/qsecurelineedit.h (QSecureLineEdit): Don't export. + +2009-04-06 Marcus Brinkmann <marcus@g10code.de> + + * configure.ac: Portability fixes. + +2009-04-03 Marcus Brinkmann <marcus@g10code.de> + + * qt4/Makefile.am (pinentry_qt4_SOURCES): Add qsecurelineedit_p.h. + + * secmem/Makefile.am (libsecmem_a_SOURCES): Add secmem++.h. + * qt4/Makefile.am (pinentry_qt4_SOURCES): Add pinentrydialog.moc + and qsecurelineedit. + + * configure.ac: Incorporate revision number in version string. + +2009-04-02 Till Adam <till@kdab.net> + + * qt4/qsecurelineedit.moc, qt4/main.cpp, qt4/pinentrydialog.moc, + qt4/qsecurelineedit.cpp, qt4/pinentrydialog.cpp, + qt4/pinentrydialog.h: Implement quality bar and grabbing. + + * qt4/pinentrydialog.cpp (PinEntryDialog): Enable word wrapping. + +2009-04-03 Marcus Brinkmann <marcus@g10code.de> + + * qt4/main.cpp (qt_cmd_handler): Cast window handle ID. + +2009-03-19 Werner Koch <wk@g10code.com> + + * pinentry/pinentry.h (struct pinentry): Add field user_closed. + * pinentry/pinentry.c (cmd_getpin, cmd_confirm, cmd_message): + Reset this field. + (cmd_confirm): Return cancel if the user closed the window. + * gtk+-2/pinentry-gtk-2.c (window_closed): New. + (gtk_cmd_handler, delete_event): Set it. + +2009-02-19 Marcus Brinkmann <marcus@g10code.de> + + * secmem/secmem++.h: New file. + * qt4/Makefile.am, qt4/main.cpp, qt4/pinentrydialog.cpp, + qt4/pinentrydialog.h: Changes to use secure memory. + * qt4/pinentrydialog.moc, qt4/qsecurelineedit.moc: New files. + * qt4/qsecurelineedit.cpp, qt4/qsecurelineedit.h, + qt4/qsecurelineedit_p.h, qt4/secstring.h, qt4/secstring.cpp: New + files. + Submitted by Marc Mutz <marc@kdab.net>. + +2008-12-08 Werner Koch <wk@g10code.com> + + * qt/main.cpp (qt_cmd_handler) <!want_pass>: Translate from utf8. + * qt4/main.cpp (qt_cmd_handler) <!want_pass>: Translate from utf8. + +2008-11-12 Ludovic Rousseau <ludovic.rousseau@gmail.com> (wk) + + * pinentry/pinentry.h (struct pinentry): Add field TITLE. + * pinentry/pinentry.c (cmd_settitle): New. + (register_commands): Add command SETTITLE. + * gtk+-2/pinentry-gtk-2.c (create_window): Set the title. + +2008-10-17 Werner Koch <wk@g10code.com> + + * secmem/memory.h: Add C++ extern declaration. + + * secmem/secmem.c (secmem_get_max_size): New. + +2008-07-25 Marcus Brinkmann <marcus@ulysses.g10code.com> + + * qt4/Makefile.am (DISTCLEANFILES): Rename to CLEANFILES. + (BUILD_SOURCES): New. + +2008-07-25 Marcus Brinkmann <marcus@g10code.de> + + * configure.ac: Prefer pinentry gtk2 over gtk. Now also choose + qt4 (after qt and before w32 native). + * README: Document Qt. + +2008-07-24 Marcus Brinkmann <marcus@g10code.de> + + * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp, qt4/main.cpp, + qt4/Makefile.am: New files. + * configure.ac: Add check for Qt4. + (AC_CONFIG_FILES): Add qt4/Makefile.am. + * Makefile.am (pinentry_qt4): New variable. + (SUBDIRS): Add ${pinentry_qt4}. + +2008-07-23 Werner Koch <wk@g10code.com> + + * secmem/secmem.c (secmem_init): Fix apostrophe in error + message. Reported by Petr Uzel. + +2008-05-05 Marcus Brinkmann <marcus@ulysses.g10code.com> + + * gtk+-2/gtksecentry.c (GMALLOC_SIZE): New symbol. + (g_malloc, g_malloc0, g_realloc): Use GMALLOC_SIZE instead of + gulong for size attribute. + +2008-03-03 Marcus Brinkmann <marcus@g10code.de> + + * gtk+-2/pinentry-gtk-2.c (create_window): Install realize callback. + (ungrab_keyboard): Unmake dialog transient. + (make_transient): New function. + Submitted by Joachim Breitner. + +2008-02-15 Werner Koch <wk@g10code.com> + + Release 0.7.4. + +2008-02-14 Werner Koch <wk@g10code.com> + + * configure.ac: Check for -Wno-pointer-sign. + + * pinentry/pinentry.c (cmd_getinfo): New. + (register_commands): Register it. + +2008-01-02 Marcus Brinkmann <marcus@g10code.de> + + * configure.ac: Use PKG_CONFIG instead of PKGCONFIG and + pkg-config. Use AC_PATH_PROG instead of AC_CHECK_PROG. + + * Makefile.am (install-exec-local): Add exe extension to link. + +2007-11-29 Marcus Brinkmann <marcus@g10code.de> + + Released 0.7.4. + +2007-11-19 Werner Koch <wk@g10code.com> + + * doc/pinentry.texi (Protocol): Typo fixes by Bernhard Herzog. + Describe SETQUALITYBAR_TT. + +2007-11-19 Bernhard Herzog <bernhard.herzog@intevation.de> (wk) + + * qt/pinentrydialog.cpp (PinEntryDialog): Fixed crash + +2007-11-19 Werner Koch <wk@g10code.com> + + * gtk+-2/pinentry-gtk-2.c (create_window): Use again map-event and + unmap-event as this works on my setup far more reliable than + expose-event/no-expose-event. + + * gtk+-2/gtksecentry.c (get_cursor_time): s/time/blinktime/ t + avoid shadowing warning. + + * pinentry/pinentry.h (struct pinentry): Change QUALITY_BAR to a + char ptr. + (struct pinentry): Add QUALITY_BAR_TT. + * pinentry/pinentry.c (cmd_setqualitybar): Allow to set a label text. + (cmd_setqualitybar_tt): New. + * gtk+-2/pinentry-gtk-2.c (create_window): Take label and tooltip + from global. + * qt/pinentrydialog.h (setQualityBar, setQualityBarTT) + (_quality_bar_label): New. + * qt/pinentrydialog.cpp (setQualityBar, setQualityBarTT): New. + (PinEntryDialog): Remove setting of tooltip. + + * qt/main.cpp (qt_cmd_handler): Propagate quality bar label and tootip. + +2007-11-19 Bernhard Herzog <bernhard.herzog@intevation.de> (wk) + + * qt/pinentrydialog.cpp (PinEntryDialog): Move the quality bar + below the text entry and align them properly. Show a tooltip. + * gtk+-2/pinentry-gtk-2.c (create_window): Ditto. Don't let it + change its height. + (QUALITYBAR_EMPTY_TEXT): New. + +2007-09-18 Werner Koch <wk@g10code.com> + + * qt/secqlineedit.h (SecQLineEdit): New signal textModified. + * qt/secqlineedit.cpp (finishChange): Emit it. + * qt/pinentrydialog.cpp (setPinentryInfo): New. + (PinEntryDialog): Add arg ENABLE_QUALITY_BAR. + * qt/pinentrydialog.h (setPinentryInfo): New. + (PinEntryDialog): Add arg ENABLE_QUALITY_BAR. + + * pinentry/pinentry.h (struct pinentry): Add member QUALITY_BAR + and CTX_ASSUAN. + * pinentry/pinentry.c (cmd_setqualitybar): New. + (copy_and_escape): New. + (pinentry_inq_quality): New. + +2007-07-09 Werner Koch <wk@g10code.com> + + * doc/pinentry.texi: Fixed direntry syntax. + + * configure.ac: Add --without-libcap. From the Gentoo patch archive. + + * gtk+-2/pinentry-gtk-2.c (create_window): Use expose-event + instead of map-event. From Alon Bar-Lev. + +2007-07-06 Werner Koch <wk@g10code.com> + + Released 0.7.3. + + * config.sub, config.guess: Updated from current Savannah CVS. + +2007-06-27 Werner Koch <wk@g10code.com> + + * w32/main.c: Revamped the SetFocus stuff. It is all not that easy. + +2007-06-26 Werner Koch <wk@g10code.com> + + * w32/Makefile.am (pinentry_w32_LDFLAGS): Add -mconsole again. + + * w32/main.c (dlg_proc): Set focus. + (resize_button): New. No code yet. + (dlg_proc): Call it for the buttons. + (w32_cmd_handler): Restore old foreground window. + +2007-06-20 Werner Koch <wk@g10code.com> + + * w32/Makefile.am (pinentry_w32_LDFLAGS): Remove -mconsole. + + * w32/main.c (wchar_to_utf8): New. + (ok_button_clicked): Use it. + (utf8_to_wchar): New. + (set_dlg_item_text): New. + (dlg_proc): Use new function so that we are able to correctly + display all prompts. + (main): Load LockSetForegroundWindow. + (dlg_proc): Call LockSetForegroundWindow via its fnc ptr. + (center_window): New. Taken from GPGol. + (dlg_proc): Call it. + (w32_cmd_handler): Revamped the confirm mode. + +2007-06-18 Werner Koch <wk@g10code.com> + + * w32/main.c (dlg_proc): Call LockSetForegroundWindow. + + * Makefile.am (signed-dist, %.sig): Remove. + + * autogen.sh: Modernized. + +2007-05-10 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry.h (pinentry_color_t): New type. + (struct pinentry): New members COLOR_FG, COLOR_FG_BRIGHT, + COLOR_BG, COLOR_SO. + * pinentry/pinentry.c (pinentry_parse_opts): Support new option --colors. + (parse_color): New function. + * pinentry/pinentry-curses.c (USE_COLORS): New macro. + (pinentry_color): New static variable. + (dialog_create): Redo color management. + + * pinentry/pinentry-curses.c (dialog_create): Re-add calculation + of cancel button position. Adjust calculation of OK button + position if it is the only one used. + +2007-04-13 Marcus Brinkmann <marcus@g10code.de> + + * qt/secqlineedit.h (SecQLineEdit::contextMenuEvent, + SecQLineEdit::createPopupMenu): Remove prototype. + * qt/secqlineedit.cpp (SecQLineEdit::contextMenuEvent, + SecQLineEdit::createPopupMenu): Remove implementation. + Submitted by Tobias Koenig <tokoe@kde.org>. + +2007-02-14 Werner Koch <wk@g10code.com> + + * pinentry/pinentry.h (struct pinentry): Add TOUCH_FILE. + * pinentry/pinentry.c (option_handler): New option "touch-file". + (pinentry_have_display): Ignore an empty DISPLAY. + * pinentry/pinentry-curses.c (do_touch_file): New. + (curses_cmd_handler): Call it. + * configure.ac: Check for utime.h. + +2007-01-24 Werner Koch <wk@g10code.com> + + * pinentry/pinentry.c (cmd_message): New. + (cmd_confirm): New command option --one-button. + (cmd_getpin): Zeroise ONE_BUTTON. + * pinentry/pinentry.h (struct pinentry): Add field ONE_BUTTON. + * gtk/pinentry-gtk.c (create_window): Take care of new option. + * gtk+-2/pinentry-gtk-2.c (create_window): Ditto. + * pinentry/pinentry-curses.c (dialog_create): Ditto. + (dialog_create, dialog_switch_pos): Allow CANCEL to be optional. + +2006-07-29 Marcus Brinkmann <marcus@g10code.de> + + * secmem/secmem.c (init_pool): Close FD after establishing the + mapping. + +2005-09-28 Marcus Brinkmann <marcus@g10code.de> + + * configure.ac (PINENTRY_GTK): Error out if iconv is not found but + needed. + + * config.rpath: New file from gettext. Needed by iconv.m4. + +2005-07-11 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry-curses.c (dialog_switch_pos): Set the cursor + state to invisible before moving around. Move the cursor to the + beginning of the dialog buttons for accessibility. + +2005-06-16 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry-curses.c (dialog_run): Only convert pin if a + pin actually exists. + +2005-01-27 Werner Koch <wk@g10code.com> + + Released 0.7.2. + + * gtk+-2/Makefile.am: Removed padlock-keyhole.xpm. + + * configure.ac: Use AC_GNU_SOURCE instead of the custom define. + Prefer gtk2 pinentry over qt. + +2005-01-21 Marcus Brinkmann <marcus@g10code.de> + + * doc/pinentry.texi: Fix spelling errors. + Submitted by Ville Skyttä. + +2004-12-23 Werner Koch <wk@g10code.com> + + * w32/pinentry-w32.rc: Remove the default texts for description, + prompt and error. Make it system modal. Enlarge the description + field. + +2004-12-22 Timo Schulz <twoaday@g10code.com> + + * w32/main.c: Remove all helper functions and use a callback + to set the dialog items directly. + (dlg_proc): Set 'result' to -1 to indicate cancel. + (ok_button_clicked): Adjusted. Set 'result' to the len of + the PIN to indicate success. + +2004-12-22 Werner Koch <wk@g10code.com> + + * w32/main.c: Simplified. + * w32/dialog.h, w32/dialog.c, w32/controller.h, w32/controller.c: + Removed + + * w32/resource.h, w32/pinentry-w32.rc, w32/main.c, w32/dialog.h + * w32/dialog.c, w32/controller.h, w32/controller.c + * w32/Makefile.am: New. Based on Timo's work. + + Update to automake 1.9. + + * autogen.sh (configure_ac): Add --build-w32 option. + * Makefile.am: Support for the W32 pinentry. + * configure.ac: Ditto. Reformatted some error messages. + Define the usual conditionals for W32. + Check for a couple of more usually required headers. + + * pinentry/pinentry.h (sleep) [W32]: New. + + * pinentry/pinentry.c: Include langinfo.h only if available. + (pinentry_loop) [DOSISH]: Don't do uid check. + + * secmem/util.c [DOSISH]: Disable UID stuff. + +2004-09-27 Marcus Brinkmann <marcus@g10code.de> + + * acinclude.m4 (IU_LIB_NCURSES, IU_LIB_CURSES, IU_LIB_TERMCAP): + Moved to m4/curses.m4. + (AM_ICONV): Moved to m4/iconv.m4. + (AM_PATH_GLIB): Moved to m4/glib.m4. + (QT_FIND_FILE, QT_PATH_MOC, QT_PATH_X, QT_PRINT_PROGRAM, + QT_CHECK_VERSION, QT_PATH_1_3, QT_PATH, QT_CHECK_COMPILER_FLAG, + QT_REMOVE_FORBIDDEN, QT_VALIDIFY_CXXFLAGS, QT_CHECK_COMPILERS, + QT_CHECK_RPATH, QT_CHECK_LIBPTHREAD, QT_CHECK_PTHREAD_OPTION, + QT_CHECK_THREADING): Move to m4/qt.m4. + +2004-09-21 Marcus Brinkmann <marcus@g10code.de> + + * qt/Makefile.am (pinentry_qt_LDFLAGS): Add $(QT_RPATH). + Requested by Leo Savernik <l.savernik@aon.at>. + +2004-09-02 Marcus Brinkmann <marcus@g10code.de> + + * gtk+-2/padlock-keyhole.xpm: File removed. + * gtk+-2/pinentry-gtk-2.c (create_window): Use stock icon. + * gtk+-2/gtksecentry.h, gtk+-2/gtksecentry.c: Fix copyright notice. + + Submitted by Albrecht Dress albrecht.dress@arcor.de. + +2004-08-17 Marcus Brinkmann <marcus@g10code.de> + + * configure.ac: Invoke AC_PROG_LN_S. + (PINENTRY_DEFAULT): New variable. Substitute it. Fail if no + default can be determined. + * Makefile.am (install-exec-local): Install pinentry default link. + + * configure.ac: Check for Gtk+-2. + * gtk+-2: New directory with gtk+-2 pinentry. + * gtk+-2/Makefile.am, gtk+-2/gtksecentry.h, gtk+-2/gtksecentry.c, + gtk+-2/pinentry-gtk-2.c, gtk+-2/padlock-keyhole.xpm: New files. + * Makefile.am (pinentry_gtk_2): New variable. + (SUBDIRS): Add pinentry_gtk_2. + + Submitted by Albrecht Dress albrecht.dress@arcor.de. + +2004-08-04 Werner Koch <wk@g10code.de> + + * pinentry/pinentry.c (usage): Print help to stdout. + +2004-07-30 Moritz Schulte <moritz@g10code.com> + + * qt/Makefile.am (ncurses_include): Removed + -I$(top_srcdir)/pinentry ... + (AM_CPPFLAGS): ... added: -I$(top_srcdir)/pinentry. Thanks to + Peter Eisentraut. + + * pinentry/pinentry.c (pinentry_utf8_to_local): Declare INPUT + const. + (pinentry_local_to_utf8): Likewise. + (pinentry_utf8_to_local, pinentry_local_to_utf8): Compile only, if + either Curses or GTK+ support is enabled. + * configure.ac: Do also check for libiconv when the GTK+ version + of pinentry is to be build. Define PINENTRY_CURSES, PINENTRY_GTK, + PINENTRY_QT depending on which versions of pinentry should be + build. + +2004-05-21 Marcus Brinkmann <marcus@g10code.de> + + * acinclude.m4 (QT_CHECK_DIRECT): Removed. + (QT_PATH_1_3): Do never invoke QT_CHECK_DIRECT. + +2004-04-21 Werner Koch <wk@gnupg.org> + + Released 0.7.1. + +2004-04-20 Werner Koch <wk@gnupg.org> + + * secmem/secmem.c [!ORIGINAL_GPG_VERSION]: Include util.h for some + typedefs and protos. + (secmem_free, secmem_term): Use wipememory2 instead of memset. + + * autogen.sh (configure_ac): Fixed version check (s/==/=/). + +2004-04-02 Thomas Schwinge <schwinge@nic-nac-project.de> + + * autogen.sh: Added ACLOCAL_FLAGS. + +2004-02-23 Marcus Brinkmann <marcus@g10code.de> + + * qt/main.cpp: Include "pinentry.h", not <pinentry.h>. + +2004-01-30 Werner Koch <wk@gnupg.org> + + * configure.ac (fopencookie): Remove that test. + +2004-01-28 Moritz Schulte <mo@g10code.com> + + * gtk/gtksecentry.c: + (gtk_secure_entry_key_press): Treat GDK_KP_Enter just like + GDK_Return. + +2004-01-18 Marcus Brinkmann <marcus@g10code.de> + + * qt/secqstring.cpp: Do not include "private/qunicodetables_p.h". + (isRightToLeft): De-optimize direction query. + + * qt/secqinternal_p.h, qt/secqinternal.cpp: New files. + * qt/Makefile.am (pinentry_qt_SOURCES): Add secqinternal_p.h + and secqinternal.cpp. + (EXTRA_DIST): Add README.SecQ. + * qt/secqlineedit.cpp: Include "secqinternal_p.h". + (drawContents): Use SecQSharedDoubleBuffer. + +2004-01-02 Werner Koch <wk@gnupg.org> + + * configure.ac: Early check for a c++ compiler. + +2003-12-23 Werner Koch <wk@gnupg.org> + + Released 0.7.0. + + Added Manifest files to all directories. + +2003-12-22 Werner Koch <wk@gnupg.org> + + * qt/main.cpp: Include errno.h. + (main): Translate the --display option to -display, so that the Qt + init code can grasp it. + + * doc/ChangeLog: Removed and merged with this file. + * doc/pinentry.texi: Cleaned up. + * doc/fdl.texi: Removed. + + * pinentry/pinentry.h (struct pinentry): Added LOCALE_ERR. + * gtk/pinentry-gtk.c (button_clicked): Set the LOCAE_ERR flag. + * pinentry/pinentry-curses.c (dialog_run): Ditto. + * pinentry/pinentry.c (cmd_getpin, cmd_confirm): Check this flag. + (pinentry_local_to_utf8): Release the correct buffer in the error + case. Print diagnostics. + (pinentry_utf8_to_local): Print diagnostics. + (pinentry_parse_opts): Make short options work. + (pinentry_utf8_to_local): Pass nl_langinfo to iconv_open. + + * gtk/pinentry-gtk.c (button_clicked): Use the right value as + input for the conversion. + + * pinentry/pinentry.c: New variable THIS_PGMNAME. + (pinentry_init): Add arg PGMNAME and store it. Use it at all + marked placed instead of the constant "pinentry". + (usage): Use it here too. + * curses/pinentry-curses.c (main): Call pinentry_init with our name. + * qt/main.cpp (main): Ditto. + * gtk/pinentry-gtk.c (main): Ditto. + + * configure.ac: Check for mmap. + + * secmem/util.h (wipememory2,wipememory,wipe): New. + * secmem/util.c (wipe): Removed. + * secmem/util.c (lower_privs, raise_privs): Commented out. + + * pinentry/pinentry.c (pinentry_loop): Add paranoia check for + dropped privs. + + * secmem/secmem.c (lock_pool): Cleanup syntax of cpp directives. + + * gtk/pinentry-gtk.c (main): Print package name in the version line. + * curses/pinentry-curses.c (main): Ditto. + * qt/main.cpp (main): Ditto. Fixed typo. + + * gtk/pinentry-gtk.c: Include memory.h. + +2003-12-20 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry.h (struct pinentry): New member PARENT_WID. + * pinentry/pinentry.c (pinentry): Add new member here. + (usage): Add --parent-wid. + (pinentry_parse_opts): Add case for "parent-wid". + (option_handler): Same here. + +2003-12-19 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry.c (cmd_setcancel): Use strcpy_escaped. + (cmd_setok): Likewise. + (cmd_setprompt): Likewise. + (pinentry_utf8_to_local): Don't use + nl_langinfo, but just lc_ctype directly. + * pinentry/pinentry.c (cmd_getpin): Do not convert passphrase to + UTF-8 here. + * gtk/pinentry-gtk.c (button_clicked): Convert passphrase to UTF8 + here. + * pinentry/pinentry-curses.c (dialog_run): Likewise. + +2003-12-14 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry.c (pinentry_init): Register secmem_term as + atexit function. Set assuan malloc hooks to secmem. + (pinentry_parse_opts): Add break statement to silence gcc warning. + * pinentry/pinentry.c (cmd_getpin): If canceled, release and clear + PINENTRY->pin nevertheless. + + * acinclude.m4 (qt_incdirs): Add /usr/include/qt3. + * qt/Makefile.am (pinentry_qt_SOURCES): Remove cppmemory.h, + cppmemory.cpp, pinentrycontroller.h, pinentrycontroller.cpp. + (nodist_pinentry_qt_SOURCES): Remove pinentrycontroller.moc.cpp. + (libcurses): Move ../pinentry/libpinentry.a from here to ... + (pinentry_qt_LDADD): ... here. Change order a bit to make it + work. + * qt/cppmemory.h, qt/cppmemory.cpp, qt/pinentrycontroller.h, + qt/pinentrycontroller.cpp: Files removed. + * qt/secqstring.h, qt/secqstring.cpp, secqlineedit.h, + secqlineedit.cpp: New files. + * qt/Makefile.am (pinentry_qt_SOURCES): Add secqstring.h, + secqstring.cpp, secqlineedit.h, and secqlineedit.cpp. + (nodist_pinentry_qt_SOURCES): Add secqlineedit.moc.cpp. + * qt/main.cpp: Do not include "memory.h" or "secmem-util.h", nor + <new> or "pinentrycontroller.h". Include <qapplication.h>, + <qmessagebox.h>, <qwidget.h> and "secqstring.h". Always include + <pinentry.h>. + [USE_KDE]: Remove all instances. + (curses_main): Function removed. + (my_new_handler): Likewise. + (qt_main): Likewise. + (qt_cmd_handler): New function. + (pinentry_cmd_handler): Define always (to qt_cmd_handler). + (main): Rewritten. + * qt/pinentrydialog.cpp: Do not include <qlineedit.h>, but + "secqlineedit.h". + (PinEntryDialog::PinEntryDialog): Make _edit a SecQLineEdit + object. Connect accepted SIGNAL to accept SLOT, and rejected + SIGNAL to reject SLOT. + (PinEntryDialog::setText): Make argument SecQString rather than + QString. + (PinEntryDialog::text): Likewise for return value. + * qt/pinentrydialog.h: Declare SecQString and SecQLineEdit classes. + (class PinEntryDialog): Disable property text (for now). Adjust + argument of setText and return value of text, as well as type of + _edit. + +2003-12-09 Werner Koch <wk@gnupg.org> + + * README.CVS: New. + * Makefile.am (EXTRA_DIST): Add README.CVS + (ACLOCAL_AMFLAGS): New. + * configure.ac: Added min_automake_versions. + * autogen.sh: Revamped. + +2003-04-23 Steffen Hansen <steffen@klaralvdalens-datakonsult.se> + + * configure.ac: Version 0.6.10-cvs + +2003-04-23 Steffen Hansen <steffen@klaralvdalens-datakonsult.se> + + * configure.ac: Version 0.6.9 + * qt/Makefile.am: Added moc files to DISTCLEANFILES + * qt/pinentrycontroller.cpp: Don't spew assuan debug stuff out on stderr. + +2003-03-26 Steffen Hansen <steffen@klaralvdalens-datakonsult.se> + + * qt/cppmemory.cpp, qt/main.cpp: Only override array allocation + operators. This should take care of the reported memory-problems + and even make pinentry-qt use a bit less memory. + +2003-02-15 Steffen Hansen <steffen@klaralvdalens-datakonsult.se> + + * qt/pinentrydialog.h, qt/pinentrydialog.cpp: Added icons + for error/non-error messages. + +2003-02-07 Marcus Brinkmann <marcus@g10code.de> + + Released 0.6.8. + +2003-02-04 Steffen Hansen <steffen@klaralvdalens-datakonsult.se> + + * qt/main.cpp: Work around '--display' option. This fixes + the pinentry-qt problem reported by several people lately. + +2003-01-24 Werner Koch <wk@gnupg.org> + + * autogen.sh: Print a hint to use maintainer mode. + +2002-12-24 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry-curses.c (collect_line): New function. + (COPY_OUT, MAKE_BUTTON): New macros. + (dialog_create): Rewrite the initializing code and the description + calculation routine with word wrapping. + +2002-11-20 Werner Koch <wk@gnupg.org> + + Released 0.6.7. + + * pinentry/pinentry-curses.c (dialog_create): Better truncate + lines than to go into an infinite loop. We need to implement word + wrap. + (dialog_run): Add DIALOG_POS_NONE to switch so prevent a warning. + +2002-11-12 Werner Koch <wk@gnupg.org> + + * config.sub, config.guess: Updated from ftp.gnu.org/gnu/config + to version 2002-11-08. + +2002-11-09 Werner Koch <wk@gnupg.org> + + Released 0.6.6. + +2002-11-08 Werner Koch <wk@gnupg.org> + + * pinentry/pinentry-curses.c (convert_utf8_string): Renamed to + * pinentry/pinentry.c (pinentry_utf8_to_local): this. Changed + callers. + (pinentry_local_to_utf8): New. + (cmd_getpin): Convert result back to UTF-8. + * gtk/pinentry-gtk.c (create_utf8_label): New. + (create_window): Use it here to set the prompts. + +2002-11-06 Werner Koch <wk@gnupg.org> + + * pinentry/pinentry-curses.c (dialog_run): Fixed retrun value tests + for fopen. + +2002-11-05 Werner Koch <wk@gnupg.org> + + * secmem/util.c (init_uids): Make it a prototype. + + * gtk/pinentry-gtk.c (enter_callback): Changed argument name to + avoid shadowing warning. + (create_window): Removed unused variable I. + (ok): Not used, commented. + + * pinentry/pinentry.c: Include headers for getpid and sleep + prototypes. + + * secmem/util.h: Correctly declare functions taking no args. + + * gtk/pinentry-gtk.c: Move gtk headers to the top to avoid + compiler warnings about shadowing index etc. + + * curses/pinentry-curses.c: Include stdio.h for the printf prototype. + + * pinentry/pinentry-curses.c (dialog_switch_pos): Return a value. + + * pinentry/pinentry.c (pinentry_have_display): New. + (pinentry_setbufferlen): Must return a value. Fixed documentation. + (usage): Print a question mark as a substitue for the program name. + + * gtk/pinentry-gtk.c (main): use it here instead of getenv(). + * qt/main.cpp (main): Ditto. + +2002-10-11 Werner Koch <wk@gnupg.org> + + * configure.ac, Makefile.am: Added doc/ and tests for makeinfo + + * doc/pinentry.texi, doc/Makefile.am: New. + * doc/gpl.texi, doc/fdl.texi: Added these standard files. + +2002-09-30 Werner Koch <wk@gnupg.org> + + Released 0.6.5. + + * qt/pinentrycontroller.cpp (optionHandler): Make sure that a + value is returned. + * configure.ac: Use -Wall also for C++. + +2002-08-19 Steffen Hansen <steffen@hrhansen.dk> + + * Relased 0.6.4. + +2002-08-11 Steffen Hansen <steffen@hrhansen.dk> + + * Adapted pinentry-qt to new CONFIRM spec. + +2002-06-26 Werner Koch <wk@gnupg.org> + + Release 0.6.3. + +2002-05-24 Werner Koch <wk@gnupg.org> + + * AUTHORS: Added Marcus + * README: Fixed spelling of Quintuple-Agent. + +2002-05-13 Marcus Brinkmann <marcus@g10code.de> + + Released 0.6.2. + + * configure.ac: Set version number to 0.6.2. + * NEWS: Add information for 0.6.2. + * README: Update for release. + +2002-05-09 Marcus Brinkmann <marcus@g10code.de> + + * configure.ac: Add option --enable-fallback-curses and bind it to + the ncurses check. Add automake conditional + BUILD_LIBPINENTRY_CURSES and FALLBACK_CURSES. Add preprocessor + symbol FALLBACK_CURSES. + + * curses/Makefile.am (AM_CPPFLAGS): Add $(NCURSES_INCLUDE). + (LDADD): Add ../pinentry/libpinentry-curses.a. + * curses/pinentry-curses.c: Include "pinentry-curses.h". + Moved most of the meat to ... + * pinentry/pinentry-curses.c: ... here. New file. Make all + functions and global variables static. + (dialog_cmd_handler): Rename to ... + (curses_cmd_handler): ... this. + * pinentry/pinentry-curses.h: New file. + * pinentry/Makefile.am (noinst_LIBRARIES) + [BUILD_LIBPINENTRY_CURSES]: Add libpinentry-curses.a. + (libpinentry_curses_a_SOURCES): New target. + + * gtk/Makefile.am (INCLUDES): Moved all to ... + (AM_CPPFLAGS): ... here. + [CURSES_FALLBACK]: Define ncurses_include and libcurses. + (AM_CPPFLAGS): Add $(ncurses_include). + (LDADD): Add $(libcurses). + * gtk/pinentry-gtk.c: Rename TIMEOUT to TIME_OUT to avoid conflict + with curses.h. + [CURSES_FALLBACK]: Include "pinentry-curses.h". + (button_clicked): Likewise. + (create_window): Likewise. + (cmd_handler): Renamed to ... + (gtk_cmd_handler): ... this. + (pinentry_cmd_handler): Set to gtk_cmd_handler. + (main) [CURSES_FALLBACK]: Initialize GTK+ only if environment + variable DISPLAY is set, otherwise fall back to curses dialog. + + * pinentry/pinentry.h: Protect against multiple inclusion. + +2002-05-09 Marcus Brinkmann <marcus@g10code.de> + + * curses/pinentry-curses.c (dialog_create): Allow multi-line error + texts. + + * pinentry/pinentry.c (cmd_seterror): Call strcpy_escaped, rather + than strcpy, to allow percent-escaping the error text. + +2002-04-25 Steffen Hansen <steffen@hrhansen.dk> + + * pinentry-qt: Use ok and cancel value if + provided. + +2002-04-25 Marcus Brinkmann <marcus@g10code.de> + + * gtk/pinentry-gtk.c (create_window): Use ok and cancel value if + provided. + +2002-04-25 Marcus Brinkmann <marcus@g10code.de> + + * qt/pinentrycontroller.h: New members _ok and _cancel. + * qt/pinentrycontroller.cpp (registerCommands): Add SETOK and SETCANCEL. + (assuanOk): New method. + (assuanCancel): Likewise. + +2002-04-25 Marcus Brinkmann <marcus@g10code.de> + + * curses/pinentry-curses.c (dialog_create): Grok the new ok and + cancel members to set the pbutton texts, rather than parsing the + prompt in the confirm case. + + * pinentry/pinentry.h (struct pinentry): Add new members ok and cancel. + * pinentry/pinentry.c (register_commands): Add new commands SETOK + and SETCANCEL to set button texts. + (struct pinentry pinentry): Add initializers for new members. + (cmd_setok): New function. + (cmd_setcancel): Likewise. + +2002-04-24 Marcus Brinkmann <marcus@g10code.de> + + * curses/pinentry-curses.c (dialog_create): Add '<' and '>' around + the user provided button texts. Replace sizeof by strlen to fix + size calculation of ok and cancel button. + +2002-04-23 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry.h (struct pinentry): New variables lc_ctype + and lc_messages. + * pinentry/pinentry.c (usage): New options --lc-ctype and + --lc-messages. + (pinentry_parse_opts): Likewise. + (option_handler): Likewise. + (struct pinentry pinentry): New initializers for new members. + + * curses/pinentry-curses.c (convert_utf8_string): New function. + (struct dialog): New members ok and cancel. + (dialog_create): New variables ERR, DESCRIPTION, ERROR, PROMPT, + OK, and CANCEL. Initialize them with the localised versions of + the pinentry strings. If in confirm mode, split up the prompt at + '|' and use the values as button texts. Use localised strings. + (dialog_switch_pos): Use localised strings. + (dialog_run): Free dialog strings. + + * acinclude.m4 (AM_ICONV): New check from gettext. + * configure.ac: Run AM_ICONV if curses pinentry is build. + Don't check for inttypes.h, don't check size of unsigned int or + unsigned long. + (LIBCAP): Move check to interface independent part. + +2002-04-21 Steffen Hansen <steffen@hrhansen.dk> + + * Removed X11 dependency and use Qt for grabbing the keyboard. + * Clear the lineedit before asking the user for the PIN. + +2002-04-12 Steffen Hansen <steffen@hrhansen.dk> + + * Enable pinentry-qt if Qt is found + +2002-04-06 Marcus Brinkmann <marcus@g10code.de> + + * qt: New directory. + * qt/Makefile.am, qt/cppmemory.cpp, qt/main.cpp, + pinentrycontroller.cpp, qt/pinentrycontroller.h, + qt/pinentrydialog.cpp, qt/pinentrydialog.h: New file, copied from + kde/. + * kde: Directory removed. + * kde/Makefile.am, kde/cppmemory.cpp, kde/main.cpp, + kde/pinentry.desktop, kde/pinentrycontroller.cpp, + kde/pinentrycontroller.h, kde/pinentrydialog.cpp, + kde/pinentrydialog.h: Files removed. + * acinclude.m4: Removed the KE checks and completely overhauled + the Qt checks, putting all Qt checks in their own namespace QT_, + and make it declare QT_-prefixed variables for linking and + compilation. + * configure.ac: Use the new Qt checks instead the KDE checks. + Replace "kde" with "qt" everywhere. + * Makefile.am: Replace "kde" with "qt" everywhere. + +2002-04-06 Marcus Brinkmann <marcus@g10code.de> + + * acinclude.m4: Reworked the Qt and KDE checks, cutting out a lot + of dead and not-so-dead wood. Gave all KDE checks proper names. + * configure.ac: Use the new names for the KDE checks. + +2002-04-06 Marcus Brinkmann <marcus@g10code.de> + + * kde/Makefile.am (EXTRA_DIST): Remove variable. + (install-data-local): Remove target. + (uninstall-local): Likewise. + +2002-04-05 Marcus Brinkmann <marcus@g10code.de> + + Released 0.6.0. + + * configure.ac: Set version number to 0.6. + * NEWS: Add information for 0.6.0. + * secmem/Makefile.am (libsecmem_a_SOURCES): Replace secmem.h with memory. + * kde/Makefile.am (pinentry_kde_SOURCES): Move + pinentrydialog.moc.cpp and pinentrycontroller.moc.cpp to ... + (nodist_pinentry_kde_SOURCES): ... this new target. + +2002-04-05 Marcus Brinkmann <marcus@g10code.de> + + * acinclude.m4: A lot of new checks more or less straight from KDE's + admin/acinclude.m4.in. + * configure.ac (AC_CANONICAL_HOST): Call that macro. + (AC_CHECK_COMPILERS, AC_PATH_KDE): Call those macros if KDE + pinentry is enabled. + * kde/Makefile.am (CXXFLAGS, XXX_PREFIX, XXX_KDE_DEFINES, LIB_QT, + LIB_KDECORE, LIB_KDEUI, KDE_RPATH, MOC, kde_appsdir): Variables removed. + (AM_CPPFLAGS): Replace XXX_KDE_DEFINES by all_includes. + (pinentry_kde_LDFLAGS): Add all_libraries. + * README: Document that automatic check is not possible for KDE. + +2002-04-05 Marcus Brinkmann <marcus@g10code.de> + + * curses/pinentry-curses.c (dialog_run): Add handling for TAB key. + (dialog_create): New variable description_x. Calculate dimension + of multi-line description correctly. + +2002-04-04 Marcus Brinkmann <marcus@g10code.de> + + * pinentry/pinentry.h (struct pinentry): New members DISPLAY, + TTYNAME and TTYTYPE. + * pinentry/pinentry.c (pinentry): Likewise. + * pinentry/pinentry.c: Include <string.h>. + (usage): Add new options --display, + --ttyname and --ttytype. + (option_handler): Likewise. + (pinentry_parse_opts): Likewise. + + * curses/pinentry-curses.c (dialog_cmd_handler): Use + PINENTRY->ttyname and PINENTRY->ttytype. + +2002-03-30 Marcus Brinkmann <marcus@g10code.de> + + * acinclude.m4: Add AM_PATH_GLIB and AM_PATH_GTK. + +2002-03-29 Marcus Brinkmann <marcus@g10code.de> + + * configure.ac: Choose a more appropriate AC_CONFIG_SRCDIR. + +2002-03-29 Marcus Brinkmann <marcus@g10code.de> + + * kde/Makefile.am (pinentry_kde_LDADD): Link with $(LIBCAP). + * gtk/Makefile.am (install-exec-local): Moved to ... + * Makefile.am (install-exec-local): ... here. + +2002-03-29 Marcus Brinkmann <marcus@g10code.de> + + * kde/Makefile.am (kde_appsdir): New variable. + * kde/Makefile.am (install-data-local): Use DESTDIR. + (uninstall-local): Likewise. + +2002-03-29 Marcus Brinkmann <marcus@g10code.de> + + Merge of the gpinentry and curses pinentry program into the + pinentry distribution. For this, the structure of the repository + has been thoroughly overhauled. Some of the changes: + * secmem: New directory with secure memory allocation code. + * pinentry: New directory with pinentry support library. + * curses: New directory with curses frontend. + * gtk: New directory with GTK+ frontend. + * kde: New directory with only the core of the old kpinentry program. + * admin: Directory removed. + * po: Directory removed. + * kpinentry: Directory removed. + * doc: Directory removed. + * jnlib: Directory removed.x + + The changes in more detail: + * AUTHORS: Add authors of other pinentry frontends. + * ChangeLog: Add the one from gpinentry. + * Makefile.am: Completely rewritten. + * README: Add content. + * TODO: Add content. + * NEWS: New file from gpinentry. + * THANKS: New file from gpinentry. + * acinclude.m4: New file. + * configure.ac: New file which configures for all frontends. + * curses/Makefile.am, curses/pinentry-curses.c: New files for + curses frontend. + * gtk/Makefile.am, gtk/gtksecentry.c, gtk/gtksecentry.h, + gtk/pinentry-gtk.c: New files, modified from gpinentry, for GTK+ + frontend. + * kde/Makefile.am, kde/cppmemory.cpp, kde/main.cpp, + kde/pinentry.desktop, kde/pinentrycontroller.cpp, + kde/pinentrycontroller.h, kde/pinentrydialog.cpp, + kde/pinentrydialog.h: New files, modified from kpinentry, for KDE + frontend. + * pinentry/Makefile.am, pinentry/pinentry.c, pinentry/pinentry.h: + New files containing pinentry support library, partly factored out + from gpinentry. + * secmem/Makefile.am, secmem/memory.h, secmem/secmem-util.h, + secmem/secmem.c, secmem/util.c, secmem/util.h: New files + containing secure memory allocation code common to all pinentry + frontends. + * Makefile.dist, acconfig.h, configure.files, configure.in.in: + Files removed in favor of new configure.ac. + * pinentry.lsm: Removed file never used. + * stamp-h.in: Removed generated file. + * admin/ChangeLog, admin/Makefile.common, admin/acinclude.m4.in, + admin/am_edit, admin/am_edit.py, admin/conf.change.pl, + admin/config.guess, admin/config.pl, admin/config.sub, + admin/configure.in.min, admin/debianrules, admin/depcomp, + admin/install-sh, admin/libtool.m4.in, admin/ltcf-c.sh, + admin/ltcf-cxx.sh, admin/ltcf-gcj.sh, admin/ltconfig, + admin/ltmain.sh, admin/missing, admin/mkinstalldirs, admin/ylwrap: + Removed KDE build suite in favor of configure.ac. + * doc/Makefile.am, doc/en/Makefile.am, doc/en/index.docbook: + Removed files never used. + * jnlib/ChangeLog, jnlib/Makefile.am, jnlib/argparse.c, + jnlib/argparse.h jnlib/dotlock.c, jnlib/dotlock.h, + jnlib/libjnlib-config.h, jnlib/logging.c, jnlib/logging.h, + jnlib/mischelp.h, jnlib/stringhelp.c, jnlib/stringhelp.h, + jnlib/strlist.c, jnlib/strlist.h, jnlib/types.h, jnlib/xmalloc.c, + jnlib/xmalloc.h: Removed files no longer used. + * kpinentry/Makefile.am, kpinentry/cppmemory.cpp, + kpinentry/cppmemory.h, kpinentry/i18n.h, kpinentry/main.cpp, + kpinentry/memory.h, kpinentry/pinentry.desktop, + kpinentry/pinentrycontroller.cpp, kpinentry/pinentrycontroller.h, + kpinentry/pinentrydialog.cpp, kpinentry/pinentrydialog.h, + kpinentry/secmem.cpp, kpinentry/util.cpp, kpinentry/util.h: + Removed files in favor of new files in kde/. + * po/Makefile.am, po/pinentry.pot: Removed files never used. + + * autogen.sh: New file. + +2002-03-04 Werner Koch <wk@gnupg.org> + + * gpinentry.c (enter_callback): New + (create_window): Connect it to the entry field. + +2002-02-18 Werner Koch <wk@gnupg.org> + + Released 0.5.1. + + * gpinentry.c (create_window): Add CONFIRM_MODE. + (cmd_confirm): Implemented. + + * assuan/: Updated from NewPG. + +2002-01-20 Werner Koch <wk@gnupg.org> + + * gpinentry.c (option_handler): New to allow changing of the grab + status. + (grab_keyboard): Shortcut this when global grab is not set. + +2002-01-04 Werner Koch <wk@gnupg.org> + + Released 0.5.0. + + * configure.ac: Bumbed version + + * util.h (xtoi_1, xtoi_2): New. + * gpinentry.c (strcpy_escaped): New + (cmd_setdesc, cmd_seterror): Use it here to allo multiline texts. + + * gpinentry: Removed debugging outbut + (create_window): Tweaked layout. + +2001-12-07 Werner Koch <wk@gnupg.org> + + New package gpinentry based on quintuple-agent. + + Removed all stuff except for the basic configuration stuff and + what is needed to build gpinentry. Also removed i18n support. + * gpinentry.c: Renamed from secret-query.c + +2001-02-12 Robert Bihlmeyer <robbe@orcus.priv.at> + + * 1.0.0 released. Woo-hoo! + + * configure.in, NEWS: Bumped version. + +2001-02-04 Robert Bihlmeyer <robbe@orcus.priv.at> + + * agent.c (make_tmpdir): Honor $TMPDIR. + + (agent): Would exit on every minor problem. Now, we just close the + offending connection. + Ignore SIGPIPE, so that EPIPE will close connection. + +2001-01-11 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secmem.c: Move one include statement so that the thing compiles. + + * secret-query.c (main): Minor source cosmetics. + +2000-11-16 Robert Bihlmeyer <robbe@orcus.priv.at> + + * gtksecentry.c (gtk_secure_entry_insert_text): Secured a couple + of memory (de)allocations that were missed. Thanks to John Steele + <jhs28@eng.cam.ac.uk> for spotting these. + +2000-11-10 Robert Bihlmeyer <robbe@orcus.priv.at> + + * Thoughts: Removed in favor of new TODO. + + * README: Remove content and refer to doc/manual.info instead. + + * agent.c (do_get): Would burn badly on a premature exit of the + query program (which would occur routinely if you selected /cancel/). + +2000-10-25 Robert Bihlmeyer <robbe@orcus.priv.at> + + * memory.h: Include sys/types.h for size_t. + +2000-10-08 Robert Bihlmeyer <robbe@orcus.priv.at> + + * README: Removed apology about missing documentation. + Updated paragraph about Linux capability patch. + Typo & Refill. + +2000-10-03 Robert Bihlmeyer <robbe@orcus.priv.at> + + * 0.9 released. + + * Makefile.am (EXTRA_DIST): Distribute BUGS (the file, that is). + + * configure.in, NEWS: Bumped version. + + * Makefile.am, configure.in: Add debian subdir. + + * README: Recommend GTK+. + Update list of checked platforms. + +2000-10-02 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secret-query.c (ok): Simplify. + Put empty line between headers and secret. + (usage): Document '--help' and '--version'. + + * agent.c (do_get): Use enhanced secret-query output to fill in + options. + +2000-10-01 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secret-query.c (main): Clarify error. + + * client.c (query_options): New global variable. + (main): New option '--query-options' to pass options to the query + program. + (xgetpass): Use it. + + * agent.c (main): New option '--query-options' to pass options to + the query program. + (do_get): Use 'query_options'. + + * acconfig.h, configure.in: Add QUERY_PROGRAM definition. + * client.c: Remove here. + * agent.c (do_get): Use it here, too. + + * secret-query.c (main): New option '--no-global-grab' introduced, + that prevents keyboard grabbing unless the window has focus. + +2000-09-11 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secret-query.c (usage): Add two missing pieces of "\n\". + + * agent.c (main): --nofork is now the default, and the option is + deprecated. New option --fork added to turn forking on again. + Close stdout (and stderr unless debugging) even when not forking, + so that normal usage inside eval is still possible. + (agent): Exit gracefully on HUP, so that logging out now kills the + agent. + + * README (Contact Information): Old URL - duh! + (Using Secret Agent): We no longer fork per default. + + * Makefile.am (lib/libutil.a): New target, allows targets that not + automatically recurse (but still depend on libutil.a) to succeed. + +2000-07-20 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secret-query.c (usage): New function. + (main): Parse options: debug, enhanced, help, version. + Turn on locale support. + If enhanced, insert widgets to ask for timeout and insurance. + (ok): If enhanced, print more information on exit. + (grab_keyboard): Die if grab was unsuccessful. + +2000-05-31 Robert Bihlmeyer <robbe@orcus.priv.at> + + * 0.8 released. + + * configure.in, NEWS: Bumped version. + + * Makefile.am (SUBDIRS): Include doc. + + * configure.in, acconfig.h: Check for ssize_t. + Check for vsnprintf(), strdup(). + Generate doc/Makefile. + + * apgp.c, agpg.c, agentlib.c, util.c: Include more stuff. + + * agent.c (do_get): Use asprintf() instead of snprintf() so we + don't need to roll our own for yet another function. + Fix some includes. + + * acinclude.m4: gettext macros copied from automake and fixed. + +2000-05-30 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in, Makefile.am: Properly include doc subdir. + +2000-05-29 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in, acconfig.h: Add test for XMESSAGE path. + + * client.c (main): Decode command from string to integer code + first, then evaluate that in ifs. + + * secret-ask.c: New file, external ask-for-confirmation utility. + + * configure.in, Makefile.am: Add secret-ask to programs being + built when GTK is available. Rename QUERY to more descriptive + GTK_PROGRAMS. + + * agent.c (do_get): If GTK is available, try executing secret-ask + first. + Only put the comment into the insure-question if there is a + comment. + (main): --csh was missing from usage message. + +2000-04-23 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secret-query.c (constrain_size): Lower window max_width to + accommodate bugs in GTK and Scwm. + + * agent.c (main): Set x_enabled if X appears to be available. + Use it to selectively make FLAGS_INSURE supported. + (do_get): Use it instead of testing at every call. + (do_put): Requests containing unsupported flags fail. + (forget_old_stuff): Would not set next_deadline correctly. + (do_get): Implement FLAGS_INSURE. + + * client.c (main): "list" format changed so that comment is to the + far right. Display the deadline as proper date/time, too. + +1999-11-11 Robert Bihlmeyer <robbe@orcus.priv.at> + + * agent.c (next_deadline): New global variable, holds time when + next secret has to be killed. + (store): Keep it up-to-date. + (forget_old_stuff): New function, reaps secrets ready to kill, + keeps next_deadline updated. + (agent): Use it on all secrets, whenever a deadline is active. + +1999-11-08 Robert Bihlmeyer <robbe@orcus.priv.at> + + * agent.h (request_put): Add flags, deadline. Increase REQUEST_MAGIC. + (reply_get): Ditto, and increase REPLY_MAGIC. + * agent.c (store): Store flags, deadline in reply. + (do_put): Hand flags, deadline from request on to store(). + (do_get): Store on-demand queried secrets without deadline or + special flags, for now. + (agent): Do not ignore obsolete clients, return an error reply. + * agentlib.c (agent_put): Add flags, deadline arguments, and copy + them into the request. + * agentlib.h (agent_put): Update prototype. +* * client.c (main): Added --time-to-live (-t) and --insure (-i) + options, influencing PUT's deadline and flags, respectively. + (main): Change list format to include new attributes. + +1999-11-05 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in: <getopt.h> check had redundant definition. + * acconfig.h: Remove here, too. + + * configure.in: Check for <inttypes.h>. If not found, check for + unsigned {int, long} sizes. + * agent.h: Either include <inttypes.h>, or try to define uint32_t + yourself. + Need to include "config.h". + +1999-11-04 Robert Bihlmeyer <robbe@orcus.priv.at> + + * Makefile.am (signed-dist): New rule, generates sig for dist. + (%.sig): New rule, for detached signatures in general. + + * configure.in: Check for ulong. + * acconfig.h: Document it. + * secmem.c: Unconditionally defining it is no longer necessary + here. But do include <sys/types.h> in all cases. + + * 0.7 released. + + * secmem.c: ulong is not defined on all systems. + + * agent.h: <inttypes.h> should define `uint32_t' as per Unix98, so + we use that. + +1999-11-02 Robert Bihlmeyer <robbe@orcus.priv.at> + + * agent.h: Augmented requests and replies with magic numbers. + Data structures heavily commented. + All structures and enums typedef'd. + * agent.c: Adapted. + (store): Set magic number in stored reply. + (do_put): Set magic number in reply. + (do_delete): Ditto. + (do_list): Ditto. + (agent): Check magic number in request. + * agentlib.c: Adapted. + (send_request): Set magic number in request. Check it in reply. + * agentlib.h: Adapted. + * agpg.c: Adapted. + * apgp.c: Adapted. + * client.c: Adapted. + +1999-10-31 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secmem.c: Instead of defining ulong directly, include + <sys/types.h> + + * secret-query.c (constrain_size): New function, puts constrains + on size of toplevel window. + (grab_keyboard): Removed protection against multiple calls. + (ungrab_keyboard): New function, cancelling a keyboard grab. + (main): Hang `grab_keyboard' onto map-event which makes it + actually work, hang `ungrab_keyboard' onto unmap-event. + Hang `constrain_size' onto size-request. + + * secmem.c: ulong was undefined on some systems. + +1999-10-19 Robert Bihlmeyer <robbe@orcus.priv.at> + + * Makefile.am (install-exec-local): Ignore setcap errors. + + * apgp.c: New program, based on agpg.c, but for pgp2.6. + * Makefile.am (bin_PROGRAMS, apgp_SOURCES): Added it. + + * agpg.c (GPG): New constant. + (find_id, main): Use it throughout. + (find_id): Forgot to pclose on success. + + * secret-query.c (main): Don't expand anything. + Use a button box for the buttons. + Prompt label can be overridden from the commandline. + * agent.c (do_get): Make spawned secret-query show the id. + * client.c (xgetpass): Pass prompt to secret-query. + (main): Include id in xgetpass prompt. + +1999-10-14 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in: setcap must be searched outside the usual user + PATH, too. + * Makefile.am (install-exec-local): Set cap_ipc_lock permitted on + installed binaries, if possible. + + * agent.c (xdup2): New function, dup2 with error handling. + (move_fd): New function, moves fds. + (store): New function, abstracted out from do_put. + (do_put): Use it. + (do_get): If secret was not found, and DISPLAY is set, try to + query the user about it. If successful, store it. + (main): Route standard file descriptors to /dev/null rather than + just closing them. The latter would confuse children. + +1999-10-13 Robert Bihlmeyer <robbe@orcus.priv.at> + + * gtksecentry.c, gtksecentry.h: New files, being slightly modified + versions of GTK+'s gtkentry.[ch], spiffed up to use secure memory. + * secret-query.c (ok, unselect, main): Replace GtkEntry with + GtkSecureEntry. + (main): Initialize secure memory. + * Makefile.am (secret_query_SOURCES): Added gtksecentry.[ch]. + + * README (Security): New chapter. + + * configure.in, acconfig.h: Check for POSIX capabilities, and the + setcap program. + * Makefile.am: Link LIBCAP to those binaries using secmem.c. + + * util.h: Include <sys/types.h> for size_t. + +1999-09-21 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secmem.c: Synced with gnupg-1.0 (top new feature: capabilities). + (log_fatal): New function, logs to stderr, and dies. + +1999-09-08 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secmem.c (log_info): New function, logs to stderr. + + * agent.c (agent): select() expects the number of fds, not the + highest fd. So remember that number. + + * agent.c (agent): Don't use FD_SETSIZE, which is not defined on + all systems. Remember the number of the highest descriptor + instead. + + * configure.in: Replace getline() instead of getdelim() because + this is the function we really need. Still check for getdelim(), + though - there are systems out there where this is provided, but + getline() is not. + +1999-09-01 Robert Bihlmeyer <robbe@orcus.priv.at> + + * 0.6 released. + + * configure.in: Bump version. + + * NEWS: Updated. + +1999-08-31 Robert Bihlmeyer <robbe@orcus.priv.at> + + * util.c (init_uids, lower_privs, raise_privs, drop_privs): New + functions, for setuid binaries, extracted from agent.c. + * util.h: Add prototypes for them. + * agpg.c (main): Use them. + * client.c (main): Ditto. + * agent.c (main): Ditto. Removed code that did the same. + Unconditionally include "asprintf.h" (it protects itself now). + +1999-08-25 Robert Bihlmeyer <robbe@orcus.priv.at> + + * Makefile.am (SUBDIRS): Process . before test so that "make + check" always builds all in . first. + +1999-08-21 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secret-query.c: Include "config.h". + + * agent.h (reply_list_entry, reply_list): New reply structures. + * agent.c (send_list_entry): New function. + (do_list): First send number of entries, then each entry via + send_list_entry(). + * agentlib.c (agent_list): Read entries returned by LIST request. + * client.c (main): Output all entries returned by agent_list(). + + * agentlib.c (agent_put): Don't construct PUT request in insecure + stack space. + +1999-08-20 Robert Bihlmeyer <robbe@orcus.priv.at> + + * NEWS: Bump patchlevel. + + * configure.in: Bump patchlevel. + Check for missing setenv(). + +1999-08-09 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in: Check for strsignal(). + + * client-test: Obsoleted by test/client. + + * Makefile.am (SUBDIRS): New subdirectory. + * configure.in (AC_OUTPUT): Add here, too. + + * 0.5 released. + + * README: Explain why secret-client will not output secrets to a + tty, and mention the cat-trick. + + * agent.c (main): If seteuid is not available, don't use it and + issue a warning if running setuid. + + * configure.in: Run together two REPLACE_FUNCS. + Check for seteuid. + + * client-test: Mask out insecure memory warnings. + + * agentlib.c (send_request): Let the calling functions reserve + space for the reply, but offer a simple way for simple requests. + (agent_get): Allocate secure memory. + + * agent.c (main): Moved secmem_init() after the fork, since that + seemingly munlock's all pages. + Drop privileges just in case somebody wants to install this + suid-root. + Flush stdout. + + * agpg.c (find_id): Would reorder arguments. + Initialize opt_version. + (main): Initialize secure memory. + + * Makefile.am (agpg_SOURCES): Link with secure memory module. + + * client.c (usage): Fixed another program name reference. + +1999-08-06 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in: Conditionally define HAVE_GTK. + * acconfig.h: Add here too. + + * client.c (xgetpass): Use "secret-query" only if it was built. + (main): Don't output secret (GET command) to ttys. + + * agpg.c (find_id): Also print own version if "--version" is given. + (main): Check agent_init() errors. + Print error if exec fails. + + * agent.c (main): Added an option to produce csh-compatible + output. + + * agent.c, client.c: Forgot the terminating NULL in long options. + Fixed the program names in usage and version output. + + * agent.c (create_socket): AF_UNIX and PF_UNIX are Unix98, so + that's what we use. AF_LOCAL, PF_LOCAL removed. + * agentlib.c (agent_init): Ditto. + +1999-08-05 Robert Bihlmeyer <robbe@orcus.priv.at> + + * 0.4 released. + + * configure.in: Bumped version. + Check for missing getdelim. + + * cgpg: Removed, obsoleted by agpg. + * Makefile.am: Here, too. + + * agpg.c (find_id): New function. + (main): Use it. + + * Makefile.am (INCLUDES): Put GTK_FLAGS and GLIB_FLAGS here. It + is the easiest way for sources needing it, and it won't hurt those + that don't. + (agent.o): Explicit command removed accordingly. + +1999-08-04 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in: Need double quoting in nested AC_MSG_WARN. + + * client.c (xgetpass): If no tty is available, but a DISPLAY is, + fork off "secure-query" to read the secret. + Put the fgets into a loop that keeps reading until all of the + secret is read. + + * client-test: Unset DISPLAY, so that "secret-query" is never used. + +1999-08-03 Robert Bihlmeyer <robbe@orcus.priv.at> + + * agpg.c: New file, first cut at a C version of the gpg wrapper, + written in a hurry (20 keys waiting to be signed, and a growling + stomach). + * Makefile.am: Add it to built programs. + (LDADD): New default. + (secret_client_LDADD): Removed, since it was identical to default. + +1999-08-01 Robert Bihlmeyer <robbe@orcus.priv.at> + + * secret-query.c: New program, queries the user for a password. + * Makefile.am (bin_PROGRAMS): Added it. + * configure.in: Check for GTK+, build "secret-query" only when + that is available. + + * cgpg: Extra argument for ID is no longer necessary. cgpg will + scan the gpg args for switches that affect user-id, and determine + the right key itself. Per convention, the key-id is used by "GET". + + * configure.in: The project name is now "secret-agent". + + * Makefile.am: "agent" & "client" renamed to "secret-agent" & + "secret-client", respectively. + * client-test: Adapt to new names. + + * Thoughts: Removed discussion of other names. + Added indication of which things already work. + + * agent.c (make_tmpdir): Removed occurrence of "gpg-agent." + + * README: First proper version. + + * client-test: Context diffs are more portable then unified diffs. + + * agent.c, agent.h, agentlib.c, agentlib.h, client.c, memory.h, + util.c, util.h: Banner updated to new name. + +1999-07-29 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in: Check for missing asprintf. + Check if -lsocket is needed. + + * secmem.c (secmem_dump_stats): Replace usage of ulong. + + * Makefile.am (INCLUDES): Add the lib subdirectory to include search. + + * agent.c: Forgot to include <string.h>. + Include RYO asprintf header if this function is missing. + For the sake of compatibility, provide a definition for AF_LOCAL, + PF_LOCAL, if missing. + * agentlib.c: Ditto. + +1999-07-28 Robert Bihlmeyer <robbe@orcus.priv.at> + + * Makefile.am (client_SOURCES): Add "secmem.c", "memory.h". + + * client.c (xgetpass): Use secmem_malloc() instead of RYO. + (main): Init and shutdown secmem. + +1999-07-27 Robert Bihlmeyer <robbe@orcus.priv.at> + + * Makefile.am (agent_SOURCES): Add "secmem.c", "i18n.h", "memory.h". + (client_SOURCES): Add "i18n.h". + + * client.c (main): Exit on agent_init() failure. + + * agent.c (main): Init secmem. + Make --debug switch cumulative. + (cleanup): Shutdown secmem. + (do_put): Use secmem for storage of secrets. + (do_delete): Use secmem_free(). Since this wipes the memory on its + own, wipe() is superflous now. + (agent): Use secmem for inbound requests. + (delete_secret): New function, takes part of do_delete's + functionality. + (do_put): Use it to remove old versions stored under the same id. + (do_delete): Use it to delete secrets. + + * memory.h: New file. + + * secmem.c: New file, snarfed from GnuPG and modified slightly. + + * acinclude.m4: New file. + * configure.in: (ALL_LINGUAS): Expanded list of available + languages. Most of them only have a few translations from gpg, + tough ... + getopt_long test was commented out for debugging, + and left such. Fixed. + Check for mlock. + * acconfig.h: Comment HAVE_BROKEN_MLOCK. + + * cgpg: A space was missing. + + * i18n.h: New file, centralizing the gettext macro defs. + + * agent.c (BLIND): New macro, that blinds out a secret if debug + level is too low. + (do_put): Use it. + (do_get): Use it. + Include i18n.h. + + * agentlib.c: Include i18n.h + + * client.c (usage): New function. + Usage-message made gettext-friendly. + (xgetpass): Use perror() instead of fprintf(). + (main): Use it. + Make comment an optional argument of PUT. + Include i18n.h. + +1999-07-26 Robert Bihlmeyer <robbe@orcus.priv.at> + + * Makefile.am (client_LDADD): Add lib/libutil.a for portability. + (agent_LDADD): Ditto. + (SUBDIRS): Add lib directory. + (bin_SCRIPTS): New with cgpg, so it gets installed, too. + + * configure.in: Add lib/Makefile to output. + +1999-07-24 Robert Bihlmeyer <robbe@orcus.priv.at> + + * cgpg: New file. + * Makefile.am (EXTRA_DIST): Added it. + + * agent.c: Moved inclusion of config.h before inclusion of + libintl.h since the latter needs HAVE_LC_MESSAGE. + * client.c: Ditto. + * clientlib.c: Ditto. + + * client-test: Update for new client semantics. + + * client.c (check_status): Use debugmsg(). Do nothing if not + debugging. + (xgetpass): New function, getpass replacement that uses mlock'ed + memory. + (main): PUT now asks for the secret rather then getting it from + the commandline. + GET prints only the secret to stdout. + + * configure.in: Rearranged. + Check for socklen_t. + * acconfig.h: Added a definition for it. + + * client.c: Include packaged getopt.h if the system doesn't provide + one. + * agent.c: Ditto. + (create_socket): Replace AF_FILE, PF_FILE with AF_LOCAL, PF_LOCAL + for portability. + * agentlib.c (agent_init): Ditto. + Explicitly cast addr to a sockaddr pointer. + + * Makefile.am (client_LDADD): Added @INTLLIBS@. + (agent_LDADD): Ditto. + +1999-07-19 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in: Check for getopt.h and getopt_long. + * acconfig.h (HAVE_GETOPT_H): New define. + * lib/getopt.c, lib/getopt1.c, lib/getopt.h: Added. + +1999-07-18 Robert Bihlmeyer <robbe@orcus.priv.at> + + * 0.2 released. + + * NEWS: Updated. + + * Makefile.am (agent.o): Mentioning the source explicitly does not + work for srcdir!=builddir. + + * client.c (main): Function arguments are not always evaluated in + order, so drop the neat ++optind in favor of optind+1, optind+2, + etc. + + * configure.in: Upped version. + +1999-06-28 Robert Bihlmeyer <robbe@orcus.priv.at> + + * util.h: Added multi-inclusion guard. + + * agent.c Include "util.h". + (main): Forgot to exit at end. + (do_delete): Assume that value is a string and wipe it accordingly. + + * configure.in (--enable-debug): New switch. + + * agent.h (status_t): Added STATUS_COMM_ERR code. + Added multi-inclusion guard. + + * client.c (main): Abstracted out most functionality into a + function library, namely: + * agentlib.c: New file. + * agentlib.h: New file. + * Makefile.am (client_SOURCES): Added agentlib.c, agentlib.h. + + * Makefile.am (INCLUDES): GLIB_CFLAGS moved again, this time to + the agent.o target. + +1999-06-15 Robert Bihlmeyer <robbe@orcus.priv.at> + + * 0.1 released. + + * Makefile.am (agent_CFLAGS): Removed - did not work. + (INCLUDES): Moved the GLIB stuff here. + +1999-06-14 Robert Bihlmeyer <robbe@orcus.priv.at> + + * configure.in (ALL_LINGUAS): Added `de'. + + * agent.c (do_get): Added more debugmsgs. + (do_put): Wouldn't allocate enough for `value'. + (main): New option "--nofork" prevents forking. + Use macros for the std filedescriptor numbers. + Only close stderr if not debugging. + (main): Make Usage string gettext-friendly. + + * client-test (cleanup): New function. + Call it on shell exit. + (client): New function. + Use it instead of calling client binary directly. + diff client output with expected one in GET testcases. + +1999-06-13 Robert Bihlmeyer <robbe@orcus.priv.at> + + * agent.c (failed_reply): New constant. + (do_list): Use it. + (do_put): The hash key was overwritten - strdup it. + Construct a GET reply and save that in the hash. + (do_get): Just send the preconstructed reply if the id is present, + and failed_reply otherwise. + (do_delete): Actually free the hashed stuff. + + * client.c: Exit with error if agent returned STATUS_FAIL. + + * Makefile.am (EXTRA_DIST): Added autogen.sh, Thoughts, + client-test. + (TESTS): Added client-test. + (AUTOMAKE_OPTIONS): Added gnits. + + + Copyright 2002, 2003, 2010 g10 Code GmbH + + This file is free software; as a special exception the author gives + unlimited permission to copy and/or distribute it, with or without + modifications, as long as this notice is preserved. + + This file is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY, to the extent permitted by law; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
