diff -Naur gssdp-0.4.2.orig/configure.ac gssdp-0.4.2/configure.ac
--- gssdp-0.4.2.orig/configure.ac	2009-04-09 10:42:46.000000000 -0400
+++ gssdp-0.4.2/configure.ac	2009-04-09 10:43:01.000000000 -0400
@@ -10,7 +10,7 @@
 AC_STDC_HEADERS
 AC_PROG_LIBTOOL
 
-PKG_CHECK_MODULES(LIBGSSDP, gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97)
+PKG_CHECK_MODULES(LIBGSSDP, gobject-2.0 >= 2.9.1 libsoup-2.4)
 
 LIBGLADE_REQUIRED=2.6.0
 
diff -Naur gssdp-0.4.2.orig/configure gssdp-0.4.2/configure
--- gssdp-0.4.2.orig/configure	2009-04-09 10:42:46.000000000 -0400
+++ gssdp-0.4.2/configure	2009-04-09 10:44:33.000000000 -0400
@@ -20420,12 +20420,12 @@
         pkg_cv_LIBGSSDP_CFLAGS="$LIBGSSDP_CFLAGS"
     else
         if test -n "$PKG_CONFIG" && \
-    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97\"") >&5
-  ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97") 2>&5
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gobject-2.0 >= 2.9.1 libsoup-2.4\"") >&5
+  ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= 2.9.1 libsoup-2.4") 2>&5
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; then
-  pkg_cv_LIBGSSDP_CFLAGS=`$PKG_CONFIG --cflags "gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97" 2>/dev/null`
+  pkg_cv_LIBGSSDP_CFLAGS=`$PKG_CONFIG --cflags "gobject-2.0 >= 2.9.1 libsoup-2.4" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -20438,12 +20438,12 @@
         pkg_cv_LIBGSSDP_LIBS="$LIBGSSDP_LIBS"
     else
         if test -n "$PKG_CONFIG" && \
-    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97\"") >&5
-  ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97") 2>&5
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gobject-2.0 >= 2.9.1 libsoup-2.4\"") >&5
+  ($PKG_CONFIG --exists --print-errors "gobject-2.0 >= 2.9.1 libsoup-2.4") 2>&5
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; then
-  pkg_cv_LIBGSSDP_LIBS=`$PKG_CONFIG --libs "gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97" 2>/dev/null`
+  pkg_cv_LIBGSSDP_LIBS=`$PKG_CONFIG --libs "gobject-2.0 >= 2.9.1 libsoup-2.4" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -20462,14 +20462,14 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        LIBGSSDP_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97"`
+	        LIBGSSDP_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gobject-2.0 >= 2.9.1 libsoup-2.4"`
         else
-	        LIBGSSDP_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97"`
+	        LIBGSSDP_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gobject-2.0 >= 2.9.1 libsoup-2.4"`
         fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$LIBGSSDP_PKG_ERRORS" >&5
 
-	{ { echo "$as_me:$LINENO: error: Package requirements (gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97) were not met:
+	{ { echo "$as_me:$LINENO: error: Package requirements (gobject-2.0 >= 2.9.1 libsoup-2.4) were not met:
 
 $LIBGSSDP_PKG_ERRORS
 
@@ -20480,7 +20480,7 @@
 and LIBGSSDP_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 " >&5
-echo "$as_me: error: Package requirements (gobject-2.0 >= 2.9.1 libsoup-2.2 >= 2.2.97) were not met:
+echo "$as_me: error: Package requirements (gobject-2.0 >= 2.9.1 libsoup-2.4) were not met:
 
 $LIBGSSDP_PKG_ERRORS
 
diff -Naur gssdp-0.4.2.orig/libgssdp/gssdp-resource-browser.c gssdp-0.4.2/libgssdp/gssdp-resource-browser.c
--- gssdp-0.4.2.orig/libgssdp/gssdp-resource-browser.c	2009-04-09 10:42:46.000000000 -0400
+++ gssdp-0.4.2/libgssdp/gssdp-resource-browser.c	2009-04-09 10:49:35.000000000 -0400
@@ -620,9 +620,15 @@
                 list = g_hash_table_lookup (headers, "Expires");
                 if (list) {
                         time_t exp_time, cur_time;
+                        SoupDate *exp_sd, *cur_sd;
 
-                        exp_time = soup_date_parse (list->data);
-                        cur_time = time (NULL);
+                        exp_sd    = soup_date_new_from_string (list->data);
+                        exp_time  = soup_date_to_time_t (exp_sd);
+                        cur_sd    = soup_date_new_from_now(0);
+                        cur_time  = soup_date_to_time_t (cur_sd);
+
+                        soup_date_free(exp_sd);
+                        soup_date_free(cur_sd);
 
                         if (exp_time > cur_time)
                                 timeout = exp_time - cur_time;
diff -Naur gssdp-0.4.2.orig/libgssdp/gssdp-resource-group.c gssdp-0.4.2/libgssdp/gssdp-resource-group.c
--- gssdp-0.4.2.orig/libgssdp/gssdp-resource-group.c	2009-04-09 10:42:46.000000000 -0400
+++ gssdp-0.4.2/libgssdp/gssdp-resource-group.c	2009-04-09 11:11:14.000000000 -0400
@@ -693,6 +693,7 @@
         GSSDPClient *client;
         char *al, *date, *message;
         guint max_age;
+        SoupDate *now_sd;
 
         response = user_data;
 
@@ -703,7 +704,9 @@
 
         al = construct_al (response->resource);
 
-        date = soup_date_generate (time (NULL));
+        now_sd  = soup_date_new_from_now (0);
+        date    = soup_date_to_string (now_sd, SOUP_DATE_HTTP);
+        soup_date_free (now_sd);
 
         message = g_strdup_printf (SSDP_DISCOVERY_RESPONSE,
                                    (char *) response->resource->locations->data,
--- gssdp-0.4.2.orig/gssdp-1.0.pc.in	2009-04-09 10:42:46.000000000 -0400
+++ gssdp-0.4.2/gssdp-1.0.pc.in	2009-04-09 11:14:54.000000000 -0400
@@ -9,4 +9,4 @@
 Libs: -L${libdir} -lgssdp-1.0
 Cflags: -I${includedir}/gssdp-1.0
 Requires: gobject-2.0
-Requires.Private: libsoup-2.2
+Requires.Private: libsoup-2.4
--- gssdp-0.4.2.orig/gssdp-1.0-uninstalled.pc.in	2009-04-09 10:42:46.000000000 -0400
+++ gssdp-0.4.2/gssdp-1.0-uninstalled.pc.in	2009-04-09 11:14:55.000000000 -0400
@@ -9,4 +9,4 @@
 Libs: ${libdir}/libgssdp-1.0.la
 Cflags: -I${includedir}
 Requires: gobject-2.0
-Requires.Private: libsoup-2.2
+Requires.Private: libsoup-2.4
