[svn] gpgme - r1388 - in trunk: . assuan src tests tests/gpg tests/gpgsm

svn author marcus cvs at cvs.gnupg.org
Mon Jun 22 16:50:17 CEST 2009


Author: marcus
Date: 2009-06-22 16:50:17 +0200 (Mon, 22 Jun 2009)
New Revision: 1388

Modified:
   trunk/ChangeLog
   trunk/assuan/assuan.h
   trunk/configure.ac
   trunk/src/ChangeLog
   trunk/src/debug.c
   trunk/src/debug.h
   trunk/src/gpgme.h.in
   trunk/src/keylist.c
   trunk/src/priv-io.h
   trunk/src/sign.c
   trunk/tests/ChangeLog
   trunk/tests/gpg/t-support.h
   trunk/tests/gpgsm/t-support.h
Log:
2009-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* configure.ac: Add AC_TYPE_UINTPTR_T.

	* assuan/assuan.h [_ASSUAN_IN_GPGME_BUILD_ASSUAN]: Declare
	_gpgme_io_connect.

src/
2009-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* debug.h: Everywhere, use %p instead of 0x%x to print pointer.
	[HAVE_STDINT_H]: Include <stdint.h>.
	(_TRACE, TRACE, TRACE0, TRACE1, TRACE2, TRACE3, TRACE6): Cast tag
	to (uintptr_t) before casting it to (void*) to silence GCC
	warning.

	* gpgme.h.in (_GPGME_DEPRECATED_OUTSIDE_GPGME): New macro.
	* sign.c (_GPGME_IN_GPGME): Define it.
	* keylist.c (_GPGME_IN_GPGME): Define it.

	* debug.c (_gpgme_debug_begin, _gpgme_debug_add): Handle error in
	vasprintf and asprintf.

	* priv-io.h: Include <sys/socket.h>.  Declare _gpgme_io_connect.

tests/
2009-06-22  Marcus Brinkmann  <marcus at g10code.de>

	* gpg/t-support.h (passphrase_cb): Implement write() according to
	the book to silence compiler warning.
	* gpgsm/t-support.h (passphrase_cb): Likewise.


Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/ChangeLog	2009-06-22 14:50:17 UTC (rev 1388)
@@ -1,3 +1,10 @@
+2009-06-22  Marcus Brinkmann  <marcus at g10code.de>
+
+	* configure.ac: Add AC_TYPE_UINTPTR_T.
+
+	* assuan/assuan.h [_ASSUAN_IN_GPGME_BUILD_ASSUAN]: Declare
+	_gpgme_io_connect.
+
 2009-06-18  Marcus Brinkmann  <marcus at g10code.de>
 
 	Released GPGME 1.2.0.

Modified: trunk/src/ChangeLog
===================================================================
--- trunk/src/ChangeLog	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/src/ChangeLog	2009-06-22 14:50:17 UTC (rev 1388)
@@ -1,3 +1,20 @@
+2009-06-22  Marcus Brinkmann  <marcus at g10code.de>
+
+	* debug.h: Everywhere, use %p instead of 0x%x to print pointer.
+	[HAVE_STDINT_H]: Include <stdint.h>.
+	(_TRACE, TRACE, TRACE0, TRACE1, TRACE2, TRACE3, TRACE6): Cast tag
+	to (uintptr_t) before casting it to (void*) to silence GCC
+	warning.
+
+	* gpgme.h.in (_GPGME_DEPRECATED_OUTSIDE_GPGME): New macro.
+	* sign.c (_GPGME_IN_GPGME): Define it.
+	* keylist.c (_GPGME_IN_GPGME): Define it.
+
+	* debug.c (_gpgme_debug_begin, _gpgme_debug_add): Handle error in
+	vasprintf and asprintf.
+
+	* priv-io.h: Include <sys/socket.h>.  Declare _gpgme_io_connect.
+
 2009-06-18  Marcus Brinkmann  <marcus at g10code.de>
 
 	* gpgme.h.in (GPGME_CONF_PATHNAME): Revert last change, it's

