Merge lp:~logan/ubuntu/trusty/pinentry/0.8.3-1ubuntu1 into lp:ubuntu/trusty/pinentry

Proposed by Logan Rosen
Status: Merged
Merged at revision: 23
Proposed branch: lp:~logan/ubuntu/trusty/pinentry/0.8.3-1ubuntu1
Merge into: lp:ubuntu/trusty/pinentry
Diff against target: 31176 lines (+6881/-10790)
76 files modified
.pc/applied-patches (+0/-1)
.pc/kubuntu_fix_stayontop.diff/qt4/pinentrydialog.cpp (+0/-306)
ChangeLog (+80/-2156)
ChangeLog-old (+2175/-0)
Makefile.am (+35/-13)
Makefile.in (+230/-87)
Manifest (+0/-4)
NEWS (+19/-1)
README.GIT (+49/-0)
README.SVN (+0/-51)
VERSION (+1/-0)
aclocal.m4 (+414/-205)
assuan/ChangeLog (+0/-247)
assuan/ChangeLog-old (+254/-0)
assuan/Makefile.am (+3/-3)
assuan/Makefile.in (+87/-31)
assuan/Manifest (+0/-17)
autogen.sh (+13/-13)
build-aux/git-log-fix (+3/-0)
build-aux/git-log-footer (+14/-0)
build-aux/gitlog-to-changelog (+375/-0)
config.guess (+208/-207)
config.h.in (+6/-0)
config.sub (+164/-71)
configure (+1188/-799)
configure.ac (+46/-37)
curses/Makefile.in (+114/-42)
debian/changelog (+15/-0)
debian/control (+1/-1)
debian/rules (+1/-1)
debian/watch (+1/-1)
doc/HACKING (+23/-0)
doc/Makefile.am (+4/-2)
doc/Makefile.in (+180/-86)
doc/pinentry.info (+26/-15)
doc/pinentry.texi (+13/-0)
doc/stamp-vti (+4/-4)
doc/version.texi (+4/-4)
gtk+-2/Makefile.in (+114/-42)
gtk+-2/gtksecentry.c (+41/-25)
gtk+-2/pinentry-gtk-2.c (+29/-13)
gtk/Makefile.in (+114/-42)
m4/curses.m4 (+17/-3)
pinentry/Makefile.am (+3/-3)
pinentry/Makefile.in (+86/-30)
pinentry/Manifest (+0/-6)
pinentry/pinentry-curses.c (+172/-26)
pinentry/pinentry.c (+17/-1)
pinentry/pinentry.h (+3/-0)
qt/Makefile.in (+114/-42)
qt/secqinternal.cpp (+1/-1)
qt/secqinternal_p.h (+1/-1)
qt/secqlineedit.cpp (+1/-1)
qt/secqlineedit.h (+1/-1)
qt/secqstring.cpp (+1/-1)
qt/secqstring.h (+1/-1)
qt4/Makefile.am (+0/-48)
qt4/Makefile.in (+0/-530)
qt4/main.cpp (+0/-320)
qt4/pinentryconfirm.cpp (+42/-0)
qt4/pinentryconfirm.h (+41/-0)
qt4/pinentryconfirm.moc (+94/-0)
qt4/pinentrydialog.cpp (+0/-305)
qt4/pinentrydialog.h (+0/-97)
qt4/pinentrydialog.moc (+0/-112)
qt4/qsecurelineedit.cpp (+0/-3591)
qt4/qsecurelineedit.h (+0/-314)
qt4/qsecurelineedit.moc (+0/-229)
qt4/qsecurelineedit_p.h (+0/-256)
qt4/secstring.cpp (+0/-104)
qt4/secstring.h (+0/-40)
secmem/Makefile.in (+82/-26)
secmem/secmem++.h (+0/-91)
w32/Makefile.in (+114/-42)
w32/main.c (+36/-36)
w32/pinentry-w32.rc (+6/-5)
To merge this branch: bzr merge lp:~logan/ubuntu/trusty/pinentry/0.8.3-1ubuntu1
Reviewer Review Type Date Requested Status
Daniel Holbach (community) Approve
Review via email: mp+202981@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Daniel Holbach (dholbach) wrote :

