Improve the debug output a bit.
[gpgme.git] / src / priv-io.h
index 89c750d..2306175 100644 (file)
@@ -3,17 +3,17 @@
    Copyright (C) 2001, 2002, 2003, 2004, 2005 g10 Code GmbH
 
    This file is part of GPGME.
+
    GPGME is free software; you can redistribute it and/or modify it
    under the terms of the GNU Lesser General Public License as
    published by the Free Software Foundation; either version 2.1 of
    the License, or (at your option) any later version.
-   
+
    GPGME 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
    Lesser General Public License for more details.
-   
+
    You should have received a copy of the GNU Lesser General Public
    License along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 #define IO_H
 
 #ifdef HAVE_W32_SYSTEM
+# ifdef HAVE_W32CE_SYSTEM
+#  include "w32-ce.h"
+# endif
+# include <winsock2.h>
 # include <windows.h>
 #else
 # include <sys/socket.h>
 #endif
 
 /* For pid_t.  */
-#include <sys/types.h>
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
 
 
 /* A single file descriptor passed to spawn.  For child fds, dup_to
@@ -59,6 +65,7 @@ struct io_select_fd_s
 
 /* These function are either defined in posix-io.c or w32-io.c.  */
 void _gpgme_io_subsystem_init (void);
+int _gpgme_io_socket (int namespace, int style, int protocol);
 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);
@@ -69,11 +76,13 @@ int _gpgme_io_set_close_notify (int fd, _gpgme_close_notify_handler_t handler,
                                void *value);
 int _gpgme_io_set_nonblocking (int fd);
 
+/* Under Windows do not allocate a console.  */
+#define IOSPAWN_FLAG_DETACHED 1
 /* A flag to tell the spawn function to allow the child process to set
    the foreground window. */
-#define IOSPAWN_FLAG_ALLOW_SET_FG 1
+#define IOSPAWN_FLAG_ALLOW_SET_FG 2
 /* Don't close any child FDs.  */
-#define IOSPAWN_FLAG_NOCLOSE 2
+#define IOSPAWN_FLAG_NOCLOSE 4
 
 /* Spawn the executable PATH with ARGV as arguments.  After forking
    close all fds except for those in FD_LIST in the child, then