Modified: trunk/tests/ChangeLog
===================================================================
--- trunk/tests/ChangeLog	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/tests/ChangeLog	2009-06-22 14:50:17 UTC (rev 1388)
@@ -1,3 +1,9 @@
+2009-06-22  Marcus Brinkmann  <marcus at g10code.de>
+
+	* gpg/t-support.h (passphrase_cb): Implement write() according to
+	the book to silence compiler warning.
+	* gpgsm/t-support.h (passphrase_cb): Likewise.
+
 2009-06-16  Werner Koch  <wk at g10code.com>
 
 	* gpg/pgp-import.c: New.

Modified: trunk/assuan/assuan.h
===================================================================
--- trunk/assuan/assuan.h	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/assuan/assuan.h	2009-06-22 14:50:17 UTC (rev 1388)
@@ -75,6 +75,7 @@
 int _gpgme_io_close (int fd);
 int _gpgme_io_read (int fd, void *buffer, size_t count);
 int _gpgme_io_write (int fd, const void *buffer, size_t count);
+int _gpgme_io_connect (int fd, struct sockaddr *addr, int addrlen);
 int _gpgme_io_sendmsg (int sock, const struct msghdr *msg, int flags);
 int _gpgme_io_recvmsg (int sock, struct msghdr *msg, int flags);
 int _gpgme_io_socket (int domain, int type, int proto);

Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/configure.ac	2009-06-22 14:50:17 UTC (rev 1388)
@@ -197,6 +197,7 @@
 AC_CHECK_SIZEOF(unsigned int)
 AC_SYS_LARGEFILE
 AC_TYPE_OFF_T
+AC_TYPE_UINTPTR_T
 
 # A simple compile time check in gpgme.h for GNU/Linux systems that
 # prevents a file offset bits mismatch between gpgme and the application.

Modified: trunk/src/debug.c
===================================================================
--- trunk/src/debug.c	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/src/debug.c	2009-06-22 14:50:17 UTC (rev 1388)
@@ -1,6 +1,6 @@
 /* debug.c - helpful output in desperate situations
    Copyright (C) 2000 Werner Koch (dd9jn)
-   Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007 g10 Code GmbH
+   Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2009 g10 Code GmbH
  
    This file is part of GPGME.
 
@@ -197,6 +197,7 @@
 _gpgme_debug_begin (void **line, int level, const char *format, ...)
 {
   va_list arg_ptr;
+  int res;
 
   debug_init ();
   if (debug_level < level)
@@ -207,8 +208,10 @@
     }
 
   va_start (arg_ptr, format);
-  vasprintf ((char **) line, format, arg_ptr);
+  res = vasprintf ((char **) line, format, arg_ptr);
   va_end (arg_ptr);
+  if (res < 0)
+    *line = NULL;
 }
 
 
@@ -219,17 +222,26 @@
   va_list arg_ptr;
   char *toadd;
   char *result;
+  int res;
 
   if (!*line)
     return;
 
   va_start (arg_ptr, format);
-  vasprintf (&toadd, format, arg_ptr);
+  res = vasprintf (&toadd, format, arg_ptr);
   va_end (arg_ptr);
-  asprintf (&result, "%s%s", *(char **) line, toadd);
+  if (res < 0)
+    {
+      free (*line);
+      *line = NULL;
+    }
+  res = asprintf (&result, "%s%s", *(char **) line, toadd);
+  free (toadd);
   free (*line);
-  free (toadd);
-  *line = result;
+  if (res < 0)
+    *line = NULL;
+  else
+    *line = result;
 }
 
 

Modified: trunk/src/debug.h
===================================================================
--- trunk/src/debug.h	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/src/debug.h	2009-06-22 14:50:17 UTC (rev 1388)
@@ -22,6 +22,9 @@
 #define DEBUG_H
 
 #include <string.h>
+#ifdef HAVE_STDINT_H
+#include <stdint.h>
+#endif
 
 /* Indirect stringification, requires __STDC__ to work.  */
 #define STRINGIFY(v) #v