Thanks. Uploaded.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== removed file '.pc/applied-patches'
2--- .pc/applied-patches 2011-07-30 22:32:23 +0000
3+++ .pc/applied-patches 1970-01-01 00:00:00 +0000
4@@ -1,1 +0,0 @@
5-kubuntu_fix_stayontop.diff
6
7=== removed directory '.pc/kubuntu_fix_stayontop.diff'
8=== removed directory '.pc/kubuntu_fix_stayontop.diff/qt4'
9=== removed file '.pc/kubuntu_fix_stayontop.diff/qt4/pinentrydialog.cpp'
10--- .pc/kubuntu_fix_stayontop.diff/qt4/pinentrydialog.cpp 2011-07-30 22:32:23 +0000
11+++ .pc/kubuntu_fix_stayontop.diff/qt4/pinentrydialog.cpp 1970-01-01 00:00:00 +0000
12@@ -1,306 +0,0 @@
13-/*
14- pinentrydialog.cpp - A (not yet) secure Qt 4 dialog for PIN entry.
15-
16- Copyright (C) 2002, 2008 Klarälvdalens Datakonsult AB (KDAB)
17- Copyright 2007 Ingo Klöcker
18-
19- Written by Steffen Hansen <steffen@klaralvdalens-datakonsult.se>.
20-
21- This program is free software; you can redistribute it and/or
22- modify it under the terms of the GNU General Public License as
23- published by the Free Software Foundation; either version 2 of the
24- License, or (at your option) any later version.
25-
26- This program is distributed in the hope that it will be useful, but
27- WITHOUT ANY WARRANTY; without even the implied warranty of
28- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
29- General Public License for more details.
30-
31- You should have received a copy of the GNU General Public License
32- along with this program; if not, write to the Free Software
33- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
34-*/
35-
36-#include "pinentrydialog.h"
37-#include <QGridLayout>
38-
39-#include "qsecurelineedit.h"
40-
41-#include <QProgressBar>
42-#include <QApplication>
43-#include <QStyle>
44-#include <QPainter>
45-#include <QPushButton>
46-#include <QDialogButtonBox>
47-#include <QKeyEvent>
48-#include <QLabel>
49-#include <QPalette>
50-
51-#ifdef Q_WS_WIN
52-#include <windows.h>
53-#endif
54-
55-/* I [wk] have no idea for what this code was supposed to do.
56- Foregrounding a window is heavily restricted by modern Windows
57- versions. This is the reason why gpg-agent employs its
58- AllowSetForegroundWindow callback machinery to ask the supposed to
59- be be calling process to allow a pinentry to go into the
60- foreground. */
61-// #ifdef Q_WS_WIN
62-// void SetForegroundWindowEx( HWND hWnd )
63-// {
64-// //Attach foreground window thread to our thread
65-// const DWORD ForeGroundID = GetWindowThreadProcessId(::GetForegroundWindow(),NULL);
66-// const DWORD CurrentID = GetCurrentThreadId();
67-
68-// AttachThreadInput ( ForeGroundID, CurrentID, TRUE );
69-// //Do our stuff here
70-// HWND hLastActivePopupWnd = GetLastActivePopup( hWnd );
71-// SetForegroundWindow( hLastActivePopupWnd );
72-
73-// //Detach the attached thread
74-// AttachThreadInput ( ForeGroundID, CurrentID, FALSE );
75-// }// End SetForegroundWindowEx
76-// #endif
77-
78-void raiseWindow( QWidget* w )
79-{
80-#ifdef Q_WS_WIN
81- SetForegroundWindow( w->winId() );
82-#endif
83- w->raise();
84- w->activateWindow();
85-}
86-
87-QPixmap icon( QStyle::StandardPixmap which )
88-{
89- QPixmap pm = qApp->windowIcon().pixmap( 48, 48 );
90-
91- if ( which != QStyle::SP_CustomBase ) {
92- const QIcon ic = qApp->style()->standardIcon( which );
93- QPainter painter( &pm );
94- const int emblemSize = 22;
95- painter.drawPixmap( pm.width()-emblemSize, 0,
96- ic.pixmap( emblemSize, emblemSize ) );
97- }
98-
99- return pm;
100-}
101-
102-PinEntryDialog::PinEntryDialog( QWidget* parent, const char* name, bool modal,
103- bool enable_quality_bar )
104- : QDialog( parent, Qt::WindowStaysOnTopHint ), _grabbed( false )
105-{
106- setWindowFlags( windowFlags() & ~Qt::WindowContextHelpButtonHint );
107-
108- if ( modal ) {
109- setWindowModality( Qt::ApplicationModal );
110- }
111-
112- _icon = new QLabel( this );
113- _icon->setPixmap( icon() );
114-
115- _error = new QLabel( this );
116- _error->setWordWrap(true);
117- QPalette pal;
118- pal.setColor( QPalette::WindowText, Qt::red );
119- _error->setPalette( pal );
120- _error->hide();
121-
122- _desc = new QLabel( this );
123- _desc->setWordWrap(true);
124- _desc->hide();
125-
126- _prompt = new QLabel( this );
127- _prompt->hide();
128-
129- _edit = new QSecureLineEdit( this );
130- _edit->setMaxLength( 256 );
131-
132- _prompt->setBuddy( _edit );
133-
134- if (enable_quality_bar)
135- {
136- _quality_bar_label = new QLabel( this );
137- _quality_bar_label->setAlignment( Qt::AlignRight | Qt::AlignVCenter );
138- _quality_bar = new QProgressBar( this );
139- _quality_bar->setAlignment( Qt::AlignCenter );
140- _have_quality_bar = true;
141- }
142- else
143- _have_quality_bar = false;
144-
145- QDialogButtonBox* const buttons = new QDialogButtonBox( this );
146- buttons->setStandardButtons( QDialogButtonBox::Ok | QDialogButtonBox::Cancel );
147- _ok = buttons->button( QDialogButtonBox::Ok );
148- _cancel = buttons->button( QDialogButtonBox::Cancel );
149-
150- _ok->setDefault(true);
151-
152- if ( style()->styleHint( QStyle::SH_DialogButtonBox_ButtonsHaveIcons ) )
153- {
154- _ok->setIcon( style()->standardIcon( QStyle::SP_DialogOkButton ) );
155- _cancel->setIcon( style()->standardIcon( QStyle::SP_DialogCancelButton ) );
156- }
157-
158- connect( buttons, SIGNAL(accepted()), this, SLOT(accept()) );
159- connect( buttons, SIGNAL(rejected()), this, SLOT(reject()) );
160- connect( _edit, SIGNAL( textChanged(secqstring) ),
161- this, SLOT( updateQuality(secqstring) ) );
162-
163- _edit->setFocus();
164-
165- QGridLayout* const grid = new QGridLayout( this );
166- grid->addWidget( _icon, 0, 0, 5, 1, Qt::AlignTop|Qt::AlignLeft );
167- grid->addWidget( _error, 1, 1, 1, 2 );
168- grid->addWidget( _desc, 2, 1, 1, 2 );
169- //grid->addItem( new QSpacerItem( 0, _edit->height() / 10, QSizePolicy::Minimum, QSizePolicy::Fixed ), 1, 1 );
170- grid->addWidget( _prompt, 3, 1 );
171- grid->addWidget( _edit, 3, 2 );
172- if( enable_quality_bar )
173- {
174- grid->addWidget( _quality_bar_label, 4, 1 );
175- grid->addWidget( _quality_bar, 4, 2 );
176- }
177- grid->addWidget( buttons, 5, 0, 1, 3 );
178-
179- grid->setSizeConstraint( QLayout::SetFixedSize );
180-}
181-
182-void PinEntryDialog::hideEvent( QHideEvent* ev )
183-{
184- if ( !_pinentry_info || _pinentry_info->grab )
185- _edit->releaseKeyboard();
186- _grabbed = false;
187- QDialog::hideEvent( ev );
188-}
189-
190-void PinEntryDialog::showEvent( QShowEvent* event )
191-{
192- QDialog::showEvent( event );
193- raiseWindow( this );
194-}
195-
196-void PinEntryDialog::setDescription( const QString& txt )
197-{
198- _desc->setVisible( !txt.isEmpty() );
199- _desc->setText( txt );
200- _icon->setPixmap( icon() );
201- setError( QString::null );
202-}
203-
204-QString PinEntryDialog::description() const
205-{
206- return _desc->text();
207-}
208-
209-void PinEntryDialog::setError( const QString& txt )
210-{
211- if( !txt.isNull() )_icon->setPixmap( icon( QStyle::SP_MessageBoxCritical ) );
212- _error->setText( txt );
213- _error->setVisible( !txt.isEmpty() );
214-}
215-
216-QString PinEntryDialog::error() const
217-{
218- return _error->text();
219-}
220-
221-void PinEntryDialog::setPin( const secqstring & txt )
222-{
223- _edit->setText( txt );
224-}
225-
226-secqstring PinEntryDialog::pin() const
227-{
228- return _edit->text();
229-}
230-
231-void PinEntryDialog::setPrompt( const QString& txt )
232-{
233- _prompt->setText( txt );
234- _prompt->setVisible( !txt.isEmpty() );
235-}
236-
237-QString PinEntryDialog::prompt() const
238-{
239- return _prompt->text();
240-}
241-
242-void PinEntryDialog::setOkText( const QString& txt )
243-{
244- _ok->setText( txt );
245- _ok->setVisible( !txt.isEmpty() );
246-}
247-
248-void PinEntryDialog::setCancelText( const QString& txt )
249-{
250- _cancel->setText( txt );
251- _cancel->setVisible( !txt.isEmpty() );
252-}
253-
254-void PinEntryDialog::setQualityBar( const QString& txt )
255-{
256- if (_have_quality_bar)
257- _quality_bar_label->setText( txt );
258-}
259-
260-void PinEntryDialog::setQualityBarTT( const QString& txt )
261-{
262- if (_have_quality_bar)
263- _quality_bar->setToolTip( txt );
264-}
265-
266-void PinEntryDialog::updateQuality(const secqstring & txt )
267-{
268- int length;
269- int percent;
270- QPalette pal;
271-
272- if (!_have_quality_bar || !_pinentry_info)
273- return;
274- secstring pinStr = toUtf8(txt);
275- const char* pin = pinStr.c_str();
276- // The Qt3 version called ::secmem_free (pin) here, but from other usage of secstring,
277- // it seems like this is not needed anymore - 16 Mar. 2009 13:15 -- Jesper K. Pedersen
278- length = strlen (pin);
279- percent = length? pinentry_inq_quality (_pinentry_info, pin, length) : 0;
280- if (!length)
281- {
282- _quality_bar->reset ();
283- }
284- else
285- {
286- pal = _quality_bar->palette ();
287- if (percent < 0)
288- {
289- pal.setColor (QPalette::Highlight, QColor("red"));
290- percent = -percent;
291- }
292- else
293- {
294- pal.setColor (QPalette::Highlight, QColor("green"));
295- }
296- _quality_bar->setPalette (pal);
297- _quality_bar->setValue (percent);
298- }
299-}
300-
301-void PinEntryDialog::setPinentryInfo(pinentry_t peinfo)
302-{
303- _pinentry_info = peinfo;
304-}
305-
306-void PinEntryDialog::paintEvent( QPaintEvent* event )
307-{
308- // Grab keyboard. It might be a little weird to do it here, but it works!
309- // Previously this code was in showEvent, but that did not work in Qt4.
310- QDialog::paintEvent( event );
311- if ( !_grabbed && ( !_pinentry_info || _pinentry_info->grab ) ) {
312- _edit->grabKeyboard();
313- _grabbed = true;
314- }
315-
316-}
317-
318-#include "pinentrydialog.moc"
319
320=== modified file 'ChangeLog'
321--- ChangeLog 2011-02-16 20:18:53 +0000
322+++ ChangeLog 2014-01-24 03:16:14 +0000
323@@ -1,2156 +1,80 @@
324-2010-12-16 Werner Koch <wk@g10code.com>
325-
326- Release 0.8.1.
327-
328- * doc/pinentry.texi: Remove the custom font setting for underscores.
329-
330- Update to automake 1.10.
331-
332- * missing, config.guess, config.sub: Update from GnuPG.
333-
334- * w32/main.c (debugfp): Define to stderr.
335- (raise_sip) [!W32CE]: Make it a dummy function.
336-
337- * qt4/pinentrydialog.cpp (raiseWindow): Use SetForegroundWindow
338- API directly.
339- (SetForegroundWindowEx): Comment out.
340-
341-2010-10-19 Werner Koch <wk@g10code.com>
342-
343- * pinentry/pinentry.c (pinentry_have_display): Also detect
344- --display=DISPID.
345-
346-2010-10-12 Werner Koch <wk@g10code.com>
347-
348- * qt/main.cpp (escape_accel): New. Adapt from from qt4/.
349- (qt_cmd_handler): Implement default-ok and default-cancel. Escape
350- accelerators.
351-
352-2010-09-30 Werner Koch <wk@g10code.com>
353-
354- * pinentry/pinentry.h (struct pinentry): Add CLOSE_BUTTON.
355- * pinentry/pinentry.c (cmd_getpin, cmd_confirm, cmd_message): Send
356- BUTTON_INFO.
357- * gtk+-2/pinentry-gtk-2.c (delete_event): Set close_button.
358-
359-2010-09-22 Werner Koch <wk@g10code.com>
360-
361- * gtk+-2/pinentry-gtk-2.c (create_window): Make use of
362- default_cancel and default_ok.
363-
364-2010-08-19 Werner Koch <wk@g10code.com>
365-
366- * gtk+-2/Makefile.am (pinentry_gtk_2_SOURCES): Add gseal-gtk-compat.h.
367-
368- * configure.ac (AH_TOP, AH_BOTTOM): New. Define
369- GPG_ERR_ENABLE_ERRNO_MACROS.
370-
371-2010-06-08 Marc Mutz <marc.mutz@kdab.com> (wk)
372-
373- * qt4/pinentrydialog.cpp (PinEntryDialog): Add WindowStaysOnTopHint.
374-
375- * qt/pinentrydialog.cpp (PinEntryDialog): Add WStyle_StaysOnTop.
376-
377-2010-05-12 Guido Günther <agx@sigxcpu.org> (wk)
378-
379- * gtk+-2/gtksecentry.c: Make -DSEAL safe.
380- * gtk+-2/gseal-gtk-compat.h: New.
381- * gtk+-2/gtksecentry.h: Include new header.
382-
383-2010-05-07 Werner Koch <wk@g10code.com>
384-
385- * gtk+-2/pinentry-gtk-2.c (create_window): Keep the window above
386- and make sure it has the focus. Fixes bug#1162.
387-
388-2010-05-03 Werner Koch <wk@g10code.com>
389-
390- * gtk+-2/pinentry-gtk-2.c (create_window): Use
391- visibility-notify-event instead of map-event. Suggested by Ed
392- Marten.
393-
394-2010-04-26 Werner Koch <wk@g10code.com>
395-
396- * gtk+-2/pinentry-gtk-2.c (grab_failed): New.
397- (grab_keyboard): s/g_error/g_critical/. Set GRAB_FAILED.
398- (gtk_cmd_handler): Return Cancel if a grab failed.
399-
400-2010-04-20 Marcus Brinkmann <marcus@g10code.de>
401-
402- * pinentry/pinentry.c: Move include config.h to top!
403-
404-2010-04-19 Werner Koch <wk@g10code.com>
405-
406- * gtk+-2/gtksecentry.c (gtk_secure_entry_delete_cb)
407- (gtk_secure_entry_toggle_overwrite, activate_cb)
408- (unichar_chosen_func): Comment out these unused functions.
409- (secentry_malloc): Fix format string error.
410-
411-2010-04-19 Stanislav Ochotnicky <sochotnicky@redhat.com> (wk)
412-
413- * gtk+-2/pinentry-gtk-2.c (ungrab_keyboard): Fix segv when using
414- option -g.
415-
416-2010-04-16 Marcus Brinkmann <marcus@g10code.de>
417-
418- * secmem/util.c: Fix inverted test.
419-
420-2010-04-12 Werner Koch <wk@g10code.com>
421-
422- * w32/main.c (dlg_proc): Act on VK_RETURN.
423-
424- * w32/pinentry-w32.rc: Include config.h. Add basic support for
425- small screens as used with WindowsCE.
426-
427- * w32/Makefile.am (pinentry-w32.o): Add -I.. to the command.
428-
429-2010-04-08 Werner Koch <wk@g10code.com>
430-
431- * pinentry/pinentry.c [W32CE]: Do not include errno.h and
432- locale.h.
433- (pinentry_have_display) [W32CE]: Do not use getenv.
434- (pinentry_parse_opts) [W32CE]: No error diagnostics due to missing
435- errno.
436- (sleep) [W32CE]: New.
437- (option_handler) [W32CE]: Ignore option --debug-wait.
438- (getpid) [W32CE]: New.
439- (pinentry_loop): Use STDIN_FILENO and STDOUT_FILENO.
440- (pinentry_loop): Factor code out to ...
441- (pinentry_loop2): New.
442- * w32/main.c (w32_strerror) [W32CE]: Do not use FormatMessage.
443- (main) [W32CE]: Do not use LockSetForegroundWindow.
444- (set_dlg_item_text): Use wchar_t for static string.
445- * secmem/util.c [W32CE]: Do not include errno.h.
446- (xwrite) [W32CE]: Shortcut EINTR loop.
447-
448-2010-04-07 Werner Koch <wk@g10code.com>
449-
450- * autogen.sh: Modernized.
451-
452-2010-03-03 Werner Koch <wk@g10code.com>
453-
454- Release 0.8.0.
455-
456-2010-03-02 Werner Koch <wk@g10code.com>
457-
458- * qt4/main.cpp (from_utf8): Add extra braces for clarity.
459- (main): Copy the fixed --display string.
460-
461-2010-02-25 Marc Mutz <marc@kdab.com> (wk)
462-
463- * qt4/main.cpp (from_utf8): don't throw InvalidUtf8(); for now,
464- fall back to QString::fromLocal8Bit()
465-
466-2010-02-22 Marc Mutz <marc@kdab.com> (wk)
467-
468- * qt4/main.cpp (InvalidUtf8): New exception class.
469- (from_utf8): wrapper around QString::fromUtf8 throwing
470- InvalidUtf8.
471- (qt_cmd_handler): Use from_utf8 instead of QString::fromUtf8.
472- (qt_cmd_handler_ex): New wrapper around qt_cmd_handler.
473- (pinentry_cmd_handler): Use qt_cmd_handler_ex.
474-
475- * qt4/main.cpp (qt_cmd_handler): Also handle accels in
476- SET{OK,NOTOK,CANCEL} string.
477-
478-2010-02-19 Marc Mutz <marc@kdab.com> (wk)
479-
480- * qt4/main.cpp (qt_cmd_handler), qt4/pinentrydialog.cpp
481- (PinentryDialog::PinEntryDialog): Use the button icons that come
482- with Qt.
483-
484- * qt4/pinentry_qrc, qt4/qrc_pinentry.cpp: New.
485- * qt4/gtk-cancel.png, qt4/gtk-ok.png: Removed.
486- * qt4/Makefile.am (EXTRA_DIST): Remove the GTK icons, add
487- pinentry.qrc.
488- (pinentry_qt4_SOURCES): add qrc_pinentry.cpp.
489-
490- * qt4/main.cpp (qt_cmd_handler): Remove i18n support again.
491-
492- * qt4/pinentrydialog.cpp (PinentryDialog::PinentryDialog):
493- set PIN entry field as buddy of its prompt
494-
495- * qt4/main.cpp (escape_accel): New.
496- (qt_cmd_handler): use it on default_cancel, default_ok, prompt.
497-
498- * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp
499- (PinEntryDialog::PinEntryDialog): don't use a nested vbox layout.
500-
501- * qt4/pinentrydialog.h: replace include file with forward decl.
502- * qt4/pinentrydialog.cpp: add include file here.
503-
504- * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp
505- (PinentryDialog::keyPressEvent()): Removed.
506-
507- * qt/4pinentrydialog.cpp (PinEntryDialog::PinEntryDialog): use
508- QLayout::SetFixedSize instead of rolling our own solution.
509- * qt4/pinentrydialog.h: (PinentryDialog::setFixedSize): Removed.
510- * qt4/pinentrydialog.moc: Re-created.
511-
512- * qt4/main.cpp: (qt_cmd_handler) make Cancel the default button
513- for CONFIRM
514-
515- * qt4/main.cpp: (qt_cmd_handler) implement the confirm/message
516- logic correctly
517-
518- * qt4/pinentrydialog.h (accepted, rejected): Removed; already
519- provided by base class.
520- * qt4/pinentrydialog.cpp (PinEntryDialog::PinEntryDialog): Use
521- QDialog::{accepted,rejected}.
522- * qt4/pinentrydialog.moc: Re-created.
523-
524- * qt4/pinentrydialog.moc, qt4/qsecurelineedit.moc: Make compatible
525- with newer Qt version.
526-
527-2010-02-19 Werner Koch <wk@g10code.com>
528-
529- * gtk+-2/pinentry-gtk-2.c (create_window): Allow mnemonics in
530- button labels.
531-
532- * pinentry/pinentry.h (struct pinentry): Add default_prompt.
533- * pinentry/pinentry.c (option_handler): Support "default-prompt".
534- (cmd_getpin): Use it.
535- (noprefix_strdup): Remove; should be done by caller.
536-
537-2010-02-17 Werner Koch <wk@g10code.com>
538-
539- * pinentry/pinentry.h (struct pinentry): Add default_ok and
540- default_cancel.
541- * pinentry/pinentry.c (noprefix_strdup): New.
542- (option_handler): Support "default-ok" and "default-cancel".
543- (strcpy_escaped): Change second arg from unsigend char to char.
544-
545-2010-02-16 Werner Koch <wk@g10code.com>
546-
547- * qt4/document-encrypt.png, qt4/gtk-cancel.png, qt4/gtk-ok.png: New.
548- * qt4/Makefile.am (EXTRA_DIST): Add them.
549-
550-2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
551-
552- Also attributed to Marc Mutz <marc@kdab.com>.
553-
554- * qt4/main.cpp, qt/pinentrydialog.cpp: If the style says so,
555- set (GTK) icons on OK and Cancel buttons.
556-
557-2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
558-
559- * qt4/main.cpp: Use an explicit QMessageBox instead of the
560- 'information' convenience method. We do this for two reasons:
561- 1. So we can set our own icon (icon()). 2. So we can call our
562- raiseWindow() function on it.
563-
564-2010-02-15 Christoph Schleifenbaum <christoph@kdab.com>
565-
566- * qt4/main.cpp: Use title. Use Qt translation of "OK" and "Cancel"
567-
568- * qt4/pinentrydialog.cpp: Don't show the question-mark icon in the
569- window title.
570-
571-2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
572-
573- * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp: Use the
574- document-encrypt icon instead of the
575- QMessageBox::{Information,Critical} ones.
576-
577-2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
578-
579- Also attributed to Marc Mutz <marc@kdab.com>.
580-
581- * qt4/pinentrydialog.cpp: Properly show/hide optional widgets.
582-
583-2010-02-15 Christoph Schleifenbaum <christoph@kdab.com>
584-
585- * qt4/pinentrydialog.cpp: Set text color or error label to red.
586-
587-2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
588-
589- Also attributed to Marc Mutz <marc@kdab.com>.
590-
591- * qt4/pinentrydialog.cpp: Gather scattered layouting code, use a
592- single gridlayout for all, and use QDialogButtonBox.
593-
594-2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
595-
596- * qt4/pinentrydialog.cpp: Call SetForegroundWindow on showEvent()
597- and set a fixed size on the dialog.
598-
599- * qt4/main.cpp: Set document-encrypt as the window icon.
600-
601-2010-02-15 Marc Mutz <marc@kdab.com> (wk)
602-
603- * qt4/main.cpp: Load the correct Qt translation file based on
604- either lc_messages or the current locale.
605-
606- * qt4/main.cpp: Use pinentry_t->parent_wid also for message-box
607- case.
608-
609- * qt4/main.cpp: Properly delete the QApplication.
610-
611-2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
612-
613- * qt4/main.cpp: Remove guard clause with impossible condition.
614-
615- * qt4/main.cpp: Respect pinentry_t->title.
616-
617- * qt4/main.cpp: Include config.h.
618-
619-2009-12-16 Marcus Brinkmann <marcus@g10code.de>
620-
621- * gtk+-2/gtksecentry.c: Don't translate properties.
622- Patch by Guido Guenther <agx@sigxcpu.org>.
623-
624-2009-12-02 Werner Koch <wk@g10code.com>
625-
626- * secmem/util.c: Re-indent function names.
627- (TEMP_FAILURE_RETRY): Remove because it is non-portable.
628- (xwrite): Open code the EINTR retry.
629- * pinentry/pinentry-curses.c (dialog_run): Replace '\e' by a
630- standard escape. Reported by Wyllys Ingersoll.
631-
632-2009-08-10 Marcus Brinkmann <marcus@g10code.de>
633-
634- * pinentry/pinentry.c [!ENABLE_ENHANCED]: Remove option enhanced.
635- * pinentry/pinentry.h (struct pinentry) [!ENABLE_ENHANCED]: Remove
636- member enhanced.
637- * gtk+-2/pinentry-gtk-2.c: New macro.
638- (button_clicked, create_window) [!ENABLE_ENHANCED]: Disable code.
639- * gtk/pinentry-gtk.c (button_clicked, create_window): Likewise.
640- * doc/pinentry.texi (Using pinentry): Comment out enhanced option.
641-
642-2009-07-10 Till Adam <till@kdab.com>
643-
644- * qt4/pinentrydialog.cpp (PinEntryDialog): Redesign the dialog to
645- be prettier.
646-
647-2009-06-19 Marcus Brinkmann <marcus@g10code.de>
648-
649- * configure.ac: Post-release changes.
650-
651- Release version 0.7.6.
652-
653- * configure.ac: Bump version.
654-
655-2009-01-29 Bernhard Reiter <bernhard@intevation.de>
656-
657- * doc/pinentry.texi (Using pinentry): Fix typo.
658-
659-2009-04-24 Guido Guenther <agx@sigxcpu.org>
660-
661- * gtk+-2/gtksecentry.c (gtk_secure_entry_class_init): Don't
662- install "gtk-entry-select-on-focus" settings property since it
663- clashes with the one from GtkEntry.
664- (gtk_secure_entry_grab_focus): Create a temporary GtkEntry widget
665- to read that value instead. Allows to have GtkEntry and
666- GtkSecureEntry in the same process.
667-
668-2009-06-19 Marcus Brinkmann <marcus@g10code.de>
669-
670- Suggested by Simon McVittie:
671- * gtk+-2/gtksecentry.c (g_malloc, g_realloc, g_free): Renamed to
672- secentry_malloc, secentry_realloc.
673- (g_malloc0): Removed.
674- (GMALLOC_SIZE): Move to ...
675- * gtk+-2/gtksecentry.h (GMALLOC_SIZE): ... here.
676- (secentry_malloc, secentry_realloc, secentry_free): New prototypes.
677- * gtk+-2/pinentry-gtk-2.c (main): Set memory allocation vtable.
678-
679-2009-05-04 Till Adam <till@kdab.net>
680-
681- * qt4/main.cpp (qt_cmd_handler): Use WId instead of HWND.
682-
683-2009-04-14 Marcus Brinkmann <marcus@g10code.de>
684-
685- * pinentry/pinentry.h (struct pinentry): New member NOTOK.
686- Rename member USER_CLOSED to CANCELED.
687- * pinentry/pinentry.c: Add initializer for NOTOK.
688- (register_commands): Add SETNOTOK.
689- * pinentry/pinentry-curses.c (STRING_NOTOK): New macro.
690- (dialog_pos_t): New value DIALOG_POS_NOTOK.
691- (struct dialog): New members notok, notok_x, notok_y.
692- (dialog_create): Implement NOTOK.
693- (dialog_switch_pos): Likewise.
694- (dialog_run): Likewise.
695- * gtk+-2/pinentry-gtk-2.c: Rename confirm_yes to confirm_value.
696- (confirm_value_t): New type. Use it for confirm_value.
697- (window_closed): Remove.
698- (confirm_button_clicked): Set confirm_value.
699- (create_window): Implement NOTOK.
700- (gtk_cmd_handler): Implement cancel behaviour a bit differently.
701-
702-2009-04-09 Marcus Brinkmann <marcus@g10code.de>
703-
704- * qt4/qsecurelineedit.h (QSecureLineEdit): Don't export.
705-
706-2009-04-06 Marcus Brinkmann <marcus@g10code.de>
707-
708- * configure.ac: Portability fixes.
709-
710-2009-04-03 Marcus Brinkmann <marcus@g10code.de>
711-
712- * qt4/Makefile.am (pinentry_qt4_SOURCES): Add qsecurelineedit_p.h.
713-
714- * secmem/Makefile.am (libsecmem_a_SOURCES): Add secmem++.h.
715- * qt4/Makefile.am (pinentry_qt4_SOURCES): Add pinentrydialog.moc
716- and qsecurelineedit.
717-
718- * configure.ac: Incorporate revision number in version string.
719-
720-2009-04-02 Till Adam <till@kdab.net>
721-
722- * qt4/qsecurelineedit.moc, qt4/main.cpp, qt4/pinentrydialog.moc,
723- qt4/qsecurelineedit.cpp, qt4/pinentrydialog.cpp,
724- qt4/pinentrydialog.h: Implement quality bar and grabbing.
725-
726- * qt4/pinentrydialog.cpp (PinEntryDialog): Enable word wrapping.
727-
728-2009-04-03 Marcus Brinkmann <marcus@g10code.de>
729-
730- * qt4/main.cpp (qt_cmd_handler): Cast window handle ID.
731-
732-2009-03-19 Werner Koch <wk@g10code.com>
733-
734- * pinentry/pinentry.h (struct pinentry): Add field user_closed.
735- * pinentry/pinentry.c (cmd_getpin, cmd_confirm, cmd_message):
736- Reset this field.
737- (cmd_confirm): Return cancel if the user closed the window.
738- * gtk+-2/pinentry-gtk-2.c (window_closed): New.
739- (gtk_cmd_handler, delete_event): Set it.
740-
741-2009-02-19 Marcus Brinkmann <marcus@g10code.de>
742-
743- * secmem/secmem++.h: New file.
744- * qt4/Makefile.am, qt4/main.cpp, qt4/pinentrydialog.cpp,
745- qt4/pinentrydialog.h: Changes to use secure memory.
746- * qt4/pinentrydialog.moc, qt4/qsecurelineedit.moc: New files.
747- * qt4/qsecurelineedit.cpp, qt4/qsecurelineedit.h,
748- qt4/qsecurelineedit_p.h, qt4/secstring.h, qt4/secstring.cpp: New
749- files.
750- Submitted by Marc Mutz <marc@kdab.net>.
751-
752-2008-12-08 Werner Koch <wk@g10code.com>
753-
754- * qt/main.cpp (qt_cmd_handler) <!want_pass>: Translate from utf8.
755- * qt4/main.cpp (qt_cmd_handler) <!want_pass>: Translate from utf8.
756-
757-2008-11-12 Ludovic Rousseau <ludovic.rousseau@gmail.com> (wk)
758-
759- * pinentry/pinentry.h (struct pinentry): Add field TITLE.
760- * pinentry/pinentry.c (cmd_settitle): New.
761- (register_commands): Add command SETTITLE.
762- * gtk+-2/pinentry-gtk-2.c (create_window): Set the title.
763-
764-2008-10-17 Werner Koch <wk@g10code.com>
765-
766- * secmem/memory.h: Add C++ extern declaration.
767-
768- * secmem/secmem.c (secmem_get_max_size): New.
769-
770-2008-07-25 Marcus Brinkmann <marcus@ulysses.g10code.com>
771-
772- * qt4/Makefile.am (DISTCLEANFILES): Rename to CLEANFILES.
773- (BUILD_SOURCES): New.
774-
775-2008-07-25 Marcus Brinkmann <marcus@g10code.de>
776-
777- * configure.ac: Prefer pinentry gtk2 over gtk. Now also choose
778- qt4 (after qt and before w32 native).
779- * README: Document Qt.
780-
781-2008-07-24 Marcus Brinkmann <marcus@g10code.de>
782-
783- * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp, qt4/main.cpp,
784- qt4/Makefile.am: New files.
785- * configure.ac: Add check for Qt4.
786- (AC_CONFIG_FILES): Add qt4/Makefile.am.
787- * Makefile.am (pinentry_qt4): New variable.
788- (SUBDIRS): Add ${pinentry_qt4}.
789-
790-2008-07-23 Werner Koch <wk@g10code.com>
791-
792- * secmem/secmem.c (secmem_init): Fix apostrophe in error
793- message. Reported by Petr Uzel.
794-
795-2008-05-05 Marcus Brinkmann <marcus@ulysses.g10code.com>
796-
797- * gtk+-2/gtksecentry.c (GMALLOC_SIZE): New symbol.
798- (g_malloc, g_malloc0, g_realloc): Use GMALLOC_SIZE instead of
799- gulong for size attribute.
800-
801-2008-03-03 Marcus Brinkmann <marcus@g10code.de>
802-
803- * gtk+-2/pinentry-gtk-2.c (create_window): Install realize callback.
804- (ungrab_keyboard): Unmake dialog transient.
805- (make_transient): New function.
806- Submitted by Joachim Breitner.
807-
808-2008-02-15 Werner Koch <wk@g10code.com>
809-
810- Release 0.7.4.
811-
812-2008-02-14 Werner Koch <wk@g10code.com>
813-
814- * configure.ac: Check for -Wno-pointer-sign.
815-
816- * pinentry/pinentry.c (cmd_getinfo): New.
817- (register_commands): Register it.
818-
819-2008-01-02 Marcus Brinkmann <marcus@g10code.de>
820-
821- * configure.ac: Use PKG_CONFIG instead of PKGCONFIG and
822- pkg-config. Use AC_PATH_PROG instead of AC_CHECK_PROG.
823-
824- * Makefile.am (install-exec-local): Add exe extension to link.
825-
826-2007-11-29 Marcus Brinkmann <marcus@g10code.de>
827-
828- Released 0.7.4.
829-
830-2007-11-19 Werner Koch <wk@g10code.com>
831-
832- * doc/pinentry.texi (Protocol): Typo fixes by Bernhard Herzog.
833- Describe SETQUALITYBAR_TT.
834-
835-2007-11-19 Bernhard Herzog <bernhard.herzog@intevation.de> (wk)
836-
837- * qt/pinentrydialog.cpp (PinEntryDialog): Fixed crash
838-
839-2007-11-19 Werner Koch <wk@g10code.com>
840-
841- * gtk+-2/pinentry-gtk-2.c (create_window): Use again map-event and
842- unmap-event as this works on my setup far more reliable than
843- expose-event/no-expose-event.
844-
845- * gtk+-2/gtksecentry.c (get_cursor_time): s/time/blinktime/ t
846- avoid shadowing warning.
847-
848- * pinentry/pinentry.h (struct pinentry): Change QUALITY_BAR to a
849- char ptr.
850- (struct pinentry): Add QUALITY_BAR_TT.
851- * pinentry/pinentry.c (cmd_setqualitybar): Allow to set a label text.
852- (cmd_setqualitybar_tt): New.
853- * gtk+-2/pinentry-gtk-2.c (create_window): Take label and tooltip
854- from global.
855- * qt/pinentrydialog.h (setQualityBar, setQualityBarTT)
856- (_quality_bar_label): New.
857- * qt/pinentrydialog.cpp (setQualityBar, setQualityBarTT): New.
858- (PinEntryDialog): Remove setting of tooltip.
859-
860- * qt/main.cpp (qt_cmd_handler): Propagate quality bar label and tootip.
861-
862-2007-11-19 Bernhard Herzog <bernhard.herzog@intevation.de> (wk)
863-
864- * qt/pinentrydialog.cpp (PinEntryDialog): Move the quality bar
865- below the text entry and align them properly. Show a tooltip.
866- * gtk+-2/pinentry-gtk-2.c (create_window): Ditto. Don't let it
867- change its height.
868- (QUALITYBAR_EMPTY_TEXT): New.
869-
870-2007-09-18 Werner Koch <wk@g10code.com>
871-
872- * qt/secqlineedit.h (SecQLineEdit): New signal textModified.
873- * qt/secqlineedit.cpp (finishChange): Emit it.
874- * qt/pinentrydialog.cpp (setPinentryInfo): New.
875- (PinEntryDialog): Add arg ENABLE_QUALITY_BAR.
876- * qt/pinentrydialog.h (setPinentryInfo): New.
877- (PinEntryDialog): Add arg ENABLE_QUALITY_BAR.
878-
879- * pinentry/pinentry.h (struct pinentry): Add member QUALITY_BAR
880- and CTX_ASSUAN.
881- * pinentry/pinentry.c (cmd_setqualitybar): New.
882- (copy_and_escape): New.
883- (pinentry_inq_quality): New.
884-
885-2007-07-09 Werner Koch <wk@g10code.com>
886-
887- * doc/pinentry.texi: Fixed direntry syntax.
888-
889- * configure.ac: Add --without-libcap. From the Gentoo patch archive.
890-
891- * gtk+-2/pinentry-gtk-2.c (create_window): Use expose-event
892- instead of map-event. From Alon Bar-Lev.
893-
894-2007-07-06 Werner Koch <wk@g10code.com>
895-
896- Released 0.7.3.
897-
898- * config.sub, config.guess: Updated from current Savannah CVS.
899-
900-2007-06-27 Werner Koch <wk@g10code.com>
901-
902- * w32/main.c: Revamped the SetFocus stuff. It is all not that easy.
903-
904-2007-06-26 Werner Koch <wk@g10code.com>
905-
906- * w32/Makefile.am (pinentry_w32_LDFLAGS): Add -mconsole again.
907-
908- * w32/main.c (dlg_proc): Set focus.
909- (resize_button): New. No code yet.
910- (dlg_proc): Call it for the buttons.
911- (w32_cmd_handler): Restore old foreground window.
912-
913-2007-06-20 Werner Koch <wk@g10code.com>
914-
915- * w32/Makefile.am (pinentry_w32_LDFLAGS): Remove -mconsole.
916-
917- * w32/main.c (wchar_to_utf8): New.
918- (ok_button_clicked): Use it.
919- (utf8_to_wchar): New.
920- (set_dlg_item_text): New.
921- (dlg_proc): Use new function so that we are able to correctly
922- display all prompts.
923- (main): Load LockSetForegroundWindow.
924- (dlg_proc): Call LockSetForegroundWindow via its fnc ptr.
925- (center_window): New. Taken from GPGol.
926- (dlg_proc): Call it.
927- (w32_cmd_handler): Revamped the confirm mode.
928-
929-2007-06-18 Werner Koch <wk@g10code.com>
930-
931- * w32/main.c (dlg_proc): Call LockSetForegroundWindow.
932-
933- * Makefile.am (signed-dist, %.sig): Remove.
934-
935- * autogen.sh: Modernized.
936-
937-2007-05-10 Marcus Brinkmann <marcus@g10code.de>
938-
939- * pinentry/pinentry.h (pinentry_color_t): New type.
940- (struct pinentry): New members COLOR_FG, COLOR_FG_BRIGHT,
941- COLOR_BG, COLOR_SO.
942- * pinentry/pinentry.c (pinentry_parse_opts): Support new option --colors.
943- (parse_color): New function.
944- * pinentry/pinentry-curses.c (USE_COLORS): New macro.
945- (pinentry_color): New static variable.
946- (dialog_create): Redo color management.
947-
948- * pinentry/pinentry-curses.c (dialog_create): Re-add calculation
949- of cancel button position. Adjust calculation of OK button
950- position if it is the only one used.
951-
952-2007-04-13 Marcus Brinkmann <marcus@g10code.de>
953-
954- * qt/secqlineedit.h (SecQLineEdit::contextMenuEvent,
955- SecQLineEdit::createPopupMenu): Remove prototype.
956- * qt/secqlineedit.cpp (SecQLineEdit::contextMenuEvent,
957- SecQLineEdit::createPopupMenu): Remove implementation.
958- Submitted by Tobias Koenig <tokoe@kde.org>.
959-
960-2007-02-14 Werner Koch <wk@g10code.com>
961-
962- * pinentry/pinentry.h (struct pinentry): Add TOUCH_FILE.
963- * pinentry/pinentry.c (option_handler): New option "touch-file".
964- (pinentry_have_display): Ignore an empty DISPLAY.
965- * pinentry/pinentry-curses.c (do_touch_file): New.
966- (curses_cmd_handler): Call it.
967- * configure.ac: Check for utime.h.
968-
969-2007-01-24 Werner Koch <wk@g10code.com>
970-
971- * pinentry/pinentry.c (cmd_message): New.
972- (cmd_confirm): New command option --one-button.
973- (cmd_getpin): Zeroise ONE_BUTTON.
974- * pinentry/pinentry.h (struct pinentry): Add field ONE_BUTTON.
975- * gtk/pinentry-gtk.c (create_window): Take care of new option.
976- * gtk+-2/pinentry-gtk-2.c (create_window): Ditto.
977- * pinentry/pinentry-curses.c (dialog_create): Ditto.
978- (dialog_create, dialog_switch_pos): Allow CANCEL to be optional.
979-
980-2006-07-29 Marcus Brinkmann <marcus@g10code.de>
981-
982- * secmem/secmem.c (init_pool): Close FD after establishing the
983- mapping.
984-
985-2005-09-28 Marcus Brinkmann <marcus@g10code.de>
986-
987- * configure.ac (PINENTRY_GTK): Error out if iconv is not found but
988- needed.
989-
990- * config.rpath: New file from gettext. Needed by iconv.m4.
991-
992-2005-07-11 Marcus Brinkmann <marcus@g10code.de>
993-
994- * pinentry/pinentry-curses.c (dialog_switch_pos): Set the cursor
995- state to invisible before moving around. Move the cursor to the
996- beginning of the dialog buttons for accessibility.
997-
998-2005-06-16 Marcus Brinkmann <marcus@g10code.de>
999-
1000- * pinentry/pinentry-curses.c (dialog_run): Only convert pin if a
1001- pin actually exists.
1002-
1003-2005-01-27 Werner Koch <wk@g10code.com>
1004-
1005- Released 0.7.2.
1006-
1007- * gtk+-2/Makefile.am: Removed padlock-keyhole.xpm.
1008-
1009- * configure.ac: Use AC_GNU_SOURCE instead of the custom define.
1010- Prefer gtk2 pinentry over qt.
1011-
1012-2005-01-21 Marcus Brinkmann <marcus@g10code.de>
1013-
1014- * doc/pinentry.texi: Fix spelling errors.
1015- Submitted by Ville Skyttä.
1016-
1017-2004-12-23 Werner Koch <wk@g10code.com>
1018-
1019- * w32/pinentry-w32.rc: Remove the default texts for description,
1020- prompt and error. Make it system modal. Enlarge the description
1021- field.
1022-
1023-2004-12-22 Timo Schulz <twoaday@g10code.com>
1024-
1025- * w32/main.c: Remove all helper functions and use a callback
1026- to set the dialog items directly.
1027- (dlg_proc): Set 'result' to -1 to indicate cancel.
1028- (ok_button_clicked): Adjusted. Set 'result' to the len of
1029- the PIN to indicate success.
1030-
1031-2004-12-22 Werner Koch <wk@g10code.com>
1032-
1033- * w32/main.c: Simplified.
1034- * w32/dialog.h, w32/dialog.c, w32/controller.h, w32/controller.c:
1035- Removed
1036-
1037- * w32/resource.h, w32/pinentry-w32.rc, w32/main.c, w32/dialog.h
1038- * w32/dialog.c, w32/controller.h, w32/controller.c
1039- * w32/Makefile.am: New. Based on Timo's work.
1040-
1041- Update to automake 1.9.
1042-
1043- * autogen.sh (configure_ac): Add --build-w32 option.
1044- * Makefile.am: Support for the W32 pinentry.
1045- * configure.ac: Ditto. Reformatted some error messages.
1046- Define the usual conditionals for W32.
1047- Check for a couple of more usually required headers.
1048-
1049- * pinentry/pinentry.h (sleep) [W32]: New.
1050-
1051- * pinentry/pinentry.c: Include langinfo.h only if available.
1052- (pinentry_loop) [DOSISH]: Don't do uid check.
1053-
1054- * secmem/util.c [DOSISH]: Disable UID stuff.
1055-
1056-2004-09-27 Marcus Brinkmann <marcus@g10code.de>
1057-
1058- * acinclude.m4 (IU_LIB_NCURSES, IU_LIB_CURSES, IU_LIB_TERMCAP):
1059- Moved to m4/curses.m4.
1060- (AM_ICONV): Moved to m4/iconv.m4.
1061- (AM_PATH_GLIB): Moved to m4/glib.m4.
1062- (QT_FIND_FILE, QT_PATH_MOC, QT_PATH_X, QT_PRINT_PROGRAM,
1063- QT_CHECK_VERSION, QT_PATH_1_3, QT_PATH, QT_CHECK_COMPILER_FLAG,
1064- QT_REMOVE_FORBIDDEN, QT_VALIDIFY_CXXFLAGS, QT_CHECK_COMPILERS,
1065- QT_CHECK_RPATH, QT_CHECK_LIBPTHREAD, QT_CHECK_PTHREAD_OPTION,
1066- QT_CHECK_THREADING): Move to m4/qt.m4.
1067-
1068-2004-09-21 Marcus Brinkmann <marcus@g10code.de>
1069-
1070- * qt/Makefile.am (pinentry_qt_LDFLAGS): Add $(QT_RPATH).
1071- Requested by Leo Savernik <l.savernik@aon.at>.
1072-
1073-2004-09-02 Marcus Brinkmann <marcus@g10code.de>
1074-
1075- * gtk+-2/padlock-keyhole.xpm: File removed.
1076- * gtk+-2/pinentry-gtk-2.c (create_window): Use stock icon.
1077- * gtk+-2/gtksecentry.h, gtk+-2/gtksecentry.c: Fix copyright notice.
1078-
1079- Submitted by Albrecht Dress albrecht.dress@arcor.de.
1080-
1081-2004-08-17 Marcus Brinkmann <marcus@g10code.de>
1082-
1083- * configure.ac: Invoke AC_PROG_LN_S.
1084- (PINENTRY_DEFAULT): New variable. Substitute it. Fail if no
1085- default can be determined.
1086- * Makefile.am (install-exec-local): Install pinentry default link.
1087-
1088- * configure.ac: Check for Gtk+-2.
1089- * gtk+-2: New directory with gtk+-2 pinentry.
1090- * gtk+-2/Makefile.am, gtk+-2/gtksecentry.h, gtk+-2/gtksecentry.c,
1091- gtk+-2/pinentry-gtk-2.c, gtk+-2/padlock-keyhole.xpm: New files.
1092- * Makefile.am (pinentry_gtk_2): New variable.
1093- (SUBDIRS): Add pinentry_gtk_2.
1094-
1095- Submitted by Albrecht Dress albrecht.dress@arcor.de.
1096-
1097-2004-08-04 Werner Koch <wk@g10code.de>
1098-
1099- * pinentry/pinentry.c (usage): Print help to stdout.
1100-
1101-2004-07-30 Moritz Schulte <moritz@g10code.com>
1102-
1103- * qt/Makefile.am (ncurses_include): Removed
1104- -I$(top_srcdir)/pinentry ...
1105- (AM_CPPFLAGS): ... added: -I$(top_srcdir)/pinentry. Thanks to
1106- Peter Eisentraut.
1107-
1108- * pinentry/pinentry.c (pinentry_utf8_to_local): Declare INPUT
1109- const.
1110- (pinentry_local_to_utf8): Likewise.
1111- (pinentry_utf8_to_local, pinentry_local_to_utf8): Compile only, if
1112- either Curses or GTK+ support is enabled.
1113- * configure.ac: Do also check for libiconv when the GTK+ version
1114- of pinentry is to be build. Define PINENTRY_CURSES, PINENTRY_GTK,
1115- PINENTRY_QT depending on which versions of pinentry should be
1116- build.
1117-
1118-2004-05-21 Marcus Brinkmann <marcus@g10code.de>
1119-
1120- * acinclude.m4 (QT_CHECK_DIRECT): Removed.
1121- (QT_PATH_1_3): Do never invoke QT_CHECK_DIRECT.
1122-
1123-2004-04-21 Werner Koch <wk@gnupg.org>
1124-
1125- Released 0.7.1.
1126-
1127-2004-04-20 Werner Koch <wk@gnupg.org>
1128-
1129- * secmem/secmem.c [!ORIGINAL_GPG_VERSION]: Include util.h for some
1130- typedefs and protos.
1131- (secmem_free, secmem_term): Use wipememory2 instead of memset.
1132-
1133- * autogen.sh (configure_ac): Fixed version check (s/==/=/).
1134-
1135-2004-04-02 Thomas Schwinge <schwinge@nic-nac-project.de>
1136-
1137- * autogen.sh: Added ACLOCAL_FLAGS.
1138-
1139-2004-02-23 Marcus Brinkmann <marcus@g10code.de>
1140-
1141- * qt/main.cpp: Include "pinentry.h", not <pinentry.h>.
1142-
1143-2004-01-30 Werner Koch <wk@gnupg.org>
1144-
1145- * configure.ac (fopencookie): Remove that test.
1146-
1147-2004-01-28 Moritz Schulte <mo@g10code.com>
1148-
1149- * gtk/gtksecentry.c:
1150- (gtk_secure_entry_key_press): Treat GDK_KP_Enter just like
1151- GDK_Return.
1152-
1153-2004-01-18 Marcus Brinkmann <marcus@g10code.de>
1154-
1155- * qt/secqstring.cpp: Do not include "private/qunicodetables_p.h".
1156- (isRightToLeft): De-optimize direction query.
1157-
1158- * qt/secqinternal_p.h, qt/secqinternal.cpp: New files.
1159- * qt/Makefile.am (pinentry_qt_SOURCES): Add secqinternal_p.h
1160- and secqinternal.cpp.
1161- (EXTRA_DIST): Add README.SecQ.
1162- * qt/secqlineedit.cpp: Include "secqinternal_p.h".
1163- (drawContents): Use SecQSharedDoubleBuffer.
1164-
1165-2004-01-02 Werner Koch <wk@gnupg.org>
1166-
1167- * configure.ac: Early check for a c++ compiler.
1168-
1169-2003-12-23 Werner Koch <wk@gnupg.org>
1170-
1171- Released 0.7.0.
1172-
1173- Added Manifest files to all directories.
1174-
1175-2003-12-22 Werner Koch <wk@gnupg.org>
1176-
1177- * qt/main.cpp: Include errno.h.
1178- (main): Translate the --display option to -display, so that the Qt
1179- init code can grasp it.
1180-
1181- * doc/ChangeLog: Removed and merged with this file.
1182- * doc/pinentry.texi: Cleaned up.
1183- * doc/fdl.texi: Removed.
1184-
1185- * pinentry/pinentry.h (struct pinentry): Added LOCALE_ERR.
1186- * gtk/pinentry-gtk.c (button_clicked): Set the LOCAE_ERR flag.
1187- * pinentry/pinentry-curses.c (dialog_run): Ditto.
1188- * pinentry/pinentry.c (cmd_getpin, cmd_confirm): Check this flag.
1189- (pinentry_local_to_utf8): Release the correct buffer in the error
1190- case. Print diagnostics.
1191- (pinentry_utf8_to_local): Print diagnostics.
1192- (pinentry_parse_opts): Make short options work.
1193- (pinentry_utf8_to_local): Pass nl_langinfo to iconv_open.
1194-
1195- * gtk/pinentry-gtk.c (button_clicked): Use the right value as
1196- input for the conversion.
1197-
1198- * pinentry/pinentry.c: New variable THIS_PGMNAME.
1199- (pinentry_init): Add arg PGMNAME and store it. Use it at all
1200- marked placed instead of the constant "pinentry".
1201- (usage): Use it here too.
1202- * curses/pinentry-curses.c (main): Call pinentry_init with our name.
1203- * qt/main.cpp (main): Ditto.
1204- * gtk/pinentry-gtk.c (main): Ditto.
1205-
1206- * configure.ac: Check for mmap.
1207-
1208- * secmem/util.h (wipememory2,wipememory,wipe): New.
1209- * secmem/util.c (wipe): Removed.
1210- * secmem/util.c (lower_privs, raise_privs): Commented out.
1211-
1212- * pinentry/pinentry.c (pinentry_loop): Add paranoia check for
1213- dropped privs.
1214-
1215- * secmem/secmem.c (lock_pool): Cleanup syntax of cpp directives.
1216-
1217- * gtk/pinentry-gtk.c (main): Print package name in the version line.
1218- * curses/pinentry-curses.c (main): Ditto.
1219- * qt/main.cpp (main): Ditto. Fixed typo.
1220-
1221- * gtk/pinentry-gtk.c: Include memory.h.
1222-
1223-2003-12-20 Marcus Brinkmann <marcus@g10code.de>
1224-
1225- * pinentry/pinentry.h (struct pinentry): New member PARENT_WID.
1226- * pinentry/pinentry.c (pinentry): Add new member here.
1227- (usage): Add --parent-wid.
1228- (pinentry_parse_opts): Add case for "parent-wid".
1229- (option_handler): Same here.
1230-
1231-2003-12-19 Marcus Brinkmann <marcus@g10code.de>
1232-
1233- * pinentry/pinentry.c (cmd_setcancel): Use strcpy_escaped.
1234- (cmd_setok): Likewise.
1235- (cmd_setprompt): Likewise.
1236- (pinentry_utf8_to_local): Don't use
1237- nl_langinfo, but just lc_ctype directly.
1238- * pinentry/pinentry.c (cmd_getpin): Do not convert passphrase to
1239- UTF-8 here.
1240- * gtk/pinentry-gtk.c (button_clicked): Convert passphrase to UTF8
1241- here.
1242- * pinentry/pinentry-curses.c (dialog_run): Likewise.
1243-
1244-2003-12-14 Marcus Brinkmann <marcus@g10code.de>
1245-
1246- * pinentry/pinentry.c (pinentry_init): Register secmem_term as
1247- atexit function. Set assuan malloc hooks to secmem.
1248- (pinentry_parse_opts): Add break statement to silence gcc warning.
1249- * pinentry/pinentry.c (cmd_getpin): If canceled, release and clear
1250- PINENTRY->pin nevertheless.
1251-
1252- * acinclude.m4 (qt_incdirs): Add /usr/include/qt3.
1253- * qt/Makefile.am (pinentry_qt_SOURCES): Remove cppmemory.h,
1254- cppmemory.cpp, pinentrycontroller.h, pinentrycontroller.cpp.
1255- (nodist_pinentry_qt_SOURCES): Remove pinentrycontroller.moc.cpp.
1256- (libcurses): Move ../pinentry/libpinentry.a from here to ...
1257- (pinentry_qt_LDADD): ... here. Change order a bit to make it
1258- work.
1259- * qt/cppmemory.h, qt/cppmemory.cpp, qt/pinentrycontroller.h,
1260- qt/pinentrycontroller.cpp: Files removed.
1261- * qt/secqstring.h, qt/secqstring.cpp, secqlineedit.h,
1262- secqlineedit.cpp: New files.
1263- * qt/Makefile.am (pinentry_qt_SOURCES): Add secqstring.h,
1264- secqstring.cpp, secqlineedit.h, and secqlineedit.cpp.
1265- (nodist_pinentry_qt_SOURCES): Add secqlineedit.moc.cpp.
1266- * qt/main.cpp: Do not include "memory.h" or "secmem-util.h", nor
1267- <new> or "pinentrycontroller.h". Include <qapplication.h>,
1268- <qmessagebox.h>, <qwidget.h> and "secqstring.h". Always include
1269- <pinentry.h>.
1270- [USE_KDE]: Remove all instances.
1271- (curses_main): Function removed.
1272- (my_new_handler): Likewise.
1273- (qt_main): Likewise.
1274- (qt_cmd_handler): New function.
1275- (pinentry_cmd_handler): Define always (to qt_cmd_handler).
1276- (main): Rewritten.
1277- * qt/pinentrydialog.cpp: Do not include <qlineedit.h>, but
1278- "secqlineedit.h".
1279- (PinEntryDialog::PinEntryDialog): Make _edit a SecQLineEdit
1280- object. Connect accepted SIGNAL to accept SLOT, and rejected
1281- SIGNAL to reject SLOT.
1282- (PinEntryDialog::setText): Make argument SecQString rather than
1283- QString.
1284- (PinEntryDialog::text): Likewise for return value.
1285- * qt/pinentrydialog.h: Declare SecQString and SecQLineEdit classes.
1286- (class PinEntryDialog): Disable property text (for now). Adjust
1287- argument of setText and return value of text, as well as type of
1288- _edit.
1289-
1290-2003-12-09 Werner Koch <wk@gnupg.org>
1291-
1292- * README.CVS: New.
1293- * Makefile.am (EXTRA_DIST): Add README.CVS
1294- (ACLOCAL_AMFLAGS): New.
1295- * configure.ac: Added min_automake_versions.
1296- * autogen.sh: Revamped.
1297-
1298-2003-04-23 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
1299-
1300- * configure.ac: Version 0.6.10-cvs
1301-
1302-2003-04-23 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
1303-
1304- * configure.ac: Version 0.6.9
1305- * qt/Makefile.am: Added moc files to DISTCLEANFILES
1306- * qt/pinentrycontroller.cpp: Dont spew assuan debug stuff out on stderr.
1307-
1308-2003-03-26 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
1309-
1310- * qt/cppmemory.cpp, qt/main.cpp: Only override array allocation
1311- operators. This should take care of the reported memory-problems
1312- and even make pinentry-qt use a bit less memory.
1313-
1314-2003-02-15 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
1315-
1316- * qt/pinentrydialog.h, qt/pinentrydialog.cpp: Added icons
1317- for error/non-error messages.
1318-
1319-2003-02-07 Marcus Brinkmann <marcus@g10code.de>
1320-
1321- Released 0.6.8.
1322-
1323-2003-02-04 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
1324-
1325- * qt/main.cpp: Work around '--display' option. This fixes
1326- the pinentry-qt problem reported by several people lately.
1327-
1328-2003-01-24 Werner Koch <wk@gnupg.org>
1329-
1330- * autogen.sh: Print a hint to use maintainer mode.
1331-
1332-2002-12-24 Marcus Brinkmann <marcus@g10code.de>
1333-
1334- * pinentry/pinentry-curses.c (collect_line): New function.
1335- (COPY_OUT, MAKE_BUTTON): New macros.
1336- (dialog_create): Rewrite the initializing code and the description
1337- calculation routine with word wrapping.
1338-
1339-2002-11-20 Werner Koch <wk@gnupg.org>
1340-
1341- Released 0.6.7.
1342-
1343- * pinentry/pinentry-curses.c (dialog_create): Better truncate
1344- lines than to go into an infinite loop. We need to implement word
1345- wrap.
1346- (dialog_run): Add DIALOG_POS_NONE to switch so prevent a warning.
1347-
1348-2002-11-12 Werner Koch <wk@gnupg.org>
1349-
1350- * config.sub, config.guess: Updated from ftp.gnu.org/gnu/config
1351- to version 2002-11-08.
1352-
1353-2002-11-09 Werner Koch <wk@gnupg.org>
1354-
1355- Released 0.6.6.
1356-
1357-2002-11-08 Werner Koch <wk@gnupg.org>
1358-
1359- * pinentry/pinentry-curses.c (convert_utf8_string): Renamed to
1360- * pinentry/pinentry.c (pinentry_utf8_to_local): this. Changed
1361- callers.
1362- (pinentry_local_to_utf8): New.
1363- (cmd_getpin): Convert result back to UTF-8.
1364- * gtk/pinentry-gtk.c (create_utf8_label): New.
1365- (create_window): Use it here to set the prompts.
1366-
1367-2002-11-06 Werner Koch <wk@gnupg.org>
1368-
1369- * pinentry/pinentry-curses.c (dialog_run): Fixed retrun value tests
1370- for fopen.
1371-
1372-2002-11-05 Werner Koch <wk@gnupg.org>
1373-
1374- * secmem/util.c (init_uids): Make it a prototype.
1375-
1376- * gtk/pinentry-gtk.c (enter_callback): Changed argument name to
1377- avoid shadowing warning.
1378- (create_window): Removed unused variable I.
1379- (ok): Not used, commented.
1380-
1381- * pinentry/pinentry.c: Include headers for getpid and sleep
1382- prototypes.
1383-
1384- * secmem/util.h: Correctly declare functions taking no args.
1385-
1386- * gtk/pinentry-gtk.c: Move gtk headers to the top to avoid
1387- compiler warnings about shadowing index etc.
1388-
1389- * curses/pinentry-curses.c: Include stdio.h for the printf prototype.
1390-
1391- * pinentry/pinentry-curses.c (dialog_switch_pos): Return a value.
1392-
1393- * pinentry/pinentry.c (pinentry_have_display): New.
1394- (pinentry_setbufferlen): Must return a value. Fixed documentation.
1395- (usage): Print a question mark as a substitue for the program name.
1396-
1397- * gtk/pinentry-gtk.c (main): use it here instead of getenv().
1398- * qt/main.cpp (main): Ditto.
1399-
1400-2002-10-11 Werner Koch <wk@gnupg.org>
1401-
1402- * configure.ac, Makefile.am: Added doc/ and tests for makeinfo
1403-
1404- * doc/pinentry.texi, doc/Makefile.am: New.
1405- * doc/gpl.texi, doc/fdl.texi: Added these standard files.
1406-
1407-2002-09-30 Werner Koch <wk@gnupg.org>
1408-
1409- Released 0.6.5.
1410-
1411- * qt/pinentrycontroller.cpp (optionHandler): Make sure that a
1412- value is returned.
1413- * configure.ac: Use -Wall also for C++.
1414-
1415-2002-08-19 Steffen Hansen <steffen@hrhansen.dk>
1416-
1417- * Relased 0.6.4.
1418-
1419-2002-08-11 Steffen Hansen <steffen@hrhansen.dk>
1420-
1421- * Adapted pinentry-qt to new CONFIRM spec.
1422-
1423-2002-06-26 Werner Koch <wk@gnupg.org>
1424-
1425- Release 0.6.3.
1426-
1427-2002-05-24 Werner Koch <wk@gnupg.org>
1428-
1429- * AUTHORS: Added Marcus
1430- * README: Fixed spelling of Quintuple-Agent.
1431-
1432-2002-05-13 Marcus Brinkmann <marcus@g10code.de>
1433-
1434- Released 0.6.2.
1435-
1436- * configure.ac: Set version number to 0.6.2.
1437- * NEWS: Add information for 0.6.2.
1438- * README: Update for release.
1439-
1440-2002-05-09 Marcus Brinkmann <marcus@g10code.de>
1441-
1442- * configure.ac: Add option --enable-fallback-curses and bind it to
1443- the ncurses check. Add automake conditional
1444- BUILD_LIBPINENTRY_CURSES and FALLBACK_CURSES. Add preprocessor
1445- symbol FALLBACK_CURSES.
1446-
1447- * curses/Makefile.am (AM_CPPFLAGS): Add $(NCURSES_INCLUDE).
1448- (LDADD): Add ../pinentry/libpinentry-curses.a.
1449- * curses/pinentry-curses.c: Include "pinentry-curses.h".
1450- Moved most of the meat to ...
1451- * pinentry/pinentry-curses.c: ... here. New file. Make all
1452- functions and global variables static.
1453- (dialog_cmd_handler): Rename to ...
1454- (curses_cmd_handler): ... this.
1455- * pinentry/pinentry-curses.h: New file.
1456- * pinentry/Makefile.am (noinst_LIBRARIES)
1457- [BUILD_LIBPINENTRY_CURSES]: Add libpinentry-curses.a.
1458- (libpinentry_curses_a_SOURCES): New target.
1459-
1460- * gtk/Makefile.am (INCLUDES): Moved all to ...
1461- (AM_CPPFLAGS): ... here.
1462- [CURSES_FALLBACK]: Define ncurses_include and libcurses.
1463- (AM_CPPFLAGS): Add $(ncurses_include).
1464- (LDADD): Add $(libcurses).
1465- * gtk/pinentry-gtk.c: Rename TIMEOUT to TIME_OUT to avoid conflict
1466- with curses.h.
1467- [CURSES_FALLBACK]: Include "pinentry-curses.h".
1468- (button_clicked): Likewise.
1469- (create_window): Likewise.
1470- (cmd_handler): Renamed to ...
1471- (gtk_cmd_handler): ... this.
1472- (pinentry_cmd_handler): Set to gtk_cmd_handler.
1473- (main) [CURSES_FALLBACK]: Initialize GTK+ only if environment
1474- variable DISPLAY is set, otherwise fall back to curses dialog.
1475-
1476- * pinentry/pinentry.h: Protect against multiple inclusion.
1477-
1478-2002-05-09 Marcus Brinkmann <marcus@g10code.de>
1479-
1480- * curses/pinentry-curses.c (dialog_create): Allow multi-line error
1481- texts.
1482-
1483- * pinentry/pinentry.c (cmd_seterror): Call strcpy_escaped, rather
1484- than strcpy, to allow percent-escaping the error text.
1485-
1486-2002-04-25 Steffen Hansen <steffen@hrhansen.dk>
1487-
1488- * pinentry-qt: Use ok and cancel value if
1489- provided.
1490-
1491-2002-04-25 Marcus Brinkmann <marcus@g10code.de>
1492-
1493- * gtk/pinentry-gtk.c (create_window): Use ok and cancel value if
1494- provided.
1495-
1496-2002-04-25 Marcus Brinkmann <marcus@g10code.de>
1497-
1498- * qt/pinentrycontroller.h: New members _ok and _cancel.
1499- * qt/pinentrycontroller.cpp (registerCommands): Add SETOK and SETCANCEL.
1500- (assuanOk): New method.
1501- (assuanCancel): Likewise.
1502-
1503-2002-04-25 Marcus Brinkmann <marcus@g10code.de>
1504-
1505- * curses/pinentry-curses.c (dialog_create): Grok the new ok and
1506- cancel members to set the pbutton texts, rather than parsing the
1507- prompt in the confirm case.
1508-
1509- * pinentry/pinentry.h (struct pinentry): Add new members ok and cancel.
1510- * pinentry/pinentry.c (register_commands): Add new commands SETOK
1511- and SETCANCEL to set button texts.
1512- (struct pinentry pinentry): Add initializers for new members.
1513- (cmd_setok): New function.
1514- (cmd_setcancel): Likewise.
1515-
1516-2002-04-24 Marcus Brinkmann <marcus@g10code.de>
1517-
1518- * curses/pinentry-curses.c (dialog_create): Add '<' and '>' around
1519- the user provided button texts. Replace sizeof by strlen to fix
1520- size calculation of ok and cancel button.
1521-
1522-2002-04-23 Marcus Brinkmann <marcus@g10code.de>
1523-
1524- * pinentry/pinentry.h (struct pinentry): New variables lc_ctype
1525- and lc_messages.
1526- * pinentry/pinentry.c (usage): New options --lc-ctype and
1527- --lc-messages.
1528- (pinentry_parse_opts): Likewise.
1529- (option_handler): Likewise.
1530- (struct pinentry pinentry): New initializers for new members.
1531-
1532- * curses/pinentry-curses.c (convert_utf8_string): New function.
1533- (struct dialog): New members ok and cancel.
1534- (dialog_create): New variables ERR, DESCRIPTION, ERROR, PROMPT,
1535- OK, and CANCEL. Initialize them with the localised versions of
1536- the pinentry strings. If in confirm mode, split up the prompt at
1537- '|' and use the values as button texts. Use localised strings.
1538- (dialog_switch_pos): Use localised strings.
1539- (dialog_run): Free dialog strings.
1540-
1541- * acinclude.m4 (AM_ICONV): New check from gettext.
1542- * configure.ac: Run AM_ICONV if curses pinentry is build.
1543- Don't check for inttypes.h, don't check size of unsigned int or
1544- unsigned long.
1545- (LIBCAP): Move check to interface independent part.
1546-
1547-2002-04-21 Steffen Hansen <steffen@hrhansen.dk>
1548-
1549- * Removed X11 dependency and use Qt for grabbing the keyboard.
1550- * Clear the lineedit before asking the user for the PIN.
1551-
1552-2002-04-12 Steffen Hansen <steffen@hrhansen.dk>
1553-
1554- * Enable pinentry-qt if Qt is found
1555-
1556-2002-04-06 Marcus Brinkmann <marcus@g10code.de>
1557-
1558- * qt: New directory.
1559- * qt/Makefile.am, qt/cppmemory.cpp, qt/main.cpp,
1560- pinentrycontroller.cpp, qt/pinentrycontroller.h,
1561- qt/pinentrydialog.cpp, qt/pinentrydialog.h: New file, copied from
1562- kde/.
1563- * kde: Directory removed.
1564- * kde/Makefile.am, kde/cppmemory.cpp, kde/main.cpp,
1565- kde/pinentry.desktop, kde/pinentrycontroller.cpp,
1566- kde/pinentrycontroller.h, kde/pinentrydialog.cpp,
1567- kde/pinentrydialog.h: Files removed.
1568- * acinclude.m4: Removed the KE checks and completely overhauled
1569- the Qt checks, putting all Qt checks in their own namespace QT_,
1570- and make it declare QT_-prefixed variables for linking and
1571- compilation.
1572- * configure.ac: Use the new Qt checks instead the KDE checks.
1573- Replace "kde" with "qt" everywhere.
1574- * Makefile.am: Replace "kde" with "qt" everywhere.
1575-
1576-2002-04-06 Marcus Brinkmann <marcus@g10code.de>
1577-
1578- * acinclude.m4: Reworked the Qt and KDE checks, cutting out a lot
1579- of dead and not-so-dead wood. Gave all KDE checks proper names.
1580- * configure.ac: Use the new names for the KDE checks.
1581-
1582-2002-04-06 Marcus Brinkmann <marcus@g10code.de>
1583-
1584- * kde/Makefile.am (EXTRA_DIST): Remove variable.
1585- (install-data-local): Remove target.
1586- (uninstall-local): Likewise.
1587-
1588-2002-04-05 Marcus Brinkmann <marcus@g10code.de>
1589-
1590- Released 0.6.0.
1591-
1592- * configure.ac: Set version number to 0.6.
1593- * NEWS: Add information for 0.6.0.
1594- * secmem/Makefile.am (libsecmem_a_SOURCES): Replace secmem.h with memory.
1595- * kde/Makefile.am (pinentry_kde_SOURCES): Move
1596- pinentrydialog.moc.cpp and pinentrycontroller.moc.cpp to ...
1597- (nodist_pinentry_kde_SOURCES): ... this new target.
1598-
1599-2002-04-05 Marcus Brinkmann <marcus@g10code.de>
1600-
1601- * acinclude.m4: A lot of new checks more or less straight from KDE's
1602- admin/acinclude.m4.in.
1603- * configure.ac (AC_CANONICAL_HOST): Call that macro.
1604- (AC_CHECK_COMPILERS, AC_PATH_KDE): Call those macros if KDE
1605- pinentry is enabled.
1606- * kde/Makefile.am (CXXFLAGS, XXX_PREFIX, XXX_KDE_DEFINES, LIB_QT,
1607- LIB_KDECORE, LIB_KDEUI, KDE_RPATH, MOC, kde_appsdir): Variables removed.
1608- (AM_CPPFLAGS): Replace XXX_KDE_DEFINES by all_includes.
1609- (pinentry_kde_LDFLAGS): Add all_libraries.
1610- * README: Document that automatic check is not possible for KDE.
1611-
1612-2002-04-05 Marcus Brinkmann <marcus@g10code.de>
1613-
1614- * curses/pinentry-curses.c (dialog_run): Add handling for TAB key.
1615- (dialog_create): New variable description_x. Calculate dimension
1616- of multi-line description correctly.
1617-
1618-2002-04-04 Marcus Brinkmann <marcus@g10code.de>
1619-
1620- * pinentry/pinentry.h (struct pinentry): New members DISPLAY,
1621- TTYNAME and TTYTYPE.
1622- * pinentry/pinentry.c (pinentry): Likewise.
1623- * pinentry/pinentry.c: Include <string.h>.
1624- (usage): Add new options --display,
1625- --ttyname and --ttytype.
1626- (option_handler): Likewise.
1627- (pinentry_parse_opts): Likewise.
1628-
1629- * curses/pinentry-curses.c (dialog_cmd_handler): Use
1630- PINENTRY->ttyname and PINENTRY->ttytype.
1631-
1632-2002-03-30 Marcus Brinkmann <marcus@g10code.de>
1633-
1634- * acinclude.m4: Add AM_PATH_GLIB and AM_PATH_GTK.
1635-
1636-2002-03-29 Marcus Brinkmann <marcus@g10code.de>
1637-
1638- * configure.ac: Choose a more appropriate AC_CONFIG_SRCDIR.
1639-
1640-2002-03-29 Marcus Brinkmann <marcus@g10code.de>
1641-
1642- * kde/Makefile.am (pinentry_kde_LDADD): Link with $(LIBCAP).
1643- * gtk/Makefile.am (install-exec-local): Moved to ...
1644- * Makefile.am (install-exec-local): ... here.
1645-
1646-2002-03-29 Marcus Brinkmann <marcus@g10code.de>
1647-
1648- * kde/Makefile.am (kde_appsdir): New variable.
1649- * kde/Makefile.am (install-data-local): Use DESTDIR.
1650- (uninstall-local): Likewise.
1651-
1652-2002-03-29 Marcus Brinkmann <marcus@g10code.de>
1653-
1654- Merge of the gpinentry and curses pinentry program into the
1655- pinentry distribution. For this, the structure of the repository
1656- has been thoroughly overhauled. Some of the changes:
1657- * secmem: New directory with secure memory allocation code.
1658- * pinentry: New directory with pinentry support library.
1659- * curses: New directory with curses frontend.
1660- * gtk: New directory with GTK+ frontend.
1661- * kde: New directory with only the core of the old kpinentry program.
1662- * admin: Directory removed.
1663- * po: Directory removed.
1664- * kpinentry: Directory removed.
1665- * doc: Directory removed.
1666- * jnlib: Directory removed.x
1667-
1668- The changes in more detail:
1669- * AUTHORS: Add authors of other pinentry frontends.
1670- * ChangeLog: Add the one from gpinentry.
1671- * Makefile.am: Completely rewritten.
1672- * README: Add content.
1673- * TODO: Add content.
1674- * NEWS: New file from gpinentry.
1675- * THANKS: New file from gpinentry.
1676- * acinclude.m4: New file.
1677- * configure.ac: New file which configures for all frontends.
1678- * curses/Makefile.am, curses/pinentry-curses.c: New files for
1679- curses frontend.
1680- * gtk/Makefile.am, gtk/gtksecentry.c, gtk/gtksecentry.h,
1681- gtk/pinentry-gtk.c: New files, modified from gpinentry, for GTK+
1682- frontend.
1683- * kde/Makefile.am, kde/cppmemory.cpp, kde/main.cpp,
1684- kde/pinentry.desktop, kde/pinentrycontroller.cpp,
1685- kde/pinentrycontroller.h, kde/pinentrydialog.cpp,
1686- kde/pinentrydialog.h: New files, modified from kpinentry, for KDE
1687- frontend.
1688- * pinentry/Makefile.am, pinentry/pinentry.c, pinentry/pinentry.h:
1689- New files containing pinentry support library, partly factored out
1690- from gpinentry.
1691- * secmem/Makefile.am, secmem/memory.h, secmem/secmem-util.h,
1692- secmem/secmem.c, secmem/util.c, secmem/util.h: New files
1693- containing secure memory allocation code common to all pinentry
1694- frontends.
1695- * Makefile.dist, acconfig.h, configure.files, configure.in.in:
1696- Files removed in favor of new configure.ac.
1697- * pinentry.lsm: Removed file never used.
1698- * stamp-h.in: Removed generated file.
1699- * admin/ChangeLog, admin/Makefile.common, admin/acinclude.m4.in,
1700- admin/am_edit, admin/am_edit.py, admin/conf.change.pl,
1701- admin/config.guess, admin/config.pl, admin/config.sub,
1702- admin/configure.in.min, admin/debianrules, admin/depcomp,
1703- admin/install-sh, admin/libtool.m4.in, admin/ltcf-c.sh,
1704- admin/ltcf-cxx.sh, admin/ltcf-gcj.sh, admin/ltconfig,
1705- admin/ltmain.sh, admin/missing, admin/mkinstalldirs, admin/ylwrap:
1706- Removed KDE build suite in favor of configure.ac.
1707- * doc/Makefile.am, doc/en/Makefile.am, doc/en/index.docbook:
1708- Removed files never used.
1709- * jnlib/ChangeLog, jnlib/Makefile.am, jnlib/argparse.c,
1710- jnlib/argparse.h jnlib/dotlock.c, jnlib/dotlock.h,
1711- jnlib/libjnlib-config.h, jnlib/logging.c, jnlib/logging.h,
1712- jnlib/mischelp.h, jnlib/stringhelp.c, jnlib/stringhelp.h,
1713- jnlib/strlist.c, jnlib/strlist.h, jnlib/types.h, jnlib/xmalloc.c,
1714- jnlib/xmalloc.h: Removed files no longer used.
1715- * kpinentry/Makefile.am, kpinentry/cppmemory.cpp,
1716- kpinentry/cppmemory.h, kpinentry/i18n.h, kpinentry/main.cpp,
1717- kpinentry/memory.h, kpinentry/pinentry.desktop,
1718- kpinentry/pinentrycontroller.cpp, kpinentry/pinentrycontroller.h,
1719- kpinentry/pinentrydialog.cpp, kpinentry/pinentrydialog.h,
1720- kpinentry/secmem.cpp, kpinentry/util.cpp, kpinentry/util.h:
1721- Removed files in favor of new files in kde/.
1722- * po/Makefile.am, po/pinentry.pot: Removed files never used.
1723-
1724- * autogen.sh: New file.
1725-
1726-2002-03-04 Werner Koch <wk@gnupg.org>
1727-
1728- * gpinentry.c (enter_callback): New
1729- (create_window): Connect it to the entry field.
1730-
1731-2002-02-18 Werner Koch <wk@gnupg.org>
1732-
1733- Released 0.5.1.
1734-
1735- * gpinentry.c (create_window): Add CONFIRM_MODE.
1736- (cmd_confirm): Implemented.
1737-
1738- * assuan/: Updated from NewPG.
1739-
1740-2002-01-20 Werner Koch <wk@gnupg.org>
1741-
1742- * gpinentry.c (option_handler): New to allow changing of the grab
1743- status.
1744- (grab_keyboard): Shortcut this when global grab is not set.
1745-
1746-2002-01-04 Werner Koch <wk@gnupg.org>
1747-
1748- Released 0.5.0.
1749-
1750- * configure.ac: Bumbed version
1751-
1752- * util.h (xtoi_1, xtoi_2): New.
1753- * gpinentry.c (strcpy_escaped): New
1754- (cmd_setdesc, cmd_seterror): Use it here to allo multiline texts.
1755-
1756- * gpinentry: Removed debugging outbut
1757- (create_window): Tweaked layout.
1758-
1759-2001-12-07 Werner Koch <wk@gnupg.org>
1760-
1761- New package gpinentry based on quintuple-agent.
1762-
1763- Removed all stuff except for the basic configuration stuff and
1764- what is needed to build gpinentry. Also removed i18n support.
1765- * gpinentry.c: Renamed from secret-query.c
1766-
1767-2001-02-12 Robert Bihlmeyer <robbe@orcus.priv.at>
1768-
1769- * 1.0.0 released. Woo-hoo!
1770-
1771- * configure.in, NEWS: Bumped version.
1772-
1773-2001-02-04 Robert Bihlmeyer <robbe@orcus.priv.at>
1774-
1775- * agent.c (make_tmpdir): Honor $TMPDIR.
1776-
1777- (agent): Would exit on every minor problem. Now, we just close the
1778- offending connection.
1779- Ignore SIGPIPE, so that EPIPE will close connection.
1780-
1781-2001-01-11 Robert Bihlmeyer <robbe@orcus.priv.at>
1782-
1783- * secmem.c: Move one include statement so that the thing compiles.
1784-
1785- * secret-query.c (main): Minor source cosmetics.
1786-
1787-2000-11-16 Robert Bihlmeyer <robbe@orcus.priv.at>
1788-
1789- * gtksecentry.c (gtk_secure_entry_insert_text): Secured a couple
1790- of memory (de)allocations that were missed. Thanks to John Steele
1791- <jhs28@eng.cam.ac.uk> for spotting these.
1792-
1793-2000-11-10 Robert Bihlmeyer <robbe@orcus.priv.at>
1794-
1795- * Thoughts: Removed in favor of new TODO.
1796-
1797- * README: Remove content and refer to doc/manual.info instead.
1798-
1799- * agent.c (do_get): Would burn badly on a premature exit of the
1800- query program (which would occur routinely if you selected /cancel/).
1801-
1802-2000-10-25 Robert Bihlmeyer <robbe@orcus.priv.at>
1803-
1804- * memory.h: Include sys/types.h for size_t.
1805-
1806-2000-10-08 Robert Bihlmeyer <robbe@orcus.priv.at>
1807-
1808- * README: Removed apology about missing documentation.
1809- Updated paragraph about Linux capability patch.
1810- Typo & Refill.
1811-
1812-2000-10-03 Robert Bihlmeyer <robbe@orcus.priv.at>
1813-
1814- * 0.9 released.
1815-
1816- * Makefile.am (EXTRA_DIST): Distribute BUGS (the file, that is).
1817-
1818- * configure.in, NEWS: Bumped version.
1819-
1820- * Makefile.am, configure.in: Add debian subdir.
1821-
1822- * README: Recommend GTK+.
1823- Update list of checked platforms.
1824-
1825-2000-10-02 Robert Bihlmeyer <robbe@orcus.priv.at>
1826-
1827- * secret-query.c (ok): Simplify.
1828- Put empty line between headers and secret.
1829- (usage): Document '--help' and '--version'.
1830-
1831- * agent.c (do_get): Use enhanced secret-query output to fill in
1832- options.
1833-
1834-2000-10-01 Robert Bihlmeyer <robbe@orcus.priv.at>
1835-
1836- * secret-query.c (main): Clarify error.
1837-
1838- * client.c (query_options): New global variable.
1839- (main): New option '--query-options' to pass options to the query
1840- program.
1841- (xgetpass): Use it.
1842-
1843- * agent.c (main): New option '--query-options' to pass options to
1844- the query program.
1845- (do_get): Use 'query_options'.
1846-
1847- * acconfig.h, configure.in: Add QUERY_PROGRAM definition.
1848- * client.c: Remove here.
1849- * agent.c (do_get): Use it here, too.
1850-
1851- * secret-query.c (main): New option '--no-global-grab' introduced,
1852- that prevents keyboard grabbing unless the window has focus.
1853-
1854-2000-09-11 Robert Bihlmeyer <robbe@orcus.priv.at>
1855-
1856- * secret-query.c (usage): Add two missing pieces of "\n\".
1857-
1858- * agent.c (main): --nofork is now the default, and the option is
1859- deprecated. New option --fork added to turn forking on again.
1860- Close stdout (and stderr unless debugging) even when not forking,
1861- so that normal usage inside eval is still possible.
1862- (agent): Exit gracefully on HUP, so that logging out now kills the
1863- agent.
1864-
1865- * README (Contact Information): Old URL - duh!
1866- (Using Secret Agent): We no longer fork per default.
1867-
1868- * Makefile.am (lib/libutil.a): New target, allows targets that not
1869- automatically recurse (but still depend on libutil.a) to succeed.
1870-
1871-2000-07-20 Robert Bihlmeyer <robbe@orcus.priv.at>
1872-
1873- * secret-query.c (usage): New function.
1874- (main): Parse options: debug, enhanced, help, version.
1875- Turn on locale support.
1876- If enhanced, insert widgets to ask for timeout and insurance.
1877- (ok): If enhanced, print more information on exit.
1878- (grab_keyboard): Die if grab was unsuccessful.
1879-
1880-2000-05-31 Robert Bihlmeyer <robbe@orcus.priv.at>
1881-
1882- * 0.8 released.
1883-
1884- * configure.in, NEWS: Bumped version.
1885-
1886- * Makefile.am (SUBDIRS): Include doc.
1887-
1888- * configure.in, acconfig.h: Check for ssize_t.
1889- Check for vsnprintf(), strdup().
1890- Generate doc/Makefile.
1891-
1892- * apgp.c, agpg.c, agentlib.c, util.c: Include more stuff.
1893-
1894- * agent.c (do_get): Use asprintf() instead of snprintf() so we
1895- don't need to roll our own for yet another function.
1896- Fix some includes.
1897-
1898- * acinclude.m4: gettext macros copied from automake and fixed.
1899-
1900-2000-05-30 Robert Bihlmeyer <robbe@orcus.priv.at>
1901-
1902- * configure.in, Makefile.am: Properly include doc subdir.
1903-
1904-2000-05-29 Robert Bihlmeyer <robbe@orcus.priv.at>
1905-
1906- * configure.in, acconfig.h: Add test for XMESSAGE path.
1907-
1908- * client.c (main): Decode command from string to integer code
1909- first, then evaluate that in ifs.
1910-
1911- * secret-ask.c: New file, external ask-for-confirmation utility.
1912-
1913- * configure.in, Makefile.am: Add secret-ask to programs being
1914- built when GTK is available. Rename QUERY to more descriptive
1915- GTK_PROGRAMS.
1916-
1917- * agent.c (do_get): If GTK is available, try executing secret-ask
1918- first.
1919- Only put the comment into the insure-question if there is a
1920- comment.
1921- (main): --csh was missing from usage message.
1922-
1923-2000-04-23 Robert Bihlmeyer <robbe@orcus.priv.at>
1924-
1925- * secret-query.c (constrain_size): Lower window max_width to
1926- accomodate bugs in GTK and Scwm.
1927-
1928- * agent.c (main): Set x_enabled if X appears to be available.
1929- Use it to selectively make FLAGS_INSURE supported.
1930- (do_get): Use it instead of testing at every call.
1931- (do_put): Requests containing unsupported flags fail.
1932- (forget_old_stuff): Would not set next_deadline correctly.
1933- (do_get): Implement FLAGS_INSURE.
1934-
1935- * client.c (main): "list" format changed so that comment is to the
1936- far right. Display the deadline as proper date/time, too.
1937-
1938-1999-11-11 Robert Bihlmeyer <robbe@orcus.priv.at>
1939-
1940- * agent.c (next_deadline): New global variable, holds time when
1941- next secret has to be killed.
1942- (store): Keep it up-to-date.
1943- (forget_old_stuff): New function, reaps secrets ready to kill,
1944- keeps next_deadline updated.
1945- (agent): Use it on all secrets, whenever a deadline is active.
1946-
1947-1999-11-08 Robert Bihlmeyer <robbe@orcus.priv.at>
1948-
1949- * agent.h (request_put): Add flags, deadline. Increase REQUEST_MAGIC.
1950- (reply_get): Ditto, and increase REPLY_MAGIC.
1951- * agent.c (store): Store flags, deadline in reply.
1952- (do_put): Hand flags, deadline from request on to store().
1953- (do_get): Store on-demand queried secrets without deadline or
1954- special flags, for now.
1955- (agent): Do not ignore obsolete clients, return an error reply.
1956- * agentlib.c (agent_put): Add flags, deadline arguments, and copy
1957- them into the request.
1958- * agentlib.h (agent_put): Update prototype.
1959-* * client.c (main): Added --time-to-live (-t) and --insure (-i)
1960- options, influencing PUT's deadline and flags, respectively.
1961- (main): Change list format to include new attributes.
1962-
1963-1999-11-05 Robert Bihlmeyer <robbe@orcus.priv.at>
1964-
1965- * configure.in: <getopt.h> check had redundant definition.
1966- * acconfig.h: Remove here, too.
1967-
1968- * configure.in: Check for <inttypes.h>. If not found, check for
1969- unsigned {int, long} sizes.
1970- * agent.h: Either include <inttypes.h>, or try to define uint32_t
1971- yourself.
1972- Need to include "config.h".
1973-
1974-1999-11-04 Robert Bihlmeyer <robbe@orcus.priv.at>
1975-
1976- * Makefile.am (signed-dist): New rule, generates sig for dist.
1977- (%.sig): New rule, for detached signatures in general.
1978-
1979- * configure.in: Check for ulong.
1980- * acconfig.h: Document it.
1981- * secmem.c: Unconditionally defining it is no longer necessary
1982- here. But do include <sys/types.h> in all cases.
1983-
1984- * 0.7 released.
1985-
1986- * secmem.c: ulong is not defined on all systems.
1987-
1988- * agent.h: <inttypes.h> should define `uint32_t' as per Unix98, so
1989- we use that.
1990-
1991-1999-11-02 Robert Bihlmeyer <robbe@orcus.priv.at>
1992-
1993- * agent.h: Augmented requests and replies with magic numbers.
1994- Data structures heavily commented.
1995- All structures and enums typedef'd.
1996- * agent.c: Adapted.
1997- (store): Set magic number in stored reply.
1998- (do_put): Set magic number in reply.
1999- (do_delete): Ditto.
2000- (do_list): Ditto.
2001- (agent): Check magic number in request.
2002- * agentlib.c: Adapted.
2003- (send_request): Set magic number in request. Check it in reply.
2004- * agentlib.h: Adapted.
2005- * agpg.c: Adapted.
2006- * apgp.c: Adapted.
2007- * client.c: Adapted.
2008-
2009-1999-10-31 Robert Bihlmeyer <robbe@orcus.priv.at>
2010-
2011- * secmem.c: Instead of defining ulong directly, include
2012- <sys/types.h>
2013-
2014- * secret-query.c (constrain_size): New function, puts constrains
2015- on size of toplevel window.
2016- (grab_keyboard): Removed protection against multiple calls.
2017- (ungrab_keyboard): New function, cancelling a keyboard grab.
2018- (main): Hang `grab_keyboard' onto map-event which makes it
2019- actually work, hang `ungrab_keyboard' onto unmap-event.
2020- Hang `constrain_size' onto size-request.
2021-
2022- * secmem.c: ulong was undefined on some systems.
2023-
2024-1999-10-19 Robert Bihlmeyer <robbe@orcus.priv.at>
2025-
2026- * Makefile.am (install-exec-local): Ignore setcap errors.
2027-
2028- * apgp.c: New program, based on agpg.c, but for pgp2.6.
2029- * Makefile.am (bin_PROGRAMS, apgp_SOURCES): Added it.
2030-
2031- * agpg.c (GPG): New constant.
2032- (find_id, main): Use it throughout.
2033- (find_id): Forgot to pclose on success.
2034-
2035- * secret-query.c (main): Don't expand anything.
2036- Use a button box for the buttons.
2037- Prompt label can be overridden from the commandline.
2038- * agent.c (do_get): Make spawned secret-query show the id.
2039- * client.c (xgetpass): Pass prompt to secret-query.
2040- (main): Include id in xgetpass prompt.
2041-
2042-1999-10-14 Robert Bihlmeyer <robbe@orcus.priv.at>
2043-
2044- * configure.in: setcap must be searched outside the usual user
2045- PATH, too.
2046- * Makefile.am (install-exec-local): Set cap_ipc_lock permitted on
2047- installed binaries, if possible.
2048-
2049- * agent.c (xdup2): New function, dup2 with error handling.
2050- (move_fd): New function, moves fds.
2051- (store): New function, abstracted out from do_put.
2052- (do_put): Use it.
2053- (do_get): If secret was not found, and DISPLAY is set, try to
2054- query the user about it. If successful, store it.
2055- (main): Route standard file descriptors to /dev/null rather than
2056- just closing them. The latter would confuse children.
2057-
2058-1999-10-13 Robert Bihlmeyer <robbe@orcus.priv.at>
2059-
2060- * gtksecentry.c, gtksecentry.h: New files, being slightly modified
2061- versions of GTK+'s gtkentry.[ch], spiffed up to use secure memory.
2062- * secret-query.c (ok, unselect, main): Replace GtkEntry with
2063- GtkSecureEntry.
2064- (main): Initialize secure memory.
2065- * Makefile.am (secret_query_SOURCES): Added gtksecentry.[ch].
2066-
2067- * README (Security): New chapter.
2068-
2069- * configure.in, acconfig.h: Check for POSIX capabilities, and the
2070- setcap program.
2071- * Makefile.am: Link LIBCAP to those binaries using secmem.c.
2072-
2073- * util.h: Include <sys/types.h> for size_t.
2074-
2075-1999-09-21 Robert Bihlmeyer <robbe@orcus.priv.at>
2076-
2077- * secmem.c: Synced with gnupg-1.0 (top new feature: capabilities).
2078- (log_fatal): New function, logs to stderr, and dies.
2079-
2080-1999-09-08 Robert Bihlmeyer <robbe@orcus.priv.at>
2081-
2082- * secmem.c (log_info): New function, logs to stderr.
2083-
2084- * agent.c (agent): select() expects the number of fds, not the
2085- highest fd. So remember that number.
2086-
2087- * agent.c (agent): Don't use FD_SETSIZE, which is not defined on
2088- all systems. Remember the number of the highest descriptor
2089- instead.
2090-
2091- * configure.in: Replace getline() instead of getdelim() because
2092- this is the function we really need. Still check for getdelim(),
2093- though - there are systems out there where this is provided, but
2094- getline() is not.
2095-
2096-1999-09-01 Robert Bihlmeyer <robbe@orcus.priv.at>
2097-
2098- * 0.6 released.
2099-
2100- * configure.in: Bump version.
2101-
2102- * NEWS: Updated.
2103-
2104-1999-08-31 Robert Bihlmeyer <robbe@orcus.priv.at>
2105-
2106- * util.c (init_uids, lower_privs, raise_privs, drop_privs): New
2107- functions, for setuid binaries, extracted from agent.c.
2108- * util.h: Add prototypes for them.
2109- * agpg.c (main): Use them.
2110- * client.c (main): Ditto.
2111- * agent.c (main): Ditto. Removed code that did the same.
2112- Unconditionally include "asprintf.h" (it protects itself now).
2113-
2114-1999-08-25 Robert Bihlmeyer <robbe@orcus.priv.at>
2115-
2116- * Makefile.am (SUBDIRS): Process . before test so that "make
2117- check" always builds all in . first.
2118-
2119-1999-08-21 Robert Bihlmeyer <robbe@orcus.priv.at>
2120-
2121- * secret-query.c: Include "config.h".
2122-
2123- * agent.h (reply_list_entry, reply_list): New reply structures.
2124- * agent.c (send_list_entry): New function.
2125- (do_list): First send number of entries, then each entry via
2126- send_list_entry().
2127- * agentlib.c (agent_list): Read entries returned by LIST request.
2128- * client.c (main): Output all entries returned by agent_list().
2129-
2130- * agentlib.c (agent_put): Don't construct PUT request in insecure
2131- stack space.
2132-
2133-1999-08-20 Robert Bihlmeyer <robbe@orcus.priv.at>
2134-
2135- * NEWS: Bump patchlevel.
2136-
2137- * configure.in: Bump patchlevel.
2138- Check for missing setenv().
2139-
2140-1999-08-09 Robert Bihlmeyer <robbe@orcus.priv.at>
2141-
2142- * configure.in: Check for strsignal().
2143-
2144- * client-test: Obsoleted by test/client.
2145-
2146- * Makefile.am (SUBDIRS): New subdirectory.
2147- * configure.in (AC_OUTPUT): Add here, too.
2148-
2149- * 0.5 released.
2150-
2151- * README: Explain why secret-client will not output secrets to a
2152- tty, and mention the cat-trick.
2153-
2154- * agent.c (main): If seteuid is not available, don't use it and
2155- issue a warning if running setuid.
2156-
2157- * configure.in: Run together two REPLACE_FUNCS.
2158- Check for seteuid.
2159-
2160- * client-test: Mask out insecure memory warnings.
2161-
2162- * agentlib.c (send_request): Let the calling functions reserve
2163- space for the reply, but offer a simple way for simple requests.
2164- (agent_get): Allocate secure memory.
2165-
2166- * agent.c (main): Moved secmem_init() after the fork, since that
2167- seemingly munlock's all pages.
2168- Drop priviledges just in case somebody wants to install this
2169- suid-root.
2170- Flush stdout.
2171-
2172- * agpg.c (find_id): Would reorder arguments.
2173- Initialize opt_version.
2174- (main): Initialize secure memory.
2175-
2176- * Makefile.am (agpg_SOURCES): Link with secure memory module.
2177-
2178- * client.c (usage): Fixed another program name reference.
2179-
2180-1999-08-06 Robert Bihlmeyer <robbe@orcus.priv.at>
2181-
2182- * configure.in: Conditionally define HAVE_GTK.
2183- * acconfig.h: Add here too.
2184-
2185- * client.c (xgetpass): Use "secret-query" only if it was built.
2186- (main): Don't output secret (GET command) to ttys.
2187-
2188- * agpg.c (find_id): Also print own version if "--version" is given.
2189- (main): Check agent_init() errors.
2190- Print error if exec fails.
2191-
2192- * agent.c (main): Added an option to produce csh-compatible
2193- output.
2194-
2195- * agent.c, client.c: Forgot the terminating NULL in long options.
2196- Fixed the program names in usage and version output.
2197-
2198- * agent.c (create_socket): AF_UNIX and PF_UNIX are Unix98, so
2199- that's what we use. AF_LOCAL, PF_LOCAL removed.
2200- * agentlib.c (agent_init): Ditto.
2201-
2202-1999-08-05 Robert Bihlmeyer <robbe@orcus.priv.at>
2203-
2204- * 0.4 released.
2205-
2206- * configure.in: Bumped version.
2207- Check for missing getdelim.
2208-
2209- * cgpg: Removed, obsoleted by agpg.
2210- * Makefile.am: Here, too.
2211-
2212- * agpg.c (find_id): New function.
2213- (main): Use it.
2214-
2215- * Makefile.am (INCLUDES): Put GTK_FLAGS and GLIB_FLAGS here. It
2216- is the easiest way for sources needing it, and it won't hurt those
2217- that don't.
2218- (agent.o): Explicit command removed accordingly.
2219-
2220-1999-08-04 Robert Bihlmeyer <robbe@orcus.priv.at>
2221-
2222- * configure.in: Need double quoting in nested AC_MSG_WARN.
2223-
2224- * client.c (xgetpass): If no tty is available, but a DISPLAY is,
2225- fork off "secure-query" to read the secret.
2226- Put the fgets into a loop that keeps reading until all of the
2227- secret is read.
2228-
2229- * client-test: Unset DISPLAY, so that "secret-query" is never used.
2230-
2231-1999-08-03 Robert Bihlmeyer <robbe@orcus.priv.at>
2232-
2233- * agpg.c: New file, first cut at a C version of the gpg wrapper,
2234- written in a hurry (20 keys waiting to be signed, and a growling
2235- stomach).
2236- * Makefile.am: Add it to built programs.
2237- (LDADD): New default.
2238- (secret_client_LDADD): Removed, since it was identical to default.
2239-
2240-1999-08-01 Robert Bihlmeyer <robbe@orcus.priv.at>
2241-
2242- * secret-query.c: New program, queries the user for a password.
2243- * Makefile.am (bin_PROGRAMS): Added it.
2244- * configure.in: Check for GTK+, build "secret-query" only when
2245- that is available.
2246-
2247- * cgpg: Extra argument for ID is no longer necessary. cgpg will
2248- scan the gpg args for switches that affect user-id, and determine
2249- the right key itself. Per convention, the key-id is used by "GET".
2250-
2251- * configure.in: The project name is now "secret-agent".
2252-
2253- * Makefile.am: "agent" & "client" renamed to "secret-agent" &
2254- "secret-client", respectively.
2255- * client-test: Adapt to new names.
2256-
2257- * Thoughts: Removed discussion of other names.
2258- Added indication of which things already work.
2259-
2260- * agent.c (make_tmpdir): Removed occurance of "gpg-agent."
2261-
2262- * README: First proper version.
2263-
2264- * client-test: Context diffs are more portable then unified diffs.
2265-
2266- * agent.c, agent.h, agentlib.c, agentlib.h, client.c, memory.h,
2267- util.c, util.h: Banner updated to new name.
2268-
2269-1999-07-29 Robert Bihlmeyer <robbe@orcus.priv.at>
2270-
2271- * configure.in: Check for missing asprintf.
2272- Check if -lsocket is needed.
2273-
2274- * secmem.c (secmem_dump_stats): Replace usage of ulong.
2275-
2276- * Makefile.am (INCLUDES): Add the lib subdirectory to include search.
2277-
2278- * agent.c: Forgot to include <string.h>.
2279- Include RYO asprintf header if this function is missing.
2280- For the sake of compatibility, provide a definition for AF_LOCAL,
2281- PF_LOCAL, if missing.
2282- * agentlib.c: Ditto.
2283-
2284-1999-07-28 Robert Bihlmeyer <robbe@orcus.priv.at>
2285-
2286- * Makefile.am (client_SOURCES): Add "secmem.c", "memory.h".
2287-
2288- * client.c (xgetpass): Use secmem_malloc() instead of RYO.
2289- (main): Init and shutdown secmem.
2290-
2291-1999-07-27 Robert Bihlmeyer <robbe@orcus.priv.at>
2292-
2293- * Makefile.am (agent_SOURCES): Add "secmem.c", "i18n.h", "memory.h".
2294- (client_SOURCES): Add "i18n.h".
2295-
2296- * client.c (main): Exit on agent_init() failure.
2297-
2298- * agent.c (main): Init secmem.
2299- Make --debug switch cumulative.
2300- (cleanup): Shutdown secmem.
2301- (do_put): Use secmem for storage of secrets.
2302- (do_delete): Use secmem_free(). Since this wipes the memory on its
2303- own, wipe() is superflous now.
2304- (agent): Use secmem for inbound requests.
2305- (delete_secret): New function, takes part of do_delete's
2306- functionality.
2307- (do_put): Use it to remove old versions stored under the same id.
2308- (do_delete): Use it to delete secrets.
2309-
2310- * memory.h: New file.
2311-
2312- * secmem.c: New file, snarfed from GnuPG and modified slightly.
2313-
2314- * acinclude.m4: New file.
2315- * configure.in: (ALL_LINGUAS): Expanded list of available
2316- languages. Most of them only have a few translations from gpg,
2317- tough ...
2318- getopt_long test was commented out for debugging,
2319- and left such. Fixed.
2320- Check for mlock.
2321- * acconfig.h: Comment HAVE_BROKEN_MLOCK.
2322-
2323- * cgpg: A space was missing.
2324-
2325- * i18n.h: New file, centralizing the gettext macro defs.
2326-
2327- * agent.c (BLIND): New macro, that blinds out a secret if debug
2328- level is too low.
2329- (do_put): Use it.
2330- (do_get): Use it.
2331- Include i18n.h.
2332-
2333- * agentlib.c: Include i18n.h
2334-
2335- * client.c (usage): New function.
2336- Usage-message made gettext-friendly.
2337- (xgetpass): Use perror() instead of fprintf().
2338- (main): Use it.
2339- Make comment an optional argument of PUT.
2340- Include i18n.h.
2341-
2342-1999-07-26 Robert Bihlmeyer <robbe@orcus.priv.at>
2343-
2344- * Makefile.am (client_LDADD): Add lib/libutil.a for portability.
2345- (agent_LDADD): Ditto.
2346- (SUBDIRS): Add lib directory.
2347- (bin_SCRIPTS): New with cgpg, so it gets installed, too.
2348-
2349- * configure.in: Add lib/Makefile to output.
2350-
2351-1999-07-24 Robert Bihlmeyer <robbe@orcus.priv.at>
2352-
2353- * cgpg: New file.
2354- * Makefile.am (EXTRA_DIST): Added it.
2355-
2356- * agent.c: Moved inclusion of config.h before inclusion of
2357- libintl.h since the latter needs HAVE_LC_MESSAGE.
2358- * client.c: Ditto.
2359- * clientlib.c: Ditto.
2360-
2361- * client-test: Update for new client semantics.
2362-
2363- * client.c (check_status): Use debugmsg(). Do nothing if not
2364- debugging.
2365- (xgetpass): New function, getpass replacement that uses mlock'ed
2366- memory.
2367- (main): PUT now asks for the secret rather then getting it from
2368- the commandline.
2369- GET prints only the secret to stdout.
2370-
2371- * configure.in: Rearranged.
2372- Check for socklen_t.
2373- * acconfig.h: Added a definition for it.
2374-
2375- * client.c: Include packaged getopt.h if the system doesn't provide
2376- one.
2377- * agent.c: Ditto.
2378- (create_socket): Replace AF_FILE, PF_FILE with AF_LOCAL, PF_LOCAL
2379- for portability.
2380- * agentlib.c (agent_init): Ditto.
2381- Explicitly cast addr to a sockaddr pointer.
2382-
2383- * Makefile.am (client_LDADD): Added @INTLLIBS@.
2384- (agent_LDADD): Ditto.
2385-
2386-1999-07-19 Robert Bihlmeyer <robbe@orcus.priv.at>
2387-
2388- * configure.in: Check for getopt.h and getopt_long.
2389- * acconfig.h (HAVE_GETOPT_H): New define.
2390- * lib/getopt.c, lib/getopt1.c, lib/getopt.h: Added.
2391-
2392-1999-07-18 Robert Bihlmeyer <robbe@orcus.priv.at>
2393-
2394- * 0.2 released.
2395-
2396- * NEWS: Updated.
2397-
2398- * Makefile.am (agent.o): Mentioning the source explicitly does not
2399- work for srcdir!=builddir.
2400-
2401- * client.c (main): Function arguments are not always evaluated in
2402- order, so drop the neat ++optind in favor of optind+1, optind+2,
2403- etc.
2404-
2405- * configure.in: Upped version.
2406-
2407-1999-06-28 Robert Bihlmeyer <robbe@orcus.priv.at>
2408-
2409- * util.h: Added multi-inclusion guard.
2410-
2411- * agent.c Include "util.h".
2412- (main): Forgot to exit at end.
2413- (do_delete): Assume that value is a string and wipe it accordingly.
2414-
2415- * configure.in (--enable-debug): New switch.
2416-
2417- * agent.h (status_t): Added STATUS_COMM_ERR code.
2418- Added multi-inclusion guard.
2419-
2420- * client.c (main): Abstracted out most functionality into a
2421- function library, namely:
2422- * agentlib.c: New file.
2423- * agentlib.h: New file.
2424- * Makefile.am (client_SOURCES): Added agentlib.c, agentlib.h.
2425-
2426- * Makefile.am (INCLUDES): GLIB_CFLAGS moved again, this time to
2427- the agent.o target.
2428-
2429-1999-06-15 Robert Bihlmeyer <robbe@orcus.priv.at>
2430-
2431- * 0.1 released.
2432-
2433- * Makefile.am (agent_CFLAGS): Removed - did not work.
2434- (INCLUDES): Moved the GLIB stuff here.
2435-
2436-1999-06-14 Robert Bihlmeyer <robbe@orcus.priv.at>
2437-
2438- * configure.in (ALL_LINGUAS): Added `de'.
2439-
2440- * agent.c (do_get): Added more debugmsgs.
2441- (do_put): Wouldn't allocate enough for `value'.
2442- (main): New option "--nofork" prevents forking.
2443- Use macros for the std filedescriptor numbers.
2444- Only close stderr if not debugging.
2445- (main): Make Usage string gettext-friendly.
2446-
2447- * client-test (cleanup): New function.
2448- Call it on shell exit.
2449- (client): New function.
2450- Use it instead of calling client binary directly.
2451- diff client output with expected one in GET testcases.
2452-
2453-1999-06-13 Robert Bihlmeyer <robbe@orcus.priv.at>
2454-
2455- * agent.c (failed_reply): New constant.
2456- (do_list): Use it.
2457- (do_put): The hash key was overwritten - strdup it.
2458- Construct a GET reply and save that in the hash.
2459- (do_get): Just send the preconstructed reply if the id is present,
2460- and failed_reply otherwise.
2461- (do_delete): Actually free the hashed stuff.
2462-
2463- * client.c: Exit with error if agent returned STATUS_FAIL.
2464-
2465- * Makefile.am (EXTRA_DIST): Added autogen.sh, Thoughts,
2466- client-test.
2467- (TESTS): Added client-test.
2468- (AUTOMAKE_OPTIONS): Added gnits.
2469-
2470-
2471- Copyright 2002, 2003, 2010 g10 Code GmbH
2472-
2473- This file is free software; as a special exception the author gives
2474- unlimited permission to copy and/or distribute it, with or without
2475- modifications, as long as this notice is preserved.
2476-
2477- This file is distributed in the hope that it will be useful, but
2478- WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
2479- implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
2480+2013-04-26 Werner Koch <wk@gnupg.org>
2481+
2482+ Release 0.8.3.
2483+
2484+2013-04-26 Andre Heinecke <aheinecke@intevation.de>
2485+
2486+ Switch to i686-w64-mingw32 as default Windows toolchain.
2487+ * autogen.sh <build-w32>: Insert i686-w64-mingw32.
2488+ * configure.ac: Pretty print final info.
2489+
2490+ Fix declaration of lock_set_foreground_window for pinnetry-w32.
2491+ * w32/main.c (lock_set_foreground_window): Remove WINUSERAPI
2492+ qualifier.
2493+
2494+ Fix ressource compilation of pinentry-w32.
2495+ * w32/pinentry-w32.rc: Include windows.h
2496+
2497+2013-02-16 Ben Kibbey <bjk@luxsci.net>
2498+
2499+ Curses build fix for DOS'ish systems.
2500+
2501+2013-02-14 Ben Kibbey <bjk@luxsci.net>
2502+
2503+ Document the --timeout and SETTIMEOUT feature.
2504+
2505+ Add timeout support to the Gtk+2 pinentry.
2506+ * gtk+-2/pinentry-gtk-2.c (create_window): Add timer.
2507+ (timeout_cb): New.
2508+
2509+ Add timeout support to the curses pinentry.
2510+ * pinentry/pinentry-curses.c (dialog_run): Set the window input to
2511+ non-blocking.
2512+ (catchsig): New.
2513+ (main): Catch SIGALRM and set the timeout.
2514+
2515+2013-01-06 Ben Kibbey <bjk@luxsci.net>
2516+
2517+ Fix initializing the timeout timer.
2518+ When timeout == 0 a segfault would occur.
2519+
2520+2012-08-08 Werner Koch <wk@gnupg.org>
2521+
2522+ Release 0.8.2.
2523+
2524+ Distribute only bzip2 tarballs.
2525+ * Makefile.am (AUTOMAKE_OPTIONS): New.
2526+
2527+ qt4: Update all moc files to Qt version 4.8.2.
2528+
2529+ Update config.guess and config.sub.
2530+ * config.guess, config.sub: Update to version 2012-07-31 from gnulib.
2531+
2532+ Change build system to auto-generate the ChangeLog.
2533+ * build-aux/gitlog-to-changelog: New script. Taken from GnuPG.
2534+ * build-aux/git-log-fix: New file.
2535+ * build-aux/git-log-footer: New file.
2536+ * doc/HACKING: Describe the ChangeLog policy
2537+ * ChangeLog: New file.
2538+ * Makefile.am (EXTRA_DIST): Add new files.
2539+ (gen-ChangeLog): New.
2540+ (dist-hook): Run gen-ChangeLog.
2541+
2542+ Rename existing ChangeLog files to ChangeLog-old.
2543+
2544+ Switch to an automagic beta numbering scheme.
2545+ * configure.ac: Add all the required m4 magic.
2546+
2547+2012-08-08 Werner Koch <wk@gnupg.org>
2548+
2549+ NB: Changes done before August 8, 2012 are described in per
2550+ directory files named ChangeLog-old. See doc/HACKING for
2551+ details.
2552+
2553+ -----
2554+ Copyright (C) 2002, 2003, 2010, 2012 g10 Code GmbH
2555+
2556+ Copying and distribution of this file and/or the original GIT
2557+ commit log messages, with or without modification, are
2558+ permitted provided the copyright notice and this notice are
2559+ preserved.
2560
2561=== added file 'ChangeLog-old'
2562--- ChangeLog-old 1970-01-01 00:00:00 +0000
2563+++ ChangeLog-old 2014-01-24 03:16:14 +0000
2564@@ -0,0 +1,2175 @@
2565+2012-08-08 Werner Koch <wk@gnupg.org>
2566+
2567+ NB: ChangeLog files are no longer manually maintained. Starting
2568+ on August 8, 2012 we put change information only in the GIT commit
2569+ log, and generate a top-level ChangeLog file from logs at "make
2570+ dist". See doc/HACKING for details.
2571+
2572+2011-08-10 Werner Koch <wk@g10code.com>
2573+
2574+ * configure.ac: Change bug report address to the BTS. Fix
2575+ autoconf warnings.
2576+
2577+2011-06-28 Werner Koch <wk@g10code.com>
2578+
2579+ * gtk+-2/gtksecentry.c (PROP_EDITING_CANCELED): New.
2580+ (gtk_secure_entry_class_init, gtk_secure_entry_set_property)
2581+ (gtk_secure_entry_get_property): Implement as dummy it to get rid
2582+ of a runtime warning.
2583+
2584+2010-12-16 Werner Koch <wk@g10code.com>
2585+
2586+ Release 0.8.1.
2587+
2588+ * doc/pinentry.texi: Remove the custom font setting for underscores.
2589+
2590+ Update to automake 1.10.
2591+
2592+ * missing, config.guess, config.sub: Update from GnuPG.
2593+
2594+ * w32/main.c (debugfp): Define to stderr.
2595+ (raise_sip) [!W32CE]: Make it a dummy function.
2596+
2597+ * qt4/pinentrydialog.cpp (raiseWindow): Use SetForegroundWindow
2598+ API directly.
2599+ (SetForegroundWindowEx): Comment out.
2600+
2601+2010-10-19 Werner Koch <wk@g10code.com>
2602+
2603+ * pinentry/pinentry.c (pinentry_have_display): Also detect
2604+ --display=DISPID.
2605+
2606+2010-10-12 Werner Koch <wk@g10code.com>
2607+
2608+ * qt/main.cpp (escape_accel): New. Adapt from from qt4/.
2609+ (qt_cmd_handler): Implement default-ok and default-cancel. Escape
2610+ accelerators.
2611+
2612+2010-09-30 Werner Koch <wk@g10code.com>
2613+
2614+ * pinentry/pinentry.h (struct pinentry): Add CLOSE_BUTTON.
2615+ * pinentry/pinentry.c (cmd_getpin, cmd_confirm, cmd_message): Send
2616+ BUTTON_INFO.
2617+ * gtk+-2/pinentry-gtk-2.c (delete_event): Set close_button.
2618+
2619+2010-09-22 Werner Koch <wk@g10code.com>
2620+
2621+ * gtk+-2/pinentry-gtk-2.c (create_window): Make use of
2622+ default_cancel and default_ok.
2623+
2624+2010-08-19 Werner Koch <wk@g10code.com>
2625+
2626+ * gtk+-2/Makefile.am (pinentry_gtk_2_SOURCES): Add gseal-gtk-compat.h.
2627+
2628+ * configure.ac (AH_TOP, AH_BOTTOM): New. Define
2629+ GPG_ERR_ENABLE_ERRNO_MACROS.
2630+
2631+2010-06-08 Marc Mutz <marc.mutz@kdab.com> (wk)
2632+
2633+ * qt4/pinentrydialog.cpp (PinEntryDialog): Add WindowStaysOnTopHint.
2634+
2635+ * qt/pinentrydialog.cpp (PinEntryDialog): Add WStyle_StaysOnTop.
2636+
2637+2010-05-12 Guido Günther <agx@sigxcpu.org> (wk)
2638+
2639+ * gtk+-2/gtksecentry.c: Make -DSEAL safe.
2640+ * gtk+-2/gseal-gtk-compat.h: New.
2641+ * gtk+-2/gtksecentry.h: Include new header.
2642+
2643+2010-05-07 Werner Koch <wk@g10code.com>
2644+
2645+ * gtk+-2/pinentry-gtk-2.c (create_window): Keep the window above
2646+ and make sure it has the focus. Fixes bug#1162.
2647+
2648+2010-05-03 Werner Koch <wk@g10code.com>
2649+
2650+ * gtk+-2/pinentry-gtk-2.c (create_window): Use
2651+ visibility-notify-event instead of map-event. Suggested by Ed
2652+ Marten.
2653+
2654+2010-04-26 Werner Koch <wk@g10code.com>
2655+
2656+ * gtk+-2/pinentry-gtk-2.c (grab_failed): New.
2657+ (grab_keyboard): s/g_error/g_critical/. Set GRAB_FAILED.
2658+ (gtk_cmd_handler): Return Cancel if a grab failed.
2659+
2660+2010-04-20 Marcus Brinkmann <marcus@g10code.de>
2661+
2662+ * pinentry/pinentry.c: Move include config.h to top!
2663+
2664+2010-04-19 Werner Koch <wk@g10code.com>
2665+
2666+ * gtk+-2/gtksecentry.c (gtk_secure_entry_delete_cb)
2667+ (gtk_secure_entry_toggle_overwrite, activate_cb)
2668+ (unichar_chosen_func): Comment out these unused functions.
2669+ (secentry_malloc): Fix format string error.
2670+
2671+2010-04-19 Stanislav Ochotnicky <sochotnicky@redhat.com> (wk)
2672+
2673+ * gtk+-2/pinentry-gtk-2.c (ungrab_keyboard): Fix segv when using
2674+ option -g.
2675+
2676+2010-04-16 Marcus Brinkmann <marcus@g10code.de>
2677+
2678+ * secmem/util.c: Fix inverted test.
2679+
2680+2010-04-12 Werner Koch <wk@g10code.com>
2681+
2682+ * w32/main.c (dlg_proc): Act on VK_RETURN.
2683+
2684+ * w32/pinentry-w32.rc: Include config.h. Add basic support for
2685+ small screens as used with WindowsCE.
2686+
2687+ * w32/Makefile.am (pinentry-w32.o): Add -I.. to the command.
2688+
2689+2010-04-08 Werner Koch <wk@g10code.com>
2690+
2691+ * pinentry/pinentry.c [W32CE]: Do not include errno.h and
2692+ locale.h.
2693+ (pinentry_have_display) [W32CE]: Do not use getenv.
2694+ (pinentry_parse_opts) [W32CE]: No error diagnostics due to missing
2695+ errno.
2696+ (sleep) [W32CE]: New.
2697+ (option_handler) [W32CE]: Ignore option --debug-wait.
2698+ (getpid) [W32CE]: New.
2699+ (pinentry_loop): Use STDIN_FILENO and STDOUT_FILENO.
2700+ (pinentry_loop): Factor code out to ...
2701+ (pinentry_loop2): New.
2702+ * w32/main.c (w32_strerror) [W32CE]: Do not use FormatMessage.
2703+ (main) [W32CE]: Do not use LockSetForegroundWindow.
2704+ (set_dlg_item_text): Use wchar_t for static string.
2705+ * secmem/util.c [W32CE]: Do not include errno.h.
2706+ (xwrite) [W32CE]: Shortcut EINTR loop.
2707+
2708+2010-04-07 Werner Koch <wk@g10code.com>
2709+
2710+ * autogen.sh: Modernized.
2711+
2712+2010-03-03 Werner Koch <wk@g10code.com>
2713+
2714+ Release 0.8.0.
2715+
2716+2010-03-02 Werner Koch <wk@g10code.com>
2717+
2718+ * qt4/main.cpp (from_utf8): Add extra braces for clarity.
2719+ (main): Copy the fixed --display string.
2720+
2721+2010-02-25 Marc Mutz <marc@kdab.com> (wk)
2722+
2723+ * qt4/main.cpp (from_utf8): don't throw InvalidUtf8(); for now,
2724+ fall back to QString::fromLocal8Bit()
2725+
2726+2010-02-22 Marc Mutz <marc@kdab.com> (wk)
2727+
2728+ * qt4/main.cpp (InvalidUtf8): New exception class.
2729+ (from_utf8): wrapper around QString::fromUtf8 throwing
2730+ InvalidUtf8.
2731+ (qt_cmd_handler): Use from_utf8 instead of QString::fromUtf8.
2732+ (qt_cmd_handler_ex): New wrapper around qt_cmd_handler.
2733+ (pinentry_cmd_handler): Use qt_cmd_handler_ex.
2734+
2735+ * qt4/main.cpp (qt_cmd_handler): Also handle accels in
2736+ SET{OK,NOTOK,CANCEL} string.
2737+
2738+2010-02-19 Marc Mutz <marc@kdab.com> (wk)
2739+
2740+ * qt4/main.cpp (qt_cmd_handler), qt4/pinentrydialog.cpp
2741+ (PinentryDialog::PinEntryDialog): Use the button icons that come
2742+ with Qt.
2743+
2744+ * qt4/pinentry_qrc, qt4/qrc_pinentry.cpp: New.
2745+ * qt4/gtk-cancel.png, qt4/gtk-ok.png: Removed.
2746+ * qt4/Makefile.am (EXTRA_DIST): Remove the GTK icons, add
2747+ pinentry.qrc.
2748+ (pinentry_qt4_SOURCES): add qrc_pinentry.cpp.
2749+
2750+ * qt4/main.cpp (qt_cmd_handler): Remove i18n support again.
2751+
2752+ * qt4/pinentrydialog.cpp (PinentryDialog::PinentryDialog):
2753+ set PIN entry field as buddy of its prompt
2754+
2755+ * qt4/main.cpp (escape_accel): New.
2756+ (qt_cmd_handler): use it on default_cancel, default_ok, prompt.
2757+
2758+ * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp
2759+ (PinEntryDialog::PinEntryDialog): don't use a nested vbox layout.
2760+
2761+ * qt4/pinentrydialog.h: replace include file with forward decl.
2762+ * qt4/pinentrydialog.cpp: add include file here.
2763+
2764+ * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp
2765+ (PinentryDialog::keyPressEvent()): Removed.
2766+
2767+ * qt/4pinentrydialog.cpp (PinEntryDialog::PinEntryDialog): use
2768+ QLayout::SetFixedSize instead of rolling our own solution.
2769+ * qt4/pinentrydialog.h: (PinentryDialog::setFixedSize): Removed.
2770+ * qt4/pinentrydialog.moc: Re-created.
2771+
2772+ * qt4/main.cpp: (qt_cmd_handler) make Cancel the default button
2773+ for CONFIRM
2774+
2775+ * qt4/main.cpp: (qt_cmd_handler) implement the confirm/message
2776+ logic correctly
2777+
2778+ * qt4/pinentrydialog.h (accepted, rejected): Removed; already
2779+ provided by base class.
2780+ * qt4/pinentrydialog.cpp (PinEntryDialog::PinEntryDialog): Use
2781+ QDialog::{accepted,rejected}.
2782+ * qt4/pinentrydialog.moc: Re-created.
2783+
2784+ * qt4/pinentrydialog.moc, qt4/qsecurelineedit.moc: Make compatible
2785+ with newer Qt version.
2786+
2787+2010-02-19 Werner Koch <wk@g10code.com>
2788+
2789+ * gtk+-2/pinentry-gtk-2.c (create_window): Allow mnemonics in
2790+ button labels.
2791+
2792+ * pinentry/pinentry.h (struct pinentry): Add default_prompt.
2793+ * pinentry/pinentry.c (option_handler): Support "default-prompt".
2794+ (cmd_getpin): Use it.
2795+ (noprefix_strdup): Remove; should be done by caller.
2796+
2797+2010-02-17 Werner Koch <wk@g10code.com>
2798+
2799+ * pinentry/pinentry.h (struct pinentry): Add default_ok and
2800+ default_cancel.
2801+ * pinentry/pinentry.c (noprefix_strdup): New.
2802+ (option_handler): Support "default-ok" and "default-cancel".
2803+ (strcpy_escaped): Change second arg from unsigend char to char.
2804+
2805+2010-02-16 Werner Koch <wk@g10code.com>
2806+
2807+ * qt4/document-encrypt.png, qt4/gtk-cancel.png, qt4/gtk-ok.png: New.
2808+ * qt4/Makefile.am (EXTRA_DIST): Add them.
2809+
2810+2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
2811+
2812+ Also attributed to Marc Mutz <marc@kdab.com>.
2813+
2814+ * qt4/main.cpp, qt/pinentrydialog.cpp: If the style says so,
2815+ set (GTK) icons on OK and Cancel buttons.
2816+
2817+2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
2818+
2819+ * qt4/main.cpp: Use an explicit QMessageBox instead of the
2820+ 'information' convenience method. We do this for two reasons:
2821+ 1. So we can set our own icon (icon()). 2. So we can call our
2822+ raiseWindow() function on it.
2823+
2824+2010-02-15 Christoph Schleifenbaum <christoph@kdab.com>
2825+
2826+ * qt4/main.cpp: Use title. Use Qt translation of "OK" and "Cancel"
2827+
2828+ * qt4/pinentrydialog.cpp: Don't show the question-mark icon in the
2829+ window title.
2830+
2831+2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
2832+
2833+ * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp: Use the
2834+ document-encrypt icon instead of the
2835+ QMessageBox::{Information,Critical} ones.
2836+
2837+2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
2838+
2839+ Also attributed to Marc Mutz <marc@kdab.com>.
2840+
2841+ * qt4/pinentrydialog.cpp: Properly show/hide optional widgets.
2842+
2843+2010-02-15 Christoph Schleifenbaum <christoph@kdab.com>
2844+
2845+ * qt4/pinentrydialog.cpp: Set text color or error label to red.
2846+
2847+2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
2848+
2849+ Also attributed to Marc Mutz <marc@kdab.com>.
2850+
2851+ * qt4/pinentrydialog.cpp: Gather scattered layouting code, use a
2852+ single gridlayout for all, and use QDialogButtonBox.
2853+
2854+2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
2855+
2856+ * qt4/pinentrydialog.cpp: Call SetForegroundWindow on showEvent()
2857+ and set a fixed size on the dialog.
2858+
2859+ * qt4/main.cpp: Set document-encrypt as the window icon.
2860+
2861+2010-02-15 Marc Mutz <marc@kdab.com> (wk)
2862+
2863+ * qt4/main.cpp: Load the correct Qt translation file based on
2864+ either lc_messages or the current locale.
2865+
2866+ * qt4/main.cpp: Use pinentry_t->parent_wid also for message-box
2867+ case.
2868+
2869+ * qt4/main.cpp: Properly delete the QApplication.
2870+
2871+2010-02-15 Christoph Schleifenbaum <christoph@kdab.com> (wk)
2872+
2873+ * qt4/main.cpp: Remove guard clause with impossible condition.
2874+
2875+ * qt4/main.cpp: Respect pinentry_t->title.
2876+
2877+ * qt4/main.cpp: Include config.h.
2878+
2879+2009-12-16 Marcus Brinkmann <marcus@g10code.de>
2880+
2881+ * gtk+-2/gtksecentry.c: Don't translate properties.
2882+ Patch by Guido Guenther <agx@sigxcpu.org>.
2883+
2884+2009-12-02 Werner Koch <wk@g10code.com>
2885+
2886+ * secmem/util.c: Re-indent function names.
2887+ (TEMP_FAILURE_RETRY): Remove because it is non-portable.
2888+ (xwrite): Open code the EINTR retry.
2889+ * pinentry/pinentry-curses.c (dialog_run): Replace '\e' by a
2890+ standard escape. Reported by Wyllys Ingersoll.
2891+
2892+2009-08-10 Marcus Brinkmann <marcus@g10code.de>
2893+
2894+ * pinentry/pinentry.c [!ENABLE_ENHANCED]: Remove option enhanced.
2895+ * pinentry/pinentry.h (struct pinentry) [!ENABLE_ENHANCED]: Remove
2896+ member enhanced.
2897+ * gtk+-2/pinentry-gtk-2.c: New macro.
2898+ (button_clicked, create_window) [!ENABLE_ENHANCED]: Disable code.
2899+ * gtk/pinentry-gtk.c (button_clicked, create_window): Likewise.
2900+ * doc/pinentry.texi (Using pinentry): Comment out enhanced option.
2901+
2902+2009-07-10 Till Adam <till@kdab.com>
2903+
2904+ * qt4/pinentrydialog.cpp (PinEntryDialog): Redesign the dialog to
2905+ be prettier.
2906+
2907+2009-06-19 Marcus Brinkmann <marcus@g10code.de>
2908+
2909+ * configure.ac: Post-release changes.
2910+
2911+ Release version 0.7.6.
2912+
2913+ * configure.ac: Bump version.
2914+
2915+2009-01-29 Bernhard Reiter <bernhard@intevation.de>
2916+
2917+ * doc/pinentry.texi (Using pinentry): Fix typo.
2918+
2919+2009-04-24 Guido Guenther <agx@sigxcpu.org>
2920+
2921+ * gtk+-2/gtksecentry.c (gtk_secure_entry_class_init): Don't
2922+ install "gtk-entry-select-on-focus" settings property since it
2923+ clashes with the one from GtkEntry.
2924+ (gtk_secure_entry_grab_focus): Create a temporary GtkEntry widget
2925+ to read that value instead. Allows to have GtkEntry and
2926+ GtkSecureEntry in the same process.
2927+
2928+2009-06-19 Marcus Brinkmann <marcus@g10code.de>
2929+
2930+ Suggested by Simon McVittie:
2931+ * gtk+-2/gtksecentry.c (g_malloc, g_realloc, g_free): Renamed to
2932+ secentry_malloc, secentry_realloc.
2933+ (g_malloc0): Removed.
2934+ (GMALLOC_SIZE): Move to ...
2935+ * gtk+-2/gtksecentry.h (GMALLOC_SIZE): ... here.
2936+ (secentry_malloc, secentry_realloc, secentry_free): New prototypes.
2937+ * gtk+-2/pinentry-gtk-2.c (main): Set memory allocation vtable.
2938+
2939+2009-05-04 Till Adam <till@kdab.net>
2940+
2941+ * qt4/main.cpp (qt_cmd_handler): Use WId instead of HWND.
2942+
2943+2009-04-14 Marcus Brinkmann <marcus@g10code.de>
2944+
2945+ * pinentry/pinentry.h (struct pinentry): New member NOTOK.
2946+ Rename member USER_CLOSED to CANCELED.
2947+ * pinentry/pinentry.c: Add initializer for NOTOK.
2948+ (register_commands): Add SETNOTOK.
2949+ * pinentry/pinentry-curses.c (STRING_NOTOK): New macro.
2950+ (dialog_pos_t): New value DIALOG_POS_NOTOK.
2951+ (struct dialog): New members notok, notok_x, notok_y.
2952+ (dialog_create): Implement NOTOK.
2953+ (dialog_switch_pos): Likewise.
2954+ (dialog_run): Likewise.
2955+ * gtk+-2/pinentry-gtk-2.c: Rename confirm_yes to confirm_value.
2956+ (confirm_value_t): New type. Use it for confirm_value.
2957+ (window_closed): Remove.
2958+ (confirm_button_clicked): Set confirm_value.
2959+ (create_window): Implement NOTOK.
2960+ (gtk_cmd_handler): Implement cancel behaviour a bit differently.
2961+
2962+2009-04-09 Marcus Brinkmann <marcus@g10code.de>
2963+
2964+ * qt4/qsecurelineedit.h (QSecureLineEdit): Don't export.
2965+
2966+2009-04-06 Marcus Brinkmann <marcus@g10code.de>
2967+
2968+ * configure.ac: Portability fixes.
2969+
2970+2009-04-03 Marcus Brinkmann <marcus@g10code.de>
2971+
2972+ * qt4/Makefile.am (pinentry_qt4_SOURCES): Add qsecurelineedit_p.h.
2973+
2974+ * secmem/Makefile.am (libsecmem_a_SOURCES): Add secmem++.h.
2975+ * qt4/Makefile.am (pinentry_qt4_SOURCES): Add pinentrydialog.moc
2976+ and qsecurelineedit.
2977+
2978+ * configure.ac: Incorporate revision number in version string.
2979+
2980+2009-04-02 Till Adam <till@kdab.net>
2981+
2982+ * qt4/qsecurelineedit.moc, qt4/main.cpp, qt4/pinentrydialog.moc,
2983+ qt4/qsecurelineedit.cpp, qt4/pinentrydialog.cpp,
2984+ qt4/pinentrydialog.h: Implement quality bar and grabbing.
2985+
2986+ * qt4/pinentrydialog.cpp (PinEntryDialog): Enable word wrapping.
2987+
2988+2009-04-03 Marcus Brinkmann <marcus@g10code.de>
2989+
2990+ * qt4/main.cpp (qt_cmd_handler): Cast window handle ID.
2991+
2992+2009-03-19 Werner Koch <wk@g10code.com>
2993+
2994+ * pinentry/pinentry.h (struct pinentry): Add field user_closed.
2995+ * pinentry/pinentry.c (cmd_getpin, cmd_confirm, cmd_message):
2996+ Reset this field.
2997+ (cmd_confirm): Return cancel if the user closed the window.
2998+ * gtk+-2/pinentry-gtk-2.c (window_closed): New.
2999+ (gtk_cmd_handler, delete_event): Set it.
3000+
3001+2009-02-19 Marcus Brinkmann <marcus@g10code.de>
3002+
3003+ * secmem/secmem++.h: New file.
3004+ * qt4/Makefile.am, qt4/main.cpp, qt4/pinentrydialog.cpp,
3005+ qt4/pinentrydialog.h: Changes to use secure memory.
3006+ * qt4/pinentrydialog.moc, qt4/qsecurelineedit.moc: New files.
3007+ * qt4/qsecurelineedit.cpp, qt4/qsecurelineedit.h,
3008+ qt4/qsecurelineedit_p.h, qt4/secstring.h, qt4/secstring.cpp: New
3009+ files.
3010+ Submitted by Marc Mutz <marc@kdab.net>.
3011+
3012+2008-12-08 Werner Koch <wk@g10code.com>
3013+
3014+ * qt/main.cpp (qt_cmd_handler) <!want_pass>: Translate from utf8.
3015+ * qt4/main.cpp (qt_cmd_handler) <!want_pass>: Translate from utf8.
3016+
3017+2008-11-12 Ludovic Rousseau <ludovic.rousseau@gmail.com> (wk)
3018+
3019+ * pinentry/pinentry.h (struct pinentry): Add field TITLE.
3020+ * pinentry/pinentry.c (cmd_settitle): New.
3021+ (register_commands): Add command SETTITLE.
3022+ * gtk+-2/pinentry-gtk-2.c (create_window): Set the title.
3023+
3024+2008-10-17 Werner Koch <wk@g10code.com>
3025+
3026+ * secmem/memory.h: Add C++ extern declaration.
3027+
3028+ * secmem/secmem.c (secmem_get_max_size): New.
3029+
3030+2008-07-25 Marcus Brinkmann <marcus@ulysses.g10code.com>
3031+
3032+ * qt4/Makefile.am (DISTCLEANFILES): Rename to CLEANFILES.
3033+ (BUILD_SOURCES): New.
3034+
3035+2008-07-25 Marcus Brinkmann <marcus@g10code.de>
3036+
3037+ * configure.ac: Prefer pinentry gtk2 over gtk. Now also choose
3038+ qt4 (after qt and before w32 native).
3039+ * README: Document Qt.
3040+
3041+2008-07-24 Marcus Brinkmann <marcus@g10code.de>
3042+
3043+ * qt4/pinentrydialog.h, qt4/pinentrydialog.cpp, qt4/main.cpp,
3044+ qt4/Makefile.am: New files.
3045+ * configure.ac: Add check for Qt4.
3046+ (AC_CONFIG_FILES): Add qt4/Makefile.am.
3047+ * Makefile.am (pinentry_qt4): New variable.
3048+ (SUBDIRS): Add ${pinentry_qt4}.
3049+
3050+2008-07-23 Werner Koch <wk@g10code.com>
3051+
3052+ * secmem/secmem.c (secmem_init): Fix apostrophe in error
3053+ message. Reported by Petr Uzel.
3054+
3055+2008-05-05 Marcus Brinkmann <marcus@ulysses.g10code.com>
3056+
3057+ * gtk+-2/gtksecentry.c (GMALLOC_SIZE): New symbol.
3058+ (g_malloc, g_malloc0, g_realloc): Use GMALLOC_SIZE instead of
3059+ gulong for size attribute.
3060+
3061+2008-03-03 Marcus Brinkmann <marcus@g10code.de>
3062+
3063+ * gtk+-2/pinentry-gtk-2.c (create_window): Install realize callback.
3064+ (ungrab_keyboard): Unmake dialog transient.
3065+ (make_transient): New function.
3066+ Submitted by Joachim Breitner.
3067+
3068+2008-02-15 Werner Koch <wk@g10code.com>
3069+
3070+ Release 0.7.4.
3071+
3072+2008-02-14 Werner Koch <wk@g10code.com>
3073+
3074+ * configure.ac: Check for -Wno-pointer-sign.
3075+
3076+ * pinentry/pinentry.c (cmd_getinfo): New.
3077+ (register_commands): Register it.
3078+
3079+2008-01-02 Marcus Brinkmann <marcus@g10code.de>
3080+
3081+ * configure.ac: Use PKG_CONFIG instead of PKGCONFIG and
3082+ pkg-config. Use AC_PATH_PROG instead of AC_CHECK_PROG.
3083+
3084+ * Makefile.am (install-exec-local): Add exe extension to link.
3085+
3086+2007-11-29 Marcus Brinkmann <marcus@g10code.de>
3087+
3088+ Released 0.7.4.
3089+
3090+2007-11-19 Werner Koch <wk@g10code.com>
3091+
3092+ * doc/pinentry.texi (Protocol): Typo fixes by Bernhard Herzog.
3093+ Describe SETQUALITYBAR_TT.
3094+
3095+2007-11-19 Bernhard Herzog <bernhard.herzog@intevation.de> (wk)
3096+
3097+ * qt/pinentrydialog.cpp (PinEntryDialog): Fixed crash
3098+
3099+2007-11-19 Werner Koch <wk@g10code.com>
3100+
3101+ * gtk+-2/pinentry-gtk-2.c (create_window): Use again map-event and
3102+ unmap-event as this works on my setup far more reliable than
3103+ expose-event/no-expose-event.
3104+
3105+ * gtk+-2/gtksecentry.c (get_cursor_time): s/time/blinktime/ t
3106+ avoid shadowing warning.
3107+
3108+ * pinentry/pinentry.h (struct pinentry): Change QUALITY_BAR to a
3109+ char ptr.
3110+ (struct pinentry): Add QUALITY_BAR_TT.
3111+ * pinentry/pinentry.c (cmd_setqualitybar): Allow to set a label text.
3112+ (cmd_setqualitybar_tt): New.
3113+ * gtk+-2/pinentry-gtk-2.c (create_window): Take label and tooltip
3114+ from global.
3115+ * qt/pinentrydialog.h (setQualityBar, setQualityBarTT)
3116+ (_quality_bar_label): New.
3117+ * qt/pinentrydialog.cpp (setQualityBar, setQualityBarTT): New.
3118+ (PinEntryDialog): Remove setting of tooltip.
3119+
3120+ * qt/main.cpp (qt_cmd_handler): Propagate quality bar label and tootip.
3121+
3122+2007-11-19 Bernhard Herzog <bernhard.herzog@intevation.de> (wk)
3123+
3124+ * qt/pinentrydialog.cpp (PinEntryDialog): Move the quality bar
3125+ below the text entry and align them properly. Show a tooltip.
3126+ * gtk+-2/pinentry-gtk-2.c (create_window): Ditto. Don't let it
3127+ change its height.
3128+ (QUALITYBAR_EMPTY_TEXT): New.
3129+
3130+2007-09-18 Werner Koch <wk@g10code.com>
3131+
3132+ * qt/secqlineedit.h (SecQLineEdit): New signal textModified.
3133+ * qt/secqlineedit.cpp (finishChange): Emit it.
3134+ * qt/pinentrydialog.cpp (setPinentryInfo): New.
3135+ (PinEntryDialog): Add arg ENABLE_QUALITY_BAR.
3136+ * qt/pinentrydialog.h (setPinentryInfo): New.
3137+ (PinEntryDialog): Add arg ENABLE_QUALITY_BAR.
3138+
3139+ * pinentry/pinentry.h (struct pinentry): Add member QUALITY_BAR
3140+ and CTX_ASSUAN.
3141+ * pinentry/pinentry.c (cmd_setqualitybar): New.
3142+ (copy_and_escape): New.
3143+ (pinentry_inq_quality): New.
3144+
3145+2007-07-09 Werner Koch <wk@g10code.com>
3146+
3147+ * doc/pinentry.texi: Fixed direntry syntax.
3148+
3149+ * configure.ac: Add --without-libcap. From the Gentoo patch archive.
3150+
3151+ * gtk+-2/pinentry-gtk-2.c (create_window): Use expose-event
3152+ instead of map-event. From Alon Bar-Lev.
3153+
3154+2007-07-06 Werner Koch <wk@g10code.com>
3155+
3156+ Released 0.7.3.
3157+
3158+ * config.sub, config.guess: Updated from current Savannah CVS.
3159+
3160+2007-06-27 Werner Koch <wk@g10code.com>
3161+
3162+ * w32/main.c: Revamped the SetFocus stuff. It is all not that easy.
3163+
3164+2007-06-26 Werner Koch <wk@g10code.com>
3165+
3166+ * w32/Makefile.am (pinentry_w32_LDFLAGS): Add -mconsole again.
3167+
3168+ * w32/main.c (dlg_proc): Set focus.
3169+ (resize_button): New. No code yet.
3170+ (dlg_proc): Call it for the buttons.
3171+ (w32_cmd_handler): Restore old foreground window.
3172+
3173+2007-06-20 Werner Koch <wk@g10code.com>
3174+
3175+ * w32/Makefile.am (pinentry_w32_LDFLAGS): Remove -mconsole.
3176+
3177+ * w32/main.c (wchar_to_utf8): New.
3178+ (ok_button_clicked): Use it.
3179+ (utf8_to_wchar): New.
3180+ (set_dlg_item_text): New.
3181+ (dlg_proc): Use new function so that we are able to correctly
3182+ display all prompts.
3183+ (main): Load LockSetForegroundWindow.
3184+ (dlg_proc): Call LockSetForegroundWindow via its fnc ptr.
3185+ (center_window): New. Taken from GPGol.
3186+ (dlg_proc): Call it.
3187+ (w32_cmd_handler): Revamped the confirm mode.
3188+
3189+2007-06-18 Werner Koch <wk@g10code.com>
3190+
3191+ * w32/main.c (dlg_proc): Call LockSetForegroundWindow.
3192+
3193+ * Makefile.am (signed-dist, %.sig): Remove.
3194+
3195+ * autogen.sh: Modernized.
3196+
3197+2007-05-10 Marcus Brinkmann <marcus@g10code.de>
3198+
3199+ * pinentry/pinentry.h (pinentry_color_t): New type.
3200+ (struct pinentry): New members COLOR_FG, COLOR_FG_BRIGHT,
3201+ COLOR_BG, COLOR_SO.
3202+ * pinentry/pinentry.c (pinentry_parse_opts): Support new option --colors.
3203+ (parse_color): New function.
3204+ * pinentry/pinentry-curses.c (USE_COLORS): New macro.
3205+ (pinentry_color): New static variable.
3206+ (dialog_create): Redo color management.
3207+
3208+ * pinentry/pinentry-curses.c (dialog_create): Re-add calculation
3209+ of cancel button position. Adjust calculation of OK button
3210+ position if it is the only one used.
3211+
3212+2007-04-13 Marcus Brinkmann <marcus@g10code.de>
3213+
3214+ * qt/secqlineedit.h (SecQLineEdit::contextMenuEvent,
3215+ SecQLineEdit::createPopupMenu): Remove prototype.
3216+ * qt/secqlineedit.cpp (SecQLineEdit::contextMenuEvent,
3217+ SecQLineEdit::createPopupMenu): Remove implementation.
3218+ Submitted by Tobias Koenig <tokoe@kde.org>.
3219+
3220+2007-02-14 Werner Koch <wk@g10code.com>
3221+
3222+ * pinentry/pinentry.h (struct pinentry): Add TOUCH_FILE.
3223+ * pinentry/pinentry.c (option_handler): New option "touch-file".
3224+ (pinentry_have_display): Ignore an empty DISPLAY.
3225+ * pinentry/pinentry-curses.c (do_touch_file): New.
3226+ (curses_cmd_handler): Call it.
3227+ * configure.ac: Check for utime.h.
3228+
3229+2007-01-24 Werner Koch <wk@g10code.com>
3230+
3231+ * pinentry/pinentry.c (cmd_message): New.
3232+ (cmd_confirm): New command option --one-button.
3233+ (cmd_getpin): Zeroise ONE_BUTTON.
3234+ * pinentry/pinentry.h (struct pinentry): Add field ONE_BUTTON.
3235+ * gtk/pinentry-gtk.c (create_window): Take care of new option.
3236+ * gtk+-2/pinentry-gtk-2.c (create_window): Ditto.
3237+ * pinentry/pinentry-curses.c (dialog_create): Ditto.
3238+ (dialog_create, dialog_switch_pos): Allow CANCEL to be optional.
3239+
3240+2006-07-29 Marcus Brinkmann <marcus@g10code.de>
3241+
3242+ * secmem/secmem.c (init_pool): Close FD after establishing the
3243+ mapping.
3244+
3245+2005-09-28 Marcus Brinkmann <marcus@g10code.de>
3246+
3247+ * configure.ac (PINENTRY_GTK): Error out if iconv is not found but
3248+ needed.
3249+
3250+ * config.rpath: New file from gettext. Needed by iconv.m4.
3251+
3252+2005-07-11 Marcus Brinkmann <marcus@g10code.de>
3253+
3254+ * pinentry/pinentry-curses.c (dialog_switch_pos): Set the cursor
3255+ state to invisible before moving around. Move the cursor to the
3256+ beginning of the dialog buttons for accessibility.
3257+
3258+2005-06-16 Marcus Brinkmann <marcus@g10code.de>
3259+
3260+ * pinentry/pinentry-curses.c (dialog_run): Only convert pin if a
3261+ pin actually exists.
3262+
3263+2005-01-27 Werner Koch <wk@g10code.com>
3264+
3265+ Released 0.7.2.
3266+
3267+ * gtk+-2/Makefile.am: Removed padlock-keyhole.xpm.
3268+
3269+ * configure.ac: Use AC_GNU_SOURCE instead of the custom define.
3270+ Prefer gtk2 pinentry over qt.
3271+
3272+2005-01-21 Marcus Brinkmann <marcus@g10code.de>
3273+
3274+ * doc/pinentry.texi: Fix spelling errors.
3275+ Submitted by Ville Skyttä.
3276+
3277+2004-12-23 Werner Koch <wk@g10code.com>
3278+
3279+ * w32/pinentry-w32.rc: Remove the default texts for description,
3280+ prompt and error. Make it system modal. Enlarge the description
3281+ field.
3282+
3283+2004-12-22 Timo Schulz <twoaday@g10code.com>
3284+
3285+ * w32/main.c: Remove all helper functions and use a callback
3286+ to set the dialog items directly.
3287+ (dlg_proc): Set 'result' to -1 to indicate cancel.
3288+ (ok_button_clicked): Adjusted. Set 'result' to the len of
3289+ the PIN to indicate success.
3290+
3291+2004-12-22 Werner Koch <wk@g10code.com>
3292+
3293+ * w32/main.c: Simplified.
3294+ * w32/dialog.h, w32/dialog.c, w32/controller.h, w32/controller.c:
3295+ Removed
3296+
3297+ * w32/resource.h, w32/pinentry-w32.rc, w32/main.c, w32/dialog.h
3298+ * w32/dialog.c, w32/controller.h, w32/controller.c
3299+ * w32/Makefile.am: New. Based on Timo's work.
3300+
3301+ Update to automake 1.9.
3302+
3303+ * autogen.sh (configure_ac): Add --build-w32 option.
3304+ * Makefile.am: Support for the W32 pinentry.
3305+ * configure.ac: Ditto. Reformatted some error messages.
3306+ Define the usual conditionals for W32.
3307+ Check for a couple of more usually required headers.
3308+
3309+ * pinentry/pinentry.h (sleep) [W32]: New.
3310+
3311+ * pinentry/pinentry.c: Include langinfo.h only if available.
3312+ (pinentry_loop) [DOSISH]: Don't do uid check.
3313+
3314+ * secmem/util.c [DOSISH]: Disable UID stuff.
3315+
3316+2004-09-27 Marcus Brinkmann <marcus@g10code.de>
3317+
3318+ * acinclude.m4 (IU_LIB_NCURSES, IU_LIB_CURSES, IU_LIB_TERMCAP):
3319+ Moved to m4/curses.m4.
3320+ (AM_ICONV): Moved to m4/iconv.m4.
3321+ (AM_PATH_GLIB): Moved to m4/glib.m4.
3322+ (QT_FIND_FILE, QT_PATH_MOC, QT_PATH_X, QT_PRINT_PROGRAM,
3323+ QT_CHECK_VERSION, QT_PATH_1_3, QT_PATH, QT_CHECK_COMPILER_FLAG,
3324+ QT_REMOVE_FORBIDDEN, QT_VALIDIFY_CXXFLAGS, QT_CHECK_COMPILERS,
3325+ QT_CHECK_RPATH, QT_CHECK_LIBPTHREAD, QT_CHECK_PTHREAD_OPTION,
3326+ QT_CHECK_THREADING): Move to m4/qt.m4.
3327+
3328+2004-09-21 Marcus Brinkmann <marcus@g10code.de>
3329+
3330+ * qt/Makefile.am (pinentry_qt_LDFLAGS): Add $(QT_RPATH).
3331+ Requested by Leo Savernik <l.savernik@aon.at>.
3332+
3333+2004-09-02 Marcus Brinkmann <marcus@g10code.de>
3334+
3335+ * gtk+-2/padlock-keyhole.xpm: File removed.
3336+ * gtk+-2/pinentry-gtk-2.c (create_window): Use stock icon.
3337+ * gtk+-2/gtksecentry.h, gtk+-2/gtksecentry.c: Fix copyright notice.
3338+
3339+ Submitted by Albrecht Dress albrecht.dress@arcor.de.
3340+
3341+2004-08-17 Marcus Brinkmann <marcus@g10code.de>
3342+
3343+ * configure.ac: Invoke AC_PROG_LN_S.
3344+ (PINENTRY_DEFAULT): New variable. Substitute it. Fail if no
3345+ default can be determined.
3346+ * Makefile.am (install-exec-local): Install pinentry default link.
3347+
3348+ * configure.ac: Check for Gtk+-2.
3349+ * gtk+-2: New directory with gtk+-2 pinentry.
3350+ * gtk+-2/Makefile.am, gtk+-2/gtksecentry.h, gtk+-2/gtksecentry.c,
3351+ gtk+-2/pinentry-gtk-2.c, gtk+-2/padlock-keyhole.xpm: New files.
3352+ * Makefile.am (pinentry_gtk_2): New variable.
3353+ (SUBDIRS): Add pinentry_gtk_2.
3354+
3355+ Submitted by Albrecht Dress albrecht.dress@arcor.de.
3356+
3357+2004-08-04 Werner Koch <wk@g10code.de>
3358+
3359+ * pinentry/pinentry.c (usage): Print help to stdout.
3360+
3361+2004-07-30 Moritz Schulte <moritz@g10code.com>
3362+
3363+ * qt/Makefile.am (ncurses_include): Removed
3364+ -I$(top_srcdir)/pinentry ...
3365+ (AM_CPPFLAGS): ... added: -I$(top_srcdir)/pinentry. Thanks to
3366+ Peter Eisentraut.
3367+
3368+ * pinentry/pinentry.c (pinentry_utf8_to_local): Declare INPUT
3369+ const.
3370+ (pinentry_local_to_utf8): Likewise.
3371+ (pinentry_utf8_to_local, pinentry_local_to_utf8): Compile only, if
3372+ either Curses or GTK+ support is enabled.
3373+ * configure.ac: Do also check for libiconv when the GTK+ version
3374+ of pinentry is to be build. Define PINENTRY_CURSES, PINENTRY_GTK,
3375+ PINENTRY_QT depending on which versions of pinentry should be
3376+ build.
3377+
3378+2004-05-21 Marcus Brinkmann <marcus@g10code.de>
3379+
3380+ * acinclude.m4 (QT_CHECK_DIRECT): Removed.
3381+ (QT_PATH_1_3): Do never invoke QT_CHECK_DIRECT.
3382+
3383+2004-04-21 Werner Koch <wk@gnupg.org>
3384+
3385+ Released 0.7.1.
3386+
3387+2004-04-20 Werner Koch <wk@gnupg.org>
3388+
3389+ * secmem/secmem.c [!ORIGINAL_GPG_VERSION]: Include util.h for some
3390+ typedefs and protos.
3391+ (secmem_free, secmem_term): Use wipememory2 instead of memset.
3392+
3393+ * autogen.sh (configure_ac): Fixed version check (s/==/=/).
3394+
3395+2004-04-02 Thomas Schwinge <schwinge@nic-nac-project.de>
3396+
3397+ * autogen.sh: Added ACLOCAL_FLAGS.
3398+
3399+2004-02-23 Marcus Brinkmann <marcus@g10code.de>
3400+
3401+ * qt/main.cpp: Include "pinentry.h", not <pinentry.h>.
3402+
3403+2004-01-30 Werner Koch <wk@gnupg.org>
3404+
3405+ * configure.ac (fopencookie): Remove that test.
3406+
3407+2004-01-28 Moritz Schulte <mo@g10code.com>
3408+
3409+ * gtk/gtksecentry.c:
3410+ (gtk_secure_entry_key_press): Treat GDK_KP_Enter just like
3411+ GDK_Return.
3412+
3413+2004-01-18 Marcus Brinkmann <marcus@g10code.de>
3414+
3415+ * qt/secqstring.cpp: Do not include "private/qunicodetables_p.h".
3416+ (isRightToLeft): De-optimize direction query.
3417+
3418+ * qt/secqinternal_p.h, qt/secqinternal.cpp: New files.
3419+ * qt/Makefile.am (pinentry_qt_SOURCES): Add secqinternal_p.h
3420+ and secqinternal.cpp.
3421+ (EXTRA_DIST): Add README.SecQ.
3422+ * qt/secqlineedit.cpp: Include "secqinternal_p.h".
3423+ (drawContents): Use SecQSharedDoubleBuffer.
3424+
3425+2004-01-02 Werner Koch <wk@gnupg.org>
3426+
3427+ * configure.ac: Early check for a c++ compiler.
3428+
3429+2003-12-23 Werner Koch <wk@gnupg.org>
3430+
3431+ Released 0.7.0.
3432+
3433+ Added Manifest files to all directories.
3434+
3435+2003-12-22 Werner Koch <wk@gnupg.org>
3436+
3437+ * qt/main.cpp: Include errno.h.
3438+ (main): Translate the --display option to -display, so that the Qt
3439+ init code can grasp it.
3440+
3441+ * doc/ChangeLog: Removed and merged with this file.
3442+ * doc/pinentry.texi: Cleaned up.
3443+ * doc/fdl.texi: Removed.
3444+
3445+ * pinentry/pinentry.h (struct pinentry): Added LOCALE_ERR.
3446+ * gtk/pinentry-gtk.c (button_clicked): Set the LOCAE_ERR flag.
3447+ * pinentry/pinentry-curses.c (dialog_run): Ditto.
3448+ * pinentry/pinentry.c (cmd_getpin, cmd_confirm): Check this flag.
3449+ (pinentry_local_to_utf8): Release the correct buffer in the error
3450+ case. Print diagnostics.
3451+ (pinentry_utf8_to_local): Print diagnostics.
3452+ (pinentry_parse_opts): Make short options work.
3453+ (pinentry_utf8_to_local): Pass nl_langinfo to iconv_open.
3454+
3455+ * gtk/pinentry-gtk.c (button_clicked): Use the right value as
3456+ input for the conversion.
3457+
3458+ * pinentry/pinentry.c: New variable THIS_PGMNAME.
3459+ (pinentry_init): Add arg PGMNAME and store it. Use it at all
3460+ marked placed instead of the constant "pinentry".
3461+ (usage): Use it here too.
3462+ * curses/pinentry-curses.c (main): Call pinentry_init with our name.
3463+ * qt/main.cpp (main): Ditto.
3464+ * gtk/pinentry-gtk.c (main): Ditto.
3465+
3466+ * configure.ac: Check for mmap.
3467+
3468+ * secmem/util.h (wipememory2,wipememory,wipe): New.
3469+ * secmem/util.c (wipe): Removed.
3470+ * secmem/util.c (lower_privs, raise_privs): Commented out.
3471+
3472+ * pinentry/pinentry.c (pinentry_loop): Add paranoia check for
3473+ dropped privs.
3474+
3475+ * secmem/secmem.c (lock_pool): Cleanup syntax of cpp directives.
3476+
3477+ * gtk/pinentry-gtk.c (main): Print package name in the version line.
3478+ * curses/pinentry-curses.c (main): Ditto.
3479+ * qt/main.cpp (main): Ditto. Fixed typo.
3480+
3481+ * gtk/pinentry-gtk.c: Include memory.h.
3482+
3483+2003-12-20 Marcus Brinkmann <marcus@g10code.de>
3484+
3485+ * pinentry/pinentry.h (struct pinentry): New member PARENT_WID.
3486+ * pinentry/pinentry.c (pinentry): Add new member here.
3487+ (usage): Add --parent-wid.
3488+ (pinentry_parse_opts): Add case for "parent-wid".
3489+ (option_handler): Same here.
3490+
3491+2003-12-19 Marcus Brinkmann <marcus@g10code.de>
3492+
3493+ * pinentry/pinentry.c (cmd_setcancel): Use strcpy_escaped.
3494+ (cmd_setok): Likewise.
3495+ (cmd_setprompt): Likewise.
3496+ (pinentry_utf8_to_local): Don't use
3497+ nl_langinfo, but just lc_ctype directly.
3498+ * pinentry/pinentry.c (cmd_getpin): Do not convert passphrase to
3499+ UTF-8 here.
3500+ * gtk/pinentry-gtk.c (button_clicked): Convert passphrase to UTF8
3501+ here.
3502+ * pinentry/pinentry-curses.c (dialog_run): Likewise.
3503+
3504+2003-12-14 Marcus Brinkmann <marcus@g10code.de>
3505+
3506+ * pinentry/pinentry.c (pinentry_init): Register secmem_term as
3507+ atexit function. Set assuan malloc hooks to secmem.
3508+ (pinentry_parse_opts): Add break statement to silence gcc warning.
3509+ * pinentry/pinentry.c (cmd_getpin): If canceled, release and clear
3510+ PINENTRY->pin nevertheless.
3511+
3512+ * acinclude.m4 (qt_incdirs): Add /usr/include/qt3.
3513+ * qt/Makefile.am (pinentry_qt_SOURCES): Remove cppmemory.h,
3514+ cppmemory.cpp, pinentrycontroller.h, pinentrycontroller.cpp.
3515+ (nodist_pinentry_qt_SOURCES): Remove pinentrycontroller.moc.cpp.
3516+ (libcurses): Move ../pinentry/libpinentry.a from here to ...
3517+ (pinentry_qt_LDADD): ... here. Change order a bit to make it
3518+ work.
3519+ * qt/cppmemory.h, qt/cppmemory.cpp, qt/pinentrycontroller.h,
3520+ qt/pinentrycontroller.cpp: Files removed.
3521+ * qt/secqstring.h, qt/secqstring.cpp, secqlineedit.h,
3522+ secqlineedit.cpp: New files.
3523+ * qt/Makefile.am (pinentry_qt_SOURCES): Add secqstring.h,
3524+ secqstring.cpp, secqlineedit.h, and secqlineedit.cpp.
3525+ (nodist_pinentry_qt_SOURCES): Add secqlineedit.moc.cpp.
3526+ * qt/main.cpp: Do not include "memory.h" or "secmem-util.h", nor
3527+ <new> or "pinentrycontroller.h". Include <qapplication.h>,
3528+ <qmessagebox.h>, <qwidget.h> and "secqstring.h". Always include
3529+ <pinentry.h>.
3530+ [USE_KDE]: Remove all instances.
3531+ (curses_main): Function removed.
3532+ (my_new_handler): Likewise.
3533+ (qt_main): Likewise.
3534+ (qt_cmd_handler): New function.
3535+ (pinentry_cmd_handler): Define always (to qt_cmd_handler).
3536+ (main): Rewritten.
3537+ * qt/pinentrydialog.cpp: Do not include <qlineedit.h>, but
3538+ "secqlineedit.h".
3539+ (PinEntryDialog::PinEntryDialog): Make _edit a SecQLineEdit
3540+ object. Connect accepted SIGNAL to accept SLOT, and rejected
3541+ SIGNAL to reject SLOT.
3542+ (PinEntryDialog::setText): Make argument SecQString rather than
3543+ QString.
3544+ (PinEntryDialog::text): Likewise for return value.
3545+ * qt/pinentrydialog.h: Declare SecQString and SecQLineEdit classes.
3546+ (class PinEntryDialog): Disable property text (for now). Adjust
3547+ argument of setText and return value of text, as well as type of
3548+ _edit.
3549+
3550+2003-12-09 Werner Koch <wk@gnupg.org>
3551+
3552+ * README.CVS: New.
3553+ * Makefile.am (EXTRA_DIST): Add README.CVS
3554+ (ACLOCAL_AMFLAGS): New.
3555+ * configure.ac: Added min_automake_versions.
3556+ * autogen.sh: Revamped.
3557+
3558+2003-04-23 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
3559+
3560+ * configure.ac: Version 0.6.10-cvs
3561+
3562+2003-04-23 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
3563+
3564+ * configure.ac: Version 0.6.9
3565+ * qt/Makefile.am: Added moc files to DISTCLEANFILES
3566+ * qt/pinentrycontroller.cpp: Dont spew assuan debug stuff out on stderr.
3567+
3568+2003-03-26 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
3569+
3570+ * qt/cppmemory.cpp, qt/main.cpp: Only override array allocation
3571+ operators. This should take care of the reported memory-problems
3572+ and even make pinentry-qt use a bit less memory.
3573+
3574+2003-02-15 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
3575+
3576+ * qt/pinentrydialog.h, qt/pinentrydialog.cpp: Added icons
3577+ for error/non-error messages.
3578+
3579+2003-02-07 Marcus Brinkmann <marcus@g10code.de>
3580+
3581+ Released 0.6.8.
3582+
3583+2003-02-04 Steffen Hansen <steffen@klaralvdalens-datakonsult.se>
3584+
3585+ * qt/main.cpp: Work around '--display' option. This fixes
3586+ the pinentry-qt problem reported by several people lately.
3587+
3588+2003-01-24 Werner Koch <wk@gnupg.org>
3589+
3590+ * autogen.sh: Print a hint to use maintainer mode.
3591+
3592+2002-12-24 Marcus Brinkmann <marcus@g10code.de>
3593+
3594+ * pinentry/pinentry-curses.c (collect_line): New function.
3595+ (COPY_OUT, MAKE_BUTTON): New macros.
3596+ (dialog_create): Rewrite the initializing code and the description
3597+ calculation routine with word wrapping.
3598+
3599+2002-11-20 Werner Koch <wk@gnupg.org>
3600+
3601+ Released 0.6.7.
3602+
3603+ * pinentry/pinentry-curses.c (dialog_create): Better truncate
3604+ lines than to go into an infinite loop. We need to implement word
3605+ wrap.
3606+ (dialog_run): Add DIALOG_POS_NONE to switch so prevent a warning.
3607+
3608+2002-11-12 Werner Koch <wk@gnupg.org>
3609+
3610+ * config.sub, config.guess: Updated from ftp.gnu.org/gnu/config
3611+ to version 2002-11-08.
3612+
3613+2002-11-09 Werner Koch <wk@gnupg.org>
3614+
3615+ Released 0.6.6.
3616+
3617+2002-11-08 Werner Koch <wk@gnupg.org>
3618+
3619+ * pinentry/pinentry-curses.c (convert_utf8_string): Renamed to
3620+ * pinentry/pinentry.c (pinentry_utf8_to_local): this. Changed
3621+ callers.
3622+ (pinentry_local_to_utf8): New.
3623+ (cmd_getpin): Convert result back to UTF-8.
3624+ * gtk/pinentry-gtk.c (create_utf8_label): New.
3625+ (create_window): Use it here to set the prompts.
3626+
3627+2002-11-06 Werner Koch <wk@gnupg.org>
3628+
3629+ * pinentry/pinentry-curses.c (dialog_run): Fixed retrun value tests
3630+ for fopen.
3631+
3632+2002-11-05 Werner Koch <wk@gnupg.org>
3633+
3634+ * secmem/util.c (init_uids): Make it a prototype.
3635+
3636+ * gtk/pinentry-gtk.c (enter_callback): Changed argument name to
3637+ avoid shadowing warning.
3638+ (create_window): Removed unused variable I.
3639+ (ok): Not used, commented.
3640+
3641+ * pinentry/pinentry.c: Include headers for getpid and sleep
3642+ prototypes.
3643+
3644+ * secmem/util.h: Correctly declare functions taking no args.
3645+
3646+ * gtk/pinentry-gtk.c: Move gtk headers to the top to avoid
3647+ compiler warnings about shadowing index etc.
3648+
3649+ * curses/pinentry-curses.c: Include stdio.h for the printf prototype.
3650+
3651+ * pinentry/pinentry-curses.c (dialog_switch_pos): Return a value.
3652+
3653+ * pinentry/pinentry.c (pinentry_have_display): New.
3654+ (pinentry_setbufferlen): Must return a value. Fixed documentation.
3655+ (usage): Print a question mark as a substitue for the program name.
3656+
3657+ * gtk/pinentry-gtk.c (main): use it here instead of getenv().
3658+ * qt/main.cpp (main): Ditto.
3659+
3660+2002-10-11 Werner Koch <wk@gnupg.org>
3661+
3662+ * configure.ac, Makefile.am: Added doc/ and tests for makeinfo
3663+
3664+ * doc/pinentry.texi, doc/Makefile.am: New.
3665+ * doc/gpl.texi, doc/fdl.texi: Added these standard files.
3666+
3667+2002-09-30 Werner Koch <wk@gnupg.org>
3668+
3669+ Released 0.6.5.
3670+
3671+ * qt/pinentrycontroller.cpp (optionHandler): Make sure that a
3672+ value is returned.
3673+ * configure.ac: Use -Wall also for C++.
3674+
3675+2002-08-19 Steffen Hansen <steffen@hrhansen.dk>
3676+
3677+ * Relased 0.6.4.
3678+
3679+2002-08-11 Steffen Hansen <steffen@hrhansen.dk>
3680+
3681+ * Adapted pinentry-qt to new CONFIRM spec.
3682+
3683+2002-06-26 Werner Koch <wk@gnupg.org>
3684+
3685+ Release 0.6.3.
3686+
3687+2002-05-24 Werner Koch <wk@gnupg.org>
3688+
3689+ * AUTHORS: Added Marcus
3690+ * README: Fixed spelling of Quintuple-Agent.
3691+
3692+2002-05-13 Marcus Brinkmann <marcus@g10code.de>
3693+
3694+ Released 0.6.2.
3695+
3696+ * configure.ac: Set version number to 0.6.2.
3697+ * NEWS: Add information for 0.6.2.
3698+ * README: Update for release.
3699+
3700+2002-05-09 Marcus Brinkmann <marcus@g10code.de>
3701+
3702+ * configure.ac: Add option --enable-fallback-curses and bind it to
3703+ the ncurses check. Add automake conditional
3704+ BUILD_LIBPINENTRY_CURSES and FALLBACK_CURSES. Add preprocessor
3705+ symbol FALLBACK_CURSES.
3706+
3707+ * curses/Makefile.am (AM_CPPFLAGS): Add $(NCURSES_INCLUDE).
3708+ (LDADD): Add ../pinentry/libpinentry-curses.a.
3709+ * curses/pinentry-curses.c: Include "pinentry-curses.h".
3710+ Moved most of the meat to ...
3711+ * pinentry/pinentry-curses.c: ... here. New file. Make all
3712+ functions and global variables static.
3713+ (dialog_cmd_handler): Rename to ...
3714+ (curses_cmd_handler): ... this.
3715+ * pinentry/pinentry-curses.h: New file.
3716+ * pinentry/Makefile.am (noinst_LIBRARIES)
3717+ [BUILD_LIBPINENTRY_CURSES]: Add libpinentry-curses.a.
3718+ (libpinentry_curses_a_SOURCES): New target.
3719+
3720+ * gtk/Makefile.am (INCLUDES): Moved all to ...
3721+ (AM_CPPFLAGS): ... here.
3722+ [CURSES_FALLBACK]: Define ncurses_include and libcurses.
3723+ (AM_CPPFLAGS): Add $(ncurses_include).
3724+ (LDADD): Add $(libcurses).
3725+ * gtk/pinentry-gtk.c: Rename TIMEOUT to TIME_OUT to avoid conflict
3726+ with curses.h.
3727+ [CURSES_FALLBACK]: Include "pinentry-curses.h".
3728+ (button_clicked): Likewise.
3729+ (create_window): Likewise.
3730+ (cmd_handler): Renamed to ...
3731+ (gtk_cmd_handler): ... this.
3732+ (pinentry_cmd_handler): Set to gtk_cmd_handler.
3733+ (main) [CURSES_FALLBACK]: Initialize GTK+ only if environment
3734+ variable DISPLAY is set, otherwise fall back to curses dialog.
3735+
3736+ * pinentry/pinentry.h: Protect against multiple inclusion.
3737+
3738+2002-05-09 Marcus Brinkmann <marcus@g10code.de>
3739+
3740+ * curses/pinentry-curses.c (dialog_create): Allow multi-line error
3741+ texts.
3742+
3743+ * pinentry/pinentry.c (cmd_seterror): Call strcpy_escaped, rather
3744+ than strcpy, to allow percent-escaping the error text.
3745+
3746+2002-04-25 Steffen Hansen <steffen@hrhansen.dk>
3747+
3748+ * pinentry-qt: Use ok and cancel value if
3749+ provided.
3750+
3751+2002-04-25 Marcus Brinkmann <marcus@g10code.de>
3752+
3753+ * gtk/pinentry-gtk.c (create_window): Use ok and cancel value if
3754+ provided.
3755+
3756+2002-04-25 Marcus Brinkmann <marcus@g10code.de>
3757+
3758+ * qt/pinentrycontroller.h: New members _ok and _cancel.
3759+ * qt/pinentrycontroller.cpp (registerCommands): Add SETOK and SETCANCEL.
3760+ (assuanOk): New method.
3761+ (assuanCancel): Likewise.
3762+
3763+2002-04-25 Marcus Brinkmann <marcus@g10code.de>
3764+
3765+ * curses/pinentry-curses.c (dialog_create): Grok the new ok and
3766+ cancel members to set the pbutton texts, rather than parsing the
3767+ prompt in the confirm case.
3768+
3769+ * pinentry/pinentry.h (struct pinentry): Add new members ok and cancel.
3770+ * pinentry/pinentry.c (register_commands): Add new commands SETOK
3771+ and SETCANCEL to set button texts.
3772+ (struct pinentry pinentry): Add initializers for new members.
3773+ (cmd_setok): New function.
3774+ (cmd_setcancel): Likewise.
3775+
3776+2002-04-24 Marcus Brinkmann <marcus@g10code.de>
3777+
3778+ * curses/pinentry-curses.c (dialog_create): Add '<' and '>' around
3779+ the user provided button texts. Replace sizeof by strlen to fix
3780+ size calculation of ok and cancel button.
3781+
3782+2002-04-23 Marcus Brinkmann <marcus@g10code.de>
3783+
3784+ * pinentry/pinentry.h (struct pinentry): New variables lc_ctype
3785+ and lc_messages.
3786+ * pinentry/pinentry.c (usage): New options --lc-ctype and
3787+ --lc-messages.
3788+ (pinentry_parse_opts): Likewise.
3789+ (option_handler): Likewise.
3790+ (struct pinentry pinentry): New initializers for new members.
3791+
3792+ * curses/pinentry-curses.c (convert_utf8_string): New function.
3793+ (struct dialog): New members ok and cancel.
3794+ (dialog_create): New variables ERR, DESCRIPTION, ERROR, PROMPT,
3795+ OK, and CANCEL. Initialize them with the localised versions of
3796+ the pinentry strings. If in confirm mode, split up the prompt at
3797+ '|' and use the values as button texts. Use localised strings.
3798+ (dialog_switch_pos): Use localised strings.
3799+ (dialog_run): Free dialog strings.
3800+
3801+ * acinclude.m4 (AM_ICONV): New check from gettext.
3802+ * configure.ac: Run AM_ICONV if curses pinentry is build.
3803+ Don't check for inttypes.h, don't check size of unsigned int or
3804+ unsigned long.
3805+ (LIBCAP): Move check to interface independent part.
3806+
3807+2002-04-21 Steffen Hansen <steffen@hrhansen.dk>
3808+
3809+ * Removed X11 dependency and use Qt for grabbing the keyboard.
3810+ * Clear the lineedit before asking the user for the PIN.
3811+
3812+2002-04-12 Steffen Hansen <steffen@hrhansen.dk>
3813+
3814+ * Enable pinentry-qt if Qt is found
3815+
3816+2002-04-06 Marcus Brinkmann <marcus@g10code.de>
3817+
3818+ * qt: New directory.
3819+ * qt/Makefile.am, qt/cppmemory.cpp, qt/main.cpp,
3820+ pinentrycontroller.cpp, qt/pinentrycontroller.h,
3821+ qt/pinentrydialog.cpp, qt/pinentrydialog.h: New file, copied from
3822+ kde/.
3823+ * kde: Directory removed.
3824+ * kde/Makefile.am, kde/cppmemory.cpp, kde/main.cpp,
3825+ kde/pinentry.desktop, kde/pinentrycontroller.cpp,
3826+ kde/pinentrycontroller.h, kde/pinentrydialog.cpp,
3827+ kde/pinentrydialog.h: Files removed.
3828+ * acinclude.m4: Removed the KE checks and completely overhauled
3829+ the Qt checks, putting all Qt checks in their own namespace QT_,
3830+ and make it declare QT_-prefixed variables for linking and
3831+ compilation.
3832+ * configure.ac: Use the new Qt checks instead the KDE checks.
3833+ Replace "kde" with "qt" everywhere.
3834+ * Makefile.am: Replace "kde" with "qt" everywhere.
3835+
3836+2002-04-06 Marcus Brinkmann <marcus@g10code.de>
3837+
3838+ * acinclude.m4: Reworked the Qt and KDE checks, cutting out a lot
3839+ of dead and not-so-dead wood. Gave all KDE checks proper names.
3840+ * configure.ac: Use the new names for the KDE checks.
3841+
3842+2002-04-06 Marcus Brinkmann <marcus@g10code.de>
3843+
3844+ * kde/Makefile.am (EXTRA_DIST): Remove variable.
3845+ (install-data-local): Remove target.
3846+ (uninstall-local): Likewise.
3847+
3848+2002-04-05 Marcus Brinkmann <marcus@g10code.de>
3849+
3850+ Released 0.6.0.
3851+
3852+ * configure.ac: Set version number to 0.6.
3853+ * NEWS: Add information for 0.6.0.
3854+ * secmem/Makefile.am (libsecmem_a_SOURCES): Replace secmem.h with memory.
3855+ * kde/Makefile.am (pinentry_kde_SOURCES): Move
3856+ pinentrydialog.moc.cpp and pinentrycontroller.moc.cpp to ...
3857+ (nodist_pinentry_kde_SOURCES): ... this new target.
3858+
3859+2002-04-05 Marcus Brinkmann <marcus@g10code.de>
3860+
3861+ * acinclude.m4: A lot of new checks more or less straight from KDE's
3862+ admin/acinclude.m4.in.
3863+ * configure.ac (AC_CANONICAL_HOST): Call that macro.
3864+ (AC_CHECK_COMPILERS, AC_PATH_KDE): Call those macros if KDE
3865+ pinentry is enabled.
3866+ * kde/Makefile.am (CXXFLAGS, XXX_PREFIX, XXX_KDE_DEFINES, LIB_QT,
3867+ LIB_KDECORE, LIB_KDEUI, KDE_RPATH, MOC, kde_appsdir): Variables removed.
3868+ (AM_CPPFLAGS): Replace XXX_KDE_DEFINES by all_includes.
3869+ (pinentry_kde_LDFLAGS): Add all_libraries.
3870+ * README: Document that automatic check is not possible for KDE.
3871+
3872+2002-04-05 Marcus Brinkmann <marcus@g10code.de>
3873+
3874+ * curses/pinentry-curses.c (dialog_run): Add handling for TAB key.
3875+ (dialog_create): New variable description_x. Calculate dimension
3876+ of multi-line description correctly.
3877+
3878+2002-04-04 Marcus Brinkmann <marcus@g10code.de>
3879+
3880+ * pinentry/pinentry.h (struct pinentry): New members DISPLAY,
3881+ TTYNAME and TTYTYPE.
3882+ * pinentry/pinentry.c (pinentry): Likewise.
3883+ * pinentry/pinentry.c: Include <string.h>.
3884+ (usage): Add new options --display,
3885+ --ttyname and --ttytype.
3886+ (option_handler): Likewise.
3887+ (pinentry_parse_opts): Likewise.
3888+
3889+ * curses/pinentry-curses.c (dialog_cmd_handler): Use
3890+ PINENTRY->ttyname and PINENTRY->ttytype.
3891+
3892+2002-03-30 Marcus Brinkmann <marcus@g10code.de>
3893+
3894+ * acinclude.m4: Add AM_PATH_GLIB and AM_PATH_GTK.
3895+
3896+2002-03-29 Marcus Brinkmann <marcus@g10code.de>
3897+
3898+ * configure.ac: Choose a more appropriate AC_CONFIG_SRCDIR.
3899+
3900+2002-03-29 Marcus Brinkmann <marcus@g10code.de>
3901+
3902+ * kde/Makefile.am (pinentry_kde_LDADD): Link with $(LIBCAP).
3903+ * gtk/Makefile.am (install-exec-local): Moved to ...
3904+ * Makefile.am (install-exec-local): ... here.
3905+
3906+2002-03-29 Marcus Brinkmann <marcus@g10code.de>
3907+
3908+ * kde/Makefile.am (kde_appsdir): New variable.
3909+ * kde/Makefile.am (install-data-local): Use DESTDIR.
3910+ (uninstall-local): Likewise.
3911+
3912+2002-03-29 Marcus Brinkmann <marcus@g10code.de>
3913+
3914+ Merge of the gpinentry and curses pinentry program into the
3915+ pinentry distribution. For this, the structure of the repository
3916+ has been thoroughly overhauled. Some of the changes:
3917+ * secmem: New directory with secure memory allocation code.
3918+ * pinentry: New directory with pinentry support library.
3919+ * curses: New directory with curses frontend.
3920+ * gtk: New directory with GTK+ frontend.
3921+ * kde: New directory with only the core of the old kpinentry program.
3922+ * admin: Directory removed.
3923+ * po: Directory removed.
3924+ * kpinentry: Directory removed.
3925+ * doc: Directory removed.
3926+ * jnlib: Directory removed.x
3927+
3928+ The changes in more detail:
3929+ * AUTHORS: Add authors of other pinentry frontends.
3930+ * ChangeLog: Add the one from gpinentry.
3931+ * Makefile.am: Completely rewritten.
3932+ * README: Add content.
3933+ * TODO: Add content.
3934+ * NEWS: New file from gpinentry.
3935+ * THANKS: New file from gpinentry.
3936+ * acinclude.m4: New file.
3937+ * configure.ac: New file which configures for all frontends.
3938+ * curses/Makefile.am, curses/pinentry-curses.c: New files for
3939+ curses frontend.
3940+ * gtk/Makefile.am, gtk/gtksecentry.c, gtk/gtksecentry.h,
3941+ gtk/pinentry-gtk.c: New files, modified from gpinentry, for GTK+
3942+ frontend.
3943+ * kde/Makefile.am, kde/cppmemory.cpp, kde/main.cpp,
3944+ kde/pinentry.desktop, kde/pinentrycontroller.cpp,
3945+ kde/pinentrycontroller.h, kde/pinentrydialog.cpp,
3946+ kde/pinentrydialog.h: New files, modified from kpinentry, for KDE
3947+ frontend.
3948+ * pinentry/Makefile.am, pinentry/pinentry.c, pinentry/pinentry.h:
3949+ New files containing pinentry support library, partly factored out
3950+ from gpinentry.
3951+ * secmem/Makefile.am, secmem/memory.h, secmem/secmem-util.h,
3952+ secmem/secmem.c, secmem/util.c, secmem/util.h: New files
3953+ containing secure memory allocation code common to all pinentry
3954+ frontends.
3955+ * Makefile.dist, acconfig.h, configure.files, configure.in.in:
3956+ Files removed in favor of new configure.ac.
3957+ * pinentry.lsm: Removed file never used.
3958+ * stamp-h.in: Removed generated file.
3959+ * admin/ChangeLog, admin/Makefile.common, admin/acinclude.m4.in,
3960+ admin/am_edit, admin/am_edit.py, admin/conf.change.pl,
3961+ admin/config.guess, admin/config.pl, admin/config.sub,
3962+ admin/configure.in.min, admin/debianrules, admin/depcomp,
3963+ admin/install-sh, admin/libtool.m4.in, admin/ltcf-c.sh,
3964+ admin/ltcf-cxx.sh, admin/ltcf-gcj.sh, admin/ltconfig,
3965+ admin/ltmain.sh, admin/missing, admin/mkinstalldirs, admin/ylwrap:
3966+ Removed KDE build suite in favor of configure.ac.
3967+ * doc/Makefile.am, doc/en/Makefile.am, doc/en/index.docbook:
3968+ Removed files never used.
3969+ * jnlib/ChangeLog, jnlib/Makefile.am, jnlib/argparse.c,
3970+ jnlib/argparse.h jnlib/dotlock.c, jnlib/dotlock.h,
3971+ jnlib/libjnlib-config.h, jnlib/logging.c, jnlib/logging.h,
3972+ jnlib/mischelp.h, jnlib/stringhelp.c, jnlib/stringhelp.h,
3973+ jnlib/strlist.c, jnlib/strlist.h, jnlib/types.h, jnlib/xmalloc.c,
3974+ jnlib/xmalloc.h: Removed files no longer used.
3975+ * kpinentry/Makefile.am, kpinentry/cppmemory.cpp,
3976+ kpinentry/cppmemory.h, kpinentry/i18n.h, kpinentry/main.cpp,
3977+ kpinentry/memory.h, kpinentry/pinentry.desktop,
3978+ kpinentry/pinentrycontroller.cpp, kpinentry/pinentrycontroller.h,
3979+ kpinentry/pinentrydialog.cpp, kpinentry/pinentrydialog.h,
3980+ kpinentry/secmem.cpp, kpinentry/util.cpp, kpinentry/util.h:
3981+ Removed files in favor of new files in kde/.
3982+ * po/Makefile.am, po/pinentry.pot: Removed files never used.
3983+
3984+ * autogen.sh: New file.
3985+
3986+2002-03-04 Werner Koch <wk@gnupg.org>
3987+
3988+ * gpinentry.c (enter_callback): New
3989+ (create_window): Connect it to the entry field.
3990+
3991+2002-02-18 Werner Koch <wk@gnupg.org>
3992+
3993+ Released 0.5.1.
3994+
3995+ * gpinentry.c (create_window): Add CONFIRM_MODE.
3996+ (cmd_confirm): Implemented.
3997+
3998+ * assuan/: Updated from NewPG.
3999+
4000+2002-01-20 Werner Koch <wk@gnupg.org>
4001+
4002+ * gpinentry.c (option_handler): New to allow changing of the grab
4003+ status.
4004+ (grab_keyboard): Shortcut this when global grab is not set.
4005+
4006+2002-01-04 Werner Koch <wk@gnupg.org>
4007+
4008+ Released 0.5.0.
4009+
4010+ * configure.ac: Bumbed version
4011+
4012+ * util.h (xtoi_1, xtoi_2): New.
4013+ * gpinentry.c (strcpy_escaped): New
4014+ (cmd_setdesc, cmd_seterror): Use it here to allo multiline texts.
4015+
4016+ * gpinentry: Removed debugging outbut
4017+ (create_window): Tweaked layout.
4018+
4019+2001-12-07 Werner Koch <wk@gnupg.org>
4020+
4021+ New package gpinentry based on quintuple-agent.
4022+
4023+ Removed all stuff except for the basic configuration stuff and
4024+ what is needed to build gpinentry. Also removed i18n support.
4025+ * gpinentry.c: Renamed from secret-query.c
4026+
4027+2001-02-12 Robert Bihlmeyer <robbe@orcus.priv.at>
4028+
4029+ * 1.0.0 released. Woo-hoo!
4030+
4031+ * configure.in, NEWS: Bumped version.
4032+
4033+2001-02-04 Robert Bihlmeyer <robbe@orcus.priv.at>
4034+
4035+ * agent.c (make_tmpdir): Honor $TMPDIR.
4036+
4037+ (agent): Would exit on every minor problem. Now, we just close the
4038+ offending connection.
4039+ Ignore SIGPIPE, so that EPIPE will close connection.
4040+
4041+2001-01-11 Robert Bihlmeyer <robbe@orcus.priv.at>
4042+
4043+ * secmem.c: Move one include statement so that the thing compiles.
4044+
4045+ * secret-query.c (main): Minor source cosmetics.
4046+
4047+2000-11-16 Robert Bihlmeyer <robbe@orcus.priv.at>
4048+
4049+ * gtksecentry.c (gtk_secure_entry_insert_text): Secured a couple
4050+ of memory (de)allocations that were missed. Thanks to John Steele
4051+ <jhs28@eng.cam.ac.uk> for spotting these.
4052+
4053+2000-11-10 Robert Bihlmeyer <robbe@orcus.priv.at>
4054+
4055+ * Thoughts: Removed in favor of new TODO.
4056+
4057+ * README: Remove content and refer to doc/manual.info instead.
4058+
4059+ * agent.c (do_get): Would burn badly on a premature exit of the
4060+ query program (which would occur routinely if you selected /cancel/).
4061+
4062+2000-10-25 Robert Bihlmeyer <robbe@orcus.priv.at>
4063+
4064+ * memory.h: Include sys/types.h for size_t.
4065+
4066+2000-10-08 Robert Bihlmeyer <robbe@orcus.priv.at>
4067+
4068+ * README: Removed apology about missing documentation.
4069+ Updated paragraph about Linux capability patch.
4070+ Typo & Refill.
4071+
4072+2000-10-03 Robert Bihlmeyer <robbe@orcus.priv.at>
4073+
4074+ * 0.9 released.
4075+
4076+ * Makefile.am (EXTRA_DIST): Distribute BUGS (the file, that is).
4077+
4078+ * configure.in, NEWS: Bumped version.
4079+
4080+ * Makefile.am, configure.in: Add debian subdir.
4081+
4082+ * README: Recommend GTK+.
4083+ Update list of checked platforms.
4084+
4085+2000-10-02 Robert Bihlmeyer <robbe@orcus.priv.at>
4086+
4087+ * secret-query.c (ok): Simplify.
4088+ Put empty line between headers and secret.
4089+ (usage): Document '--help' and '--version'.
4090+
4091+ * agent.c (do_get): Use enhanced secret-query output to fill in
4092+ options.
4093+
4094+2000-10-01 Robert Bihlmeyer <robbe@orcus.priv.at>
4095+
4096+ * secret-query.c (main): Clarify error.
4097+
4098+ * client.c (query_options): New global variable.
4099+ (main): New option '--query-options' to pass options to the query
4100+ program.
4101+ (xgetpass): Use it.
4102+
4103+ * agent.c (main): New option '--query-options' to pass options to
4104+ the query program.
4105+ (do_get): Use 'query_options'.
4106+
4107+ * acconfig.h, configure.in: Add QUERY_PROGRAM definition.
4108+ * client.c: Remove here.
4109+ * agent.c (do_get): Use it here, too.
4110+
4111+ * secret-query.c (main): New option '--no-global-grab' introduced,
4112+ that prevents keyboard grabbing unless the window has focus.
4113+
4114+2000-09-11 Robert Bihlmeyer <robbe@orcus.priv.at>
4115+
4116+ * secret-query.c (usage): Add two missing pieces of "\n\".
4117+
4118+ * agent.c (main): --nofork is now the default, and the option is
4119+ deprecated. New option --fork added to turn forking on again.
4120+ Close stdout (and stderr unless debugging) even when not forking,
4121+ so that normal usage inside eval is still possible.
4122+ (agent): Exit gracefully on HUP, so that logging out now kills the
4123+ agent.
4124+
4125+ * README (Contact Information): Old URL - duh!
4126+ (Using Secret Agent): We no longer fork per default.
4127+
4128+ * Makefile.am (lib/libutil.a): New target, allows targets that not
4129+ automatically recurse (but still depend on libutil.a) to succeed.
4130+
4131+2000-07-20 Robert Bihlmeyer <robbe@orcus.priv.at>
4132+
4133+ * secret-query.c (usage): New function.
4134+ (main): Parse options: debug, enhanced, help, version.
4135+ Turn on locale support.
4136+ If enhanced, insert widgets to ask for timeout and insurance.
4137+ (ok): If enhanced, print more information on exit.
4138+ (grab_keyboard): Die if grab was unsuccessful.
4139+
4140+2000-05-31 Robert Bihlmeyer <robbe@orcus.priv.at>
4141+
4142+ * 0.8 released.
4143+
4144+ * configure.in, NEWS: Bumped version.
4145+
4146+ * Makefile.am (SUBDIRS): Include doc.
4147+
4148+ * configure.in, acconfig.h: Check for ssize_t.
4149+ Check for vsnprintf(), strdup().
4150+ Generate doc/Makefile.
4151+
4152+ * apgp.c, agpg.c, agentlib.c, util.c: Include more stuff.
4153+
4154+ * agent.c (do_get): Use asprintf() instead of snprintf() so we
4155+ don't need to roll our own for yet another function.
4156+ Fix some includes.
4157+
4158+ * acinclude.m4: gettext macros copied from automake and fixed.
4159+
4160+2000-05-30 Robert Bihlmeyer <robbe@orcus.priv.at>
4161+
4162+ * configure.in, Makefile.am: Properly include doc subdir.
4163+
4164+2000-05-29 Robert Bihlmeyer <robbe@orcus.priv.at>
4165+
4166+ * configure.in, acconfig.h: Add test for XMESSAGE path.
4167+
4168+ * client.c (main): Decode command from string to integer code
4169+ first, then evaluate that in ifs.
4170+
4171+ * secret-ask.c: New file, external ask-for-confirmation utility.
4172+
4173+ * configure.in, Makefile.am: Add secret-ask to programs being
4174+ built when GTK is available. Rename QUERY to more descriptive
4175+ GTK_PROGRAMS.
4176+
4177+ * agent.c (do_get): If GTK is available, try executing secret-ask
4178+ first.
4179+ Only put the comment into the insure-question if there is a
4180+ comment.
4181+ (main): --csh was missing from usage message.
4182+
4183+2000-04-23 Robert Bihlmeyer <robbe@orcus.priv.at>
4184+
4185+ * secret-query.c (constrain_size): Lower window max_width to
4186+ accomodate bugs in GTK and Scwm.
4187+
4188+ * agent.c (main): Set x_enabled if X appears to be available.
4189+ Use it to selectively make FLAGS_INSURE supported.
4190+ (do_get): Use it instead of testing at every call.
4191+ (do_put): Requests containing unsupported flags fail.
4192+ (forget_old_stuff): Would not set next_deadline correctly.
4193+ (do_get): Implement FLAGS_INSURE.
4194+
4195+ * client.c (main): "list" format changed so that comment is to the
4196+ far right. Display the deadline as proper date/time, too.
4197+
4198+1999-11-11 Robert Bihlmeyer <robbe@orcus.priv.at>
4199+
4200+ * agent.c (next_deadline): New global variable, holds time when
4201+ next secret has to be killed.
4202+ (store): Keep it up-to-date.
4203+ (forget_old_stuff): New function, reaps secrets ready to kill,
4204+ keeps next_deadline updated.
4205+ (agent): Use it on all secrets, whenever a deadline is active.
4206+
4207+1999-11-08 Robert Bihlmeyer <robbe@orcus.priv.at>
4208+
4209+ * agent.h (request_put): Add flags, deadline. Increase REQUEST_MAGIC.
4210+ (reply_get): Ditto, and increase REPLY_MAGIC.
4211+ * agent.c (store): Store flags, deadline in reply.
4212+ (do_put): Hand flags, deadline from request on to store().
4213+ (do_get): Store on-demand queried secrets without deadline or
4214+ special flags, for now.
4215+ (agent): Do not ignore obsolete clients, return an error reply.
4216+ * agentlib.c (agent_put): Add flags, deadline arguments, and copy
4217+ them into the request.
4218+ * agentlib.h (agent_put): Update prototype.
4219+* * client.c (main): Added --time-to-live (-t) and --insure (-i)
4220+ options, influencing PUT's deadline and flags, respectively.
4221+ (main): Change list format to include new attributes.
4222+
4223+1999-11-05 Robert Bihlmeyer <robbe@orcus.priv.at>
4224+
4225+ * configure.in: <getopt.h> check had redundant definition.
4226+ * acconfig.h: Remove here, too.
4227+
4228+ * configure.in: Check for <inttypes.h>. If not found, check for
4229+ unsigned {int, long} sizes.
4230+ * agent.h: Either include <inttypes.h>, or try to define uint32_t
4231+ yourself.
4232+ Need to include "config.h".
4233+
4234+1999-11-04 Robert Bihlmeyer <robbe@orcus.priv.at>
4235+
4236+ * Makefile.am (signed-dist): New rule, generates sig for dist.
4237+ (%.sig): New rule, for detached signatures in general.
4238+
4239+ * configure.in: Check for ulong.
4240+ * acconfig.h: Document it.
4241+ * secmem.c: Unconditionally defining it is no longer necessary
4242+ here. But do include <sys/types.h> in all cases.
4243+
4244+ * 0.7 released.
4245+
4246+ * secmem.c: ulong is not defined on all systems.
4247+
4248+ * agent.h: <inttypes.h> should define `uint32_t' as per Unix98, so
4249+ we use that.
4250+
4251+1999-11-02 Robert Bihlmeyer <robbe@orcus.priv.at>
4252+
4253+ * agent.h: Augmented requests and replies with magic numbers.
4254+ Data structures heavily commented.
4255+ All structures and enums typedef'd.
4256+ * agent.c: Adapted.
4257+ (store): Set magic number in stored reply.
4258+ (do_put): Set magic number in reply.
4259+ (do_delete): Ditto.
4260+ (do_list): Ditto.
4261+ (agent): Check magic number in request.
4262+ * agentlib.c: Adapted.
4263+ (send_request): Set magic number in request. Check it in reply.
4264+ * agentlib.h: Adapted.
4265+ * agpg.c: Adapted.
4266+ * apgp.c: Adapted.
4267+ * client.c: Adapted.
4268+
4269+1999-10-31 Robert Bihlmeyer <robbe@orcus.priv.at>
4270+
4271+ * secmem.c: Instead of defining ulong directly, include
4272+ <sys/types.h>
4273+
4274+ * secret-query.c (constrain_size): New function, puts constrains
4275+ on size of toplevel window.
4276+ (grab_keyboard): Removed protection against multiple calls.
4277+ (ungrab_keyboard): New function, cancelling a keyboard grab.
4278+ (main): Hang `grab_keyboard' onto map-event which makes it
4279+ actually work, hang `ungrab_keyboard' onto unmap-event.
4280+ Hang `constrain_size' onto size-request.
4281+
4282+ * secmem.c: ulong was undefined on some systems.
4283+
4284+1999-10-19 Robert Bihlmeyer <robbe@orcus.priv.at>
4285+
4286+ * Makefile.am (install-exec-local): Ignore setcap errors.
4287+
4288+ * apgp.c: New program, based on agpg.c, but for pgp2.6.
4289+ * Makefile.am (bin_PROGRAMS, apgp_SOURCES): Added it.
4290+
4291+ * agpg.c (GPG): New constant.
4292+ (find_id, main): Use it throughout.
4293+ (find_id): Forgot to pclose on success.
4294+
4295+ * secret-query.c (main): Don't expand anything.
4296+ Use a button box for the buttons.
4297+ Prompt label can be overridden from the commandline.
4298+ * agent.c (do_get): Make spawned secret-query show the id.
4299+ * client.c (xgetpass): Pass prompt to secret-query.
4300+ (main): Include id in xgetpass prompt.
4301+
4302+1999-10-14 Robert Bihlmeyer <robbe@orcus.priv.at>
4303+
4304+ * configure.in: setcap must be searched outside the usual user
4305+ PATH, too.
4306+ * Makefile.am (install-exec-local): Set cap_ipc_lock permitted on
4307+ installed binaries, if possible.
4308+
4309+ * agent.c (xdup2): New function, dup2 with error handling.
4310+ (move_fd): New function, moves fds.
4311+ (store): New function, abstracted out from do_put.
4312+ (do_put): Use it.
4313+ (do_get): If secret was not found, and DISPLAY is set, try to
4314+ query the user about it. If successful, store it.
4315+ (main): Route standard file descriptors to /dev/null rather than
4316+ just closing them. The latter would confuse children.
4317+
4318+1999-10-13 Robert Bihlmeyer <robbe@orcus.priv.at>
4319+
4320+ * gtksecentry.c, gtksecentry.h: New files, being slightly modified
4321+ versions of GTK+'s gtkentry.[ch], spiffed up to use secure memory.
4322+ * secret-query.c (ok, unselect, main): Replace GtkEntry with
4323+ GtkSecureEntry.
4324+ (main): Initialize secure memory.
4325+ * Makefile.am (secret_query_SOURCES): Added gtksecentry.[ch].
4326+
4327+ * README (Security): New chapter.
4328+
4329+ * configure.in, acconfig.h: Check for POSIX capabilities, and the
4330+ setcap program.
4331+ * Makefile.am: Link LIBCAP to those binaries using secmem.c.
4332+
4333+ * util.h: Include <sys/types.h> for size_t.
4334+
4335+1999-09-21 Robert Bihlmeyer <robbe@orcus.priv.at>
4336+
4337+ * secmem.c: Synced with gnupg-1.0 (top new feature: capabilities).
4338+ (log_fatal): New function, logs to stderr, and dies.
4339+
4340+1999-09-08 Robert Bihlmeyer <robbe@orcus.priv.at>
4341+
4342+ * secmem.c (log_info): New function, logs to stderr.
4343+
4344+ * agent.c (agent): select() expects the number of fds, not the
4345+ highest fd. So remember that number.
4346+
4347+ * agent.c (agent): Don't use FD_SETSIZE, which is not defined on
4348+ all systems. Remember the number of the highest descriptor
4349+ instead.
4350+
4351+ * configure.in: Replace getline() instead of getdelim() because
4352+ this is the function we really need. Still check for getdelim(),
4353+ though - there are systems out there where this is provided, but
4354+ getline() is not.
4355+
4356+1999-09-01 Robert Bihlmeyer <robbe@orcus.priv.at>
4357+
4358+ * 0.6 released.
4359+
4360+ * configure.in: Bump version.
4361+
4362+ * NEWS: Updated.
4363+
4364+1999-08-31 Robert Bihlmeyer <robbe@orcus.priv.at>
4365+
4366+ * util.c (init_uids, lower_privs, raise_privs, drop_privs): New
4367+ functions, for setuid binaries, extracted from agent.c.
4368+ * util.h: Add prototypes for them.
4369+ * agpg.c (main): Use them.
4370+ * client.c (main): Ditto.
4371+ * agent.c (main): Ditto. Removed code that did the same.
4372+ Unconditionally include "asprintf.h" (it protects itself now).
4373+
4374+1999-08-25 Robert Bihlmeyer <robbe@orcus.priv.at>
4375+
4376+ * Makefile.am (SUBDIRS): Process . before test so that "make
4377+ check" always builds all in . first.
4378+
4379+1999-08-21 Robert Bihlmeyer <robbe@orcus.priv.at>
4380+
4381+ * secret-query.c: Include "config.h".
4382+
4383+ * agent.h (reply_list_entry, reply_list): New reply structures.
4384+ * agent.c (send_list_entry): New function.
4385+ (do_list): First send number of entries, then each entry via
4386+ send_list_entry().
4387+ * agentlib.c (agent_list): Read entries returned by LIST request.
4388+ * client.c (main): Output all entries returned by agent_list().
4389+
4390+ * agentlib.c (agent_put): Don't construct PUT request in insecure
4391+ stack space.
4392+
4393+1999-08-20 Robert Bihlmeyer <robbe@orcus.priv.at>
4394+
4395+ * NEWS: Bump patchlevel.
4396+
4397+ * configure.in: Bump patchlevel.
4398+ Check for missing setenv().
4399+
4400+1999-08-09 Robert Bihlmeyer <robbe@orcus.priv.at>
4401+
4402+ * configure.in: Check for strsignal().
4403+
4404+ * client-test: Obsoleted by test/client.
4405+
4406+ * Makefile.am (SUBDIRS): New subdirectory.
4407+ * configure.in (AC_OUTPUT): Add here, too.
4408+
4409+ * 0.5 released.
4410+
4411+ * README: Explain why secret-client will not output secrets to a
4412+ tty, and mention the cat-trick.
4413+
4414+ * agent.c (main): If seteuid is not available, don't use it and
4415+ issue a warning if running setuid.
4416+
4417+ * configure.in: Run together two REPLACE_FUNCS.
4418+ Check for seteuid.
4419+
4420+ * client-test: Mask out insecure memory warnings.
4421+
4422+ * agentlib.c (send_request): Let the calling functions reserve
4423+ space for the reply, but offer a simple way for simple requests.
4424+ (agent_get): Allocate secure memory.
4425+
4426+ * agent.c (main): Moved secmem_init() after the fork, since that
4427+ seemingly munlock's all pages.
4428+ Drop priviledges just in case somebody wants to install this
4429+ suid-root.
4430+ Flush stdout.
4431+
4432+ * agpg.c (find_id): Would reorder arguments.
4433+ Initialize opt_version.
4434+ (main): Initialize secure memory.
4435+
4436+ * Makefile.am (agpg_SOURCES): Link with secure memory module.
4437+
4438+ * client.c (usage): Fixed another program name reference.
4439+
4440+1999-08-06 Robert Bihlmeyer <robbe@orcus.priv.at>
4441+
4442+ * configure.in: Conditionally define HAVE_GTK.
4443+ * acconfig.h: Add here too.
4444+
4445+ * client.c (xgetpass): Use "secret-query" only if it was built.
4446+ (main): Don't output secret (GET command) to ttys.
4447+
4448+ * agpg.c (find_id): Also print own version if "--version" is given.
4449+ (main): Check agent_init() errors.
4450+ Print error if exec fails.
4451+
4452+ * agent.c (main): Added an option to produce csh-compatible
4453+ output.
4454+
4455+ * agent.c, client.c: Forgot the terminating NULL in long options.
4456+ Fixed the program names in usage and version output.
4457+
4458+ * agent.c (create_socket): AF_UNIX and PF_UNIX are Unix98, so
4459+ that's what we use. AF_LOCAL, PF_LOCAL removed.
4460+ * agentlib.c (agent_init): Ditto.
4461+
4462+1999-08-05 Robert Bihlmeyer <robbe@orcus.priv.at>
4463+
4464+ * 0.4 released.
4465+
4466+ * configure.in: Bumped version.
4467+ Check for missing getdelim.
4468+
4469+ * cgpg: Removed, obsoleted by agpg.
4470+ * Makefile.am: Here, too.
4471+
4472+ * agpg.c (find_id): New function.
4473+ (main): Use it.
4474+
4475+ * Makefile.am (INCLUDES): Put GTK_FLAGS and GLIB_FLAGS here. It
4476+ is the easiest way for sources needing it, and it won't hurt those
4477+ that don't.
4478+ (agent.o): Explicit command removed accordingly.
4479+
4480+1999-08-04 Robert Bihlmeyer <robbe@orcus.priv.at>
4481+
4482+ * configure.in: Need double quoting in nested AC_MSG_WARN.
4483+
4484+ * client.c (xgetpass): If no tty is available, but a DISPLAY is,
4485+ fork off "secure-query" to read the secret.
4486+ Put the fgets into a loop that keeps reading until all of the
4487+ secret is read.
4488+
4489+ * client-test: Unset DISPLAY, so that "secret-query" is never used.
4490+
4491+1999-08-03 Robert Bihlmeyer <robbe@orcus.priv.at>
4492+
4493+ * agpg.c: New file, first cut at a C version of the gpg wrapper,
4494+ written in a hurry (20 keys waiting to be signed, and a growling
4495+ stomach).
4496+ * Makefile.am: Add it to built programs.
4497+ (LDADD): New default.
4498+ (secret_client_LDADD): Removed, since it was identical to default.
4499+
4500+1999-08-01 Robert Bihlmeyer <robbe@orcus.priv.at>
4501+
4502+ * secret-query.c: New program, queries the user for a password.
4503+ * Makefile.am (bin_PROGRAMS): Added it.
4504+ * configure.in: Check for GTK+, build "secret-query" only when
4505+ that is available.
4506+
4507+ * cgpg: Extra argument for ID is no longer necessary. cgpg will
4508+ scan the gpg args for switches that affect user-id, and determine
4509+ the right key itself. Per convention, the key-id is used by "GET".
4510+
4511+ * configure.in: The project name is now "secret-agent".
4512+
4513+ * Makefile.am: "agent" & "client" renamed to "secret-agent" &
4514+ "secret-client", respectively.
4515+ * client-test: Adapt to new names.
4516+
4517+ * Thoughts: Removed discussion of other names.
4518+ Added indication of which things already work.
4519+
4520+ * agent.c (make_tmpdir): Removed occurance of "gpg-agent."
4521+
4522+ * README: First proper version.
4523+
4524+ * client-test: Context diffs are more portable then unified diffs.
4525+
4526+ * agent.c, agent.h, agentlib.c, agentlib.h, client.c, memory.h,
4527+ util.c, util.h: Banner updated to new name.
4528+
4529+1999-07-29 Robert Bihlmeyer <robbe@orcus.priv.at>
4530+
4531+ * configure.in: Check for missing asprintf.
4532+ Check if -lsocket is needed.
4533+
4534+ * secmem.c (secmem_dump_stats): Replace usage of ulong.
4535+
4536+ * Makefile.am (INCLUDES): Add the lib subdirectory to include search.
4537+
4538+ * agent.c: Forgot to include <string.h>.
4539+ Include RYO asprintf header if this function is missing.
4540+ For the sake of compatibility, provide a definition for AF_LOCAL,
4541+ PF_LOCAL, if missing.
4542+ * agentlib.c: Ditto.
4543+
4544+1999-07-28 Robert Bihlmeyer <robbe@orcus.priv.at>
4545+
4546+ * Makefile.am (client_SOURCES): Add "secmem.c", "memory.h".
4547+
4548+ * client.c (xgetpass): Use secmem_malloc() instead of RYO.
4549+ (main): Init and shutdown secmem.
4550+
4551+1999-07-27 Robert Bihlmeyer <robbe@orcus.priv.at>
4552+
4553+ * Makefile.am (agent_SOURCES): Add "secmem.c", "i18n.h", "memory.h".
4554+ (client_SOURCES): Add "i18n.h".
4555+
4556+ * client.c (main): Exit on agent_init() failure.
4557+
4558+ * agent.c (main): Init secmem.
4559+ Make --debug switch cumulative.
4560+ (cleanup): Shutdown secmem.
4561+ (do_put): Use secmem for storage of secrets.
4562+ (do_delete): Use secmem_free(). Since this wipes the memory on its
4563+ own, wipe() is superflous now.
4564+ (agent): Use secmem for inbound requests.
4565+ (delete_secret): New function, takes part of do_delete's
4566+ functionality.
4567+ (do_put): Use it to remove old versions stored under the same id.
4568+ (do_delete): Use it to delete secrets.
4569+
4570+ * memory.h: New file.
4571+
4572+ * secmem.c: New file, snarfed from GnuPG and modified slightly.
4573+
4574+ * acinclude.m4: New file.
4575+ * configure.in: (ALL_LINGUAS): Expanded list of available
4576+ languages. Most of them only have a few translations from gpg,
4577+ tough ...
4578+ getopt_long test was commented out for debugging,
4579+ and left such. Fixed.
4580+ Check for mlock.
4581+ * acconfig.h: Comment HAVE_BROKEN_MLOCK.
4582+
4583+ * cgpg: A space was missing.
4584+
4585+ * i18n.h: New file, centralizing the gettext macro defs.
4586+
4587+ * agent.c (BLIND): New macro, that blinds out a secret if debug
4588+ level is too low.
4589+ (do_put): Use it.
4590+ (do_get): Use it.
4591+ Include i18n.h.
4592+
4593+ * agentlib.c: Include i18n.h
4594+
4595+ * client.c (usage): New function.
4596+ Usage-message made gettext-friendly.
4597+ (xgetpass): Use perror() instead of fprintf().
4598+ (main): Use it.
4599+ Make comment an optional argument of PUT.
4600+ Include i18n.h.
4601+
4602+1999-07-26 Robert Bihlmeyer <robbe@orcus.priv.at>
4603+
4604+ * Makefile.am (client_LDADD): Add lib/libutil.a for portability.
4605+ (agent_LDADD): Ditto.
4606+ (SUBDIRS): Add lib directory.
4607+ (bin_SCRIPTS): New with cgpg, so it gets installed, too.
4608+
4609+ * configure.in: Add lib/Makefile to output.
4610+
4611+1999-07-24 Robert Bihlmeyer <robbe@orcus.priv.at>
4612+
4613+ * cgpg: New file.
4614+ * Makefile.am (EXTRA_DIST): Added it.
4615+
4616+ * agent.c: Moved inclusion of config.h before inclusion of
4617+ libintl.h since the latter needs HAVE_LC_MESSAGE.
4618+ * client.c: Ditto.
4619+ * clientlib.c: Ditto.
4620+
4621+ * client-test: Update for new client semantics.
4622+
4623+ * client.c (check_status): Use debugmsg(). Do nothing if not
4624+ debugging.
4625+ (xgetpass): New function, getpass replacement that uses mlock'ed
4626+ memory.
4627+ (main): PUT now asks for the secret rather then getting it from
4628+ the commandline.
4629+ GET prints only the secret to stdout.
4630+
4631+ * configure.in: Rearranged.
4632+ Check for socklen_t.
4633+ * acconfig.h: Added a definition for it.
4634+
4635+ * client.c: Include packaged getopt.h if the system doesn't provide
4636+ one.
4637+ * agent.c: Ditto.
4638+ (create_socket): Replace AF_FILE, PF_FILE with AF_LOCAL, PF_LOCAL
4639+ for portability.
4640+ * agentlib.c (agent_init): Ditto.
4641+ Explicitly cast addr to a sockaddr pointer.
4642+
4643+ * Makefile.am (client_LDADD): Added @INTLLIBS@.
4644+ (agent_LDADD): Ditto.
4645+
4646+1999-07-19 Robert Bihlmeyer <robbe@orcus.priv.at>
4647+
4648+ * configure.in: Check for getopt.h and getopt_long.
4649+ * acconfig.h (HAVE_GETOPT_H): New define.
4650+ * lib/getopt.c, lib/getopt1.c, lib/getopt.h: Added.
4651+
4652+1999-07-18 Robert Bihlmeyer <robbe@orcus.priv.at>
4653+
4654+ * 0.2 released.
4655+
4656+ * NEWS: Updated.
4657+
4658+ * Makefile.am (agent.o): Mentioning the source explicitly does not
4659+ work for srcdir!=builddir.
4660+
4661+ * client.c (main): Function arguments are not always evaluated in
4662+ order, so drop the neat ++optind in favor of optind+1, optind+2,
4663+ etc.
4664+
4665+ * configure.in: Upped version.
4666+
4667+1999-06-28 Robert Bihlmeyer <robbe@orcus.priv.at>
4668+
4669+ * util.h: Added multi-inclusion guard.
4670+
4671+ * agent.c Include "util.h".
4672+ (main): Forgot to exit at end.
4673+ (do_delete): Assume that value is a string and wipe it accordingly.
4674+
4675+ * configure.in (--enable-debug): New switch.
4676+
4677+ * agent.h (status_t): Added STATUS_COMM_ERR code.
4678+ Added multi-inclusion guard.
4679+
4680+ * client.c (main): Abstracted out most functionality into a
4681+ function library, namely:
4682+ * agentlib.c: New file.
4683+ * agentlib.h: New file.
4684+ * Makefile.am (client_SOURCES): Added agentlib.c, agentlib.h.
4685+
4686+ * Makefile.am (INCLUDES): GLIB_CFLAGS moved again, this time to
4687+ the agent.o target.
4688+
4689+1999-06-15 Robert Bihlmeyer <robbe@orcus.priv.at>
4690+
4691+ * 0.1 released.
4692+
4693+ * Makefile.am (agent_CFLAGS): Removed - did not work.
4694+ (INCLUDES): Moved the GLIB stuff here.
4695+
4696+1999-06-14 Robert Bihlmeyer <robbe@orcus.priv.at>
4697+
4698+ * configure.in (ALL_LINGUAS): Added `de'.
4699+
4700+ * agent.c (do_get): Added more debugmsgs.
4701+ (do_put): Wouldn't allocate enough for `value'.
4702+ (main): New option "--nofork" prevents forking.
4703+ Use macros for the std filedescriptor numbers.
4704+ Only close stderr if not debugging.
4705+ (main): Make Usage string gettext-friendly.
4706+
4707+ * client-test (cleanup): New function.
4708+ Call it on shell exit.
4709+ (client): New function.
4710+ Use it instead of calling client binary directly.
4711+ diff client output with expected one in GET testcases.
4712+
4713+1999-06-13 Robert Bihlmeyer <robbe@orcus.priv.at>
4714+
4715+ * agent.c (failed_reply): New constant.
4716+ (do_list): Use it.
4717+ (do_put): The hash key was overwritten - strdup it.
4718+ Construct a GET reply and save that in the hash.
4719+ (do_get): Just send the preconstructed reply if the id is present,
4720+ and failed_reply otherwise.
4721+ (do_delete): Actually free the hashed stuff.
4722+
4723+ * client.c: Exit with error if agent returned STATUS_FAIL.
4724+
4725+ * Makefile.am (EXTRA_DIST): Added autogen.sh, Thoughts,
4726+ client-test.
4727+ (TESTS): Added client-test.
4728+ (AUTOMAKE_OPTIONS): Added gnits.
4729+
4730+
4731+ Copyright 2002, 2003, 2010 g10 Code GmbH
4732+
4733+ This file is free software; as a special exception the author gives
4734+ unlimited permission to copy and/or distribute it, with or without
4735+ modifications, as long as this notice is preserved.
4736+
4737+ This file is distributed in the hope that it will be useful, but
4738+ WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
4739+ implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
4740
4741=== modified file 'Makefile.am'
4742--- Makefile.am 2010-03-18 23:36:51 +0000
4743+++ Makefile.am 2014-01-24 03:16:14 +0000
4744@@ -1,18 +1,18 @@
4745 # Makefile.am
4746-# Copyright (C) 2002 g10 Code GmbH
4747-#
4748+# Copyright (C) 2002, 2012 g10 Code GmbH
4749+#
4750 # This file is part of PINENTRY.
4751-#
4752+#
4753 # PINENTRY is free software; you can redistribute it and/or modify
4754 # it under the terms of the GNU General Public License as published by
4755 # the Free Software Foundation; either version 2 of the License, or
4756 # (at your option) any later version.
4757-#
4758+#
4759 # PINENTRY is distributed in the hope that it will be useful,
4760 # but WITHOUT ANY WARRANTY; without even the implied warranty of
4761 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4762 # GNU General Public License for more details.
4763-#
4764+#
4765 # You should have received a copy of the GNU General Public License
4766 # along with this program; if not, write to the Free Software
4767 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
4768@@ -20,43 +20,49 @@
4769 ## Process this file with automake to produce Makefile.in
4770
4771 ACLOCAL_AMFLAGS = -I m4
4772-
4773-EXTRA_DIST = autogen.sh README.SVN Manifest
4774+AUTOMAKE_OPTIONS = dist-bzip2 no-dist-gzip
4775+#DISTCHECK_CONFIGURE_FLAGS = --disable-pinentry-qt4
4776+
4777+GITLOG_TO_CHANGELOG=gitlog-to-changelog
4778+
4779+EXTRA_DIST = autogen.sh README.GIT ChangeLog-old \
4780+ build-aux/gitlog-to-changelog \
4781+ build-aux/git-log-fix build-aux/git-log-footer
4782
4783 if BUILD_PINENTRY_CURSES
4784 pinentry_curses = curses
4785 else
4786-pinentry_curses =
4787+pinentry_curses =
4788 endif
4789
4790 if BUILD_PINENTRY_GTK
4791 pinentry_gtk = gtk
4792 else
4793-pinentry_gtk =
4794+pinentry_gtk =
4795 endif
4796
4797 if BUILD_PINENTRY_GTK_2
4798 pinentry_gtk_2 = gtk+-2
4799 else
4800-pinentry_gtk_2 =
4801+pinentry_gtk_2 =
4802 endif
4803
4804 if BUILD_PINENTRY_QT
4805 pinentry_qt = qt
4806 else
4807-pinentry_qt =
4808+pinentry_qt =
4809 endif
4810
4811 if BUILD_PINENTRY_QT4
4812 pinentry_qt4 = qt4
4813 else
4814-pinentry_qt4 =
4815+pinentry_qt4 =
4816 endif
4817
4818 if BUILD_PINENTRY_W32
4819 pinentry_w32 = w32
4820 else
4821-pinentry_w32 =
4822+pinentry_w32 =
4823 endif
4824
4825 SUBDIRS = assuan secmem pinentry ${pinentry_curses} \
4826@@ -73,3 +79,19 @@
4827 (cd $(DESTDIR)$(bindir); \
4828 rm -f pinentry; \
4829 $(LN_S) $(PINENTRY_DEFAULT)$(EXEEXT) pinentry)
4830+
4831+dist-hook: gen-ChangeLog
4832+ echo "$(VERSION)" > $(distdir)/VERSION
4833+
4834+gen_start_date = 2012-08-08T00:00:00
4835+.PHONY: gen-ChangeLog
4836+gen-ChangeLog:
4837+ if test -d $(top_srcdir)/.git; then \
4838+ (cd $(top_srcdir) && \
4839+ $(GITLOG_TO_CHANGELOG) --append-dot --tear-off \
4840+ --amend=build-aux/git-log-fix \
4841+ --since=$(gen_start_date) ) > $(distdir)/cl-t; \
4842+ cat $(top_srcdir)/build-aux/git-log-footer >> $(distdir)/cl-t;\
4843+ rm -f $(distdir)/ChangeLog; \
4844+ mv $(distdir)/cl-t $(distdir)/ChangeLog; \
4845+ fi
4846
4847=== modified file 'Makefile.in'
4848--- Makefile.in 2011-02-16 20:18:53 +0000
4849+++ Makefile.in 2014-01-24 03:16:14 +0000
4850@@ -1,8 +1,9 @@
4851-# Makefile.in generated by automake 1.10.2 from Makefile.am.
4852+# Makefile.in generated by automake 1.11.6 from Makefile.am.
4853 # @configure_input@
4854
4855 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
4856-# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
4857+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
4858+# Foundation, Inc.
4859 # This Makefile.in is free software; the Free Software Foundation
4860 # gives unlimited permission to copy and/or distribute it,
4861 # with or without modifications, as long as this notice is preserved.
4862@@ -15,27 +16,45 @@
4863 @SET_MAKE@
4864
4865 # Makefile.am
4866-# Copyright (C) 2002 g10 Code GmbH
4867-#
4868+# Copyright (C) 2002, 2012 g10 Code GmbH
4869+#
4870 # This file is part of PINENTRY.
4871-#
4872+#
4873 # PINENTRY is free software; you can redistribute it and/or modify
4874 # it under the terms of the GNU General Public License as published by
4875 # the Free Software Foundation; either version 2 of the License, or
4876 # (at your option) any later version.
4877-#
4878+#
4879 # PINENTRY is distributed in the hope that it will be useful,
4880 # but WITHOUT ANY WARRANTY; without even the implied warranty of
4881 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4882 # GNU General Public License for more details.
4883-#
4884+#
4885 # You should have received a copy of the GNU General Public License
4886 # along with this program; if not, write to the Free Software
4887 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
4888 VPATH = @srcdir@
4889+am__make_dryrun = \
4890+ { \
4891+ am__dry=no; \
4892+ case $$MAKEFLAGS in \
4893+ *\\[\ \ ]*) \
4894+ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \
4895+ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
4896+ *) \
4897+ for am__flg in $$MAKEFLAGS; do \
4898+ case $$am__flg in \
4899+ *=*|--*) ;; \
4900+ *n*) am__dry=yes; break;; \
4901+ esac; \
4902+ done;; \
4903+ esac; \
4904+ test $$am__dry = yes; \
4905+ }
4906 pkgdatadir = $(datadir)/@PACKAGE@
4907+pkgincludedir = $(includedir)/@PACKAGE@
4908 pkglibdir = $(libdir)/@PACKAGE@
4909-pkgincludedir = $(includedir)/@PACKAGE@
4910+pkglibexecdir = $(libexecdir)/@PACKAGE@
4911 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
4912 install_sh_DATA = $(install_sh) -c -m 644
4913 install_sh_PROGRAM = $(install_sh) -c
4914@@ -69,6 +88,7 @@
4915 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
4916 CONFIG_HEADER = config.h
4917 CONFIG_CLEAN_FILES =
4918+CONFIG_CLEAN_VPATH_FILES =
4919 SOURCES =
4920 DIST_SOURCES =
4921 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
4922@@ -78,8 +98,16 @@
4923 install-pdf-recursive install-ps-recursive install-recursive \
4924 installcheck-recursive installdirs-recursive pdf-recursive \
4925 ps-recursive uninstall-recursive
4926+am__can_run_installinfo = \
4927+ case $$AM_UPDATE_INFO_DIR in \
4928+ n|no|NO) false;; \
4929+ *) (install-info --version) >/dev/null 2>&1;; \
4930+ esac
4931 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
4932 distclean-recursive maintainer-clean-recursive
4933+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
4934+ $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
4935+ distdir dist dist-all distcheck
4936 ETAGS = etags
4937 CTAGS = ctags
4938 DIST_SUBDIRS = assuan secmem pinentry curses gtk gtk+-2 qt qt4 w32 doc
4939@@ -87,12 +115,41 @@
4940 distdir = $(PACKAGE)-$(VERSION)
4941 top_distdir = $(distdir)
4942 am__remove_distdir = \
4943- { test ! -d $(distdir) \
4944- || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
4945- && rm -fr $(distdir); }; }
4946-DIST_ARCHIVES = $(distdir).tar.gz
4947+ if test -d "$(distdir)"; then \
4948+ find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
4949+ && rm -rf "$(distdir)" \
4950+ || { sleep 5 && rm -rf "$(distdir)"; }; \
4951+ else :; fi
4952+am__relativize = \
4953+ dir0=`pwd`; \
4954+ sed_first='s,^\([^/]*\)/.*$$,\1,'; \
4955+ sed_rest='s,^[^/]*/*,,'; \
4956+ sed_last='s,^.*/\([^/]*\)$$,\1,'; \
4957+ sed_butlast='s,/*[^/]*$$,,'; \
4958+ while test -n "$$dir1"; do \
4959+ first=`echo "$$dir1" | sed -e "$$sed_first"`; \
4960+ if test "$$first" != "."; then \
4961+ if test "$$first" = ".."; then \
4962+ dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
4963+ dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
4964+ else \
4965+ first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
4966+ if test "$$first2" = "$$first"; then \
4967+ dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
4968+ else \
4969+ dir2="../$$dir2"; \
4970+ fi; \
4971+ dir0="$$dir0"/"$$first"; \
4972+ fi; \
4973+ fi; \
4974+ dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
4975+ done; \
4976+ reldir="$$dir2"
4977 GZIP_ENV = --best
4978+DIST_ARCHIVES = $(distdir).tar.bz2
4979 distuninstallcheck_listfiles = find . -type f -print
4980+am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
4981+ | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
4982 distcleancheck_listfiles = find . -type f -print
4983 ACLOCAL = @ACLOCAL@
4984 AMTAR = @AMTAR@
4985@@ -117,6 +174,8 @@
4986 ECHO_T = @ECHO_T@
4987 EGREP = @EGREP@
4988 EXEEXT = @EXEEXT@
4989+#DISTCHECK_CONFIGURE_FLAGS = --disable-pinentry-qt4
4990+GITLOG_TO_CHANGELOG = gitlog-to-changelog
4991 GLIB_CFLAGS = @GLIB_CFLAGS@
4992 GLIB_CONFIG = @GLIB_CONFIG@
4993 GLIB_LIBS = @GLIB_LIBS@
4994@@ -240,7 +299,11 @@
4995 top_srcdir = @top_srcdir@
4996 x_libraries = @x_libraries@
4997 ACLOCAL_AMFLAGS = -I m4
4998-EXTRA_DIST = autogen.sh README.SVN Manifest
4999+AUTOMAKE_OPTIONS = dist-bzip2 no-dist-gzip
5000+EXTRA_DIST = autogen.sh README.GIT ChangeLog-old \
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: