diff options
Diffstat (limited to 'meta/packages/gnutls')
-rw-r--r-- | meta/packages/gnutls/gnutls-1.0.25/export-symbols.patch | 11 | ||||
-rw-r--r-- | meta/packages/gnutls/gnutls-1.0.25/gnutls-openssl.patch | 126 | ||||
-rw-r--r-- | meta/packages/gnutls/gnutls_1.0.25.bb | 33 |
3 files changed, 0 insertions, 170 deletions
diff --git a/meta/packages/gnutls/gnutls-1.0.25/export-symbols.patch b/meta/packages/gnutls/gnutls-1.0.25/export-symbols.patch deleted file mode 100644 index 22a1373944..0000000000 --- a/meta/packages/gnutls/gnutls-1.0.25/export-symbols.patch +++ /dev/null | |||
@@ -1,11 +0,0 @@ | |||
1 | --- gnutls-1.0.23/lib/Makefile.am.orig 2005-06-04 13:46:26.000000000 +0200 | ||
2 | +++ gnutls-1.0.23/lib/Makefile.am 2005-06-04 13:48:38.000000000 +0200 | ||
3 | @@ -9,7 +9,7 @@ | ||
4 | pkgconfig_DATA = gnutls.pc | ||
5 | DISTCLEANFILES = $(pkgconfig_DATA) | ||
6 | |||
7 | -LIBGNUTLS_EXPORTS = -export-symbols-regex '^(_gnutls|gnutls|_E_).*' | ||
8 | +LIBGNUTLS_EXPORTS = -export-symbols-regex '^(asn1_|_gnutls|gnutls|_E_).*' | ||
9 | |||
10 | DIST_SUBDIRS = minitasn1 x509 | ||
11 | if ENABLE_MINITASN1 | ||
diff --git a/meta/packages/gnutls/gnutls-1.0.25/gnutls-openssl.patch b/meta/packages/gnutls/gnutls-1.0.25/gnutls-openssl.patch deleted file mode 100644 index 3ddd8b3a18..0000000000 --- a/meta/packages/gnutls/gnutls-1.0.25/gnutls-openssl.patch +++ /dev/null | |||
@@ -1,126 +0,0 @@ | |||
1 | --- clean/gnutls-1.0.23/libextra/gnutls_openssl.c 2004-08-04 22:36:03.000000000 +0100 | ||
2 | +++ gnutls-1.0.23/libextra/gnutls_openssl.c 2005-01-02 19:50:49.000000000 +0000 | ||
3 | @@ -31,7 +31,6 @@ | ||
4 | |||
5 | static int last_error = 0; | ||
6 | |||
7 | - | ||
8 | /* Library initialisation functions */ | ||
9 | |||
10 | int SSL_library_init(void) | ||
11 | @@ -219,12 +218,17 @@ | ||
12 | |||
13 | ssl->rfd = (gnutls_transport_ptr)-1; | ||
14 | ssl->wfd = (gnutls_transport_ptr)-1; | ||
15 | + | ||
16 | + ssl->ssl_peek_buffer = NULL; | ||
17 | + ssl->ssl_peek_buffer_size = ssl->ssl_peek_avail = 0; | ||
18 | |||
19 | return ssl; | ||
20 | } | ||
21 | |||
22 | void SSL_free(SSL *ssl) | ||
23 | { | ||
24 | + if (ssl->ssl_peek_buffer) | ||
25 | + free(ssl->ssl_peek_buffer); | ||
26 | gnutls_certificate_free_credentials(ssl->gnutls_cred); | ||
27 | gnutls_deinit(ssl->gnutls_state); | ||
28 | free(ssl); | ||
29 | @@ -245,6 +249,7 @@ | ||
30 | int SSL_set_fd(SSL *ssl, int fd) | ||
31 | { | ||
32 | gnutls_transport_set_ptr (ssl->gnutls_state, (gnutls_transport_ptr)fd); | ||
33 | + ssl->rfd = ssl->wfd = fd; | ||
34 | return 1; | ||
35 | } | ||
36 | |||
37 | @@ -268,6 +273,16 @@ | ||
38 | return 1; | ||
39 | } | ||
40 | |||
41 | +int SSL_get_rfd(SSL *ssl) | ||
42 | +{ | ||
43 | + return ssl->rfd; | ||
44 | +} | ||
45 | + | ||
46 | +int SSL_get_wfd(SSL *ssl) | ||
47 | +{ | ||
48 | + return ssl->wfd; | ||
49 | +} | ||
50 | + | ||
51 | void SSL_set_bio(SSL *ssl, BIO *rbio, BIO *wbio) | ||
52 | { | ||
53 | gnutls_transport_set_ptr2 (ssl->gnutls_state, rbio->fd, wbio->fd); | ||
54 | @@ -280,6 +295,9 @@ | ||
55 | |||
56 | int SSL_pending(SSL *ssl) | ||
57 | { | ||
58 | + if (ssl->ssl_peek_avail) | ||
59 | + return ssl->ssl_peek_avail; | ||
60 | + | ||
61 | return gnutls_record_check_pending(ssl->gnutls_state); | ||
62 | } | ||
63 | |||
64 | @@ -430,10 +448,49 @@ | ||
65 | return 1; | ||
66 | } | ||
67 | |||
68 | +int SSL_peek(SSL *ssl, void *buf, int len) | ||
69 | +{ | ||
70 | + if (len > ssl->ssl_peek_buffer_size) { | ||
71 | + ssl->ssl_peek_buffer = realloc (ssl->ssl_peek_buffer, len); | ||
72 | + ssl->ssl_peek_buffer_size = len; | ||
73 | + } | ||
74 | + | ||
75 | + if (ssl->ssl_peek_avail == 0) { | ||
76 | + | ||
77 | + int ret; | ||
78 | + | ||
79 | + ret = gnutls_record_recv(ssl->gnutls_state, ssl->ssl_peek_buffer, len); | ||
80 | + ssl->last_error = ret; | ||
81 | + | ||
82 | + if (ret > 0) | ||
83 | + ssl->ssl_peek_avail += ret; | ||
84 | + } | ||
85 | + | ||
86 | + if (len > ssl->ssl_peek_avail) | ||
87 | + len = ssl->ssl_peek_avail; | ||
88 | + | ||
89 | + memcpy (buf, ssl->ssl_peek_buffer, len); | ||
90 | + | ||
91 | + return len; | ||
92 | +} | ||
93 | + | ||
94 | int SSL_read(SSL *ssl, void *buf, int len) | ||
95 | { | ||
96 | int ret; | ||
97 | |||
98 | + if (ssl->ssl_peek_avail) { | ||
99 | + int n = (ssl->ssl_peek_avail > len) ? len : ssl->ssl_peek_avail; | ||
100 | + | ||
101 | + memcpy (buf, ssl->ssl_peek_buffer, n); | ||
102 | + | ||
103 | + if (ssl->ssl_peek_avail > n) | ||
104 | + memmove (ssl->ssl_peek_buffer, ssl->ssl_peek_buffer + n, ssl->ssl_peek_avail - n); | ||
105 | + | ||
106 | + ssl->ssl_peek_avail -= n; | ||
107 | + | ||
108 | + return n; | ||
109 | + } | ||
110 | + | ||
111 | ret = gnutls_record_recv(ssl->gnutls_state, buf, len); | ||
112 | ssl->last_error = ret; | ||
113 | |||
114 | --- clean/gnutls-1.0.23/includes/gnutls/openssl.h 2004-08-04 22:36:02.000000000 +0100 | ||
115 | +++ gnutls-1.0.23/includes/gnutls/openssl.h 2005-01-02 19:48:35.000000000 +0000 | ||
116 | @@ -139,6 +139,10 @@ | ||
117 | |||
118 | gnutls_transport_ptr rfd; | ||
119 | gnutls_transport_ptr wfd; | ||
120 | + | ||
121 | + char *ssl_peek_buffer; | ||
122 | + size_t ssl_peek_buffer_size; | ||
123 | + size_t ssl_peek_avail; | ||
124 | } SSL; | ||
125 | |||
126 | typedef struct | ||
diff --git a/meta/packages/gnutls/gnutls_1.0.25.bb b/meta/packages/gnutls/gnutls_1.0.25.bb deleted file mode 100644 index 4b4b63c63c..0000000000 --- a/meta/packages/gnutls/gnutls_1.0.25.bb +++ /dev/null | |||
@@ -1,33 +0,0 @@ | |||
1 | DESCRIPTION = "GNU Transport Layer Security Library" | ||
2 | DEPENDS = "zlib libgcrypt" | ||
3 | PR = "r2" | ||
4 | |||
5 | LICENSE = "LGPL" | ||
6 | |||
7 | SRC_URI = "ftp://ftp.gnutls.org/pub/gnutls/gnutls-${PV}.tar.gz \ | ||
8 | file://gnutls-openssl.patch;patch=1 \ | ||
9 | file://export-symbols.patch;patch=1" | ||
10 | |||
11 | inherit autotools | ||
12 | inherit binconfig | ||
13 | |||
14 | PACKAGES =+ "${PN}-openssl ${PN}-extra ${PN}-bin" | ||
15 | FILES_${PN}-openssl = "${libdir}/libgnutls-openssl.so.*" | ||
16 | FILES_${PN}-extra = "${libdir}/libgnutls-extra.so.*" | ||
17 | FILES_${PN} = "${libdir}/libgnutls.so.*" | ||
18 | FILES_${PN}-bin = "${bindir}/gnutls-serv ${bindir}/gnutls-cli \ | ||
19 | ${bindir}/srptool ${bindir}/certtool ${bindir}/gnutls-srpcrypt" | ||
20 | FILES_${PN}-dev += "${bindir}/*-config ${bindir}/gnutls-cli-debug" | ||
21 | |||
22 | EXTRA_OECONF="--with-included-opencdk --with-included-libtasn1" | ||
23 | |||
24 | do_stage() { | ||
25 | oe_libinstall -C lib/.libs -so -a libgnutls ${STAGING_LIBDIR} | ||
26 | oe_libinstall -C libextra/.libs -so -a libgnutls-extra ${STAGING_LIBDIR} | ||
27 | oe_libinstall -C libextra/.libs -so -a libgnutls-openssl ${STAGING_LIBDIR} | ||
28 | autotools_stage_includes | ||
29 | |||
30 | install -d ${STAGING_DATADIR}/aclocal | ||
31 | cp ${S}/lib/libgnutls.m4 ${STAGING_DATADIR}/aclocal/ | ||
32 | } | ||
33 | |||