@@ -81,133 +84,134 @@
   int _gpgme_trace_level = lvl;					\
   const char *const _gpgme_trace_func = name;			\
   const char *const _gpgme_trace_tagname = STRINGIFY (tag);	\
-  void *_gpgme_trace_tag = (void *) tag
+  void *_gpgme_trace_tag = (void *) (uintptr_t) tag
 
 #define TRACE_BEG(lvl, name, tag)			   \
   _TRACE (lvl, name, tag);				   \
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): enter\n", \
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): enter\n", \
 		_gpgme_trace_func, _gpgme_trace_tagname,   \
 		_gpgme_trace_tag), 0
 #define TRACE_BEG0(lvl, name, tag, fmt)					\
   _TRACE (lvl, name, tag);						\
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): enter: " fmt "\n",	\
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): enter: " fmt "\n",	\
 		_gpgme_trace_func, _gpgme_trace_tagname,		\
 		_gpgme_trace_tag), 0
 #define TRACE_BEG1(lvl, name, tag, fmt, arg1)				\
   _TRACE (lvl, name, tag);						\
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): enter: " fmt "\n",	\
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): enter: " fmt "\n",	\
 		_gpgme_trace_func, _gpgme_trace_tagname,		\
 		_gpgme_trace_tag, arg1), 0
 #define TRACE_BEG2(lvl, name, tag, fmt, arg1, arg2)		    \
   _TRACE (lvl, name, tag);					    \
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): enter: " fmt "\n", \
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): enter: " fmt "\n", \
 		_gpgme_trace_func, _gpgme_trace_tagname,	    \
 		_gpgme_trace_tag, arg1, arg2), 0
 #define TRACE_BEG3(lvl, name, tag, fmt, arg1, arg2, arg3)	    \
   _TRACE (lvl, name, tag);					    \
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): enter: " fmt "\n", \
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): enter: " fmt "\n", \
 		_gpgme_trace_func, _gpgme_trace_tagname,	    \
 		_gpgme_trace_tag, arg1, arg2, arg3), 0
 #define TRACE_BEG4(lvl, name, tag, fmt, arg1, arg2, arg3, arg4)	    \
   _TRACE (lvl, name, tag);					    \
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): enter: " fmt "\n", \
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): enter: " fmt "\n", \
 		_gpgme_trace_func, _gpgme_trace_tagname,	    \
 		_gpgme_trace_tag, arg1, arg2, arg3, arg4), 0
 
 #define TRACE(lvl, name, tag)						\
-  _gpgme_debug (lvl, "%s (%s=0x%x): call\n",				\
-		name, STRINGIFY (tag), (void *) tag), 0
+  _gpgme_debug (lvl, "%s (%s=%p): call\n",				\
+		name, STRINGIFY (tag), (void *) (uintptr_t) tag), 0
 #define TRACE0(lvl, name, tag, fmt)					\
-  _gpgme_debug (lvl, "%s (%s=0x%x): call: " fmt "\n",			\
-		name, STRINGIFY (tag), (void *) tag), 0
+  _gpgme_debug (lvl, "%s (%s=%p): call: " fmt "\n",			\
+		name, STRINGIFY (tag), (void *) (uintptr_t) tag), 0
 #define TRACE1(lvl, name, tag, fmt, arg1)			       \
-  _gpgme_debug (lvl, "%s (%s=0x%x): call: " fmt "\n",		       \
-		name, STRINGIFY (tag), (void *) tag, arg1), 0
+  _gpgme_debug (lvl, "%s (%s=%p): call: " fmt "\n",		       \
+		name, STRINGIFY (tag), (void *) (uintptr_t) tag, arg1), 0
 #define TRACE2(lvl, name, tag, fmt, arg1, arg2)			       \
-  _gpgme_debug (lvl, "%s (%s=0x%x): call: " fmt "\n",		       \
-		name, STRINGIFY (tag), (void *) tag, arg1, arg2), 0
+  _gpgme_debug (lvl, "%s (%s=%p): call: " fmt "\n",		       \
+		name, STRINGIFY (tag), (void *) (uintptr_t) tag, arg1, \
+		arg2), 0
 #define TRACE3(lvl, name, tag, fmt, arg1, arg2, arg3)		       \
