Add lzo, upgrade libgcrypt -> 1.2.3, add gnutls 1.4.4
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@934 311d38ba-8fff-0310-9ca6-ca027cbcb966
This commit is contained in:
parent
2a9503f185
commit
450aea724e
|
@ -0,0 +1,120 @@
|
|||
--- gnutls-1.3.5/libextra/gnutls_openssl.c.orig 2006-04-28 20:01:40.000000000 +0100
|
||||
+++ gnutls-1.3.5/libextra/gnutls_openssl.c 2006-04-28 20:10:33.000000000 +0100
|
||||
@@ -252,12 +252,17 @@
|
||||
ssl->rfd = (gnutls_transport_ptr_t) - 1;
|
||||
ssl->wfd = (gnutls_transport_ptr_t) - 1;
|
||||
|
||||
+ ssl->ssl_peek_buffer = NULL;
|
||||
+ ssl->ssl_peek_buffer_size = ssl->ssl_peek_avail = 0;
|
||||
+
|
||||
return ssl;
|
||||
}
|
||||
|
||||
void
|
||||
SSL_free (SSL * ssl)
|
||||
{
|
||||
+ if (ssl->ssl_peek_buffer)
|
||||
+ free(ssl->ssl_peek_buffer);
|
||||
gnutls_certificate_free_credentials (ssl->gnutls_cred);
|
||||
gnutls_deinit (ssl->gnutls_state);
|
||||
free (ssl);
|
||||
@@ -281,6 +286,7 @@
|
||||
SSL_set_fd (SSL * ssl, int fd)
|
||||
{
|
||||
gnutls_transport_set_ptr (ssl->gnutls_state, (gnutls_transport_ptr_t) fd);
|
||||
+ ssl->rfd = ssl->wfd = fd;
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -306,6 +312,17 @@
|
||||
return 1;
|
||||
}
|
||||
|
||||
+int SSL_get_rfd(SSL *ssl)
|
||||
+{
|
||||
+ return ssl->rfd;
|
||||
+}
|
||||
+
|
||||
+int SSL_get_wfd(SSL *ssl)
|
||||
+{
|
||||
+ return ssl->wfd;
|
||||
+}
|
||||
+
|
||||
+
|
||||
void
|
||||
SSL_set_bio (SSL * ssl, BIO * rbio, BIO * wbio)
|
||||
{
|
||||
@@ -321,6 +338,8 @@
|
||||
int
|
||||
SSL_pending (SSL * ssl)
|
||||
{
|
||||
+ if (ssl->ssl_peek_avail)
|
||||
+ return ssl->ssl_peek_avail;
|
||||
return gnutls_record_check_pending (ssl->gnutls_state);
|
||||
}
|
||||
|
||||
@@ -476,11 +495,50 @@
|
||||
return 1;
|
||||
}
|
||||
|
||||
+int SSL_peek(SSL *ssl, void *buf, int len)
|
||||
+{
|
||||
+ if (len > ssl->ssl_peek_buffer_size) {
|
||||
+ ssl->ssl_peek_buffer = realloc (ssl->ssl_peek_buffer, len);
|
||||
+ ssl->ssl_peek_buffer_size = len;
|
||||
+ }
|
||||
+
|
||||
+ if (ssl->ssl_peek_avail == 0) {
|
||||
+
|
||||
+ int ret;
|
||||
+
|
||||
+ ret = gnutls_record_recv(ssl->gnutls_state, ssl->ssl_peek_buffer, len);
|
||||
+ ssl->last_error = ret;
|
||||
+
|
||||
+ if (ret > 0)
|
||||
+ ssl->ssl_peek_avail += ret;
|
||||
+ }
|
||||
+
|
||||
+ if (len > ssl->ssl_peek_avail)
|
||||
+ len = ssl->ssl_peek_avail;
|
||||
+
|
||||
+ memcpy (buf, ssl->ssl_peek_buffer, len);
|
||||
+
|
||||
+ return len;
|
||||
+}
|
||||
+
|
||||
int
|
||||
SSL_read (SSL * ssl, void *buf, int len)
|
||||
{
|
||||
int ret;
|
||||
|
||||
+ if (ssl->ssl_peek_avail) {
|
||||
+ int n = (ssl->ssl_peek_avail > len) ? len : ssl->ssl_peek_avail;
|
||||
+
|
||||
+ memcpy (buf, ssl->ssl_peek_buffer, n);
|
||||
+
|
||||
+ if (ssl->ssl_peek_avail > n)
|
||||
+ memmove (ssl->ssl_peek_buffer, ssl->ssl_peek_buffer + n, ssl->ssl_peek_avail - n);
|
||||
+
|
||||
+ ssl->ssl_peek_avail -= n;
|
||||
+
|
||||
+ return n;
|
||||
+ }
|
||||
+
|
||||
ret = gnutls_record_recv (ssl->gnutls_state, buf, len);
|
||||
ssl->last_error = ret;
|
||||
|
||||
--- gnutls-1.3.5/includes/gnutls/openssl.h.orig 2006-04-28 20:10:55.000000000 +0100
|
||||
+++ gnutls-1.3.5/includes/gnutls/openssl.h 2006-04-28 20:11:52.000000000 +0100
|
||||
@@ -164,6 +164,11 @@
|
||||
|
||||
gnutls_transport_ptr_t rfd;
|
||||
gnutls_transport_ptr_t wfd;
|
||||
+
|
||||
+ char *ssl_peek_buffer;
|
||||
+ size_t ssl_peek_buffer_size;
|
||||
+ size_t ssl_peek_avail;
|
||||
+
|
||||
};
|
||||
|
||||
#define rbio gnutls_state
|
|
@ -0,0 +1,16 @@
|
|||
The version of texinfo in Debian Sarge does not understand the @euro{} command.
|
||||
This patch replaces the @euro{} command with the word "euro".
|
||||
|
||||
--- gnutls-1.3.5/doc/signatures.texi.orig 2006-04-26 08:06:40.918268000 +0930
|
||||
+++ gnutls-1.3.5/doc/signatures.texi 2006-04-26 08:06:52.446515440 +0930
|
||||
@@ -11,8 +11,8 @@
|
||||
long as it is difficult enough to generate two different messages with
|
||||
the same hash algorithm output. In that case the same signature could
|
||||
be used as a proof for both messages. Nobody wants to sign an innocent
|
||||
-message of donating 1 @euro{} to Greenpeace and find out that he
|
||||
-donated 1.000.000 @euro{} to Bad Inc.
|
||||
+message of donating 1 euro to Greenpeace and find out that he
|
||||
+donated 1.000.000 euro to Bad Inc.
|
||||
|
||||
For a hash algorithm to be called cryptographic the following three
|
||||
requirements must hold
|
|
@ -0,0 +1,63 @@
|
|||
# onceonly.m4 serial 3
|
||||
dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc.
|
||||
dnl This file is free software, distributed under the terms of the GNU
|
||||
dnl General Public License. As a special exception to the GNU General
|
||||
dnl Public License, this file may be distributed as part of a program
|
||||
dnl that contains a configuration script generated by Autoconf, under
|
||||
dnl the same distribution terms as the rest of that program.
|
||||
|
||||
dnl This file defines some "once only" variants of standard autoconf macros.
|
||||
dnl AC_CHECK_HEADERS_ONCE like AC_CHECK_HEADERS
|
||||
dnl AC_CHECK_FUNCS_ONCE like AC_CHECK_FUNCS
|
||||
dnl AC_CHECK_DECLS_ONCE like AC_CHECK_DECLS
|
||||
dnl AC_REQUIRE([AC_HEADER_STDC]) like AC_HEADER_STDC
|
||||
dnl The advantage is that the check for each of the headers/functions/decls
|
||||
dnl will be put only once into the 'configure' file. It keeps the size of
|
||||
dnl the 'configure' file down, and avoids redundant output when 'configure'
|
||||
dnl is run.
|
||||
dnl The drawback is that the checks cannot be conditionalized. If you write
|
||||
dnl if some_condition; then gl_CHECK_HEADERS(stdlib.h); fi
|
||||
dnl inside an AC_DEFUNed function, the gl_CHECK_HEADERS macro call expands to
|
||||
dnl empty, and the check will be inserted before the body of the AC_DEFUNed
|
||||
dnl function.
|
||||
|
||||
dnl Autoconf version 2.57 or newer is recommended.
|
||||
AC_PREREQ(2.54)
|
||||
|
||||
# AC_CHECK_HEADERS_ONCE(HEADER1 HEADER2 ...) is a once-only variant of
|
||||
# AC_CHECK_HEADERS(HEADER1 HEADER2 ...).
|
||||
AC_DEFUN([AC_CHECK_HEADERS_ONCE], [
|
||||
:
|
||||
AC_FOREACH([gl_HEADER_NAME], [$1], [
|
||||
AC_DEFUN([gl_CHECK_HEADER_]m4_quote(translit(defn([gl_HEADER_NAME]),
|
||||
[-./], [___])), [
|
||||
AC_CHECK_HEADERS(gl_HEADER_NAME)
|
||||
])
|
||||
AC_REQUIRE([gl_CHECK_HEADER_]m4_quote(translit(gl_HEADER_NAME,
|
||||
[-./], [___])))
|
||||
])
|
||||
])
|
||||
|
||||
# AC_CHECK_FUNCS_ONCE(FUNC1 FUNC2 ...) is a once-only variant of
|
||||
# AC_CHECK_FUNCS(FUNC1 FUNC2 ...).
|
||||
AC_DEFUN([AC_CHECK_FUNCS_ONCE], [
|
||||
:
|
||||
AC_FOREACH([gl_FUNC_NAME], [$1], [
|
||||
AC_DEFUN([gl_CHECK_FUNC_]defn([gl_FUNC_NAME]), [
|
||||
AC_CHECK_FUNCS(defn([gl_FUNC_NAME]))
|
||||
])
|
||||
AC_REQUIRE([gl_CHECK_FUNC_]defn([gl_FUNC_NAME]))
|
||||
])
|
||||
])
|
||||
|
||||
# AC_CHECK_DECLS_ONCE(DECL1 DECL2 ...) is a once-only variant of
|
||||
# AC_CHECK_DECLS(DECL1, DECL2, ...).
|
||||
AC_DEFUN([AC_CHECK_DECLS_ONCE], [
|
||||
:
|
||||
AC_FOREACH([gl_DECL_NAME], [$1], [
|
||||
AC_DEFUN([gl_CHECK_DECL_]defn([gl_DECL_NAME]), [
|
||||
AC_CHECK_DECLS(defn([gl_DECL_NAME]))
|
||||
])
|
||||
AC_REQUIRE([gl_CHECK_DECL_]defn([gl_DECL_NAME]))
|
||||
])
|
||||
])
|
|
@ -0,0 +1,41 @@
|
|||
DESCRIPTION = "GNU Transport Layer Security Library"
|
||||
DEPENDS = "zlib libgcrypt lzo"
|
||||
HOMEPAGE = "http://www.gnu.org/software/gnutls/"
|
||||
LICENSE = "LGPL"
|
||||
|
||||
SRC_URI = "ftp://ftp.gnutls.org/pub/gnutls/gnutls-${PV}.tar.bz2 \
|
||||
file://onceonly.m4 \
|
||||
file://gnutls-openssl.patch;patch=1 \
|
||||
file://gnutls-texinfo-euro.patch;patch=1"
|
||||
|
||||
inherit autotools binconfig
|
||||
|
||||
do_configure_prepend() {
|
||||
cp ${WORKDIR}/onceonly.m4 ${S}/m4/
|
||||
}
|
||||
|
||||
PACKAGES =+ "${PN}-openssl ${PN}-extra ${PN}-bin"
|
||||
FILES_${PN}-openssl = "${libdir}/libgnutls-openssl.so.*"
|
||||
FILES_${PN}-extra = "${libdir}/libgnutls-extra.so.*"
|
||||
FILES_${PN} = "${libdir}/libgnutls.so.*"
|
||||
FILES_${PN}-bin = "${bindir}/gnutls-serv \
|
||||
${bindir}/gnutls-cli \
|
||||
${bindir}/srptool \
|
||||
${bindir}/certtool \
|
||||
${bindir}/gnutls-srpcrypt \
|
||||
${bindir}/psktool"
|
||||
|
||||
FILES_${PN}-dev += "${bindir}/*-config ${bindir}/gnutls-cli-debug"
|
||||
|
||||
EXTRA_OECONF="--with-included-opencdk --with-included-libtasn1"
|
||||
|
||||
do_stage() {
|
||||
oe_libinstall -C lib/.libs -so -a libgnutls ${STAGING_LIBDIR}
|
||||
oe_libinstall -C libextra/.libs -so -a libgnutls-extra ${STAGING_LIBDIR}
|
||||
oe_libinstall -C libextra/.libs -so -a libgnutls-openssl ${STAGING_LIBDIR}
|
||||
autotools_stage_includes
|
||||
|
||||
install -d ${STAGING_DATADIR}/aclocal
|
||||
cp ${S}/lib/libgnutls.m4 ${STAGING_DATADIR}/aclocal/
|
||||
}
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
DESCRIPTION = "A general purpose cryptographic library based on the code from GnuPG"
|
||||
SECTION = "libs"
|
||||
PRIORITY = "optional"
|
||||
LICENSE = "GPL LGPL FDL"
|
||||
DEPENDS = "libgpg-error"
|
||||
|
||||
# move libgcrypt-config into -dev package
|
||||
FILES_${PN} = "${libdir}/lib*.so.*"
|
||||
FILES_${PN}-dev += "${bindir}"
|
||||
|
||||
SRC_URI = "ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-${PV}.tar.gz"
|
||||
|
||||
inherit autotools binconfig
|
||||
|
||||
EXTRA_OECONF = "--without-pth --disable-asm --with-capabilities"
|
||||
|
||||
do_stage() {
|
||||
oe_libinstall -so -C src libgcrypt ${STAGING_LIBDIR}
|
||||
oe_libinstall -so -C src libgcrypt-pthread ${STAGING_LIBDIR}
|
||||
install -m 0755 src/libgcrypt-config ${STAGING_BINDIR}/
|
||||
|
||||
install -d ${STAGING_INCDIR}/
|
||||
for X in gcrypt.h gcrypt-module.h
|
||||
do
|
||||
install -m 0644 src/${X} ${STAGING_INCDIR}/${X}
|
||||
done
|
||||
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
DESCRIPTION = "Lossless data compression library"
|
||||
HOMEPAGE = "http://www.oberhumer.com/opensource/lzo/"
|
||||
LICENSE = "GPLv2"
|
||||
SECTION = "libs"
|
||||
PRIORITY = "optional"
|
||||
PR = "r14"
|
||||
|
||||
SRC_URI = "http://www.oberhumer.com/opensource/lzo/download/lzo-${PV}.tar.gz"
|
||||
|
||||
inherit autotools
|
||||
|
||||
EXTRA_OECONF = "--enable-shared"
|
||||
|
||||
#do_configure () {
|
||||
# # override this function to avoid the autoconf/automake/aclocal/autoheader
|
||||
# # calls for now
|
||||
# gnu-configize
|
||||
# oe_runconf
|
||||
#}
|
||||
|
||||
do_stage() {
|
||||
install -m 0644 include/lzo1.h ${STAGING_INCDIR}/lzo1.h
|
||||
install -m 0644 include/lzo16bit.h ${STAGING_INCDIR}/lzo16bit.h
|
||||
install -m 0644 include/lzo1a.h ${STAGING_INCDIR}/lzo1a.h
|
||||
install -m 0644 include/lzo1b.h ${STAGING_INCDIR}/lzo1b.h
|
||||
install -m 0644 include/lzo1c.h ${STAGING_INCDIR}/lzo1c.h
|
||||
install -m 0644 include/lzo1f.h ${STAGING_INCDIR}/lzo1f.h
|
||||
install -m 0644 include/lzo1x.h ${STAGING_INCDIR}/lzo1x.h
|
||||
install -m 0644 include/lzo1y.h ${STAGING_INCDIR}/lzo1y.h
|
||||
install -m 0644 include/lzo1z.h ${STAGING_INCDIR}/lzo1z.h
|
||||
install -m 0644 include/lzo2a.h ${STAGING_INCDIR}/lzo2a.h
|
||||
install -m 0644 include/lzoconf.h ${STAGING_INCDIR}/lzoconf.h
|
||||
install -m 0644 include/lzoutil.h ${STAGING_INCDIR}/lzoutil.h
|
||||
|
||||
oe_libinstall -a -so -C src liblzo ${STAGING_LIBDIR}
|
||||
}
|
Loading…
Reference in New Issue