diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..04335fa09 --- /dev/null +++ b/.gitignore @@ -0,0 +1,135 @@ +Makefile.in +aclocal.m4 +autom4te.cache/ +configure +config.h.in +config.h +config.log +config.status +common/audit-events.h +common/status-codes.h +doc/gnupg.info* +doc/stamp-vti +doc/version.texi +po/gnupg2.pot +po/POTFILES +stamp-h1 +Makefile +.deps/ +keyserver/gpg2keys_mailto +keyserver/gpg2keys_test +tools/gpg-zip + +# Files created by make when not using a VPATH build +*.o +po/en@boldquot.insert-header +po/en@boldquot.po +po/en@quot.insert-header +po/en@quot.po +po/stamp-po +agent/gpg-agent +agent/gpg-preset-passphrase +agent/gpg-protect-tool +agent/t-protect +common/libcommon.a +common/libcommonpth.a +common/libgpgrl.a +common/libsimple-pwquery.a +common/t-b64 +common/t-convert +common/t-exechelp +common/t-gettime +common/t-helpfile +common/t-percent +common/t-session-env +common/t-sexputil +common/t-sysutils +doc/FAQ +doc/addgnupghome.8 +doc/applygnupgdefaults.8 +doc/faq.html +doc/faq.raw.xref +doc/gnupg-card-architecture.eps +doc/gnupg-card-architecture.pdf +doc/gnupg-card-architecture.png +doc/gnupg.7 +doc/gpg-agent.1 +doc/gpg-connect-agent.1 +doc/gpg-preset-passphrase.1 +doc/gpg-zip.1 +doc/gpg2.1 +doc/gpgconf.1 +doc/gpgparsemail.1 +doc/gpgsm-gencert.sh.1 +doc/gpgsm.1 +doc/gpgv2.1 +doc/scdaemon.1 +doc/symcryptrun.1 +doc/watchgnupg.1 +doc/yat2m +doc/yat2m-stamp +g10/gpg2 +g10/gpgv2 +g10/t-rmd160 +gl/alloca.h +gl/libgnu.a +jnlib/libjnlib.a +jnlib/t-stringhelp +kbx/kbxutil +kbx/libkeybox.a +keyserver/gpg2keys_curl +keyserver/gpg2keys_finger +keyserver/gpg2keys_hkp +keyserver/gpg2keys_kdns +keyserver/gpg2keys_ldap +scd/gnupg-pcsc-wrapper +scd/scdaemon +sm/gpgsm +tests/asschk +tests/gpg-agent.conf +tests/gpgsm.conf +tests/inittests.stamp +tests/openpgp/data-32000 +tests/openpgp/data-500 +tests/openpgp/data-80000 +tests/openpgp/data-9000 +tests/openpgp/gpg-agent.conf +tests/openpgp/gpg_dearmor +tests/openpgp/plain-1 +tests/openpgp/plain-2 +tests/openpgp/plain-3 +tests/openpgp/plain-large +tests/openpgp/prepared.stamp +tests/openpgp/pubring.gpg +tests/openpgp/pubring.pkr +tests/openpgp/secring.gpg +tests/openpgp/secring.skr +tests/pkits/ReadMe.txt +tests/pkits/certpairs/ +tests/pkits/certs/ +tests/pkits/crls/ +tests/pkits/gpg-agent.conf +tests/pkits/gpgsm.conf +tests/pkits/inittests.stamp +tests/pkits/pkcs12/ +tests/pkits/pkits.ldif +tests/pkits/pkits.schema +tests/pkits/policies.txt +tests/pkits/smime/ +tests/pkits/testdir.stamp +tests/pkits/trustlist.txt +tests/private-keys-v1.d/ +tests/pubring.kbx +tests/testdir.stamp +tests/trustlist.txt +tools/clean-sat +tools/gpg-check-pattern +tools/gpg-connect-agent +tools/gpgconf +tools/gpgkey2ssh +tools/gpgparsemail +tools/gpgsplit +tools/make-dns-cert +tools/mk-tdata +tools/symcryptrun +tools/watchgnupg diff --git a/NEWS b/NEWS index 8e3ff652d..97ba097c4 100644 --- a/NEWS +++ b/NEWS @@ -10,6 +10,9 @@ Noteworthy changes in version 2.0.17 (unreleased) * Fixed a bug where Scdaemon sends a signal to Gpg-agent running in non-daemon mode. + * Fixed TTY management for pinentries and session variable update + problem. + Noteworthy changes in version 2.0.16 (2010-07-19) ------------------------------------------------- diff --git a/common/ChangeLog b/common/ChangeLog index c0f618e85..9c18680ce 100644 --- a/common/ChangeLog +++ b/common/ChangeLog @@ -1,3 +1,8 @@ +2011-01-10 Werner Koch + + * session-env.c (update_var): Fix same value test. Fixes + bug#1311. + 2010-09-16 Werner Koch * util.h: Add GPG_ERR_MISSING_ISSUER_CERT. diff --git a/common/session-env.c b/common/session-env.c index ef36dbcbf..10f5dfe35 100644 --- a/common/session-env.c +++ b/common/session-env.c @@ -183,10 +183,11 @@ update_var (session_env_t se, const char *string, size_t namelen, else if (!strncmp (se->array[idx]->name, string, namelen) && strlen (se->array[idx]->name) == namelen) { - /* Check if the value is the same; no need to update it, - except for updating the default flag. */ if (strlen (se->array[idx]->value) == valuelen) { + /* The new value has the same length. We can update it + in-place. */ + memcpy (se->array[idx]->value, value, valuelen); se->array[idx]->is_default = !!set_default; return 0; }