-  _gpgme_debug (lvl, "%s (%s=0x%x): call: " fmt "\n",		       \
-		name, STRINGIFY (tag), (void *) tag, arg1, arg2,       \
-		arg3), 0
+  _gpgme_debug (lvl, "%s (%s=%p): call: " fmt "\n",		       \
+		name, STRINGIFY (tag), (void *) (uintptr_t) tag, arg1, \
+		arg2, arg3), 0
 #define TRACE6(lvl, name, tag, fmt, arg1, arg2, arg3, arg4, arg5, arg6)	\
-  _gpgme_debug (lvl, "%s (%s=0x%x): call: " fmt "\n",			\
-		name, STRINGIFY (tag), (void *) tag, arg1, arg2, arg3,	\
-		arg4, arg5, arg6), 0
+  _gpgme_debug (lvl, "%s (%s=%p): call: " fmt "\n",			\
+		name, STRINGIFY (tag), (void *) (uintptr_t) tag, arg1,  \
+		arg2, arg3, arg4, arg5, arg6), 0
 
 #define TRACE_ERR(err)							\
   err == 0 ? (TRACE_SUC ()) :						\
-    (_gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): error: %s <%s>\n",	\
+    (_gpgme_debug (_gpgme_trace_level, "%s (%s=%p): error: %s <%s>\n",	\
 		   _gpgme_trace_func, _gpgme_trace_tagname,		\
 		   _gpgme_trace_tag, gpgme_strerror (err),		\
 		   gpgme_strsource (err)), (err))
 /* The cast to void suppresses GCC warnings.  */
 #define TRACE_SYSRES(res)						\
   res >= 0 ? ((void) (TRACE_SUC1 ("result=%i", res)), (res)) :		\
-    (_gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): error: %s\n",	\
+    (_gpgme_debug (_gpgme_trace_level, "%s (%s=%p): error: %s\n",	\
 		   _gpgme_trace_func, _gpgme_trace_tagname,		\
 		   _gpgme_trace_tag, strerror (errno)), (res))
 #define TRACE_SYSERR(res)						\
   res == 0 ? ((void) (TRACE_SUC1 ("result=%i", res)), (res)) :		\
-    (_gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): error: %s\n",	\
+    (_gpgme_debug (_gpgme_trace_level, "%s (%s=%p): error: %s\n",	\
 		   _gpgme_trace_func, _gpgme_trace_tagname,		\
 		   _gpgme_trace_tag, strerror (res)), (res))
 
 #define TRACE_SUC()						 \
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): leave\n",       \
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): leave\n",       \
 		_gpgme_trace_func, _gpgme_trace_tagname,	 \
 		_gpgme_trace_tag), 0
 #define TRACE_SUC0(fmt)							\
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): leave: " fmt "\n",	\
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): leave: " fmt "\n",	\
 		_gpgme_trace_func, _gpgme_trace_tagname,		\
 		_gpgme_trace_tag), 0
 #define TRACE_SUC1(fmt, arg1)						\
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): leave: " fmt "\n",	\
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): leave: " fmt "\n",	\
 		_gpgme_trace_func, _gpgme_trace_tagname,		\
 		_gpgme_trace_tag, arg1), 0
 #define TRACE_SUC2(fmt, arg1, arg2)					\
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): leave: " fmt "\n",	\
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): leave: " fmt "\n",	\
 		_gpgme_trace_func, _gpgme_trace_tagname,		\
 		_gpgme_trace_tag, arg1, arg2), 0
 #define TRACE_SUC5(fmt, arg1, arg2, arg3, arg4, arg5)			\
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): leave: " fmt "\n",	\
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): leave: " fmt "\n",	\
 		_gpgme_trace_func, _gpgme_trace_tagname,		\
 		_gpgme_trace_tag, arg1, arg2, arg3, arg4, arg5), 0
 
 #define TRACE_LOG(fmt)							\
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): check: " fmt "\n",	\
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): check: " fmt "\n",	\
 		_gpgme_trace_func, _gpgme_trace_tagname,		\
 		_gpgme_trace_tag), 0
 #define TRACE_LOG1(fmt, arg1)						\
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): check: " fmt "\n",	\
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): check: " fmt "\n",	\
 		_gpgme_trace_func, _gpgme_trace_tagname,		\
 		_gpgme_trace_tag, arg1), 0
 #define TRACE_LOG2(fmt, arg1, arg2)				    \
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): check: " fmt "\n", \
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): check: " fmt "\n", \
 		_gpgme_trace_func, _gpgme_trace_tagname,	    \
 		_gpgme_trace_tag, arg1, arg2), 0
 #define TRACE_LOG3(fmt, arg1, arg2, arg3)			    \
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): check: " fmt "\n", \
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): check: " fmt "\n", \
 		_gpgme_trace_func, _gpgme_trace_tagname,	    \
 		_gpgme_trace_tag, arg1, arg2, arg3), 0
 #define TRACE_LOG4(fmt, arg1, arg2, arg3, arg4)			    \
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): check: " fmt "\n", \
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): check: " fmt "\n", \
 		_gpgme_trace_func, _gpgme_trace_tagname,	    \
 		_gpgme_trace_tag, arg1, arg2, arg3, arg4), 0
 #define TRACE_LOG6(fmt, arg1, arg2, arg3, arg4, arg5, arg6)	    \
