summaryrefslogtreecommitdiff
blob: 3297ab7df9f20f3e793b302ad88eeda3bd078051 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
On hardened there are problems when loading modules with undefined symbols that
do not resolve, so add stubs and make sure the neon symbols are local for
libhttp.so.

Martin Schlemmer <azarah@nosferatu.za.org> (22 July 2006)

diff -urpN gnome-vfs-2.14.2/imported/neon/Makefile.am gnome-vfs-2.14.2.az/imported/neon/Makefile.am
--- gnome-vfs-2.14.2/imported/neon/Makefile.am	2006-01-08 18:53:09.000000000 +0200
+++ gnome-vfs-2.14.2.az/imported/neon/Makefile.am	2006-07-22 15:30:26.000000000 +0200
@@ -53,8 +53,9 @@ NEON_BASE_SOURCES = ne_request.c ne_sess
 	ne_uri.c ne_dates.c ne_alloc.c  	\
 	ne_md5.c ne_utils.c    			\
 	ne_auth.c 				\
-	ne_redirect.c		\
-	ne_compress.c
+	ne_redirect.c				\
+	ne_compress.c				\
+	ne_stubs.c
 
 NEON_DAV_SOURCES = \
 	ne_207.c ne_xml.c \
diff -urpN gnome-vfs-2.14.2/imported/neon/ne_stubs.c gnome-vfs-2.14.2.az/imported/neon/ne_stubs.c
--- gnome-vfs-2.14.2/imported/neon/ne_stubs.c	1970-01-01 02:00:00.000000000 +0200
+++ gnome-vfs-2.14.2.az/imported/neon/ne_stubs.c	2006-07-22 15:29:49.000000000 +0200
@@ -0,0 +1,28 @@
+#include "ne_ssl.h"
+#include "ne_request.h"
+#include "ne_xml.h"
+
+/*
+ * Stubs so that the functions are not marked as UND in the global symbol
+ * table.  Assuming that nothing that calls them are actually used in
+ * gnome-vfs, they are bare.
+ */
+
+void ne_ssl_context_trustcert(ne_ssl_context *ctx, const ne_ssl_certificate *cert)
+{
+  NE_DEBUG(NE_DBG_SSL, "SSL: stub ne_ssl_context_trustcert() in use\n");
+  return;
+}
+
+int ne_xml_parse_response(ne_request *req, ne_xml_parser *parser)
+{
+  NE_DEBUG(NE_DBG_XMLPARSE, "XML: stub ne_xml_parse_response() in use\n");
+  return 0;
+}
+
+int ne_xml_dispatch_request(ne_request *req, ne_xml_parser *parser)
+{
+  NE_DEBUG(NE_DBG_XML, "XML: stub ne_xml_dispatch_request() in use\n");
+  return 0;
+}
+
diff -urpN gnome-vfs-2.14.2/modules/libhttp.map gnome-vfs-2.14.2.az/modules/libhttp.map
--- gnome-vfs-2.14.2/modules/libhttp.map	1970-01-01 02:00:00.000000000 +0200
+++ gnome-vfs-2.14.2.az/modules/libhttp.map	2006-07-22 15:05:30.000000000 +0200
@@ -0,0 +1,6 @@
+{
+  local:
+    # Neon symbols should not be global
+    ne_*;
+};
+
diff -urpN gnome-vfs-2.14.2/modules/Makefile.am gnome-vfs-2.14.2.az/modules/Makefile.am
--- gnome-vfs-2.14.2/modules/Makefile.am	2005-12-11 01:50:19.000000000 +0200
+++ gnome-vfs-2.14.2.az/modules/Makefile.am	2006-07-22 15:05:30.000000000 +0200
@@ -44,7 +44,8 @@ EXTRA_DIST =					\
 	inotify-path.h				\
 	inotify-path.c				\
 	local_inotify.h				\
-	local_inotify_syscalls.h
+	local_inotify_syscalls.h		\
+	libhttp.map
 
 ###  Module setup
 if HAVE_CDDA
@@ -230,6 +231,10 @@ libhttp_la_SOURCES =			\
 	$(NULL)
 
 libhttp_la_LDFLAGS = $(module_flags)
+if USE_HTTP_NEON
+libhttp_la_LDFLAGS +=			\
+        -Wl,--version-script,$(srcdir)/libhttp.map
+endif
 libhttp_la_LIBADD  = $(HTTP_LIBS)
 
 libtar_la_SOURCES = tar-method.c tarpet.h