* dbus/dbus-server-win.c,dbus/dbus-server-win.h: new file with empty function _dbus_s...
authorRalf Habacker <ralf.habacker@freenet.de>
Thu, 24 May 2007 19:15:26 +0000 (19:15 +0000)
committerRalf Habacker <ralf.habacker@freenet.de>
Thu, 24 May 2007 19:15:26 +0000 (19:15 +0000)
* dbus/dbus-server.c (listen_funcs): uses _dbus_server_listen_platform_specific() on win platform too.

ChangeLog
cmake/dbus/CMakeLists.txt
dbus/dbus-server-win.c [new file with mode: 0644]
dbus/dbus-server-win.h [new file with mode: 0644]
dbus/dbus-server.c

index 3979984..9b105e9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2007-05-25  Ralf Habacker  <ralf.habacker@freenet.de>
 
+       * dbus/dbus-server-win.c,dbus/dbus-server-win.h: new file 
+       with empty function _dbus_server_listen_platform_specific(). 
+
+       * dbus/dbus-server.c (listen_funcs): uses 
+       _dbus_server_listen_platform_specific on any platform.
+
+2007-05-25  Ralf Habacker  <ralf.habacker@freenet.de>
+
        * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not getting 
        user info from a domain controller isn't an error, the computer 
        may run in a non domain context. 
index 68ec4f0..1e59133 100644 (file)
@@ -68,6 +68,11 @@ if(UNIX)
            ${DBUS_DIR}/dbus-transport-unix.c
            ${DBUS_DIR}/dbus-server-unix.c
        )
+else(UNIX)
+    set (DBUS_LIB_SOURCES ${DBUS_LIB_SOURCES} 
+#          ${DBUS_DIR}/dbus-transport-win.c
+           ${DBUS_DIR}/dbus-server-win.c
+       )
 endif(UNIX)
 
 set (DBUS_LIB_HEADERS
diff --git a/dbus/dbus-server-win.c b/dbus/dbus-server-win.c
new file mode 100644 (file)
index 0000000..95240b9
--- /dev/null
@@ -0,0 +1,64 @@
+/* -*- mode: C; c-file-style: "gnu" -*- */
+/* dbus-server-win.c Server implementation for WIN network protocols.
+ *
+ * Copyright (C) 2002, 2003, 2004  Red Hat Inc.
+ * Copyright (C) 2007 Ralf Habacker <ralf.habacker@freenet.de>
+ *
+ * Licensed under the Academic Free License version 2.1
+ * 
+ * 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 2 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ */
+
+#include "dbus-internals.h"
+#include "dbus-server-win.h"
+#include "dbus-server-socket.h"
+#include "dbus-connection-internal.h"
+#include "dbus-sysdeps-win.h"
+
+/**
+ * @defgroup DBusServerWin DBusServer implementations for Windows
+ * @ingroup  DBusInternals
+ * @brief Implementation details of DBusServer on Windows 
+ *
+ * @{
+ */
+
+/**
+ * Tries to interpret the address entry in a platform-specific
+ * way, creating a platform-specific server type if appropriate.
+ * Sets error if the result is not OK.
+ * 
+ * @param entry an address entry
+ * @param server_p location to store a new DBusServer, or #NULL on failure.
+ * @param error location to store rationale for failure on bad address
+ * @returns the outcome
+ * 
+ */
+DBusServerListenResult
+_dbus_server_listen_platform_specific (DBusAddressEntry *entry,
+                                       DBusServer      **server_p,
+                                       DBusError        *error)
+{
+  /* don't handle any method yet, return NULL with the error unset, 
+   ** for a sample implementation see dbus-server-unix.c 
+   */
+  *server_p  = NULL;
+  _DBUS_ASSERT_ERROR_IS_CLEAR(error);
+  return DBUS_SERVER_LISTEN_NOT_HANDLED;
+}
+
+/** @} */
+
diff --git a/dbus/dbus-server-win.h b/dbus/dbus-server-win.h
new file mode 100644 (file)
index 0000000..8ab16c5
--- /dev/null
@@ -0,0 +1,36 @@
+/* -*- mode: C; c-file-style: "gnu" -*- */
+/* dbus-server-win.h Server implementation for windows network protocols.
+ *
+ * Copyright (C) 2002  Red Hat Inc.
+ * Copyright (C) 2007  Ralf Habacker <ralf.habacker@freenet.de>
+ *
+ * Licensed under the Academic Free License version 2.1
+ * 
+ * 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 2 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ */
+#ifndef DBUS_SERVER_WIN_H
+#define DBUS_SERVER_WIN_H
+
+#include <dbus/dbus-internals.h>
+#include <dbus/dbus-server-protected.h>
+
+DBUS_BEGIN_DECLS
+
+/* add definitions here */
+
+DBUS_END_DECLS
+
+#endif /* DBUS_SERVER_WIN_H */
index ae2f767..9fc5cac 100644 (file)
@@ -510,9 +510,7 @@ static const struct {
                                    DBusError        *error);
 } listen_funcs[] = {
   { _dbus_server_listen_socket }
-#ifdef DBUS_UNIX
   , { _dbus_server_listen_platform_specific }
-#endif
 #ifdef DBUS_BUILD_TESTS
   , { _dbus_server_listen_debug_pipe }
 #endif