-  _gpgme_debug (_gpgme_trace_level, "%s (%s=0x%x): check: " fmt "\n", \
+  _gpgme_debug (_gpgme_trace_level, "%s (%s=%p): check: " fmt "\n", \
 		_gpgme_trace_func, _gpgme_trace_tagname,	    \
 		_gpgme_trace_tag, arg1, arg2, arg3, arg4, arg5,	    \
 		arg6), 0
 
 #define TRACE_LOGBUF(buf, len)						\
-  _gpgme_debug_buffer (_gpgme_trace_level, "%s (%s=0x%x): check: %s",	\
+  _gpgme_debug_buffer (_gpgme_trace_level, "%s (%s=%p): check: %s",	\
 		       _gpgme_trace_func, _gpgme_trace_tagname,		\
 		       _gpgme_trace_tag, buf, len)
 
 #define TRACE_SEQ(hlp,fmt)						\
   _gpgme_debug_begin (&(hlp), _gpgme_trace_level,			\
-		      "%s (%s=0x%x): check: " fmt,			\
+		      "%s (%s=%p): check: " fmt,			\
 		      _gpgme_trace_func, _gpgme_trace_tagname,		\
 		      _gpgme_trace_tag)
 #define TRACE_ADD0(hlp,fmt) \

Modified: trunk/src/gpgme.h.in
===================================================================
--- trunk/src/gpgme.h.in	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/src/gpgme.h.in	2009-06-22 14:50:17 UTC (rev 1388)
@@ -66,6 +66,14 @@
 #define _GPGME_DEPRECATED
 #endif
 
+/* The macro _GPGME_DEPRECATED_OUTSIDE_GPGME suppresses warnings for
+   fields we must access in GPGME for ABI compatibility.  */
+#ifdef _GPGME_IN_GPGME
+#define _GPGME_DEPRECATED_OUTSIDE_GPGME
+#else
+#define _GPGME_DEPRECATED_OUTSIDE_GPGME _GPGME_DEPRECATED
+#endif
+
 
 /* The version of this header should match the one of the library.  Do
    not use this symbol in your application, use gpgme_check_version
@@ -615,7 +623,7 @@
   unsigned int _obsolete_class _GPGME_DEPRECATED;
 #else
   /* Must be set to SIG_CLASS below.  */
-  unsigned int class _GPGME_DEPRECATED;
+  unsigned int class _GPGME_DEPRECATED_OUTSIDE_GPGME;
 #endif
 
   /* The user ID string.  */
@@ -1294,7 +1302,7 @@
   unsigned int _obsolete_class_2;
 #else
   /* Must be set to SIG_CLASS below.  */
-  unsigned int class _GPGME_DEPRECATED;
+  unsigned int class _GPGME_DEPRECATED_OUTSIDE_GPGME;
 #endif
 
   /* Crypto backend specific signature class.  */

Modified: trunk/src/keylist.c
===================================================================
--- trunk/src/keylist.c	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/src/keylist.c	2009-06-22 14:50:17 UTC (rev 1388)
@@ -32,6 +32,8 @@
 #include <ctype.h>
 #include <errno.h>
 
+/* Suppress warning for accessing deprecated member "class".  */
+#define _GPGME_IN_GPGME
 #include "gpgme.h"
 #include "util.h"
 #include "context.h"

Modified: trunk/src/priv-io.h
===================================================================
--- trunk/src/priv-io.h	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/src/priv-io.h	2009-06-22 14:50:17 UTC (rev 1388)
@@ -22,6 +22,7 @@
 #ifndef IO_H
 #define IO_H
 
+#include <sys/socket.h>
 
 /* A single file descriptor passed to spawn.  For child fds, dup_to
    specifies the fd it should become in the child, but only 0, 1 and 2
@@ -50,6 +51,7 @@
 
 /* These function are either defined in posix-io.c or w32-io.c.  */
 void _gpgme_io_subsystem_init (void);
+int _gpgme_io_connect (int fd, struct sockaddr *addr, int addrlen);
 int _gpgme_io_read (int fd, void *buffer, size_t count);
 int _gpgme_io_write (int fd, const void *buffer, size_t count);
 int _gpgme_io_pipe (int filedes[2], int inherit_idx);

Modified: trunk/src/sign.c
===================================================================
--- trunk/src/sign.c	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/src/sign.c	2009-06-22 14:50:17 UTC (rev 1388)
@@ -26,6 +26,8 @@
 #include <string.h>
 #include <errno.h>
 
+/* Suppress warning for accessing deprecated member "class".  */
+#define _GPGME_IN_GPGME 1
 #include "gpgme.h"
 #include "context.h"
 #include "ops.h"

Modified: trunk/tests/gpg/t-support.h
===================================================================
--- trunk/tests/gpg/t-support.h	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/tests/gpg/t-support.h	2009-06-22 14:50:17 UTC (rev 1388)
@@ -80,7 +80,20 @@
   DWORD written;
   WriteFile ((HANDLE) fd, "abc\n", 4, &written, 0);
 #else
-  write (fd, "abc\n", 4);
+  int res;
+  char *pass = "abc\n";
+  int passlen = strlen (pass);
+  int off = 0;
+
+  do
+    {
+      res = write (fd, &pass[off], passlen - off);
+      if (res > 0)
+	off += res;
+    }
+  while (res > 0 && off != passlen);
+
+  return off == passlen ? 0 : gpgme_error_from_errno (errno);
 #endif
 
   return 0;

Modified: trunk/tests/gpgsm/t-support.h
===================================================================
--- trunk/tests/gpgsm/t-support.h	2009-06-19 02:04:24 UTC (rev 1387)
+++ trunk/tests/gpgsm/t-support.h	2009-06-22 14:50:17 UTC (rev 1388)
@@ -62,8 +62,20 @@
 passphrase_cb (void *opaque, const char *uid_hint, const char *passphrase_info,
 	       int last_was_bad, int fd)
 {
-  write (fd, "abc\n", 4);
-  return 0;
+  int res;
+  char *pass = "abc\n";
+  int passlen = strlen (pass);
+  int off = 0;
+
+  do
+    {
+      res = write (fd, &pass[off], passlen - off);
+      if (res > 0)
+	off += res;
+    }
+  while (res > 0 && off != passlen);
+
+  return off == passlen ? 0 : gpgme_error_from_errno (errno);
 }
 
 




More information about the Gnupg-commits mailing list