From 165a57d29d2ac84159aa48b171b6098c629bc798 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Thu, 1 Dec 2011 22:53:03 +0100 Subject: Generate the ChangeLog from commit logs. * build-aux/gitlog-to-changelog: New script. Taken from gnulib. * build-aux/git-log-fix: New file. * build-aux/git-log-footer: New file. * doc/HACKING: New file. * ChangeLog: New file. * Makefile.am (EXTRA_DIST): Add new files. (gen-ChangeLog): New. (dist-hook): Run gen-ChangeLog. * autogen.sh: Install commit-msg hook for git. Rename all ChangeLog files to ChangeLog-2011. --- ChangeLog | 446 +------- ChangeLog-2011 | 445 ++++++++ Makefile.am | 22 +- autogen.sh | 7 + build-aux/git-hooks/commit-msg | 127 +++ build-aux/git-log-fix | 3 + build-aux/git-log-footer | 14 + build-aux/gitlog-to-changelog | 345 ++++++ contrib/ChangeLog | 22 - contrib/ChangeLog-2011 | 29 + doc/ChangeLog | 148 --- doc/ChangeLog-2011 | 154 +++ doc/HACKING | 25 + doc/Makefile.am | 2 +- src/ChangeLog | 2368 --------------------------------------- src/ChangeLog-2011 | 2375 ++++++++++++++++++++++++++++++++++++++++ tests/ChangeLog | 74 -- tests/ChangeLog-2011 | 81 ++ 18 files changed, 3638 insertions(+), 3049 deletions(-) create mode 100644 ChangeLog-2011 create mode 100755 build-aux/git-hooks/commit-msg create mode 100644 build-aux/git-log-fix create mode 100644 build-aux/git-log-footer create mode 100755 build-aux/gitlog-to-changelog delete mode 100644 contrib/ChangeLog create mode 100644 contrib/ChangeLog-2011 delete mode 100644 doc/ChangeLog create mode 100644 doc/ChangeLog-2011 create mode 100644 doc/HACKING delete mode 100644 src/ChangeLog create mode 100644 src/ChangeLog-2011 delete mode 100644 tests/ChangeLog create mode 100644 tests/ChangeLog-2011 diff --git a/ChangeLog b/ChangeLog index ee8e140..34fda85 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,438 +1,16 @@ -2011-11-28 Jim Meyering +No more ChangeLog files +======================== - accept --with-libgpg-error-prefix as well as --with-gpg-error-prefix - * m4/gpg-error.m4: Update from git master. +Do not modify any of the ChangeLog files in Libassuan. Starting on +December 1st, 2011 we put change information only in the GIT commit +log, and generate a top-level ChangeLog file from logs at "make dist" +time. As such, there are strict requirements on the form of the +commit log messages. See doc/HACKING for details. The old ChangeLog +files have all be renamed to ChangeLog-2011. -2011-08-10 Werner Koch - * configure.ac: Use http://bugs.gnupg.org as bug reporting - address. Fix new autoconf warnings. - Update libtool to version 2.4. - - * config.guess, config.sub: Update to version 2011-06-03. - -2011-06-16 Marcus Brinkmann - - Release 2.0.2 - - * configure.ac: Set LT version to C2/A2/R0. - -2011-04-20 Werner Koch - - * Makefile.am (EXTRA_DIST): s/README.SVN/README.GIT/ - -2011-04-06 Werner Koch - - * autogen.sh: Check the git setup. Add option --build-w64. - * configure.ac (HAVE_W64_SYSTEM): Define. - (LIBGCRYPT_CONFIG_HOST): New. - - * m4/gpg-error.m4: Update from current libgpg-error repo. - -2011-03-28 Werner Koch - - * configure.ac (AC_CHECK_HEADERS): Check for sys/select.h which is - needed by one test utility. - -2010-12-23 Werner Koch - - * configure.ac: Add a git commit identifier to the version. - -2010-11-01 Marcus Brinkmann - - * configure.ac: Check for fcntl.h. - -2010-11-01 Werner Koch - - * configure.ac: Check for sys/types.h, sys/stat.h, sys/time and - unistd.h - -2010-08-19 Werner Koch - - * configure.ac (AH_TOP, AH_BOTTOM): New. Define - GPG_ERR_ENABLE_ERRNO_MACROS. - -2010-08-09 Werner Koch - - Release 2.0.1 - - * configure.ac: Set LT version to C1/A1/R0. - -2010-04-20 Werner Koch - - * configure.ac: Change wording of the no-funopen warning. - -2010-03-22 Werner Koch - - * configure.ac (CC_FOR_BUILD): Add test. - -2010-03-17 Werner Koch - - * tests/ChangeLog: New. Move all relevant entries to there. - -2010-02-25 Werner Koch - - * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Fix for non x86 mingw - targets. - -2010-02-11 Werner Koch - - * configure.ac (inet_pton): Check for it. - -2010-02-04 Werner Koch - - * configure.ac (AC_TYPE_UINT16_T): New. - -2010-01-26 Werner Koch - - * configure.ac (NETLIBS) [W32CE]: Use -lws2. - -2010-01-22 Werner Koch - - * configure.ac: Require libgpg-error 1.8. - (HAVE_W32CE_SYSTEM): New am_defines and am_conditionals. - * ltmain.sh (wrappers_required): Don't set for mingw32ce. - * autogen.sh: Add option --build-w32ce. Remove --disable-shared - from --build-w32. - -2010-01-08 Marcus Brinkmann - - Released 2.0.0. - -2010-01-05 Marcus Brinkmann - - * configure.ac (_DARWIN_C_SOURCE): Define on frapple. - -2009-12-22 Marcus Brinkmann - - * configure.ac: Do not use echo -n. - -2009-12-15 Marcus Brinkmann - - * configure.ac: Bump version to 2.0.0. - -2009-10-16 Marcus Brinkmann - - * autogen.sh: Remove --with-pth-prefix from configure invocation. - * configure.ac (_ASSUAN_IN_LIBASSUAN, PTH_SYSCALL_SOFT): Do not - set anymore. - (GNUPG_PATH_PTH): Don't invoke. - (HAVE_PTH): Remove conditional. - (LIBASSUAN_CONFIG_THREAD_MODULES): Removed. - -2009-10-08 Marcus Brinkmann - - * configure.ac: AC_REPLACE_FUNCS for vasprintf. - -2009-09-19 Marcus Brinkmann - - * configure.ac: Check for stdint.h and inttypes.h. Invoke - AC_TYPE_UINTPTR_T. - -2009-09-08 Marcus Brinkmann - - * m4/gpg-error.m4: New file. - -2009-09-01 Marcus Brinkmann - - * configure.ac: Set BUILD_REVISION and update calculation of data - for build info. Update libtool macros. Set NETLIBS for W32 - targets. - -2009-08-26 Marcus Brinkmann - - * configure.ac: Test for versioned symbols support. - (LIBASSUAN_LT_CURRENT, LIBASSUAN_LT_AGE) - (LIBASSUAN_LT_REVISION): New, set to 0. - (LIBASSUAN_CONFIG_API_VERSION): Bump to 2. - (AC_CONFIG_MACRO_DIR, AC_DISABLE_STATIC, AC_LIBTOOL_WIN32_DLL) - (AC_LIBTOOL_RC, AC_PROG_LIBTOOL, AM_PATH_GPG_ERROR): Invoke. - (AC_PROG_RANLIB): Don't invoke. - (HAVE_W32_SYSTEM): New AM conditional. - (AC_CONFIG_FILES): Add src/versioninfo.rc. - * ltmain.sh, m4/libtool.m4, m4/ltoptions.m4, m4/ltsugar.m4, - m4/ltversion.m4, m4/lt~obsolete.m4: New files from libtool 2.2.6. - -2009-01-22 Werner Koch - - * configure.ac: Check for nanoleep only in libc. - -2008-05-25 Werner Koch - - Released 1.0.5. - -2008-05-23 Werner Koch - - * configure.ac: Use -fPIC with GCC under Linux. - -2007-12-12 Werner Koch - - Released 1.0.4. - - * config.sub, config.guess: Update to version 2007-11-19. - -2007-08-24 Werner Koch - - Released 1.0.3. - - Switched license of the library code back to LGPLv2.1. See NEWS. - - * COPYING.LIB: Replaced by LPGLv2.1 - -2007-07-05 Werner Koch - - Released 1.0.2. - - Relicensed to LGPLv3. - - * COPYING: Replaced by GPLv3. - * COPYING.LESSER: Removed. - * COPYING.LIB: New. - - * Makefile.am (ACLOCAL_AMFLAGS): Do not create gzipped tarball. - -2007-07-03 Werner Koch - - * configure.ac (NETLIBS): Use ws2_32 instead of wsock32. - -2007-06-15 Werner Koch - - * autogen.sh: Use = and not == in test to be POSIXly correct. - Change shell back to /bin/sh. - -2007-06-15 Marcus Brinkmann - - * autogen.sh: Require bash. - -2007-05-30 Werner Koch - - * autogen.sh <--build-w32>: Modernize. - -2007-05-29 Werner Koch - - * configure.ac: Require automake 1.10 and autoconf 2.61. - (AM_PROG_CC_C_O): New. Error out if no C-89 cc is installed. - (gl_HEADER_SYS_SOCKET): Explicitly add this for documentation. - -2007-05-24 Werner Koch - - * configure.ac: Use -Wpointer-arith is possible. - -2006-11-22 Werner Koch - - Released 1.0.1. - -2006-11-21 Werner Koch - - * configure.ac (AH_BOTTOM): Define PTH_SYSCALL_SOFT to 0. - (AC_INIT): Use the SVN magic. - - * m4/gnupg-pth.m4 (GNUPG_PTH_VERSION_CHECK): Use --all with - pth-config. - -2006-11-15 Werner Koch - - * autogen.sh: Add convenience option --build-amd64. - -2006-10-31 Werner Koch - - Released 1.0.0. - -2006-10-20 Werner Koch - - * Makefile.am (stowinstall): New convenience target. - -2006-10-10 Werner Koch - - Released 0.9.3. - - * configure.ac: Check for cmsghdr. - (USE_DESCRIPTOR_PASSING): Define it then. - -2006-10-09 Werner Koch - - * m4/gnupg-pth.m4: New. Taked from GnuPG. - -2006-10-04 Werner Koch - - Released 0.9.2. - -2006-10-04 Werner Koch - - Released 0.9.1. - - * configure.ac (AB_INIT): New. - - * m4/autobuild.m4: New. - -2006-09-14 Werner Koch - - Released 0.9.0. - - * configure.ac: Check for S_PEERCRED. Include check for socklen_t. - * m4/sys_socket_h.m4, m4/onceonly.m4, m4/socklen.m4: New. - * m4/Makefile.am: New. - -2006-09-05 Werner Koch - - * configure.ac (AH_BOTTOM): Define _ASSUAN_IN_LIBASSUAN. - -2005-10-24 Werner Koch - - * COPYING.LESSER: Added. - * README.CVS: Renamed to .. - * README.SVN: .. this. - -2005-10-08 Marcus Brinkmann - - * configure.ac: Check for socket library and add it to - LIBASSUAN_CONFIG_LIBS if necessary. - -2005-10-07 Marcus Brinkmann - - * configure.ac: Invoke AC_CANONICAL_HOST. Define _XOPEN_SOURCE, - _XOPEN_SOURCE_EXTENDED and __EXTENSIONS__ on Solaris. - Add stpcy as replacement function. - Add setenv as replacement function (and check for unistd.h). - -2005-06-20 Werner Koch - - Released 0.6.10. - -2004-12-22 Werner Koch - - Released 0.6.9. - - For security reasons switched to automake 1.9. - -2004-12-18 Werner Koch - - * autogen.sh: Add Option --build-w32. - -2004-12-07 Werner Koch - - * configure.ac: Define HAVE_W32_SYSTEM and HAVE_DOSISH_SYSTEM. - Add -lwsock2 to the config lib flags for W32. - -2004-11-25 Werner Koch - - Released 0.6.8. - -2004-09-27 Werner Koch - - * config.sub, config.guess: Updated. - -2004-06-23 Marcus Brinkmann - - * configure.ac: Check for . - -2004-06-08 Werner Koch - - Released 0.6.6. - -2004-04-02 Thomas Schwinge - - * autogen.sh: Added ACLOCAL_FLAGS. - -2004-02-20 Werner Koch - - Released 0.6.4. - -2004-02-11 Werner Koch - - * autogen.sh (check_version): Removed bashism and simplified. - -2004-01-29 Werner Koch - - Released 0.6.3. - -2003-12-18 Werner Koch - - Released 0.6.2. - -2003-12-08 Werner Koch - - * TODO: New. - * Makefile.am: Add README.CVS and autogen.sh. Removed m4/Makefile. - * README.CVS: New. - * autogen.sh: Revamped. - * configure.ac: Add automake version number for autogen.sh use. - -2003-11-17 Werner Koch - - Released 0.6.1. - -2003-08-06 Werner Koch - - Released 0.6.0. - -2003-07-29 Werner Koch - - * configure.ac: Cleanups for newer autoconf. - -2003-07-29 gettextize - - * Makefile.am (EXTRA_DIST): Add config.rpath. - * configure.ac (AC_CONFIG_FILES): Add po/Makefile.in, - -2003-04-28 gettextize - - * Makefile.am (SUBDIRS): Add m4. - (ACLOCAL_AMFLAGS): New variable. - (EXTRA_DIST): New variable. - * configure.ac (AC_CONFIG_FILES): Add po/Makefile.in, - -2003-02-18 Neal H. Walfield - - * COPYING: New file. - -2003-02-18 Neal H. Walfield - - * configure.ac: Fix typo. - (AC_CONFIG_FILES): Remove common/Makefile.am. - * common: Remove directory. - -2003-02-18 Neal H. Walfield - - * common: New directory. - * Makefile.am (SUBDIRS): Add common. - - * configure.ac: Check for funopen. If not present, check for - fopencookie and implement it in terms of that. Otherwise, fail. - (AC_CONFIG_FILES): Add common/Makefile. - -2003-02-18 Neal H. Walfield - - * configure.ac (AC_CONFIG_FILES): Add src/libassuan-config. - (LIBASSUAN_CONFIG_LIBS, LIBASSUAN_CONFIG_CFLAGS): New variables. - AC_SUBST them. - -2003-02-17 Neal H. Walfield - - * AUTHORS: New file. - * INSTALL: New file. - * Makefile.am: New file. - * NEWS: New file. - * README: New file. - * autogen.sh: New file, copied from newpg. - * configure.ac: New file, imported from newpg. - * depcomp: New file. - * install-sh: New file. - * missing: New file. - * mkinstalldirs: New file. - - * doc: New directory. - * src: New directory. - * tests: New directory. - - - Copyright 2003, 2004, 2005, 2006, 2007, 2010 Free Software Foundation, Inc. - - This file is free software; as a special exception the author gives - unlimited permission to copy and/or distribute it, with or without - modifications, as long as this notice is preserved. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY, to the extent permitted by law; without even the - implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +Local Variables: +buffer-read-only: t +mode: text +End: diff --git a/ChangeLog-2011 b/ChangeLog-2011 new file mode 100644 index 0000000..f8a5dfc --- /dev/null +++ b/ChangeLog-2011 @@ -0,0 +1,445 @@ +2011-12-01 Werner Koch + + NB: ChangeLog files are no longer manually maintained. Starting + on December 1st, 2011 we put change information only in the GIT + commit log, and generate a top-level ChangeLog file from logs at + "make dist". See doc/HACKING for details. + +2011-11-28 Jim Meyering + + accept --with-libgpg-error-prefix as well as --with-gpg-error-prefix + * m4/gpg-error.m4: Update from git master. + +2011-08-10 Werner Koch + + * configure.ac: Use http://bugs.gnupg.org as bug reporting + address. Fix new autoconf warnings. + + Update libtool to version 2.4. + + * config.guess, config.sub: Update to version 2011-06-03. + +2011-06-16 Marcus Brinkmann + + Release 2.0.2 + + * configure.ac: Set LT version to C2/A2/R0. + +2011-04-20 Werner Koch + + * Makefile.am (EXTRA_DIST): s/README.SVN/README.GIT/ + +2011-04-06 Werner Koch + + * autogen.sh: Check the git setup. Add option --build-w64. + * configure.ac (HAVE_W64_SYSTEM): Define. + (LIBGCRYPT_CONFIG_HOST): New. + + * m4/gpg-error.m4: Update from current libgpg-error repo. + +2011-03-28 Werner Koch + + * configure.ac (AC_CHECK_HEADERS): Check for sys/select.h which is + needed by one test utility. + +2010-12-23 Werner Koch + + * configure.ac: Add a git commit identifier to the version. + +2010-11-01 Marcus Brinkmann + + * configure.ac: Check for fcntl.h. + +2010-11-01 Werner Koch + + * configure.ac: Check for sys/types.h, sys/stat.h, sys/time and + unistd.h + +2010-08-19 Werner Koch + + * configure.ac (AH_TOP, AH_BOTTOM): New. Define + GPG_ERR_ENABLE_ERRNO_MACROS. + +2010-08-09 Werner Koch + + Release 2.0.1 + + * configure.ac: Set LT version to C1/A1/R0. + +2010-04-20 Werner Koch + + * configure.ac: Change wording of the no-funopen warning. + +2010-03-22 Werner Koch + + * configure.ac (CC_FOR_BUILD): Add test. + +2010-03-17 Werner Koch + + * tests/ChangeLog: New. Move all relevant entries to there. + +2010-02-25 Werner Koch + + * m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Fix for non x86 mingw + targets. + +2010-02-11 Werner Koch + + * configure.ac (inet_pton): Check for it. + +2010-02-04 Werner Koch + + * configure.ac (AC_TYPE_UINT16_T): New. + +2010-01-26 Werner Koch + + * configure.ac (NETLIBS) [W32CE]: Use -lws2. + +2010-01-22 Werner Koch + + * configure.ac: Require libgpg-error 1.8. + (HAVE_W32CE_SYSTEM): New am_defines and am_conditionals. + * ltmain.sh (wrappers_required): Don't set for mingw32ce. + * autogen.sh: Add option --build-w32ce. Remove --disable-shared + from --build-w32. + +2010-01-08 Marcus Brinkmann + + Released 2.0.0. + +2010-01-05 Marcus Brinkmann + + * configure.ac (_DARWIN_C_SOURCE): Define on frapple. + +2009-12-22 Marcus Brinkmann + + * configure.ac: Do not use echo -n. + +2009-12-15 Marcus Brinkmann + + * configure.ac: Bump version to 2.0.0. + +2009-10-16 Marcus Brinkmann + + * autogen.sh: Remove --with-pth-prefix from configure invocation. + * configure.ac (_ASSUAN_IN_LIBASSUAN, PTH_SYSCALL_SOFT): Do not + set anymore. + (GNUPG_PATH_PTH): Don't invoke. + (HAVE_PTH): Remove conditional. + (LIBASSUAN_CONFIG_THREAD_MODULES): Removed. + +2009-10-08 Marcus Brinkmann + + * configure.ac: AC_REPLACE_FUNCS for vasprintf. + +2009-09-19 Marcus Brinkmann + + * configure.ac: Check for stdint.h and inttypes.h. Invoke + AC_TYPE_UINTPTR_T. + +2009-09-08 Marcus Brinkmann + + * m4/gpg-error.m4: New file. + +2009-09-01 Marcus Brinkmann + + * configure.ac: Set BUILD_REVISION and update calculation of data + for build info. Update libtool macros. Set NETLIBS for W32 + targets. + +2009-08-26 Marcus Brinkmann + + * configure.ac: Test for versioned symbols support. + (LIBASSUAN_LT_CURRENT, LIBASSUAN_LT_AGE) + (LIBASSUAN_LT_REVISION): New, set to 0. + (LIBASSUAN_CONFIG_API_VERSION): Bump to 2. + (AC_CONFIG_MACRO_DIR, AC_DISABLE_STATIC, AC_LIBTOOL_WIN32_DLL) + (AC_LIBTOOL_RC, AC_PROG_LIBTOOL, AM_PATH_GPG_ERROR): Invoke. + (AC_PROG_RANLIB): Don't invoke. + (HAVE_W32_SYSTEM): New AM conditional. + (AC_CONFIG_FILES): Add src/versioninfo.rc. + * ltmain.sh, m4/libtool.m4, m4/ltoptions.m4, m4/ltsugar.m4, + m4/ltversion.m4, m4/lt~obsolete.m4: New files from libtool 2.2.6. + +2009-01-22 Werner Koch + + * configure.ac: Check for nanoleep only in libc. + +2008-05-25 Werner Koch + + Released 1.0.5. + +2008-05-23 Werner Koch + + * configure.ac: Use -fPIC with GCC under Linux. + +2007-12-12 Werner Koch + + Released 1.0.4. + + * config.sub, config.guess: Update to version 2007-11-19. + +2007-08-24 Werner Koch + + Released 1.0.3. + + Switched license of the library code back to LGPLv2.1. See NEWS. + + * COPYING.LIB: Replaced by LPGLv2.1 + +2007-07-05 Werner Koch + + Released 1.0.2. + + Relicensed to LGPLv3. + + * COPYING: Replaced by GPLv3. + * COPYING.LESSER: Removed. + * COPYING.LIB: New. + + * Makefile.am (ACLOCAL_AMFLAGS): Do not create gzipped tarball. + +2007-07-03 Werner Koch + + * configure.ac (NETLIBS): Use ws2_32 instead of wsock32. + +2007-06-15 Werner Koch + + * autogen.sh: Use = and not == in test to be POSIXly correct. + Change shell back to /bin/sh. + +2007-06-15 Marcus Brinkmann + + * autogen.sh: Require bash. + +2007-05-30 Werner Koch + + * autogen.sh <--build-w32>: Modernize. + +2007-05-29 Werner Koch + + * configure.ac: Require automake 1.10 and autoconf 2.61. + (AM_PROG_CC_C_O): New. Error out if no C-89 cc is installed. + (gl_HEADER_SYS_SOCKET): Explicitly add this for documentation. + +2007-05-24 Werner Koch + + * configure.ac: Use -Wpointer-arith is possible. + +2006-11-22 Werner Koch + + Released 1.0.1. + +2006-11-21 Werner Koch + + * configure.ac (AH_BOTTOM): Define PTH_SYSCALL_SOFT to 0. + (AC_INIT): Use the SVN magic. + + * m4/gnupg-pth.m4 (GNUPG_PTH_VERSION_CHECK): Use --all with + pth-config. + +2006-11-15 Werner Koch + + * autogen.sh: Add convenience option --build-amd64. + +2006-10-31 Werner Koch + + Released 1.0.0. + +2006-10-20 Werner Koch + + * Makefile.am (stowinstall): New convenience target. + +2006-10-10 Werner Koch + + Released 0.9.3. + + * configure.ac: Check for cmsghdr. + (USE_DESCRIPTOR_PASSING): Define it then. + +2006-10-09 Werner Koch + + * m4/gnupg-pth.m4: New. Taked from GnuPG. + +2006-10-04 Werner Koch + + Released 0.9.2. + +2006-10-04 Werner Koch + + Released 0.9.1. + + * configure.ac (AB_INIT): New. + + * m4/autobuild.m4: New. + +2006-09-14 Werner Koch + + Released 0.9.0. + + * configure.ac: Check for S_PEERCRED. Include check for socklen_t. + * m4/sys_socket_h.m4, m4/onceonly.m4, m4/socklen.m4: New. + * m4/Makefile.am: New. + +2006-09-05 Werner Koch + + * configure.ac (AH_BOTTOM): Define _ASSUAN_IN_LIBASSUAN. + +2005-10-24 Werner Koch + + * COPYING.LESSER: Added. + * README.CVS: Renamed to .. + * README.SVN: .. this. + +2005-10-08 Marcus Brinkmann + + * configure.ac: Check for socket library and add it to + LIBASSUAN_CONFIG_LIBS if necessary. + +2005-10-07 Marcus Brinkmann + + * configure.ac: Invoke AC_CANONICAL_HOST. Define _XOPEN_SOURCE, + _XOPEN_SOURCE_EXTENDED and __EXTENSIONS__ on Solaris. + Add stpcy as replacement function. + Add setenv as replacement function (and check for unistd.h). + +2005-06-20 Werner Koch + + Released 0.6.10. + +2004-12-22 Werner Koch + + Released 0.6.9. + + For security reasons switched to automake 1.9. + +2004-12-18 Werner Koch + + * autogen.sh: Add Option --build-w32. + +2004-12-07 Werner Koch + + * configure.ac: Define HAVE_W32_SYSTEM and HAVE_DOSISH_SYSTEM. + Add -lwsock2 to the config lib flags for W32. + +2004-11-25 Werner Koch + + Released 0.6.8. + +2004-09-27 Werner Koch + + * config.sub, config.guess: Updated. + +2004-06-23 Marcus Brinkmann + + * configure.ac: Check for . + +2004-06-08 Werner Koch + + Released 0.6.6. + +2004-04-02 Thomas Schwinge + + * autogen.sh: Added ACLOCAL_FLAGS. + +2004-02-20 Werner Koch + + Released 0.6.4. + +2004-02-11 Werner Koch + + * autogen.sh (check_version): Removed bashism and simplified. + +2004-01-29 Werner Koch + + Released 0.6.3. + +2003-12-18 Werner Koch + + Released 0.6.2. + +2003-12-08 Werner Koch + + * TODO: New. + * Makefile.am: Add README.CVS and autogen.sh. Removed m4/Makefile. + * README.CVS: New. + * autogen.sh: Revamped. + * configure.ac: Add automake version number for autogen.sh use. + +2003-11-17 Werner Koch + + Released 0.6.1. + +2003-08-06 Werner Koch + + Released 0.6.0. + +2003-07-29 Werner Koch + + * configure.ac: Cleanups for newer autoconf. + +2003-07-29 gettextize + + * Makefile.am (EXTRA_DIST): Add config.rpath. + * configure.ac (AC_CONFIG_FILES): Add po/Makefile.in, + +2003-04-28 gettextize + + * Makefile.am (SUBDIRS): Add m4. + (ACLOCAL_AMFLAGS): New variable. + (EXTRA_DIST): New variable. + * configure.ac (AC_CONFIG_FILES): Add po/Makefile.in, + +2003-02-18 Neal H. Walfield + + * COPYING: New file. + +2003-02-18 Neal H. Walfield + + * configure.ac: Fix typo. + (AC_CONFIG_FILES): Remove common/Makefile.am. + * common: Remove directory. + +2003-02-18 Neal H. Walfield + + * common: New directory. + * Makefile.am (SUBDIRS): Add common. + + * configure.ac: Check for funopen. If not present, check for + fopencookie and implement it in terms of that. Otherwise, fail. + (AC_CONFIG_FILES): Add common/Makefile. + +2003-02-18 Neal H. Walfield + + * configure.ac (AC_CONFIG_FILES): Add src/libassuan-config. + (LIBASSUAN_CONFIG_LIBS, LIBASSUAN_CONFIG_CFLAGS): New variables. + AC_SUBST them. + +2003-02-17 Neal H. Walfield + + * AUTHORS: New file. + * INSTALL: New file. + * Makefile.am: New file. + * NEWS: New file. + * README: New file. + * autogen.sh: New file, copied from newpg. + * configure.ac: New file, imported from newpg. + * depcomp: New file. + * install-sh: New file. + * missing: New file. + * mkinstalldirs: New file. + + * doc: New directory. + * src: New directory. + * tests: New directory. + + + Copyright 2003, 2004, 2005, 2006, 2007, 2010 Free Software Foundation, Inc. + + This file is free software; as a special exception the author gives + unlimited permission to copy and/or distribute it, with or without + modifications, as long as this notice is preserved. + + This file is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY, to the extent permitted by law; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff --git a/Makefile.am b/Makefile.am index 55040e7..e7eeee5 100644 --- a/Makefile.am +++ b/Makefile.am @@ -21,14 +21,32 @@ ACLOCAL_AMFLAGS = -I m4 AUTOMAKE_OPTIONS = dist-bzip2 no-dist-gzip -EXTRA_DIST = config.rpath autogen.sh README.GIT +EXTRA_DIST = config.rpath autogen.sh README.GIT \ + ChangeLog-2011 doc/ChangeLog-2011 src/ChangeLog-2011 \ + tests/ChangeLog-2011 contrib/ChangeLog-2011 \ + build-aux/gitlog-to-changelog build-aux/git-log-footer \ + build-aux/git-log-fix SUBDIRS = m4 src doc tests -dist-hook: +dist-hook: gen-ChangeLog echo "$(VERSION)" > $(distdir)/VERSION +gen_start_date = 2011-12-01T00:00:00 +.PHONY: gen-ChangeLog +gen-ChangeLog: + if test -d $(top_srcdir)/.git; then \ + (cd $(top_srcdir) && \ + ./build-aux/gitlog-to-changelog \ + --amend=build-aux/git-log-fix \ + --since=$(gen_start_date) ) > $(distdir)/cl-t; \ + cat $(top_srcdir)/build-aux/git-log-footer >> $(distdir)/cl-t;\ + rm -f $(distdir)/ChangeLog; \ + mv $(distdir)/cl-t $(distdir)/ChangeLog; \ + fi + + stowinstall: $(MAKE) $(AM_MAKEFLAGS) install prefix=/usr/local/stow/libassuan diff --git a/autogen.sh b/autogen.sh index 30a247a..42e00d5 100755 --- a/autogen.sh +++ b/autogen.sh @@ -261,6 +261,13 @@ EOF cp -av .git/hooks/pre-commit.sample .git/hooks/pre-commit chmod -c +x .git/hooks/pre-commit fi + if [ -f build-aux/git-hooks/commit-msg -a ! -f .git/hooks/commit-msg ] ; then + cat <&2 +*** Activating commit log message check hook. *** +EOF + cp -av build-aux/git-hooks/commit-msg .git/hooks/commit-msg + chmod -c +x .git/hooks/commit-msg + fi fi diff --git a/build-aux/git-hooks/commit-msg b/build-aux/git-hooks/commit-msg new file mode 100755 index 0000000..5a697c7 --- /dev/null +++ b/build-aux/git-hooks/commit-msg @@ -0,0 +1,127 @@ +eval '(exit $?0)' && eval 'exec perl -w "$0" ${1+"$@"}' + & eval 'exec perl -w "$0" $argv:q' + if 0; + +# An hook script to check the commit log message. +# Called by "git commit" with one argument, the name of the file +# that has the commit message. The hook should exit with non-zero +# status after issuing an appropriate message if it wants to stop the +# commit. The hook is allowed to edit the commit message file. +# +# To enable this hook, copy it to "~/.git/hooks/commit-msg". +# +# This script is based on the one from GNU coreutils. + +use strict; +use warnings; +(my $ME = $0) =~ s|.*/||; + +my $editor = $ENV{EDITOR} || 'vi'; +$ENV{PATH} = '/bin:/usr/bin'; + +# Rewrite the $LOG_FILE (old contents in @$LINE_REF) with an additional +# commented diagnostic "# $ERR" line at the top. +sub rewrite($$$) +{ + my ($log_file, $err, $line_ref) = @_; + local *LOG; + open LOG, '>', $log_file + or die "$ME: $log_file: failed to open for writing: $!"; + print LOG "# $err"; + print LOG @$line_ref; + close LOG + or die "$ME: $log_file: failed to rewrite: $!\n"; +} + +sub re_edit($) +{ + my ($log_file) = @_; + + warn "Interrupt (Ctrl-C) to abort...\n"; + + system 'sh', '-c', "$editor $log_file"; + ($? & 127) || ($? >> 8) + and die "$ME: $log_file: the editor ($editor) failed, aborting\n"; +} + +# Given a $LOG_FILE name and a \@LINE buffer, +# read the contents of the file into the buffer and analyze it. +# If the log message passes muster, return the empty string. +# If not, return a diagnostic. +sub check_msg($$) +{ + my ($log_file, $line_ref) = @_; + + local *LOG; + open LOG, '<', $log_file + or return "failed to open for reading: $!"; + @$line_ref = ; + close LOG; + + my @line = @$line_ref; + chomp @line; + + # Don't filter out blank or comment lines; git does that already, + # and if we were to ignore them here, it could lead to committing + # with lines that start with "#" in the log. + + # Filter out leading blank and comment lines. + # while (@line && $line[0] =~ /^(?:#.*|[ \t]*)$/) { shift @line; } + + # Filter out blank and comment lines at EOF. + # while (@line && $line[$#line] =~ /^(?:#.*|[ \t]*)$/) { pop @line; } + + @line == 0 + and return 'no log message'; + + # The first line should not be too short + 8 < length $line[0] || return 'summary line too short'; + + # The first line should not start with an asterisk or a hash sign. + # An asterisk might indicate that a change entry was started right + # at the first line. + $line[0] =~ /^[*#]/ && return "summary line starts with an * or #"; + + # Second line should be blank or not present. + 2 <= @line && length $line[1] + and return 'second line must be empty'; + + # Limit line length to allow for the ChangeLog's leading TAB. + foreach my $line (@line) + { + 72 < length $line && $line =~ /^[^#]/ + and return 'line longer than 72 characters'; + } + + return ''; +} + +{ + @ARGV == 1 + or die; + + my $log_file = $ARGV[0]; + + while (1) + { + my @line; + my $err = check_msg $log_file, \@line; + $err eq '' + and last; + $err = "$ME: $err\n"; + warn $err; + exit 1; + + # Insert the diagnostic as a comment on the first line of $log_file. + #rewrite $log_file, $err, \@line; + #re_edit $log_file; + # + ## Stop if our parent is killed. + #getppid() == 1 + # and last; + } +} + +# Local Variables: +# mode: perl +# End: diff --git a/build-aux/git-log-fix b/build-aux/git-log-fix new file mode 100644 index 0000000..af702fe --- /dev/null +++ b/build-aux/git-log-fix @@ -0,0 +1,3 @@ +# This file is expected to be used via gitlog-to-changelog's --amend=FILE +# option. It specifies what changes to make to each given SHA1's commit +# log and metadata, using Perl-eval'able expressions. diff --git a/build-aux/git-log-footer b/build-aux/git-log-footer new file mode 100644 index 0000000..c31fe93 --- /dev/null +++ b/build-aux/git-log-footer @@ -0,0 +1,14 @@ + +2011-12-01 Werner Koch + + NB: Changes done before December 1st, 2011 are described in + per directory files named ChangeLog-2011. See doc/HACKING for + details. + + ----- + Copyright (C) 2011 Free Software Foundation, Inc. + + Copying and distribution of this file and/or the original GIT + commit log messages, with or without modification, are + permitted provided the copyright notice and this notice are + preserved. diff --git a/build-aux/gitlog-to-changelog b/build-aux/gitlog-to-changelog new file mode 100755 index 0000000..40a8035 --- /dev/null +++ b/build-aux/gitlog-to-changelog @@ -0,0 +1,345 @@ +eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}' + & eval 'exec perl -wS "$0" $argv:q' + if 0; +# Convert git log output to ChangeLog format. + +my $VERSION = '2011-11-02 07:53'; # UTC +# The definition above must lie within the first 8 lines in order +# for the Emacs time-stamp write hook (at end) to update it. +# If you change this file with Emacs, please let the write hook +# do its job. Otherwise, update this string manually. + +# Copyright (C) 2008-2011 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Written by Jim Meyering + +use strict; +use warnings; +use Getopt::Long; +use POSIX qw(strftime); + +(my $ME = $0) =~ s|.*/||; + +# use File::Coda; # http://meyering.net/code/Coda/ +END { + defined fileno STDOUT or return; + close STDOUT and return; + warn "$ME: failed to close standard output: $!\n"; + $? ||= 1; +} + +sub usage ($) +{ + my ($exit_code) = @_; + my $STREAM = ($exit_code == 0 ? *STDOUT : *STDERR); + if ($exit_code != 0) + { + print $STREAM "Try `$ME --help' for more information.\n"; + } + else + { + print $STREAM < ChangeLog + $ME -- -n 5 foo > last-5-commits-to-branch-foo + +In a FILE specified via --amend, comment lines (starting with "#") are ignored. +FILE must consist of pairs where SHA is a 40-byte SHA1 (alone on +a line) referring to a commit in the current project, and CODE refers to one +or more consecutive lines of Perl code. Pairs must be separated by one or +more blank line. + +Here is sample input for use with --amend=FILE, from coreutils: + +3a169f4c5d9159283548178668d2fae6fced3030 +# fix typo in title: +s/all tile types/all file types/ + +1379ed974f1fa39b12e2ffab18b3f7a607082202 +# Due to a bug in vc-dwim, I mis-attributed a patch by Paul to myself. +# Change the author to be Paul. Note the escaped "@": +s,Jim .*>,Paul Eggert , + +EOF + } + exit $exit_code; +} + +# If the string $S is a well-behaved file name, simply return it. +# If it contains white space, quotes, etc., quote it, and return the new string. +sub shell_quote($) +{ + my ($s) = @_; + if ($s =~ m![^\w+/.,-]!) + { + # Convert each single quote to '\'' + $s =~ s/\'/\'\\\'\'/g; + # Then single quote the string. + $s = "'$s'"; + } + return $s; +} + +sub quoted_cmd(@) +{ + return join (' ', map {shell_quote $_} @_); +} + +# Parse file F. +# Comment lines (starting with "#") are ignored. +# F must consist of pairs where SHA is a 40-byte SHA1 +# (alone on a line) referring to a commit in the current project, and +# CODE refers to one or more consecutive lines of Perl code. +# Pairs must be separated by one or more blank line. +sub parse_amend_file($) +{ + my ($f) = @_; + + open F, '<', $f + or die "$ME: $f: failed to open for reading: $!\n"; + + my $fail; + my $h = {}; + my $in_code = 0; + my $sha; + while (defined (my $line = )) + { + $line =~ /^\#/ + and next; + chomp $line; + $line eq '' + and $in_code = 0, next; + + if (!$in_code) + { + $line =~ /^([0-9a-fA-F]{40})$/ + or (warn "$ME: $f:$.: invalid line; expected an SHA1\n"), + $fail = 1, next; + $sha = lc $1; + $in_code = 1; + exists $h->{$sha} + and (warn "$ME: $f:$.: duplicate SHA1\n"), + $fail = 1, next; + } + else + { + $h->{$sha} ||= ''; + $h->{$sha} .= "$line\n"; + } + } + close F; + + $fail + and exit 1; + + return $h; +} + +{ + my $since_date; + my $format_string = '%s%n%b%n'; + my $amend_file; + my $append_dot = 0; + GetOptions + ( + help => sub { usage 0 }, + version => sub { print "$ME version $VERSION\n"; exit }, + 'since=s' => \$since_date, + 'format=s' => \$format_string, + 'amend=s' => \$amend_file, + 'append-dot' => \$append_dot, + ) or usage 1; + + + defined $since_date + and unshift @ARGV, "--since=$since_date"; + + # This is a hash that maps an SHA1 to perl code (i.e., s/old/new/) + # that makes a correction in the log or attribution of that commit. + my $amend_code = defined $amend_file ? parse_amend_file $amend_file : {}; + + my @cmd = (qw (git log --log-size), + '--pretty=format:%H:%ct %an <%ae>%n%n'.$format_string, @ARGV); + open PIPE, '-|', @cmd + or die ("$ME: failed to run `". quoted_cmd (@cmd) ."': $!\n" + . "(Is your Git too old? Version 1.5.1 or later is required.)\n"); + + my $prev_date_line = ''; + my @prev_coauthors = (); + while (1) + { + defined (my $in = ) + or last; + $in =~ /^log size (\d+)$/ + or die "$ME:$.: Invalid line (expected log size):\n$in"; + my $log_nbytes = $1; + + my $log; + my $n_read = read PIPE, $log, $log_nbytes; + $n_read == $log_nbytes + or die "$ME:$.: unexpected EOF\n"; + + # Extract leading hash. + my ($sha, $rest) = split ':', $log, 2; + defined $sha + or die "$ME:$.: malformed log entry\n"; + $sha =~ /^[0-9a-fA-F]{40}$/ + or die "$ME:$.: invalid SHA1: $sha\n"; + + # If this commit's log requires any transformation, do it now. + my $code = $amend_code->{$sha}; + if (defined $code) + { + eval 'use Safe'; + my $s = new Safe; + # Put the unpreprocessed entry into "$_". + $_ = $rest; + + # Let $code operate on it, safely. + my $r = $s->reval("$code") + or die "$ME:$.:$sha: failed to eval \"$code\":\n$@\n"; + + # Note that we've used this entry. + delete $amend_code->{$sha}; + + # Update $rest upon success. + $rest = $_; + } + + my @line = split "\n", $rest; + my $author_line = shift @line; + defined $author_line + or die "$ME:$.: unexpected EOF\n"; + $author_line =~ /^(\d+) (.*>)$/ + or die "$ME:$.: Invalid line " + . "(expected date/author/email):\n$author_line\n"; + + my $date_line = sprintf "%s $2\n", strftime ("%F", localtime ($1)); + + # Format 'Co-authored-by: A U Thor ' lines in + # standard multi-author ChangeLog format. + my @coauthors = grep /^Co-authored-by:.*$/, @line; + for (@coauthors) + { + s/^Co-authored-by:\s*/\t /; + s/\s*/ + or warn "$ME: warning: missing email address for " + . substr ($_, 5) . "\n"; + } + + # If this header would be the same as the previous date/name/email/ + # coauthors header, then arrange not to print it. + if ($date_line ne $prev_date_line or "@coauthors" ne "@prev_coauthors") + { + $prev_date_line eq '' + or print "\n"; + print $date_line; + @coauthors + and print join ("\n", @coauthors), "\n"; + } + $prev_date_line = $date_line; + @prev_coauthors = @coauthors; + + # Omit "Co-authored-by..." and "Signed-off-by..." lines. + @line = grep !/^Signed-off-by: .*>$/, @line; + @line = grep !/^Co-authored-by: /, @line; + + # Remove leading and trailing blank lines. + if (@line) + { + while ($line[0] =~ /^\s*$/) { shift @line; } + while ($line[$#line] =~ /^\s*$/) { pop @line; } + } + + # If there were any lines + if (@line == 0) + { + warn "$ME: warning: empty commit message:\n $date_line\n"; + } + else + { + if ($append_dot) + { + # If the first line of the message has enough room, then + if (length $line[0] < 72) + { + # append a dot if there is no other punctuation or blank + # at the end. + $line[0] =~ /[[:punct:]\s]$/ + or $line[0] .= '.'; + } + } + + # Prefix each non-empty line with a TAB. + @line = map { length $_ ? "\t$_" : '' } @line; + + print "\n", join ("\n", @line), "\n"; + } + + defined ($in = ) + or last; + $in ne "\n" + and die "$ME:$.: unexpected line:\n$in"; + } + + close PIPE + or die "$ME: error closing pipe from " . quoted_cmd (@cmd) . "\n"; + # FIXME-someday: include $PROCESS_STATUS in the diagnostic + + # Complain about any unused entry in the --amend=F specified file. + my $fail = 0; + foreach my $sha (keys %$amend_code) + { + warn "$ME:$amend_file: unused entry: $sha\n"; + $fail = 1; + } + + exit $fail; +} + +# Local Variables: +# mode: perl +# indent-tabs-mode: nil +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "my $VERSION = '" +# time-stamp-format: "%:y-%02m-%02d %02H:%02M" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "'; # UTC" +# End: diff --git a/contrib/ChangeLog b/contrib/ChangeLog deleted file mode 100644 index 2d2c7b6..0000000 --- a/contrib/ChangeLog +++ /dev/null @@ -1,22 +0,0 @@ -2010-11-15 Marcus Brinkmann - - * conf-w32ce-msc/stdint.h: New file. - * conf-w32ce-msc/build.mk (conf_sources): Add stdint.h. - (copy-static-source): Revert last change. - -2010-11-15 Werner Koch - - * conf-w32ce-msc/config.h (strdup, strcasecmp): Add macros. - - * conf-w32ce-msc/build.mk (copy-static-source): Create stdint.h. - (all): Add ws2.lib - (clean): New. - -2010-11-02 Werner Koch - - * conf-w32ce-msc/build.mk: Change directory layout. - -2010-11-01 Werner Koch - - * conf-w32ce-msc/build.mk: New. - * conf-w32ce-msc/config.h: New. diff --git a/contrib/ChangeLog-2011 b/contrib/ChangeLog-2011 new file mode 100644 index 0000000..65306e3 --- /dev/null +++ b/contrib/ChangeLog-2011 @@ -0,0 +1,29 @@ +2011-12-01 Werner Koch + + NB: ChangeLog files are no longer manually maintained. Starting + on December 1st, 2011 we put change information only in the GIT + commit log, and generate a top-level ChangeLog file from logs at + "make dist". See doc/HACKING for details. + +2010-11-15 Marcus Brinkmann + + * conf-w32ce-msc/stdint.h: New file. + * conf-w32ce-msc/build.mk (conf_sources): Add stdint.h. + (copy-static-source): Revert last change. + +2010-11-15 Werner Koch + + * conf-w32ce-msc/config.h (strdup, strcasecmp): Add macros. + + * conf-w32ce-msc/build.mk (copy-static-source): Create stdint.h. + (all): Add ws2.lib + (clean): New. + +2010-11-02 Werner Koch + + * conf-w32ce-msc/build.mk: Change directory layout. + +2010-11-01 Werner Koch + + * conf-w32ce-msc/build.mk: New. + * conf-w32ce-msc/config.h: New. diff --git a/doc/ChangeLog b/doc/ChangeLog deleted file mode 100644 index 5e1e198..0000000 --- a/doc/ChangeLog +++ /dev/null @@ -1,148 +0,0 @@ -2009-12-08 Marcus Brinkmann - - * assuan.texi: Use our own copy of the setfont macro, as it takes - an extra argument since texinfo 4.13. - - * assuan.texi (Contexts): Document ASSUAN_SPAWN_DETACHED. - -2009-11-25 Marcus Brinkmann - - * assuan.texi (Data Types): Document assuan_fdopen. - -2009-11-24 Marcus Brinkmann - - * assuan.texi: Remove assuan_disconnect, assuan_deinit_server. - Many smaller API fixes. - -2009-11-10 Marcus Brinkmann - - * assuan.texi: Various fixes and updates for the new interface. - -2009-11-05 Marcus Brinkmann - - * assuan.texi: Update assuan_pipe_connect, assuan_socket_connect - and assuan_init_socket_connect. - (Client code): Document ASSUAN_PIPE_CONNECT_FDPASSING and - ASSUAN_PIPE_CONNECT_DETACHED. - (Server code): Document ASSUAN_SOCKET_SERVER_FDPASSING and - ASSUAN_SOCKET_SERVER_ACCEPTED. - (Utilities): Update documentation of assuan_get_peercred. - - * assuan.texi (External I/O Loop Server): Document change to - assuan_process_next. - -2009-10-16 Marcus Brinkmann - - * assuan.texi: Remove documentation for thread support. - (assuan_pipe_connect_ext): Update prototype. - -2009-10-14 Werner Koch - - * assuan.texi (Utilities): Describe assuan_get_command_name. - -2009-09-21 Marcus Brinkmann - - * assuan.texi: Update to new API. - -2009-09-01 Marcus Brinkmann - - * assuan.texi: (External I/O Loop Server): Document - assuan_process_done. - (assuan_register_post_cmd_notify): Change type of ERR from int to - gpg_error_t. - (assuan_set_error): Likewise. - (assuan_register_option_handler): Change types in callback handler - from int to gpg_error_t. - (assuan_inquire_ext): Likewise. - -2009-08-28 Marcus Brinkmann - - * assuan.texi: Update to API changes. - (Data Types): Remove assuan_error_t. - (Utilities): Remove assuan_strerror. - -2008-10-29 Marcus Brinkmann - - * assuan.texi: Change return type of callback handlers in - assuan_transact. - -2007-11-14 Werner Koch - - * assuan.texi (Client code): Describe the new flag bit 7 of the - pipe_server_connect_ext function. - -2007-10-18 Marcus Brinkmann - - * assuan.texi (Client requests): Document HELP. - -2007-09-07 Moritz Schulte - - * assuan.texi (Client code): mention assuan_send_data() instead of - assuan_write_data(). - -2007-09-03 Marcus Brinkmann - - * assuan.texi: Fix prototype and documentation for - assuan_inquire_ext. - -2007-08-24 Werner Koch - - * lgpl.texi: Replace by LGPLv2.1 version. - -2007-08-09 Marcus Brinkmann - - * assuan.texi (External I/O Loop): New chapter. - -2007-07-12 Werner Koch - - * assuan.texi (Utilities): Document that under W32 we return a - system handle. - -2007-07-05 Werner Koch - - * lgpl.texi: New. Taken from COPYING.LIB and reformatted. - * gpl.texi: Updated to v3. - - * assuan.texi (Utilities): Explain ASSUAN_CONFIDENTIAL. - -2007-05-06 Marcus Brinkmann - - * assuan.texi: Clean up typos. - -2006-10-31 Werner Koch - - * assuan.texi: Finished. - -2003-12-18 Werner Koch - - * assuan.texi: Changed copyright to GPL because this is not a book - but useful documentation in other software too. Reworked - sectioning, updated list of error codes. - * gpl.texi: Added. - * fdl.texi: Removed. - -2003-08-06 Werner Koch - - * lgpl.texi: New. - * gpl.texi: Removed. - * assuan.texi: Dropped requirement vor invariant sections, - front- and back-cover texts. Include lgpg.texi. - -2003-02-18 Neal H. Walfield - - * Makefile.am: New file. - * fdl.texi: New file. - * gpl.texi: New file. - * assuan.texi: Imported from newpg. - - - Copyright 2003, 2006, 2007 Free Software Foundation, Inc. - - This file is free software; as a special exception the author gives - unlimited permission to copy and/or distribute it, with or without - modifications, as long as this notice is preserved. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY, to the extent permitted by law; without even the - implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - diff --git a/doc/ChangeLog-2011 b/doc/ChangeLog-2011 new file mode 100644 index 0000000..4f8b568 --- /dev/null +++ b/doc/ChangeLog-2011 @@ -0,0 +1,154 @@ +2011-12-01 Werner Koch + + NB: ChangeLog files are no longer manually maintained. Starting + on December 1st, 2011 we put change information only in the GIT + commit log, and generate a top-level ChangeLog file from logs at + "make dist". See doc/HACKING for details. + +2009-12-08 Marcus Brinkmann + + * assuan.texi: Use our own copy of the setfont macro, as it takes + an extra argument since texinfo 4.13. + + * assuan.texi (Contexts): Document ASSUAN_SPAWN_DETACHED. + +2009-11-25 Marcus Brinkmann + + * assuan.texi (Data Types): Document assuan_fdopen. + +2009-11-24 Marcus Brinkmann + + * assuan.texi: Remove assuan_disconnect, assuan_deinit_server. + Many smaller API fixes. + +2009-11-10 Marcus Brinkmann + + * assuan.texi: Various fixes and updates for the new interface. + +2009-11-05 Marcus Brinkmann + + * assuan.texi: Update assuan_pipe_connect, assuan_socket_connect + and assuan_init_socket_connect. + (Client code): Document ASSUAN_PIPE_CONNECT_FDPASSING and + ASSUAN_PIPE_CONNECT_DETACHED. + (Server code): Document ASSUAN_SOCKET_SERVER_FDPASSING and + ASSUAN_SOCKET_SERVER_ACCEPTED. + (Utilities): Update documentation of assuan_get_peercred. + + * assuan.texi (External I/O Loop Server): Document change to + assuan_process_next. + +2009-10-16 Marcus Brinkmann + + * assuan.texi: Remove documentation for thread support. + (assuan_pipe_connect_ext): Update prototype. + +2009-10-14 Werner Koch + + * assuan.texi (Utilities): Describe assuan_get_command_name. + +2009-09-21 Marcus Brinkmann + + * assuan.texi: Update to new API. + +2009-09-01 Marcus Brinkmann + + * assuan.texi: (External I/O Loop Server): Document + assuan_process_done. + (assuan_register_post_cmd_notify): Change type of ERR from int to + gpg_error_t. + (assuan_set_error): Likewise. + (assuan_register_option_handler): Change types in callback handler + from int to gpg_error_t. + (assuan_inquire_ext): Likewise. + +2009-08-28 Marcus Brinkmann + + * assuan.texi: Update to API changes. + (Data Types): Remove assuan_error_t. + (Utilities): Remove assuan_strerror. + +2008-10-29 Marcus Brinkmann + + * assuan.texi: Change return type of callback handlers in + assuan_transact. + +2007-11-14 Werner Koch + + * assuan.texi (Client code): Describe the new flag bit 7 of the + pipe_server_connect_ext function. + +2007-10-18 Marcus Brinkmann + + * assuan.texi (Client requests): Document HELP. + +2007-09-07 Moritz Schulte + + * assuan.texi (Client code): mention assuan_send_data() instead of + assuan_write_data(). + +2007-09-03 Marcus Brinkmann + + * assuan.texi: Fix prototype and documentation for + assuan_inquire_ext. + +2007-08-24 Werner Koch + + * lgpl.texi: Replace by LGPLv2.1 version. + +2007-08-09 Marcus Brinkmann + + * assuan.texi (External I/O Loop): New chapter. + +2007-07-12 Werner Koch + + * assuan.texi (Utilities): Document that under W32 we return a + system handle. + +2007-07-05 Werner Koch + + * lgpl.texi: New. Taken from COPYING.LIB and reformatted. + * gpl.texi: Updated to v3. + + * assuan.texi (Utilities): Explain ASSUAN_CONFIDENTIAL. + +2007-05-06 Marcus Brinkmann + + * assuan.texi: Clean up typos. + +2006-10-31 Werner Koch + + * assuan.texi: Finished. + +2003-12-18 Werner Koch + + * assuan.texi: Changed copyright to GPL because this is not a book + but useful documentation in other software too. Reworked + sectioning, updated list of error codes. + * gpl.texi: Added. + * fdl.texi: Removed. + +2003-08-06 Werner Koch + + * lgpl.texi: New. + * gpl.texi: Removed. + * assuan.texi: Dropped requirement vor invariant sections, + front- and back-cover texts. Include lgpg.texi. + +2003-02-18 Neal H. Walfield + + * Makefile.am: New file. + * fdl.texi: New file. + * gpl.texi: New file. + * assuan.texi: Imported from newpg. + + + Copyright 2003, 2006, 2007 Free Software Foundation, Inc. + + This file is free software; as a special exception the author gives + unlimited permission to copy and/or distribute it, with or without + modifications, as long as this notice is preserved. + + This file is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY, to the extent permitted by law; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff --git a/doc/HACKING b/doc/HACKING new file mode 100644 index 0000000..b7d6b10 --- /dev/null +++ b/doc/HACKING @@ -0,0 +1,25 @@ +# HACKING -*- org -*- +#+TITLE: Hacking notes for Libassuan +#+STARTUP: showall + +* No more ChangeLog files + + Do not modify any of the ChangeLog files in Libassuan. Starting + on December 1st, 2011 we put change information only in the GIT + commit log, and generate a top-level ChangeLog file from logs at + "make dist" time. As such, there are strict requirements on the + form of the commit log messages. The old ChangeLog files have all + be renamed to ChangeLog-2011 + + +* Commit log requirements + + Your commit log should always start with a one-line summary, the + second line should be blank, and the remaining lines are usually + ChangeLog-style entries for all affected files. However, it's fine + -- even recommended -- to write a few lines of prose describing the + change, when the summary and ChangeLog entries don't give enough of + the big picture. Omit the leading TABs that you're used to seeing + in a "real" ChangeLog file, but keep the maximum line length at 72 + or smaller, so that the generated ChangeLog lines, each with its + leading TAB, will not exceed 80 columns. diff --git a/doc/Makefile.am b/doc/Makefile.am index daea6e0..cc41a78 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -18,7 +18,7 @@ ## Process this file with automake to produce Makefile.in -EXTRA_DIST = README.apichanges +EXTRA_DIST = README.apichanges HACKING info_TEXINFOS = assuan.texi diff --git a/src/ChangeLog b/src/ChangeLog deleted file mode 100644 index ddbad5e..0000000 --- a/src/ChangeLog +++ /dev/null @@ -1,2368 +0,0 @@ -2011-08-10 Werner Koch - - * assuan.h.in (ASSUAN_FORCE_CLOSE): New. - * assuan-defs.h (assuan_context_s): Add flags.FORCE_CLOSE. - * context.c (assuan_set_flag, assuan_get_flag): Set/get the flag. - * assuan-handler.c (assuan_process_done): Close connection if - requested. - -2011-04-06 Werner Koch - - * libassuan-config.in: Add option --host. - * libassuan.m4: Remove cruft. Add check for correct HOST. - -2011-03-30 Werner Koch - - * sysutils.c (_assuan_sysutils_blurb): Add version string. - -2011-03-09 Werner Koch - - * assuan-handler.c (assuan_register_command): Use my_strcasecmp. - -2011-03-06 Ben Kibbey - - * assuan-socket-connect.c (assuan_socket_connect_fd): Finalize a - context connection from an already connected socket descriptor. - * assuan.h.in (assuan_socket_connect_fd): New prototype. - -2011-03-05 Ben Kibbey - - * assuan-handler.c (assuan_register_command): Let an existing command - be updated to the new values. - -2011-02-28 Werner Koch - - * libassuan.vers: Fold LIBASSUAN_1.1 block into LIBASSUAN_1.0. - -2011-02-28 Ben Kibbey - - * assuan-handler.c (assuan_register_pre_cmd_notify): Pass command - string as second argument. - * assuan.h (assuan_command_t): Move back to assuan-defs.h. - -2011-02-24 Ben Kibbey - - * assuan-handler.c (assuan_register_pre_cmd_notify): New callback. - * assuan.h (assuan_command_t): Register command object. - (pre_cmd_notify_fnc): New prototype. - -2011-02-03 Marcus Brinkmann - - * assuan-socket.c (_assuan_sock_new): Call _assuan_socket instead - of socket. - (_assuan_sock_connect): Call _assuan_connect instead of connect. - * assuan-socket-connect.c (assuan_socket_connect): Call - _assuan_sock_new and _assuan_sock_connect instead of - _assuan_socket and assuan_connect. - * src/system-w32.c, src/system-w32ce.c (__assuan_socket): Call - socket instead of _assuan_sock_new. - (__assuan_connect): Call connect instead of _assuan_sock_connect. - -2011-02-02 Marcus Brinkmann - - * assuan.h.in: Replace namespace by _namespace. - -2011-02-02 Marcus Brinkmann - - * assuan-defs.h (_assuan_socket, _assuan_connect): New prototypes. - * assuan.h.in (ASSUAN_SYSTEM_HOOKS_VERSION): Bumped to 2. - (struct assuan_system_hooks): Add socket and connect members. - (__assuan_socket, __assuan_connect): New prototypes. - (_ASSUAN_SYSTEM_PTH_IMPL): Add socket and connect members. * - assuan-socket-connect.c (assuan_socket_connect): Call - _assuan_socket and _assuan_connect instead _assuan_sock_new and - _assuan_sock_connect. - (libassuan.def, libassuan.vers): Add __assuan_socket and - __assuan_connect. - - * system.c (_assuan_system_hooks_copy): Initialize destination - from system hooks, so we don't get any NULL pointers if there is a - version mismatch. Support version 2 of the system hook structure. - (_assuan_socket, _assuan_connect): New functions. - * system-posix.c (__assuan_socket, __assuan_connect): New functions. - (_assuan_system_hooks): Add __assuan_socketm, __assuan_connect. - * system-w32.c (__assuan_socket, __assuan_connect): New functions. - (_assuan_system_hooks): Add __assuan_socketm, __assuan_connect. - * system-w32ce.c (__assuan_socket, __assuan_connect): New functions. - (_assuan_system_hooks): Add __assuan_socketm, __assuan_connect. - -2010-12-20 Werner Koch - - * gpgcedev.c (pipeimpl_new): Check malloc and CreateEvent return - codes. - -2010-12-14 Werner Koch - - * gpgcemgr.c (wchar_to_utf8, utf8_to_wchar, set_show_registry): New. - (main): Add commands --gpgme-log and --gnupg-log. - -2010-11-17 Marcus Brinkmann - - * vasprintf.c (int_vasprintf) [HAVE_W32CE_SYSTEM && _MSC_VER]: - Just use a fixed size buffer, as va_copy is not easy to fake. - - * gpgcedev.c (struct pipeimpl_s): Add member monitor_rvid. - (struct monitor_s, monitor_t): New types. - (monitor_table, monitor_table_size): New static variables. - (pipeimpl_new): Initialize monitor_rvid. - (allocate_monitor): New function. - (make_pipe): Also try the monitor_table if the opnctx_table fails. - (monitor): Renamed to ... - (monitor_main): ... this. Remove from monitor_table when done. - (assign_rvid): Add to monitor table when creating monitor thread. - -2010-11-15 Werner Koch - - * gpgcedev.c (GPG_Init): Read debug settings. - - * gpgcemgr.c (enable_debug, enable_log): New. - (main): Add options --enable-debug, --disable-debug, --enable-log, - --disable-log. - -2010-11-12 Werner Koch - - * gpgcedev.c (DEVCTX_VALUE): Rename to PIPECTX_VALUE. - (LOGCTX_VALUE): New. - (allocate_opnctx): Add arg IS_LOG. - (logimpl_t): New. - (openctx_t): Add field IS_LOG. - (struct logcontrol): New. - (enable_debug, enable_logging): New. - (log_debug): Make use of the ENABLE_DEBUG flag. - (create_log_id): New. - (logimpl_new, logimpl_unref, logimpl_flush, assert_logimpl): New. - (GPG_Init): Check for GPG2 device. - (GPG_Deinit): Close log stream. - (GPG_Open): Implement log device. - (GPG_Read): Return EOF for the GPG2 device - (GPG_Write): Implement GPG2 device. - (dllmain): Init logcontrol CS. - -2010-11-01 Werner Koch - - * assuan-socket.c (_assuan_sock_bind): Replace open/fdopen by - CreateFile for building with MSC for W32CE. - (utf8_to_wchar, MyCreateFile, MyDeleteFile) [W32CE]: New. - -2010-11-01 Marcus Brinkmann - - * assuan-socket.c, assuan-uds.c, system.c, assuan-pipe-server.c, - assuan-pipe-connect.c [!HAVE_FCNTL_H]: Don't include fcntl.h. - * assuan-buffer.c [!HAVE_W32CE_SYSTEM]: Do not include process.h. - * assuan-socket.c [!HAVE_W32CE_SYSTEM]: Do not include io.h. - * w32-includes.inc.h: Include winsock2.h before ws2tcpip.h. - * sysutils.c (w32_read_registry): Replace goto label "leave" by - "out" (as leave is defined by some Windows header file). - * assuan-inquire.c: Likewise. - -2010-11-01 Werner Koch - - * assuan-socket.c (S_IRUSR) [W32]: Define if not defined. - - * sysutils.c: Remove include of devload.h. - - * assuan-defs.h [HAVE_WINSOCK2_H]: Include winsock2.h prior to - windows.h. - * assuan-pipe-server.c: Ditto. - * sysutils.c: Ditto. - * assuan-socket-server.c: Ditto. - * assuan-pipe-connect.c: Ditto. - * assuan-socket-connect.c: Ditto. - * assuan-uds.c: Ditto. - * assuan-logging.c: Ditto. - * system-w32ce.c: Ditto. - * assuan-io.c: Ditto. - - * w32-types.inc.h [_MSC_VER]: Define ssize_t and pid_t. - - * w32ce-fd-t.inc.h, w32-fd-t.inc.h, posix-fd-t.inc.h, debug.h: - s/inline/GPG_ERR_INLINE/. - * assuan.h.in: Let mkheader write the sys/types.h and unistd.h - include lines. - * mkheader.c: Change accordingly. - - Guard include of sys/types.h, sys/stat.h, sys/time.h and unistd.h. - -2010-09-17 Werner Koch - - * assuan-socket-connect.c (INADDR_NONE): New replacement. Fixes - bug#1282. - -2010-09-01 Werner Koch - - * assuan.h.in (ASSUAN_NO_LOGGING): New. - * assuan-defs.h (struct assuan_context_s): Add FLAGS.NO_LOGGING. - * context.c (assuan_set_flag, assuan_get_flag): Support new flag. - * assuan-logging.c (_assuan_log_control_channel): Implement new flag. - -2010-08-11 Werner Koch - - * assuan.h.in (ASSUAN_CONVEY_COMMENTS): New. - * assuan-defs.h (struct assuan_context_s): Add flags.CONVEY_COMMENTS. - * context.c (assuan_set_flag, assuan_get_flag): Support this flag. - (_assuan_read_from_server): Add arg CONVEY_COMMENTS. Change all - callers. - * client.c (assuan_transact): Implement new flags. - -2010-08-09 Werner Koch - - * assuan-socket-connect.c (assuan_socket_connect): Fix ipv6 - literal IP case. - -2010-08-03 Marcus Brinkmann - - * gpgcedev.c (GPGCEDEV_IOCTL_ASSIGN_RVID): New call ASSIGN_RVID. - (PIPE_FLAG_HALT_MONITOR): New flag. - (struct pipeimpl_s): New members monitor_proc, monitor_access. - (pipeimpl_new): Initialize them. - (assert_pipeimpl): New function. - (access_opnctx, make_pipe): Use it. - (make_pipe): If there is a monitor, halt it. - (monitor, assign_rvid): New functions. - (GPG_IOControl): Handle GPGCEDEV_IOCTL_ASSIGN_RVID. - - * gpgcedev.c: Use index (between 1 and table size) into - opnctx_table as public context identifiers, instead using pointers - into the table directly (which are not stable under table resize). - (OPNCTX_TO_IDX, OPNCTX_FROM_IDX, OPNCTX_VALID_IDX_P): New macros. - -2010-06-28 Werner Koch - - * gpgcedev.c (GPG_IOControl) : Unblock threads. - -2010-06-11 Marcus Brinkmann - - * assuan-handler.c (std_handler_input, - std_handler_output) [HAVE_W32CE_SYSTEM]: Finish the pipe. We must - do this here, because otherwise assuan_close_input_fd() and - assuan_close_output_fd() can't work. - * system-w32ce.c (_assuan_w32ce_finish_pipe): Call SetLastError in - error case. - (__assuan_close): Save WSAGetLastError before trashing it! - Otherwise handle is never closed and GPGME hangs. - -2010-06-10 Marcus Brinkmann - - * w32ce-add.h (ASSUAN_STDIN, ASSUAN_STDOUT): Define magic handle values. - * system-w32ce.c (__assuan_read, __assuan_write): Handle magic - handle values differently. - - * system-w32ce.c (_assuan_w32ce_finish_pipe): Return error on RVID 0. - -2010-06-09 Marcus Brinkmann - - * gpgcedev.c (GPGCEDEV_IOCTL_UNBLOCK): New ioctl. - (PIPE_FLAG_UNBLOCK_READER, PIPE_FLAG_UNBLOCK_WRITER): New flags. - (GPG_Read): Check if PIPE_FLAG_UNBLOCK_READER is set and return - ERROR_BUSY in that case. - (GPG_Write): Likewise for PIPE_FLAG_UNBLOCK_WRITER. - (unblock_call): New function. - (GPG_IOControl): Implement GPGCEDEV_IOCTL_UNBLOCK. - -2010-06-07 Marcus Brinkmann - - * gpgcedev.c: This rewrite does away with troublesome race - conditions (close vs everything else, for example) by simplifying - the locking model. It also handles EOF, EPIPE, but still assumes - that there is always only ever one reader and writer. Also, no - need to treat ERROR_PIPE_NOT_CONNECTED and ERROR_BUSY as EAGAIN - anymore. - (struct pipeimpl_s, pipeimpl_t): New types. - (PIPE_FLAG_NO_READER, PIPE_FLAG, NO_WRITER): New macros. - (struct opnctx_s): Remove everything that's now in struct - pipeimpl_s. Remove also assoc and locked. Add pipeimpl field. - (pipeimpl_new, pipeimpl_unref, allocate_opnctx, verify_opnctx, - access_opnctx): New functions. - (get_new_opnctx, find_and_lock_opnctx, validate_and_lock_opnctx, - unlock_opnctx): Removed. - (GPG_Init, GPG_Deinit): Improve debugging output. - (GPG_Open): Improve debugging output, use allocate_opnctx instead - of get_new_opnctx. - (GPG_Close): Improve debugging output. Rewrite to use reference - counting. Also check if reader or writer is closed and set flags - for triggering EOF or EPIPE. - (GPG_Read): Improve debugging output. Rewrite using pipeimpl. - Check for EOF. - (GPG_Write): Improve debugging output. Rewrite using pipeimpl. - Check for EPIPE. - (make_pipe): Rewrite using pipeimpl. - (GPG_IOControl): Improve debugging output. - -2010-04-22 Werner Koch - - * assuan-listen.c (assuan_accept): Show the PID with the default - hello message. - -2010-04-19 Werner Koch - - * system-w32.c (is_socket): New. - (__assuan_read, __assuan_write): Use is_socket. - -2010-04-16 Marcus Brinkmann - - * assuan-uds.c (uds_reader, uds_sendfd): Don't break strict - aliasing rules. - -2010-04-14 Werner Koch - - * Makefile.am (install-exec-hook): Rename libgpgcedev-0.dll. - -2010-04-14 Marcus Brinkmann - - * Makefile.am (EXTRA_DIST): Add gpgcedev.def. - -2010-04-13 Werner Koch - - * gpgcedev.c (get_new_opnctx): Always clear IS_WRITE. - -2010-04-08 Werner Koch - - * gpgcedev.c (GPG_Read, GPG_Write): If the context is not - associated return ERROR_PIPE_NOT_CONNECTED. - * system-w32ce.c (__assuan_read, __assuan_write): Return EAGAIN for - ERROR_PIPE_NOT_CONNECTED. - - * assuan-pipe-connect.c (pipe_connect): Use - _assuan_close_inheritable also in the spawn error case. - -2010-04-06 Werner Koch - - * posix-includes.inc.h, w32-includes.inc.h: New. - * posix-types.inc.h, w32-types.inc.h: New. - * posix-fd-t.inc.h, w32-fd-t.inc.h, w32ce-fd-t.inc.h: New. - * posix-sock-nonce.inc.h, w32-sock-nonce.inc.h: New. - * mkheader.c (write_special): Support them. - * Makefile.am (common_sources, assuan.h): Ditto - (parts_of_assuan_h): New. - - * w32-sys-pth-impl.h: Use gpg_err_set_errno. - - * assuan.h.in (_ASSUAN_SYSTEM_PTH_IMPL): Factor code out to .. - * posix-sys-pth-impl.h, w32-sys-pth-impl.h: New - * mkheader.c (write_special): Support them. - * Makefile.am (common_sources, assuan.h): Ditto - -2010-03-23 Werner Koch - - * assuan-error.c (_assuan_w32_strerror) [W32CE]: Print only the code. - -2010-03-22 Werner Koch - - * Makefile.am (mkheader, assuan.h): Build header file. - (nodist_libassuan_la_SOURCES): New. Use it for assuan.h. - * mkheader.c: New. - * assuan.h: Rename to assuan.h.in. - -2010-03-18 Werner Koch - - * libassuan.def (_assuan_w32ce_prepare_pipe) - (_assuan_w32ce_finish_pipe): New - * gpgcedev.c (struct opnctx_s): Replace HD by RVID. - (GPGCEDEV_IOCTL_SET_HANDLE): Remove. - (GPGCEDEV_IOCTL_GET_RVID): New. - (create_rendezvous_id): New. - (get_new_opnctx): Init the RVID. - (set_handle): Remove. - (find_and_lock_opnctx, make_pipe, GPG_IOControl): Change to new - method. - * system-w32ce.c (_assuan_w32ce_prepare_pipe) - (_assuan_w32ce_finish_pipe): New. - (_assuan_w32ce_create_pipe): Re-implement using the new functions. - (__assuan_pipe): Create an inheritable pipe. - (build_w32_commandline): New arg FD2_ISNULL. - * system.c (_assuan_close_inheritable): New. - * assuan-pipe-connect.c (pipe_connect): Use the new function. - - * sysutils.c (_assuan_w32ce_create_pipe): Move to system-w32ce.c. - -2010-03-16 Werner Koch - - * system-w32ce.c (build_w32_commandline): Add args to pass the - special options for the standard descriptors. - (utf8_to_wchar, free_wchar): New. - (__assuan_spawn): Adjust for changes. Convert strings for - CreateProcess to wchar_t. - - * system.c: For better readability move platform dependend code to .. - * system-posix.c, system-w32.c, system-w32ce.c: .. New. - * Makefile.am (common_sources): Account for this change. - -2010-03-11 Werner Koch - - * assuan-defs.h [!HAVE_VASPRINTF]: Add macros vasprintf and asprintf. - - * vasprintf.c (asprintf): Rename to _assuan_asprintf. - (vasprintf): Rename to _assuan_vasprintf. - - * assuan.h (ASSUAN_LOG_CONTROL): New. - * assuan-logging.c (assuan_set_assuan_log_stream): Default to - ASSUAN_LOG_CONTROL. - (_assuan_log_print_buffer): Remove. - (_assuan_log_control_channel): New. - (assuan_set_assuan_log_stream): Factor envvar code out to .. - (_assuan_init_log_envvars): .. New. - * assuan.c (assuan_set_log_cb): Call _assuan_init_log_envvars. - * assuan-buffer.c (_assuan_read_line, _assuan_write_line) - (assuan_write_line, _assuan_cookie_write_data) - (_assuan_cookie_write_flush): Use _assuan_log_control_channel. - -2010-03-05 Werner Koch - - * gpgcemgr.c: Add options to register a device and activate it. - -2010-02-24 Werner Koch - - * gpgcemgr.c: New. - * gpgcedev.c: New. - * sysutils.c (_assuan_w32ce_create_pipe): Rewrote to make use of - the new driver. - -2010-02-16 Werner Koch - - * system.c (assuan_free): New. - * libassuan.vers (assuan_free): Add it. - * libassuan.def (assuan_free): Add it. - -2010-02-11 Werner Koch - - * assuan-inquire.c (assuan_inquire): Allow case insensitive - responses. - (_assuan_inquire_ext_cb): Ditto. - -2010-02-10 Werner Koch - - * assuan-handler.c (std_handler_input, std_handler_output): Make - the parsed FD available to the notification functions. This is - the documented behaviour. - -2010-02-04 Werner Koch - - * assuan-socket-connect.c: Include stdint.h and arpa/inet.h. - (parse_portno): New. - (assuan_socket_connect): Return a correct error code on failure. - Support assuan:// and file:// schemes. - -2010-02-03 Marcus Brinkmann - - * libassuan.vers, libassuan.def: Add assuan_set_sock_nonce. - -2010-02-01 Werner Koch - - * sysutils.c (_assuan_w32ce_create_pipe): New. - * libassuan.def (_assuan_w32ce_create_pipe): New. - * assuan-defs.h (CreateFile) [W32CE]: New macro - * system.c (__assuan_pipe): Make it work for W32CE. - -2010-01-28 Werner Koch - - * assuan.h: Remove ranges in list of copyright years. - (getenv) [W32CE]: Provide macro. - * sysutils.c: New. - (_assuan_sysutils_blurb): New. - (_assuan_getenv): new. - * assuan-logging.c: Call _assuan_sysutils_blurb. - -2010-01-27 Werner Koch - - * assuan-socket.c (_assuan_sock_bind): Replace remove by DeleteFile. - - * assuan-handler.c (assuan_get_active_fds) [W32CE]: Remove use of - _get_osfhandle. - * assuan.h (assuan_fd_from_posix_fd) [__MINGW32CE__]: Ditto. - * system.c (assuan_fdopen): Ditto. - (__assuan_spawn) [W32CE]: Do not use GetPriorityClass. - - * assuan-defs.h (getpid) [W32CE]: New. - -2010-01-22 Werner Koch - - * setenv.c [W32CE]: Make it a dummy. - - * assuan-pipe-connect.c: Remove signal.h. - - * system.c (__assuan_spawn): Use CreateFileW. - (DETACHED_PROCESS) [W32CE]: Define to 0. - - * assuan-socket.c (read_port_and_nonce): Replace ENOFILE by a - proper ENOENT. - - Replace all assignments to ERRNO by a call to gpg_err_set_errno. - -2010-01-14 Werner Koch - - * debug.c (_assuan_debug, _assuan_debug_begin) - (_assuan_debug_buffer): Check CTX before dereferencing. - - * assuan.c (assuan_release): Immediately leave on NULL CTX. - -2010-01-05 Marcus Brinkmann - - * debug.h (TRACE_LOG5): Add macro. - * debug.c (_assuan_debug_buffer): Add newline - * system.c: Add more debug output (conditioned on the compile-time - DEBUG_SYSIO macro). - -2009-12-14 Werner Koch - - * assuan.h (ASSUAN_RESPONSE_COMMENT): New. - * client.c (assuan_client_read_response): Return comment lines. - (assuan_client_parse_response): Return ASSUAN_RESPONSE_COMMENT. - (_assuan_read_from_server): Skip comment lines. - -2009-12-08 Marcus Brinkmann - - * assuan.h (struct assuan_system_hooks): Don't use "namespace" as - argument name in declaration (C++ keyword). - - * client.c (assuan_client_read_response): Fix linelen. - - * assuan.h (ASSUAN_SPAWN_DETACHED): New macro. - * assuan-pipe-connect.c (pipe_connect): Calculate spawn_flags from - flags. - - * assuan.h (assuan_fd_from_posix_fd): Handle invalid fd early. - - * assuan-socket.c (get_nonce): Cast buffer to unsigned. - (_assuan_sock_connect) [HAVE_W32_SYSTEM]: Drop ctx argument from - read_port_and_nonce invocation. - * system.c (assuan_fdopen) [HAVE_W32_SYSTEM]: Fix typo in variable - name. - (__assuan_spawn) [HAVE_W32_SYSTEM]: Fix types of fd and fdp. Use - ASSUAN_INVALID_FD. Add missing context argument to _assuan_free, - and fix call to _assuan_w32_strerror. Set errno on error. - (__assuan_socketpair) [HAVE_W32_STRERROR]: Fix type of filedes - argument. - * assuan-pipe-connect.c (pipe_connect, assuan_pipe_connect, - socketpair_connect) [HAVE_W32_SYSTEM]: Fix type of fd_child_list. - * assuan-defs.h (_assuan_socketpair): Likewise for prototype. - * assuan.h (assuan_fd_from_posix_fd): New static inline function. - -2009-12-03 Marcus Brinkmann - - * assuan-logging.c: (log_cats): New static variable. - (TEST_LOG_CAT): New macro. - (_assuan_log_handler): Check log category. - (assuan_set_assuan_log_stream): Check ASSUAN_DEBUG for logging - categories. - (assuan_set_log_stream): Call assuan_set_assuan_log_stream. - -2009-12-02 Marcus Brinkmann - - * Makefile.am (common_sources): Remove assuan-client.c. - * assuan-client.c: File removed. - * assuan.h (ASSUAN_RESPONSE_ERROR, ASSUAN_RESPONSE_OK) - (ASSUAN_RESPONSE_STATUS, ASSUAN_RESPONSE_INQUIRE) - (ASSUAN_RESPONSE_STATUS): New macros. - (assuan_response_t): New type. - (assuan_client_read_response, assuan_client_parse_response): New - prototypes. - * libassuan.def, libassuan.vers: Add assuan_client_read_response, - assuan_client_parse_response. - * assuan-client.c (xtoi_1, xtoi_2, assuan_transact) - (_assuan_read_from_server): Moved to ... - * client.c: ... here, with updates to use new functions and types. - Include . - (assuan_client_read_response, assuan_client_parse_response): New - functions. - * assuan-defs.h (_assuan_read_from_server): Use assuan_response_t. - * assuan-pipe-connect.c (initial_handshake): Use assuan_response_t - and ASSUAN_RESPONSE_OK. - * assuan-socket-connect.c (assuan_socket_connect): Likewise. - -2009-12-01 Marcus Brinkmann - - * assuan-pipe-server.c (assuan_init_pipe_server): Fix debug output. - -2009-11-27 Marcus Brinkmann - - * assuan.h (assuan_set_assuan_log_stream): Add prototype. - * libassuan.def, libassuan.vers: Add back - assuan_set_assuan_log_stream. - * assuan-logging.c (assuan_set_assuan_log_stream): Add back. - * context.c (assuan_get_pointer): Don't output debug info here. - (assuan_get_peercred, assuan_get_pid): But do here. - * system.c: Improve debug output. - * assuan-defs.h (struct assuan_context_s): Rename pipe_mode to - max_accepts. - * assuan-listen.c (assuan_accept): Rework max accepts logic. - * assuan-socket-server.c (assuan_init_socket_server), - assuan-socket-connect.c (assuan_socket_connect), - assuan-pipe-server.c (assuan_init_pipe_server), - assuan-pipe-connect.c (socketpair_connect): Add debug output, set - max_accepts instead of pipe_mode. - -2009-11-25 Marcus Brinkmann - - * assuan.h (assuan_init_pipe_server): Change type of filedes to - assuan_fd_t. - (assuan_fdopen): New prototype. - * libassuan.vers, libassuan.def: Add assuan_fdopen. - * system.c (assuan_fdopen): New function. - * assuan-pipe-server.c (assuan_init_pipe_server): Change type of - filedes to assuan_fd_t. No longer translate fd to handle. Don't - set to binary either (that doesn't do anything for handles, it - only affects the libc fd). - -2009-11-24 Marcus Brinkmann - - * assuan.h (struct _assuan_peercred) [_WIN32]: Define dummy member - so struct is not empty. - * assuan-socket.c (assuan_sock_deinit): Set sock_ctx to NULL. - -2009-11-19 Marcus Brinkmann - - * Makefile.am (common_sources): Remove assuan-connect.c and add - client.c. - * client.c, server.c: New file. - * assuan-defs.h (_assuan_disconnect): Remove. - (struct assuan_context_s): Remove members deinit_handler. - (_assuan_client_release, _assuan_client_finish) - (_assuan_server_finish, _assuan_server_release): New. - * assuan-socket-server.c (accept_connection_bottom): Use - ASSUAN_INVALID_PID, not -1. - (finish_connection, deinit_socket_server): Remove. - (assuan_init_socket_server): Use _assuan_server_release. - * assuan-socket-connect.c (do_finish, do_deinit): Remove. - (assuan_socket_connect): Use _assuan_client_release. - * assuan-pipe-connect.c (do_finish, do_deinit): Remove. - (pipe_connect): Update deinitialization. - (socketpair_connect): Here as well. - * context.c (assuan_get_pid): New from ... - * assuan-connect.c (assuan_get_pid): ... here. Remove this file. - * assuan-pipe-server.c (_assuan_deinit_server, accept_connection) - (deinit_pipe_server, finish_connection): Remove unused function. - * assuan-listen.c (assuan_accept): Check CTX->accept_handler - before calling. Initialize RC. Do not call finish handler for - pipe server. - * assuan-uds.c (_assuan_uds_deinit): Do not call finish handler. - -2009-11-10 Marcus Brinkmann - - * assuan-defs.h (struct assuan_context_s): Rename - CTX->process_done to CTX->process_complete for clarity. Remove - buffer variables from UDS. - * assuan-pipe-connect.c (socketpair_connect): Allow FD_CHILD_LIST - to be NULL. - * assuan-handler.c: Rename CTX->process_done to - CTX->process_complete for clarity. - (process_request, process_next): Handle EOF. - * assuan-uds.c (uds_reader): Remove buffering, which breaks the - pending line algorithm in assuan-buffer.c. - (_assuan_init_uds_io, _assuan_uds_deinit): Remove buffering. - * assuan-buffer.c (_assuan_read_line): Add comment. - -2009-11-05 Marcus Brinkmann - - * assuan.h (struct _assuan_peercred, assuan_peercred_t): New. - (assuan_get_peercred): Define on all systems, return - assuan_peercred_t. - * assuan-defs.h (struct assuan_context_s): Move valid flag out of - peercred struct, use struct _assuan_peercred. - * libassuan.def: Add assuan_get_peercred. - * assuan-connect.c (assuan_get_peercred): Moved to ... - * context.c (assuan_get_peercred): ... here. Reimplement. - * assuan-socket-server.c (accept_connection_bottom): Adjust access - to peercred in context. - * assuan.h (ASSUAN_PIPE_CONNECT_FDPASSING) - (ASSUAN_PIPE_CONNECT_DETACHED, ASSUAN_SOCKET_SERVER_FDPASSING) - (ASSUAN_SOCKET_SERVER_ACCEPTED, ASSUAN_SOCKET_CONNECT_FDPASSING): New. - (assuan_pipe_connect_ext): Renamed to ... - (assuan_pipe_connect): ... this, overwriting old prototype. - (assuan_socket_connect_ext): Renamed to ... - (assuan_socket_connect): ... this, overwriting old prototype. - (assuan_init_socket_server_ext): Renamed to ... - (assuan_init_socket_server): ... this, overwriting old prototype. - * assuan-pipe-connect.c: Likewise for functions. - * assuan-socket-connect.c: Likewise. - * assuan-socket-server.c: Likewise. - * libassuan.def (assuan_init_socket_server_ext) - (assuan_pipe_connect_ext, assuan_socket_connect_ext): Removed. - * libassuan.vers: Likewise. - - * assuan-defs.h (assuan_context_t): Add member PROCESS_DONE. - * assuan.h (assuan_process_next): Add argument DONE to prototype. - * assuan-handler.c (assuan_process_next): Likewise, handle it. - (std_handler_bye): Set PROCESS_DONE. - (assuan_process_done): Handle PROCESS_DONE in the no error case. - (assuan_process): Use PROCESS_DONE. - -2009-11-04 Marcus Brinkmann - - * debug.c (_assuan_debug): Free MSG. - -2009-11-04 Werner Koch - - * Makefile.am (common_sources): Add debug.h. - - * assuan-defs.h (cmdtbl_s): Add field HELPSTR. - * assuan-handler.c (assuan_register_command): Add arg HELP_STRING. - (std_handler_help): Print the help. - -2009-11-02 Marcus Brinkmann - - * assuan.h (assuan_handler_t): New type. - (assuan_register_bye_notify, assuan_register_reset_notify) - (assuan_register_cancel_notify, assuan_register_input_notify) - (assuan_register_output_notify, assuan_register_command): Use it. - * assuan-handler.c (std_handler_cancel, std_handler_bye): Pass - LINE argument to user handler. - (std_handler_reset): Likewise, and also abort RESET if error is - returned from user handler. - (std_handler_input, std_handler_output): Check return value from - user handler before assigning FD. - * assuan-defs.h (struct cmdtbl_s): Change type of member HANDLER - to assuan_handler_t. - (struct assuan_context_s): Change type of members - RESET_NOTIFY_FNC, CANCEL_NOTIFY_FNC, BYE_NOTIFY_FNC, - INPUT_NOTIFY_FNC and OUTPUT_NOTIFY_FNC to assuan_handler_t. - -2009-10-30 Marcus Brinkmann - - * system.c (_assuan_spawn): Check fd_child_list before dumping it. - -2009-10-20 Marcus Brinkmann - - * assuan.h (__assuan_usleep): Add declaration. - * system.c (__assuan_usleep): Make non-static. - * libassuan.vers, libassuan.defs: Sort lexicographically. - -2009-10-19 Marcus Brinkmann - - * system.c (__assuan_waitpid): Return something. - (_assuan_usleep): Don't return value in void function. - -2009-10-16 Marcus Brinkmann - - * conversion.c: Do not include and . - * debug.h (TRACE_BEG6, TRACE4): New macros. - (TRACE_SYSERR): Pass _assuan_trace_context to _assuan_debug. - * context.c (assuan_set_pointer, assuan_get_pointer, - assuan_set_flag, assuan_get_flag, assuan_set_io_monitor, - assuan_set_error): Add trace messages. - - * libassuan-config.in, libassuan.m4, Makefile.am: Remove PTH support. - * assuan.h (assuan_msghdr_t): New type. - (ASSUAN_INVALID_PID): New macro. - (ASSUAN_NO_FIXSIGNALS): New flag macro. - (ASSUAN_SYSTEM_HOOKS_VERSION): New macro. - (struct assuan_system_hooks, assuan_system_hooks_t): New types. - (assuan_pipe_connect, assuan_pipe_connect_ext): Don't make ARGV - const for name==NULL operation. Make fd_child_list an array of - assuan_fd_t. - (assuan_sock_init, assuan_sock_deinit, assuan_set_system_hooks, - assuan_ctx_set_system_hooks, __assuan_pipe, __assuan_close, - __assuan_spawn, __assuan_socketpair): New function prototypes. - (_ASSUAN_SYSTEM_PTH_IMPL, ASSUAN_SYSTEM_PTH_DECL, - ASSUAN_SYSTEM_PTH): New macros. - (_assuan_system_pth): New declaration. - * libassuan.vers, libassuan.defs: Add assuan_sock_init, - assuan_sock_deinit, __assuan_pipe, __assuan_close, __assuan_spawn, - __assuan_socketpair, assuan_set_system_hooks, - assuan_ctx_set_system_hooks. - - * assuan-defs.h (struct assuan_io): Removed, move members to ... - (struct assuan_context_s): ... this to ENGINE. New flag - no_fixsignals. New member SYSTEM. Remove member IO. - (_assuan_pipe, _assuan_read, _assuan_write, _assuan_recvmsg, - _assuan_sendmsg, _assuan_spawn, _assuan_socketpair, - _assuan_system_hooks, _assuan_system_hooks_copy): New - declarations. - (_assuan_error_is_eagain, _assuan_waitpid, _assuan_usleep, - _assuan_close, _assuan_sock_new, _assuan_sock_connect, - _assuan_sock_bind, _assuan_sock_get_nonce, - _assuan_sock_check_nonce): Add context argument. - (_assuan_io_read, _assuan_io_write, _assuan_simple_sendmsg, - _assuan_simple_recvmsg): Removed. - - * context.c (assuan_ctx_set_system_hooks): New function. - * assuan.c (assuan_set_system_hooks): New function. - (assuan_new_ext): Initialize CTX->system. - (assuan_release): Always output trace message. - - * assuan-error.c (_assuan_error_is_eagain): Add ctx argument, pass - along to _assuan_usleep. - * assuan-inquire.c assuan-listen.c, assuan-socket-server.c, - assuan-handler.c, assuan-socket-connect.c, assuan-client.c, - assuan-pipe-connect.c, assuan-socket.c: Pass CTX argument to - functions that need it - (_assuan_sock_new, _assuan_sock_check_none, _assuan_close, - _assuan_error_is_eagain and many more). - * assuan-socket-server.c (assuan_init_socket_server_ext): Update - fields in CTX->engine instead of CTX->io. - * assuan-socket-connect (assuan_socket_connect_ext): Likewise. - * assuan-uds.c (uds_reader, uds_writer, uds_sendfd): Use - _assuan_recvmsg and _assuan_sendmsg instead of - _assuan_simple_recvmsg and _assuan_simple_sendmsg respectively. - (_assuan_init_uds_io): Update fields in CTX->engine instead of - CTX->io. - * assuan-buffer.c: Use functions in CTX->engine instead of CTX->io. - * assuan-pipe-server.c (assuan_init_pipe_server): Update - fields in CTX->engine instead of CTX->io. - - * system.c: Include , , , and - resp. . Define MAX_OPEN_FDS. - (_assuan_system_hooks_copy, __assuan_usleep, _assuan_usleep, - __assuan_pipe, _assuan_pipe, __assuan_close, _assuan_close, - __assuan_read, _assuan_read, __assuan_write, _assuan_write, - __assuan_recvmsg, _assuan_recvmsg, __assuan_sendmsg, - _assuan_sendmsg, __assuan_spawn, _assuan_spawn, __assuan_waitpid, - _assuan_waitpid, __assuan_socketpair, _assuan_socketpair): New - functions. - (_assuan_system_hooks): New singleton. - * assuan-io.c (_assuan_waitpid, do_io_read, _assuan_io_read, - do_io_write, _assuan_io_write, _assuan_simple_sendmsg, - _assuan_simple_recvmsg, _assuan_usleep): Removed. - - * assuan-pipe-connect (writen, build_w32_commandline, - create_inheritable_pipe): Removed (actually moved to system.c). - (fix_signals) [_ASSUAN_NO_FIXED_SIGNALS]: Still fix signals. - (do_finish): Move waitpid logic to _assuan_waitpid, just call - that. - (struct at_pipe_fork, struct at_socketpair_fork): New types. - (at_pipe_fork_cb, at_socketpair_fork_cb): New callback functions. - (pipe_connect_unix, pipe_connect_w32): Replaced by ... - (pipe_connect): ... this new function using new system functions. - (socketpair_connect): Reimplement to use new system functions. - (assuan_pipe_connect, assuan_pipe_connect_ext): Add trace message. - - * assuan-socket.c (_assuan_close): Removed (moved to system.c). - (_assuan_sock_new, _assuan_sock_connect, _assuan_sock_bind, - _assuan_sock_get_nonce, _assuan_sock_check_nonce): Add context - argument. Use new system interface. - (sock_ctx): New singleton. - (assuan_sock_init, assuan_sock_deinit): New functions to - initialize and deinitialize the singleton. - -2009-10-14 Werner Koch - - * assuan-defs.h (assuan_context_s): Add field CURRENT_CMD_NAME. - * assuan-handler.c (dispatch_command): Set this field. - (assuan_get_command_name): New. - * assuan.h, libassuan.vers, libassuan.def: Add new fucntion. - -2009-10-08 Marcus Brinkmann - - * Makefile.am (libassuan_pth): Removed. - (lib_LTLIBRARIES): Remove $(libassuan_pth). - (libassuan_pth_la_SOURCES, libassuan_pth_la_CPPFLAGS) - (libassuan_pth_la_CFLAGS, libassuan_pth_la_LIBADD): Removed. - * libassuan.m4 (AM_PATH_LIBASSUAN_PTH, AM_PATH_LIBASSUAN_PTHREAD): - Removed. - * assuan-io-pth.c: Removed. - * libassuan-config.in (all_thread_modules): Removed. Also removed - option --thread. - -2009-10-08 Marcus Brinkmann - - * assuan.h (assuan_get_assuan_log_stream, - assuan_set_assuan_log_stream): Remove prototypes. - * libassuan.def: Remove assuan_get_assuan_log_stream, - assuan_set_assuan_log_stream. - * libassuan.vers: Likewise. - * assuan-defs.h (_assuan_w32_strerror): Fix prototype. - (w32_strerror): Remove macro. - * assuan-pipe-connect.c (build_w32_commandline): Add argument for - context. Use it for malloc routines. Use _assuan_w32_strerror - instead of w32_strerror. - * vasprintf.c: New file. - -2009-09-29 Werner Koch - - * assuan.h: Comment fix. - - * assuan.c (assuan_release): Allow passing a NULL ctx. - -2009-09-19 Marcus Brinkmann - - * src/libassuan.vers, src/libassuan.def: Update to new API. - * assuan.c, context.c, system.c, debug.c: New files. - * Makefile.am (common_sources): Add assuan.c, context.c, system.c - and debug.c. - * assuan.h: Include . Fix inclusion of . - (_ASSUAN_EXT_SYM_PREFIX, _ASSUAN_PREFIX1, _ASSUAN_PREFIX2) - (_ASSUAN_PREFIX): Remove support for renaming the whole library, - now that we have a stable shared library interface that can evolve - to cover all needs (particularly those of GPGME). - (assuan_malloc_hooks, assuan_malloc_hooks_t, assuan_log_cb_t) - (assuan_io_monitor_t): New types. - (ASSUAN_LOG_INIT, ASSUAN_LOG_CTX, ASSUAN_LOG_ENGINE) - (ASSUAN_LOG_DATA, ASSUAN_LOG_SYSIO, ASSUAN_IO_FROM_PEER) - (ASSUAN_IO_TO_PEER, ASSUAN_IO_MONITOR_NOLOG) - (ASSUAN_IO_MONITOR_IGNORE): New symbols. - (assuan_set_gpg_err_source, assuan_get_gpg_err_source) - (assuan_get_malloc_hooks, assuan_set_log_cb, assuan_get_log_cb) - (assuan_new, assuan_new_ext, assuan_release): New function - prototypes. - (assuan_init_pipe_server, assuan_init_socket_server) - (assuan_init_socket_server_ext, assuan_pipe_connect) - (assuan_pipe_connect_ext, assuan_socket_connect) - (assuan_socket_connect_ext): Take a context argument instead of - pointer to context. - (assuan_deinit_server, assuan_disconnect) - (assuan_set_assuan_err_source): Remove function prototypes. - * assuan-defs.h (ASSUAN_GCC_A_PURE): Moved here from XXX - (_assuan_error): New macro. - (struct assuan_context_s): New members err_source, w32_strerror, - malloc_hooks, log_cb, log_cb_data: New members. Move confidential - into flags. New member engine. - (_assuan_log_handler, _assuan_error_default, _assuan_disconnect): - New prototypes. - (_assuan_new_context): Remove prototype. - (_assuan_malloc, _assuan_calloc, _assuan_realloc, _assuan_free): - Add context argument to prototype. - * assuan-util.c (alloc_func, realloc_func, free_func): Remove - global variables. - (assuan_set_malloc_hooks, _assuan_malloc, _assuan_realloc) - (_assuan_calloc, _assuan_free, assuan_set_pointer) - (assuan_get_pointer, assuan_begin_confidential) - (assuan_end_confidential, assuan_set_io_monitor, assuan_set_flag) - (assuan_get_flag): Move functions to ... - * assuan-client.c: Add ctx argument to all invocations of - _assuan_error. - * assuan-socket-server.c, assuan-socket-connect.c, - assuan-connect.c: Likewise. - * assuan-buffer.c: Likewise. Also update access to confidential - flag. - * assuan-uds.c: Add ctx argument to all invocations of - _assuan_malloc, _assuan_realloc, _assuan_calloc, _assuan_free and - _assuan_error. - * assuan_listen.c, assuan-inquire.c, assuan-handler.c: Likewise. - * assuan-error.c (err_source): Remove global variable. - (assuan_set_assuan_err_source): Removed function. - (_assuan_w32_strerror): Moved here from assuan-logging.c and made - thread-safe. - (_assuan_error): Removed function (is now macro). - * assuan-handler.c: Update access to confidential flag. - * assuan-socket-server.c (accept_connection_bottom): Update access - to confidential flag in context. - (assuan_init_socket_server, assuan_init_socket_server_ext): Take - ctx argument instead of pointer to ctx. - * assuan-inquire.c (init_membuf, put_membuf, get_membuf) - (free_membuf): Take context argument and change all callers. - * assuan-socket-server.c (assuan_socket_connect) - (assuan_socket_connect_ext): Take ctx argument instead of pointer - to ctx. - * assuan-pipe-connect.c (initial_handshake, pipe_connect_unix) - (socketpair_connect, assuan_pipe_connect) - (assuan_pipe_connect_ext): Likewise. - (socketpair_connect): Now that ctx is not a pointer argument - anymore, return if we are server or client in the argv argument. - * assuan-logging.c (_assuan_log_handler): New function. - (_assuan_w32_strerror): Move to assuan-error.c - * assuan-connect.c (assuan_disconnect): Renamed to ... - (_assuan_disconnect): ... this. - * assuan-pipe-server.c (_assuan_new_context): Removed function. - (assuan_init_pipe_server): Take ctx argument instead of pointer to - ctx. - (_assuan_release_context): Removed function. - (_assuan_deinit_server): Reimplement. - -2009-09-01 Marcus Brinkmann - - * assuan.h: Change types in all functions from int to gpg_error_t - where relevant. - * assuan-listen.c (assuan_accept): Change type of RC from int to - gpg_error_t. - * assuan-pipe-server.c (accept_connection, finish_connection): - Change return type to gpg_error_t. - * assuan-socket-server.c (accept_connection_bottom) - (accept_connection, finish_connection): Likewise. - (assuan_init_connected_socket_server): Remove. - * assuan-defs.h (struct assuan_context_s): Change return type of - accept_handler and finish_handler to gpg_error_t. Add io_monitor_data. - * assuan-pipe-connect.c (do_finish): Change to void. - * assuan-inquire.c (_assuan_inquire_ext_cb): Change type of RC - from int to gpg_error_t. - * assuan-handler.c: Change return codes and RC variables from int - to gpg_error_t where appropriate. - * assuan-buffer.c (_assuan_read_line): Fix error code on EOF. - - * assuan.h (ASSUAN_INT2FD, ASSUAN_FD2INT): Remove macros. - * assuan-defs.h (DIMof): Remove macro. - - * setenv.c: Do not include "assuan-defs.h", instead redefine - setenv, unsetenv, clearenv in place. - * assuan-socket-server.c: Use _assuan_free instead of xfree. - * assuan-pipe-connect.c: Fix syntax error. - * assuan-defs.h: Remove some duplicated W32 stuff. - * Makefile.am (libassuan_la_LIBADD, libassuan_pth_la_LIBADD): Add - @NETLIBS@. - * versioninfo.rc.in (FILEVERSION): Set to @BUILD_FILEVERSION@. - ("FileDescription", "FileVersion", "InternalName") - ("LegalCopyright", "OriginalFilename", "ProductName"): Replace c&p - garbage. - * libassuan.def: Remove assuan_get_peercred. - -2009-08-26 Marcus Brinkmann - - * libassuan-config.in: Add gpg-error. - * assuan-buffer.c, assuan-inquire.c, assuan-handler.c, - assuan-util.c, assuan-client.c, assuan-socket-connect.c, - assuan-pipe-connect.c, assuan-defs.h, assuan-socket.c, - assuan-connect.c, assuan-uds.c, assuan-socket-server.c, - assuan-listen.c, assuan-pipe-server.c: Return gpg_error_t instead - assuan_error_t everywhere. Return gpg error codes everywhere. - Replace xtrymalloc, xfree, etc with _assuan_malloc, _assuan_free - etc. Protect include by HAVE_CONFIG_H where not done - so already. - * versioninfo.rc.in, libassuan.vers, libassuan.def, - assuan-error.c: New files. - * Makefile.am: Add libtool handling and gpg-error (also for W32). - (EXTRA_DIST): Remove mkerrors, add libassuan.vers, - versioninfo.rc.in and libassuan.def. - (BUILT_SOURCES, MOSTLYCLEANFILES): Removed. - (common_sources): Remove assuan-errors.c, add assuan-error.c. - * assuan.h: Include . - [_ASSUAN_ONLY_GPG_ERRORS]: Feature removed. - (assuan_init_connected_socket_server, assuan_strerror) - (assuan_pipe_connect2): Removed obsolete interfaces. - (assuan_error_t): Removed type. - (assuan_flag_t): Changed from enum to unsigned int. - (ASSUAN_NO_WAITPID, ASSUAN_CONFIDENTIAL): Changed from enum to macro. - (assuan_process): Return gpg_error_t instead of int. - (assuan_set_assuan_err_source): Change argument type from int to - gpg_err_source_t. - * assuan-defs.h (_assuan_error): Change types to gpg_error_t. - (err_code, err_is_eof, xtrymalloc, xtrycalloc, xtryrealloc) - (xfree): Removed. - (set_error): Adjust for gpg-error codes. - (_assuan_gpg_strerror_r, _assuan_gpg_strsource): Removed. - (struct assuan_context_s): Remove member os_errno. - * assuan-socket-server.c (accept_connection): Don't set CTX->os_errno. - * mkerrors: Removed file. - * assuan-io-pth.c (_assuan_simple_sendmsg) - (_assuan_simple_recvmsg), assuan-io.c (_assuan_simple_sendmsg, - _assuan_simple_recvmsg): Set errno instead returning error - directly (and return -1). - * assuan-handler.c (assuan_process_done): Remove handling for old - style error values. - (process_request, assuan_process): Change return type from int to - gpg_error_t. - * assuan-client.c (assuan_transact): Remove support for old style - error values. - * assuan-pipe-connect.c (assuan_pipe_connect2): Removed. - * assuan-logging.c (my_strerror_r, my_strsource) - (load_libgpg_error, _assuan_gpg_strerror_r) - (_assuan_gpg_strsource): Removed. - -2009-04-03 Werner Koch - - * assuan-handler.c (std_cmd_table): Remove second OPTION entry. - -2009-02-24 Werner Koch - - * assuan-buffer.c (assuan_send_data): Add hack to optionally send - a final "CAN". - -2008-11-03 Marcus Brinkmann - - * assuan-handler.c (std_handler_help): Make I unsigned to silence - gcc -W warning. - * assuan-logging.c (_assuan_log_print_buffer): Likewise for N. - * funopen.c (_assuan_funopen): Remove initializer to silence gcc - -W warning. - * assuan-handler.c (std_cmd_table): Add missing initializer to - silence gcc -W warning. - * assuan-socket-server.c (io): Likewise. - * assuan-socket-connect.c (assuan_socket_connect_ext): Likewise. - -2008-10-29 Marcus Brinkmann - - * assuan.h (assuan_error_t) (_ASSUAN_ONLY_GPG_ERRORS): Make - unsigned int. - (assuan_transact): Change return type of callback handlers to - assuan_error_t. - -2008-10-15 Werner Koch - - * assuan-logging.c (_assuan_log_printf): Flush if the format - string ends with a LF. - -2008-09-01 Werner Koch - - * assuan-io.c: Include time.h. Fixes bug#951. - (_assuan_usleep): Use nanosleep only is available. - -2008-03-25 Marcus Brinkmann - - * assuan-inquire.c (assuan_inquire): Loop over _assuan_read_line - for EAGAIN. - -2008-03-21 Marcus Brinkmann - - * assuan-defs.h (_assuan_usleep): New prototype. - * assuan-io.c (_assuan_usleep): New function. - * assuan-io-pth.c (_assuan_usleep): New function. - * mkerrors: Do not incude , but assuan-defs.h. - (_assuan_error_is_eagain): Call _assuan_usleep. - - * mkerrors [HAVE_W32_SYSTEM]: Include - (_assuan_error_is_eagain) [HAVE_W32_SYSTEM]: Wait the tenth of a - second. - -2007-11-23 Marcus Brinkmann - - * assuan-inquire.c (_assuan_inquire_ext_cb): Pass through return - value from callback function. - Suggested by Ben Kibbey . - -2007-11-14 Werner Koch - - * assuan-pipe-connect.c (pipe_connect_unix): Add dummy arg FLAGS. - (pipe_connect_w32): Add arg FLAGS and start process detached if - requested. Changed callers to pass 0. - (assuan_pipe_connect_ext): Pass FLAG. - -2007-11-12 Marcus Brinkmann - - * assuan-inquire.c (_assuan_inquire_ext_cb): Clear - CTX->inquire_membuf after deallocating it. - -2007-10-18 Marcus Brinkmann - - * assuan-handler.c (std_handler_help): New function. - (std_cmd_table): Add new command HELP. - -2007-10-08 Werner Koch - - * assuan-util.c (assuan_set_io_hooks): New. - * assuan.h (struct assuan_io_hooks): New. - (assuan_set_io_hooks, _assuan_io_hooks): Add prefix macros. - * assuan-defs.h (_assuan_io_hooks): New. - * assuan-io.c (do_io_read): Take all code from _assuan_io_read. - (_assuan_io_read, _assuan_simple_read): Add hook feature. - (do_io_write): Take all code from _assuan_io_write. - (_assuan_io_write, _assuan_simple_write): Add hook feature. - * assuan-io-pth.c (_assuan_simple_read, _assuan_simple_write) - (_assuan_io_read, _assuan_io_write): Add hook feature. - -2007-10-05 Marcus Brinkmann - - * assuan.h (_assuan_error_is_eagain): Add prefix macro. - - * assuan-defs.h (_assuan_error_is_eagain): New prototype. - * mkerrors (_assuan_error_is_eagain): New function. - * assuan-handler.c (process_next): Leave on EAGAIN. - * assuan-handler.c (process_request), - assuan-client.c (_assuan_read_from_server), - assuan-buffer.c (assuan_read_line): Busy loop over EAGAIN. - -2007-10-05 Werner Koch - - * assuan-socket.c (_assuan_sock_wsa2errno): Map WSANOTINITIALISED. - (_assuan_sock_new): Use assuan_fd_t. - * assuan.h (_assuan_sock_wsa2errno): Add prefix macro. - -2007-10-05 Marcus Brinkmann - - * assuan-defs.h (_assuan_sock_wsa2errno) [HAVE_W32_SYSTEM]: Add prototype. - * assuan-uds.c (wsa2errno) [HAVE_W32_SYSTEM]: Move and rename to ... - * assuan-socket.c (_assuan_sock_wsa2errno) [HAVE_W32_SYSTEM]: ... this. - (_assuan_close, _assuan_sock_new, _assuan_sock_connect, _assuan_sock_bind): - Always set errno on error. - - * assuan-uds.c (wsa2errno) [HAVE_W32_SYSTEM]: New function. - (uds_reader, uds_writer) [HAVE_W32_SYSTEM]: Set errno. - -2007-10-04 Werner Koch - - * mkerrors: Map EAGAIN to GPG_ERR_EAGAIN for read and write - errors. - -2007-10-02 Werner Koch - - * assuan-io.c (_assuan_io_read) [W32]: Map WSAEWOULDBLOCK to EAGAIN. - * assuan-socket.c (_assuan_sock_check_nonce): N needs to be signed. - - * assuan-defs.h (struct assuan_context_s): Add LISTEN_NONCE. - * assuan-socket-server.c (assuan_set_sock_nonce): New. - (accept_connection): Check the nonce. - -2007-10-01 Werner Koch - - * assuan.h (ASSUAN_INT2FD, ASSUAN_FD2INT): New. - - * assuan-socket.c: Rewritten. - (assuan_sock_new, assuan_sock_connect, assuan_sock_bind) - (assuan_sock_get_nonce, assuan_sock_check_nonce): New APIs. - - * assuan-io.c (_assuan_simple_read, _assuan_simple_write): - Factored code out to ... - (_assuan_io_read, _assuan_io_write): .. new. - * assuan-io-pth.c (_assuan_io_read, _assuan_io_write): New. - -2007-09-25 Werner Koch - - * assuan.h (_assuan_gpg_strerror_r, _assuan_gpg_strsource): Add - wrappers for these new internal functions. - -2007-09-24 Marcus Brinkmann - - * assuan-uds.c (uds_reader) [HAVE_W32_SYSTEM]: Do not touch the - UDS structure in the context. Reported by Frank Osterfeld. - (uds_writer): Clarify code. - -2007-09-14 Marcus Brinkmann - - * assuan-pipe-connect.c (do_finish) [HAVE_W32_SYSTEM]: Close - ctx->pid as handle. - (pipe_connect_w32): Save the spawned processes handle. - -2007-09-13 Werner Koch - - * assuan-socket.c (_assuan_close): Add inactive debug outputs. - -2007-09-11 Marcus Brinkmann - - * assuan.h: Use _WIN32 instead of HAVE_W32_SYSTEM. - -2007-09-07 Marcus Brinkmann - - * assuan-inquire.c (assuan_inquire_ext): If MAXLEN is 0, still - initialize MEMBUF. - - * assuan-inquire.c (_assuan_inquire_ext_cb): Clear CTX->in_inquire - before invoking callback and returning. - -2007-09-05 Marcus Brinkmann - - * assuan-handler.c (dispatch_command): Return non-critical errors - with PROCESS_DONE (). - -2007-09-03 Marcus Brinkmann - - * assuan.h [_ASSUAN_EXT_SYM_PREFIX]: Add missing symbol renames - with _ASSUAN_PREFIX. - -2007-09-03 Marcus Brinkmann - - * assuan.h [_ASSUAN_EXT_SYM_PREFIX]: Add missing symbol renames - with _ASSUAN_PREFIX. - - * assuan.h (assuan_inquire_ext): Move buffer and buffer_length - arguments callback in prototype. - * assuan-defs.h (struct assuan_context_s): Remove members - inquire_r_buffer and inquire_r_buffer_len. Add buffer and buffer - length arguments to inquire_cb. - * assuan-inquire.c (_assuan_inquire_ext_cb): Return buffer and - buffer length via callback. - (assuan_inquire_ext): Move buffer and buffer length arguments to - callback. - -2007-08-24 Werner Koch - - Switched license to back to LGPLv2.1. - -2007-08-09 Marcus Brinkmann - - * assuan.h (assuan_process_done, assuan_inquire_ext): New - prototypes. - * assuan-defs.h (struct assuan_context_s): New members - in_process_next, in_command, inquire_cb, inquire_cb_data, - inquire_r_buffer, inquire_r_buffer_len, inquire_membuf. - (_assuan_inquire_ext_cb, _assuan_inquire_release): New prototypes. - * assuan-handler.c (PROCESS_DONE): New macro. - (dummy_handler, std_handler_nop, std_handler_cancel) - (std_handler_option, std_handler_bye, std_handler_auth) - (std_handler_reset, std_handler_end): Use PROCESS_DONE to - optionally call assuan_process_done if CTX->in_process_next is - true. - (assuan_process_done, process_next): New functions. - (assuan_process_next): Rewritten to support external event - handling. - * mkerrors: Do not clear high bits of -1 for old style EOF. - * assuan-inquire.c (_assuan_inquire_release) - (_assuan_inquire_ext_cb, assuan_inquire_ext): New functions. - * assuan-pipe-server.c (_assuan_release_context): Call - _assuan_inquire_release. - -2007-07-12 Werner Koch - - * assuan.h (assuan_fd_t): New. - (ASSUAN_INVALID_FD): New. Use it everywhere. - * assuan-defs.h (SOCKET2HANDLE, HANDLE2SOCKET) [W32]: New. Use - them to cast descriptors for socket fucntions. - * assuan-pipe-connect.c (fd_to_handle, handle_to_fd): Remove - definition and all uses. - (pid_to_handle, handle_to_pid): Remove as they are ununsed. - * assuan-io.c (_assuan_simple_write, _assuan_simple_read) [W32]: - Make use of HANDLE2SOCKET. - * assuan-socket.c (_assuan_close) [W32]: Use CloseHandle and not - close. - * assuan-handler.c (assuan_get_active_fds) [W32]: Use - _get_osfhandle for the data fp. - - * assuan-io.c (_assuan_simple_write): Return EPIPE on a closed pipe. - (_assuan_simple_read): Likewise - -2007-07-08 Marcus Brinkmann - - * assuan-defs.h (struct assuan_context_s): Have full peercred - structure for HAVE_SO_PEERCRED. - * assuan-connect.c (assuan_get_peercred) [!HAVE_SO_PEERCRED]: Do - not try to set PID, UID and GID. - -2007-07-05 Werner Koch - - * assuan-defs.h (struct assuan_context_s): Have peercred.valid - even for Windows. This makes some other code cleaner. - - * assuan.h (ASSUAN_CONFIDENTIAL): New flag. - * assuan-util.c (assuan_set_flag, assuan_get_flag): Support flag. - -2007-07-04 Marcus Brinkmann - - Change _WIN32 to HAVE_W32_SYSTEM for consistency. - - * assuan-defs.h (struct assuan_context_s): Have full peercred - structure even if not HAVE_SO_PEERCRED, but not if - HAVE_W32_SYSTEM. - -2007-06-18 Werner Koch - - * assuan-logging.c (load_libgpg_error, _assuan_gpg_strerror_r) - (_assuan_gpg_strsource): New. - * assuan-handler.c (process_request) [W32]: Use these new - functions for human understable error codes. - -2007-06-12 Werner Koch - - * assuan-io.c (_assuan_simple_read): Hack to allow reading from a - socket. - (_assuan_simple_write): Likewise. - -2007-06-11 Werner Koch - - * assuan-io-pth.c (_assuan_simple_read, _assuan_simple_write): Use - pth versions also for W32. - -2007-05-29 Werner Koch - - * assuan-io-pth.c: Include sys/socket.h only if available. Remove - double inclusion of sys/wait.h - - * assuan-pipe-connect.c (build_w32_commandline): Make ARGV const. - - * assuan-pipe-server.c (is_valid_socket) [W32]: Do not define. - - * assuan-socket-server.c [W32]: Include ws2tcpip.h to define - socklen_t. - * assuan-defs.h (struct assuan_context_s): Define most peercred - members only if we can really set them. - (_assuan_simple_sendmsg, _assuan_simple_recvmsg) [W32]: Use a - different prototype. - * assuan.h (assuan_get_peercred) [W32]: Do not define. - * assuan-io.c (_assuan_simple_sendmsg, _assuan_simple_recvmsg) - [w32]: Use another prototype. - -2007-05-09 Werner Koch - - * libassuan.m4: Print found version on success. - -2007-05-01 Werner Koch - - * assuan-uds.c (uds_reader): Cast void ptr for arithmetics. - Reported by Peter O'Gorman. - -2006-12-03 Marcus Brinkmann - - * assuan-handler.c (assuan_command_parse_fd): Also allow white - space after FD. - -2006-12-02 Marcus Brinkmann - - * assuan-uds.c (uds_reader): Return 0 if recvmsg returns 0. - -2006-12-01 Marcus Brinkmann - - * assuan-client.c (assuan_transact): Also translate some of the - legacy error codes. - -2006-11-22 Werner Koch - - * assuan-handler.c (fun1_cookie_write, fun2_cookie_write): New. - (assuan_get_data_fp) [HAVE_FUNOPEN]: Use it. - -2006-11-21 Werner Koch - - * Makefile.am (libassuan_pth_a_CFLAGS): New. - - * assuan-pipe-server.c (_assuan_release_context): Free CMDTBL. - -2006-11-14 Werner Koch - - * libassuan.m4 (AM_CHECK_LIBASSUAN): New. - - * assuan-handler.c (assuan_register_post_cmd_notify) - (assuan_register_post_cmd_notify): New. - * assuan-util.c (assuan_set_io_monitor): New. - * assuan-buffer.c (_assuan_read_line): Use it. - (_assuan_write_line): Ditto. - (_assuan_cookie_write_data): Ditto. - (_assuan_cookie_write_flush): Ditto. - -2006-10-18 Werner Koch - - * libassuan.m4: Pass "pthread" to the common macro. Reported by - Rex Dieter. - -2006-10-16 Werner Koch - - * mkerrors: Map ASSUAN_Not_Confirmed. - -2006-10-10 Werner Koch - - * libassuan.m4 (AM_PATH_LIBASSUAN_PTH) - (AM_PATH_LIBASSUAN_PTHREAD): Fixed. - - * assuan-buffer.c (assuan_sendfd): Implement a runtime detection - of implemented descripotr passing. - - * assuan-uds.c: Take care of USE_DESCRIPTOR_PASSING. - - * assuan-defs.h: Add missing semicolon. - -2006-10-09 Werner Koch - - * assuan-handler.c (process_request): Use weak pragma for the sake - of old gcc's. Reported by Alain Guibert. - - * assuan-io.c: Removed Pth support. - * assuan-io-pth.c: New. Based on assuan-io.c - -2006-10-06 Werner Koch - - * libassuan-config.in: New options --api-version and --thread. - -2006-10-04 Werner Koch - - * assuan-client.c (assuan_transact): Need to map old assuan status - codes so that for example CANCELED is correctly mapped. - -2006-09-28 Marcus Brinkmann - - * assuan-client.c (assuan_transact): Do not convert error on - status line, it is already a gpg-error. Do convert - ASSUAN_Server_Fault. - -2006-09-19 Marcus Brinkmann - - * assuan.h (assuan_init_socket_server_ext) - [_ASSUAN_EXT_SYM_PREFIX]: Fix typo in macro. - -2006-09-19 Werner Koch - - * assuan-defs.h (putc_unlocked): Add prototype. - - * assuan-socket-server.c (accept_connection): Made LEN a socklen_t. - - * assuan.h: Replaced assuan error code enum by simple defines and - made assuan_error_t an int. - * mkerrors: Changed parser accordingly. - -2006-09-19 Marcus Brinkmann - - * assuan-pipe-connect.c: Add hacks for Slowaris. - * assuan-socket.c: Likewise here. - - * assuan.h (enum): Avoid trailing comma in enumerator list. Ugh. - - * mkerrors (_assuan_error): Change return type to assuan_error_t. - * assuan-buffer.c (_assuan_read_line): Change return type to - assuan_error_t. Map returned value of -1. - (_assuan_write_line): Change type of RC to assuan_error_t. - * assuan-defs.h (_assuan_read_line, _assuan_error): Likewise for - prototypes. - - * assuan-defs.h (unsetenv): Define correctly. - -2006-09-14 Werner Koch - - * assuan-io.c (_assuan_waitpid): New. Changed all waitpid calls - to this. - - * assuan.h (_ASSUAN_DEPRECATED): New internal macro. - (assuan_pipe_connect2): Declare deprecated. - (assuan_init_connected_socket_server): Declare deprecated. - - * assuan-connect.c (assuan_get_peercred): New. - * assuan-socket-server.c (accept_connection_bottom): Save uid and gid. - -2006-09-13 Werner Koch - - * assuan-client.c (assuan_transact): Need to map the error code. - * mkerrors: Need to map ASSUAN_No_Secret_Key. - - * assuan-pipe-server.c (is_valid_socket): New. - (assuan_init_pipe_server): Use UDS with the environmet variable is - set and a valid descriptor is given. Ignore FILEDES in this case. - - * assuan-socket-server.c (assuan_init_socket_server_ext): New. - Changed other init fucntions to make use of it. - - * assuan-handler.c (assuan_command_parse_fd): Allow for lowercase - "fd". - (std_handler_reset): Close pending fds. - * assuan-uds.c (uds_receivefd): Fixed. - (_assuan_uds_close_fds): New. - - * assuan-socket-connect.c (assuan_socket_connect_ext): New. Takes - all code of assuan_socket_connect plus an option to use sendmsg. - * assuan-pipe-connect.c (assuan_pipe_connect_ext): New arg FLAGS. - -2006-09-12 Werner Koch - - * assuan-buffer.c (_assuan_write_line): Also log the prefix. - - * assuan-defs.h (DIM, DIMof): New. - - * assuan-domain-server.c: Removed. - * assuan-domain-connect.c: Renamed to .. - * assuan-uds.c: this. - (domain_reader, domain_writer, domain_sendfd, domain_receivefd) - (assuan_domain_connect, _assuan_domain_init): Removed. - (uds_reader, uds_writer, uds_sendfd, uds_receivefd) - (_assuan_init_uds_io): New. - (_assuan_uds_deinit): New. - - * assuan-io.c (_assuan_simple_sendmsg, _assuan_simple_recvmsg): New. - (my_pth_fdmode, my_pth_select): New. - -2006-09-11 Werner Koch - - * assuan-pipe-server.c (assuan_init_pipe_server): Allow for - FILEDES to be NULL and try to start as a socketpair server in this - case. - - * assuan-pipe-connect.c (assuan_pipe_connect2): Split up into two - functions (unix and w32) for clarity. - (pipe_connect_unix): This is the new fucntion. Add USE_CMSG flag. - (pipe_connect_w32): Ditto. - (initial_handshake): Factored out code. - (socketpair_connect): New. - (assuan_pipe_connect_ext): New. - (do_finish): Handle case if outbound and inbound fd are the same. - This is to support socketpairs. - -2006-09-10 Werner Koch - - * assuan-util.c (_assuan_log_print_buffer) - (_assuan_log_sanitized_string,assuan_set_log_stream): Moved to .. - * assuan-logging.c: .. here. - (_assuan_log_print_buffer): Only print the leading bytes in hex - log mode unless the new env variable ASSUAN_FULL_LOGGING has been - set. - (_assuan_set_default_log_stream): Test this env variable. - -2006-09-06 Werner Koch - - * assuan.h (_ASSUAN_ONLY_GPG_ERRORS): New. - - * assuan-handler.c (dispatch_command): Use Syntax_Error instead of - Invalid_Command. - - * assuan-domain-connect.c: Changed alloc malloc/free/realloc to - xtrymalloc et al. - (read_int, write_int): Make args void pointers. - (domain_receivefd): Take care of realloc shrinking failure. - - * assuan-buffer.c (_assuan_read_line, _assuan_write_line) - (assuan_write_line, _assuan_cookie_write_data) - (_assuan_cookie_write_flush): Print the inbound fd instead of the - address of the context when logging I/0. This makes it more - readable. - -2006-09-05 Werner Koch - - * assuan-defs.h (err_code, err_is_eof): New. - - * mkerrors (_assuan_error): New. Wrapped all error code - assignments in a call to this. - (assuan_strerror): Map gpg-style error codes back. Also print a - string for the old EOF code. - (assuan_set_assuan_err_source): New. - - * assuan-logging.c (_assuan_log_printf): Do not change ERRNO and - print the pid. - - * assuan-domain-connect.c (domain_reader): Replaced plain printf - by assuan_log function. - -2005-10-24 Werner Koch - - * putc_unlocked.c, memrchr.c, isascii.c, funopen.c: Changed - distribution terms to LGPL. This are small and trivial files so - there are no obstacles of doing so. - * assuan-socket.c: Likewise, the stated GPL was not intended. - -2005-10-08 Marcus Brinkmann - - * assuan-defs.h (setenv, unsetenv, clearenv) [!HAVE_SETENV]: - Define to _assuan_*. - * setenv.c: Include "assuan-defs.h". - (__add_to_environ): Make static. - -2005-10-07 Marcus Brinkmann - - * assuan-defs.h (memrchr) [!HAVE_MEMRCHR]: New prototype. - (stpcpy) [!HAVE_STPCPY]: Likewise. - * stpcpy.c: New LGPL'ed file from the GNU C Library. - * setenv.c: New file. - * assuan-domain-connect.c (read_int): New function. - (write_int): New function. - (domain_reader): Use read_int. - (domain_sendfd): Use write_int. - -2005-10-01 Marcus Brinkmann - - * assuan.h (assuan_pipe_connect, assuan_pipe_connect2): Make type - of ARGV parameter const in prototype. - * assuan-pipe-connect.c (assuan_pipe_connect, - assuan_pipe_connect2): Likewise in declaration. - (assuan_pipe_connect2): Add braindead cast to make execv happy. - - * assuan-client.c (assuan_transact): Change LINE, S and D from - unsigned char * to char * to silence gcc warning. - * assuan-util.c (_assuan_log_sanitized_string): Add explicit cast - to silence gcc warning. - * assuan-inquire.c (assuan_inquire): Likewise. - -2005-09-08 Marcus Brinkmann - - * assuan-pipe-connect.c (assuan_pipe_connect2): Add missing - declaration of PID. - -2005-08-09 Werner Koch - - * mkerrors: Include config.h into assuan-errors.c. This is - required so that assuan.h knows about the W32 macro. - - * assuan.h [_ASSUAN_EXT_SYM_PREFIX]: New. - * assuan-io.c [_ASSUAN_NO_PTH]: New. - * assuan-pipe-connect.c (fix_signals) [_ASSUAN_NO_FIXED_SIGNALS]: New. - (assuan_pipe_connect2) [_ASSUAN_USE_DOUBLE_FORK]: Use double fork. - (fix_signals) [_ASSUAN_USE_DOUBLE_FORK]: Do not wait.. - -2005-05-21 Werner Koch - - * assuan-util.c (assuan_set_flag, assuan_get_flag): New. - * assuan-defs.h (struct assuan_context_s): New field flags. - * assuan.h (assuan_flag_t): New with one flag value - ASSUAN_NO_WAITPID for now. - * assuan-pipe-connect.c (do_finish): Take care of the no_waitpid - flag. - -2005-04-04 Werner Koch - - * assuan-util.c (_assuan_calloc): Avoid integer overflow. - -2005-03-22 Werner Koch - - * assuan-defs.h (struct assuan_io): Renamed elements READ and - WRITE to READFNC and WRITEFNC to avoid problems with read defined - as macros. Changed callers. Noted by Ville Skyttä. - -2005-02-24 Werner Koch - - * assuan-client.c (assuan_transact): Handle empty and comment - commands correctly. - -2004-12-20 Werner Koch - - * assuan-socket-connect.c (assuan_socket_connect) [W32]: Allow for - a drive letter in the path. - -2004-12-19 Werner Koch - - * assuan-pipe-server.c (assuan_init_pipe_server) [W32]: Map file - descriptors using _get_osfhandle. - -2004-12-19 Moritz Schulte - - * assuan-pipe-connect.c (assuan_pipe_connect2): Removed "`" - character at beginning of line 532. - -2004-12-18 Werner Koch - - * assuan-logging.c (_assuan_w32_strerror): New. - * assuan-defs.h (w32_strerror): new. - * assuan-pipe-connect.c (assuan_pipe_connect2, fix_signals): - Factored signal code out to new function. - (build_w32_commandline, create_inheritable_pipe): New. Taken - from gnupg 1.9. - (assuan_pipe_connect2) [W32]: Implemented for W32. - -2004-12-14 Werner Koch - - * assuan-socket-connect.c (assuan_socket_connect): Always allow - NAME to start with a froward slash. - -2004-12-07 Werner Koch - - * assuan-logging.c, assuan-io.c: Include config.h - - Replaced all usages of _WIN32 by the new HAVE_W32_SYSTEM because - there is nothing winning in this API. - - * assuan-pipe-connect.c (assuan_pipe_connect2) [_WIN32]: Return - error Not Imlemented. - -2004-11-27 Werner Koch - - * assuan-socket.c: Include sys/types.h. Noted by Michael - Nottebrock. - -2004-11-26 Werner Koch - - * assuan-io.c [_WIN32]: Avoid warnings about unknown pragmas. - -2004-11-24 Werner Koch - - * assuan-logging.c (_assuan_log_printf): New. - * assuan-domain-connect.c (LOG): Removed and replaced all callers - by _assuan_log_printf. This is needed for C89 and gcc 2.95 which - both don't have C99 style variable arg macros. - * assuan-pipe-connect.c (LOG): Ditto. - * assuan-socket-connect.c (LOG): Ditto. - - * assuan-socket.c[!_WIN32]: Fixed includes. - -2004-11-23 Timo Schulz - - * assuan-socket.c (_assuan_sock_connect): Get local port from - the sun_path[] file. - (_assuan_sock_bind): Write local port to the sun_path[] file. - * assuan-socket-connect.c (assuan_socket_connect): Use DIRSEP_C - for a better portability. - (assuan-defs.h): Define DIRSEP_C. - -2004-11-19 Werner Koch - - * assuan-handler.c (assuan_write_status): Return an error code. - -2004-11-22 Timo Schulz - - * assuan-io.c (_assuan_simple_read, _assuan_simple_write): W32 - support. - * assuan-socket.c (_assuan_close): New. - (_assuan_sock_new): New. - (_assuan_sock_bind): New. - -2004-11-16 Werner Koch - - * assuan-socket-connect.c (LOG): Fixed macro to print not only the - prefix. - * assuan-domain-connect.c, assuan-socket-connect.c (LOG): Ditto. - -2004-10-02 Werner Koch - - * assuan-socket-connect.c: Define SUN_LEN, AF_LOCAL and PF_LOCAL - if they are not available. - * assuan-domain-connect.c: Define PF_LOCAL and AF_LOCAL if needed. - -2004-06-23 Marcus Brinkmann - - * assuan-domain-connect.c [HAVE_SYS_UIO_H]: Include . - -2004-05-11 Werner Koch - - * assuan-listen.c (assuan_set_hello_line, assuan_accept): Allow - for multi line hello strings. - - * assuan-buffer.c (_assuan_write_line): New with parts of .. - (assuan_write_line): .. factored out. - -2004-04-29 Werner Koch - - * assuan-socket-connect.c: Include string.h. - * assuan-logging.c: Ditto. - -2004-04-22 Marcus Brinkmann - - * libassuan.m4: Quote first argument to AC_DEFUN. - -2004-04-21 Werner Koch - - * assuan-socket-server.c (accept_connection_bottom): Save the pid - of the peer if it is available. - * assuan-socket-connect.c (assuan_socket_connect): Do not save the - dummy SERVED_PID arg. - * assuan-pipe-connect.c (do_finish): Don't wait if the pid is 0. - (assuan_pipe_connect2): Store the parents pid in the environment - of the child. - * assuan-pipe-server.c (assuan_init_pipe_server): Initialize the - peer's pid from the environment. - * assuan-connect.c (assuan_get_pid): Do not return 0 as a PID. - -2004-04-19 Werner Koch - - * assuan-socket-server.c, assuan-socket-connect.c: Includes - sys/types.h. Reported by Michael Nottebrock. - * assuan-domain-connect.c: Ditto. - -2004-04-13 Werner Koch - - * assuan-util.c (_assuan_log_print_buffer): Relaxed quoting. - (_assuan_log_sanitized_string): Ditto. - -2004-03-14 Werner Koch - - * assuan-handler.c: Include . Reported by Bernd Kuhls. - -2004-02-18 Werner Koch - - * libassuan-config.in: Ignore setting of --prefix. - - * assuan-handler.c (assuan_get_data_fp): Fail with ENOSYS if we - can't implement this. - -2004-02-15 Werner Koch - - * memrchr.c (memrchr): Fixed implementation. Taken from gpgme. - -2004-02-13 Werner Koch - - * assuan-domain-connect.c: Removed the unneeded alloca.h. - -2004-01-24 Werner Koch - - * assuan-pipe-connect.c (assuan_pipe_connect2): New as an - extension of assuan_pipe_connect. Made the latter call this one. - -2004-01-14 Werner Koch - - * assuan-buffer.c (_assuan_cookie_write_data): Return the - requested size to indicate successful operation. Fixes a spurious - bug we previously fixed using fflush(). - -2003-12-22 Werner Koch - - * assuan.h (ASSUAN_Locale_Problem): Added. - * assuan-errors.c (assuan_strerror): Ditto. - -2003-12-18 Werner Koch - - * assuan.h (AssuanCommand): Clarified that these are now - deprecated and actually useless. - (assuan_error_t): Clarified and added ASSUAN_USER_ERROR_FIRST, - ASSUAN_USER_ERROR_LAST. - -2003-12-16 Werner Koch - - * assuan-buffer.c: Changed formatting of the debug output prefix. - * assuan-util.c (assuan_set_log_stream): Set global log stream if - it has not been done yet. - * assuan-logging.c (_assuan_set_default_log_stream): New. - (assuan_set_assuan_log_prefix): New. - -2003-12-11 Werner Koch - - * funopen.c (_assuan_funopen): Renamed from funopen, to keep the - name space clean and avoid duplicate definitions if another - library uses the same replacement. - * assuan-defs.h (funopen): Renamed prototype and add a macro. - -2003-12-08 Werner Koch - - * TODO: Removed. - -2003-11-12 Werner Koch - - * assuan-handler.c (process_request): Kludge to print better error - messages for gpg-error enabled programs. - -2003-11-06 Werner Koch - - * assuan.h (assuan_context_t): New. Should be used in favor of - ASSUAN_CONTEXT. - (assuan_error_t): New. To be used instead of AssuanError. - -2003-11-11 Moritz Schulte - - * assuan-socket-connect.c (assuan_socket_connect): Fix computation - of socket address length. - -2003-08-13 Werner Koch - - * assuan-inquire.c (assuan_inquire): Increase length of cmdbuf to - the Assuan limit. - -2003-06-24 Werner Koch - - * mkerrors: Kludge to print libgpg-error values in an easier - readable way. - -2003-04-29 Werner Koch - - * libassuan.m4: New. Based on libgrypt.m4. - * Makefile.am (m4data_DATA): New. - - * assuan.h (AssuanCommand): Removed. - - * assuan-handler.c: Remove the cmd_id element, - (assuan_register_command): Likewise. Note that semantics changed. - (_assuan_register_std_commands): Adjusted. - -2003-02-22 Neal H. Walfield - - * Makefile.am (bin_SCRIPTS): Renamed from bin_PROGRAMS. - -2003-02-18 Neal H. Walfield - - * Makefile.am (libassuan_a_LIBADD): New variable. - * funopen.c: Move from ../common. - * isascii.c: Likewise. - * memrchr.c: Likewise. - * putc_unlocked.c: Likewise. - -2003-02-18 Neal H. Walfield - - * assuan-handler.c (_IO_cookie_io_functions_t): Remove. - (cookie_io_functions_t): Remove. - (fopencookie): Remove prototype. - (assuan_get_data_fp): Use funopen, not fopencookie. - -2003-02-18 Neal H. Walfield - - * libassuan-config.in: New file. - * Makefile.am (bin_PROGRAMS): New variable. - -2003-02-17 Neal H. Walfield - - * .cvsignore: New file. - -2003-02-17 Neal H. Walfield - - * Makefile.am (lib_LIBRARIES): Use this instead of . . . - (noinst_LIBRARIES): . . . this. - (include_HEADERS): New variable. - (libassuan_a_SOURCES): Remove assuan.h, add assuan-logging.c. - - * assuan.h (assuan_set_assuan_log_stream): New prototype. - (assuan_get_assuan_log_stream): Likewise. - (assuan_get_assuan_log_prefix): Likewise. - * assuan-logging.c: New file. - - * assuan-buffer.c [HAVE_JNLIB_LOGGIN]: Do not include - "../jnlib/logging.h". - (my_log_prefix): Remove function. - (_assuan_read_line): Use assuan_get_assuan_log_prefix in lieu of - my_log_prefix. - (assuan_write_line): Likewise. - (_assuan_cookie_write_data): Likewise. - (_assuan_cookie_write_flush): Likewise. - * assuan-domain-connect.c (LOGERROR, LOGERROR1, LOGERROR2, - LOGERRORX): Remove. - (LOG): New macro. - (domain_reader): Use it. - (domain_writer): Likewise. - (domain_sendfd): Likewise. - (domain_receivefd): Likewise. - (_assuan_domain_init): Likewise. - (assuan_domain_connect): Likewise. - * assuan-pipe-connect.c [HAVE_JNLIB_LOGGIN]: Do not include - "../jnlib/logging.h". - (LOGERROR, LOGERROR1, LOGERROR2, LOGERRORX): Remove. - (LOG): New macro. - (assuan_pipe_connect): Use it. - * assuan-socket-connect.c [HAVE_JNLIB_LOGGIN]: Do not include - "../jnlib/logging.h". - (LOGERROR, LOGERROR1, LOGERROR2, LOGERRORX): Remove. - (LOG): New macro. - (assuan_socket_connect): Use it. - (socket_reader): Remove dead code. - (socket_writer): Likewise. - * assuan-util.c [HAVE_JNLIB_LOGGIN]: Do not include - "../jnlib/logging.h". - (_assuan_log_sanitized_string): Use assuan_get_assuan_log_stream, - not jnlib. - -2002-11-24 Neal H. Walfield - - * assuan.h (assuan_command_parse_fd): New prototype. - * assuan-handler.c (assuan_command_parse_fd): Rename from - parse_cmd_input_output. Export. - (std_handler_input): Update to use assuan_command_parse_fd. - (std_handler_output): Likewise. - -2002-11-24 Neal H. Walfield - - * assuan.h (assuan_sendfd): New prototype. - (assuan_receivefd): New prototype. - * assuan-buffer.c (assuan_sendfd): New function. - (assuan_receivefd): New function. - * assuan-handler.c (parse_cmd_input_output): Recognize incoming - file descriptors and act appropriately. - * assuan-defs.h (struct assuan_io): Add fields sendfd and - receivefd. - (struct assuan_context_s): Add fields pendingfds and - pendingfdscount. - * assuan-pipe-server.c (_assuan_new_context): Update IO to reflect - new features. - * assuan-domain-connect.c (do_deinit): Cleanup any unreceived file - descriptors. - (domain_reader): Receive file descriptors. - (domain_sendfd): New function. - (domain_receivefd): New function. - (_assuan_domain_init): Update initialization code to reflect new - features. - -2002-11-24 Neal H. Walfield - - * assuan-domain-connect.c (do_finish): Remove. - (_assuan_domain_init): Use default handlers where possible. - Add an assert and update comments. - * assuan-domain-server.c (accept_connection): Remove. - (assuan_init_domain_server): Use default handlers where possible. - Put the server in pipe mode: it can only be used by a single - client. - -2002-11-24 Neal H. Walfield - - * assuan.h: Add prototype for assuan_domain_connect and - assuan_init_domain_server. - * assuan-defs.h: Include . - Add prototype for _assuan_domain_init. - * assuan-domain-connect.c: New file. - * assuan-domain-server.c: New file. - * Makefile.am (libassuan_a_SOURCES): Add assuan-domain-connect.c - and assuan-domain-server.c - -2002-11-23 Neal H. Walfield - - * Makefile.am (libassuan_a_SOURCES): Add assuan-io.c. - * assuan-io.c: Restore. - (_assuan_simple_read): Rename from _assuan_read. - (_assuan_simple_write): Rename from _assuan_write. - * assuan-defs.h (_assuan_simple_read): New prototype. - (_assuan_simple_write): Likewise. - * assuan-pipe-server.c (pipe_reader): Remove. - (pipe_writer): Remove. - (_assuan_new_context): Initialize IO is with _assuan_simple_read - and _assuan_simple_write. - * assuan-socket-connect.c (socket_reader): Remove. - (socket_writer): Remove. - (assuan_socket_connect): Initialize IO is with _assuan_simple_read - and _assuan_simple_write. - * assuan-socket-server.c (io): New local variable. - (assuan_init_socket_server): Initialize CTX->io. - (assuan_init_connected_socket_server): Likewise. - -2002-11-23 Neal H. Walfield - - * assuan-buffer.c (readline): Use memrchr. - (_assuan_read_line): Rewritten to use the string functions. - -2002-11-20 Neal H. Walfield - - * assuan-socket-connect.c (assuan_socket_connect): Pass PF_LOCAL - to socket(), not AF_UNIX: it expects a PF_* macro and the former - is more portable. - (assuan_socket_connect): Use AF_LOCAL, not AF_UNIX which is more - POSIXy. - -2002-11-20 Neal H. Walfield - - * assuan-defs.h (struct assuan_io): New structure. - (struct assuan_context_s): New field, io. - (_assuan_read): Depreciated. - (_assuan_write): Likewise. - * assuan-pipe-server.c: Include . - (pipe_reader): New function. - (pipe_writer): Likewise. - (_assuan_new_context.IO): New local static. Set to pipe_reader - and pipe_writer. Use it to initialize new context. - * assuan-socket-connect.c (socket_reader): New function. - (socket_writer): New function. - (assuan_socket_connect.IO): New local static. Set to socket_reader - and socket_writer. Use it to initialize new context. - * assuan-buffer.c (writen): Take an ASSUAN_CONTEXT rather than a - file descriptor. Do not use _assuan_write but the write method - in the supplied context. - (readline): Likewise for _assuan_read. - (assuan_write_line): When calling writen, pass CTX; not the file - descriptor directly. - (_assuan_cookie_write_data): Likewise. - (_assuan_cookie_write_flush): Likewise. - (_assuan_read_line): Likewise for readline. - * Makefile.am (libassuan_a_SOURCES): Remove assuan-io.c. - * assuan-io.c: Removed. - -2002-11-10 Werner Koch - - * assuan-pipe-connect.c (assuan_pipe_connect): Changed the order - of the dups to handle cases where we have already used fd 2 for - other things. - -2002-10-31 Neal H. Walfield - - * assuan-util.c: Include . - (_assuan_log_print_buffer): Elide the magic numbers preferring the - standard isfoo functions. Use putc_unlocked where possible. - (_assuan_log_sanitized_string): Rewrite to use putc_unlocked and - the isfoo functions. - -2002-09-05 Neal H. Walfield - - * assuan-defs.h (_assuan_read_wrapper): Depreciated. - * assuan-util.c (_assuan_read_wrapper): Removed. - * assuan-defs.h (_assuan_write_wrapper): Depreciated. - * assuan-util.c (_assuan_write_wrapper): Removed. - * assuan.h (assuan_set_io_fun): Depreciated. - * assuan-util.c (assuan_set_io_fun): Removed. - - * assuan-defs.h (_assuan_read): New function. - (_assuan_write): Likewise. - * assuan-io.c: New file. - - * assuan-buffer.c (writen): Use _assuan_write rather than doing - the work here. - (readline): Likewise for _assuan_read. - - * Makefile.am (libassuan_a_SOURCES): Add assuan-io.c. - -2002-08-16 Werner Koch - - * assuan.h: Renamed Bad_Certificate_Path to Bad_Certificate_Chain. - -2002-07-30 Werner Koch - - Changed the license from GPL to LGPL. - -2002-07-23 Werner Koch - - * assuan-handler.c (_IO_cookie_io_functions_t): Define it here if - it does not exists. - -2002-06-27 Werner Koch - - * assuan-pipe-connect.c (assuan_pipe_connect): No special handling - for the log_fd and stderr. Connect stderr to /dev/null if it - should not be retained. - -2002-06-26 Werner Koch - - * assuan-buffer.c (assuan_write_line): Make sure we never - accidently print an extra LF. - -2002-05-23 Werner Koch - - * assuan-util.c (assuan_set_io_func): New. - * assuan-buffer.c (writen, readline): Use the new functions - instead of pth. - * assuan-socket-server.c (accept_connection): Don't use the - pth_accept - using the assuan included accept code would be a bad - idea within Pth so we don't need a replacement function. - -2002-05-22 Werner Koch - - * assuan-socket-server.c (assuan_init_connected_socket_server): New. - (accept_connection): Factored most code out to.. - (accept_connection_bottom): .. new function. - -2002-04-04 Werner Koch - - * assuan-buffer.c (my_log_prefix): New. Use it for all i/o debug - output. - -2002-03-06 Werner Koch - - * assuan-client.c (_assuan_read_from_server): Detect END. - (assuan_transact): Pass it to the data callback. - -2002-02-27 Werner Koch - - * assuan-client.c (assuan_transact): Add 2 more arguments to - support status lines. Passing NULL yields the old behaviour. - - * assuan-handler.c (process_request): Flush data lines send - without using the data fp. - -2002-02-14 Werner Koch - - * assuan-inquire.c (assuan_inquire): Check for a cancel command - and return ASSUAN_Canceled. Allow for non-data inquiry. - - * assuan.h: Add a few token specific error codes. - -2002-02-13 Werner Koch - - * assuan-defs.h (assuan_context_s): New var CLIENT_PID. - * assuan-pipe-server.c (_assuan_new_context): set default value. - * assuan-socket-server.c (accept_connection): get the actual pid. - -2002-02-12 Werner Koch - - * assuan-buffer.c (writen,readline) [USE_GNU_PT]: Use pth_read/write. - * assuan-socket-server.c (accept_connection) [USE_GNU_PTH]: Ditto. - -2002-02-01 Marcus Brinkmann - - * Makefile.am (MOSTLYCLEANFILES): New variable. - -2002-01-23 Werner Koch - - * assuan-socket-connect.c (LOGERRORX): and removed typo. - -2002-01-22 Marcus Brinkmann - - * assuan-socket-connect.c (LOGERRORX): Reverse arguments to fputs. - -2002-01-21 Werner Koch - - * assuan-connect.c: Move all except assuan_get_pid to... - * assuan-pipe-connect.c: this. - (assuan_pipe_disconnect): Removed. - (do_finish, do_deinit): New - (assuan_pipe_connect): and set them into the context. - * assuan-socket-connect.c: New. - - * assuan-util.c (_assuan_log_sanitized_string): New. - - * assuan-pipe-server.c (assuan_init_pipe_server): Factored most - code out to ... - (_assuan_new_context): new func. - (_assuan_release_context): New - * assuan-connect.c (assuan_pipe_connect): Use the new functions. - -2002-01-20 Werner Koch - - * assuan.h: Added Invalid Option error code. - - * assuan-handler.c (std_handler_option): New. - (std_cmd_tbl): Add OPTION as standard command. - (assuan_register_option_handler): New. - (dispatch_command): Use case insensitive matching as a fallback. - (my_strcasecmp): New. - -2002-01-19 Werner Koch - - * assuan-buffer.c (_assuan_read_line): Add output logging. - (assuan_write_line): Ditto. - (_assuan_cookie_write_data): Ditto. - (_assuan_cookie_write_flush): Ditto. - * assuan-util.c (_assuan_log_print_buffer): New. - (assuan_set_log_stream): New. - (assuan_begin_confidential): New. - (assuan_end_confidential): New. - - * assuan-defs.h: Add a few handler variables. - * assuan-pipe-server.c (assuan_deinit_pipe_server): Removed. - (deinit_pipe_server): New. - (assuan_deinit_server): New. Changed all callers to use this. - * assuan-listen.c (assuan_accept): Use the accept handler. - * assuan-handler.c (process_request): Use the close Handler. - * assuan-socket-server.c: New. - -2002-01-14 Werner Koch - - * assuan-client.c (_assuan_read_from_server): Skip spaces after - the keyword. - -2002-01-03 Werner Koch - - * assuan-handler.c (assuan_set_okay_line): New. - (process_request): And use it here. - -2002-01-02 Werner Koch - - * assuan-inquire.c (init_membuf,put_membuf,get_membuf): Apply a - hidden 0 behind the buffer so that the buffer can be used as a - string in certain contexts. - -2001-12-14 Marcus Brinkmann - - * assuan-connect.c (assuan_pipe_connect): New argument - FD_CHILD_LIST. Don't close those fds. - * assuan.h: Likewise for prototype. - -2001-12-14 Werner Koch - - * assuan-listen.c (assuan_close_input_fd): New. - (assuan_close_output_fd): New. - * assuan-handler.c (std_handler_reset): Always close them after a - reset command. - (std_handler_bye): Likewise. - -2001-12-14 Marcus Brinkmann - - * assuan-buffer.c (_assuan_read_line): New variable ATTICLEN, use - it to save the length of the attic line. - Rediddle the code a bit to make it more clear what happens. - -2001-12-14 Marcus Brinkmann - - * assuan-defs.h (LINELENGTH): Define as ASSUAN_LINELENGTH. - assuan.h: Define ASSUAN_LINELENGTH. - -2001-12-13 Marcus Brinkmann - - * assuan-buffer.c (assuan_read_line): Fix order of execution to - get correct return values. - -2001-12-13 Werner Koch - - * assuan-handler.c (assuan_get_active_fds): Fixed silly bug, - pretty obvious that nobody ever tested this function. - -2001-12-12 Werner Koch - - * assuan-connect.c (assuan_pipe_connect): Implemented the inital - handshake. - * assuan-client.c (read_from_server): Renamed to - (_assuan_read_from_server): this and made external. - - * assuan-listen.c (assuan_set_hello_line): New. - (assuan_accept): Use a custom hello line is available. - - * assuan-buffer.c (assuan_read_line): New. - (assuan_pending_line): New. - (_assuan_write_line): Renamed to .. - (assuan_write_line): this, made public and changed all callers. - -2001-12-04 Werner Koch - - * assuan-connect.c (assuan_pipe_connect): Add more error reporting. - * assuan-client.c: New. - - * assuan-inquire.c: New. - * assuan-handler.c (process_request): Check for nested invocations. - -2001-11-27 Werner Koch - - * assuan-handler.c (assuan_register_input_notify): New. - (assuan_register_output_notify): New. - -2001-11-26 Werner Koch - - * assuan.h: Added more status codes. - -2001-11-25 Werner Koch - - * assuan-handler.c (assuan_register_bye_notify) - (assuan_register_reset_notify) - (assuan_register_cancel_notify): New and call them from the - standard handlers. - (assuan_process): Moved bulk of function to .. - (process_request): .. new. - (assuan_process_next): One shot version of above. - (assuan_get_active_fds): New. - -2001-11-24 Werner Koch - - * assuan-connect.c (assuan_get_pid): New. - - * assuan-buffer.c (_assuan_read_line): Deal with reads of more - than a line. - * assuan-defs.h: Add space in the context for this. - - - Copyright 2001, 2002, 2006, 2007, 2010 Free Software Foundation, Inc. - - This file is free software; as a special exception the author gives - unlimited permission to copy and/or distribute it, with or without - modifications, as long as this notice is preserved. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY, to the extent permitted by law; without even the - implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff --git a/src/ChangeLog-2011 b/src/ChangeLog-2011 new file mode 100644 index 0000000..2f32ea2 --- /dev/null +++ b/src/ChangeLog-2011 @@ -0,0 +1,2375 @@ +2011-12-01 Werner Koch + + NB: ChangeLog files are no longer manually maintained. Starting + on December 1st, 2011 we put change information only in the GIT + commit log, and generate a top-level ChangeLog file from logs at + "make dist". See doc/HACKING for details. + +2011-08-10 Werner Koch + + * assuan.h.in (ASSUAN_FORCE_CLOSE): New. + * assuan-defs.h (assuan_context_s): Add flags.FORCE_CLOSE. + * context.c (assuan_set_flag, assuan_get_flag): Set/get the flag. + * assuan-handler.c (assuan_process_done): Close connection if + requested. + +2011-04-06 Werner Koch + + * libassuan-config.in: Add option --host. + * libassuan.m4: Remove cruft. Add check for correct HOST. + +2011-03-30 Werner Koch + + * sysutils.c (_assuan_sysutils_blurb): Add version string. + +2011-03-09 Werner Koch + + * assuan-handler.c (assuan_register_command): Use my_strcasecmp. + +2011-03-06 Ben Kibbey + + * assuan-socket-connect.c (assuan_socket_connect_fd): Finalize a + context connection from an already connected socket descriptor. + * assuan.h.in (assuan_socket_connect_fd): New prototype. + +2011-03-05 Ben Kibbey + + * assuan-handler.c (assuan_register_command): Let an existing command + be updated to the new values. + +2011-02-28 Werner Koch + + * libassuan.vers: Fold LIBASSUAN_1.1 block into LIBASSUAN_1.0. + +2011-02-28 Ben Kibbey + + * assuan-handler.c (assuan_register_pre_cmd_notify): Pass command + string as second argument. + * assuan.h (assuan_command_t): Move back to assuan-defs.h. + +2011-02-24 Ben Kibbey + + * assuan-handler.c (assuan_register_pre_cmd_notify): New callback. + * assuan.h (assuan_command_t): Register command object. + (pre_cmd_notify_fnc): New prototype. + +2011-02-03 Marcus Brinkmann + + * assuan-socket.c (_assuan_sock_new): Call _assuan_socket instead + of socket. + (_assuan_sock_connect): Call _assuan_connect instead of connect. + * assuan-socket-connect.c (assuan_socket_connect): Call + _assuan_sock_new and _assuan_sock_connect instead of + _assuan_socket and assuan_connect. + * src/system-w32.c, src/system-w32ce.c (__assuan_socket): Call + socket instead of _assuan_sock_new. + (__assuan_connect): Call connect instead of _assuan_sock_connect. + +2011-02-02 Marcus Brinkmann + + * assuan.h.in: Replace namespace by _namespace. + +2011-02-02 Marcus Brinkmann + + * assuan-defs.h (_assuan_socket, _assuan_connect): New prototypes. + * assuan.h.in (ASSUAN_SYSTEM_HOOKS_VERSION): Bumped to 2. + (struct assuan_system_hooks): Add socket and connect members. + (__assuan_socket, __assuan_connect): New prototypes. + (_ASSUAN_SYSTEM_PTH_IMPL): Add socket and connect members. * + assuan-socket-connect.c (assuan_socket_connect): Call + _assuan_socket and _assuan_connect instead _assuan_sock_new and + _assuan_sock_connect. + (libassuan.def, libassuan.vers): Add __assuan_socket and + __assuan_connect. + + * system.c (_assuan_system_hooks_copy): Initialize destination + from system hooks, so we don't get any NULL pointers if there is a + version mismatch. Support version 2 of the system hook structure. + (_assuan_socket, _assuan_connect): New functions. + * system-posix.c (__assuan_socket, __assuan_connect): New functions. + (_assuan_system_hooks): Add __assuan_socketm, __assuan_connect. + * system-w32.c (__assuan_socket, __assuan_connect): New functions. + (_assuan_system_hooks): Add __assuan_socketm, __assuan_connect. + * system-w32ce.c (__assuan_socket, __assuan_connect): New functions. + (_assuan_system_hooks): Add __assuan_socketm, __assuan_connect. + +2010-12-20 Werner Koch + + * gpgcedev.c (pipeimpl_new): Check malloc and CreateEvent return + codes. + +2010-12-14 Werner Koch + + * gpgcemgr.c (wchar_to_utf8, utf8_to_wchar, set_show_registry): New. + (main): Add commands --gpgme-log and --gnupg-log. + +2010-11-17 Marcus Brinkmann + + * vasprintf.c (int_vasprintf) [HAVE_W32CE_SYSTEM && _MSC_VER]: + Just use a fixed size buffer, as va_copy is not easy to fake. + + * gpgcedev.c (struct pipeimpl_s): Add member monitor_rvid. + (struct monitor_s, monitor_t): New types. + (monitor_table, monitor_table_size): New static variables. + (pipeimpl_new): Initialize monitor_rvid. + (allocate_monitor): New function. + (make_pipe): Also try the monitor_table if the opnctx_table fails. + (monitor): Renamed to ... + (monitor_main): ... this. Remove from monitor_table when done. + (assign_rvid): Add to monitor table when creating monitor thread. + +2010-11-15 Werner Koch + + * gpgcedev.c (GPG_Init): Read debug settings. + + * gpgcemgr.c (enable_debug, enable_log): New. + (main): Add options --enable-debug, --disable-debug, --enable-log, + --disable-log. + +2010-11-12 Werner Koch + + * gpgcedev.c (DEVCTX_VALUE): Rename to PIPECTX_VALUE. + (LOGCTX_VALUE): New. + (allocate_opnctx): Add arg IS_LOG. + (logimpl_t): New. + (openctx_t): Add field IS_LOG. + (struct logcontrol): New. + (enable_debug, enable_logging): New. + (log_debug): Make use of the ENABLE_DEBUG flag. + (create_log_id): New. + (logimpl_new, logimpl_unref, logimpl_flush, assert_logimpl): New. + (GPG_Init): Check for GPG2 device. + (GPG_Deinit): Close log stream. + (GPG_Open): Implement log device. + (GPG_Read): Return EOF for the GPG2 device + (GPG_Write): Implement GPG2 device. + (dllmain): Init logcontrol CS. + +2010-11-01 Werner Koch + + * assuan-socket.c (_assuan_sock_bind): Replace open/fdopen by + CreateFile for building with MSC for W32CE. + (utf8_to_wchar, MyCreateFile, MyDeleteFile) [W32CE]: New. + +2010-11-01 Marcus Brinkmann + + * assuan-socket.c, assuan-uds.c, system.c, assuan-pipe-server.c, + assuan-pipe-connect.c [!HAVE_FCNTL_H]: Don't include fcntl.h. + * assuan-buffer.c [!HAVE_W32CE_SYSTEM]: Do not include process.h. + * assuan-socket.c [!HAVE_W32CE_SYSTEM]: Do not include io.h. + * w32-includes.inc.h: Include winsock2.h before ws2tcpip.h. + * sysutils.c (w32_read_registry): Replace goto label "leave" by + "out" (as leave is defined by some Windows header file). + * assuan-inquire.c: Likewise. + +2010-11-01 Werner Koch + + * assuan-socket.c (S_IRUSR) [W32]: Define if not defined. + + * sysutils.c: Remove include of devload.h. + + * assuan-defs.h [HAVE_WINSOCK2_H]: Include winsock2.h prior to + windows.h. + * assuan-pipe-server.c: Ditto. + * sysutils.c: Ditto. + * assuan-socket-server.c: Ditto. + * assuan-pipe-connect.c: Ditto. + * assuan-socket-connect.c: Ditto. + * assuan-uds.c: Ditto. + * assuan-logging.c: Ditto. + * system-w32ce.c: Ditto. + * assuan-io.c: Ditto. + + * w32-types.inc.h [_MSC_VER]: Define ssize_t and pid_t. + + * w32ce-fd-t.inc.h, w32-fd-t.inc.h, posix-fd-t.inc.h, debug.h: + s/inline/GPG_ERR_INLINE/. + * assuan.h.in: Let mkheader write the sys/types.h and unistd.h + include lines. + * mkheader.c: Change accordingly. + + Guard include of sys/types.h, sys/stat.h, sys/time.h and unistd.h. + +2010-09-17 Werner Koch + + * assuan-socket-connect.c (INADDR_NONE): New replacement. Fixes + bug#1282. + +2010-09-01 Werner Koch + + * assuan.h.in (ASSUAN_NO_LOGGING): New. + * assuan-defs.h (struct assuan_context_s): Add FLAGS.NO_LOGGING. + * context.c (assuan_set_flag, assuan_get_flag): Support new flag. + * assuan-logging.c (_assuan_log_control_channel): Implement new flag. + +2010-08-11 Werner Koch + + * assuan.h.in (ASSUAN_CONVEY_COMMENTS): New. + * assuan-defs.h (struct assuan_context_s): Add flags.CONVEY_COMMENTS. + * context.c (assuan_set_flag, assuan_get_flag): Support this flag. + (_assuan_read_from_server): Add arg CONVEY_COMMENTS. Change all + callers. + * client.c (assuan_transact): Implement new flags. + +2010-08-09 Werner Koch + + * assuan-socket-connect.c (assuan_socket_connect): Fix ipv6 + literal IP case. + +2010-08-03 Marcus Brinkmann + + * gpgcedev.c (GPGCEDEV_IOCTL_ASSIGN_RVID): New call ASSIGN_RVID. + (PIPE_FLAG_HALT_MONITOR): New flag. + (struct pipeimpl_s): New members monitor_proc, monitor_access. + (pipeimpl_new): Initialize them. + (assert_pipeimpl): New function. + (access_opnctx, make_pipe): Use it. + (make_pipe): If there is a monitor, halt it. + (monitor, assign_rvid): New functions. + (GPG_IOControl): Handle GPGCEDEV_IOCTL_ASSIGN_RVID. + + * gpgcedev.c: Use index (between 1 and table size) into + opnctx_table as public context identifiers, instead using pointers + into the table directly (which are not stable under table resize). + (OPNCTX_TO_IDX, OPNCTX_FROM_IDX, OPNCTX_VALID_IDX_P): New macros. + +2010-06-28 Werner Koch + + * gpgcedev.c (GPG_IOControl) : Unblock threads. + +2010-06-11 Marcus Brinkmann + + * assuan-handler.c (std_handler_input, + std_handler_output) [HAVE_W32CE_SYSTEM]: Finish the pipe. We must + do this here, because otherwise assuan_close_input_fd() and + assuan_close_output_fd() can't work. + * system-w32ce.c (_assuan_w32ce_finish_pipe): Call SetLastError in + error case. + (__assuan_close): Save WSAGetLastError before trashing it! + Otherwise handle is never closed and GPGME hangs. + +2010-06-10 Marcus Brinkmann + + * w32ce-add.h (ASSUAN_STDIN, ASSUAN_STDOUT): Define magic handle values. + * system-w32ce.c (__assuan_read, __assuan_write): Handle magic + handle values differently. + + * system-w32ce.c (_assuan_w32ce_finish_pipe): Return error on RVID 0. + +2010-06-09 Marcus Brinkmann + + * gpgcedev.c (GPGCEDEV_IOCTL_UNBLOCK): New ioctl. + (PIPE_FLAG_UNBLOCK_READER, PIPE_FLAG_UNBLOCK_WRITER): New flags. + (GPG_Read): Check if PIPE_FLAG_UNBLOCK_READER is set and return + ERROR_BUSY in that case. + (GPG_Write): Likewise for PIPE_FLAG_UNBLOCK_WRITER. + (unblock_call): New function. + (GPG_IOControl): Implement GPGCEDEV_IOCTL_UNBLOCK. + +2010-06-07 Marcus Brinkmann + + * gpgcedev.c: This rewrite does away with troublesome race + conditions (close vs everything else, for example) by simplifying + the locking model. It also handles EOF, EPIPE, but still assumes + that there is always only ever one reader and writer. Also, no + need to treat ERROR_PIPE_NOT_CONNECTED and ERROR_BUSY as EAGAIN + anymore. + (struct pipeimpl_s, pipeimpl_t): New types. + (PIPE_FLAG_NO_READER, PIPE_FLAG, NO_WRITER): New macros. + (struct opnctx_s): Remove everything that's now in struct + pipeimpl_s. Remove also assoc and locked. Add pipeimpl field. + (pipeimpl_new, pipeimpl_unref, allocate_opnctx, verify_opnctx, + access_opnctx): New functions. + (get_new_opnctx, find_and_lock_opnctx, validate_and_lock_opnctx, + unlock_opnctx): Removed. + (GPG_Init, GPG_Deinit): Improve debugging output. + (GPG_Open): Improve debugging output, use allocate_opnctx instead + of get_new_opnctx. + (GPG_Close): Improve debugging output. Rewrite to use reference + counting. Also check if reader or writer is closed and set flags + for triggering EOF or EPIPE. + (GPG_Read): Improve debugging output. Rewrite using pipeimpl. + Check for EOF. + (GPG_Write): Improve debugging output. Rewrite using pipeimpl. + Check for EPIPE. + (make_pipe): Rewrite using pipeimpl. + (GPG_IOControl): Improve debugging output. + +2010-04-22 Werner Koch + + * assuan-listen.c (assuan_accept): Show the PID with the default + hello message. + +2010-04-19 Werner Koch + + * system-w32.c (is_socket): New. + (__assuan_read, __assuan_write): Use is_socket. + +2010-04-16 Marcus Brinkmann + + * assuan-uds.c (uds_reader, uds_sendfd): Don't break strict + aliasing rules. + +2010-04-14 Werner Koch + + * Makefile.am (install-exec-hook): Rename libgpgcedev-0.dll. + +2010-04-14 Marcus Brinkmann + + * Makefile.am (EXTRA_DIST): Add gpgcedev.def. + +2010-04-13 Werner Koch + + * gpgcedev.c (get_new_opnctx): Always clear IS_WRITE. + +2010-04-08 Werner Koch + + * gpgcedev.c (GPG_Read, GPG_Write): If the context is not + associated return ERROR_PIPE_NOT_CONNECTED. + * system-w32ce.c (__assuan_read, __assuan_write): Return EAGAIN for + ERROR_PIPE_NOT_CONNECTED. + + * assuan-pipe-connect.c (pipe_connect): Use + _assuan_close_inheritable also in the spawn error case. + +2010-04-06 Werner Koch + + * posix-includes.inc.h, w32-includes.inc.h: New. + * posix-types.inc.h, w32-types.inc.h: New. + * posix-fd-t.inc.h, w32-fd-t.inc.h, w32ce-fd-t.inc.h: New. + * posix-sock-nonce.inc.h, w32-sock-nonce.inc.h: New. + * mkheader.c (write_special): Support them. + * Makefile.am (common_sources, assuan.h): Ditto + (parts_of_assuan_h): New. + + * w32-sys-pth-impl.h: Use gpg_err_set_errno. + + * assuan.h.in (_ASSUAN_SYSTEM_PTH_IMPL): Factor code out to .. + * posix-sys-pth-impl.h, w32-sys-pth-impl.h: New + * mkheader.c (write_special): Support them. + * Makefile.am (common_sources, assuan.h): Ditto + +2010-03-23 Werner Koch + + * assuan-error.c (_assuan_w32_strerror) [W32CE]: Print only the code. + +2010-03-22 Werner Koch + + * Makefile.am (mkheader, assuan.h): Build header file. + (nodist_libassuan_la_SOURCES): New. Use it for assuan.h. + * mkheader.c: New. + * assuan.h: Rename to assuan.h.in. + +2010-03-18 Werner Koch + + * libassuan.def (_assuan_w32ce_prepare_pipe) + (_assuan_w32ce_finish_pipe): New + * gpgcedev.c (struct opnctx_s): Replace HD by RVID. + (GPGCEDEV_IOCTL_SET_HANDLE): Remove. + (GPGCEDEV_IOCTL_GET_RVID): New. + (create_rendezvous_id): New. + (get_new_opnctx): Init the RVID. + (set_handle): Remove. + (find_and_lock_opnctx, make_pipe, GPG_IOControl): Change to new + method. + * system-w32ce.c (_assuan_w32ce_prepare_pipe) + (_assuan_w32ce_finish_pipe): New. + (_assuan_w32ce_create_pipe): Re-implement using the new functions. + (__assuan_pipe): Create an inheritable pipe. + (build_w32_commandline): New arg FD2_ISNULL. + * system.c (_assuan_close_inheritable): New. + * assuan-pipe-connect.c (pipe_connect): Use the new function. + + * sysutils.c (_assuan_w32ce_create_pipe): Move to system-w32ce.c. + +2010-03-16 Werner Koch + + * system-w32ce.c (build_w32_commandline): Add args to pass the + special options for the standard descriptors. + (utf8_to_wchar, free_wchar): New. + (__assuan_spawn): Adjust for changes. Convert strings for + CreateProcess to wchar_t. + + * system.c: For better readability move platform dependend code to .. + * system-posix.c, system-w32.c, system-w32ce.c: .. New. + * Makefile.am (common_sources): Account for this change. + +2010-03-11 Werner Koch + + * assuan-defs.h [!HAVE_VASPRINTF]: Add macros vasprintf and asprintf. + + * vasprintf.c (asprintf): Rename to _assuan_asprintf. + (vasprintf): Rename to _assuan_vasprintf. + + * assuan.h (ASSUAN_LOG_CONTROL): New. + * assuan-logging.c (assuan_set_assuan_log_stream): Default to + ASSUAN_LOG_CONTROL. + (_assuan_log_print_buffer): Remove. + (_assuan_log_control_channel): New. + (assuan_set_assuan_log_stream): Factor envvar code out to .. + (_assuan_init_log_envvars): .. New. + * assuan.c (assuan_set_log_cb): Call _assuan_init_log_envvars. + * assuan-buffer.c (_assuan_read_line, _assuan_write_line) + (assuan_write_line, _assuan_cookie_write_data) + (_assuan_cookie_write_flush): Use _assuan_log_control_channel. + +2010-03-05 Werner Koch + + * gpgcemgr.c: Add options to register a device and activate it. + +2010-02-24 Werner Koch + + * gpgcemgr.c: New. + * gpgcedev.c: New. + * sysutils.c (_assuan_w32ce_create_pipe): Rewrote to make use of + the new driver. + +2010-02-16 Werner Koch + + * system.c (assuan_free): New. + * libassuan.vers (assuan_free): Add it. + * libassuan.def (assuan_free): Add it. + +2010-02-11 Werner Koch + + * assuan-inquire.c (assuan_inquire): Allow case insensitive + responses. + (_assuan_inquire_ext_cb): Ditto. + +2010-02-10 Werner Koch + + * assuan-handler.c (std_handler_input, std_handler_output): Make + the parsed FD available to the notification functions. This is + the documented behaviour. + +2010-02-04 Werner Koch + + * assuan-socket-connect.c: Include stdint.h and arpa/inet.h. + (parse_portno): New. + (assuan_socket_connect): Return a correct error code on failure. + Support assuan:// and file:// schemes. + +2010-02-03 Marcus Brinkmann + + * libassuan.vers, libassuan.def: Add assuan_set_sock_nonce. + +2010-02-01 Werner Koch + + * sysutils.c (_assuan_w32ce_create_pipe): New. + * libassuan.def (_assuan_w32ce_create_pipe): New. + * assuan-defs.h (CreateFile) [W32CE]: New macro + * system.c (__assuan_pipe): Make it work for W32CE. + +2010-01-28 Werner Koch + + * assuan.h: Remove ranges in list of copyright years. + (getenv) [W32CE]: Provide macro. + * sysutils.c: New. + (_assuan_sysutils_blurb): New. + (_assuan_getenv): new. + * assuan-logging.c: Call _assuan_sysutils_blurb. + +2010-01-27 Werner Koch + + * assuan-socket.c (_assuan_sock_bind): Replace remove by DeleteFile. + + * assuan-handler.c (assuan_get_active_fds) [W32CE]: Remove use of + _get_osfhandle. + * assuan.h (assuan_fd_from_posix_fd) [__MINGW32CE__]: Ditto. + * system.c (assuan_fdopen): Ditto. + (__assuan_spawn) [W32CE]: Do not use GetPriorityClass. + + * assuan-defs.h (getpid) [W32CE]: New. + +2010-01-22 Werner Koch + + * setenv.c [W32CE]: Make it a dummy. + + * assuan-pipe-connect.c: Remove signal.h. + + * system.c (__assuan_spawn): Use CreateFileW. + (DETACHED_PROCESS) [W32CE]: Define to 0. + + * assuan-socket.c (read_port_and_nonce): Replace ENOFILE by a + proper ENOENT. + + Replace all assignments to ERRNO by a call to gpg_err_set_errno. + +2010-01-14 Werner Koch + + * debug.c (_assuan_debug, _assuan_debug_begin) + (_assuan_debug_buffer): Check CTX before dereferencing. + + * assuan.c (assuan_release): Immediately leave on NULL CTX. + +2010-01-05 Marcus Brinkmann + + * debug.h (TRACE_LOG5): Add macro. + * debug.c (_assuan_debug_buffer): Add newline + * system.c: Add more debug output (conditioned on the compile-time + DEBUG_SYSIO macro). + +2009-12-14 Werner Koch + + * assuan.h (ASSUAN_RESPONSE_COMMENT): New. + * client.c (assuan_client_read_response): Return comment lines. + (assuan_client_parse_response): Return ASSUAN_RESPONSE_COMMENT. + (_assuan_read_from_server): Skip comment lines. + +2009-12-08 Marcus Brinkmann + + * assuan.h (struct assuan_system_hooks): Don't use "namespace" as + argument name in declaration (C++ keyword). + + * client.c (assuan_client_read_response): Fix linelen. + + * assuan.h (ASSUAN_SPAWN_DETACHED): New macro. + * assuan-pipe-connect.c (pipe_connect): Calculate spawn_flags from + flags. + + * assuan.h (assuan_fd_from_posix_fd): Handle invalid fd early. + + * assuan-socket.c (get_nonce): Cast buffer to unsigned. + (_assuan_sock_connect) [HAVE_W32_SYSTEM]: Drop ctx argument from + read_port_and_nonce invocation. + * system.c (assuan_fdopen) [HAVE_W32_SYSTEM]: Fix typo in variable + name. + (__assuan_spawn) [HAVE_W32_SYSTEM]: Fix types of fd and fdp. Use + ASSUAN_INVALID_FD. Add missing context argument to _assuan_free, + and fix call to _assuan_w32_strerror. Set errno on error. + (__assuan_socketpair) [HAVE_W32_STRERROR]: Fix type of filedes + argument. + * assuan-pipe-connect.c (pipe_connect, assuan_pipe_connect, + socketpair_connect) [HAVE_W32_SYSTEM]: Fix type of fd_child_list. + * assuan-defs.h (_assuan_socketpair): Likewise for prototype. + * assuan.h (assuan_fd_from_posix_fd): New static inline function. + +2009-12-03 Marcus Brinkmann + + * assuan-logging.c: (log_cats): New static variable. + (TEST_LOG_CAT): New macro. + (_assuan_log_handler): Check log category. + (assuan_set_assuan_log_stream): Check ASSUAN_DEBUG for logging + categories. + (assuan_set_log_stream): Call assuan_set_assuan_log_stream. + +2009-12-02 Marcus Brinkmann + + * Makefile.am (common_sources): Remove assuan-client.c. + * assuan-client.c: File removed. + * assuan.h (ASSUAN_RESPONSE_ERROR, ASSUAN_RESPONSE_OK) + (ASSUAN_RESPONSE_STATUS, ASSUAN_RESPONSE_INQUIRE) + (ASSUAN_RESPONSE_STATUS): New macros. + (assuan_response_t): New type. + (assuan_client_read_response, assuan_client_parse_response): New + prototypes. + * libassuan.def, libassuan.vers: Add assuan_client_read_response, + assuan_client_parse_response. + * assuan-client.c (xtoi_1, xtoi_2, assuan_transact) + (_assuan_read_from_server): Moved to ... + * client.c: ... here, with updates to use new functions and types. + Include . + (assuan_client_read_response, assuan_client_parse_response): New + functions. + * assuan-defs.h (_assuan_read_from_server): Use assuan_response_t. + * assuan-pipe-connect.c (initial_handshake): Use assuan_response_t + and ASSUAN_RESPONSE_OK. + * assuan-socket-connect.c (assuan_socket_connect): Likewise. + +2009-12-01 Marcus Brinkmann + + * assuan-pipe-server.c (assuan_init_pipe_server): Fix debug output. + +2009-11-27 Marcus Brinkmann + + * assuan.h (assuan_set_assuan_log_stream): Add prototype. + * libassuan.def, libassuan.vers: Add back + assuan_set_assuan_log_stream. + * assuan-logging.c (assuan_set_assuan_log_stream): Add back. + * context.c (assuan_get_pointer): Don't output debug info here. + (assuan_get_peercred, assuan_get_pid): But do here. + * system.c: Improve debug output. + * assuan-defs.h (struct assuan_context_s): Rename pipe_mode to + max_accepts. + * assuan-listen.c (assuan_accept): Rework max accepts logic. + * assuan-socket-server.c (assuan_init_socket_server), + assuan-socket-connect.c (assuan_socket_connect), + assuan-pipe-server.c (assuan_init_pipe_server), + assuan-pipe-connect.c (socketpair_connect): Add debug output, set + max_accepts instead of pipe_mode. + +2009-11-25 Marcus Brinkmann + + * assuan.h (assuan_init_pipe_server): Change type of filedes to + assuan_fd_t. + (assuan_fdopen): New prototype. + * libassuan.vers, libassuan.def: Add assuan_fdopen. + * system.c (assuan_fdopen): New function. + * assuan-pipe-server.c (assuan_init_pipe_server): Change type of + filedes to assuan_fd_t. No longer translate fd to handle. Don't + set to binary either (that doesn't do anything for handles, it + only affects the libc fd). + +2009-11-24 Marcus Brinkmann + + * assuan.h (struct _assuan_peercred) [_WIN32]: Define dummy member + so struct is not empty. + * assuan-socket.c (assuan_sock_deinit): Set sock_ctx to NULL. + +2009-11-19 Marcus Brinkmann + + * Makefile.am (common_sources): Remove assuan-connect.c and add + client.c. + * client.c, server.c: New file. + * assuan-defs.h (_assuan_disconnect): Remove. + (struct assuan_context_s): Remove members deinit_handler. + (_assuan_client_release, _assuan_client_finish) + (_assuan_server_finish, _assuan_server_release): New. + * assuan-socket-server.c (accept_connection_bottom): Use + ASSUAN_INVALID_PID, not -1. + (finish_connection, deinit_socket_server): Remove. + (assuan_init_socket_server): Use _assuan_server_release. + * assuan-socket-connect.c (do_finish, do_deinit): Remove. + (assuan_socket_connect): Use _assuan_client_release. + * assuan-pipe-connect.c (do_finish, do_deinit): Remove. + (pipe_connect): Update deinitialization. + (socketpair_connect): Here as well. + * context.c (assuan_get_pid): New from ... + * assuan-connect.c (assuan_get_pid): ... here. Remove this file. + * assuan-pipe-server.c (_assuan_deinit_server, accept_connection) + (deinit_pipe_server, finish_connection): Remove unused function. + * assuan-listen.c (assuan_accept): Check CTX->accept_handler + before calling. Initialize RC. Do not call finish handler for + pipe server. + * assuan-uds.c (_assuan_uds_deinit): Do not call finish handler. + +2009-11-10 Marcus Brinkmann + + * assuan-defs.h (struct assuan_context_s): Rename + CTX->process_done to CTX->process_complete for clarity. Remove + buffer variables from UDS. + * assuan-pipe-connect.c (socketpair_connect): Allow FD_CHILD_LIST + to be NULL. + * assuan-handler.c: Rename CTX->process_done to + CTX->process_complete for clarity. + (process_request, process_next): Handle EOF. + * assuan-uds.c (uds_reader): Remove buffering, which breaks the + pending line algorithm in assuan-buffer.c. + (_assuan_init_uds_io, _assuan_uds_deinit): Remove buffering. + * assuan-buffer.c (_assuan_read_line): Add comment. + +2009-11-05 Marcus Brinkmann + + * assuan.h (struct _assuan_peercred, assuan_peercred_t): New. + (assuan_get_peercred): Define on all systems, return + assuan_peercred_t. + * assuan-defs.h (struct assuan_context_s): Move valid flag out of + peercred struct, use struct _assuan_peercred. + * libassuan.def: Add assuan_get_peercred. + * assuan-connect.c (assuan_get_peercred): Moved to ... + * context.c (assuan_get_peercred): ... here. Reimplement. + * assuan-socket-server.c (accept_connection_bottom): Adjust access + to peercred in context. + * assuan.h (ASSUAN_PIPE_CONNECT_FDPASSING) + (ASSUAN_PIPE_CONNECT_DETACHED, ASSUAN_SOCKET_SERVER_FDPASSING) + (ASSUAN_SOCKET_SERVER_ACCEPTED, ASSUAN_SOCKET_CONNECT_FDPASSING): New. + (assuan_pipe_connect_ext): Renamed to ... + (assuan_pipe_connect): ... this, overwriting old prototype. + (assuan_socket_connect_ext): Renamed to ... + (assuan_socket_connect): ... this, overwriting old prototype. + (assuan_init_socket_server_ext): Renamed to ... + (assuan_init_socket_server): ... this, overwriting old prototype. + * assuan-pipe-connect.c: Likewise for functions. + * assuan-socket-connect.c: Likewise. + * assuan-socket-server.c: Likewise. + * libassuan.def (assuan_init_socket_server_ext) + (assuan_pipe_connect_ext, assuan_socket_connect_ext): Removed. + * libassuan.vers: Likewise. + + * assuan-defs.h (assuan_context_t): Add member PROCESS_DONE. + * assuan.h (assuan_process_next): Add argument DONE to prototype. + * assuan-handler.c (assuan_process_next): Likewise, handle it. + (std_handler_bye): Set PROCESS_DONE. + (assuan_process_done): Handle PROCESS_DONE in the no error case. + (assuan_process): Use PROCESS_DONE. + +2009-11-04 Marcus Brinkmann + + * debug.c (_assuan_debug): Free MSG. + +2009-11-04 Werner Koch + + * Makefile.am (common_sources): Add debug.h. + + * assuan-defs.h (cmdtbl_s): Add field HELPSTR. + * assuan-handler.c (assuan_register_command): Add arg HELP_STRING. + (std_handler_help): Print the help. + +2009-11-02 Marcus Brinkmann + + * assuan.h (assuan_handler_t): New type. + (assuan_register_bye_notify, assuan_register_reset_notify) + (assuan_register_cancel_notify, assuan_register_input_notify) + (assuan_register_output_notify, assuan_register_command): Use it. + * assuan-handler.c (std_handler_cancel, std_handler_bye): Pass + LINE argument to user handler. + (std_handler_reset): Likewise, and also abort RESET if error is + returned from user handler. + (std_handler_input, std_handler_output): Check return value from + user handler before assigning FD. + * assuan-defs.h (struct cmdtbl_s): Change type of member HANDLER + to assuan_handler_t. + (struct assuan_context_s): Change type of members + RESET_NOTIFY_FNC, CANCEL_NOTIFY_FNC, BYE_NOTIFY_FNC, + INPUT_NOTIFY_FNC and OUTPUT_NOTIFY_FNC to assuan_handler_t. + +2009-10-30 Marcus Brinkmann + + * system.c (_assuan_spawn): Check fd_child_list before dumping it. + +2009-10-20 Marcus Brinkmann + + * assuan.h (__assuan_usleep): Add declaration. + * system.c (__assuan_usleep): Make non-static. + * libassuan.vers, libassuan.defs: Sort lexicographically. + +2009-10-19 Marcus Brinkmann + + * system.c (__assuan_waitpid): Return something. + (_assuan_usleep): Don't return value in void function. + +2009-10-16 Marcus Brinkmann + + * conversion.c: Do not include and . + * debug.h (TRACE_BEG6, TRACE4): New macros. + (TRACE_SYSERR): Pass _assuan_trace_context to _assuan_debug. + * context.c (assuan_set_pointer, assuan_get_pointer, + assuan_set_flag, assuan_get_flag, assuan_set_io_monitor, + assuan_set_error): Add trace messages. + + * libassuan-config.in, libassuan.m4, Makefile.am: Remove PTH support. + * assuan.h (assuan_msghdr_t): New type. + (ASSUAN_INVALID_PID): New macro. + (ASSUAN_NO_FIXSIGNALS): New flag macro. + (ASSUAN_SYSTEM_HOOKS_VERSION): New macro. + (struct assuan_system_hooks, assuan_system_hooks_t): New types. + (assuan_pipe_connect, assuan_pipe_connect_ext): Don't make ARGV + const for name==NULL operation. Make fd_child_list an array of + assuan_fd_t. + (assuan_sock_init, assuan_sock_deinit, assuan_set_system_hooks, + assuan_ctx_set_system_hooks, __assuan_pipe, __assuan_close, + __assuan_spawn, __assuan_socketpair): New function prototypes. + (_ASSUAN_SYSTEM_PTH_IMPL, ASSUAN_SYSTEM_PTH_DECL, + ASSUAN_SYSTEM_PTH): New macros. + (_assuan_system_pth): New declaration. + * libassuan.vers, libassuan.defs: Add assuan_sock_init, + assuan_sock_deinit, __assuan_pipe, __assuan_close, __assuan_spawn, + __assuan_socketpair, assuan_set_system_hooks, + assuan_ctx_set_system_hooks. + + * assuan-defs.h (struct assuan_io): Removed, move members to ... + (struct assuan_context_s): ... this to ENGINE. New flag + no_fixsignals. New member SYSTEM. Remove member IO. + (_assuan_pipe, _assuan_read, _assuan_write, _assuan_recvmsg, + _assuan_sendmsg, _assuan_spawn, _assuan_socketpair, + _assuan_system_hooks, _assuan_system_hooks_copy): New + declarations. + (_assuan_error_is_eagain, _assuan_waitpid, _assuan_usleep, + _assuan_close, _assuan_sock_new, _assuan_sock_connect, + _assuan_sock_bind, _assuan_sock_get_nonce, + _assuan_sock_check_nonce): Add context argument. + (_assuan_io_read, _assuan_io_write, _assuan_simple_sendmsg, + _assuan_simple_recvmsg): Removed. + + * context.c (assuan_ctx_set_system_hooks): New function. + * assuan.c (assuan_set_system_hooks): New function. + (assuan_new_ext): Initialize CTX->system. + (assuan_release): Always output trace message. + + * assuan-error.c (_assuan_error_is_eagain): Add ctx argument, pass + along to _assuan_usleep. + * assuan-inquire.c assuan-listen.c, assuan-socket-server.c, + assuan-handler.c, assuan-socket-connect.c, assuan-client.c, + assuan-pipe-connect.c, assuan-socket.c: Pass CTX argument to + functions that need it + (_assuan_sock_new, _assuan_sock_check_none, _assuan_close, + _assuan_error_is_eagain and many more). + * assuan-socket-server.c (assuan_init_socket_server_ext): Update + fields in CTX->engine instead of CTX->io. + * assuan-socket-connect (assuan_socket_connect_ext): Likewise. + * assuan-uds.c (uds_reader, uds_writer, uds_sendfd): Use + _assuan_recvmsg and _assuan_sendmsg instead of + _assuan_simple_recvmsg and _assuan_simple_sendmsg respectively. + (_assuan_init_uds_io): Update fields in CTX->engine instead of + CTX->io. + * assuan-buffer.c: Use functions in CTX->engine instead of CTX->io. + * assuan-pipe-server.c (assuan_init_pipe_server): Update + fields in CTX->engine instead of CTX->io. + + * system.c: Include , , , and + resp. . Define MAX_OPEN_FDS. + (_assuan_system_hooks_copy, __assuan_usleep, _assuan_usleep, + __assuan_pipe, _assuan_pipe, __assuan_close, _assuan_close, + __assuan_read, _assuan_read, __assuan_write, _assuan_write, + __assuan_recvmsg, _assuan_recvmsg, __assuan_sendmsg, + _assuan_sendmsg, __assuan_spawn, _assuan_spawn, __assuan_waitpid, + _assuan_waitpid, __assuan_socketpair, _assuan_socketpair): New + functions. + (_assuan_system_hooks): New singleton. + * assuan-io.c (_assuan_waitpid, do_io_read, _assuan_io_read, + do_io_write, _assuan_io_write, _assuan_simple_sendmsg, + _assuan_simple_recvmsg, _assuan_usleep): Removed. + + * assuan-pipe-connect (writen, build_w32_commandline, + create_inheritable_pipe): Removed (actually moved to system.c). + (fix_signals) [_ASSUAN_NO_FIXED_SIGNALS]: Still fix signals. + (do_finish): Move waitpid logic to _assuan_waitpid, just call + that. + (struct at_pipe_fork, struct at_socketpair_fork): New types. + (at_pipe_fork_cb, at_socketpair_fork_cb): New callback functions. + (pipe_connect_unix, pipe_connect_w32): Replaced by ... + (pipe_connect): ... this new function using new system functions. + (socketpair_connect): Reimplement to use new system functions. + (assuan_pipe_connect, assuan_pipe_connect_ext): Add trace message. + + * assuan-socket.c (_assuan_close): Removed (moved to system.c). + (_assuan_sock_new, _assuan_sock_connect, _assuan_sock_bind, + _assuan_sock_get_nonce, _assuan_sock_check_nonce): Add context + argument. Use new system interface. + (sock_ctx): New singleton. + (assuan_sock_init, assuan_sock_deinit): New functions to + initialize and deinitialize the singleton. + +2009-10-14 Werner Koch + + * assuan-defs.h (assuan_context_s): Add field CURRENT_CMD_NAME. + * assuan-handler.c (dispatch_command): Set this field. + (assuan_get_command_name): New. + * assuan.h, libassuan.vers, libassuan.def: Add new fucntion. + +2009-10-08 Marcus Brinkmann + + * Makefile.am (libassuan_pth): Removed. + (lib_LTLIBRARIES): Remove $(libassuan_pth). + (libassuan_pth_la_SOURCES, libassuan_pth_la_CPPFLAGS) + (libassuan_pth_la_CFLAGS, libassuan_pth_la_LIBADD): Removed. + * libassuan.m4 (AM_PATH_LIBASSUAN_PTH, AM_PATH_LIBASSUAN_PTHREAD): + Removed. + * assuan-io-pth.c: Removed. + * libassuan-config.in (all_thread_modules): Removed. Also removed + option --thread. + +2009-10-08 Marcus Brinkmann + + * assuan.h (assuan_get_assuan_log_stream, + assuan_set_assuan_log_stream): Remove prototypes. + * libassuan.def: Remove assuan_get_assuan_log_stream, + assuan_set_assuan_log_stream. + * libassuan.vers: Likewise. + * assuan-defs.h (_assuan_w32_strerror): Fix prototype. + (w32_strerror): Remove macro. + * assuan-pipe-connect.c (build_w32_commandline): Add argument for + context. Use it for malloc routines. Use _assuan_w32_strerror + instead of w32_strerror. + * vasprintf.c: New file. + +2009-09-29 Werner Koch + + * assuan.h: Comment fix. + + * assuan.c (assuan_release): Allow passing a NULL ctx. + +2009-09-19 Marcus Brinkmann + + * src/libassuan.vers, src/libassuan.def: Update to new API. + * assuan.c, context.c, system.c, debug.c: New files. + * Makefile.am (common_sources): Add assuan.c, context.c, system.c + and debug.c. + * assuan.h: Include . Fix inclusion of . + (_ASSUAN_EXT_SYM_PREFIX, _ASSUAN_PREFIX1, _ASSUAN_PREFIX2) + (_ASSUAN_PREFIX): Remove support for renaming the whole library, + now that we have a stable shared library interface that can evolve + to cover all needs (particularly those of GPGME). + (assuan_malloc_hooks, assuan_malloc_hooks_t, assuan_log_cb_t) + (assuan_io_monitor_t): New types. + (ASSUAN_LOG_INIT, ASSUAN_LOG_CTX, ASSUAN_LOG_ENGINE) + (ASSUAN_LOG_DATA, ASSUAN_LOG_SYSIO, ASSUAN_IO_FROM_PEER) + (ASSUAN_IO_TO_PEER, ASSUAN_IO_MONITOR_NOLOG) + (ASSUAN_IO_MONITOR_IGNORE): New symbols. + (assuan_set_gpg_err_source, assuan_get_gpg_err_source) + (assuan_get_malloc_hooks, assuan_set_log_cb, assuan_get_log_cb) + (assuan_new, assuan_new_ext, assuan_release): New function + prototypes. + (assuan_init_pipe_server, assuan_init_socket_server) + (assuan_init_socket_server_ext, assuan_pipe_connect) + (assuan_pipe_connect_ext, assuan_socket_connect) + (assuan_socket_connect_ext): Take a context argument instead of + pointer to context. + (assuan_deinit_server, assuan_disconnect) + (assuan_set_assuan_err_source): Remove function prototypes. + * assuan-defs.h (ASSUAN_GCC_A_PURE): Moved here from XXX + (_assuan_error): New macro. + (struct assuan_context_s): New members err_source, w32_strerror, + malloc_hooks, log_cb, log_cb_data: New members. Move confidential + into flags. New member engine. + (_assuan_log_handler, _assuan_error_default, _assuan_disconnect): + New prototypes. + (_assuan_new_context): Remove prototype. + (_assuan_malloc, _assuan_calloc, _assuan_realloc, _assuan_free): + Add context argument to prototype. + * assuan-util.c (alloc_func, realloc_func, free_func): Remove + global variables. + (assuan_set_malloc_hooks, _assuan_malloc, _assuan_realloc) + (_assuan_calloc, _assuan_free, assuan_set_pointer) + (assuan_get_pointer, assuan_begin_confidential) + (assuan_end_confidential, assuan_set_io_monitor, assuan_set_flag) + (assuan_get_flag): Move functions to ... + * assuan-client.c: Add ctx argument to all invocations of + _assuan_error. + * assuan-socket-server.c, assuan-socket-connect.c, + assuan-connect.c: Likewise. + * assuan-buffer.c: Likewise. Also update access to confidential + flag. + * assuan-uds.c: Add ctx argument to all invocations of + _assuan_malloc, _assuan_realloc, _assuan_calloc, _assuan_free and + _assuan_error. + * assuan_listen.c, assuan-inquire.c, assuan-handler.c: Likewise. + * assuan-error.c (err_source): Remove global variable. + (assuan_set_assuan_err_source): Removed function. + (_assuan_w32_strerror): Moved here from assuan-logging.c and made + thread-safe. + (_assuan_error): Removed function (is now macro). + * assuan-handler.c: Update access to confidential flag. + * assuan-socket-server.c (accept_connection_bottom): Update access + to confidential flag in context. + (assuan_init_socket_server, assuan_init_socket_server_ext): Take + ctx argument instead of pointer to ctx. + * assuan-inquire.c (init_membuf, put_membuf, get_membuf) + (free_membuf): Take context argument and change all callers. + * assuan-socket-server.c (assuan_socket_connect) + (assuan_socket_connect_ext): Take ctx argument instead of pointer + to ctx. + * assuan-pipe-connect.c (initial_handshake, pipe_connect_unix) + (socketpair_connect, assuan_pipe_connect) + (assuan_pipe_connect_ext): Likewise. + (socketpair_connect): Now that ctx is not a pointer argument + anymore, return if we are server or client in the argv argument. + * assuan-logging.c (_assuan_log_handler): New function. + (_assuan_w32_strerror): Move to assuan-error.c + * assuan-connect.c (assuan_disconnect): Renamed to ... + (_assuan_disconnect): ... this. + * assuan-pipe-server.c (_assuan_new_context): Removed function. + (assuan_init_pipe_server): Take ctx argument instead of pointer to + ctx. + (_assuan_release_context): Removed function. + (_assuan_deinit_server): Reimplement. + +2009-09-01 Marcus Brinkmann + + * assuan.h: Change types in all functions from int to gpg_error_t + where relevant. + * assuan-listen.c (assuan_accept): Change type of RC from int to + gpg_error_t. + * assuan-pipe-server.c (accept_connection, finish_connection): + Change return type to gpg_error_t. + * assuan-socket-server.c (accept_connection_bottom) + (accept_connection, finish_connection): Likewise. + (assuan_init_connected_socket_server): Remove. + * assuan-defs.h (struct assuan_context_s): Change return type of + accept_handler and finish_handler to gpg_error_t. Add io_monitor_data. + * assuan-pipe-connect.c (do_finish): Change to void. + * assuan-inquire.c (_assuan_inquire_ext_cb): Change type of RC + from int to gpg_error_t. + * assuan-handler.c: Change return codes and RC variables from int + to gpg_error_t where appropriate. + * assuan-buffer.c (_assuan_read_line): Fix error code on EOF. + + * assuan.h (ASSUAN_INT2FD, ASSUAN_FD2INT): Remove macros. + * assuan-defs.h (DIMof): Remove macro. + + * setenv.c: Do not include "assuan-defs.h", instead redefine + setenv, unsetenv, clearenv in place. + * assuan-socket-server.c: Use _assuan_free instead of xfree. + * assuan-pipe-connect.c: Fix syntax error. + * assuan-defs.h: Remove some duplicated W32 stuff. + * Makefile.am (libassuan_la_LIBADD, libassuan_pth_la_LIBADD): Add + @NETLIBS@. + * versioninfo.rc.in (FILEVERSION): Set to @BUILD_FILEVERSION@. + ("FileDescription", "FileVersion", "InternalName") + ("LegalCopyright", "OriginalFilename", "ProductName"): Replace c&p + garbage. + * libassuan.def: Remove assuan_get_peercred. + +2009-08-26 Marcus Brinkmann + + * libassuan-config.in: Add gpg-error. + * assuan-buffer.c, assuan-inquire.c, assuan-handler.c, + assuan-util.c, assuan-client.c, assuan-socket-connect.c, + assuan-pipe-connect.c, assuan-defs.h, assuan-socket.c, + assuan-connect.c, assuan-uds.c, assuan-socket-server.c, + assuan-listen.c, assuan-pipe-server.c: Return gpg_error_t instead + assuan_error_t everywhere. Return gpg error codes everywhere. + Replace xtrymalloc, xfree, etc with _assuan_malloc, _assuan_free + etc. Protect include by HAVE_CONFIG_H where not done + so already. + * versioninfo.rc.in, libassuan.vers, libassuan.def, + assuan-error.c: New files. + * Makefile.am: Add libtool handling and gpg-error (also for W32). + (EXTRA_DIST): Remove mkerrors, add libassuan.vers, + versioninfo.rc.in and libassuan.def. + (BUILT_SOURCES, MOSTLYCLEANFILES): Removed. + (common_sources): Remove assuan-errors.c, add assuan-error.c. + * assuan.h: Include . + [_ASSUAN_ONLY_GPG_ERRORS]: Feature removed. + (assuan_init_connected_socket_server, assuan_strerror) + (assuan_pipe_connect2): Removed obsolete interfaces. + (assuan_error_t): Removed type. + (assuan_flag_t): Changed from enum to unsigned int. + (ASSUAN_NO_WAITPID, ASSUAN_CONFIDENTIAL): Changed from enum to macro. + (assuan_process): Return gpg_error_t instead of int. + (assuan_set_assuan_err_source): Change argument type from int to + gpg_err_source_t. + * assuan-defs.h (_assuan_error): Change types to gpg_error_t. + (err_code, err_is_eof, xtrymalloc, xtrycalloc, xtryrealloc) + (xfree): Removed. + (set_error): Adjust for gpg-error codes. + (_assuan_gpg_strerror_r, _assuan_gpg_strsource): Removed. + (struct assuan_context_s): Remove member os_errno. + * assuan-socket-server.c (accept_connection): Don't set CTX->os_errno. + * mkerrors: Removed file. + * assuan-io-pth.c (_assuan_simple_sendmsg) + (_assuan_simple_recvmsg), assuan-io.c (_assuan_simple_sendmsg, + _assuan_simple_recvmsg): Set errno instead returning error + directly (and return -1). + * assuan-handler.c (assuan_process_done): Remove handling for old + style error values. + (process_request, assuan_process): Change return type from int to + gpg_error_t. + * assuan-client.c (assuan_transact): Remove support for old style + error values. + * assuan-pipe-connect.c (assuan_pipe_connect2): Removed. + * assuan-logging.c (my_strerror_r, my_strsource) + (load_libgpg_error, _assuan_gpg_strerror_r) + (_assuan_gpg_strsource): Removed. + +2009-04-03 Werner Koch + + * assuan-handler.c (std_cmd_table): Remove second OPTION entry. + +2009-02-24 Werner Koch + + * assuan-buffer.c (assuan_send_data): Add hack to optionally send + a final "CAN". + +2008-11-03 Marcus Brinkmann + + * assuan-handler.c (std_handler_help): Make I unsigned to silence + gcc -W warning. + * assuan-logging.c (_assuan_log_print_buffer): Likewise for N. + * funopen.c (_assuan_funopen): Remove initializer to silence gcc + -W warning. + * assuan-handler.c (std_cmd_table): Add missing initializer to + silence gcc -W warning. + * assuan-socket-server.c (io): Likewise. + * assuan-socket-connect.c (assuan_socket_connect_ext): Likewise. + +2008-10-29 Marcus Brinkmann + + * assuan.h (assuan_error_t) (_ASSUAN_ONLY_GPG_ERRORS): Make + unsigned int. + (assuan_transact): Change return type of callback handlers to + assuan_error_t. + +2008-10-15 Werner Koch + + * assuan-logging.c (_assuan_log_printf): Flush if the format + string ends with a LF. + +2008-09-01 Werner Koch + + * assuan-io.c: Include time.h. Fixes bug#951. + (_assuan_usleep): Use nanosleep only is available. + +2008-03-25 Marcus Brinkmann + + * assuan-inquire.c (assuan_inquire): Loop over _assuan_read_line + for EAGAIN. + +2008-03-21 Marcus Brinkmann + + * assuan-defs.h (_assuan_usleep): New prototype. + * assuan-io.c (_assuan_usleep): New function. + * assuan-io-pth.c (_assuan_usleep): New function. + * mkerrors: Do not incude , but assuan-defs.h. + (_assuan_error_is_eagain): Call _assuan_usleep. + + * mkerrors [HAVE_W32_SYSTEM]: Include + (_assuan_error_is_eagain) [HAVE_W32_SYSTEM]: Wait the tenth of a + second. + +2007-11-23 Marcus Brinkmann + + * assuan-inquire.c (_assuan_inquire_ext_cb): Pass through return + value from callback function. + Suggested by Ben Kibbey . + +2007-11-14 Werner Koch + + * assuan-pipe-connect.c (pipe_connect_unix): Add dummy arg FLAGS. + (pipe_connect_w32): Add arg FLAGS and start process detached if + requested. Changed callers to pass 0. + (assuan_pipe_connect_ext): Pass FLAG. + +2007-11-12 Marcus Brinkmann + + * assuan-inquire.c (_assuan_inquire_ext_cb): Clear + CTX->inquire_membuf after deallocating it. + +2007-10-18 Marcus Brinkmann + + * assuan-handler.c (std_handler_help): New function. + (std_cmd_table): Add new command HELP. + +2007-10-08 Werner Koch + + * assuan-util.c (assuan_set_io_hooks): New. + * assuan.h (struct assuan_io_hooks): New. + (assuan_set_io_hooks, _assuan_io_hooks): Add prefix macros. + * assuan-defs.h (_assuan_io_hooks): New. + * assuan-io.c (do_io_read): Take all code from _assuan_io_read. + (_assuan_io_read, _assuan_simple_read): Add hook feature. + (do_io_write): Take all code from _assuan_io_write. + (_assuan_io_write, _assuan_simple_write): Add hook feature. + * assuan-io-pth.c (_assuan_simple_read, _assuan_simple_write) + (_assuan_io_read, _assuan_io_write): Add hook feature. + +2007-10-05 Marcus Brinkmann + + * assuan.h (_assuan_error_is_eagain): Add prefix macro. + + * assuan-defs.h (_assuan_error_is_eagain): New prototype. + * mkerrors (_assuan_error_is_eagain): New function. + * assuan-handler.c (process_next): Leave on EAGAIN. + * assuan-handler.c (process_request), + assuan-client.c (_assuan_read_from_server), + assuan-buffer.c (assuan_read_line): Busy loop over EAGAIN. + +2007-10-05 Werner Koch + + * assuan-socket.c (_assuan_sock_wsa2errno): Map WSANOTINITIALISED. + (_assuan_sock_new): Use assuan_fd_t. + * assuan.h (_assuan_sock_wsa2errno): Add prefix macro. + +2007-10-05 Marcus Brinkmann + + * assuan-defs.h (_assuan_sock_wsa2errno) [HAVE_W32_SYSTEM]: Add prototype. + * assuan-uds.c (wsa2errno) [HAVE_W32_SYSTEM]: Move and rename to ... + * assuan-socket.c (_assuan_sock_wsa2errno) [HAVE_W32_SYSTEM]: ... this. + (_assuan_close, _assuan_sock_new, _assuan_sock_connect, _assuan_sock_bind): + Always set errno on error. + + * assuan-uds.c (wsa2errno) [HAVE_W32_SYSTEM]: New function. + (uds_reader, uds_writer) [HAVE_W32_SYSTEM]: Set errno. + +2007-10-04 Werner Koch + + * mkerrors: Map EAGAIN to GPG_ERR_EAGAIN for read and write + errors. + +2007-10-02 Werner Koch + + * assuan-io.c (_assuan_io_read) [W32]: Map WSAEWOULDBLOCK to EAGAIN. + * assuan-socket.c (_assuan_sock_check_nonce): N needs to be signed. + + * assuan-defs.h (struct assuan_context_s): Add LISTEN_NONCE. + * assuan-socket-server.c (assuan_set_sock_nonce): New. + (accept_connection): Check the nonce. + +2007-10-01 Werner Koch + + * assuan.h (ASSUAN_INT2FD, ASSUAN_FD2INT): New. + + * assuan-socket.c: Rewritten. + (assuan_sock_new, assuan_sock_connect, assuan_sock_bind) + (assuan_sock_get_nonce, assuan_sock_check_nonce): New APIs. + + * assuan-io.c (_assuan_simple_read, _assuan_simple_write): + Factored code out to ... + (_assuan_io_read, _assuan_io_write): .. new. + * assuan-io-pth.c (_assuan_io_read, _assuan_io_write): New. + +2007-09-25 Werner Koch + + * assuan.h (_assuan_gpg_strerror_r, _assuan_gpg_strsource): Add + wrappers for these new internal functions. + +2007-09-24 Marcus Brinkmann + + * assuan-uds.c (uds_reader) [HAVE_W32_SYSTEM]: Do not touch the + UDS structure in the context. Reported by Frank Osterfeld. + (uds_writer): Clarify code. + +2007-09-14 Marcus Brinkmann + + * assuan-pipe-connect.c (do_finish) [HAVE_W32_SYSTEM]: Close + ctx->pid as handle. + (pipe_connect_w32): Save the spawned processes handle. + +2007-09-13 Werner Koch + + * assuan-socket.c (_assuan_close): Add inactive debug outputs. + +2007-09-11 Marcus Brinkmann + + * assuan.h: Use _WIN32 instead of HAVE_W32_SYSTEM. + +2007-09-07 Marcus Brinkmann + + * assuan-inquire.c (assuan_inquire_ext): If MAXLEN is 0, still + initialize MEMBUF. + + * assuan-inquire.c (_assuan_inquire_ext_cb): Clear CTX->in_inquire + before invoking callback and returning. + +2007-09-05 Marcus Brinkmann + + * assuan-handler.c (dispatch_command): Return non-critical errors + with PROCESS_DONE (). + +2007-09-03 Marcus Brinkmann + + * assuan.h [_ASSUAN_EXT_SYM_PREFIX]: Add missing symbol renames + with _ASSUAN_PREFIX. + +2007-09-03 Marcus Brinkmann + + * assuan.h [_ASSUAN_EXT_SYM_PREFIX]: Add missing symbol renames + with _ASSUAN_PREFIX. + + * assuan.h (assuan_inquire_ext): Move buffer and buffer_length + arguments callback in prototype. + * assuan-defs.h (struct assuan_context_s): Remove members + inquire_r_buffer and inquire_r_buffer_len. Add buffer and buffer + length arguments to inquire_cb. + * assuan-inquire.c (_assuan_inquire_ext_cb): Return buffer and + buffer length via callback. + (assuan_inquire_ext): Move buffer and buffer length arguments to + callback. + +2007-08-24 Werner Koch + + Switched license to back to LGPLv2.1. + +2007-08-09 Marcus Brinkmann + + * assuan.h (assuan_process_done, assuan_inquire_ext): New + prototypes. + * assuan-defs.h (struct assuan_context_s): New members + in_process_next, in_command, inquire_cb, inquire_cb_data, + inquire_r_buffer, inquire_r_buffer_len, inquire_membuf. + (_assuan_inquire_ext_cb, _assuan_inquire_release): New prototypes. + * assuan-handler.c (PROCESS_DONE): New macro. + (dummy_handler, std_handler_nop, std_handler_cancel) + (std_handler_option, std_handler_bye, std_handler_auth) + (std_handler_reset, std_handler_end): Use PROCESS_DONE to + optionally call assuan_process_done if CTX->in_process_next is + true. + (assuan_process_done, process_next): New functions. + (assuan_process_next): Rewritten to support external event + handling. + * mkerrors: Do not clear high bits of -1 for old style EOF. + * assuan-inquire.c (_assuan_inquire_release) + (_assuan_inquire_ext_cb, assuan_inquire_ext): New functions. + * assuan-pipe-server.c (_assuan_release_context): Call + _assuan_inquire_release. + +2007-07-12 Werner Koch + + * assuan.h (assuan_fd_t): New. + (ASSUAN_INVALID_FD): New. Use it everywhere. + * assuan-defs.h (SOCKET2HANDLE, HANDLE2SOCKET) [W32]: New. Use + them to cast descriptors for socket fucntions. + * assuan-pipe-connect.c (fd_to_handle, handle_to_fd): Remove + definition and all uses. + (pid_to_handle, handle_to_pid): Remove as they are ununsed. + * assuan-io.c (_assuan_simple_write, _assuan_simple_read) [W32]: + Make use of HANDLE2SOCKET. + * assuan-socket.c (_assuan_close) [W32]: Use CloseHandle and not + close. + * assuan-handler.c (assuan_get_active_fds) [W32]: Use + _get_osfhandle for the data fp. + + * assuan-io.c (_assuan_simple_write): Return EPIPE on a closed pipe. + (_assuan_simple_read): Likewise + +2007-07-08 Marcus Brinkmann + + * assuan-defs.h (struct assuan_context_s): Have full peercred + structure for HAVE_SO_PEERCRED. + * assuan-connect.c (assuan_get_peercred) [!HAVE_SO_PEERCRED]: Do + not try to set PID, UID and GID. + +2007-07-05 Werner Koch + + * assuan-defs.h (struct assuan_context_s): Have peercred.valid + even for Windows. This makes some other code cleaner. + + * assuan.h (ASSUAN_CONFIDENTIAL): New flag. + * assuan-util.c (assuan_set_flag, assuan_get_flag): Support flag. + +2007-07-04 Marcus Brinkmann + + Change _WIN32 to HAVE_W32_SYSTEM for consistency. + + * assuan-defs.h (struct assuan_context_s): Have full peercred + structure even if not HAVE_SO_PEERCRED, but not if + HAVE_W32_SYSTEM. + +2007-06-18 Werner Koch + + * assuan-logging.c (load_libgpg_error, _assuan_gpg_strerror_r) + (_assuan_gpg_strsource): New. + * assuan-handler.c (process_request) [W32]: Use these new + functions for human understable error codes. + +2007-06-12 Werner Koch + + * assuan-io.c (_assuan_simple_read): Hack to allow reading from a + socket. + (_assuan_simple_write): Likewise. + +2007-06-11 Werner Koch + + * assuan-io-pth.c (_assuan_simple_read, _assuan_simple_write): Use + pth versions also for W32. + +2007-05-29 Werner Koch + + * assuan-io-pth.c: Include sys/socket.h only if available. Remove + double inclusion of sys/wait.h + + * assuan-pipe-connect.c (build_w32_commandline): Make ARGV const. + + * assuan-pipe-server.c (is_valid_socket) [W32]: Do not define. + + * assuan-socket-server.c [W32]: Include ws2tcpip.h to define + socklen_t. + * assuan-defs.h (struct assuan_context_s): Define most peercred + members only if we can really set them. + (_assuan_simple_sendmsg, _assuan_simple_recvmsg) [W32]: Use a + different prototype. + * assuan.h (assuan_get_peercred) [W32]: Do not define. + * assuan-io.c (_assuan_simple_sendmsg, _assuan_simple_recvmsg) + [w32]: Use another prototype. + +2007-05-09 Werner Koch + + * libassuan.m4: Print found version on success. + +2007-05-01 Werner Koch + + * assuan-uds.c (uds_reader): Cast void ptr for arithmetics. + Reported by Peter O'Gorman. + +2006-12-03 Marcus Brinkmann + + * assuan-handler.c (assuan_command_parse_fd): Also allow white + space after FD. + +2006-12-02 Marcus Brinkmann + + * assuan-uds.c (uds_reader): Return 0 if recvmsg returns 0. + +2006-12-01 Marcus Brinkmann + + * assuan-client.c (assuan_transact): Also translate some of the + legacy error codes. + +2006-11-22 Werner Koch + + * assuan-handler.c (fun1_cookie_write, fun2_cookie_write): New. + (assuan_get_data_fp) [HAVE_FUNOPEN]: Use it. + +2006-11-21 Werner Koch + + * Makefile.am (libassuan_pth_a_CFLAGS): New. + + * assuan-pipe-server.c (_assuan_release_context): Free CMDTBL. + +2006-11-14 Werner Koch + + * libassuan.m4 (AM_CHECK_LIBASSUAN): New. + + * assuan-handler.c (assuan_register_post_cmd_notify) + (assuan_register_post_cmd_notify): New. + * assuan-util.c (assuan_set_io_monitor): New. + * assuan-buffer.c (_assuan_read_line): Use it. + (_assuan_write_line): Ditto. + (_assuan_cookie_write_data): Ditto. + (_assuan_cookie_write_flush): Ditto. + +2006-10-18 Werner Koch + + * libassuan.m4: Pass "pthread" to the common macro. Reported by + Rex Dieter. + +2006-10-16 Werner Koch + + * mkerrors: Map ASSUAN_Not_Confirmed. + +2006-10-10 Werner Koch + + * libassuan.m4 (AM_PATH_LIBASSUAN_PTH) + (AM_PATH_LIBASSUAN_PTHREAD): Fixed. + + * assuan-buffer.c (assuan_sendfd): Implement a runtime detection + of implemented descripotr passing. + + * assuan-uds.c: Take care of USE_DESCRIPTOR_PASSING. + + * assuan-defs.h: Add missing semicolon. + +2006-10-09 Werner Koch + + * assuan-handler.c (process_request): Use weak pragma for the sake + of old gcc's. Reported by Alain Guibert. + + * assuan-io.c: Removed Pth support. + * assuan-io-pth.c: New. Based on assuan-io.c + +2006-10-06 Werner Koch + + * libassuan-config.in: New options --api-version and --thread. + +2006-10-04 Werner Koch + + * assuan-client.c (assuan_transact): Need to map old assuan status + codes so that for example CANCELED is correctly mapped. + +2006-09-28 Marcus Brinkmann + + * assuan-client.c (assuan_transact): Do not convert error on + status line, it is already a gpg-error. Do convert + ASSUAN_Server_Fault. + +2006-09-19 Marcus Brinkmann + + * assuan.h (assuan_init_socket_server_ext) + [_ASSUAN_EXT_SYM_PREFIX]: Fix typo in macro. + +2006-09-19 Werner Koch + + * assuan-defs.h (putc_unlocked): Add prototype. + + * assuan-socket-server.c (accept_connection): Made LEN a socklen_t. + + * assuan.h: Replaced assuan error code enum by simple defines and + made assuan_error_t an int. + * mkerrors: Changed parser accordingly. + +2006-09-19 Marcus Brinkmann + + * assuan-pipe-connect.c: Add hacks for Slowaris. + * assuan-socket.c: Likewise here. + + * assuan.h (enum): Avoid trailing comma in enumerator list. Ugh. + + * mkerrors (_assuan_error): Change return type to assuan_error_t. + * assuan-buffer.c (_assuan_read_line): Change return type to + assuan_error_t. Map returned value of -1. + (_assuan_write_line): Change type of RC to assuan_error_t. + * assuan-defs.h (_assuan_read_line, _assuan_error): Likewise for + prototypes. + + * assuan-defs.h (unsetenv): Define correctly. + +2006-09-14 Werner Koch + + * assuan-io.c (_assuan_waitpid): New. Changed all waitpid calls + to this. + + * assuan.h (_ASSUAN_DEPRECATED): New internal macro. + (assuan_pipe_connect2): Declare deprecated. + (assuan_init_connected_socket_server): Declare deprecated. + + * assuan-connect.c (assuan_get_peercred): New. + * assuan-socket-server.c (accept_connection_bottom): Save uid and gid. + +2006-09-13 Werner Koch + + * assuan-client.c (assuan_transact): Need to map the error code. + * mkerrors: Need to map ASSUAN_No_Secret_Key. + + * assuan-pipe-server.c (is_valid_socket): New. + (assuan_init_pipe_server): Use UDS with the environmet variable is + set and a valid descriptor is given. Ignore FILEDES in this case. + + * assuan-socket-server.c (assuan_init_socket_server_ext): New. + Changed other init fucntions to make use of it. + + * assuan-handler.c (assuan_command_parse_fd): Allow for lowercase + "fd". + (std_handler_reset): Close pending fds. + * assuan-uds.c (uds_receivefd): Fixed. + (_assuan_uds_close_fds): New. + + * assuan-socket-connect.c (assuan_socket_connect_ext): New. Takes + all code of assuan_socket_connect plus an option to use sendmsg. + * assuan-pipe-connect.c (assuan_pipe_connect_ext): New arg FLAGS. + +2006-09-12 Werner Koch + + * assuan-buffer.c (_assuan_write_line): Also log the prefix. + + * assuan-defs.h (DIM, DIMof): New. + + * assuan-domain-server.c: Removed. + * assuan-domain-connect.c: Renamed to .. + * assuan-uds.c: this. + (domain_reader, domain_writer, domain_sendfd, domain_receivefd) + (assuan_domain_connect, _assuan_domain_init): Removed. + (uds_reader, uds_writer, uds_sendfd, uds_receivefd) + (_assuan_init_uds_io): New. + (_assuan_uds_deinit): New. + + * assuan-io.c (_assuan_simple_sendmsg, _assuan_simple_recvmsg): New. + (my_pth_fdmode, my_pth_select): New. + +2006-09-11 Werner Koch + + * assuan-pipe-server.c (assuan_init_pipe_server): Allow for + FILEDES to be NULL and try to start as a socketpair server in this + case. + + * assuan-pipe-connect.c (assuan_pipe_connect2): Split up into two + functions (unix and w32) for clarity. + (pipe_connect_unix): This is the new fucntion. Add USE_CMSG flag. + (pipe_connect_w32): Ditto. + (initial_handshake): Factored out code. + (socketpair_connect): New. + (assuan_pipe_connect_ext): New. + (do_finish): Handle case if outbound and inbound fd are the same. + This is to support socketpairs. + +2006-09-10 Werner Koch + + * assuan-util.c (_assuan_log_print_buffer) + (_assuan_log_sanitized_string,assuan_set_log_stream): Moved to .. + * assuan-logging.c: .. here. + (_assuan_log_print_buffer): Only print the leading bytes in hex + log mode unless the new env variable ASSUAN_FULL_LOGGING has been + set. + (_assuan_set_default_log_stream): Test this env variable. + +2006-09-06 Werner Koch + + * assuan.h (_ASSUAN_ONLY_GPG_ERRORS): New. + + * assuan-handler.c (dispatch_command): Use Syntax_Error instead of + Invalid_Command. + + * assuan-domain-connect.c: Changed alloc malloc/free/realloc to + xtrymalloc et al. + (read_int, write_int): Make args void pointers. + (domain_receivefd): Take care of realloc shrinking failure. + + * assuan-buffer.c (_assuan_read_line, _assuan_write_line) + (assuan_write_line, _assuan_cookie_write_data) + (_assuan_cookie_write_flush): Print the inbound fd instead of the + address of the context when logging I/0. This makes it more + readable. + +2006-09-05 Werner Koch + + * assuan-defs.h (err_code, err_is_eof): New. + + * mkerrors (_assuan_error): New. Wrapped all error code + assignments in a call to this. + (assuan_strerror): Map gpg-style error codes back. Also print a + string for the old EOF code. + (assuan_set_assuan_err_source): New. + + * assuan-logging.c (_assuan_log_printf): Do not change ERRNO and + print the pid. + + * assuan-domain-connect.c (domain_reader): Replaced plain printf + by assuan_log function. + +2005-10-24 Werner Koch + + * putc_unlocked.c, memrchr.c, isascii.c, funopen.c: Changed + distribution terms to LGPL. This are small and trivial files so + there are no obstacles of doing so. + * assuan-socket.c: Likewise, the stated GPL was not intended. + +2005-10-08 Marcus Brinkmann + + * assuan-defs.h (setenv, unsetenv, clearenv) [!HAVE_SETENV]: + Define to _assuan_*. + * setenv.c: Include "assuan-defs.h". + (__add_to_environ): Make static. + +2005-10-07 Marcus Brinkmann + + * assuan-defs.h (memrchr) [!HAVE_MEMRCHR]: New prototype. + (stpcpy) [!HAVE_STPCPY]: Likewise. + * stpcpy.c: New LGPL'ed file from the GNU C Library. + * setenv.c: New file. + * assuan-domain-connect.c (read_int): New function. + (write_int): New function. + (domain_reader): Use read_int. + (domain_sendfd): Use write_int. + +2005-10-01 Marcus Brinkmann + + * assuan.h (assuan_pipe_connect, assuan_pipe_connect2): Make type + of ARGV parameter const in prototype. + * assuan-pipe-connect.c (assuan_pipe_connect, + assuan_pipe_connect2): Likewise in declaration. + (assuan_pipe_connect2): Add braindead cast to make execv happy. + + * assuan-client.c (assuan_transact): Change LINE, S and D from + unsigned char * to char * to silence gcc warning. + * assuan-util.c (_assuan_log_sanitized_string): Add explicit cast + to silence gcc warning. + * assuan-inquire.c (assuan_inquire): Likewise. + +2005-09-08 Marcus Brinkmann + + * assuan-pipe-connect.c (assuan_pipe_connect2): Add missing + declaration of PID. + +2005-08-09 Werner Koch + + * mkerrors: Include config.h into assuan-errors.c. This is + required so that assuan.h knows about the W32 macro. + + * assuan.h [_ASSUAN_EXT_SYM_PREFIX]: New. + * assuan-io.c [_ASSUAN_NO_PTH]: New. + * assuan-pipe-connect.c (fix_signals) [_ASSUAN_NO_FIXED_SIGNALS]: New. + (assuan_pipe_connect2) [_ASSUAN_USE_DOUBLE_FORK]: Use double fork. + (fix_signals) [_ASSUAN_USE_DOUBLE_FORK]: Do not wait.. + +2005-05-21 Werner Koch + + * assuan-util.c (assuan_set_flag, assuan_get_flag): New. + * assuan-defs.h (struct assuan_context_s): New field flags. + * assuan.h (assuan_flag_t): New with one flag value + ASSUAN_NO_WAITPID for now. + * assuan-pipe-connect.c (do_finish): Take care of the no_waitpid + flag. + +2005-04-04 Werner Koch + + * assuan-util.c (_assuan_calloc): Avoid integer overflow. + +2005-03-22 Werner Koch + + * assuan-defs.h (struct assuan_io): Renamed elements READ and + WRITE to READFNC and WRITEFNC to avoid problems with read defined + as macros. Changed callers. Noted by Ville Skyttä. + +2005-02-24 Werner Koch + + * assuan-client.c (assuan_transact): Handle empty and comment + commands correctly. + +2004-12-20 Werner Koch + + * assuan-socket-connect.c (assuan_socket_connect) [W32]: Allow for + a drive letter in the path. + +2004-12-19 Werner Koch + + * assuan-pipe-server.c (assuan_init_pipe_server) [W32]: Map file + descriptors using _get_osfhandle. + +2004-12-19 Moritz Schulte + + * assuan-pipe-connect.c (assuan_pipe_connect2): Removed "`" + character at beginning of line 532. + +2004-12-18 Werner Koch + + * assuan-logging.c (_assuan_w32_strerror): New. + * assuan-defs.h (w32_strerror): new. + * assuan-pipe-connect.c (assuan_pipe_connect2, fix_signals): + Factored signal code out to new function. + (build_w32_commandline, create_inheritable_pipe): New. Taken + from gnupg 1.9. + (assuan_pipe_connect2) [W32]: Implemented for W32. + +2004-12-14 Werner Koch + + * assuan-socket-connect.c (assuan_socket_connect): Always allow + NAME to start with a froward slash. + +2004-12-07 Werner Koch + + * assuan-logging.c, assuan-io.c: Include config.h + + Replaced all usages of _WIN32 by the new HAVE_W32_SYSTEM because + there is nothing winning in this API. + + * assuan-pipe-connect.c (assuan_pipe_connect2) [_WIN32]: Return + error Not Imlemented. + +2004-11-27 Werner Koch + + * assuan-socket.c: Include sys/types.h. Noted by Michael + Nottebrock. + +2004-11-26 Werner Koch + + * assuan-io.c [_WIN32]: Avoid warnings about unknown pragmas. + +2004-11-24 Werner Koch + + * assuan-logging.c (_assuan_log_printf): New. + * assuan-domain-connect.c (LOG): Removed and replaced all callers + by _assuan_log_printf. This is needed for C89 and gcc 2.95 which + both don't have C99 style variable arg macros. + * assuan-pipe-connect.c (LOG): Ditto. + * assuan-socket-connect.c (LOG): Ditto. + + * assuan-socket.c[!_WIN32]: Fixed includes. + +2004-11-23 Timo Schulz + + * assuan-socket.c (_assuan_sock_connect): Get local port from + the sun_path[] file. + (_assuan_sock_bind): Write local port to the sun_path[] file. + * assuan-socket-connect.c (assuan_socket_connect): Use DIRSEP_C + for a better portability. + (assuan-defs.h): Define DIRSEP_C. + +2004-11-19 Werner Koch + + * assuan-handler.c (assuan_write_status): Return an error code. + +2004-11-22 Timo Schulz + + * assuan-io.c (_assuan_simple_read, _assuan_simple_write): W32 + support. + * assuan-socket.c (_assuan_close): New. + (_assuan_sock_new): New. + (_assuan_sock_bind): New. + +2004-11-16 Werner Koch + + * assuan-socket-connect.c (LOG): Fixed macro to print not only the + prefix. + * assuan-domain-connect.c, assuan-socket-connect.c (LOG): Ditto. + +2004-10-02 Werner Koch + + * assuan-socket-connect.c: Define SUN_LEN, AF_LOCAL and PF_LOCAL + if they are not available. + * assuan-domain-connect.c: Define PF_LOCAL and AF_LOCAL if needed. + +2004-06-23 Marcus Brinkmann + + * assuan-domain-connect.c [HAVE_SYS_UIO_H]: Include . + +2004-05-11 Werner Koch + + * assuan-listen.c (assuan_set_hello_line, assuan_accept): Allow + for multi line hello strings. + + * assuan-buffer.c (_assuan_write_line): New with parts of .. + (assuan_write_line): .. factored out. + +2004-04-29 Werner Koch + + * assuan-socket-connect.c: Include string.h. + * assuan-logging.c: Ditto. + +2004-04-22 Marcus Brinkmann + + * libassuan.m4: Quote first argument to AC_DEFUN. + +2004-04-21 Werner Koch + + * assuan-socket-server.c (accept_connection_bottom): Save the pid + of the peer if it is available. + * assuan-socket-connect.c (assuan_socket_connect): Do not save the + dummy SERVED_PID arg. + * assuan-pipe-connect.c (do_finish): Don't wait if the pid is 0. + (assuan_pipe_connect2): Store the parents pid in the environment + of the child. + * assuan-pipe-server.c (assuan_init_pipe_server): Initialize the + peer's pid from the environment. + * assuan-connect.c (assuan_get_pid): Do not return 0 as a PID. + +2004-04-19 Werner Koch + + * assuan-socket-server.c, assuan-socket-connect.c: Includes + sys/types.h. Reported by Michael Nottebrock. + * assuan-domain-connect.c: Ditto. + +2004-04-13 Werner Koch + + * assuan-util.c (_assuan_log_print_buffer): Relaxed quoting. + (_assuan_log_sanitized_string): Ditto. + +2004-03-14 Werner Koch + + * assuan-handler.c: Include . Reported by Bernd Kuhls. + +2004-02-18 Werner Koch + + * libassuan-config.in: Ignore setting of --prefix. + + * assuan-handler.c (assuan_get_data_fp): Fail with ENOSYS if we + can't implement this. + +2004-02-15 Werner Koch + + * memrchr.c (memrchr): Fixed implementation. Taken from gpgme. + +2004-02-13 Werner Koch + + * assuan-domain-connect.c: Removed the unneeded alloca.h. + +2004-01-24 Werner Koch + + * assuan-pipe-connect.c (assuan_pipe_connect2): New as an + extension of assuan_pipe_connect. Made the latter call this one. + +2004-01-14 Werner Koch + + * assuan-buffer.c (_assuan_cookie_write_data): Return the + requested size to indicate successful operation. Fixes a spurious + bug we previously fixed using fflush(). + +2003-12-22 Werner Koch + + * assuan.h (ASSUAN_Locale_Problem): Added. + * assuan-errors.c (assuan_strerror): Ditto. + +2003-12-18 Werner Koch + + * assuan.h (AssuanCommand): Clarified that these are now + deprecated and actually useless. + (assuan_error_t): Clarified and added ASSUAN_USER_ERROR_FIRST, + ASSUAN_USER_ERROR_LAST. + +2003-12-16 Werner Koch + + * assuan-buffer.c: Changed formatting of the debug output prefix. + * assuan-util.c (assuan_set_log_stream): Set global log stream if + it has not been done yet. + * assuan-logging.c (_assuan_set_default_log_stream): New. + (assuan_set_assuan_log_prefix): New. + +2003-12-11 Werner Koch + + * funopen.c (_assuan_funopen): Renamed from funopen, to keep the + name space clean and avoid duplicate definitions if another + library uses the same replacement. + * assuan-defs.h (funopen): Renamed prototype and add a macro. + +2003-12-08 Werner Koch + + * TODO: Removed. + +2003-11-12 Werner Koch + + * assuan-handler.c (process_request): Kludge to print better error + messages for gpg-error enabled programs. + +2003-11-06 Werner Koch + + * assuan.h (assuan_context_t): New. Should be used in favor of + ASSUAN_CONTEXT. + (assuan_error_t): New. To be used instead of AssuanError. + +2003-11-11 Moritz Schulte + + * assuan-socket-connect.c (assuan_socket_connect): Fix computation + of socket address length. + +2003-08-13 Werner Koch + + * assuan-inquire.c (assuan_inquire): Increase length of cmdbuf to + the Assuan limit. + +2003-06-24 Werner Koch + + * mkerrors: Kludge to print libgpg-error values in an easier + readable way. + +2003-04-29 Werner Koch + + * libassuan.m4: New. Based on libgrypt.m4. + * Makefile.am (m4data_DATA): New. + + * assuan.h (AssuanCommand): Removed. + + * assuan-handler.c: Remove the cmd_id element, + (assuan_register_command): Likewise. Note that semantics changed. + (_assuan_register_std_commands): Adjusted. + +2003-02-22 Neal H. Walfield + + * Makefile.am (bin_SCRIPTS): Renamed from bin_PROGRAMS. + +2003-02-18 Neal H. Walfield + + * Makefile.am (libassuan_a_LIBADD): New variable. + * funopen.c: Move from ../common. + * isascii.c: Likewise. + * memrchr.c: Likewise. + * putc_unlocked.c: Likewise. + +2003-02-18 Neal H. Walfield + + * assuan-handler.c (_IO_cookie_io_functions_t): Remove. + (cookie_io_functions_t): Remove. + (fopencookie): Remove prototype. + (assuan_get_data_fp): Use funopen, not fopencookie. + +2003-02-18 Neal H. Walfield + + * libassuan-config.in: New file. + * Makefile.am (bin_PROGRAMS): New variable. + +2003-02-17 Neal H. Walfield + + * .cvsignore: New file. + +2003-02-17 Neal H. Walfield + + * Makefile.am (lib_LIBRARIES): Use this instead of . . . + (noinst_LIBRARIES): . . . this. + (include_HEADERS): New variable. + (libassuan_a_SOURCES): Remove assuan.h, add assuan-logging.c. + + * assuan.h (assuan_set_assuan_log_stream): New prototype. + (assuan_get_assuan_log_stream): Likewise. + (assuan_get_assuan_log_prefix): Likewise. + * assuan-logging.c: New file. + + * assuan-buffer.c [HAVE_JNLIB_LOGGIN]: Do not include + "../jnlib/logging.h". + (my_log_prefix): Remove function. + (_assuan_read_line): Use assuan_get_assuan_log_prefix in lieu of + my_log_prefix. + (assuan_write_line): Likewise. + (_assuan_cookie_write_data): Likewise. + (_assuan_cookie_write_flush): Likewise. + * assuan-domain-connect.c (LOGERROR, LOGERROR1, LOGERROR2, + LOGERRORX): Remove. + (LOG): New macro. + (domain_reader): Use it. + (domain_writer): Likewise. + (domain_sendfd): Likewise. + (domain_receivefd): Likewise. + (_assuan_domain_init): Likewise. + (assuan_domain_connect): Likewise. + * assuan-pipe-connect.c [HAVE_JNLIB_LOGGIN]: Do not include + "../jnlib/logging.h". + (LOGERROR, LOGERROR1, LOGERROR2, LOGERRORX): Remove. + (LOG): New macro. + (assuan_pipe_connect): Use it. + * assuan-socket-connect.c [HAVE_JNLIB_LOGGIN]: Do not include + "../jnlib/logging.h". + (LOGERROR, LOGERROR1, LOGERROR2, LOGERRORX): Remove. + (LOG): New macro. + (assuan_socket_connect): Use it. + (socket_reader): Remove dead code. + (socket_writer): Likewise. + * assuan-util.c [HAVE_JNLIB_LOGGIN]: Do not include + "../jnlib/logging.h". + (_assuan_log_sanitized_string): Use assuan_get_assuan_log_stream, + not jnlib. + +2002-11-24 Neal H. Walfield + + * assuan.h (assuan_command_parse_fd): New prototype. + * assuan-handler.c (assuan_command_parse_fd): Rename from + parse_cmd_input_output. Export. + (std_handler_input): Update to use assuan_command_parse_fd. + (std_handler_output): Likewise. + +2002-11-24 Neal H. Walfield + + * assuan.h (assuan_sendfd): New prototype. + (assuan_receivefd): New prototype. + * assuan-buffer.c (assuan_sendfd): New function. + (assuan_receivefd): New function. + * assuan-handler.c (parse_cmd_input_output): Recognize incoming + file descriptors and act appropriately. + * assuan-defs.h (struct assuan_io): Add fields sendfd and + receivefd. + (struct assuan_context_s): Add fields pendingfds and + pendingfdscount. + * assuan-pipe-server.c (_assuan_new_context): Update IO to reflect + new features. + * assuan-domain-connect.c (do_deinit): Cleanup any unreceived file + descriptors. + (domain_reader): Receive file descriptors. + (domain_sendfd): New function. + (domain_receivefd): New function. + (_assuan_domain_init): Update initialization code to reflect new + features. + +2002-11-24 Neal H. Walfield + + * assuan-domain-connect.c (do_finish): Remove. + (_assuan_domain_init): Use default handlers where possible. + Add an assert and update comments. + * assuan-domain-server.c (accept_connection): Remove. + (assuan_init_domain_server): Use default handlers where possible. + Put the server in pipe mode: it can only be used by a single + client. + +2002-11-24 Neal H. Walfield + + * assuan.h: Add prototype for assuan_domain_connect and + assuan_init_domain_server. + * assuan-defs.h: Include . + Add prototype for _assuan_domain_init. + * assuan-domain-connect.c: New file. + * assuan-domain-server.c: New file. + * Makefile.am (libassuan_a_SOURCES): Add assuan-domain-connect.c + and assuan-domain-server.c + +2002-11-23 Neal H. Walfield + + * Makefile.am (libassuan_a_SOURCES): Add assuan-io.c. + * assuan-io.c: Restore. + (_assuan_simple_read): Rename from _assuan_read. + (_assuan_simple_write): Rename from _assuan_write. + * assuan-defs.h (_assuan_simple_read): New prototype. + (_assuan_simple_write): Likewise. + * assuan-pipe-server.c (pipe_reader): Remove. + (pipe_writer): Remove. + (_assuan_new_context): Initialize IO is with _assuan_simple_read + and _assuan_simple_write. + * assuan-socket-connect.c (socket_reader): Remove. + (socket_writer): Remove. + (assuan_socket_connect): Initialize IO is with _assuan_simple_read + and _assuan_simple_write. + * assuan-socket-server.c (io): New local variable. + (assuan_init_socket_server): Initialize CTX->io. + (assuan_init_connected_socket_server): Likewise. + +2002-11-23 Neal H. Walfield + + * assuan-buffer.c (readline): Use memrchr. + (_assuan_read_line): Rewritten to use the string functions. + +2002-11-20 Neal H. Walfield + + * assuan-socket-connect.c (assuan_socket_connect): Pass PF_LOCAL + to socket(), not AF_UNIX: it expects a PF_* macro and the former + is more portable. + (assuan_socket_connect): Use AF_LOCAL, not AF_UNIX which is more + POSIXy. + +2002-11-20 Neal H. Walfield + + * assuan-defs.h (struct assuan_io): New structure. + (struct assuan_context_s): New field, io. + (_assuan_read): Depreciated. + (_assuan_write): Likewise. + * assuan-pipe-server.c: Include . + (pipe_reader): New function. + (pipe_writer): Likewise. + (_assuan_new_context.IO): New local static. Set to pipe_reader + and pipe_writer. Use it to initialize new context. + * assuan-socket-connect.c (socket_reader): New function. + (socket_writer): New function. + (assuan_socket_connect.IO): New local static. Set to socket_reader + and socket_writer. Use it to initialize new context. + * assuan-buffer.c (writen): Take an ASSUAN_CONTEXT rather than a + file descriptor. Do not use _assuan_write but the write method + in the supplied context. + (readline): Likewise for _assuan_read. + (assuan_write_line): When calling writen, pass CTX; not the file + descriptor directly. + (_assuan_cookie_write_data): Likewise. + (_assuan_cookie_write_flush): Likewise. + (_assuan_read_line): Likewise for readline. + * Makefile.am (libassuan_a_SOURCES): Remove assuan-io.c. + * assuan-io.c: Removed. + +2002-11-10 Werner Koch + + * assuan-pipe-connect.c (assuan_pipe_connect): Changed the order + of the dups to handle cases where we have already used fd 2 for + other things. + +2002-10-31 Neal H. Walfield + + * assuan-util.c: Include . + (_assuan_log_print_buffer): Elide the magic numbers preferring the + standard isfoo functions. Use putc_unlocked where possible. + (_assuan_log_sanitized_string): Rewrite to use putc_unlocked and + the isfoo functions. + +2002-09-05 Neal H. Walfield + + * assuan-defs.h (_assuan_read_wrapper): Depreciated. + * assuan-util.c (_assuan_read_wrapper): Removed. + * assuan-defs.h (_assuan_write_wrapper): Depreciated. + * assuan-util.c (_assuan_write_wrapper): Removed. + * assuan.h (assuan_set_io_fun): Depreciated. + * assuan-util.c (assuan_set_io_fun): Removed. + + * assuan-defs.h (_assuan_read): New function. + (_assuan_write): Likewise. + * assuan-io.c: New file. + + * assuan-buffer.c (writen): Use _assuan_write rather than doing + the work here. + (readline): Likewise for _assuan_read. + + * Makefile.am (libassuan_a_SOURCES): Add assuan-io.c. + +2002-08-16 Werner Koch + + * assuan.h: Renamed Bad_Certificate_Path to Bad_Certificate_Chain. + +2002-07-30 Werner Koch + + Changed the license from GPL to LGPL. + +2002-07-23 Werner Koch + + * assuan-handler.c (_IO_cookie_io_functions_t): Define it here if + it does not exists. + +2002-06-27 Werner Koch + + * assuan-pipe-connect.c (assuan_pipe_connect): No special handling + for the log_fd and stderr. Connect stderr to /dev/null if it + should not be retained. + +2002-06-26 Werner Koch + + * assuan-buffer.c (assuan_write_line): Make sure we never + accidently print an extra LF. + +2002-05-23 Werner Koch + + * assuan-util.c (assuan_set_io_func): New. + * assuan-buffer.c (writen, readline): Use the new functions + instead of pth. + * assuan-socket-server.c (accept_connection): Don't use the + pth_accept - using the assuan included accept code would be a bad + idea within Pth so we don't need a replacement function. + +2002-05-22 Werner Koch + + * assuan-socket-server.c (assuan_init_connected_socket_server): New. + (accept_connection): Factored most code out to.. + (accept_connection_bottom): .. new function. + +2002-04-04 Werner Koch + + * assuan-buffer.c (my_log_prefix): New. Use it for all i/o debug + output. + +2002-03-06 Werner Koch + + * assuan-client.c (_assuan_read_from_server): Detect END. + (assuan_transact): Pass it to the data callback. + +2002-02-27 Werner Koch + + * assuan-client.c (assuan_transact): Add 2 more arguments to + support status lines. Passing NULL yields the old behaviour. + + * assuan-handler.c (process_request): Flush data lines send + without using the data fp. + +2002-02-14 Werner Koch + + * assuan-inquire.c (assuan_inquire): Check for a cancel command + and return ASSUAN_Canceled. Allow for non-data inquiry. + + * assuan.h: Add a few token specific error codes. + +2002-02-13 Werner Koch + + * assuan-defs.h (assuan_context_s): New var CLIENT_PID. + * assuan-pipe-server.c (_assuan_new_context): set default value. + * assuan-socket-server.c (accept_connection): get the actual pid. + +2002-02-12 Werner Koch + + * assuan-buffer.c (writen,readline) [USE_GNU_PT]: Use pth_read/write. + * assuan-socket-server.c (accept_connection) [USE_GNU_PTH]: Ditto. + +2002-02-01 Marcus Brinkmann + + * Makefile.am (MOSTLYCLEANFILES): New variable. + +2002-01-23 Werner Koch + + * assuan-socket-connect.c (LOGERRORX): and removed typo. + +2002-01-22 Marcus Brinkmann + + * assuan-socket-connect.c (LOGERRORX): Reverse arguments to fputs. + +2002-01-21 Werner Koch + + * assuan-connect.c: Move all except assuan_get_pid to... + * assuan-pipe-connect.c: this. + (assuan_pipe_disconnect): Removed. + (do_finish, do_deinit): New + (assuan_pipe_connect): and set them into the context. + * assuan-socket-connect.c: New. + + * assuan-util.c (_assuan_log_sanitized_string): New. + + * assuan-pipe-server.c (assuan_init_pipe_server): Factored most + code out to ... + (_assuan_new_context): new func. + (_assuan_release_context): New + * assuan-connect.c (assuan_pipe_connect): Use the new functions. + +2002-01-20 Werner Koch + + * assuan.h: Added Invalid Option error code. + + * assuan-handler.c (std_handler_option): New. + (std_cmd_tbl): Add OPTION as standard command. + (assuan_register_option_handler): New. + (dispatch_command): Use case insensitive matching as a fallback. + (my_strcasecmp): New. + +2002-01-19 Werner Koch + + * assuan-buffer.c (_assuan_read_line): Add output logging. + (assuan_write_line): Ditto. + (_assuan_cookie_write_data): Ditto. + (_assuan_cookie_write_flush): Ditto. + * assuan-util.c (_assuan_log_print_buffer): New. + (assuan_set_log_stream): New. + (assuan_begin_confidential): New. + (assuan_end_confidential): New. + + * assuan-defs.h: Add a few handler variables. + * assuan-pipe-server.c (assuan_deinit_pipe_server): Removed. + (deinit_pipe_server): New. + (assuan_deinit_server): New. Changed all callers to use this. + * assuan-listen.c (assuan_accept): Use the accept handler. + * assuan-handler.c (process_request): Use the close Handler. + * assuan-socket-server.c: New. + +2002-01-14 Werner Koch + + * assuan-client.c (_assuan_read_from_server): Skip spaces after + the keyword. + +2002-01-03 Werner Koch + + * assuan-handler.c (assuan_set_okay_line): New. + (process_request): And use it here. + +2002-01-02 Werner Koch + + * assuan-inquire.c (init_membuf,put_membuf,get_membuf): Apply a + hidden 0 behind the buffer so that the buffer can be used as a + string in certain contexts. + +2001-12-14 Marcus Brinkmann + + * assuan-connect.c (assuan_pipe_connect): New argument + FD_CHILD_LIST. Don't close those fds. + * assuan.h: Likewise for prototype. + +2001-12-14 Werner Koch + + * assuan-listen.c (assuan_close_input_fd): New. + (assuan_close_output_fd): New. + * assuan-handler.c (std_handler_reset): Always close them after a + reset command. + (std_handler_bye): Likewise. + +2001-12-14 Marcus Brinkmann + + * assuan-buffer.c (_assuan_read_line): New variable ATTICLEN, use + it to save the length of the attic line. + Rediddle the code a bit to make it more clear what happens. + +2001-12-14 Marcus Brinkmann + + * assuan-defs.h (LINELENGTH): Define as ASSUAN_LINELENGTH. + assuan.h: Define ASSUAN_LINELENGTH. + +2001-12-13 Marcus Brinkmann + + * assuan-buffer.c (assuan_read_line): Fix order of execution to + get correct return values. + +2001-12-13 Werner Koch + + * assuan-handler.c (assuan_get_active_fds): Fixed silly bug, + pretty obvious that nobody ever tested this function. + +2001-12-12 Werner Koch + + * assuan-connect.c (assuan_pipe_connect): Implemented the inital + handshake. + * assuan-client.c (read_from_server): Renamed to + (_assuan_read_from_server): this and made external. + + * assuan-listen.c (assuan_set_hello_line): New. + (assuan_accept): Use a custom hello line is available. + + * assuan-buffer.c (assuan_read_line): New. + (assuan_pending_line): New. + (_assuan_write_line): Renamed to .. + (assuan_write_line): this, made public and changed all callers. + +2001-12-04 Werner Koch + + * assuan-connect.c (assuan_pipe_connect): Add more error reporting. + * assuan-client.c: New. + + * assuan-inquire.c: New. + * assuan-handler.c (process_request): Check for nested invocations. + +2001-11-27 Werner Koch + + * assuan-handler.c (assuan_register_input_notify): New. + (assuan_register_output_notify): New. + +2001-11-26 Werner Koch + + * assuan.h: Added more status codes. + +2001-11-25 Werner Koch + + * assuan-handler.c (assuan_register_bye_notify) + (assuan_register_reset_notify) + (assuan_register_cancel_notify): New and call them from the + standard handlers. + (assuan_process): Moved bulk of function to .. + (process_request): .. new. + (assuan_process_next): One shot version of above. + (assuan_get_active_fds): New. + +2001-11-24 Werner Koch + + * assuan-connect.c (assuan_get_pid): New. + + * assuan-buffer.c (_assuan_read_line): Deal with reads of more + than a line. + * assuan-defs.h: Add space in the context for this. + + + Copyright 2001, 2002, 2006, 2007, 2010 Free Software Foundation, Inc. + + This file is free software; as a special exception the author gives + unlimited permission to copy and/or distribute it, with or without + modifications, as long as this notice is preserved. + + This file is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY, to the extent permitted by law; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff --git a/tests/ChangeLog b/tests/ChangeLog deleted file mode 100644 index 8d402ad..0000000 --- a/tests/ChangeLog +++ /dev/null @@ -1,74 +0,0 @@ -2011-03-28 Werner Koch - - * ce-server.c: Include sys/select.h if needed. Fixes bug#1328. - -2010-10-11 Werner Koch - - * Makefile.am (w32cetools): Move ce-server to here. - -2010-03-17 Werner Koch - - * pipeconnect.c: New. Based on fdpassing.c - -2010-02-24 Werner Koch - - * ce-server.c: New. - - * ce-createpipe.c [W32CE]: New. - -2010-01-27 Werner Koch - - * common.h (SOCKET2HANDLE, HANDLE2SOCKET): New. - -2009-11-05 Marcus Brinkmann - - * fdpassing.c (main): Call assuan_pipe_connect instead - of assuan_pipe_connect_ext. - -2009-11-04 Werner Koch - - * fdpassing.c (register_commands): Add NULL arg to - assuan_register_command. - -2009-09-19 Marcus Brinkmann - - * fdpassing.c: Update to new API. - -2009-08-26 Marcus Brinkmann - - * Makefile.am (AM_CFLAGS, LDADD): Add gpg-error. - * fdpassing.c: Change error values to gpg-error ones. - -2008-11-03 Marcus Brinkmann - - * fdpassing.c (register_commands): Add missing initializer - to silence gcc -W warning. - -2006-10-10 Werner Koch - - * Makefile.am (LDADD): Add NETLIBS. - -2006-09-19 Werner Koch - - * fdpassing.c: Reverted Marcus changes. - (client): New arg FNAME to replace hardwired file name. - (main): Pass motd to client. - * Makefile.am (AM_CPPFLAGS): Removed. - (EXTRA_DIST): Add motd. - -2006-09-19 Marcus Brinkmann - - * fdpassing.c (MOTD): New macro. - * Makefile.am (AM_CPPFLAGS): New variable. - * motd: New file. - - - Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. - - This file is free software; as a special exception the author gives - unlimited permission to copy and/or distribute it, with or without - modifications, as long as this notice is preserved. - - This file is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY, to the extent permitted by law; without even the - implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. diff --git a/tests/ChangeLog-2011 b/tests/ChangeLog-2011 new file mode 100644 index 0000000..e2a3a63 --- /dev/null +++ b/tests/ChangeLog-2011 @@ -0,0 +1,81 @@ +2011-12-01 Werner Koch + + NB: ChangeLog files are no longer manually maintained. Starting + on December 1st, 2011 we put change information only in the GIT + commit log, and generate a top-level ChangeLog file from logs at + "make dist". See doc/HACKING for details. + +2011-03-28 Werner Koch + + * ce-server.c: Include sys/select.h if needed. Fixes bug#1328. + +2010-10-11 Werner Koch + + * Makefile.am (w32cetools): Move ce-server to here. + +2010-03-17 Werner Koch + + * pipeconnect.c: New. Based on fdpassing.c + +2010-02-24 Werner Koch + + * ce-server.c: New. + + * ce-createpipe.c [W32CE]: New. + +2010-01-27 Werner Koch + + * common.h (SOCKET2HANDLE, HANDLE2SOCKET): New. + +2009-11-05 Marcus Brinkmann + + * fdpassing.c (main): Call assuan_pipe_connect instead + of assuan_pipe_connect_ext. + +2009-11-04 Werner Koch + + * fdpassing.c (register_commands): Add NULL arg to + assuan_register_command. + +2009-09-19 Marcus Brinkmann + + * fdpassing.c: Update to new API. + +2009-08-26 Marcus Brinkmann + + * Makefile.am (AM_CFLAGS, LDADD): Add gpg-error. + * fdpassing.c: Change error values to gpg-error ones. + +2008-11-03 Marcus Brinkmann + + * fdpassing.c (register_commands): Add missing initializer + to silence gcc -W warning. + +2006-10-10 Werner Koch + + * Makefile.am (LDADD): Add NETLIBS. + +2006-09-19 Werner Koch + + * fdpassing.c: Reverted Marcus changes. + (client): New arg FNAME to replace hardwired file name. + (main): Pass motd to client. + * Makefile.am (AM_CPPFLAGS): Removed. + (EXTRA_DIST): Add motd. + +2006-09-19 Marcus Brinkmann + + * fdpassing.c (MOTD): New macro. + * Makefile.am (AM_CPPFLAGS): New variable. + * motd: New file. + + + Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. + + This file is free software; as a special exception the author gives + unlimited permission to copy and/or distribute it, with or without + modifications, as long as this notice is preserved. + + This file is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY, to the extent permitted by law; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -- cgit v1.2.3