From d358da9481a125e7eefa80cde88a6bed0c1b7fc3 Mon Sep 17 00:00:00 2001 From: Fridrich Strba Date: Tue, 23 Mar 2010 18:54:37 +0100 Subject: [win32] Implement network status detection The implementation is done using System Event Notification Service by implementing ConnectionMade ConnectionMadeNoQOCInfo and ConnectionLost methods of ISensNetwork interface. Make the subscription to the network status notification receive the event only if the ownerof the subscription is logged on to the same computer as the publisher. This makes this module work on Windows Vista and Windows 7 with normal user account. Don't try to build Windows SENS when not building for Windows. Extract the relevant COM structs and typedefs from mingw-w64 headers to allow to build the module with mingw.org toolchain and fix build breakages with Microsoft compilers. --- configure.ac | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index 3f3a2bbef7..882dd1d3a8 100644 --- a/configure.ac +++ b/configure.ac @@ -1142,6 +1142,42 @@ fi AM_CONDITIONAL([ENABLE_NETWORK_MANAGER], [test "$enable_nm" = yes]) +dnl ****************************** +dnl Check for Windows SENS API +dnl ****************************** +AC_ARG_ENABLE([sens], + [AS_HELP_STRING([--enable-sens], + [enable Windows SENS support (default=yes)])], + [enable_sens=$enableval],[enable_sens=yes]) +if test "x$os_win32" = xyes; then + if test "x$enable_sens" = xyes; then + AC_CHECK_HEADER([rpc.h],[ enable_sens="yes" ],[ enable_sens="no" ]) + fi +else + enable_sens="no" +fi +AC_MSG_CHECKING([if Windows SENS support is enabled]) +AC_MSG_RESULT([$enable_sens]) +if test "$enable_sens" = yes; then + SENS_LIBS="-lole32 -loleaut32 -luuid -lrpcrt4" + AC_CHECK_HEADER([eventsys.h], + [AC_DEFINE([HAVE_EVENTSYS_H], 1, [Have ])],, + [[ #if HAVE_EVENTSYS_H + #include + #endif + ]]) + AC_CHECK_HEADER([sensevts.h], + [AC_DEFINE([HAVE_SENSEVTS_H], 1, [Have ])],, + [[ #if HAVE_SENSEVTS_H + #include + #endif + ]]) + AC_SUBST(HAVE_SENS) + AC_SUBST(SENS_LIBS) +fi + +AM_CONDITIONAL([ENABLE_WINDOWS_SENS], [test "$enable_sens" = yes]) + dnl ****************************** dnl Camel Flags dnl ****************************** @@ -1693,6 +1729,7 @@ modules/network-manager/Makefile modules/plugin-lib/Makefile modules/plugin-mono/Makefile modules/plugin-python/Makefile +modules/windows-sens/Makefile plugins/Makefile plugins/addressbook-file/Makefile plugins/attachment-reminder/Makefile @@ -1760,6 +1797,7 @@ fi echo " LDAP support: $msg_ldap NetworkManager: $enable_nm + Windows SENS: $enable_sens Pilot conduits: $msg_pilot Libnotify: $HAVE_LIBNOTIFY Kerberos 5: $msg_krb5 -- cgit