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
|