diff options
Diffstat (limited to 'meta/recipes-connectivity')
112 files changed, 4419 insertions, 1437 deletions
diff --git a/meta/recipes-connectivity/avahi/avahi-ui_0.6.31.bb b/meta/recipes-connectivity/avahi/avahi-ui_0.6.31.bb index 557c1c1651..eea4d70fab 100644 --- a/meta/recipes-connectivity/avahi/avahi-ui_0.6.31.bb +++ b/meta/recipes-connectivity/avahi/avahi-ui_0.6.31.bb @@ -45,7 +45,11 @@ RDEPENDS_python-avahi = "python-core python-dbus" do_install_append () { rm ${D}${sysconfdir} -rf rm ${D}${base_libdir} -rf - rm ${D}${base_libdir} -rf + rm ${D}${systemd_unitdir} -rf + # The ${systemd_unitdir} is /lib/systemd, so we need rmdir /lib, + # but not ${base_libdir} here. And the /lib may not exist + # whithout systemd. + [ ! -d ${D}/lib ] || rmdir ${D}/lib --ignore-fail-on-non-empty rm ${D}${bindir}/avahi-b* rm ${D}${bindir}/avahi-p* rm ${D}${bindir}/avahi-r* @@ -64,6 +68,5 @@ do_install_append () { rm ${D}${mandir}/man1/a* rm ${D}${mandir}/man5 -rf rm ${D}${mandir}/man8 -rf - rmdir ${D}${localstatedir} } diff --git a/meta/recipes-connectivity/avahi/avahi.inc b/meta/recipes-connectivity/avahi/avahi.inc index 3318f40384..b060437c12 100644 --- a/meta/recipes-connectivity/avahi/avahi.inc +++ b/meta/recipes-connectivity/avahi/avahi.inc @@ -73,6 +73,9 @@ do_configure_prepend() { PACKAGES =+ "avahi-daemon libavahi-common libavahi-core libavahi-client avahi-dnsconfd libavahi-glib libavahi-ui avahi-autoipd avahi-utils" +# As avahi doesn't put any files into PN, clear the files list to avoid problems +# if extra libraries appear. +FILES_avahi = "" FILES_avahi-autoipd = "${sbindir}/avahi-autoipd \ ${sysconfdir}/avahi/avahi-autoipd.action \ ${sysconfdir}/dhcp/*/avahi-autoipd \ @@ -99,6 +102,8 @@ FILES_libavahi-glib = "${libdir}/libavahi-glib.so.*" FILES_libavahi-gobject = "${libdir}/libavahi-gobject.so.*" FILES_avahi-utils = "${bindir}/avahi-*" +RDEPENDS_${PN}-dev = "avahi-daemon (= ${EXTENDPKGV}) libavahi-core (= ${EXTENDPKGV}) libavahi-client (= ${EXTENDPKGV})" + # uclibc has no nss RRECOMMENDS_avahi-daemon_append_libc-glibc = " libnss-mdns" RRECOMMENDS_${PN}_append_libc-glibc = " libnss-mdns" @@ -122,7 +127,8 @@ do_install() { # don't install /var/run when populating rootfs. Do it through volatile # /var/run of current version is empty, so just remove it. # if /var/run become non-empty in the future, need to install it via volatile - rm -rf ${D}/var/run + rm -rf ${D}${localstatedir}/run + rmdir --ignore-fail-on-non-empty ${D}${localstatedir} rm -rf ${D}${datadir}/dbus-1/interfaces rmdir --ignore-fail-on-non-empty ${D}${datadir}/dbus-1 rm -rf ${D}${libdir}/avahi diff --git a/meta/recipes-connectivity/bind/bind/bind-add-crosscripts-search-path-for-xml2-config.patch b/meta/recipes-connectivity/bind/bind/bind-add-crosscripts-search-path-for-xml2-config.patch new file mode 100644 index 0000000000..4f1a3f8e89 --- /dev/null +++ b/meta/recipes-connectivity/bind/bind/bind-add-crosscripts-search-path-for-xml2-config.patch @@ -0,0 +1,35 @@ +From 8fa549fe5390875d56f75e20d364394cd5ccf388 Mon Sep 17 00:00:00 2001 +From: Joe MacDonald <joe_macdonald@mentor.com> +Date: Mon, 3 Nov 2014 21:52:02 -0500 +Subject: [PATCH] bind: add crosscripts search path for xml2-config + +The configure script was testing xml2-config from bin but in openembedded +bin folder is not copied to sysroot so the test was failing. Added another +condition to test libxml-2.0.pc which is present in lib folder. Used pkg-config +to get libs and cflags information. + +Upstream-Status: Inappropriate [ openembedded specific ] + +Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com> +Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com> +--- + configure.in | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/configure.in b/configure.in +index 3d04f4c..6032f67 100644 +--- a/configure.in ++++ b/configure.in +@@ -1433,6 +1433,9 @@ case "$use_libxml2" in + if test -f "$use_libxml2/bin/xml2-config" ; then + libxml2_libs=`$use_libxml2/bin/xml2-config --libs` + libxml2_cflags=`$use_libxml2/bin/xml2-config --cflags` ++ elif test -f "$use_libxml2/lib/pkgconfig/libxml-2.0.pc" ; then ++ libxml2_libs=`pkg-config libxml-2.0 --libs` ++ libxml2_cflags=`pkg-config libxml-2.0 --cflags` + fi + ;; + esac +-- +1.9.1 + diff --git a/meta/recipes-connectivity/bind/bind/bind-confgen-build-unix.o-once.patch b/meta/recipes-connectivity/bind/bind/bind-confgen-build-unix.o-once.patch new file mode 100644 index 0000000000..096d5d84fc --- /dev/null +++ b/meta/recipes-connectivity/bind/bind/bind-confgen-build-unix.o-once.patch @@ -0,0 +1,44 @@ +From 9b40619ff6fddfef2758ba797789f8487f412df3 Mon Sep 17 00:00:00 2001 +From: Robert Yang <liezhi.yang@windriver.com> +Date: Mon, 16 Feb 2015 00:50:01 -0800 +Subject: [PATCH] confgen: don't build unix.o twice + +Fixed: +unix/os.o: file not recognized: File truncated +collect2: error: ld returned 1 exit status + +This is because os.o was built twice: +* The implicity rule (depends on unix/os.o) +* The "make all" in unix subdir (depends on unix/os.o) + +Depend on subdirs which is unix only rather than unix/os.o will fix the +problem. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <liezhi.yang@windriver.com> +--- + bin/confgen/Makefile.in | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/bin/confgen/Makefile.in b/bin/confgen/Makefile.in +index 8b3e5aa..4868a24 100644 +--- a/bin/confgen/Makefile.in ++++ b/bin/confgen/Makefile.in +@@ -74,11 +74,11 @@ rndc-confgen.@O@: rndc-confgen.c + ddns-confgen.@O@: ddns-confgen.c + ${LIBTOOL_MODE_COMPILE} ${CC} ${ALL_CFLAGS} -c ${srcdir}/ddns-confgen.c + +-rndc-confgen@EXEEXT@: rndc-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS} ${CONFDEPLIBS} ++rndc-confgen@EXEEXT@: rndc-confgen.@O@ util.@O@ keygen.@O@ ${CONFDEPLIBS} $(SUBDIRS) + export BASEOBJS="rndc-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS}"; \ + ${FINALBUILDCMD} + +-ddns-confgen@EXEEXT@: ddns-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS} ${CONFDEPLIBS} ++ddns-confgen@EXEEXT@: ddns-confgen.@O@ util.@O@ keygen.@O@ ${CONFDEPLIBS} $(SUBDIRS) + export BASEOBJS="ddns-confgen.@O@ util.@O@ keygen.@O@ ${UOBJS}"; \ + ${FINALBUILDCMD} + +-- +1.7.9.5 + diff --git a/meta/recipes-connectivity/bind/bind/bind-subdirs-run-serially.patch b/meta/recipes-connectivity/bind/bind/bind-subdirs-run-serially.patch new file mode 100644 index 0000000000..9db7a1786f --- /dev/null +++ b/meta/recipes-connectivity/bind/bind/bind-subdirs-run-serially.patch @@ -0,0 +1,35 @@ +From b24468b6fe1f136bfd854773bc0e117aca0012d5 Mon Sep 17 00:00:00 2001 +From: Robert Yang <liezhi.yang@windriver.com> +Date: Wed, 28 Jan 2015 01:23:09 -0800 +Subject: [PATCH] lib/export/isc/Makefile.in: let SUBDIRS run serially + +Fix parallel issue:: +make[2]: *** No rule to make target `nls/msgcat.o', needed by `libisc.a'. Stop. +make[2]: *** Waiting for unfinished jobs.... +make[3]: Leaving directory `bind-9.9.5/lib/export/isc/unix' + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <liezhi.yang@windriver.com> +--- + lib/export/isc/Makefile.in | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/lib/export/isc/Makefile.in b/lib/export/isc/Makefile.in +index a92f66f..27dabcb 100644 +--- a/lib/export/isc/Makefile.in ++++ b/lib/export/isc/Makefile.in +@@ -103,6 +103,10 @@ SRCS = @ISC_EXTRA_SRCS@ \ + + LIBS = @LIBS@ + ++# Note: the order of SUBDIRS is important. ++# Attempt to disable parallel processing. ++.NOTPARALLEL: ++.NO_PARALLEL: + SUBDIRS = include unix nls @ISC_THREAD_DIR@ + TARGETS = timestamp + +-- +1.7.9.5 + diff --git a/meta/recipes-connectivity/bind/bind/bind9 b/meta/recipes-connectivity/bind/bind/bind9 new file mode 100644 index 0000000000..968679ff7f --- /dev/null +++ b/meta/recipes-connectivity/bind/bind/bind9 @@ -0,0 +1,2 @@ +# startup options for the server +OPTIONS="-u bind" diff --git a/meta/recipes-connectivity/bind/bind/bind9_9_5-CVE-2014-8500.patch b/meta/recipes-connectivity/bind/bind/bind9_9_5-CVE-2014-8500.patch new file mode 100644 index 0000000000..62142d2313 --- /dev/null +++ b/meta/recipes-connectivity/bind/bind/bind9_9_5-CVE-2014-8500.patch @@ -0,0 +1,990 @@ +From 603a0e2637b35a2da820bc807f69bcf09c682dce Mon Sep 17 00:00:00 2001 +From: Evan Hunt <each@isc.org> +Date: Mon, 17 Nov 2014 23:49:07 -0800 +Subject: [PATCH] [v9_9] limit recursion depth and iterative queries + +4006. [security] A flaw in delegation handling could be exploited + to put named into an infinite loop. This has + been addressed by placing limits on the number + of levels of recursion named will allow (default 7), + and the number of iterative queries that it will + send (default 50) before terminating a recursive + query (CVE-2014-8500). + + The recursion depth limit is configured via the + "max-recursion-depth" option. [RT #35780] + +Upstream-Status: Backport + +Signed-off-by: Sona Sarmadi <sona.sarmadi@enea.com> +--- + bin/named/config.c | 3 +- + bin/named/include/named/query.h | 2 - + bin/named/query.c | 7 ++- + bin/named/server.c | 5 ++ + bin/tests/system/many/clean.sh | 7 +++ + bin/tests/system/many/ns1/named.conf | 33 +++++++++++++ + bin/tests/system/many/ns2/named.conf | 30 ++++++++++++ + bin/tests/system/many/ns3/named.conf | 32 +++++++++++++ + bin/tests/system/many/ns4/named.conf | 30 ++++++++++++ + bin/tests/system/many/ns5/hints.db | 2 + + bin/tests/system/many/ns5/named.conf | 29 ++++++++++++ + bin/tests/system/many/setup.sh | 75 ++++++++++++++++++++++++++++++ + bin/tests/system/many/tests.sh | 48 +++++++++++++++++++ + doc/arm/Bv9ARM-book.xml | 12 +++++ + lib/dns/adb.c | 58 ++++++++++++++++------- + lib/dns/include/dns/adb.h | 8 ++++ + lib/dns/include/dns/resolver.h | 25 ++++++++++ + lib/dns/resolver.c | 90 ++++++++++++++++++++++++++++++------ + lib/isccfg/namedconf.c | 1 + + 20 files changed, 471 insertions(+), 37 deletions(-) + create mode 100644 bin/tests/system/many/clean.sh + create mode 100644 bin/tests/system/many/ns1/named.conf + create mode 100644 bin/tests/system/many/ns2/named.conf + create mode 100644 bin/tests/system/many/ns3/named.conf + create mode 100644 bin/tests/system/many/ns4/named.conf + create mode 100644 bin/tests/system/many/ns5/hints.db + create mode 100644 bin/tests/system/many/ns5/named.conf + create mode 100644 bin/tests/system/many/setup.sh + create mode 100644 bin/tests/system/many/tests.sh + +diff --git a/bin/named/config.c b/bin/named/config.c +index 2782720..5ee8c4e 100644 +--- a/bin/named/config.c ++++ b/bin/named/config.c +@@ -15,8 +15,6 @@ + * PERFORMANCE OF THIS SOFTWARE. + */ + +-/* $Id: config.c,v 1.123 2012/01/06 23:46:41 tbox Exp $ */ +- + /*! \file */ + + #include <config.h> +@@ -160,6 +158,7 @@ options {\n\ + dnssec-accept-expired no;\n\ + clients-per-query 10;\n\ + max-clients-per-query 100;\n\ ++ max-recursion-depth 7;\n\ + zero-no-soa-ttl-cache no;\n\ + nsec3-test-zone no;\n\ + allow-new-zones no;\n\ +diff --git a/bin/named/include/named/query.h b/bin/named/include/named/query.h +index 3beabb8..b5e3900 100644 +--- a/bin/named/include/named/query.h ++++ b/bin/named/include/named/query.h +@@ -15,8 +15,6 @@ + * PERFORMANCE OF THIS SOFTWARE. + */ + +-/* $Id: query.h,v 1.45 2011/01/13 04:59:24 tbox Exp $ */ +- + #ifndef NAMED_QUERY_H + #define NAMED_QUERY_H 1 + +diff --git a/bin/named/query.c b/bin/named/query.c +index 982f76d..47bfc6a 100644 +--- a/bin/named/query.c ++++ b/bin/named/query.c +@@ -3877,12 +3877,11 @@ query_recurse(ns_client_t *client, dns_rdatatype_t qtype, dns_name_t *qname, + peeraddr = &client->peeraddr; + else + peeraddr = NULL; +- result = dns_resolver_createfetch2(client->view->resolver, ++ result = dns_resolver_createfetch3(client->view->resolver, + qname, qtype, qdomain, nameservers, + NULL, peeraddr, client->message->id, +- client->query.fetchoptions, +- client->task, +- query_resume, client, ++ client->query.fetchoptions, 0, ++ client->task, query_resume, client, + rdataset, sigrdataset, + &client->query.fetch); + +diff --git a/bin/named/server.c b/bin/named/server.c +index ac015a4..0559977 100644 +--- a/bin/named/server.c ++++ b/bin/named/server.c +@@ -3161,6 +3161,11 @@ configure_view(dns_view_t *view, cfg_obj_t *config, cfg_obj_t *vconfig, + cfg_obj_asuint32(obj), + max_clients_per_query); + ++ obj = NULL; ++ result = ns_config_get(maps, "max-recursion-depth", &obj); ++ INSIST(result == ISC_R_SUCCESS); ++ dns_resolver_setmaxdepth(view->resolver, cfg_obj_asuint32(obj)); ++ + #ifdef ALLOW_FILTER_AAAA_ON_V4 + obj = NULL; + result = ns_config_get(maps, "filter-aaaa-on-v4", &obj); +diff --git a/bin/tests/system/many/clean.sh b/bin/tests/system/many/clean.sh +new file mode 100644 +index 0000000..119b1f5 +--- /dev/null ++++ b/bin/tests/system/many/clean.sh +@@ -0,0 +1,7 @@ ++rm -f ns1/[1-9]*example.tld?.db ++rm -f ns2/[1-9]*example.tld?.db ++rm -f ns1/zones.conf ++rm -f ns2/zones.conf ++rm -f */root.db ++rm -f ns3/tld1.db ++rm -f ns4/tld2.db +diff --git a/bin/tests/system/many/ns1/named.conf b/bin/tests/system/many/ns1/named.conf +new file mode 100644 +index 0000000..abc9dca +--- /dev/null ++++ b/bin/tests/system/many/ns1/named.conf +@@ -0,0 +1,33 @@ ++/* ++ * Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC") ++ * ++ * Permission to use, copy, modify, and/or distribute this software for any ++ * purpose with or without fee is hereby granted, provided that the above ++ * copyright notice and this permission notice appear in all copies. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH ++ * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ++ * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, ++ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM ++ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE ++ * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ++ * PERFORMANCE OF THIS SOFTWARE. ++ */ ++ ++controls { /* empty */ }; ++ ++options { ++ query-source address 10.53.0.1; ++ notify-source 10.53.0.1; ++ transfer-source 10.53.0.1; ++ port 5300; ++ pid-file "named.pid"; ++ listen-on { 10.53.0.1; }; ++ listen-on-v6 { none; }; ++ recursion no; ++}; ++ ++include "zones.conf"; ++ ++// zone "tld1" { type master; file "tld1.db"; }; ++// zone "tld2" { type master; file "tld2.db"; }; +diff --git a/bin/tests/system/many/ns2/named.conf b/bin/tests/system/many/ns2/named.conf +new file mode 100644 +index 0000000..16266e2 +--- /dev/null ++++ b/bin/tests/system/many/ns2/named.conf +@@ -0,0 +1,30 @@ ++/* ++ * Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC") ++ * ++ * Permission to use, copy, modify, and/or distribute this software for any ++ * purpose with or without fee is hereby granted, provided that the above ++ * copyright notice and this permission notice appear in all copies. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH ++ * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ++ * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, ++ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM ++ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE ++ * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ++ * PERFORMANCE OF THIS SOFTWARE. ++ */ ++ ++controls { /* empty */ }; ++ ++options { ++ query-source address 10.53.0.2; ++ notify-source 10.53.0.2; ++ transfer-source 10.53.0.2; ++ port 5300; ++ pid-file "named.pid"; ++ listen-on { 10.53.0.2; }; ++ listen-on-v6 { none; }; ++ recursion no; ++}; ++ ++include "zones.conf"; +diff --git a/bin/tests/system/many/ns3/named.conf b/bin/tests/system/many/ns3/named.conf +new file mode 100644 +index 0000000..b950afe +--- /dev/null ++++ b/bin/tests/system/many/ns3/named.conf +@@ -0,0 +1,32 @@ ++/* ++ * Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC") ++ * ++ * Permission to use, copy, modify, and/or distribute this software for any ++ * purpose with or without fee is hereby granted, provided that the above ++ * copyright notice and this permission notice appear in all copies. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH ++ * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ++ * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, ++ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM ++ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE ++ * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ++ * PERFORMANCE OF THIS SOFTWARE. ++ */ ++ ++controls { /* empty */ }; ++ ++options { ++ query-source address 10.53.0.3; ++ notify-source 10.53.0.3; ++ transfer-source 10.53.0.3; ++ port 5300; ++ pid-file "named.pid"; ++ listen-on { 10.53.0.3; }; ++ listen-on-v6 { none; }; ++ recursion no; ++}; ++ ++zone "." { type master; file "root.db"; }; ++ ++zone "tld1" { type master; file "tld1.db"; }; +diff --git a/bin/tests/system/many/ns4/named.conf b/bin/tests/system/many/ns4/named.conf +new file mode 100644 +index 0000000..ca9aa6a +--- /dev/null ++++ b/bin/tests/system/many/ns4/named.conf +@@ -0,0 +1,30 @@ ++/* ++ * Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC") ++ * ++ * Permission to use, copy, modify, and/or distribute this software for any ++ * purpose with or without fee is hereby granted, provided that the above ++ * copyright notice and this permission notice appear in all copies. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH ++ * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ++ * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, ++ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM ++ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE ++ * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ++ * PERFORMANCE OF THIS SOFTWARE. ++ */ ++ ++controls { /* empty */ }; ++ ++options { ++ query-source address 10.53.0.4; ++ notify-source 10.53.0.4; ++ transfer-source 10.53.0.4; ++ port 5300; ++ pid-file "named.pid"; ++ listen-on { 10.53.0.4; }; ++ listen-on-v6 { none; }; ++ recursion no; ++}; ++ ++zone "tld2" { type master; file "tld2.db"; }; +diff --git a/bin/tests/system/many/ns5/hints.db b/bin/tests/system/many/ns5/hints.db +new file mode 100644 +index 0000000..c05809b +--- /dev/null ++++ b/bin/tests/system/many/ns5/hints.db +@@ -0,0 +1,2 @@ ++. 60 in ns ns.nil. ++ns.nil. 60 in A 10.53.0.3 +diff --git a/bin/tests/system/many/ns5/named.conf b/bin/tests/system/many/ns5/named.conf +new file mode 100644 +index 0000000..fce7d59 +--- /dev/null ++++ b/bin/tests/system/many/ns5/named.conf +@@ -0,0 +1,29 @@ ++/* ++ * Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC") ++ * ++ * Permission to use, copy, modify, and/or distribute this software for any ++ * purpose with or without fee is hereby granted, provided that the above ++ * copyright notice and this permission notice appear in all copies. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH ++ * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ++ * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, ++ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM ++ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE ++ * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ++ * PERFORMANCE OF THIS SOFTWARE. ++ */ ++ ++controls { /* empty */ }; ++ ++options { ++ query-source address 10.53.0.5; ++ notify-source 10.53.0.5; ++ transfer-source 10.53.0.5; ++ port 5300; ++ pid-file "named.pid"; ++ listen-on { 10.53.0.5; }; ++ listen-on-v6 { none; }; ++}; ++ ++zone "." { type hint; file "hints.db"; }; +diff --git a/bin/tests/system/many/setup.sh b/bin/tests/system/many/setup.sh +new file mode 100644 +index 0000000..80695b5 +--- /dev/null ++++ b/bin/tests/system/many/setup.sh +@@ -0,0 +1,75 @@ ++i=1 ++ ++cat > ns3/root.db << EOF ++. 60 in soa ns.nil. hostmaster.ns.nil. 1 0 0 0 0 ++. 60 in ns ns.nil. ++ns.nil. 60 in a 10.53.0.3 ++tld1. 60 in ns ns.tld1. ++ns.tld1. 60 in a 10.53.0.3 ++tld2. 60 in ns ns.tld2. ++ns.tld2. 60 in a 10.53.0.4 ++EOF ++ ++cat > ns3/tld1.db << EOF ++tld1. 60 in soa ns.tld1. hostmaster.ns.tld1. 1 0 0 0 0 ++tld1. 60 in ns ns.tld1. ++ns.tld1. 60 in a 10.53.0.1 ++EOF ++ ++cat > ns4/tld2.db << EOF ++tld2. 60 in soa ns.tld2. hostmaster.ns.tld4. 1 0 0 0 0 ++tld2. 60 in ns ns.tld2. ++ns.tld2. 60 in a 10.53.0.1 ++EOF ++ ++: > ns1/zones.conf ++: > ns2/zones.conf ++ ++while [ $i -lt 1000 ] ++do ++j=`expr $i + 1` ++s=`expr $j % 2 + 1` ++n=`expr $i % 2 + 1` ++t=`expr $s + 2` ++ ++# i=1 j=2 s=1 n=2 ++# i=2 j=3 s=1 n=2 ++# i=3 j=4 s=1 n=2 ++ ++cat > ns1/${i}example.tld${s}.db << EOF ++${i}example.tld${s}. 60 in soa ns.${j}example.tld${n}. hostmaster 1 0 0 0 0 ++${i}example.tld${s}. 60 in ns ns.${j}example.tld${n}. ++ns.${i}example.tld${s}. 60 in a 10.53.0.1 ++EOF ++ ++cat >> ns1/zones.conf << EOF ++zone "${i}example.tld${s}" { type master; file "${i}example.tld${s}.db"; }; ++EOF ++ ++cat >> ns${t}/tld${s}.db << EOF ++${i}example.tld${s}. 60 in ns ns.${j}example.tld${n}. ++EOF ++ ++i=$j ++ ++done ++ ++j=`expr $i + 1` ++s=`expr $j % 2 + 1` ++n=`expr $s % 2 + 1` ++t=`expr $s + 2` ++ ++cat > ns1/${i}example.tld${s}.db << EOF ++${i}example.tld${s}. 60 in soa ns.${i}example.tld${s}. hostmaster 1 0 0 0 0 ++${i}example.tld${s}. 60 in ns ns.${i}example.tld${s}. ++ns.${i}example.tld${s}. 60 in a 10.53.0.1 ++EOF ++ ++cat >> ns1/zones.conf << EOF ++zone "${i}example.tld${s}" { type master; file "${i}example.tld${s}.db"; }; ++EOF ++ ++cat >> ns${t}/tld${s}.db << EOF ++${i}example.tld${s}. 60 in ns ns.${i}example.tld${s}. ++ns.${i}example.tld${s}. 60 in a 10.53.0.1 ++EOF +diff --git a/bin/tests/system/many/tests.sh b/bin/tests/system/many/tests.sh +new file mode 100644 +index 0000000..37964e2 +--- /dev/null ++++ b/bin/tests/system/many/tests.sh +@@ -0,0 +1,48 @@ ++#!/bin/sh ++# ++# Copyright (C) 2014 Internet Systems Consortium, Inc. ("ISC") ++# ++# Permission to use, copy, modify, and/or distribute this software for any ++# purpose with or without fee is hereby granted, provided that the above ++# copyright notice and this permission notice appear in all copies. ++# ++# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH ++# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ++# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, ++# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM ++# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE ++# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ++# PERFORMANCE OF THIS SOFTWARE. ++ ++SYSTEMTESTTOP=.. ++. $SYSTEMTESTTOP/conf.sh ++ ++status=0 ++n=0 ++ ++n=`expr $n + 1` ++echo "I: attempt lookup 1example.tld2 soa ($n)" ++ret=0 ++$DIG +tcp 1example.tld1 soa @10.53.0.5 -p 5300 > dig.out.test$n ++grep "status: SERVFAIL" dig.out.test$n > /dev/null || ret=1 ++if [ $ret != 0 ]; then echo "I:failed"; fi ++status=`expr $status + $ret` ++ ++n=`expr $n + 1` ++echo "I: attempt lookup 992example.tld2 soa ($n)" ++ret=0 ++$DIG +tcp 992example.tld2 soa @10.53.0.5 -p 5300 > dig.out.test$n ++grep "status: SERVFAIL" dig.out.test$n > /dev/null || ret=1 ++if [ $ret != 0 ]; then echo "I:failed"; fi ++status=`expr $status + $ret` ++ ++n=`expr $n + 1` ++echo "I: attempt lookup 993example.tld1 soa ($n)" ++ret=0 ++$DIG +tcp 993example.tld1 soa @10.53.0.5 -p 5300 > dig.out.test$n ++grep "status: NOERROR" dig.out.test$n > /dev/null || ret=1 ++if [ $ret != 0 ]; then echo "I:failed"; fi ++status=`expr $status + $ret` ++ ++echo "I:exit status: $status" ++exit $status +diff --git a/doc/arm/Bv9ARM-book.xml b/doc/arm/Bv9ARM-book.xml +index 9f7bd38..fff4249 100644 +--- a/doc/arm/Bv9ARM-book.xml ++++ b/doc/arm/Bv9ARM-book.xml +@@ -4861,6 +4861,7 @@ badresp:1,adberr:0,findfail:0,valfail:0] + <optional> max-acache-size <replaceable>size_spec</replaceable> ; </optional> + <optional> clients-per-query <replaceable>number</replaceable> ; </optional> + <optional> max-clients-per-query <replaceable>number</replaceable> ; </optional> ++ <optional> max-recursion-depth <replaceable>number</replaceable> ; </optional> + <optional> masterfile-format (<constant>text</constant>|<constant>raw</constant>) ; </optional> + <optional> empty-server <replaceable>name</replaceable> ; </optional> + <optional> empty-contact <replaceable>name</replaceable> ; </optional> +@@ -8680,6 +8681,17 @@ avoid-v6-udp-ports { 40000; range 50000 60000; }; + </listitem> + </varlistentry> + ++ <varlistentry id="max-recursion-depth"> ++ <term><command>max-recursion-depth</command></term> ++ <listitem> ++ <para> ++ Sets the maximum number of levels of recursion ++ permitted at any one time while resolving a name. ++ The default is 7. ++ </para> ++ </listitem> ++ </varlistentry> ++ + <varlistentry> + <term><command>notify-delay</command></term> + <listitem> +diff --git a/lib/dns/adb.c b/lib/dns/adb.c +index 2ccb51e..fe9b3f7 100644 +--- a/lib/dns/adb.c ++++ b/lib/dns/adb.c +@@ -199,6 +199,7 @@ struct dns_adbfetch { + unsigned int magic; + dns_fetch_t *fetch; + dns_rdataset_t rdataset; ++ unsigned int depth; + }; + + /*% +@@ -300,7 +301,7 @@ static inline void violate_locking_hierarchy(isc_mutex_t *, isc_mutex_t *); + static isc_boolean_t clean_namehooks(dns_adb_t *, dns_adbnamehooklist_t *); + static void clean_target(dns_adb_t *, dns_name_t *); + static void clean_finds_at_name(dns_adbname_t *, isc_eventtype_t, +- unsigned int); ++ isc_uint32_t, unsigned int); + static isc_boolean_t check_expire_namehooks(dns_adbname_t *, isc_stdtime_t); + static isc_boolean_t check_expire_entry(dns_adb_t *, dns_adbentry_t **, + isc_stdtime_t); +@@ -308,7 +309,7 @@ static void cancel_fetches_at_name(dns_adbname_t *); + static isc_result_t dbfind_name(dns_adbname_t *, isc_stdtime_t, + dns_rdatatype_t); + static isc_result_t fetch_name(dns_adbname_t *, isc_boolean_t, +- dns_rdatatype_t); ++ unsigned int, dns_rdatatype_t); + static inline void check_exit(dns_adb_t *); + static void destroy(dns_adb_t *); + static isc_boolean_t shutdown_names(dns_adb_t *); +@@ -984,7 +985,7 @@ kill_name(dns_adbname_t **n, isc_eventtype_t ev) { + * Clean up the name's various lists. These two are destructive + * in that they will always empty the list. + */ +- clean_finds_at_name(name, ev, DNS_ADBFIND_ADDRESSMASK); ++ clean_finds_at_name(name, ev, 0, DNS_ADBFIND_ADDRESSMASK); + result4 = clean_namehooks(adb, &name->v4); + result6 = clean_namehooks(adb, &name->v6); + clean_target(adb, &name->target); +@@ -1409,7 +1410,7 @@ event_free(isc_event_t *event) { + */ + static void + clean_finds_at_name(dns_adbname_t *name, isc_eventtype_t evtype, +- unsigned int addrs) ++ isc_uint32_t qtotal, unsigned int addrs) + { + isc_event_t *ev; + isc_task_t *task; +@@ -1469,6 +1470,7 @@ clean_finds_at_name(dns_adbname_t *name, isc_eventtype_t evtype, + ev->ev_sender = find; + find->result_v4 = find_err_map[name->fetch_err]; + find->result_v6 = find_err_map[name->fetch6_err]; ++ find->qtotal += qtotal; + ev->ev_type = evtype; + ev->ev_destroy = event_free; + ev->ev_destroy_arg = find; +@@ -1827,6 +1829,7 @@ new_adbfind(dns_adb_t *adb) { + h->flags = 0; + h->result_v4 = ISC_R_UNEXPECTED; + h->result_v6 = ISC_R_UNEXPECTED; ++ h->qtotal = 0; + ISC_LINK_INIT(h, publink); + ISC_LINK_INIT(h, plink); + ISC_LIST_INIT(h->list); +@@ -2799,6 +2802,19 @@ dns_adb_createfind(dns_adb_t *adb, isc_task_t *task, isc_taskaction_t action, + isc_stdtime_t now, dns_name_t *target, + in_port_t port, dns_adbfind_t **findp) + { ++ return (dns_adb_createfind2(adb, task, action, arg, name, ++ qname, qtype, options, now, ++ target, port, 0, findp)); ++} ++ ++isc_result_t ++dns_adb_createfind2(dns_adb_t *adb, isc_task_t *task, isc_taskaction_t action, ++ void *arg, dns_name_t *name, dns_name_t *qname, ++ dns_rdatatype_t qtype, unsigned int options, ++ isc_stdtime_t now, dns_name_t *target, ++ in_port_t port, unsigned int depth, ++ dns_adbfind_t **findp) ++{ + dns_adbfind_t *find; + dns_adbname_t *adbname; + int bucket; +@@ -3029,7 +3045,7 @@ dns_adb_createfind(dns_adb_t *adb, isc_task_t *task, isc_taskaction_t action, + * Start V4. + */ + if (WANT_INET(wanted_fetches) && +- fetch_name(adbname, start_at_zone, ++ fetch_name(adbname, start_at_zone, depth, + dns_rdatatype_a) == ISC_R_SUCCESS) { + DP(DEF_LEVEL, + "dns_adb_createfind: started A fetch for name %p", +@@ -3040,7 +3056,7 @@ dns_adb_createfind(dns_adb_t *adb, isc_task_t *task, isc_taskaction_t action, + * Start V6. + */ + if (WANT_INET6(wanted_fetches) && +- fetch_name(adbname, start_at_zone, ++ fetch_name(adbname, start_at_zone, depth, + dns_rdatatype_aaaa) == ISC_R_SUCCESS) { + DP(DEF_LEVEL, + "dns_adb_createfind: " +@@ -3656,6 +3672,7 @@ fetch_callback(isc_task_t *task, isc_event_t *ev) { + isc_result_t result; + unsigned int address_type; + isc_boolean_t want_check_exit = ISC_FALSE; ++ isc_uint32_t qtotal = 0; + + UNUSED(task); + +@@ -3666,6 +3683,8 @@ fetch_callback(isc_task_t *task, isc_event_t *ev) { + adb = name->adb; + INSIST(DNS_ADB_VALID(adb)); + ++ qtotal = dev->qtotal; ++ + bucket = name->lock_bucket; + LOCK(&adb->namelocks[bucket]); + +@@ -3783,6 +3802,12 @@ fetch_callback(isc_task_t *task, isc_event_t *ev) { + DP(DEF_LEVEL, "adb: fetch of '%s' %s failed: %s", + buf, address_type == DNS_ADBFIND_INET ? "A" : "AAAA", + dns_result_totext(dev->result)); ++ /* ++ * Don't record a failure unless this is the initial ++ * fetch of a chain. ++ */ ++ if (fetch->depth > 1) ++ goto out; + /* XXXMLG Don't pound on bad servers. */ + if (address_type == DNS_ADBFIND_INET) { + name->expire_v4 = ISC_MIN(name->expire_v4, now + 300); +@@ -3814,15 +3839,14 @@ fetch_callback(isc_task_t *task, isc_event_t *ev) { + free_adbfetch(adb, &fetch); + isc_event_free(&ev); + +- clean_finds_at_name(name, ev_status, address_type); ++ clean_finds_at_name(name, ev_status, qtotal, address_type); + + UNLOCK(&adb->namelocks[bucket]); + } + + static isc_result_t +-fetch_name(dns_adbname_t *adbname, +- isc_boolean_t start_at_zone, +- dns_rdatatype_t type) ++fetch_name(dns_adbname_t *adbname, isc_boolean_t start_at_zone, ++ unsigned int depth, dns_rdatatype_t type) + { + isc_result_t result; + dns_adbfetch_t *fetch = NULL; +@@ -3867,12 +3891,14 @@ fetch_name(dns_adbname_t *adbname, + result = ISC_R_NOMEMORY; + goto cleanup; + } +- +- result = dns_resolver_createfetch(adb->view->resolver, &adbname->name, +- type, name, nameservers, NULL, +- options, adb->task, fetch_callback, +- adbname, &fetch->rdataset, NULL, +- &fetch->fetch); ++ fetch->depth = depth; ++ ++ result = dns_resolver_createfetch3(adb->view->resolver, &adbname->name, ++ type, name, nameservers, NULL, ++ NULL, 0, options, depth, adb->task, ++ fetch_callback, adbname, ++ &fetch->rdataset, NULL, ++ &fetch->fetch); + if (result != ISC_R_SUCCESS) + goto cleanup; + +diff --git a/lib/dns/include/dns/adb.h b/lib/dns/include/dns/adb.h +index 35350ff..7501f01 100644 +--- a/lib/dns/include/dns/adb.h ++++ b/lib/dns/include/dns/adb.h +@@ -118,6 +118,8 @@ struct dns_adbfind { + isc_result_t result_v6; /*%< RO: v6 result */ + ISC_LINK(dns_adbfind_t) publink; /*%< RW: client use */ + ++ isc_uint32_t qtotal; ++ + /* Private */ + isc_mutex_t lock; /* locks all below */ + in_port_t port; +@@ -334,6 +336,12 @@ dns_adb_createfind(dns_adb_t *adb, isc_task_t *task, isc_taskaction_t action, + dns_rdatatype_t qtype, unsigned int options, + isc_stdtime_t now, dns_name_t *target, + in_port_t port, dns_adbfind_t **find); ++isc_result_t ++dns_adb_createfind2(dns_adb_t *adb, isc_task_t *task, isc_taskaction_t action, ++ void *arg, dns_name_t *name, dns_name_t *qname, ++ dns_rdatatype_t qtype, unsigned int options, ++ isc_stdtime_t now, dns_name_t *target, in_port_t port, ++ unsigned int depth, dns_adbfind_t **find); + /*%< + * Main interface for clients. The adb will look up the name given in + * "name" and will build up a list of found addresses, and perhaps start +diff --git a/lib/dns/include/dns/resolver.h b/lib/dns/include/dns/resolver.h +index 4e20eb6..c256049 100644 +--- a/lib/dns/include/dns/resolver.h ++++ b/lib/dns/include/dns/resolver.h +@@ -82,6 +82,7 @@ typedef struct dns_fetchevent { + isc_sockaddr_t * client; + dns_messageid_t id; + isc_result_t vresult; ++ isc_uint32_t qtotal; + } dns_fetchevent_t; + + /* +@@ -275,6 +276,18 @@ dns_resolver_createfetch2(dns_resolver_t *res, dns_name_t *name, + dns_rdataset_t *rdataset, + dns_rdataset_t *sigrdataset, + dns_fetch_t **fetchp); ++isc_result_t ++dns_resolver_createfetch3(dns_resolver_t *res, dns_name_t *name, ++ dns_rdatatype_t type, ++ dns_name_t *domain, dns_rdataset_t *nameservers, ++ dns_forwarders_t *forwarders, ++ isc_sockaddr_t *client, isc_uint16_t id, ++ unsigned int options, unsigned int depth, ++ isc_task_t *task, ++ isc_taskaction_t action, void *arg, ++ dns_rdataset_t *rdataset, ++ dns_rdataset_t *sigrdataset, ++ dns_fetch_t **fetchp); + /*%< + * Recurse to answer a question. + * +@@ -576,6 +589,18 @@ dns_resolver_printbadcache(dns_resolver_t *resolver, FILE *fp); + * \li resolver to be valid. + */ + ++void ++dns_resolver_setmaxdepth(dns_resolver_t *resolver, unsigned int maxdepth); ++unsigned int ++dns_resolver_getmaxdepth(dns_resolver_t *resolver); ++/*% ++ * Get and set how many NS indirections will be followed when looking for ++ * nameserver addresses. ++ * ++ * Requires: ++ * \li resolver to be valid. ++ */ ++ + ISC_LANG_ENDDECLS + + #endif /* DNS_RESOLVER_H */ +diff --git a/lib/dns/resolver.c b/lib/dns/resolver.c +index e517dad..6a635b2 100644 +--- a/lib/dns/resolver.c ++++ b/lib/dns/resolver.c +@@ -131,6 +131,16 @@ + #define MAXIMUM_QUERY_TIMEOUT 30 /* The maximum time in seconds for the whole query to live. */ + #endif + ++/* The default maximum number of recursions to follow before giving up. */ ++#ifndef DEFAULT_RECURSION_DEPTH ++#define DEFAULT_RECURSION_DEPTH 7 ++#endif ++ ++/* The default maximum number of iterative queries to allow before giving up. */ ++#ifndef DEFAULT_MAX_QUERIES ++#define DEFAULT_MAX_QUERIES 50 ++#endif ++ + /*% + * Maximum EDNS0 input packet size. + */ +@@ -297,6 +307,7 @@ struct fetchctx { + isc_uint64_t duration; + isc_boolean_t logged; + unsigned int querysent; ++ unsigned int totalqueries; + unsigned int referrals; + unsigned int lamecount; + unsigned int neterr; +@@ -307,6 +318,7 @@ struct fetchctx { + isc_boolean_t timeout; + dns_adbaddrinfo_t *addrinfo; + isc_sockaddr_t *client; ++ unsigned int depth; + }; + + #define FCTX_MAGIC ISC_MAGIC('F', '!', '!', '!') +@@ -419,6 +431,7 @@ struct dns_resolver { + isc_timer_t * spillattimer; + isc_boolean_t zero_no_soa_ttl; + unsigned int query_timeout; ++ unsigned int maxdepth; + + /* Locked by lock. */ + unsigned int references; +@@ -1097,6 +1110,7 @@ fctx_sendevents(fetchctx_t *fctx, isc_result_t result, int line) { + event->result == DNS_R_NCACHENXRRSET); + } + ++ event->qtotal = fctx->totalqueries; + isc_task_sendanddetach(&task, ISC_EVENT_PTR(&event)); + count++; + } +@@ -1537,7 +1551,9 @@ fctx_query(fetchctx_t *fctx, dns_adbaddrinfo_t *addrinfo, + if (result != ISC_R_SUCCESS) + goto cleanup_dispatch; + } ++ + fctx->querysent++; ++ fctx->totalqueries++; + + ISC_LIST_APPEND(fctx->queries, query, link); + query->fctx->nqueries++; +@@ -2194,9 +2210,10 @@ fctx_finddone(isc_task_t *task, isc_event_t *event) { + */ + INSIST(!SHUTTINGDOWN(fctx)); + fctx->attributes &= ~FCTX_ATTR_ADDRWAIT; +- if (event->ev_type == DNS_EVENT_ADBMOREADDRESSES) ++ if (event->ev_type == DNS_EVENT_ADBMOREADDRESSES) { + want_try = ISC_TRUE; +- else { ++ fctx->totalqueries += find->qtotal; ++ } else { + fctx->findfail++; + if (fctx->pending == 0) { + /* +@@ -2479,12 +2496,13 @@ findname(fetchctx_t *fctx, dns_name_t *name, in_port_t port, + * See what we know about this address. + */ + find = NULL; +- result = dns_adb_createfind(fctx->adb, +- res->buckets[fctx->bucketnum].task, +- fctx_finddone, fctx, name, +- &fctx->name, fctx->type, +- options, now, NULL, +- res->view->dstport, &find); ++ result = dns_adb_createfind2(fctx->adb, ++ res->buckets[fctx->bucketnum].task, ++ fctx_finddone, fctx, name, ++ &fctx->name, fctx->type, ++ options, now, NULL, ++ res->view->dstport, ++ fctx->depth + 1, &find); + if (result != ISC_R_SUCCESS) { + if (result == DNS_R_ALIAS) { + /* +@@ -2592,6 +2610,11 @@ fctx_getaddresses(fetchctx_t *fctx, isc_boolean_t badcache) { + + res = fctx->res; + ++ if (fctx->depth > res->maxdepth) { ++ FCTXTRACE("too much NS indirection"); ++ return (DNS_R_SERVFAIL); ++ } ++ + /* + * Forwarders. + */ +@@ -3030,6 +3053,9 @@ fctx_try(fetchctx_t *fctx, isc_boolean_t retrying, isc_boolean_t badcache) { + + REQUIRE(!ADDRWAIT(fctx)); + ++ if (fctx->totalqueries > DEFAULT_MAX_QUERIES) ++ fctx_done(fctx, DNS_R_SERVFAIL, __LINE__); ++ + addrinfo = fctx_nextaddress(fctx); + if (addrinfo == NULL) { + /* +@@ -3388,6 +3414,7 @@ fctx_start(isc_task_t *task, isc_event_t *event) { + * Normal fctx startup. + */ + fctx->state = fetchstate_active; ++ fctx->totalqueries = 0; + /* + * Reset the control event for later use in shutting down + * the fctx. +@@ -3457,6 +3484,7 @@ fctx_join(fetchctx_t *fctx, isc_task_t *task, isc_sockaddr_t *client, + event->fetch = fetch; + event->client = client; + event->id = id; ++ event->qtotal = 0; + dns_fixedname_init(&event->foundname); + + /* +@@ -3493,7 +3521,8 @@ log_ns_ttl(fetchctx_t *fctx, const char *where) { + static isc_result_t + fctx_create(dns_resolver_t *res, dns_name_t *name, dns_rdatatype_t type, + dns_name_t *domain, dns_rdataset_t *nameservers, +- unsigned int options, unsigned int bucketnum, fetchctx_t **fctxp) ++ unsigned int options, unsigned int bucketnum, unsigned int depth, ++ fetchctx_t **fctxp) + { + fetchctx_t *fctx; + isc_result_t result; +@@ -3545,6 +3574,7 @@ fctx_create(dns_resolver_t *res, dns_name_t *name, dns_rdatatype_t type, + fctx->state = fetchstate_init; + fctx->want_shutdown = ISC_FALSE; + fctx->cloned = ISC_FALSE; ++ fctx->depth = depth; + ISC_LIST_INIT(fctx->queries); + ISC_LIST_INIT(fctx->finds); + ISC_LIST_INIT(fctx->altfinds); +@@ -3563,6 +3593,7 @@ fctx_create(dns_resolver_t *res, dns_name_t *name, dns_rdatatype_t type, + fctx->pending = 0; + fctx->restarts = 0; + fctx->querysent = 0; ++ fctx->totalqueries = 0; + fctx->referrals = 0; + TIME_NOW(&fctx->start); + fctx->timeouts = 0; +@@ -7781,6 +7812,7 @@ dns_resolver_create(dns_view_t *view, + res->spillattimer = NULL; + res->zero_no_soa_ttl = ISC_FALSE; + res->query_timeout = DEFAULT_QUERY_TIMEOUT; ++ res->maxdepth = DEFAULT_RECURSION_DEPTH; + res->nbuckets = ntasks; + res->activebuckets = ntasks; + res->buckets = isc_mem_get(view->mctx, +@@ -8219,9 +8251,9 @@ dns_resolver_createfetch(dns_resolver_t *res, dns_name_t *name, + dns_rdataset_t *sigrdataset, + dns_fetch_t **fetchp) + { +- return (dns_resolver_createfetch2(res, name, type, domain, ++ return (dns_resolver_createfetch3(res, name, type, domain, + nameservers, forwarders, NULL, 0, +- options, task, action, arg, ++ options, 0, task, action, arg, + rdataset, sigrdataset, fetchp)); + } + +@@ -8237,6 +8269,25 @@ dns_resolver_createfetch2(dns_resolver_t *res, dns_name_t *name, + dns_rdataset_t *sigrdataset, + dns_fetch_t **fetchp) + { ++ return (dns_resolver_createfetch3(res, name, type, domain, ++ nameservers, forwarders, client, id, ++ options, 0, task, action, arg, ++ rdataset, sigrdataset, fetchp)); ++} ++ ++isc_result_t ++dns_resolver_createfetch3(dns_resolver_t *res, dns_name_t *name, ++ dns_rdatatype_t type, ++ dns_name_t *domain, dns_rdataset_t *nameservers, ++ dns_forwarders_t *forwarders, ++ isc_sockaddr_t *client, dns_messageid_t id, ++ unsigned int options, unsigned int depth, ++ isc_task_t *task, ++ isc_taskaction_t action, void *arg, ++ dns_rdataset_t *rdataset, ++ dns_rdataset_t *sigrdataset, ++ dns_fetch_t **fetchp) ++{ + dns_fetch_t *fetch; + fetchctx_t *fctx = NULL; + isc_result_t result = ISC_R_SUCCESS; +@@ -8325,11 +8376,12 @@ dns_resolver_createfetch2(dns_resolver_t *res, dns_name_t *name, + + if (fctx == NULL) { + result = fctx_create(res, name, type, domain, nameservers, +- options, bucketnum, &fctx); ++ options, bucketnum, depth, &fctx); + if (result != ISC_R_SUCCESS) + goto unlock; + new_fctx = ISC_TRUE; +- } ++ } else if (fctx->depth > depth) ++ fctx->depth = depth; + + result = fctx_join(fctx, task, client, id, action, arg, + rdataset, sigrdataset, fetch); +@@ -9101,3 +9153,15 @@ dns_resolver_settimeout(dns_resolver_t *resolver, unsigned int seconds) { + + resolver->query_timeout = seconds; + } ++ ++void ++dns_resolver_setmaxdepth(dns_resolver_t *resolver, unsigned int maxdepth) { ++ REQUIRE(VALID_RESOLVER(resolver)); ++ resolver->maxdepth = maxdepth; ++} ++ ++unsigned int ++dns_resolver_getmaxdepth(dns_resolver_t *resolver) { ++ REQUIRE(VALID_RESOLVER(resolver)); ++ return (resolver->maxdepth); ++} +diff --git a/lib/isccfg/namedconf.c b/lib/isccfg/namedconf.c +index bfd4bab..5f8b037 100644 +--- a/lib/isccfg/namedconf.c ++++ b/lib/isccfg/namedconf.c +@@ -1393,6 +1393,7 @@ view_clauses[] = { + { "max-cache-ttl", &cfg_type_uint32, 0 }, + { "max-clients-per-query", &cfg_type_uint32, 0 }, + { "max-ncache-ttl", &cfg_type_uint32, 0 }, ++ { "max-recursion-depth", &cfg_type_uint32, 0 }, + { "max-udp-size", &cfg_type_uint32, 0 }, + { "min-roots", &cfg_type_uint32, CFG_CLAUSEFLAG_NOTIMP }, + { "minimal-responses", &cfg_type_boolean, 0 }, +-- +1.9.1 + diff --git a/meta/recipes-connectivity/bind/bind/conf.patch b/meta/recipes-connectivity/bind/bind/conf.patch index 2785c6a22f..aad345f9fc 100644 --- a/meta/recipes-connectivity/bind/bind/conf.patch +++ b/meta/recipes-connectivity/bind/bind/conf.patch @@ -55,6 +55,22 @@ diff -urN bind-9.3.1.orig/conf/db.empty bind-9.3.1/conf/db.empty + 86400 ) ; Negative Cache TTL +; +@ IN NS localhost. +diff -urN bind-9.3.1.orig/conf/db.255 bind-9.3.1/conf/db.255 +--- bind-9.3.1.orig/conf/db.255 1970-01-01 01:00:00.000000000 +0100 ++++ bind-9.3.1/conf/db.255 2005-07-10 22:14:00.000000000 +0200 +@@ -0,0 +1,12 @@ ++; ++; BIND reserve data file for broadcast zone ++; ++$TTL 604800 ++@ IN SOA localhost. root.localhost. ( ++ 1 ; Serial ++ 604800 ; Refresh ++ 86400 ; Retry ++ 2419200 ; Expire ++ 604800 ) ; Negative Cache TTL ++; ++@ IN NS localhost. diff -urN bind-9.3.1.orig/conf/db.local bind-9.3.1/conf/db.local --- bind-9.3.1.orig/conf/db.local 1970-01-01 01:00:00.000000000 +0100 +++ bind-9.3.1/conf/db.local 2005-07-10 22:14:00.000000000 +0200 @@ -261,7 +277,7 @@ diff -urN bind-9.3.1.orig/init.d bind-9.3.1/init.d + modprobe capability >/dev/null 2>&1 || true + if [ ! -f /etc/bind/rndc.key ]; then + /usr/sbin/rndc-confgen -a -b 512 -r /dev/urandom -+ chown 0640 /etc/bind/rndc.key ++ chmod 0640 /etc/bind/rndc.key + fi + if [ -f /var/run/named/named.pid ]; then + ps `cat /var/run/named/named.pid` > /dev/null && exit 1 diff --git a/meta/recipes-connectivity/bind/bind/generate-rndc-key.sh b/meta/recipes-connectivity/bind/bind/generate-rndc-key.sh index c2e88bf127..db201270fa 100644 --- a/meta/recipes-connectivity/bind/bind/generate-rndc-key.sh +++ b/meta/recipes-connectivity/bind/bind/generate-rndc-key.sh @@ -3,5 +3,5 @@ if [ ! -s /etc/bind/rndc.key ]; then echo -n "Generating /etc/bind/rndc.key:" /usr/sbin/rndc-confgen -a -b 512 -r /dev/urandom - chown 0640 /etc/bind/rndc.key + chmod 0640 /etc/bind/rndc.key fi diff --git a/meta/recipes-connectivity/bind/bind/named.service b/meta/recipes-connectivity/bind/bind/named.service index 1792e414ab..cda56ef015 100644 --- a/meta/recipes-connectivity/bind/bind/named.service +++ b/meta/recipes-connectivity/bind/bind/named.service @@ -6,7 +6,7 @@ After=network.target [Service] Type=forking -EnvironmentFile=-/etc/sysconfig/named +EnvironmentFile=-/etc/default/bind9 PIDFile=/run/named/named.pid ExecStartPre=@SBINDIR@/generate-rndc-key.sh diff --git a/meta/recipes-connectivity/bind/bind_9.9.5.bb b/meta/recipes-connectivity/bind/bind_9.9.5.bb index de10eb8029..e34cdedde7 100644 --- a/meta/recipes-connectivity/bind/bind_9.9.5.bb +++ b/meta/recipes-connectivity/bind/bind_9.9.5.bb @@ -15,7 +15,12 @@ SRC_URI = "ftp://ftp.isc.org/isc/bind9/${PV}/${BPN}-${PV}.tar.gz \ file://dont-test-on-host.patch \ file://generate-rndc-key.sh \ file://named.service \ + file://bind9 \ file://init.d-add-support-for-read-only-rootfs.patch \ + file://bind9_9_5-CVE-2014-8500.patch \ + file://bind-add-crosscripts-search-path-for-xml2-config.patch \ + file://bind-subdirs-run-serially.patch \ + file://bind-confgen-build-unix.o-once.patch \ " SRC_URI[md5sum] = "e676c65cad5234617ee22f48e328c24e" @@ -27,10 +32,18 @@ EXTRA_OECONF = " ${ENABLE_IPV6} --with-randomdev=/dev/random --disable-threads \ --disable-devpoll --disable-epoll --with-gost=no \ --with-gssapi=no --with-ecdsa=yes \ --sysconfdir=${sysconfdir}/bind \ - --with-openssl=${STAGING_LIBDIR}/.. --with-libxml2=${STAGING_LIBDIR}/.. \ + --with-openssl=${STAGING_LIBDIR}/.. \ --enable-exportlib --with-export-includedir=${includedir} --with-export-libdir=${libdir} \ " -inherit autotools-brokensep update-rc.d systemd +inherit autotools-brokensep update-rc.d systemd useradd pkgconfig + +PACKAGECONFIG ?= "libxml2" + +PACKAGECONFIG[libxml2] = "--with-libxml2=${STAGING_LIBDIR}/..,--with-libxml2=no,libxml2" + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM_${PN} = "--system --home /var/cache/bind --no-create-home \ + --user-group bind" INITSCRIPT_NAME = "bind" INITSCRIPT_PARAMS = "defaults" @@ -41,11 +54,18 @@ PARALLEL_MAKE = "" RDEPENDS_${PN} = "python-core" -PACKAGES_prepend = " ${PN}-utils " +PACKAGE_BEFORE_PN += "${PN}-utils" FILES_${PN}-utils = "${bindir}/host ${bindir}/dig" FILES_${PN}-dev += "${bindir}/isc-config.h" FILES_${PN} += "${sbindir}/generate-rndc-key.sh" +do_install_prepend() { + # clean host path in isc-config.sh before the hardlink created + # by "make install": + # bind9-config -> isc-config.sh + sed -i -e "s,${STAGING_LIBDIR},${libdir}," ${S}/isc-config.sh +} + do_install_append() { rm "${D}${bindir}/nslookup" rm "${D}${mandir}/man1/nslookup.1" @@ -67,6 +87,9 @@ do_install_append() { sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ -e 's,@SBINDIR@,${sbindir},g' \ ${D}${systemd_unitdir}/system/named.service + + install -d ${D}${sysconfdir}/default + install -m 0644 ${WORKDIR}/bind9 ${D}${sysconfdir}/default } CONFFILES_${PN} = " \ diff --git a/meta/recipes-connectivity/bluez/bluez-hcidump_2.5.bb b/meta/recipes-connectivity/bluez/bluez-hcidump_2.5.bb index 5c1f4760a8..3950630a86 100644 --- a/meta/recipes-connectivity/bluez/bluez-hcidump_2.5.bb +++ b/meta/recipes-connectivity/bluez/bluez-hcidump_2.5.bb @@ -3,7 +3,9 @@ DESCRIPTION = "The hcidump tool reads raw HCI data coming from and going to a Bl and displays the commands, events and data in a human-readable form." SECTION = "console" +# hcidump was integrated into bluez5 DEPENDS = "bluez4" +RCONFLICTS_${PN} = "bluez5" LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \ file://src/hcidump.c;beginline=1;endline=23;md5=3bee3a162dff43a5be7470710b99fbcf" diff --git a/meta/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb b/meta/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb index f2dc0da06c..c71d61253a 100644 --- a/meta/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb +++ b/meta/recipes-connectivity/bluez/gst-plugin-bluetooth_4.101.bb @@ -25,6 +25,7 @@ do_install_append() { rm -rf ${D}${libdir}/alsa-lib rm -rf ${D}${datadir} rm -rf ${D}${includedir} + rm -rf ${D}${nonarch_base_libdir} } FILES_${PN} = "${libdir}/gstreamer-0.10/lib*.so" diff --git a/meta/recipes-connectivity/bluez5/bluez5.inc b/meta/recipes-connectivity/bluez5/bluez5.inc index c3dd946517..67aafbbd6f 100644 --- a/meta/recipes-connectivity/bluez5/bluez5.inc +++ b/meta/recipes-connectivity/bluez5/bluez5.inc @@ -7,11 +7,14 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \ file://src/main.c;beginline=1;endline=24;md5=9bc54b93cd7e17bf03f52513f39f926e" DEPENDS = "udev libusb dbus-glib glib-2.0 libcheck readline" +PROVIDES += "bluez-hcidump" +RPROVIDES_${PN} += "bluez-hcidump" RCONFLICTS_${PN} = "bluez4" PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)} obex-profiles" PACKAGECONFIG[obex-profiles] = "--enable-obex,--disable-obex,libical" +PACKAGECONFIG[experimental] = "--enable-experimental,--disable-experimental," SRC_URI = "\ ${KERNELORG_MIRROR}/linux/bluetooth/bluez-${PV}.tar.xz \ @@ -26,10 +29,19 @@ EXTRA_OECONF = "\ --disable-cups \ --enable-test \ --enable-datafiles \ - ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdunitdir=${systemd_unitdir}/system/', '--disable-systemd', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--enable-systemd', '--disable-systemd', d)} \ --enable-library \ " +# bluez5 builds a large number of useful utilities but does not +# install them. Specify which ones we want put into ${PN}-noinst-tools. +NOINST_TOOLS_READLINE ??= "" +NOINST_TOOLS_EXPERIMENTAL ??= "" +NOINST_TOOLS = " \ + ${NOINST_TOOLS_READLINE} \ + ${@bb.utils.contains('PACKAGECONFIG', 'experimental', '${NOINST_TOOLS_EXPERIMENTAL}', '', d)} \ +" + do_install_append() { install -d ${D}${sysconfdir}/bluetooth/ if [ -f ${S}/profiles/audio/audio.conf ]; then @@ -43,10 +55,15 @@ do_install_append() { fi # at_console doesn't really work with the current state of OE, so punch some more holes so people can actually use BT install -m 0644 ${WORKDIR}/bluetooth.conf ${D}/${sysconfdir}/dbus-1/system.d/ + + # Install desired tools that upstream leaves in build area + for f in ${NOINST_TOOLS} ; do + install -m 755 ${B}/$f ${D}/${bindir} + done } ALLOW_EMPTY_libasound-module-bluez = "1" -PACKAGES =+ "libasound-module-bluez ${PN}-testtools ${PN}-obex" +PACKAGES =+ "libasound-module-bluez ${PN}-testtools ${PN}-obex ${PN}-noinst-tools" FILES_libasound-module-bluez = "${libdir}/alsa-lib/lib*.so ${datadir}/alsa" FILES_${PN} += "${libdir}/bluetooth/plugins ${libdir}/bluetooth/plugins/*.so ${base_libdir}/udev/ ${nonarch_base_libdir}/udev/ ${systemd_unitdir}/ ${datadir}/dbus-1" @@ -63,6 +80,16 @@ SYSTEMD_SERVICE_${PN}-obex = "obex.service" FILES_${PN}-testtools = "${libdir}/bluez/test/*" +def get_noinst_tools_paths (d, bb, tools): + s = list() + bindir = d.getVar("bindir", True) + for bdp in tools.split(): + f = os.path.basename(bdp) + s.append("%s/%s" % (bindir, f)) + return "\n".join(s) + +FILES_${PN}-noinst-tools = "${@get_noinst_tools_paths(d, bb, d.getVar('NOINST_TOOLS', True))}" + FILES_${PN}-dbg += "\ ${libdir}/${BPN}/bluetooth/.debug \ ${libdir}/bluetooth/plugins/.debug \ diff --git a/meta/recipes-connectivity/bluez5/bluez5/bluetooth.conf b/meta/recipes-connectivity/bluez5/bluez5/bluetooth.conf index e21e72e3ec..26845bb73c 100644 --- a/meta/recipes-connectivity/bluez5/bluez5/bluetooth.conf +++ b/meta/recipes-connectivity/bluez5/bluez5/bluetooth.conf @@ -11,6 +11,7 @@ <allow own="org.bluez"/> <allow send_destination="org.bluez"/> <allow send_interface="org.bluez.Agent1"/> + <allow send_type="method_call"/> </policy> </busconfig> diff --git a/meta/recipes-connectivity/bluez5/bluez5_5.20.bb b/meta/recipes-connectivity/bluez5/bluez5_5.20.bb deleted file mode 100644 index 1f4476a157..0000000000 --- a/meta/recipes-connectivity/bluez5/bluez5_5.20.bb +++ /dev/null @@ -1,3 +0,0 @@ -require bluez5.inc -SRC_URI[md5sum] = "177d4551f76e5933cc467c3abc6d3796" -SRC_URI[sha256sum] = "531fbaa0a9baf7b1f76fb8fd8975c20d3cc61cdc772a39d63df1d6abfc2a7481" diff --git a/meta/recipes-connectivity/bluez5/bluez5_5.28.bb b/meta/recipes-connectivity/bluez5/bluez5_5.28.bb new file mode 100644 index 0000000000..e816998b63 --- /dev/null +++ b/meta/recipes-connectivity/bluez5/bluez5_5.28.bb @@ -0,0 +1,52 @@ +require bluez5.inc +SRC_URI[md5sum] = "bc20a8285530758c68f6a60e4ca62a15" +SRC_URI[sha256sum] = "85bab48f4b47a158739028682c1e09cf30099c8ea9dfe63360055f8e06fc18a9" + +# noinst programs in Makefile.tools that are conditional on READLINE +# support +NOINST_TOOLS_READLINE ?= " \ + attrib/gatttool \ + tools/obex-client-tool \ + tools/obex-server-tool \ + tools/bluetooth-player \ + tools/obexctl \ +" + +# noinst programs in Makefile.tools that are conditional on EXPERIMENTAL +# support +NOINST_TOOLS_EXPERIMENTAL ?= " \ + emulator/btvirt \ + emulator/b1ee \ + emulator/hfp \ + tools/3dsp \ + tools/mgmt-tester \ + tools/gap-tester \ + tools/l2cap-tester \ + tools/sco-tester \ + tools/smp-tester \ + tools/hci-tester \ + tools/rfcomm-tester \ + tools/bdaddr \ + tools/avinfo \ + tools/avtest \ + tools/scotest \ + tools/amptest \ + tools/hwdb \ + tools/hcieventmask \ + tools/hcisecfilter \ + tools/btmgmt \ + tools/btinfo \ + tools/btattach \ + tools/btsnoop \ + tools/btproxy \ + tools/btiotest \ + tools/mcaptest \ + tools/cltest \ + tools/oobtest \ + tools/seq2bseq \ + tools/ibeacon \ + tools/btgatt-client \ + tools/btgatt-server \ + tools/gatt-service \ + profiles/iap/iapd \ +" diff --git a/meta/recipes-connectivity/connman/connman-conf.bb b/meta/recipes-connectivity/connman/connman-conf.bb index af726401e2..2358d9df09 100644 --- a/meta/recipes-connectivity/connman/connman-conf.bb +++ b/meta/recipes-connectivity/connman/connman-conf.bb @@ -9,6 +9,8 @@ SRC_URI_append_qemuall = "file://wired.config \ " PR = "r2" +S = "${WORKDIR}" + PACKAGE_ARCH = "${MACHINE_ARCH}" FILES_${PN} = "${localstatedir}/* ${libdir}/*" diff --git a/meta/recipes-connectivity/connman/connman-gnome/connman-gnome-fix-dbus-interface-name.patch b/meta/recipes-connectivity/connman/connman-gnome/connman-gnome-fix-dbus-interface-name.patch new file mode 100644 index 0000000000..f4049fa3e2 --- /dev/null +++ b/meta/recipes-connectivity/connman/connman-gnome/connman-gnome-fix-dbus-interface-name.patch @@ -0,0 +1,187 @@ +connman-gnome: fix dbus interface name + +This patch resolves following error: + +"connman-dbus.xml": "connman" is not a valid D-Bus interface name + +https://502552.bugs.gentoo.org/attachment.cgi?id=380652 + +Upstream-Status: Backport + +Signed-off-by: Chong Lu <Chong.Lu@windriver.com> +--- + common/connman-client.c | 24 ++++++++++++------------ + common/connman-client.h | 4 ++-- + common/connman-dbus.c | 6 +++--- + common/connman-dbus.xml | 2 +- + 4 files changed, 18 insertions(+), 18 deletions(-) + +diff --git a/common/connman-client.c b/common/connman-client.c +index c55e25c..9d818b2 100644 +--- a/common/connman-client.c ++++ b/common/connman-client.c +@@ -289,7 +289,7 @@ gboolean connman_client_set_ipv4(ConnmanClient *client, const gchar *device, + + g_value_init(&value, DBUS_TYPE_G_DICTIONARY); + g_value_set_boxed(&value, ipv4); +- ret = connman_set_property(proxy, "IPv4.Configuration", &value, NULL); ++ ret = net_connman_set_property(proxy, "IPv4.Configuration", &value, NULL); + + g_object_unref(proxy); + +@@ -317,7 +317,7 @@ void connman_client_set_powered(ConnmanClient *client, const gchar *device, + g_value_set_boolean(&value, powered); + + error = NULL; +- connman_set_property(proxy, "Powered", &value, &error); ++ net_connman_set_property(proxy, "Powered", &value, &error); + if( error ) + fprintf (stderr, "error: %s\n", error->message); + +@@ -325,7 +325,7 @@ void connman_client_set_powered(ConnmanClient *client, const gchar *device, + } + + void connman_client_scan(ConnmanClient *client, const gchar *device, +- connman_scan_reply callback, gpointer user_data) ++ net_connman_scan_reply callback, gpointer user_data) + { + ConnmanClientPrivate *priv = CONNMAN_CLIENT_GET_PRIVATE(client); + DBusGProxy *proxy; +@@ -339,7 +339,7 @@ void connman_client_scan(ConnmanClient *client, const gchar *device, + if (proxy == NULL) + return; + +- connman_scan_async(proxy, callback, user_data); ++ net_connman_scan_async(proxy, callback, user_data); + + g_object_unref(proxy); + } +@@ -353,7 +353,7 @@ gboolean connman_client_get_offline_status(ConnmanClient *client) + + DBG("client %p", client); + +- ret = connman_get_properties(priv->manager, &hash, NULL); ++ ret = net_connman_get_properties(priv->manager, &hash, NULL); + + if (ret == FALSE) + goto done; +@@ -375,7 +375,7 @@ void connman_client_set_offlinemode(ConnmanClient *client, gboolean status) + g_value_init(&value, G_TYPE_BOOLEAN); + g_value_set_boolean(&value, status); + +- connman_set_property(priv->manager, "OfflineMode", &value, NULL); ++ net_connman_set_property(priv->manager, "OfflineMode", &value, NULL); + } + + static gboolean network_disconnect(GtkTreeModel *model, GtkTreePath *path, +@@ -398,7 +398,7 @@ static gboolean network_disconnect(GtkTreeModel *model, GtkTreePath *path, + return TRUE; + + if (type == CONNMAN_TYPE_WIFI) +- connman_disconnect(proxy, NULL); ++ net_connman_disconnect(proxy, NULL); + + g_object_unref(proxy); + +@@ -422,13 +422,13 @@ void connman_client_connect(ConnmanClient *client, const gchar *network) + if (proxy == NULL) + return; + +- connman_connect(proxy, NULL); ++ net_connman_connect(proxy, NULL); + + g_object_unref(proxy); + } + + void connman_client_connect_async(ConnmanClient *client, const gchar *network, +- connman_connect_reply callback, gpointer userdata) ++ net_connman_connect_reply callback, gpointer userdata) + { + ConnmanClientPrivate *priv = CONNMAN_CLIENT_GET_PRIVATE(client); + DBusGProxy *proxy; +@@ -446,7 +446,7 @@ void connman_client_connect_async(ConnmanClient *client, const gchar *network, + if (proxy == NULL) + goto done; + +- connman_connect_async(proxy, callback, userdata); ++ net_connman_connect_async(proxy, callback, userdata); + + done: + return; +@@ -476,7 +476,7 @@ void connman_client_disconnect(ConnmanClient *client, const gchar *network) + if (proxy == NULL) + return; + +- connman_disconnect(proxy, NULL); ++ net_connman_disconnect(proxy, NULL); + + g_object_unref(proxy); + } +@@ -532,7 +532,7 @@ void connman_client_remove(ConnmanClient *client, const gchar *network) + if (proxy == NULL) + return; + +- connman_remove(proxy, NULL); ++ net_connman_remove(proxy, NULL); + + g_object_unref(proxy); + } +diff --git a/common/connman-client.h b/common/connman-client.h +index 9e2e6d5..98241de 100644 +--- a/common/connman-client.h ++++ b/common/connman-client.h +@@ -70,13 +70,13 @@ void connman_client_set_powered(ConnmanClient *client, const gchar *device, + gboolean connman_client_set_ipv4(ConnmanClient *client, const gchar *device, + struct ipv4_config *ipv4_config); + void connman_client_scan(ConnmanClient *client, const gchar *device, +- connman_scan_reply callback, gpointer user_data); ++ net_connman_scan_reply callback, gpointer user_data); + + void connman_client_connect(ConnmanClient *client, const gchar *network); + void connman_client_disconnect(ConnmanClient *client, const gchar *network); + gchar *connman_client_get_security(ConnmanClient *client, const gchar *network); + void connman_client_connect_async(ConnmanClient *client, const gchar *network, +- connman_connect_reply callback, gpointer userdata); ++ net_connman_connect_reply callback, gpointer userdata); + void connman_client_set_remember(ConnmanClient *client, const gchar *network, + gboolean remember); + +diff --git a/common/connman-dbus.c b/common/connman-dbus.c +index b82b3e1..543eb43 100644 +--- a/common/connman-dbus.c ++++ b/common/connman-dbus.c +@@ -655,15 +655,15 @@ DBusGProxy *connman_dbus_create_manager(DBusGConnection *conn, + + DBG("getting manager properties"); + +- connman_get_properties_async(proxy, manager_properties, store); ++ net_connman_get_properties_async(proxy, manager_properties, store); + + DBG("getting technologies"); + +- connman_get_technologies_async(proxy, manager_technologies, store); ++ net_connman_get_technologies_async(proxy, manager_technologies, store); + + DBG("getting services"); + +- connman_get_services_async(proxy, manager_services, store); ++ net_connman_get_services_async(proxy, manager_services, store); + + return proxy; + } +diff --git a/common/connman-dbus.xml b/common/connman-dbus.xml +index 56b9582..0199d52 100644 +--- a/common/connman-dbus.xml ++++ b/common/connman-dbus.xml +@@ -1,7 +1,7 @@ + <?xml version="1.0" encoding="UTF-8" ?> + + <node name="/"> +- <interface name="connman"> ++ <interface name="net.connman"> + <method name="GetProperties"> + <arg type="a{sv}" direction="out"/> + </method> +-- +1.9.1 + diff --git a/meta/recipes-connectivity/connman/connman-gnome_0.7.bb b/meta/recipes-connectivity/connman/connman-gnome_0.7.bb index 6688739766..f5575d2938 100644 --- a/meta/recipes-connectivity/connman/connman-gnome_0.7.bb +++ b/meta/recipes-connectivity/connman/connman-gnome_0.7.bb @@ -11,9 +11,10 @@ DEPENDS = "gtk+ dbus-glib intltool-native" # 0.7 tag SRCREV = "cf3c325b23dae843c5499a113591cfbc98acb143" SRC_URI = "git://github.com/connectivity/connman-gnome.git \ - file://0001-Removed-icon-from-connman-gnome-about-applet.patch \ - file://null_check_for_ipv4_config.patch \ - file://images/* \ + file://0001-Removed-icon-from-connman-gnome-about-applet.patch \ + file://null_check_for_ipv4_config.patch \ + file://images/* \ + file://connman-gnome-fix-dbus-interface-name.patch \ " S = "${WORKDIR}/git" diff --git a/meta/recipes-connectivity/connman/connman.inc b/meta/recipes-connectivity/connman/connman.inc index f121a81f1e..1062641cec 100644 --- a/meta/recipes-connectivity/connman/connman.inc +++ b/meta/recipes-connectivity/connman/connman.inc @@ -13,6 +13,8 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ file://src/main.c;beginline=1;endline=20;md5=486a279a6ab0c8d152bcda3a5b5edc36" +inherit bluetooth + DEPENDS = "dbus glib-2.0 ppp iptables" INC_PR = "r20" @@ -27,12 +29,12 @@ EXTRA_OECONF += "\ --enable-test \ --disable-polkit \ --enable-client \ - ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdunitdir=${systemd_unitdir}/system/', '--with-systemdunitdir=', d)} \ " PACKAGECONFIG ??= "wispr \ + ${@bb.utils.contains('DISTRO_FEATURES', 'systemd','systemd', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'wifi','wifi', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth','bluetooth', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', '3g','3g', '', d)} \ " @@ -40,8 +42,9 @@ PACKAGECONFIG ??= "wispr \ # local.conf or distro config # PACKAGECONFIG_append_pn-connman = " openvpn vpnc l2tp pptp" +PACKAGECONFIG[systemd] = "--with-systemdunitdir=${systemd_unitdir}/system/,--with-systemdunitdir=" PACKAGECONFIG[wifi] = "--enable-wifi, --disable-wifi, wpa-supplicant" -PACKAGECONFIG[bluetooth] = "--enable-bluetooth, --disable-bluetooth, bluez4" +PACKAGECONFIG[bluez] = "--enable-bluetooth, --disable-bluetooth, ${BLUEZ}" PACKAGECONFIG[3g] = "--enable-ofono, --disable-ofono, ofono" PACKAGECONFIG[tist] = "--enable-tist,--disable-tist," PACKAGECONFIG[openvpn] = "--enable-openvpn --with-openvpn=${sbindir}/openvpn,--disable-openvpn,,openvpn" @@ -66,18 +69,18 @@ SYSTEMD_SERVICE_${PN} = "connman.service" SYSTEMD_SERVICE_${PN}-vpn = "connman-vpn.service" SYSTEMD_WIRED_SETUP = "ExecStartPre=-${libdir}/connman/wired-setup" -inherit autotools-brokensep pkgconfig systemd update-rc.d +inherit autotools pkgconfig systemd update-rc.d do_configure_append () { - sed -i "s#ExecStart=#${SYSTEMD_WIRED_SETUP}\nExecStart=#" ${S}/src/connman.service + sed -i "s#ExecStart=#${SYSTEMD_WIRED_SETUP}\nExecStart=#" ${B}/src/connman.service } # This allows *everyone* to access ConnMan over DBus, without any access # control. Really the at_console flag should work, which would mean that # both this and the xuser patch can be dropped. do_compile_append() { - sed -i -e s:deny:allow:g src/connman-dbus.conf - sed -i -e s:deny:allow:g vpn/vpn-dbus.conf + sed -i -e s:deny:allow:g ${S}/src/connman-dbus.conf + sed -i -e s:deny:allow:g ${S}/vpn/vpn-dbus.conf } do_install_append() { @@ -88,9 +91,9 @@ do_install_append() { fi install -d ${D}${bindir} - install -m 0755 ${S}/tools/*-test ${D}${bindir} - if [ -e ${S}/tools/wispr ]; then - install -m 0755 ${S}/tools/wispr ${D}${bindir} + install -m 0755 ${B}/tools/*-test ${D}${bindir} + if [ -e ${B}/tools/wispr ]; then + install -m 0755 ${B}/tools/wispr ${D}${bindir} fi install -m 0755 ${B}/client/connmanctl ${D}${bindir} @@ -113,7 +116,7 @@ RPROVIDES_${PN} = "\ RDEPENDS_${PN} = "\ dbus \ - ${@bb.utils.contains('PACKAGECONFIG', 'bluetooth', 'bluez4', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'bluetooth', '${BLUEZ}', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'wifi','wpa-supplicant', '', d)} \ ${@bb.utils.contains('PACKAGECONFIG', '3g','ofono', '', d)} \ xuser-account \ diff --git a/meta/recipes-connectivity/connman/connman_1.24.bb b/meta/recipes-connectivity/connman/connman_1.28.bb index 66a8c58681..53e71fa000 100644 --- a/meta/recipes-connectivity/connman/connman_1.24.bb +++ b/meta/recipes-connectivity/connman/connman_1.28.bb @@ -5,7 +5,8 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \ file://add_xuser_dbus_permission.patch \ file://connman \ " -SRC_URI[md5sum] = "dd6e1b4d9b9a28d127edb9f9b58bdec1" -SRC_URI[sha256sum] = "551df7a5f0c6e4d69523dd2b3aa2c54525b323457d5135f64816215bad3dc24c" +SRC_URI[md5sum] = "6e07c93877f80bb73c9d4dbfc697f3fc" +SRC_URI[sha256sum] = "b1d5e7dd2652725906e220a8b0206477e97080e835272971e3b2fd10943c5c94" RRECOMMENDS_${PN} = "connman-conf" + diff --git a/meta/recipes-connectivity/dhcp/dhcp.inc b/meta/recipes-connectivity/dhcp/dhcp.inc index 512127cd4c..6ced77500a 100644 --- a/meta/recipes-connectivity/dhcp/dhcp.inc +++ b/meta/recipes-connectivity/dhcp/dhcp.inc @@ -13,12 +13,20 @@ LIC_FILES_CHKSUM = "file://LICENSE;beginline=4;md5=c5c64d696107f84b56fe337d14da1 DEPENDS = "openssl bind" SRC_URI = "ftp://ftp.isc.org/isc/dhcp/${PV}/dhcp-${PV}.tar.gz \ - file://site.h \ - file://init-relay file://default-relay \ - file://init-server file://default-server \ - file://dhclient.conf file://dhcpd.conf" + file://define-macro-_PATH_DHCPD_CONF-and-_PATH_DHCLIENT_CON.patch \ + file://init-relay file://default-relay \ + file://init-server file://default-server \ + file://dhclient.conf file://dhcpd.conf \ + file://dhcpd.service file://dhcrelay.service" -inherit autotools +inherit autotools systemd + +SYSTEMD_PACKAGES = "${PN}-server ${PN}-relay" +SYSTEMD_SERVICE_${PN}-server = "dhcpd.service" +SYSTEMD_AUTO_ENABLE_${PN}-server = "disable" + +SYSTEMD_SERVICE_${PN}-relay = "dhcrelay.service" +SYSTEMD_AUTO_ENABLE_${PN}-relay = "disable" TARGET_CFLAGS += "-D_GNU_SOURCE" EXTRA_OECONF = "--with-srv-lease-file=${localstatedir}/lib/dhcp/dhcpd.leases \ @@ -28,10 +36,6 @@ EXTRA_OECONF = "--with-srv-lease-file=${localstatedir}/lib/dhcp/dhcpd.leases \ --with-libbind=${STAGING_LIBDIR}/ \ " -do_compile_prepend () { - cp -f ${WORKDIR}/site.h ${S}/includes -} - do_install_append () { install -d ${D}${sysconfdir}/init.d install -d ${D}${sysconfdir}/default @@ -51,6 +55,13 @@ do_install_append () { mv ${D}${sbindir}/dhclient ${D}${base_sbindir}/ fi install -m 0755 ${S}/client/scripts/linux ${D}${base_sbindir}/dhclient-script + + # Install systemd unit files + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/dhcpd.service ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/dhcrelay.service ${D}${systemd_unitdir}/system + sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/dhcpd.service ${D}${systemd_unitdir}/system/dhcrelay.service + sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' ${D}${systemd_unitdir}/system/dhcpd.service } PACKAGES += "dhcp-server dhcp-server-config dhcp-client dhcp-relay dhcp-omshell" diff --git a/meta/recipes-connectivity/dhcp/dhcp/define-macro-_PATH_DHCPD_CONF-and-_PATH_DHCLIENT_CON.patch b/meta/recipes-connectivity/dhcp/dhcp/define-macro-_PATH_DHCPD_CONF-and-_PATH_DHCLIENT_CON.patch new file mode 100644 index 0000000000..12d3c9bdbd --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp/define-macro-_PATH_DHCPD_CONF-and-_PATH_DHCLIENT_CON.patch @@ -0,0 +1,26 @@ +define macro _PATH_DHCPD_CONF and _PATH_DHCLIENT_CONF + +Upstream-Status: inappropriate <oe specific> + +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> +--- + includes/site.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/includes/site.h b/includes/site.h +index d87b309..17bc40d 100644 +--- a/includes/site.h ++++ b/includes/site.h +@@ -139,7 +139,8 @@ + /* Define this if you want the dhcpd.conf file to go somewhere other than + the default location. By default, it goes in /etc/dhcpd.conf. */ + +-/* #define _PATH_DHCPD_CONF "/etc/dhcpd.conf" */ ++#define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" ++#define _PATH_DHCLIENT_CONF "/etc/dhcp/dhclient.conf" + + /* Network API definitions. You do not need to choose one of these - if + you don't choose, one will be chosen for you in your system's config +-- +1.9.1 + diff --git a/meta/recipes-connectivity/dhcp/dhcp/dhcp-xen-checksum.patch b/meta/recipes-connectivity/dhcp/dhcp/dhcp-xen-checksum.patch new file mode 100644 index 0000000000..62c279db12 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp/dhcp-xen-checksum.patch @@ -0,0 +1,307 @@ +dhcp-client: Ignore partial checksums + +dhclient will fail to get an IP address if run inside a guest when traffic is +flowing over a virtual network interface. The user will see the error +message: + + 5 bad udp checksums in 5 packets + No DHCPOFFERS received. + Unable to obtain a lease on first try. Exiting. + Failed to bring up eth0. + +This is because Linux only uses partial checksums for packets that go over +virtual network interfaces and dhclient does not like this. + + See linux kernel commit 78ea85f17b15390e30d8b47488ec7b6cf0790663 + ("net: skbuff: improve comment on checksumming") + +An application can detect this behaviour by checking for the +TP_STATUS_CSUMNOTREADY flag in the tp_status field. + + See linux kernel commit 8dc4194474159660d7f37c495e3fc3f10d0db8cc + ("Add optional checksum computation for recvmsg") + +An extra parameter is added to decode_udp_ip_header() in dhclient to indicate +whether or not dhclient should ignore partial checksums. This is used +when the TP_STATUS_CSUMNOTREADY bit is set by the guest kernel. + +This fix has been included in Fedora and Ubuntu, however it has not yet been +accepted by ISC upstream. Likely because it is specific to behaviour in Linux +and other UNIX variants do not seem to be affected. + +The patch was imported from the dhcp source RPM in Fedora 21 + (http://pkgs.fedoraproject.org/cgit/dhcp.git/tree/dhcp-xen-checksum.patch?h=f21) + +Originally contributed to fedora-cvs-commit by David Cantrell on Jan 30 2007 + (https://www.redhat.com/archives/fedora-cvs-commits/2007-January/msg01442.html) + +Submitted to dhcp-bugs@isc.org - [ISC-Bugs #22806] - by Michael S. Tsirkin + (http://comments.gmane.org/gmane.comp.emulators.kvm.devel/65236) + (https://lists.isc.org/pipermail/dhcp-hackers/2010-April/001835.html) + +Upstream-Status: Submitted [dhcp-bugs@isc.org] +Signed-off-by: Rob Woolley <rob.woolley@windriver.com> +-- + common/bpf.c | 2 - + common/dlpi.c | 2 - + common/lpf.c | 83 +++++++++++++++++++++++++++++++++++++++++-------------- + common/nit.c | 2 - + common/packet.c | 4 +- + common/upf.c | 2 - + includes/dhcpd.h | 2 - + 7 files changed, 70 insertions(+), 27 deletions(-) + +diff --git a/common/bpf.c b/common/bpf.c +--- a/common/bpf.c ++++ b/common/bpf.c +@@ -481,7 +481,7 @@ ssize_t receive_packet (interface, buf, + /* Decode the IP and UDP headers... */ + offset = decode_udp_ip_header(interface, interface->rbuf, + interface->rbuf_offset, +- from, hdr.bh_caplen, &paylen); ++ from, hdr.bh_caplen, &paylen, 0); + + /* If the IP or UDP checksum was bad, skip the packet... */ + if (offset < 0) { +diff --git a/common/dlpi.c b/common/dlpi.c +--- a/common/dlpi.c ++++ b/common/dlpi.c +@@ -691,7 +691,7 @@ ssize_t receive_packet (interface, buf, + length -= offset; + #endif + offset = decode_udp_ip_header (interface, dbuf, bufix, +- from, length, &paylen); ++ from, length, &paylen, 0); + + /* + * If the IP or UDP checksum was bad, skip the packet... +diff --git a/common/lpf.c b/common/lpf.c +--- a/common/lpf.c ++++ b/common/lpf.c +@@ -29,14 +29,15 @@ + + #include "dhcpd.h" + #if defined (USE_LPF_SEND) || defined (USE_LPF_RECEIVE) ++#include <sys/socket.h> + #include <sys/uio.h> + #include <errno.h> + + #include <asm/types.h> + #include <linux/filter.h> + #include <linux/if_ether.h> ++#include <linux/if_packet.h> + #include <netinet/in_systm.h> +-#include <net/if_packet.h> + #include "includes/netinet/ip.h" + #include "includes/netinet/udp.h" + #include "includes/netinet/if_ether.h" +@@ -51,6 +52,19 @@ + /* Reinitializes the specified interface after an address change. This + is not required for packet-filter APIs. */ + ++#ifndef PACKET_AUXDATA ++#define PACKET_AUXDATA 8 ++ ++struct tpacket_auxdata ++{ ++ __u32 tp_status; ++ __u32 tp_len; ++ __u32 tp_snaplen; ++ __u16 tp_mac; ++ __u16 tp_net; ++}; ++#endif ++ + #ifdef USE_LPF_SEND + void if_reinitialize_send (info) + struct interface_info *info; +@@ -73,10 +87,14 @@ int if_register_lpf (info) + struct interface_info *info; + { + int sock; +- struct sockaddr sa; ++ union { ++ struct sockaddr_ll ll; ++ struct sockaddr common; ++ } sa; ++ struct ifreq ifr; + + /* Make an LPF socket. */ +- if ((sock = socket(PF_PACKET, SOCK_PACKET, ++ if ((sock = socket(PF_PACKET, SOCK_RAW, + htons((short)ETH_P_ALL))) < 0) { + if (errno == ENOPROTOOPT || errno == EPROTONOSUPPORT || + errno == ESOCKTNOSUPPORT || errno == EPFNOSUPPORT || +@@ -91,11 +109,17 @@ int if_register_lpf (info) + log_fatal ("Open a socket for LPF: %m"); + } + ++ memset (&ifr, 0, sizeof ifr); ++ strncpy (ifr.ifr_name, (const char *)info -> ifp, sizeof ifr.ifr_name); ++ ifr.ifr_name[IFNAMSIZ-1] = '\0'; ++ if (ioctl (sock, SIOCGIFINDEX, &ifr)) ++ log_fatal ("Failed to get interface index: %m"); ++ + /* Bind to the interface name */ + memset (&sa, 0, sizeof sa); +- sa.sa_family = AF_PACKET; +- strncpy (sa.sa_data, (const char *)info -> ifp, sizeof sa.sa_data); +- if (bind (sock, &sa, sizeof sa)) { ++ sa.ll.sll_family = AF_PACKET; ++ sa.ll.sll_ifindex = ifr.ifr_ifindex; ++ if (bind (sock, &sa.common, sizeof sa)) { + if (errno == ENOPROTOOPT || errno == EPROTONOSUPPORT || + errno == ESOCKTNOSUPPORT || errno == EPFNOSUPPORT || + errno == EAFNOSUPPORT || errno == EINVAL) { +@@ -177,9 +201,18 @@ static void lpf_gen_filter_setup (struct + void if_register_receive (info) + struct interface_info *info; + { ++ int val; ++ + /* Open a LPF device and hang it on this interface... */ + info -> rfdesc = if_register_lpf (info); + ++ val = 1; ++ if (setsockopt (info -> rfdesc, SOL_PACKET, PACKET_AUXDATA, &val, ++ sizeof val) < 0) { ++ if (errno != ENOPROTOOPT) ++ log_fatal ("Failed to set auxiliary packet data: %m"); ++ } ++ + #if defined (HAVE_TR_SUPPORT) + if (info -> hw_address.hbuf [0] == HTYPE_IEEE802) + lpf_tr_filter_setup (info); +@@ -301,7 +334,6 @@ ssize_t send_packet (interface, packet, + double hh [16]; + double ih [1536 / sizeof (double)]; + unsigned char *buf = (unsigned char *)ih; +- struct sockaddr_pkt sa; + int result; + int fudge; + +@@ -322,17 +354,7 @@ ssize_t send_packet (interface, packet, + (unsigned char *)raw, len); + memcpy (buf + ibufp, raw, len); + +- /* For some reason, SOCK_PACKET sockets can't be connected, +- so we have to do a sentdo every time. */ +- memset (&sa, 0, sizeof sa); +- sa.spkt_family = AF_PACKET; +- strncpy ((char *)sa.spkt_device, +- (const char *)interface -> ifp, sizeof sa.spkt_device); +- sa.spkt_protocol = htons(ETH_P_IP); +- +- result = sendto (interface -> wfdesc, +- buf + fudge, ibufp + len - fudge, 0, +- (const struct sockaddr *)&sa, sizeof sa); ++ result = write (interface -> wfdesc, buf + fudge, ibufp + len - fudge); + if (result < 0) + log_error ("send_packet: %m"); + return result; +@@ -349,14 +371,35 @@ ssize_t receive_packet (interface, buf, + { + int length = 0; + int offset = 0; ++ int nocsum = 0; + unsigned char ibuf [1536]; + unsigned bufix = 0; + unsigned paylen; ++ unsigned char cmsgbuf[CMSG_LEN(sizeof(struct tpacket_auxdata))]; ++ struct iovec iov = { ++ .iov_base = ibuf, ++ .iov_len = sizeof ibuf, ++ }; ++ struct msghdr msg = { ++ .msg_iov = &iov, ++ .msg_iovlen = 1, ++ .msg_control = cmsgbuf, ++ .msg_controllen = sizeof(cmsgbuf), ++ }; ++ struct cmsghdr *cmsg; + +- length = read (interface -> rfdesc, ibuf, sizeof ibuf); ++ length = recvmsg (interface -> rfdesc, &msg, 0); + if (length <= 0) + return length; + ++ for (cmsg = CMSG_FIRSTHDR(&msg); cmsg; cmsg = CMSG_NXTHDR(&msg, cmsg)) { ++ if (cmsg->cmsg_level == SOL_PACKET && ++ cmsg->cmsg_type == PACKET_AUXDATA) { ++ struct tpacket_auxdata *aux = (void *)CMSG_DATA(cmsg); ++ nocsum = aux->tp_status & TP_STATUS_CSUMNOTREADY; ++ } ++ } ++ + bufix = 0; + /* Decode the physical header... */ + offset = decode_hw_header (interface, ibuf, bufix, hfrom); +@@ -373,7 +416,7 @@ ssize_t receive_packet (interface, buf, + + /* Decode the IP and UDP headers... */ + offset = decode_udp_ip_header (interface, ibuf, bufix, from, +- (unsigned)length, &paylen); ++ (unsigned)length, &paylen, nocsum); + + /* If the IP or UDP checksum was bad, skip the packet... */ + if (offset < 0) +diff --git a/common/nit.c b/common/nit.c +--- a/common/nit.c ++++ b/common/nit.c +@@ -363,7 +363,7 @@ ssize_t receive_packet (interface, buf, + + /* Decode the IP and UDP headers... */ + offset = decode_udp_ip_header (interface, ibuf, bufix, +- from, length, &paylen); ++ from, length, &paylen, 0); + + /* If the IP or UDP checksum was bad, skip the packet... */ + if (offset < 0) +diff --git a/common/packet.c b/common/packet.c +--- a/common/packet.c ++++ b/common/packet.c +@@ -226,7 +226,7 @@ ssize_t + decode_udp_ip_header(struct interface_info *interface, + unsigned char *buf, unsigned bufix, + struct sockaddr_in *from, unsigned buflen, +- unsigned *rbuflen) ++ unsigned *rbuflen, int nocsum) + { + unsigned char *data; + struct ip ip; +@@ -337,7 +337,7 @@ decode_udp_ip_header(struct interface_in + 8, IPPROTO_UDP + ulen)))); + + udp_packets_seen++; +- if (usum && usum != sum) { ++ if (!nocsum && usum && usum != sum) { + udp_packets_bad_checksum++; + if (udp_packets_seen > 4 && + (udp_packets_seen / udp_packets_bad_checksum) < 2) { +diff --git a/common/upf.c b/common/upf.c +--- a/common/upf.c ++++ b/common/upf.c +@@ -314,7 +314,7 @@ ssize_t receive_packet (interface, buf, + + /* Decode the IP and UDP headers... */ + offset = decode_udp_ip_header (interface, ibuf, bufix, +- from, length, &paylen); ++ from, length, &paylen, 0); + + /* If the IP or UDP checksum was bad, skip the packet... */ + if (offset < 0) +diff --git a/includes/dhcpd.h b/includes/dhcpd.h +--- a/includes/dhcpd.h ++++ b/includes/dhcpd.h +@@ -2857,7 +2857,7 @@ ssize_t decode_hw_header (struct interfa + unsigned, struct hardware *); + ssize_t decode_udp_ip_header (struct interface_info *, unsigned char *, + unsigned, struct sockaddr_in *, +- unsigned, unsigned *); ++ unsigned, unsigned *, int); + + /* ethernet.c */ + void assemble_ethernet_header (struct interface_info *, unsigned char *, +-- +1.8.1.2 + diff --git a/meta/recipes-connectivity/dhcp/dhcp/fixsepbuild.patch b/meta/recipes-connectivity/dhcp/dhcp/fixsepbuild.patch index e686afd2d2..14e75a37ea 100644 --- a/meta/recipes-connectivity/dhcp/dhcp/fixsepbuild.patch +++ b/meta/recipes-connectivity/dhcp/dhcp/fixsepbuild.patch @@ -4,47 +4,32 @@ Upstream-Status: Pending RP 2013/03/21 -Index: dhcp-4.2.5/common/Makefile.am -=================================================================== ---- dhcp-4.2.5.orig/common/Makefile.am 2013-03-21 12:54:11.345063519 +0000 -+++ dhcp-4.2.5/common/Makefile.am 2013-03-21 12:54:11.805063510 +0000 -@@ -1,4 +1,4 @@ --AM_CPPFLAGS = -I.. -DLOCALSTATEDIR='"@localstatedir@"' -+AM_CPPFLAGS = -I$(top_srcdir)/includes -I$(top_srcdir) -DLOCALSTATEDIR='"@localstatedir@"' - AM_CFLAGS = $(LDAP_CFLAGS) - - noinst_LIBRARIES = libdhcp.a -Index: dhcp-4.2.5/dst/Makefile.am -=================================================================== ---- dhcp-4.2.5.orig/dst/Makefile.am 2013-03-21 12:54:11.345063519 +0000 -+++ dhcp-4.2.5/dst/Makefile.am 2013-03-21 12:54:11.805063510 +0000 -@@ -1,4 +1,4 @@ --AM_CPPFLAGS = -DMINIRES_LIB -DHMAC_MD5 -+AM_CPPFLAGS = -DMINIRES_LIB -DHMAC_MD5 -I$(top_srcdir)/includes - - lib_LIBRARIES = libdst.a - -Index: dhcp-4.2.5/omapip/Makefile.am -=================================================================== ---- dhcp-4.2.5.orig/omapip/Makefile.am 2013-03-21 12:54:11.677063511 +0000 -+++ dhcp-4.2.5/omapip/Makefile.am 2013-03-21 12:54:11.809063510 +0000 -@@ -1,3 +1,5 @@ -+AM_CPPFLAGS = -I$(top_srcdir)/includes -+ - lib_LIBRARIES = libomapi.a - noinst_PROGRAMS = svtest +Rebase to 4.3.1 +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> +--- + client/Makefile.am | 6 ++++-- + common/Makefile.am | 2 +- + dhcpctl/Makefile.am | 2 ++ + dst/Makefile.am | 2 +- + omapip/Makefile.am | 2 ++ + relay/Makefile.am | 2 +- + server/Makefile.am | 2 +- + 7 files changed, 12 insertions(+), 6 deletions(-) + +diff --git a/client/Makefile.am b/client/Makefile.am +index 8411960..1740f72 100644 +--- a/client/Makefile.am ++++ b/client/Makefile.am +@@ -4,6 +4,8 @@ + # production code. Sadly, we are not there yet. + SUBDIRS = . tests -Index: dhcp-4.2.5/client/Makefile.am -=================================================================== ---- dhcp-4.2.5.orig/client/Makefile.am 2013-03-21 12:54:11.677063511 +0000 -+++ dhcp-4.2.5/client/Makefile.am 2013-03-21 12:54:11.809063510 +0000 -@@ -1,3 +1,5 @@ +AM_CPPFLAGS = -I$(top_srcdir)/includes + dist_sysconf_DATA = dhclient.conf.example sbin_PROGRAMS = dhclient dhclient_SOURCES = clparse.c dhclient.c dhc6.c \ -@@ -11,8 +13,8 @@ +@@ -17,8 +19,8 @@ EXTRA_DIST = $(man_MANS) dhclient.o: dhclient.c $(COMPILE) -DCLIENT_PATH='"PATH=$(sbindir):/sbin:/bin:/usr/sbin:/usr/bin"' \ @@ -55,30 +40,60 @@ Index: dhcp-4.2.5/client/Makefile.am $(COMPILE) -DCLIENT_PATH='"PATH=$(sbindir):/sbin:/bin:/usr/sbin:/usr/bin"' \ - -DLOCALSTATEDIR='"$(localstatedir)"' -c dhc6.c + -DLOCALSTATEDIR='"$(localstatedir)"' -c $(srcdir)/dhc6.c -Index: dhcp-4.2.5/dhcpctl/Makefile.am -=================================================================== ---- dhcp-4.2.5.orig/dhcpctl/Makefile.am 2013-03-21 12:54:11.677063511 +0000 -+++ dhcp-4.2.5/dhcpctl/Makefile.am 2013-03-21 12:54:11.809063510 +0000 +diff --git a/common/Makefile.am b/common/Makefile.am +index eddef05..5ce045f 100644 +--- a/common/Makefile.am ++++ b/common/Makefile.am +@@ -1,4 +1,4 @@ +-AM_CPPFLAGS = -I.. -DLOCALSTATEDIR='"@localstatedir@"' ++AM_CPPFLAGS = -I$(top_srcdir)/includes -I$(top_srcdir) -DLOCALSTATEDIR='"@localstatedir@"' + AM_CFLAGS = $(LDAP_CFLAGS) + + noinst_LIBRARIES = libdhcp.a +diff --git a/dhcpctl/Makefile.am b/dhcpctl/Makefile.am +index 2987a53..cd72d75 100644 +--- a/dhcpctl/Makefile.am ++++ b/dhcpctl/Makefile.am @@ -1,3 +1,5 @@ +AM_CPPFLAGS = -I$(top_srcdir)/includes -I$(top_srcdir) + bin_PROGRAMS = omshell lib_LIBRARIES = libdhcpctl.a noinst_PROGRAMS = cltest -Index: dhcp-4.2.5/relay/Makefile.am -=================================================================== ---- dhcp-4.2.5.orig/relay/Makefile.am 2013-03-21 12:54:11.677063511 +0000 -+++ dhcp-4.2.5/relay/Makefile.am 2013-03-21 12:54:11.809063510 +0000 +diff --git a/dst/Makefile.am b/dst/Makefile.am +index 8937fe8..a14798b 100644 +--- a/dst/Makefile.am ++++ b/dst/Makefile.am +@@ -1,4 +1,4 @@ +-AM_CPPFLAGS = -DMINIRES_LIB -DHMAC_MD5 ++AM_CPPFLAGS = -DMINIRES_LIB -DHMAC_MD5 -I$(top_srcdir)/includes + + lib_LIBRARIES = libdst.a + +diff --git a/omapip/Makefile.am b/omapip/Makefile.am +index 5074479..9c0fab3 100644 +--- a/omapip/Makefile.am ++++ b/omapip/Makefile.am +@@ -1,3 +1,5 @@ ++AM_CPPFLAGS = -I$(top_srcdir)/includes ++ + lib_LIBRARIES = libomapi.a + noinst_PROGRAMS = svtest + +diff --git a/relay/Makefile.am b/relay/Makefile.am +index ec72a31..f842071 100644 +--- a/relay/Makefile.am ++++ b/relay/Makefile.am @@ -1,4 +1,4 @@ -AM_CPPFLAGS = -DLOCALSTATEDIR='"@localstatedir@"' +AM_CPPFLAGS = -DLOCALSTATEDIR='"@localstatedir@"' -I$(top_srcdir)/includes sbin_PROGRAMS = dhcrelay dhcrelay_SOURCES = dhcrelay.c -Index: dhcp-4.2.5/server/Makefile.am -=================================================================== ---- dhcp-4.2.5.orig/server/Makefile.am 2013-03-21 12:54:11.677063511 +0000 -+++ dhcp-4.2.5/server/Makefile.am 2013-03-21 12:55:01.509062081 +0000 +diff --git a/server/Makefile.am b/server/Makefile.am +index a446f0b..d0b873a 100644 +--- a/server/Makefile.am ++++ b/server/Makefile.am @@ -4,7 +4,7 @@ # production code. Sadly, we are not there yet. SUBDIRS = . tests @@ -88,3 +103,6 @@ Index: dhcp-4.2.5/server/Makefile.am dist_sysconf_DATA = dhcpd.conf.example sbin_PROGRAMS = dhcpd +-- +1.9.1 + diff --git a/meta/recipes-connectivity/dhcp/dhcp/replace-ifconfig-route.patch b/meta/recipes-connectivity/dhcp/dhcp/replace-ifconfig-route.patch new file mode 100644 index 0000000000..61dd6a7186 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp/replace-ifconfig-route.patch @@ -0,0 +1,176 @@ +Found this patch here: +https://lists.isc.org/pipermail/dhcp-users/2011-January/012910.html + +and made some adjustments/updates to make it work with this version. +Wasn't able to find that why this patch was not accepted by ISC DHCP developers. + +Upstream-Status: Pending + +Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com> + +--- dhcp-4.2.5-P1/client/scripts/linux.orig 2013-09-04 12:22:55.000000000 +0500 ++++ dhcp-4.2.5-P1/client/scripts/linux 2013-09-04 12:52:19.068761518 +0500 +@@ -103,17 +103,11 @@ + if [ x$old_broadcast_address != x ]; then + old_broadcast_arg="broadcast $old_broadcast_address" + fi +-if [ x$new_subnet_mask != x ]; then +- new_subnet_arg="netmask $new_subnet_mask" +-fi +-if [ x$old_subnet_mask != x ]; then +- old_subnet_arg="netmask $old_subnet_mask" +-fi +-if [ x$alias_subnet_mask != x ]; then +- alias_subnet_arg="netmask $alias_subnet_mask" ++if [ -n "$new_subnet_mask" ]; then ++ new_mask="/$new_subnet_mask" + fi +-if [ x$new_interface_mtu != x ]; then +- mtu_arg="mtu $new_interface_mtu" ++if [ -n "$alias_subnet_mask" ]; then ++ alias_mask="/$alias_subnet_mask" + fi + if [ x$IF_METRIC != x ]; then + metric_arg="metric $IF_METRIC" +@@ -127,9 +121,9 @@ + if [ x$reason = xPREINIT ]; then + if [ x$alias_ip_address != x ]; then + # Bring down alias interface. Its routes will disappear too. +- ifconfig $interface:0- inet 0 ++ ${ip} -4 addr flush dev ${interface} label ${interface}:0 + fi +- ifconfig $interface 0 up ++ ${ip} link set dev ${interface} up + + # We need to give the kernel some time to get the interface up. + sleep 1 +@@ -156,25 +150,30 @@ + if [ x$old_ip_address != x ] && [ x$alias_ip_address != x ] && \ + [ x$alias_ip_address != x$old_ip_address ]; then + # Possible new alias. Remove old alias. +- ifconfig $interface:0- inet 0 ++ ${ip} -4 addr flush dev ${interface} label ${interface}:0 + fi + if [ x$old_ip_address != x ] && [ x$old_ip_address != x$new_ip_address ]; then + # IP address changed. Bringing down the interface will delete all routes, + # and clear the ARP cache. +- ifconfig $interface inet 0 down ++ ${ip} -4 addr flush dev ${interface} label ${interface} + + fi + if [ x$old_ip_address = x ] || [ x$old_ip_address != x$new_ip_address ] || \ + [ x$reason = xBOUND ] || [ x$reason = xREBOOT ]; then + +- ifconfig $interface inet $new_ip_address $new_subnet_arg \ +- $new_broadcast_arg $mtu_arg ++ ${ip} -4 addr add ${new_ip_address}${new_mask} ${new_broadcast_arg} \ ++ dev ${interface} label ${interface} ++ if [ -n "$new_interface_mtu" ]; then ++ # set MTU ++ ${ip} link set dev ${interface} mtu ${new_interface_mtu} ++ fi + # Add a network route to the computed network address. + for router in $new_routers; do + if [ "x$new_subnet_mask" = "x255.255.255.255" ] ; then +- route add -host $router dev $interface ++ ${ip} -4 route add ${router} dev $interface >/dev/null 2>&1 + fi +- route add default gw $router $metric_arg dev $interface ++ ${ip} -4 route add default via ${router} dev ${interface} \ ++ ${metric_arg} >/dev/null 2>&1 + done + else + # we haven't changed the address, have we changed other options +@@ -182,21 +181,23 @@ + if [ x$new_routers != x ] && [ x$new_routers != x$old_routers ] ; then + # if we've changed routers delete the old and add the new. + for router in $old_routers; do +- route del default gw $router ++ ${ip} -4 route delete default via ${router} + done + for router in $new_routers; do + if [ "x$new_subnet_mask" = "x255.255.255.255" ] ; then +- route add -host $router dev $interface +- fi +- route add default gw $router $metric_arg dev $interface ++ ${ip} -4 route add ${router} dev $interface >/dev/null 2>&1 ++ fi ++ ${ip} -4 route add default via ${router} dev ${interface} \ ++ ${metric_arg} >/dev/null 2>&1 + done + fi + fi + if [ x$new_ip_address != x$alias_ip_address ] && [ x$alias_ip_address != x ]; + then +- ifconfig $interface:0- inet 0 +- ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg +- route add -host $alias_ip_address $interface:0 ++ ${ip} -4 addr flush dev ${interface} label ${interface}:0 ++ ${ip} -4 addr add ${alias_ip_address}${alias_mask} \ ++ dev ${interface} label ${interface}:0 ++ ${ip} -4 route add ${alias_ip_address} dev ${interface} >/dev/null 2>&1 + fi + make_resolv_conf + exit_with_hooks 0 +@@ -206,42 +207,49 @@ + || [ x$reason = xSTOP ]; then + if [ x$alias_ip_address != x ]; then + # Turn off alias interface. +- ifconfig $interface:0- inet 0 ++ ${ip} -4 addr flush dev ${interface} label ${interface}:0 + fi + if [ x$old_ip_address != x ]; then + # Shut down interface, which will delete routes and clear arp cache. +- ifconfig $interface inet 0 down ++ ${ip} -4 addr flush dev ${interface} label ${interface} + fi + if [ x$alias_ip_address != x ]; then +- ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg +- route add -host $alias_ip_address $interface:0 ++ ${ip} -4 addr add ${alias_ip_address}${alias_network_arg} \ ++ dev ${interface} label ${interface}:0 ++ ${ip} -4 route add ${alias_ip_address} dev ${interface} >/dev/null 2>&1 + fi + exit_with_hooks 0 + fi + + if [ x$reason = xTIMEOUT ]; then + if [ x$alias_ip_address != x ]; then +- ifconfig $interface:0- inet 0 ++ ${ip} -4 addr flush dev ${interface} label ${interface}:0 ++ fi ++ ${ip} -4 addr add ${new_ip_address}${new_mask} ${new_broadcast_arg} \ ++ dev ${interface} label ${interface} ++ if [ -n "$new_interface_mtu" ]; then ++ # set MTU ++ ip link set dev ${interface} mtu ${new_interface_mtu} + fi +- ifconfig $interface inet $new_ip_address $new_subnet_arg \ +- $new_broadcast_arg $mtu_arg + set $new_routers + if ping -q -c 1 $1; then + if [ x$new_ip_address != x$alias_ip_address ] && \ + [ x$alias_ip_address != x ]; then +- ifconfig $interface:0 inet $alias_ip_address $alias_subnet_arg +- route add -host $alias_ip_address dev $interface:0 ++ ${ip} -4 addr add ${alias_ip_address}${alias_mask} \ ++ dev ${interface} label ${interface}:0 ++ ${ip} -4 route add ${alias_ip_address} dev ${interface} >/dev/null 2>&1 + fi + for router in $new_routers; do + if [ "x$new_subnet_mask" = "x255.255.255.255" ] ; then +- route add -host $router dev $interface ++ ${ip} -4 route add ${router} dev $interface >/dev/null 2>&1 + fi +- route add default gw $router $metric_arg dev $interface ++ ${ip} -4 route add default via ${router} dev ${interface} \ ++ ${metric_arg} >/dev/null 2>&1 + done + make_resolv_conf + exit_with_hooks 0 + fi +- ifconfig $interface inet 0 down ++ ${ip} -4 addr flush dev ${interface} + exit_with_hooks 1 + fi + diff --git a/meta/recipes-connectivity/dhcp/dhcp/site.h b/meta/recipes-connectivity/dhcp/dhcp/site.h deleted file mode 100644 index 2289554ef3..0000000000 --- a/meta/recipes-connectivity/dhcp/dhcp/site.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - * define config file location in ${S}/includes/site.h - * still need to take care of installation path (${sysconfdir}/dhcpd.conf) - * - * 7/22/2010 - qhe - */ - -/* Define this if you want DNS update functionality to be available. */ - -#define NSUPDATE - -/* Define this if you aren't debugging and you want to save memory - (potentially a _lot_ of memory) by allocating leases in chunks rather - than one at a time. */ - -#define COMPACT_LEASES - - -/* local */ -#define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" -#define _PATH_DHCLIENT_CONF "/etc/dhcp/dhclient.conf" diff --git a/meta/recipes-connectivity/dhcp/dhcp_4.3.0.bb b/meta/recipes-connectivity/dhcp/dhcp_4.3.1.bb index 6da28faf50..d4414cc347 100644 --- a/meta/recipes-connectivity/dhcp/dhcp_4.3.0.bb +++ b/meta/recipes-connectivity/dhcp/dhcp_4.3.1.bb @@ -5,7 +5,9 @@ SRC_URI += "file://dhcp-3.0.3-dhclient-dbus.patch;striplevel=0 \ file://link-with-lcrypto.patch \ file://fixsepbuild.patch \ file://dhclient-script-drop-resolv.conf.dhclient.patch \ + file://replace-ifconfig-route.patch \ + file://dhcp-xen-checksum.patch \ " -SRC_URI[md5sum] = "1020d77e1a4c1f01b76279caff9beb80" -SRC_URI[sha256sum] = "a7b6517d5cf32c5e49d2323a63de00efe5391df7cb0045dfa0ec8f6ee46ebe8a" +SRC_URI[md5sum] = "b3a42ece3c7f2cd2e74a3e12ca881d20" +SRC_URI[sha256sum] = "266cbca8a7a6bb8f9ccc5765da0d2b04099329314a54a4fc1022d510ad3e9af0" diff --git a/meta/recipes-connectivity/dhcp/files/default-relay b/meta/recipes-connectivity/dhcp/files/default-relay index 59249db283..7961f014be 100644 --- a/meta/recipes-connectivity/dhcp/files/default-relay +++ b/meta/recipes-connectivity/dhcp/files/default-relay @@ -9,4 +9,4 @@ SERVERS="" INTERFACES="" # Additional options that are passed to the DHCP relay daemon? -OPTIONS=""
\ No newline at end of file +OPTIONS="" diff --git a/meta/recipes-connectivity/dhcp/files/dhcpd.service b/meta/recipes-connectivity/dhcp/files/dhcpd.service new file mode 100644 index 0000000000..8648f1a253 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/files/dhcpd.service @@ -0,0 +1,11 @@ +[Unit] +Description=DHCP Server Daemon +After=network.target +After=time-sync.target + +[Service] +EnvironmentFile=@SYSCONFDIR@/default/dhcp-server +ExecStart=-@SBINDIR@/dhcpd -q $INTERFACES + +[Install] +WantedBy=multi-user.target diff --git a/meta/recipes-connectivity/dhcp/files/dhcrelay.service b/meta/recipes-connectivity/dhcp/files/dhcrelay.service new file mode 100644 index 0000000000..a2d818917d --- /dev/null +++ b/meta/recipes-connectivity/dhcp/files/dhcrelay.service @@ -0,0 +1,9 @@ +[Unit] +Description=DHCP Relay Agent Daemon +After=network.target + +[Service] +ExecStart=@SBINDIR@/dhcrelay -d --no-pid + +[Install] +WantedBy=multi-user.target diff --git a/meta/recipes-connectivity/iproute2/iproute2_3.15.0.bb b/meta/recipes-connectivity/iproute2/iproute2_3.17.0.bb index 7cf9115b9c..d12b33fbd1 100644 --- a/meta/recipes-connectivity/iproute2/iproute2_3.15.0.bb +++ b/meta/recipes-connectivity/iproute2/iproute2_3.17.0.bb @@ -4,8 +4,8 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \ file://configure-cross.patch \ file://0001-iproute2-de-bash-scripts.patch \ " -SRC_URI[md5sum] = "5b1711c9d16071959052e369a2682d77" -SRC_URI[sha256sum] = "5359ed1f31839d8542a057c0c4233131ab9c28d8c41fc9c8484579d9c0b99af4" +SRC_URI[md5sum] = "b741a02c6dda5818d18011d572874493" +SRC_URI[sha256sum] = "09e406636e7598e46d5d4f7b928bf5db57049d65dbeb9a496005957ee16f6000" # CFLAGS are computed in Makefile and reference CCOPTS # diff --git a/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/ldflags.patch b/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/ldflags.patch new file mode 100644 index 0000000000..2cdd1ac08b --- /dev/null +++ b/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/ldflags.patch @@ -0,0 +1,75 @@ +Obey LDFLAGS + +Signed-off-by: Christopher Larson <chris_larson@mentor.com> +Upstream-status: Pending + +--- irda-utils-0.9.18.orig/findchip/Makefile ++++ irda-utils-0.9.18/findchip/Makefile +@@ -65,5 +65,5 @@ install: findchip + + gfindchip: gfindchip.c + $(prn_cc) +- $(ECMD))$(CC) $(CFLAGS) `gtk-config --cflags` $< -o $@ `gtk-config --libs` ++ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) `gtk-config --cflags` $< -o $@ `gtk-config --libs` + +--- irda-utils-0.9.18.orig/irattach/Makefile ++++ irda-utils-0.9.18/irattach/Makefile +@@ -49,13 +49,13 @@ all: $(TARGETS) + + irattach: irattach.o util.o + $(prn_cc_o) +- $(ECMD)$(CC) $(CFLAGS) irattach.o util.o -o $@ ++ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) irattach.o util.o -o $@ + + + + dongle_attach: dongle_attach.o + $(prn_cc_o) +- $(ECMD)$(CC) $(CFLAGS) dongle_attach.o -o $@ ++ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) dongle_attach.o -o $@ + + + install: $(TARGETS) +--- irda-utils-0.9.18.orig/irdadump/Makefile ++++ irda-utils-0.9.18/irdadump/Makefile +@@ -40,7 +40,7 @@ lib_irdadump.a: $(LIBIRDADUMP_OBJS) + + irdadump: $(IRDADUMP_OBJS) $(LIBIRDADUMP_TARGET) + $(prn_cc_o) +- $(ECMD)$(CC) $(CFLAGS) `pkg-config --libs glib-2.0` -o $(IRDADUMP_TARGET) $< $(LIBIRDADUMP_TARGET) ++ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) `pkg-config --libs glib-2.0` -o $(IRDADUMP_TARGET) $< $(LIBIRDADUMP_TARGET) + + + .c.o: +--- irda-utils-0.9.18.orig/irdaping/Makefile ++++ irda-utils-0.9.18/irdaping/Makefile +@@ -56,7 +56,7 @@ all: $(TARGETS) + + irdaping: $(OBJS) + $(prn_cc_o) +- $(ECMD)$(CC) $(CFLAGS) $(OBJS) -o $@ ++ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) -o $@ + + + .c.o: +--- irda-utils-0.9.18.orig/irnetd/Makefile ++++ irda-utils-0.9.18/irnetd/Makefile +@@ -50,7 +50,7 @@ all: $(TARGETS) + + irnetd: $(OBJS) + $(prn_cc_o) +- $(ECMD)$(CC) $(CFLAGS) $(OBJS) -o $@ ++ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS) -o $@ + + + install: irnetd +--- irda-utils-0.9.18.orig/psion/Makefile ++++ irda-utils-0.9.18/psion/Makefile +@@ -25,4 +25,4 @@ install: $(PSION_TARGETS) + CFLAGS += -g -I../include -Wall -Wstrict-prototypes $(RPM_OPT_FLAGS) + irpsion5: + $(prn_cc_o) +- $(ECMD)$(CC) $(CFLAGS) $(PSION_SRC) -o $@ +\ No newline at end of file ++ $(ECMD)$(CC) $(CFLAGS) $(LDFLAGS) $(PSION_SRC) -o $@ +\ No newline at end of file diff --git a/meta/recipes-connectivity/irda-utils/irda-utils_0.9.18.bb b/meta/recipes-connectivity/irda-utils/irda-utils_0.9.18.bb index 7403dc95da..bd60b9f1e6 100644 --- a/meta/recipes-connectivity/irda-utils/irda-utils_0.9.18.bb +++ b/meta/recipes-connectivity/irda-utils/irda-utils_0.9.18.bb @@ -12,21 +12,29 @@ LIC_FILES_CHKSUM = "file://irdadump/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f file://irdadump/irdadump.c;beginline=1;endline=24;md5=d78b9dce3cd78c2220250c9c7a2be178" SRC_URI = "${SOURCEFORGE_MIRROR}/irda/irda-utils-${PV}.tar.gz \ - file://init" + file://ldflags.patch \ + file://init" SRC_URI[md5sum] = "84dc12aa4c3f61fccb8d8919bf4079bb" SRC_URI[sha256sum] = "61980551e46b2eaa9e17ad31cbc1a638074611fc33bff34163d10c7a67a9fdc6" -export SYS_INCLUDES="-I${STAGING_INCDIR}" +inherit update-rc.d -inherit autotools-brokensep update-rc.d +EXTRA_OEMAKE = "\ + 'CC=${CC}' \ + 'LD=${LD}' \ + 'CFLAGS=${CFLAGS}' \ + 'LDFLAGS=${LDFLAGS}' \ + 'SYS_INCLUDES=' \ + 'V=1' \ +" INITSCRIPT_NAME = "irattach" INITSCRIPT_PARAMS = "defaults 20" do_compile () { - oe_runmake -e -C irattach - oe_runmake -e -C irdaping + oe_runmake -C irattach + oe_runmake -C irdaping } do_install () { diff --git a/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.10.bb b/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.10.bb index 5b8c700411..0b936ef092 100644 --- a/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.10.bb +++ b/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.10.bb @@ -26,13 +26,13 @@ DEBIANNAME_${PN} = "libnss-mdns" RDEPENDS_${PN} = "avahi-daemon" pkg_postinst_${PN} () { - sed -e '/^hosts:/s/\s*\<mdns4\>//' \ - -e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 mdns4_minimal [NOTFOUND=return]\3\4 mdns4\5/' \ - -i $D/etc/nsswitch.conf + sed -e '/^hosts:/s/\s*\<mdns\>//' \ + -e 's/\(^hosts:.*\)\(\<files\>\)\(.*\)\(\<dns\>\)\(.*\)/\1\2 mdns4_minimal [NOTFOUND=return]\3\4 mdns\5/' \ + -i $D${sysconfdir}/nsswitch.conf } pkg_prerm_${PN} () { - sed -e '/^hosts:/s/\s*\<mdns4\>//' \ + sed -e '/^hosts:/s/\s*\<mdns\>//' \ -e '/^hosts:/s/\s*mdns4_minimal\s\+\[NOTFOUND=return\]//' \ - -i $D/etc/nsswitch.conf + -i $D${sysconfdir}/nsswitch.conf } diff --git a/meta/recipes-connectivity/libpcap/libpcap.inc b/meta/recipes-connectivity/libpcap/libpcap.inc index 8a9fa9eca1..0c608b5967 100644 --- a/meta/recipes-connectivity/libpcap/libpcap.inc +++ b/meta/recipes-connectivity/libpcap/libpcap.inc @@ -7,17 +7,19 @@ BUGTRACKER = "http://sourceforge.net/tracker/?group_id=53067&atid=469577" SECTION = "libs/network" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867 \ - file://pcap.h;beginline=1;endline=34;md5=8d6cf7e17d5745010d633e30bc529ea9" -DEPENDS = "flex-native bison-native libnl" + file://pcap.h;beginline=1;endline=32;md5=39af3510e011f34b8872f120b1dc31d2" +DEPENDS = "flex-native bison-native" -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluetooth', '', d)}" -PACKAGECONFIG[bluetooth] = "--enable-bluetooth,--disable-bluetooth,bluez4" +inherit bluetooth pkgconfig + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)}" +PACKAGECONFIG[bluez4] = "--enable-bluetooth,--disable-bluetooth,bluez4" PACKAGECONFIG[canusb] = "--enable-canusb,--enable-canusb=no,libusb" -PACKAGECONFIG[libnl1] = "--with-libnl,--without-libnl,libnl1,libnl1" +PACKAGECONFIG[libnl] = "--with-libnl,--without-libnl,libnl" INC_PR = "r5" -SRC_URI = "http://www.tcpdump.org/release/libpcap-${PV}.tar.gz" +SRC_URI = "http://www.tcpdump.org/release/${BP}.tar.gz" BINCONFIG = "${bindir}/pcap-config" @@ -25,6 +27,10 @@ inherit autotools binconfig-disabled EXTRA_OECONF = "--with-pcap=linux" +PACKAGECONFIG ??= "" +PACKAGECONFIG[libnl1] = "--with-libnl,--without-libnl,libnl1,libnl1" +PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus" + CPPFLAGS_prepend = "-I${S} " CFLAGS_prepend = "-I${S} " CXXFLAGS_prepend = "-I${S} " diff --git a/meta/recipes-connectivity/libpcap/libpcap/ieee80215-arphrd.patch b/meta/recipes-connectivity/libpcap/libpcap/ieee80215-arphrd.patch deleted file mode 100644 index 2f5cd213bc..0000000000 --- a/meta/recipes-connectivity/libpcap/libpcap/ieee80215-arphrd.patch +++ /dev/null @@ -1,24 +0,0 @@ -Upstream-Status: Pending - -Index: libpcap-1.0.0/pcap-linux.c -=================================================================== ---- libpcap-1.0.0.orig/pcap-linux.c 2009-01-28 11:58:54.000000000 +0300 -+++ libpcap-1.0.0/pcap-linux.c 2009-01-28 11:59:04.000000000 +0300 -@@ -1616,6 +1616,17 @@ - * so let's use "Linux-cooked" mode. Jean II */ - //handle->md.cooked = 1; - break; -+#ifndef ARPHRD_IEEE80215 -+#define ARPHRD_IEEE80215 805 -+#endif -+#ifndef ARPHRD_IEEE80215_PHY -+#define ARPHRD_IEEE80215_PHY 806 -+#endif -+ -+ case ARPHRD_IEEE80215: -+ case ARPHRD_IEEE80215_PHY: -+ handle->linktype = DLT_IEEE802_15_4; -+ break; - - /* ARPHRD_LAPD is unofficial and randomly allocated, if reallocation - * is needed, please report it to <daniele@orlandi.com> */ diff --git a/meta/recipes-connectivity/libpcap/libpcap/libpcap-pkgconfig-support.patch b/meta/recipes-connectivity/libpcap/libpcap/libpcap-pkgconfig-support.patch new file mode 100644 index 0000000000..9cfb9df880 --- /dev/null +++ b/meta/recipes-connectivity/libpcap/libpcap/libpcap-pkgconfig-support.patch @@ -0,0 +1,71 @@ +From 8887132e85892a72a84ca3878e60f254ad2ce939 Mon Sep 17 00:00:00 2001 +From: Joe MacDonald <joe_macdonald@mentor.com> +Date: Tue, 24 Feb 2015 15:56:06 -0500 +Subject: [PATCH] libpcap: pkgconfig support + +Adding basic structure to support pkg-config. + +Upstream-status: Inappropriate [embedded specific] + +Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com> +--- + Makefile.in | 5 +++++ + configure.in | 1 + + libpcap.pc.in | 10 ++++++++++ + 3 files changed, 16 insertions(+) + create mode 100644 libpcap.pc.in + +diff --git a/Makefile.in b/Makefile.in +index 1c2d745..1f25faf 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -60,6 +60,10 @@ V_RPATH_OPT = @V_RPATH_OPT@ + DEPENDENCY_CFLAG = @DEPENDENCY_CFLAG@ + PROG=libpcap + ++# pkgconfig support ++pkgconfigdir = $(libdir)/pkgconfig ++pkgconfig_DATA = libpcap.pc ++ + # Standard CFLAGS + FULL_CFLAGS = $(CCOPT) $(INCLS) $(DEFS) $(CFLAGS) + +@@ -275,6 +279,7 @@ EXTRA_DIST = \ + lbl/os-solaris2.h \ + lbl/os-sunos4.h \ + lbl/os-ultrix4.h \ ++ libpcap.pc \ + missing/snprintf.c \ + mkdep \ + msdos/bin2c.c \ +diff --git a/configure.in b/configure.in +index 8f5c86b..fb51b35 100644 +--- a/configure.in ++++ b/configure.in +@@ -1700,6 +1700,7 @@ esac + AC_PROG_INSTALL + + AC_CONFIG_HEADER(config.h) ++AC_CONFIG_FILES([libpcap.pc]) + + AC_OUTPUT_COMMANDS([if test -f .devel; then + echo timestamp > stamp-h +diff --git a/libpcap.pc.in b/libpcap.pc.in +new file mode 100644 +index 0000000..4f78ad8 +--- /dev/null ++++ b/libpcap.pc.in +@@ -0,0 +1,10 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: libpcap ++Description: System-independent interface for user-level packet capture. ++Version: @VERSION@ ++Libs: -L${libdir} -lpcap ++Cflags: -I${includedir} +-- +1.9.1 + diff --git a/meta/recipes-connectivity/libpcap/libpcap_1.5.3.bb b/meta/recipes-connectivity/libpcap/libpcap_1.6.2.bb index 3ba3caa3bc..611543e42c 100644 --- a/meta/recipes-connectivity/libpcap/libpcap_1.5.3.bb +++ b/meta/recipes-connectivity/libpcap/libpcap_1.6.2.bb @@ -1,10 +1,10 @@ require libpcap.inc SRC_URI += "file://aclocal.patch \ - file://ieee80215-arphrd.patch \ + file://libpcap-pkgconfig-support.patch \ " -SRC_URI[md5sum] = "7e7321fb3aff2f2bb05c8229f3795d4a" -SRC_URI[sha256sum] = "9ae92159c1060f15e6a90f2c4ad227268b6aaa382c316fa49a31c496b9979e93" +SRC_URI[md5sum] = "5f14191c1a684a75532c739c2c4059fa" +SRC_URI[sha256sum] = "5db3e2998f1eeba2c76da55da5d474248fe19c44f49e15cac8a796a2c7e19690" # # make install doesn't cover the shared lib @@ -21,4 +21,6 @@ do_install_prepend () { install -d ${D}${bindir} oe_runmake install-shared DESTDIR=${D} oe_libinstall -a -so libpcap ${D}${libdir} + sed "s|@VERSION@|${PV}|" -i ${B}/libpcap.pc + install -D -m 0644 libpcap.pc ${D}${libdir}/pkgconfig/libpcap.pc } diff --git a/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_git.bb b/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_git.bb index a0d18efd24..31cf2bb5fc 100644 --- a/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_git.bb +++ b/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_git.bb @@ -2,8 +2,8 @@ SUMMARY = "Mobile Broadband Service Provider Database" SECTION = "network" LICENSE = "PD" LIC_FILES_CHKSUM = "file://COPYING;md5=87964579b2a8ece4bc6744d2dc9a8b04" -SRCREV = "4ed19e11c2975105b71b956440acdb25d46a347d" -PV = "20120614+gitr${SRCPV}" +SRCREV = "d06ebd314a7cdd087d38e4966c19de42c8c55246" +PV = "20140618+gitr${SRCPV}" PE = "1" SRC_URI = "git://git.gnome.org/mobile-broadband-provider-info" diff --git a/meta/recipes-connectivity/neard/neard.inc b/meta/recipes-connectivity/neard/neard.inc index e714cadc2b..6b6b1da8c1 100644 --- a/meta/recipes-connectivity/neard/neard.inc +++ b/meta/recipes-connectivity/neard/neard.inc @@ -9,7 +9,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ file://src/near.h;beginline=1;endline=20;md5=358e4deefef251a4761e1ffacc965d13 \ " -inherit autotools-brokensep pkgconfig systemd update-rc.d +inherit autotools pkgconfig systemd update-rc.d bluetooth + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)}" + +PACKAGECONFIG[systemd] = "--enable-systemd --with-systemdsystemunitdir=${systemd_unitdir}/system/ --with-systemduserunitdir=${systemd_unitdir}/user/,--disable-systemd" EXTRA_OECONF += "--enable-tools" @@ -26,16 +30,10 @@ do_install_append() { chmod 0755 ${D}${sysconfdir}/init.d/neard fi - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then - install -d ${D}${systemd_unitdir}/system - sed "s:@installpath@:${libexecdir}:" ${WORKDIR}/neard.service.in \ - > ${D}${systemd_unitdir}/system/neard.service - fi - # Install the tests for neard-tests install -d ${D}${libdir}/neard install -m 0755 ${S}/test/* ${D}${libdir}/${BPN}/ - install -m 0755 ${S}/tools/nfctool/nfctool ${D}${libdir}/${BPN}/ + install -m 0755 ${B}/tools/nfctool/nfctool ${D}${libdir}/${BPN}/ } PACKAGES =+ "${PN}-tests" @@ -47,7 +45,7 @@ RDEPENDS_${PN} = "dbus python python-dbus python-pygobject" # Bluez & Wifi are not mandatory except for handover RRECOMMENDS_${PN} = "\ - ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez4', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'wifi','wpa-supplicant', '', d)} \ " diff --git a/meta/recipes-connectivity/neard/neard/Makefile.am-do-not-ship-version.h.patch b/meta/recipes-connectivity/neard/neard/Makefile.am-do-not-ship-version.h.patch new file mode 100644 index 0000000000..16875e0543 --- /dev/null +++ b/meta/recipes-connectivity/neard/neard/Makefile.am-do-not-ship-version.h.patch @@ -0,0 +1,36 @@ +From bfd32d68cfc9f1e31dab88e07446d1c02bc80b5e Mon Sep 17 00:00:00 2001 +From: Robert Yang <liezhi.yang@windriver.com> +Date: Thu, 12 Feb 2015 00:39:29 -0800 +Subject: [PATCH] Makefile.am: do not ship version.h + +The HEADERS' name has been changed to pkginclude_HEADERS, so use +nodist_pkginclude_HEADERS, otherwise version.h would be shipped. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <liezhi.yang@windriver.com> +--- + Makefile.am | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 3334790..69cd58f 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -10,11 +10,11 @@ pkginclude_HEADERS = include/types.h include/log.h include/plugin.h \ + include/tlv.h include/setting.h include/device.h \ + include/nfc_copy.h include/snep.h + +-nodist_include_HEADERS = include/version.h ++nodist_pkginclude_HEADERS = include/version.h + + noinst_HEADERS = include/dbus.h + +-local_headers = $(foreach file,$(pkginclude_HEADERS) $(nodist_include_HEADERS) \ ++local_headers = $(foreach file,$(pkginclude_HEADERS) $(nodist_pkginclude_HEADERS) \ + $(noinst_HEADERS), include/near/$(notdir $(file))) + + gdbus_sources = gdbus/gdbus.h gdbus/mainloop.c gdbus/watch.c \ +-- +1.7.9.5 + diff --git a/meta/recipes-connectivity/neard/neard/Makefile.am-fix-parallel-issue.patch b/meta/recipes-connectivity/neard/neard/Makefile.am-fix-parallel-issue.patch new file mode 100644 index 0000000000..466067693d --- /dev/null +++ b/meta/recipes-connectivity/neard/neard/Makefile.am-fix-parallel-issue.patch @@ -0,0 +1,33 @@ +From 43acc56d5506c7e318f717fb3634bc16e3438913 Mon Sep 17 00:00:00 2001 +From: Robert Yang <liezhi.yang@windriver.com> +Date: Thu, 15 Jan 2015 18:12:07 -0800 +Subject: [PATCH] Makefile.am: fix parallel issue + +There might be no src dir if src/builtin.h runs earlier, create it to +fix the race issue: + +src/genbuiltin nfctype1 nfctype2 nfctype3 nfctype4 p2p > src/builtin.h +/bin/sh: src/builtin.h: No such file or directory + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <liezhi.yang@windriver.com> +--- + Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Makefile.am b/Makefile.am +index 3241311..a43eaa2 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -164,6 +164,7 @@ MAINTAINERCLEANFILES = Makefile.in \ + src/plugin.$(OBJEXT): src/builtin.h + + src/builtin.h: src/genbuiltin $(builtin_sources) ++ $(AM_V_at)$(MKDIR_P) src + $(AM_V_GEN)$(srcdir)/src/genbuiltin $(builtin_modules) > $@ + + $(src_neard_OBJECTS) \ +-- +1.7.9.5 + diff --git a/meta/recipes-connectivity/neard/neard/neard.service.in b/meta/recipes-connectivity/neard/neard/neard.service.in index 90e5302662..a6f8a84180 100644 --- a/meta/recipes-connectivity/neard/neard/neard.service.in +++ b/meta/recipes-connectivity/neard/neard/neard.service.in @@ -1,13 +1,13 @@ [Unit] -Description=NFC service +Description=neard service +Documentation=man:neard(8) After=syslog.target [Service] Type=dbus BusName=org.neard -Restart=on-failure ExecStart=@installpath@/neard -n -StandardOutput=null [Install] +Alias=dbus-org.neard.service WantedBy=multi-user.target diff --git a/meta/recipes-connectivity/neard/neard/parallel-build.patch b/meta/recipes-connectivity/neard/neard/parallel-build.patch deleted file mode 100644 index 1837ad010c..0000000000 --- a/meta/recipes-connectivity/neard/neard/parallel-build.patch +++ /dev/null @@ -1,40 +0,0 @@ -Upstream-Status: Pending -Signed-off-by: Ross Burton <ross.burton@intel.com> - -From 488e898300f7a4ab9ba73307967ae9e02b7a6511 Mon Sep 17 00:00:00 2001 -From: Ross Burton <ross.burton@intel.com> -Date: Fri, 13 Jun 2014 17:49:45 +0100 -Subject: [PATCH] Makefile: add missing binaries to dependency on - local_headers - -seeld and snap_send were missing from the rule that generates the header symlink -farm, resulting in headers not being available in highly parallel builds. - -Signed-off-by: Ross Burton <ross.burton@intel.com> ---- - Makefile.am | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/Makefile.am b/Makefile.am -index c51351f..8e58ac1 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -254,7 +254,14 @@ se/plugin.$(OBJEXT): se/builtin.h - se/builtin.h: src/genbuiltin $(builtin_se_sources) - $(AM_V_GEN)$(srcdir)/src/genbuiltin $(builtin_se_modules) > $@ - --$(src_neard_OBJECTS) $(tools_nfctool_nfctool_OBJECTS) $(plugin_objects): $(local_headers) -+$(src_neard_OBJECTS) \ -+$(tools_nfctool_nfctool_OBJECTS) \ -+$(plugin_objects) \ -+$(se_seeld_OBJECTS) \ -+$(unit_test_ndef_parse_OBJECTS) \ -+$(unit_test_ndef_build_OBJECTS) \ -+$(unit_test_snep-read_OBJECTS) \ -+$(tools_snep_send_OBJECTS): $(local_headers) - - include/near/version.h: include/version.h - $(AM_V_at)$(MKDIR_P) include/near --- -1.7.10.4 - diff --git a/meta/recipes-connectivity/neard/neard_0.14.bb b/meta/recipes-connectivity/neard/neard_0.14.bb deleted file mode 100644 index daf3a4b7d1..0000000000 --- a/meta/recipes-connectivity/neard/neard_0.14.bb +++ /dev/null @@ -1,10 +0,0 @@ -require neard.inc - -SRC_URI = "${KERNELORG_MIRROR}/linux/network/nfc/${BPN}-${PV}.tar.xz \ - file://parallel-build.patch \ - file://neard.in \ - file://neard.service.in \ - " -SRC_URI[md5sum] = "692ba2653d60155255244c87396c486b" -SRC_URI[sha256sum] = "6ea724b443d39d679168fc7776a965d1f64727c3735391df2c01469ee7cd8cca" - diff --git a/meta/recipes-connectivity/neard/neard_0.15.bb b/meta/recipes-connectivity/neard/neard_0.15.bb new file mode 100644 index 0000000000..508c622801 --- /dev/null +++ b/meta/recipes-connectivity/neard/neard_0.15.bb @@ -0,0 +1,10 @@ +require neard.inc + +SRC_URI = "${KERNELORG_MIRROR}/linux/network/nfc/${BP}.tar.xz \ + file://neard.in \ + file://Makefile.am-fix-parallel-issue.patch \ + file://Makefile.am-do-not-ship-version.h.patch \ + " +SRC_URI[md5sum] = "b746ce62eeef88e8de90765e00a75a1c" +SRC_URI[sha256sum] = "651f6513d32cdaf8a426255d03aff38a6620a89b0567ec2b36606c6330a93353" + diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch b/meta/recipes-connectivity/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch deleted file mode 100644 index c3442380e1..0000000000 --- a/meta/recipes-connectivity/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch +++ /dev/null @@ -1,27 +0,0 @@ -Signed-off-by: Khem Raj <raj.khem@gmail.com> - -Upstream-Status: Inappropriate [embedded specific] - -Index: nfs-utils-1.2.6/support/nfs/svc_socket.c -=================================================================== ---- nfs-utils-1.2.6.orig/support/nfs/svc_socket.c 2012-05-14 07:40:52.000000000 -0700 -+++ nfs-utils-1.2.6/support/nfs/svc_socket.c 2012-10-28 02:42:50.179222457 -0700 -@@ -40,8 +40,9 @@ - char rpcdata[1024], servdata[1024]; - struct rpcent rpcbuf, *rpcp; - struct servent servbuf, *servp = NULL; -- int ret; -+ int ret = 0; - -+#ifndef __UCLIBC__ /* neither getrpcbynumber() nor getrpcbynumber_r() is SuSv3 */ - ret = getrpcbynumber_r(number, &rpcbuf, rpcdata, sizeof rpcdata, - &rpcp); - if (ret == 0 && rpcp != NULL) { -@@ -60,6 +61,7 @@ - } - } - } -+#endif /* __UCLIBC__ */ - - if (ret == 0 && servp != NULL) - return ntohs(servp->s_port); diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils/nfscommon b/meta/recipes-connectivity/nfs-utils/nfs-utils/nfscommon index 65fdd1dd4f..992267d5a1 100644 --- a/meta/recipes-connectivity/nfs-utils/nfs-utils/nfscommon +++ b/meta/recipes-connectivity/nfs-utils/nfs-utils/nfscommon @@ -28,33 +28,7 @@ test -n "$NFS_STATEDIR" || NFS_STATEDIR=/var/lib/nfs #---------------------------------------------------------------------- # Startup and shutdown functions. # Actual startup/shutdown is at the end of this file. -#directories -create_directories(){ - echo -n 'creating NFS state directory: ' - mkdir -p "$NFS_STATEDIR" - ( cd "$NFS_STATEDIR" - umask 077 - mkdir -p rpc_pipefs - mkdir -p sm sm.bak statd - chown rpcuser:rpcuser sm sm.bak statd - test -w statd/state || { - rm -f statd/state - :>statd/state - } - umask 022 - for file in xtab etab smtab rmtab - do - test -w "$file" || { - rm -f "$file" - :>"$file" - } - done - ) - chown rpcuser:rpcuser "$NFS_STATEDIR" - echo done -} -#statd start_statd(){ echo -n "starting statd: " start-stop-daemon --start --exec "$NFS_STATD" --pidfile "$STATD_PID" @@ -74,7 +48,6 @@ stop_statd(){ #FIXME: need to create the /var/lib/nfs/... directories case "$1" in start) - create_directories start_statd;; stop) stop_statd;; diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.0.bb b/meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.1.bb index 8575647473..6f64e9d001 100644 --- a/meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.0.bb +++ b/meta/recipes-connectivity/nfs-utils/nfs-utils_1.3.1.bb @@ -21,7 +21,6 @@ USERADD_PARAM_${PN}-client = "--system --home-dir /var/lib/nfs \ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/nfs-utils/${PV}/nfs-utils-${PV}.tar.xz \ file://0001-configure-Allow-to-explicitly-disable-nfsidmap.patch \ - file://nfs-utils-1.0.6-uclibc.patch \ file://nfs-utils-1.2.3-sm-notify-res_init.patch \ file://nfsserver \ file://nfscommon \ @@ -32,10 +31,8 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/nfs-utils/${PV}/nfs-utils-${PV}.tar.x file://nfs-utils-Do-not-pass-CFLAGS-to-gcc-while-building.patch \ " -SRC_URI[md5sum] = "6e93a7997ca3a1eac56bf219adab72a8" -SRC_URI[sha256sum] = "ab8384d0e487ed6a18c5380d5df28015f7dd98680bf08f3247c97d9f7d99e56f" - -PARALLEL_MAKE = "" +SRC_URI[md5sum] = "8de676b9ff34b8f9addc1d0800fabdf8" +SRC_URI[sha256sum] = "ff79d70b7b58b2c8f9b798c58721127e82bb96022adc04a5c4cb251630e696b8" # Only kernel-module-nfsd is required here (but can be built-in) - the nfsd module will # pull in the remainder of the dependencies. @@ -53,7 +50,7 @@ SYSTEMD_SERVICE_${PN}-client = "nfs-statd.service" SYSTEMD_AUTO_ENABLE = "disable" # --enable-uuid is need for cross-compiling -EXTRA_OECONF = "--with-statduser=nobody \ +EXTRA_OECONF = "--with-statduser=rpcuser \ --enable-mountconfig \ --enable-libmount-mount \ --disable-nfsv41 \ @@ -71,11 +68,19 @@ PACKAGECONFIG[nfsidmap] = "--enable-nfsidmap,--disable-nfsidmap,keyutils" INHIBIT_AUTO_STAGE = "1" PACKAGES =+ "${PN}-client ${PN}-stats" + +CONFFILES_${PN}-client += "${localstatedir}/lib/nfs/etab \ + ${localstatedir}/lib/nfs/rmtab \ + ${localstatedir}/lib/nfs/xtab \ + ${localstatedir}/lib/nfs/statd/state \ + ${sysconfdir}/nfsmount.conf" + FILES_${PN}-client = "${base_sbindir}/*mount.nfs* ${sbindir}/*statd \ ${sbindir}/rpc.idmapd ${sbindir}/sm-notify \ ${sbindir}/showmount ${sbindir}/nfsstat \ ${localstatedir}/lib/nfs \ ${sysconfdir}/nfs-utils.conf \ + ${sysconfdir}/nfsmount.conf \ ${sysconfdir}/init.d/nfscommon \ ${systemd_unitdir}/system/nfs-statd.service" FILES_${PN}-stats = "${sbindir}/mountstats ${sbindir}/nfsiostat" @@ -89,11 +94,12 @@ do_compile_prepend() { do_install_append () { install -d ${D}${sysconfdir}/init.d - install -d ${D}${localstatedir}/lib/nfs/statd install -m 0755 ${WORKDIR}/nfsserver ${D}${sysconfdir}/init.d/nfsserver install -m 0755 ${WORKDIR}/nfscommon ${D}${sysconfdir}/init.d/nfscommon install -m 0755 ${WORKDIR}/nfs-utils.conf ${D}${sysconfdir} + install -m 0755 ${S}/utils/mount/nfsmount.conf ${D}${sysconfdir} + install -d ${D}${systemd_unitdir}/system install -m 0644 ${WORKDIR}/nfs-server.service ${D}${systemd_unitdir}/system/ install -m 0644 ${WORKDIR}/nfs-mountd.service ${D}${systemd_unitdir}/system/ @@ -105,6 +111,10 @@ do_install_append () { # kernel code as of 3.8 hard-codes this path as a default install -d ${D}/var/lib/nfs/v4recovery + # chown the directories and files + chown -R rpcuser:rpcuser ${D}${localstatedir}/lib/nfs/statd + chmod 0644 ${D}${localstatedir}/lib/nfs/statd/state + # the following are built by CC_FOR_BUILD rm -f ${D}${sbindir}/rpcdebug rm -f ${D}${sbindir}/rpcgen diff --git a/meta/recipes-connectivity/ofono/ofono.inc b/meta/recipes-connectivity/ofono/ofono.inc index 9f65f4f144..c415a39981 100644 --- a/meta/recipes-connectivity/ofono/ofono.inc +++ b/meta/recipes-connectivity/ofono/ofono.inc @@ -5,18 +5,22 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \ file://src/ofono.h;beginline=1;endline=20;md5=3ce17d5978ef3445def265b98899c2ee" -inherit autotools pkgconfig update-rc.d systemd +inherit autotools pkgconfig update-rc.d systemd bluetooth -DEPENDS = "dbus glib-2.0 udev mobile-broadband-provider-info ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth','bluez4', '', d)}" +DEPENDS = "dbus glib-2.0 udev mobile-broadband-provider-info" INITSCRIPT_NAME = "ofono" INITSCRIPT_PARAMS = "defaults 22" -EXTRA_OECONF += "\ - ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdunitdir=${systemd_unitdir}/system/', '--with-systemdunitdir=', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth','--enable-bluetooth', '--disable-bluetooth', d)} \ - --enable-test \ -" +PACKAGECONFIG ??= "\ + ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \ + " +PACKAGECONFIG[systemd] = "--with-systemdunitdir=${systemd_unitdir}/system/,--with-systemdunitdir=" +PACKAGECONFIG[bluez] = "--enable-bluetooth, --disable-bluetooth, ${BLUEZ}" + +EXTRA_OECONF += "--enable-test" + SYSTEMD_SERVICE_${PN} = "ofono.service" do_install_append() { diff --git a/meta/recipes-connectivity/ofono/ofono/Revert-test-Convert-to-Python-3.patch b/meta/recipes-connectivity/ofono/ofono/Revert-test-Convert-to-Python-3.patch new file mode 100644 index 0000000000..5f8ca77101 --- /dev/null +++ b/meta/recipes-connectivity/ofono/ofono/Revert-test-Convert-to-Python-3.patch @@ -0,0 +1,1270 @@ +Upstream-Status: Inappropriate [configuration] + +From 572fc23f6efd65a2ef9e6c957b2506108738672b Mon Sep 17 00:00:00 2001 +From: Cristian Iorga <cristian.iorga@intel.com> +Date: Mon, 25 Aug 2014 16:59:39 +0300 +Subject: [PATCH] Revert "test: Convert to Python 3" + +This reverts commit c027ab9fbc1a8e8c9e76bcd123df1ad7696307c2. +--- + test/activate-context | 2 +- + test/answer-calls | 2 +- + test/backtrace | 2 +- + test/cancel-ussd | 2 +- + test/cdma-connman-disable | 2 +- + test/cdma-connman-enable | 2 +- + test/cdma-dial-number | 2 +- + test/cdma-hangup | 2 +- + test/cdma-list-call | 2 +- + test/cdma-set-credentials | 2 +- + test/change-pin | 2 +- + test/create-internet-context | 2 +- + test/create-mms-context | 2 +- + test/create-multiparty | 2 +- + test/deactivate-all | 2 +- + test/deactivate-context | 2 +- + test/dial-number | 2 +- + test/disable-call-forwarding | 2 +- + test/disable-gprs | 2 +- + test/disable-modem | 2 +- + test/display-icon | 2 +- + test/enable-cbs | 2 +- + test/enable-gprs | 2 +- + test/enable-modem | 2 +- + test/enter-pin | 2 +- + test/get-icon | 2 +- + test/get-operators | 2 +- + test/get-tech-preference | 2 +- + test/hangup-active | 2 +- + test/hangup-all | 2 +- + test/hangup-call | 2 +- + test/hangup-multiparty | 2 +- + test/hold-and-answer | 2 +- + test/initiate-ussd | 4 ++-- + test/list-calls | 2 +- + test/list-contexts | 2 +- + test/list-messages | 2 +- + test/list-modems | 2 +- + test/list-operators | 2 +- + test/lock-pin | 2 +- + test/lockdown-modem | 2 +- + test/monitor-ofono | 4 ++-- + test/offline-modem | 2 +- + test/online-modem | 2 +- + test/private-chat | 2 +- + test/process-context-settings | 2 +- + test/receive-sms | 2 +- + test/reject-calls | 2 +- + test/release-and-answer | 2 +- + test/release-and-swap | 2 +- + test/remove-contexts | 2 +- + test/reset-pin | 2 +- + test/scan-for-operators | 2 +- + test/send-sms | 2 +- + test/send-ussd | 4 ++-- + test/send-vcal | 2 +- + test/send-vcard | 2 +- + test/set-call-forwarding | 2 +- + test/set-cbs-topics | 2 +- + test/set-context-property | 2 +- + test/set-fast-dormancy | 2 +- + test/set-gsm-band | 2 +- + test/set-mic-volume | 2 +- + test/set-mms-details | 2 +- + test/set-msisdn | 2 +- + test/set-roaming-allowed | 2 +- + test/set-speaker-volume | 2 +- + test/set-tech-preference | 2 +- + test/set-tty | 2 +- + test/set-umts-band | 2 +- + test/set-use-sms-reports | 2 +- + test/swap-calls | 2 +- + test/test-advice-of-charge | 2 +- + test/test-call-barring | 2 +- + test/test-call-forwarding | 2 +- + test/test-call-settings | 2 +- + test/test-cbs | 4 ++-- + test/test-gnss | 4 ++-- + test/test-message-waiting | 2 +- + test/test-modem | 2 +- + test/test-network-registration | 2 +- + test/test-phonebook | 2 +- + test/test-push-notification | 2 +- + test/test-smart-messaging | 2 +- + test/test-sms | 18 +++++++++--------- + test/test-ss | 2 +- + test/test-ss-control-cb | 2 +- + test/test-ss-control-cf | 2 +- + test/test-ss-control-cs | 2 +- + test/test-stk-menu | 34 +++++++++++++++++----------------- + test/unlock-pin | 2 +- + 94 files changed, 124 insertions(+), 124 deletions(-) + +diff --git a/test/activate-context b/test/activate-context +index e4fc702..4241396 100755 +--- a/test/activate-context ++++ b/test/activate-context +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/answer-calls b/test/answer-calls +index daa794b..45ff08f 100755 +--- a/test/answer-calls ++++ b/test/answer-calls +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + +diff --git a/test/backtrace b/test/backtrace +index 03c7632..c624709 100755 +--- a/test/backtrace ++++ b/test/backtrace +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import os + import re +diff --git a/test/cancel-ussd b/test/cancel-ussd +index e7559ba..1797f26 100755 +--- a/test/cancel-ussd ++++ b/test/cancel-ussd +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/cdma-connman-disable b/test/cdma-connman-disable +index 3adc14d..0ddc0cd 100755 +--- a/test/cdma-connman-disable ++++ b/test/cdma-connman-disable +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/cdma-connman-enable b/test/cdma-connman-enable +index ac16a2d..a3cca01 100755 +--- a/test/cdma-connman-enable ++++ b/test/cdma-connman-enable +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/cdma-dial-number b/test/cdma-dial-number +index 683431e..9cdfb24 100755 +--- a/test/cdma-dial-number ++++ b/test/cdma-dial-number +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/cdma-hangup b/test/cdma-hangup +index 41ffa60..493ece4 100755 +--- a/test/cdma-hangup ++++ b/test/cdma-hangup +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/cdma-list-call b/test/cdma-list-call +index b132353..5d36a69 100755 +--- a/test/cdma-list-call ++++ b/test/cdma-list-call +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + +diff --git a/test/cdma-set-credentials b/test/cdma-set-credentials +index a60c86e..a286b0e 100755 +--- a/test/cdma-set-credentials ++++ b/test/cdma-set-credentials +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/change-pin b/test/change-pin +index 301c6ce..000ce53 100755 +--- a/test/change-pin ++++ b/test/change-pin +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/create-internet-context b/test/create-internet-context +index 1089053..efd0998 100755 +--- a/test/create-internet-context ++++ b/test/create-internet-context +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/create-mms-context b/test/create-mms-context +index 598336f..e5be08d 100755 +--- a/test/create-mms-context ++++ b/test/create-mms-context +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/create-multiparty b/test/create-multiparty +index 1b76010..97047c3 100755 +--- a/test/create-multiparty ++++ b/test/create-multiparty +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/deactivate-all b/test/deactivate-all +index 5aa8587..427009e 100755 +--- a/test/deactivate-all ++++ b/test/deactivate-all +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/deactivate-context b/test/deactivate-context +index 5c86a71..df47d2e 100755 +--- a/test/deactivate-context ++++ b/test/deactivate-context +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/dial-number b/test/dial-number +index fe5adad..ee674d9 100755 +--- a/test/dial-number ++++ b/test/dial-number +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/disable-call-forwarding b/test/disable-call-forwarding +index 811e4fa..3609816 100755 +--- a/test/disable-call-forwarding ++++ b/test/disable-call-forwarding +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + from gi.repository import GLib +diff --git a/test/disable-gprs b/test/disable-gprs +index 61ce216..c6c40a5 100755 +--- a/test/disable-gprs ++++ b/test/disable-gprs +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/disable-modem b/test/disable-modem +index 6fba857..ca8c8d8 100755 +--- a/test/disable-modem ++++ b/test/disable-modem +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/display-icon b/test/display-icon +index ac40818..753d14d 100755 +--- a/test/display-icon ++++ b/test/display-icon +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/enable-cbs b/test/enable-cbs +index 4a8bf66..c08bf2b 100755 +--- a/test/enable-cbs ++++ b/test/enable-cbs +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/enable-gprs b/test/enable-gprs +index 68d5ef0..8664891 100755 +--- a/test/enable-gprs ++++ b/test/enable-gprs +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/enable-modem b/test/enable-modem +index fc5958a..dfaaaa8 100755 +--- a/test/enable-modem ++++ b/test/enable-modem +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/enter-pin b/test/enter-pin +index 9556363..c6ee669 100755 +--- a/test/enter-pin ++++ b/test/enter-pin +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/get-icon b/test/get-icon +index 5569a33..fdaaee7 100755 +--- a/test/get-icon ++++ b/test/get-icon +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/get-operators b/test/get-operators +index 0f35c80..62354c5 100755 +--- a/test/get-operators ++++ b/test/get-operators +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/get-tech-preference b/test/get-tech-preference +index 7ba6365..77d20d0 100755 +--- a/test/get-tech-preference ++++ b/test/get-tech-preference +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus, sys + +diff --git a/test/hangup-active b/test/hangup-active +index 82e0eb0..5af62ab 100755 +--- a/test/hangup-active ++++ b/test/hangup-active +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/hangup-all b/test/hangup-all +index 3a0138d..32933db 100755 +--- a/test/hangup-all ++++ b/test/hangup-all +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/hangup-call b/test/hangup-call +index 5a2de20..447020c 100755 +--- a/test/hangup-call ++++ b/test/hangup-call +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/hangup-multiparty b/test/hangup-multiparty +index 24751c3..48fe342 100755 +--- a/test/hangup-multiparty ++++ b/test/hangup-multiparty +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/hold-and-answer b/test/hold-and-answer +index da3be57..2c47e27 100755 +--- a/test/hold-and-answer ++++ b/test/hold-and-answer +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/initiate-ussd b/test/initiate-ussd +index faf50d0..d7022f1 100755 +--- a/test/initiate-ussd ++++ b/test/initiate-ussd +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +@@ -45,7 +45,7 @@ if state == "idle": + print("State: %s" % (state)) + + while state == "user-response": +- response = input("Enter response: ") ++ response = raw_input("Enter response: ") + + result = ussd.Respond(response, timeout=100) + +diff --git a/test/list-calls b/test/list-calls +index f3ee991..08668c6 100755 +--- a/test/list-calls ++++ b/test/list-calls +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + +diff --git a/test/list-contexts b/test/list-contexts +index 78278ca..f0d4094 100755 +--- a/test/list-contexts ++++ b/test/list-contexts +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + +diff --git a/test/list-messages b/test/list-messages +index 9f5bce3..cfccbea 100755 +--- a/test/list-messages ++++ b/test/list-messages +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + +diff --git a/test/list-modems b/test/list-modems +index b9f510a..ed66124 100755 +--- a/test/list-modems ++++ b/test/list-modems +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + +diff --git a/test/list-operators b/test/list-operators +index 064c4e3..349bf41 100755 +--- a/test/list-operators ++++ b/test/list-operators +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/lock-pin b/test/lock-pin +index 96ea9c2..5579735 100755 +--- a/test/lock-pin ++++ b/test/lock-pin +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/lockdown-modem b/test/lockdown-modem +index 4e04205..781abb6 100755 +--- a/test/lockdown-modem ++++ b/test/lockdown-modem +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/monitor-ofono b/test/monitor-ofono +index 8830757..bd31617 100755 +--- a/test/monitor-ofono ++++ b/test/monitor-ofono +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +@@ -6,7 +6,7 @@ import dbus + import dbus.mainloop.glib + + _dbus2py = { +- dbus.String : str, ++ dbus.String : unicode, + dbus.UInt32 : int, + dbus.Int32 : int, + dbus.Int16 : int, +diff --git a/test/offline-modem b/test/offline-modem +index e8c043a..ea1f522 100755 +--- a/test/offline-modem ++++ b/test/offline-modem +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus, sys + +diff --git a/test/online-modem b/test/online-modem +index 029c4a5..310ed7d 100755 +--- a/test/online-modem ++++ b/test/online-modem +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus, sys + +diff --git a/test/private-chat b/test/private-chat +index e7e5406..ef2ef6c 100755 +--- a/test/private-chat ++++ b/test/private-chat +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/process-context-settings b/test/process-context-settings +index 8a3ecfa..0f058b2 100755 +--- a/test/process-context-settings ++++ b/test/process-context-settings +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import os + import dbus +diff --git a/test/receive-sms b/test/receive-sms +index a0c6915..c23eb14 100755 +--- a/test/receive-sms ++++ b/test/receive-sms +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +diff --git a/test/reject-calls b/test/reject-calls +index 71b243e..9edf1ff 100755 +--- a/test/reject-calls ++++ b/test/reject-calls +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + +diff --git a/test/release-and-answer b/test/release-and-answer +index dec8e17..25fd818 100755 +--- a/test/release-and-answer ++++ b/test/release-and-answer +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/release-and-swap b/test/release-and-swap +index cb8c84e..7b3569f 100755 +--- a/test/release-and-swap ++++ b/test/release-and-swap +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/remove-contexts b/test/remove-contexts +index b54184e..c5082cb 100755 +--- a/test/remove-contexts ++++ b/test/remove-contexts +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + +diff --git a/test/reset-pin b/test/reset-pin +index 3fbd126..b429254 100755 +--- a/test/reset-pin ++++ b/test/reset-pin +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/scan-for-operators b/test/scan-for-operators +index b4fc05e..749c710 100755 +--- a/test/scan-for-operators ++++ b/test/scan-for-operators +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/send-sms b/test/send-sms +index 98808aa..e06444d 100755 +--- a/test/send-sms ++++ b/test/send-sms +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/send-ussd b/test/send-ussd +index a20e098..e585883 100755 +--- a/test/send-ussd ++++ b/test/send-ussd +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +@@ -46,7 +46,7 @@ if state == "idle": + print("State: %s" % (state)) + + while state == "user-response": +- response = input("Enter response: ") ++ response = raw_input("Enter response: ") + + print(ussd.Respond(response, timeout=100)) + +diff --git a/test/send-vcal b/test/send-vcal +index 566daef..7f8272b 100755 +--- a/test/send-vcal ++++ b/test/send-vcal +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/send-vcard b/test/send-vcard +index 4dedf51..250b36f 100755 +--- a/test/send-vcard ++++ b/test/send-vcard +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/set-call-forwarding b/test/set-call-forwarding +index 49d1ce0..9fd358b 100755 +--- a/test/set-call-forwarding ++++ b/test/set-call-forwarding +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + from gi.repository import GLib +diff --git a/test/set-cbs-topics b/test/set-cbs-topics +index db95e16..78d6d44 100755 +--- a/test/set-cbs-topics ++++ b/test/set-cbs-topics +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/set-context-property b/test/set-context-property +index 5ff7a67..64a6fb8 100755 +--- a/test/set-context-property ++++ b/test/set-context-property +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/set-fast-dormancy b/test/set-fast-dormancy +index ef77bcd..7bf7715 100755 +--- a/test/set-fast-dormancy ++++ b/test/set-fast-dormancy +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/set-gsm-band b/test/set-gsm-band +index b37bcb5..3c17c10 100755 +--- a/test/set-gsm-band ++++ b/test/set-gsm-band +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/set-mic-volume b/test/set-mic-volume +index cd6c73f..e0bff49 100755 +--- a/test/set-mic-volume ++++ b/test/set-mic-volume +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/set-mms-details b/test/set-mms-details +index 6ee59fa..d2d0838 100755 +--- a/test/set-mms-details ++++ b/test/set-mms-details +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/set-msisdn b/test/set-msisdn +index b5fe819..01f284d 100755 +--- a/test/set-msisdn ++++ b/test/set-msisdn +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/set-roaming-allowed b/test/set-roaming-allowed +index 698c8b6..9e3e058 100755 +--- a/test/set-roaming-allowed ++++ b/test/set-roaming-allowed +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/set-speaker-volume b/test/set-speaker-volume +index 6d4e301..7962f39 100755 +--- a/test/set-speaker-volume ++++ b/test/set-speaker-volume +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/set-tech-preference b/test/set-tech-preference +index b549abc..2666cbd 100755 +--- a/test/set-tech-preference ++++ b/test/set-tech-preference +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/set-tty b/test/set-tty +index eed1fba..53d6b99 100755 +--- a/test/set-tty ++++ b/test/set-tty +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/set-umts-band b/test/set-umts-band +index 0bae5c4..c1e6448 100755 +--- a/test/set-umts-band ++++ b/test/set-umts-band +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/set-use-sms-reports b/test/set-use-sms-reports +index 288d4e1..a4efe4f 100755 +--- a/test/set-use-sms-reports ++++ b/test/set-use-sms-reports +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +diff --git a/test/swap-calls b/test/swap-calls +index 018a8d3..eeb257b 100755 +--- a/test/swap-calls ++++ b/test/swap-calls +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/test-advice-of-charge b/test/test-advice-of-charge +index 6e87e61..0f1f57f 100755 +--- a/test/test-advice-of-charge ++++ b/test/test-advice-of-charge +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + import sys +diff --git a/test/test-call-barring b/test/test-call-barring +index eedb69f..be4ab57 100755 +--- a/test/test-call-barring ++++ b/test/test-call-barring +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + import sys +diff --git a/test/test-call-forwarding b/test/test-call-forwarding +index 5db84d7..01a7294 100755 +--- a/test/test-call-forwarding ++++ b/test/test-call-forwarding +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +diff --git a/test/test-call-settings b/test/test-call-settings +index 435594c..5d7ee49 100755 +--- a/test/test-call-settings ++++ b/test/test-call-settings +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +diff --git a/test/test-cbs b/test/test-cbs +index a5cec06..13cdd80 100755 +--- a/test/test-cbs ++++ b/test/test-cbs +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import dbus.mainloop.glib +@@ -78,7 +78,7 @@ def set_topics(cbs): + invalidData = False; + index = 0 + +- topics = input('Enter the topic ID(s) you want to register to: ') ++ topics = raw_input('Enter the topic ID(s) you want to register to: ') + + while index < len(topics): + if topics[index] == ',' or topics[index] == '-': +diff --git a/test/test-gnss b/test/test-gnss +index 6ae64db..aa0b160 100755 +--- a/test/test-gnss ++++ b/test/test-gnss +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + import sys +@@ -40,7 +40,7 @@ def print_menu(): + def stdin_handler(channel, condition, gnss, path): + in_key = os.read(channel.unix_get_fd(), 160).rstrip().decode('UTF-8') + if in_key == '0': +- xml = input('type the element and press enter: ') ++ xml = raw_input('type the element and press enter: ') + try: + gnss.SendPositioningElement(dbus.String(xml)) + print("ok") +diff --git a/test/test-message-waiting b/test/test-message-waiting +index 432862e..b93fbf3 100755 +--- a/test/test-message-waiting ++++ b/test/test-message-waiting +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + import sys +diff --git a/test/test-modem b/test/test-modem +index aa38b1f..29dbf14 100755 +--- a/test/test-modem ++++ b/test/test-modem +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +diff --git a/test/test-network-registration b/test/test-network-registration +index 68b4347..c5ad586 100755 +--- a/test/test-network-registration ++++ b/test/test-network-registration +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + import sys +diff --git a/test/test-phonebook b/test/test-phonebook +index 42646d3..116fd4f 100755 +--- a/test/test-phonebook ++++ b/test/test-phonebook +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus, sys + +diff --git a/test/test-push-notification b/test/test-push-notification +index d972ad3..ecc6afb 100755 +--- a/test/test-push-notification ++++ b/test/test-push-notification +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +diff --git a/test/test-smart-messaging b/test/test-smart-messaging +index f22efd2..188ac1e 100755 +--- a/test/test-smart-messaging ++++ b/test/test-smart-messaging +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +diff --git a/test/test-sms b/test/test-sms +index 30ac651..49935e1 100755 +--- a/test/test-sms ++++ b/test/test-sms +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + # -*- coding: utf-8 -*- + + from gi.repository import GLib +@@ -132,7 +132,7 @@ def stdin_handler(channel, condition, sms, value, number): + lock = "on" + if in_key == '0': + print_send_sms_menu() +- sms_type = input('Select SMS type: ') ++ sms_type = raw_input('Select SMS type: ') + + if sms_type == '1': + message_send(sms, number, value) +@@ -150,49 +150,49 @@ def stdin_handler(channel, condition, sms, value, number): + + elif in_key == '1': + message_delivery_report(sms, 1) +- send_msg = input('Send test message[y/n]?: ') ++ send_msg = raw_input('Send test message[y/n]?: ') + if send_msg == 'y': + message_send(sms, number, ("(1)" + value + + ": UseDeliveryReports[TRUE]")) + + elif in_key == '2': + message_delivery_report(sms, 0) +- send_msg = input('Send test message[y/n]?: ') ++ send_msg = raw_input('Send test message[y/n]?: ') + if send_msg == 'y': + message_send(sms, number, ("(2) " + value + + ": UseDeliveryReports[FALSE]")) + + elif in_key == '3': + message_service_center_address(sms, SCA) +- send_msg = input('Send test message[y/n]?: ') ++ send_msg = raw_input('Send test message[y/n]?: ') + if send_msg == 'y': + message_send(sms, number, ("(3) " + value + + ": ServiceCenterAddress")) + + elif in_key == '4': + message_bearer(sms, "ps-only") +- send_msg = input('Send test message[y/n]?: ') ++ send_msg = raw_input('Send test message[y/n]?: ') + if send_msg == 'y': + message_send(sms, number, ("(4) " + value + + ": Bearer[ps-only]")) + + elif in_key == '5': + message_bearer(sms, "cs-only") +- send_msg = input('Send test message[y/n]?: ') ++ send_msg = raw_input('Send test message[y/n]?: ') + if send_msg == 'y': + message_send(sms, number, ("(5) " + value + + ": Bearer[cs-only]")) + + elif in_key == '6': + message_bearer(sms, "ps-preferred") +- send_msg = input('Send test message[y/n]?: ') ++ send_msg = raw_input('Send test message[y/n]?: ') + if send_msg == 'y': + message_send(sms, number, ("(6) " + value + + ": Bearer[ps-preferred]")) + + elif in_key == '7': + message_bearer(sms, "cs-preferred") +- send_msg = input('Send test message[y/n]?: ') ++ send_msg = raw_input('Send test message[y/n]?: ') + if send_msg == 'y': + message_send(sms,number, ("(7) " + value + + ": Bearer[cs-preferred]")) +diff --git a/test/test-ss b/test/test-ss +index 4cd8732..2c80806 100755 +--- a/test/test-ss ++++ b/test/test-ss +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import sys + import dbus +diff --git a/test/test-ss-control-cb b/test/test-ss-control-cb +index ddae6d3..86bac9b 100755 +--- a/test/test-ss-control-cb ++++ b/test/test-ss-control-cb +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +diff --git a/test/test-ss-control-cf b/test/test-ss-control-cf +index 095eb5d..d30bf4f 100755 +--- a/test/test-ss-control-cf ++++ b/test/test-ss-control-cf +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +diff --git a/test/test-ss-control-cs b/test/test-ss-control-cs +index 8180474..e0ed1d1 100755 +--- a/test/test-ss-control-cs ++++ b/test/test-ss-control-cs +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +diff --git a/test/test-stk-menu b/test/test-stk-menu +index 0cf8fa2..ac0a5bd 100755 +--- a/test/test-stk-menu ++++ b/test/test-stk-menu +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + from gi.repository import GLib + +@@ -58,7 +58,7 @@ class StkAgent(dbus.service.Object): + index += 1 + + print("\nDefault: %d" % (default)) +- select = input("Enter Selection (t, b):") ++ select = raw_input("Enter Selection (t, b):") + + if select == 'b': + raise GoBack("User wishes to go back") +@@ -75,7 +75,7 @@ class StkAgent(dbus.service.Object): + print("DisplayText (%s)" % (title)) + print("Icon: (%d)" % (int(icon))) + print("Urgent: (%d)" % (urgent)) +- key = input("Press return to clear ('t' terminates, " ++ key = raw_input("Press return to clear ('t' terminates, " + "'b' goes back, 'n' busy, " + "'w' return and wait):") + +@@ -108,7 +108,7 @@ class StkAgent(dbus.service.Object): + print("Hide typing: (%s)" % (hide_typing)) + print("Enter characters, min: %d, max: %d:" % (min_chars, + max_chars)) +- userin = input("") ++ userin = raw_input("") + + return userin + +@@ -122,7 +122,7 @@ class StkAgent(dbus.service.Object): + print("Hide typing: (%s)" % (hide_typing)) + print("Enter digits, min: %d, max: %d:" % (min_chars, + max_chars)) +- userin = input("'t' terminates, 'b' goes back:") ++ userin = raw_input("'t' terminates, 'b' goes back:") + + if userin == 'b': + raise GoBack("User wishes to go back") +@@ -136,7 +136,7 @@ class StkAgent(dbus.service.Object): + def RequestKey(self, title, icon): + print("Title: (%s)" % (title)) + print("Icon: (%d)" % (int(icon))) +- key = input("Enter Key (t, b):") ++ key = raw_input("Enter Key (t, b):") + + if key == 'b': + raise GoBack("User wishes to go back") +@@ -150,7 +150,7 @@ class StkAgent(dbus.service.Object): + def RequestDigit(self, title, icon): + print("Title: (%s)" % (title)) + print("Icon: (%d)" % (int(icon))) +- key = input("Enter Digit (t, b):") ++ key = raw_input("Enter Digit (t, b):") + + if key == 'b': + raise GoBack("User wishes to go back") +@@ -164,7 +164,7 @@ class StkAgent(dbus.service.Object): + def RequestQuickDigit(self, title, icon): + print("Title: (%s)" % (title)) + print("Icon: (%d)" % (int(icon))) +- key = input("Quick digit (0-9, *, #, t, b):") ++ key = raw_input("Quick digit (0-9, *, #, t, b):") + + if key == 'b': + raise GoBack("User wishes to go back") +@@ -178,7 +178,7 @@ class StkAgent(dbus.service.Object): + def RequestConfirmation(self, title, icon): + print("Title: (%s)" % (title)) + print("Icon: (%d)" % (int(icon))) +- key = input("Enter Confirmation (t, b, y, n):") ++ key = raw_input("Enter Confirmation (t, b, y, n):") + + if key == 'b': + raise GoBack("User wishes to go back") +@@ -194,7 +194,7 @@ class StkAgent(dbus.service.Object): + def ConfirmCallSetup(self, info, icon): + print("Information: (%s)" % (info)) + print("Icon: (%d)" % (int(icon))) +- key = input("Enter Confirmation (t, y, n):") ++ key = raw_input("Enter Confirmation (t, y, n):") + + if key == 't': + raise EndSession("User wishes to terminate session") +@@ -209,7 +209,7 @@ class StkAgent(dbus.service.Object): + print("Information: (%s)" % (info)) + print("Icon: (%d)" % (int(icon))) + print("URL (%s)" % (url)) +- key = input("Enter Confirmation (y, n):") ++ key = raw_input("Enter Confirmation (y, n):") + + if key == 'y': + return True +@@ -232,7 +232,7 @@ class StkAgent(dbus.service.Object): + signal.alarm(5) + + try: +- key = input("Press return to end before end of" ++ key = raw_input("Press return to end before end of" + " single tone (t):") + signal.alarm(0) + +@@ -250,7 +250,7 @@ class StkAgent(dbus.service.Object): + print("LoopTone: %s" % (tone)) + print("Text: %s" % (text)) + print("Icon: %d" % (int(icon))) +- key = input("Press return to end before timeout " ++ key = raw_input("Press return to end before timeout " + "('t' terminates, 'w' return and wait):") + + if key == 'w': +@@ -279,7 +279,7 @@ class StkAgent(dbus.service.Object): + def DisplayAction(self, text, icon): + print("Text: (%s)" % (text)) + print("Icon: (%d)" % (int(icon))) +- key = input("Press 't' to terminate the session ") ++ key = raw_input("Press 't' to terminate the session ") + + if key == 't': + raise EndSession("User wishes to terminate session") +@@ -289,7 +289,7 @@ class StkAgent(dbus.service.Object): + def ConfirmOpenChannel(self, info, icon): + print("Open channel confirmation: (%s)" % (info)) + print("Icon: (%d)" % (int(icon))) +- key = input("Enter Confirmation (t, y, n):") ++ key = raw_input("Enter Confirmation (t, y, n):") + + if key == 't': + raise EndSession("User wishes to terminate session") +@@ -299,7 +299,7 @@ class StkAgent(dbus.service.Object): + return False + + _dbus2py = { +- dbus.String : str, ++ dbus.String : unicode, + dbus.UInt32 : int, + dbus.Int32 : int, + dbus.Int16 : int, +@@ -396,7 +396,7 @@ if __name__ == '__main__': + except: + pass + +- select = int(input("Enter Selection: ")) ++ select = int(raw_input("Enter Selection: ")) + stk.SelectItem(select, path) + elif mode == 'agent': + path = "/test/agent" +diff --git a/test/unlock-pin b/test/unlock-pin +index 61f4765..10b6626 100755 +--- a/test/unlock-pin ++++ b/test/unlock-pin +@@ -1,4 +1,4 @@ +-#!/usr/bin/python3 ++#!/usr/bin/python + + import dbus + import sys +-- +1.9.1 + diff --git a/meta/recipes-connectivity/ofono/ofono_1.14.bb b/meta/recipes-connectivity/ofono/ofono_1.14.bb deleted file mode 100644 index dea5d8808f..0000000000 --- a/meta/recipes-connectivity/ofono/ofono_1.14.bb +++ /dev/null @@ -1,13 +0,0 @@ -require ofono.inc - -PR = "r1" - -SRC_URI = "\ - ${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \ - file://ofono \ -" - -SRC_URI[md5sum] = "8bc398d86642408cc71d039f59c61538" -SRC_URI[sha256sum] = "84d28d37cbc47129628a78bf3e17323af1636dceb2494511dd44caa829fb277f" - -CFLAGS_append_libc-uclibc = " -D_GNU_SOURCE" diff --git a/meta/recipes-connectivity/ofono/ofono_1.16.bb b/meta/recipes-connectivity/ofono/ofono_1.16.bb new file mode 100644 index 0000000000..712fc5c805 --- /dev/null +++ b/meta/recipes-connectivity/ofono/ofono_1.16.bb @@ -0,0 +1,11 @@ +require ofono.inc + +SRC_URI = "\ + ${KERNELORG_MIRROR}/linux/network/${BPN}/${BP}.tar.xz \ + file://ofono \ + file://Revert-test-Convert-to-Python-3.patch \ +" +SRC_URI[md5sum] = "c31b5b55a1d68354bff771d3edf02829" +SRC_URI[sha256sum] = "403b98dadece8bc804c0bd16b96d3db5a3bb0f84af64b3d67924da2d1a754b07" + +CFLAGS_append_libc-uclibc = " -D_GNU_SOURCE" diff --git a/meta/recipes-connectivity/openssh/openssh/auth2-none.c-avoid-authenticate-empty-passwords-to-m.patch b/meta/recipes-connectivity/openssh/openssh/auth2-none.c-avoid-authenticate-empty-passwords-to-m.patch new file mode 100644 index 0000000000..ba13cd1919 --- /dev/null +++ b/meta/recipes-connectivity/openssh/openssh/auth2-none.c-avoid-authenticate-empty-passwords-to-m.patch @@ -0,0 +1,30 @@ +Upstream-Status: Pending + +Subject: auth2-none.c: avoid authenticate empty passwords to mess up with PAM + +If UsePAM, PermitEmptyPasswords, PasswordAuthentication are enabled. The ssh daemon +will try to authenticate an empty password, resulting in login failures of any user. +If PAM is enabled, then we should leave the task of password authentication to PAM. + +Signed-off-by: Chen Qi <Qi.Chen@windriver.com> + +--- + auth2-none.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/auth2-none.c b/auth2-none.c +index c8c6c74..b48b2fd 100644 +--- a/auth2-none.c ++++ b/auth2-none.c +@@ -61,7 +61,7 @@ userauth_none(Authctxt *authctxt) + { + none_enabled = 0; + packet_check_eom(); +- if (options.permit_empty_passwd && options.password_authentication) ++ if (options.permit_empty_passwd && options.password_authentication && !options.use_pam) + return (PRIVSEP(auth_password(authctxt, ""))); + return (0); + } +-- +1.7.9.5 + diff --git a/meta/recipes-connectivity/openssh/openssh/init b/meta/recipes-connectivity/openssh/openssh/init index 37c8e7b907..70d4a34659 100644 --- a/meta/recipes-connectivity/openssh/openssh/init +++ b/meta/recipes-connectivity/openssh/openssh/init @@ -1,6 +1,8 @@ #! /bin/sh set -e +PIDFILE=/var/run/sshd.pid + # source function library . /etc/init.d/functions @@ -70,12 +72,12 @@ case "$1" in echo "Starting OpenBSD Secure Shell server: sshd" check_keys check_privsep_dir - start-stop-daemon -S -x /usr/sbin/sshd -- $SSHD_OPTS + start-stop-daemon -S -p $PIDFILE -x /usr/sbin/sshd -- $SSHD_OPTS echo "done." ;; stop) echo -n "Stopping OpenBSD Secure Shell server: sshd" - start-stop-daemon -K -x /usr/sbin/sshd + start-stop-daemon -K -p $PIDFILE -x /usr/sbin/sshd echo "." ;; @@ -84,7 +86,7 @@ case "$1" in check_keys check_config echo -n "Reloading OpenBSD Secure Shell server's configuration" - start-stop-daemon -K -s 1 -x /usr/sbin/sshd + start-stop-daemon -K -p $PIDFILE -s 1 -x /usr/sbin/sshd echo "." ;; @@ -92,11 +94,11 @@ case "$1" in check_keys check_config echo -n "Restarting OpenBSD Secure Shell server: sshd" - start-stop-daemon -K --oknodo -x /usr/sbin/sshd + start-stop-daemon -K -p $PIDFILE --oknodo -x /usr/sbin/sshd check_for_no_start check_privsep_dir sleep 2 - start-stop-daemon -S -x /usr/sbin/sshd -- $SSHD_OPTS + start-stop-daemon -S -p $PIDFILE -x /usr/sbin/sshd -- $SSHD_OPTS echo "." ;; diff --git a/meta/recipes-connectivity/openssh/openssh/nostrip.patch b/meta/recipes-connectivity/openssh/openssh/nostrip.patch deleted file mode 100644 index 33111f5494..0000000000 --- a/meta/recipes-connectivity/openssh/openssh/nostrip.patch +++ /dev/null @@ -1,20 +0,0 @@ -Disable stripping binaries during make install. - -Upstream-Status: Inappropriate [configuration] - -Build system specific. - -Signed-off-by: Scott Garman <scott.a.garman@intel.com> - -diff -ur openssh-5.6p1.orig/Makefile.in openssh-5.6p1/Makefile.in ---- openssh-5.6p1.orig/Makefile.in 2010-05-11 23:51:39.000000000 -0700 -+++ openssh-5.6p1/Makefile.in 2010-08-30 16:49:54.000000000 -0700 -@@ -29,7 +29,7 @@ - RAND_HELPER=$(libexecdir)/ssh-rand-helper - PRIVSEP_PATH=@PRIVSEP_PATH@ - SSH_PRIVSEP_USER=@SSH_PRIVSEP_USER@ --STRIP_OPT=@STRIP_OPT@ -+STRIP_OPT= - - PATHS= -DSSHDIR=\"$(sysconfdir)\" \ - -D_PATH_SSH_PROGRAM=\"$(SSH_PROGRAM)\" \ diff --git a/meta/recipes-connectivity/openssh/openssh/openssh-CVE-2011-4327.patch b/meta/recipes-connectivity/openssh/openssh/openssh-CVE-2011-4327.patch deleted file mode 100644 index 30c11cf432..0000000000 --- a/meta/recipes-connectivity/openssh/openssh/openssh-CVE-2011-4327.patch +++ /dev/null @@ -1,29 +0,0 @@ -openssh-CVE-2011-4327 - -A security flaw was found in the way ssh-keysign, -a ssh helper program for host based authentication, -attempted to retrieve enough entropy information on configurations that -lacked a built-in entropy pool in OpenSSL (a ssh-rand-helper program would -be executed to retrieve the entropy from the system environment). -A local attacker could use this flaw to obtain unauthorized access to host keys -via ptrace(2) process trace attached to the 'ssh-rand-helper' program. - -https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2011-4327 -http://www.openssh.com/txt/portable-keysign-rand-helper.adv - -Upstream-Status: Pending - -Signed-off-by: Li Wang <li.wang@windriver.com> ---- a/ssh-keysign.c -+++ b/ssh-keysign.c -@@ -170,6 +170,10 @@ - key_fd[i++] = open(_PATH_HOST_DSA_KEY_FILE, O_RDONLY); - key_fd[i++] = open(_PATH_HOST_ECDSA_KEY_FILE, O_RDONLY); - key_fd[i++] = open(_PATH_HOST_RSA_KEY_FILE, O_RDONLY); -+ if (fcntl(key_fd[0], F_SETFD, FD_CLOEXEC) != 0 || -+ fcntl(key_fd[1], F_SETFD, FD_CLOEXEC) != 0 || -+ fcntl(key_fd[2], F_SETFD, FD_CLOEXEC) != 0) -+ fatal("fcntl failed"); - - original_real_uid = getuid(); /* XXX readconf.c needs this */ - if ((pw = getpwuid(original_real_uid)) == NULL) diff --git a/meta/recipes-connectivity/openssh/openssh/openssh-CVE-2014-2532.patch b/meta/recipes-connectivity/openssh/openssh/openssh-CVE-2014-2532.patch deleted file mode 100644 index 3deaf3f0e9..0000000000 --- a/meta/recipes-connectivity/openssh/openssh/openssh-CVE-2014-2532.patch +++ /dev/null @@ -1,22 +0,0 @@ -Upstream-Status: Backport - -Fix for CVE-2014-2532 - -Backported from openssh-6.6p1.tar.gz - -Signed-off-by: Chen Qi <Qi.Chen@windriver.com> ---- ---- a/session.c -+++ b/session.c -@@ -955,6 +955,11 @@ - u_int envsize; - u_int i, namelen; - -+ if (strchr(name, '=') != NULL) { -+ error("Invalid environment variable \"%.100s\"", name); -+ return; -+ } -+ - /* - * If we're passed an uninitialized list, allocate a single null - * entry before continuing. diff --git a/meta/recipes-connectivity/openssh/openssh/openssh-CVE-2014-2653.patch b/meta/recipes-connectivity/openssh/openssh/openssh-CVE-2014-2653.patch deleted file mode 100644 index 674d186044..0000000000 --- a/meta/recipes-connectivity/openssh/openssh/openssh-CVE-2014-2653.patch +++ /dev/null @@ -1,114 +0,0 @@ -Upstream-Status: Backport - -This CVE could be removed if openssh is upgrade to 6.6 or higher. -Below are some details. - -Attempt SSHFP lookup even if server presents a certificate - -Reference: -https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=742513 - -If an ssh server presents a certificate to the client, then the client -does not check the DNS for SSHFP records. This means that a malicious -server can essentially disable DNS-host-key-checking, which means the -client will fall back to asking the user (who will just say "yes" to -the fingerprint, sadly). - -This patch means that the ssh client will, if necessary, extract the -server key from the proffered certificate, and attempt to verify it -against the DNS. The patch was written by Mark Wooding -<mdw@distorted.org.uk>. I modified it to add one debug2 call, reviewed -it, and tested it. - -Signed-off-by: Matthew Vernon <matthew@debian.org> -Signed-off-by: Chen Qi <Qi.Chen@windriver.com> ---- ---- a/sshconnect.c -+++ b/sshconnect.c -@@ -1210,36 +1210,63 @@ fail: - return -1; - } - -+static int -+check_host_key_sshfp(char *host, struct sockaddr *hostaddr, Key *host_key) -+{ -+ int rc = -1; -+ int flags = 0; -+ Key *raw_key = NULL; -+ -+ if (!options.verify_host_key_dns) -+ goto done; -+ -+ /* XXX certs are not yet supported for DNS; try looking the raw key -+ * up in the DNS anyway. -+ */ -+ if (key_is_cert(host_key)) { -+ debug2("Extracting key from cert for SSHFP lookup"); -+ raw_key = key_from_private(host_key); -+ if (key_drop_cert(raw_key)) -+ fatal("Couldn't drop certificate"); -+ host_key = raw_key; -+ } -+ -+ if (verify_host_key_dns(host, hostaddr, host_key, &flags)) -+ goto done; -+ -+ if (flags & DNS_VERIFY_FOUND) { -+ -+ if (options.verify_host_key_dns == 1 && -+ flags & DNS_VERIFY_MATCH && -+ flags & DNS_VERIFY_SECURE) { -+ rc = 0; -+ } else if (flags & DNS_VERIFY_MATCH) { -+ matching_host_key_dns = 1; -+ } else { -+ warn_changed_key(host_key); -+ error("Update the SSHFP RR in DNS with the new " -+ "host key to get rid of this message."); -+ } -+ } -+ -+done: -+ if (raw_key) -+ key_free(raw_key); -+ return rc; -+} -+ - /* returns 0 if key verifies or -1 if key does NOT verify */ - int - verify_host_key(char *host, struct sockaddr *hostaddr, Key *host_key) - { -- int flags = 0; - char *fp; - - fp = key_fingerprint(host_key, SSH_FP_MD5, SSH_FP_HEX); - debug("Server host key: %s %s", key_type(host_key), fp); - free(fp); - -- /* XXX certs are not yet supported for DNS */ -- if (!key_is_cert(host_key) && options.verify_host_key_dns && -- verify_host_key_dns(host, hostaddr, host_key, &flags) == 0) { -- if (flags & DNS_VERIFY_FOUND) { -- -- if (options.verify_host_key_dns == 1 && -- flags & DNS_VERIFY_MATCH && -- flags & DNS_VERIFY_SECURE) -- return 0; -- -- if (flags & DNS_VERIFY_MATCH) { -- matching_host_key_dns = 1; -- } else { -- warn_changed_key(host_key); -- error("Update the SSHFP RR in DNS with the new " -- "host key to get rid of this message."); -- } -- } -- } -+ if (check_host_key_sshfp(host, hostaddr, host_key) == 0) -+ return 0; - - return check_host_key(host, hostaddr, options.port, host_key, RDRW, - options.user_hostfiles, options.num_user_hostfiles, --- -1.7.9.5 - diff --git a/meta/recipes-connectivity/openssh/openssh/ssh_config b/meta/recipes-connectivity/openssh/openssh/ssh_config index 4a4a649ba8..9e919156d3 100644 --- a/meta/recipes-connectivity/openssh/openssh/ssh_config +++ b/meta/recipes-connectivity/openssh/openssh/ssh_config @@ -1,4 +1,4 @@ -# $OpenBSD: ssh_config,v 1.25 2009/02/17 01:28:32 djm Exp $ +# $OpenBSD: ssh_config,v 1.28 2013/09/16 11:35:43 sthen Exp $ # This is the ssh client system-wide configuration file. See # ssh_config(5) for more information. This file provides defaults for @@ -44,3 +44,5 @@ Host * # TunnelDevice any:any # PermitLocalCommand no # VisualHostKey no +# ProxyCommand ssh -q -W %h:%p gateway.example.com +# RekeyLimit 1G 1h diff --git a/meta/recipes-connectivity/openssh/openssh/sshd@.service b/meta/recipes-connectivity/openssh/openssh/sshd@.service index 4eda6592f5..bb2d68e96a 100644 --- a/meta/recipes-connectivity/openssh/openssh/sshd@.service +++ b/meta/recipes-connectivity/openssh/openssh/sshd@.service @@ -8,3 +8,4 @@ ExecStart=-@SBINDIR@/sshd -i ExecReload=@BASE_BINDIR@/kill -HUP $MAINPID StandardInput=socket StandardError=syslog +KillMode=process diff --git a/meta/recipes-connectivity/openssh/openssh/sshd_config b/meta/recipes-connectivity/openssh/openssh/sshd_config index 4f9b626fbd..3553669aa0 100644 --- a/meta/recipes-connectivity/openssh/openssh/sshd_config +++ b/meta/recipes-connectivity/openssh/openssh/sshd_config @@ -15,9 +15,7 @@ #ListenAddress 0.0.0.0 #ListenAddress :: -# Disable legacy (protocol version 1) support in the server for new -# installations. In future the default will change to require explicit -# activation of protocol 1 +# The default requires explicit activation of protocol 1 Protocol 2 # HostKey for protocol version 1 @@ -25,11 +23,16 @@ Protocol 2 # HostKeys for protocol version 2 #HostKey /etc/ssh/ssh_host_rsa_key #HostKey /etc/ssh/ssh_host_dsa_key +#HostKey /etc/ssh/ssh_host_ecdsa_key +#HostKey /etc/ssh/ssh_host_ed25519_key # Lifetime and size of ephemeral version 1 server key #KeyRegenerationInterval 1h #ServerKeyBits 1024 +# Ciphers and keying +#RekeyLimit default none + # Logging # obsoletes QuietMode and FascistLogging #SyslogFacility AUTH @@ -45,7 +48,15 @@ Protocol 2 #RSAAuthentication yes #PubkeyAuthentication yes -#AuthorizedKeysFile .ssh/authorized_keys + +# The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2 +# but this is overridden so installations will only check .ssh/authorized_keys +AuthorizedKeysFile .ssh/authorized_keys + +#AuthorizedPrincipalsFile none + +#AuthorizedKeysCommand none +#AuthorizedKeysCommandUser nobody # For this to work you will also need host keys in /etc/ssh/ssh_known_hosts #RhostsRSAAuthentication no @@ -74,8 +85,8 @@ Protocol 2 #GSSAPIAuthentication no #GSSAPICleanupCredentials yes -# Set this to 'yes' to enable PAM authentication, account processing, -# and session processing. If this is enabled, PAM authentication will +# Set this to 'yes' to enable PAM authentication, account processing, +# and session processing. If this is enabled, PAM authentication will # be allowed through the ChallengeResponseAuthentication and # PasswordAuthentication. Depending on your PAM configuration, # PAM authentication via ChallengeResponseAuthentication may bypass @@ -91,20 +102,22 @@ Protocol 2 #X11Forwarding no #X11DisplayOffset 10 #X11UseLocalhost yes +#PermitTTY yes #PrintMotd yes #PrintLastLog yes #TCPKeepAlive yes #UseLogin no -UsePrivilegeSeparation yes +UsePrivilegeSeparation sandbox # Default for new installations. #PermitUserEnvironment no Compression no ClientAliveInterval 15 ClientAliveCountMax 4 #UseDNS yes #PidFile /var/run/sshd.pid -#MaxStartups 10 +#MaxStartups 10:30:100 #PermitTunnel no #ChrootDirectory none +#VersionAddendum none # no default banner path #Banner none @@ -116,4 +129,5 @@ Subsystem sftp /usr/libexec/sftp-server #Match User anoncvs # X11Forwarding no # AllowTcpForwarding no +# PermitTTY no # ForceCommand cvs server diff --git a/meta/recipes-connectivity/openssh/openssh/sshdgenkeys.service b/meta/recipes-connectivity/openssh/openssh/sshdgenkeys.service index c21d70baf0..d65086fc8a 100644 --- a/meta/recipes-connectivity/openssh/openssh/sshdgenkeys.service +++ b/meta/recipes-connectivity/openssh/openssh/sshdgenkeys.service @@ -3,6 +3,7 @@ Description=OpenSSH Key Generation ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key ConditionPathExists=|!/etc/ssh/ssh_host_ecdsa_key +ConditionPathExists=|!/etc/ssh/ssh_host_ed25519_key [Service] ExecStart=@BINDIR@/ssh-keygen -A diff --git a/meta/recipes-connectivity/openssh/openssh_6.6p1.bb b/meta/recipes-connectivity/openssh/openssh_6.7p1.bb index 8f32c2e63e..a2726291fe 100644 --- a/meta/recipes-connectivity/openssh/openssh_6.6p1.bb +++ b/meta/recipes-connectivity/openssh/openssh_6.7p1.bb @@ -11,11 +11,9 @@ DEPENDS = "zlib openssl" DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" SRC_URI = "ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-${PV}.tar.gz \ - file://nostrip.patch \ file://sshd_config \ file://ssh_config \ file://init \ - file://openssh-CVE-2011-4327.patch \ ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \ file://sshd.socket \ file://sshd@.service \ @@ -23,13 +21,12 @@ SRC_URI = "ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-${PV}.tar. file://volatiles.99_sshd \ file://add-test-support-for-busybox.patch \ file://run-ptest \ - file://openssh-CVE-2014-2532.patch \ - file://openssh-CVE-2014-2653.patch" + file://auth2-none.c-avoid-authenticate-empty-passwords-to-m.patch" PAM_SRC_URI = "file://sshd" -SRC_URI[md5sum] = "3e9800e6bca1fbac0eea4d41baa7f239" -SRC_URI[sha256sum] = "48c1f0664b4534875038004cc4f3555b8329c2a81c1df48db5c517800de203bb" +SRC_URI[md5sum] = "3246aa79317b1d23cae783a3bf8275d6" +SRC_URI[sha256sum] = "b2f8394eae858dabbdef7dac10b99aec00c95462753e80342e530bbb6f725507" inherit useradd update-rc.d update-alternatives systemd @@ -42,14 +39,10 @@ INITSCRIPT_PARAMS_${PN}-sshd = "defaults 9" SYSTEMD_PACKAGES = "${PN}-sshd" SYSTEMD_SERVICE_${PN}-sshd = "sshd.socket" -PACKAGECONFIG ??= "tcp-wrappers" -PACKAGECONFIG[tcp-wrappers] = "--with-tcp-wrappers,,tcp-wrappers" - inherit autotools-brokensep ptest # LFS support: CFLAGS += "-D__FILE_OFFSET_BITS=64" -export LD = "${CC}" # login path is hardcoded in sshd EXTRA_OECONF = "'LOGIN_PROGRAM=${base_bindir}/login' \ @@ -57,7 +50,9 @@ EXTRA_OECONF = "'LOGIN_PROGRAM=${base_bindir}/login' \ --without-zlib-version-check \ --with-privsep-path=/var/run/sshd \ --sysconfdir=${sysconfdir}/ssh \ - --with-xauth=/usr/bin/xauth" + --with-xauth=/usr/bin/xauth \ + --disable-strip \ + " # Since we do not depend on libbsd, we do not want configure to use it # just because it finds libutil.h. But, specifying --disable-libutil @@ -67,6 +62,9 @@ CACHED_CONFIGUREVARS += "ac_cv_header_bsd_libutil_h=no ac_cv_header_libutil_h=no # passwd path is hardcoded in sshd CACHED_CONFIGUREVARS += "ac_cv_path_PATH_PASSWD_PROG=${bindir}/passwd" +# We don't want to depend on libblockfile +CACHED_CONFIGUREVARS += "ac_cv_header_maillock_h=no" + # This is a workaround for uclibc because including stdio.h # pulls in pthreads.h and causes conflicts in function prototypes. # This results in compilation failure, so unless this is fixed, @@ -74,16 +72,14 @@ CACHED_CONFIGUREVARS += "ac_cv_path_PATH_PASSWD_PROG=${bindir}/passwd" EXTRA_OECONF_append_libc-uclibc=" --without-pam" do_configure_prepend () { + export LD="${CC}" + install -m 0644 ${WORKDIR}/sshd_config ${B}/ + install -m 0644 ${WORKDIR}/ssh_config ${B}/ if [ ! -e acinclude.m4 -a -e aclocal.m4 ]; then cp aclocal.m4 acinclude.m4 fi } -do_compile_append () { - install -m 0644 ${WORKDIR}/sshd_config ${S}/ - install -m 0644 ${WORKDIR}/ssh_config ${S}/ -} - do_install_append () { if [ "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)}" = "pam" ]; then install -D -m 0755 ${WORKDIR}/sshd ${D}${sysconfdir}/pam.d/sshd @@ -96,6 +92,7 @@ do_install_append () { rmdir ${D}${localstatedir}/run/sshd ${D}${localstatedir}/run ${D}${localstatedir} install -d ${D}/${sysconfdir}/default/volatiles install -m 644 ${WORKDIR}/volatiles.99_sshd ${D}/${sysconfdir}/default/volatiles/99_sshd + install -m 0755 ${S}/contrib/ssh-copy-id ${D}${bindir} # Create config files for read-only rootfs install -d ${D}${sysconfdir}/ssh diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc index b839c00dde..ba9bca6af4 100644 --- a/meta/recipes-connectivity/openssl/openssl.inc +++ b/meta/recipes-connectivity/openssl/openssl.inc @@ -9,6 +9,7 @@ LICENSE = "openssl" LIC_FILES_CHKSUM = "file://LICENSE;md5=f9a8f968107345e0b75aa8c2ecaa7ec8" DEPENDS = "perl-native-runtime" +DEPENDS_append_class-target = " openssl-native" SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \ " @@ -49,6 +50,10 @@ CONFFILES_openssl-conf = "${libdir}/ssl/openssl.cnf" RRECOMMENDS_libcrypto += "openssl-conf" RDEPENDS_${PN}-ptest += "${PN}-misc make perl perl-module-filehandle bc" +# Remove this to enable SSLv3. SSLv3 is defaulted to disabled due to the POODLE +# vulnerability +EXTRA_OECONF = " -no-ssl3" + do_configure_prepend_darwin () { sed -i -e '/version-script=openssl\.ld/d' Configure } @@ -60,17 +65,18 @@ do_configure () { ln -sf apps/openssl.pod crypto/crypto.pod ssl/ssl.pod doc/ os=${HOST_OS} - if [ "x$os" = "xlinux-uclibc" ]; then - os=linux - elif [ "x$os" = "xlinux-uclibceabi" ]; then - os=linux - elif [ "x$os" = "xlinux-uclibcspe" ]; then - os=linux - elif [ "x$os" = "xlinux-gnuspe" ]; then + case $os in + linux-uclibc |\ + linux-uclibceabi |\ + linux-gnueabi |\ + linux-uclibcspe |\ + linux-gnuspe |\ + linux-musl*) os=linux - elif [ "x$os" = "xlinux-gnueabi" ]; then - os=linux - fi + ;; + *) + ;; + esac target="$os-${HOST_ARCH}" case $target in linux-arm) @@ -112,6 +118,9 @@ do_configure () { linux-*-mips64) target=linux-mips ;; + linux-microblaze*) + target=linux-generic32 + ;; linux-powerpc) target=linux-ppc ;; @@ -137,6 +146,10 @@ do_configure () { perl ./Configure ${EXTRA_OECONF} shared --prefix=$useprefix --openssldir=${libdir}/ssl --libdir=`basename ${libdir}` $target } +do_compile_prepend_class-target () { + sed -i 's/\((OPENSSL=\)".*"/\1"openssl"/' Makefile +} + do_compile () { oe_runmake } @@ -146,6 +159,9 @@ do_compile_ptest () { } do_install () { + # Create ${D}/${prefix} to fix parallel issues + mkdir -p ${D}/${prefix}/ + oe_runmake INSTALL_PREFIX="${D}" MANDIR="${mandir}" install oe_libinstall -so libcrypto ${D}${libdir} @@ -187,5 +203,12 @@ do_install_ptest () { install util/shlib_wrap.sh ${D}${PTEST_PATH}/util } -BBCLASSEXTEND = "native nativesdk" +do_install_append_virtclass-native() { + create_wrapper ${D}${bindir}/openssl \ + OPENSSL_CONF=${libdir}/ssl/openssl.cnf \ + SSL_CERT_DIR=${libdir}/ssl/certs \ + SSL_CERT_FILE=${libdir}/ssl/cert.pem \ + OPENSSL_ENGINES=${libdir}/ssl/engines +} +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-connectivity/openssl/openssl/Makefiles-ptest.patch b/meta/recipes-connectivity/openssl/openssl/Makefiles-ptest.patch index ac53a9142b..249446a5bd 100644 --- a/meta/recipes-connectivity/openssl/openssl/Makefiles-ptest.patch +++ b/meta/recipes-connectivity/openssl/openssl/Makefiles-ptest.patch @@ -5,10 +5,11 @@ Signed-off-by: Anders Roxell <anders.roxell@enea.com> Signed-off-by: Maxin B. John <maxin.john@enea.com> Upstream-Status: Pending --- -diff -uNr a/Makefile b/Makefile ---- a/Makefile.org 2012-05-10 17:06:02.000000000 +0200 -+++ b/Makefile.org 2012-10-27 00:05:55.359424024 +0200 -@@ -411,8 +411,16 @@ +Index: openssl-1.0.2/Makefile.org +=================================================================== +--- openssl-1.0.2.orig/Makefile.org ++++ openssl-1.0.2/Makefile.org +@@ -451,8 +451,16 @@ rehash.time: certs apps test: tests tests: rehash @@ -26,11 +27,11 @@ diff -uNr a/Makefile b/Makefile OPENSSL_CONF=apps/openssl.cnf util/opensslwrap.sh version -a report: -diff --git a/test/Makefile b/test/Makefile -index 3912f82..1696767 100644 ---- a/test/Makefile -+++ b/test/Makefile -@@ -128,7 +128,7 @@ tests: exe apps $(TESTS) +Index: openssl-1.0.2/test/Makefile +=================================================================== +--- openssl-1.0.2.orig/test/Makefile ++++ openssl-1.0.2/test/Makefile +@@ -137,7 +137,7 @@ tests: exe apps $(TESTS) apps: @(cd ..; $(MAKE) DIRS=apps all) @@ -39,28 +40,28 @@ index 3912f82..1696767 100644 test_des test_idea test_sha test_md4 test_md5 test_hmac \ test_md2 test_mdc2 test_wp \ test_rmd test_rc2 test_rc4 test_rc5 test_bf test_cast test_aes \ -@@ -138,6 +138,11 @@ alltests: \ - test_ss test_ca test_engine test_evp test_ssl test_tsa test_ige \ - test_jpake test_cms +@@ -148,6 +148,11 @@ alltests: \ + test_jpake test_srp test_cms test_ocsp test_v3name test_heartbeat \ + test_constant_time +alltests: + @(for i in $(all-tests); do \ + ( $(MAKE) $$i && echo "PASS: $$i" ) || echo "FAIL: $$i"; \ + done) + - test_evp: + test_evp: $(EVPTEST)$(EXE_EXT) evptests.txt ../util/shlib_wrap.sh ./$(EVPTEST) evptests.txt -@@ -203,7 +208,7 @@ test_x509: +@@ -213,7 +218,7 @@ test_x509: ../apps/openssl$(EXE_EXT) tx5 echo test second x509v3 certificate sh ./tx509 v3-cert2.pem 2>/dev/null --test_rsa: $(RSATEST)$(EXE_EXT) -+test_rsa: +-test_rsa: $(RSATEST)$(EXE_EXT) ../apps/openssl$(EXE_EXT) trsa testrsa.pem ++test_rsa: ../apps/openssl$(EXE_EXT) trsa testrsa.pem @sh ./trsa 2>/dev/null ../util/shlib_wrap.sh ./$(RSATEST) -@@ -298,11 +303,11 @@ test_tsa: +@@ -313,11 +318,11 @@ test_tsa: ../apps/openssl$(EXE_EXT) test sh ./testtsa; \ fi @@ -73,3 +74,4 @@ index 3912f82..1696767 100644 +test_jpake: @echo "Test JPAKE" ../util/shlib_wrap.sh ./$(JPAKETEST) + diff --git a/meta/recipes-connectivity/openssl/openssl/debian/c_rehash-compat.patch b/meta/recipes-connectivity/openssl/openssl/debian/c_rehash-compat.patch index ac1b19b943..3943e2c2e7 100644 --- a/meta/recipes-connectivity/openssl/openssl/debian/c_rehash-compat.patch +++ b/meta/recipes-connectivity/openssl/openssl/debian/c_rehash-compat.patch @@ -1,38 +1,58 @@ -Upstream-Status: Backport [debian] - From 83f318d68bbdab1ca898c94576a838cc97df4700 Mon Sep 17 00:00:00 2001 From: Ludwig Nussel <ludwig.nussel@suse.de> Date: Wed, 21 Apr 2010 15:52:10 +0200 Subject: [PATCH] also create old hash for compatibility +Upstream-Status: Backport [debian] + --- tools/c_rehash.in | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) -Index: openssl-1.0.0d/tools/c_rehash.in +Index: openssl-1.0.2~beta3/tools/c_rehash.in =================================================================== ---- openssl-1.0.0d.orig/tools/c_rehash.in 2011-04-13 20:41:28.000000000 +0000 -+++ openssl-1.0.0d/tools/c_rehash.in 2011-04-13 20:41:28.000000000 +0000 -@@ -86,6 +86,7 @@ - } +--- openssl-1.0.2~beta3.orig/tools/c_rehash.in ++++ openssl-1.0.2~beta3/tools/c_rehash.in +@@ -8,8 +8,6 @@ my $prefix; + + my $openssl = $ENV{OPENSSL} || "openssl"; + my $pwd; +-my $x509hash = "-subject_hash"; +-my $crlhash = "-hash"; + my $verbose = 0; + my $symlink_exists=eval {symlink("",""); 1}; + my $removelinks = 1; +@@ -18,10 +16,7 @@ my $removelinks = 1; + while ( $ARGV[0] =~ '-.*' ) { + my $flag = shift @ARGV; + last if ( $flag eq '--'); +- if ( $flag =~ /-old/) { +- $x509hash = "-subject_hash_old"; +- $crlhash = "-hash_old"; +- } elsif ( $flag =~ /-h/) { ++ if ( $flag =~ /-h/) { + help(); + } elsif ( $flag eq '-n' ) { + $removelinks = 0; +@@ -113,7 +108,9 @@ sub hash_dir { + next; } link_hash_cert($fname) if($cert); + link_hash_cert_old($fname) if($cert); link_hash_crl($fname) if($crl); ++ link_hash_crl_old($fname) if($crl); } } -@@ -119,8 +120,9 @@ + +@@ -146,6 +143,7 @@ sub check_file { sub link_hash_cert { my $fname = $_[0]; -+ my $hashopt = $_[1] || '-subject_hash'; ++ my $x509hash = $_[1] || '-subject_hash'; $fname =~ s/'/'\\''/g; -- my ($hash, $fprint) = `"$openssl" x509 -hash -fingerprint -noout -in "$fname"`; -+ my ($hash, $fprint) = `"$openssl" x509 $hashopt -fingerprint -noout -in "$fname"`; + my ($hash, $fprint) = `"$openssl" x509 $x509hash -fingerprint -noout -in "$fname"`; chomp $hash; - chomp $fprint; - $fprint =~ s/^.*=//; -@@ -150,6 +152,10 @@ +@@ -177,10 +175,20 @@ sub link_hash_cert { $hashlist{$hash} = $fprint; } @@ -40,6 +60,16 @@ Index: openssl-1.0.0d/tools/c_rehash.in + link_hash_cert($_[0], '-subject_hash_old'); +} + ++sub link_hash_crl_old { ++ link_hash_crl($_[0], '-hash_old'); ++} ++ ++ # Same as above except for a CRL. CRL links are of the form <hash>.r<n> sub link_hash_crl { + my $fname = $_[0]; ++ my $crlhash = $_[1] || "-hash"; + $fname =~ s/'/'\\''/g; + my ($hash, $fprint) = `"$openssl" crl $crlhash -fingerprint -noout -in '$fname'`; + chomp $hash; diff --git a/meta/recipes-connectivity/openssl/openssl/debian/debian-targets.patch b/meta/recipes-connectivity/openssl/openssl/debian/debian-targets.patch index 8101edf0b0..39d4328184 100644 --- a/meta/recipes-connectivity/openssl/openssl/debian/debian-targets.patch +++ b/meta/recipes-connectivity/openssl/openssl/debian/debian-targets.patch @@ -1,12 +1,12 @@ Upstream-Status: Backport [debian] -Index: openssl-1.0.1/Configure +Index: openssl-1.0.2/Configure =================================================================== ---- openssl-1.0.1.orig/Configure 2012-03-17 15:37:54.000000000 +0000 -+++ openssl-1.0.1/Configure 2012-03-17 16:13:49.000000000 +0000 -@@ -105,6 +105,10 @@ +--- openssl-1.0.2.orig/Configure ++++ openssl-1.0.2/Configure +@@ -107,6 +107,10 @@ my $gcc_devteam_warn = "-Wall -pedantic - my $gcc_devteam_warn = "-Wall -pedantic -DPEDANTIC -Wno-long-long -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Werror -DCRYPTO_MDEBUG_ALL -DCRYPTO_MDEBUG_ABORT -DREF_CHECK -DOPENSSL_NO_DEPRECATED"; + my $clang_disabled_warnings = "-Wno-language-extension-token -Wno-extended-offsetof -Wno-padded -Wno-shorten-64-to-32 -Wno-format-nonliteral -Wno-missing-noreturn -Wno-unused-parameter -Wno-sign-conversion -Wno-unreachable-code -Wno-conversion -Wno-documentation -Wno-missing-variable-declarations -Wno-cast-align -Wno-incompatible-pointer-types-discards-qualifiers -Wno-missing-variable-declarations -Wno-missing-field-initializers -Wno-unused-macros -Wno-disabled-macro-expansion -Wno-conditional-uninitialized -Wno-switch-enum"; +# There are no separate CFLAGS/CPPFLAGS/LDFLAGS, set everything in CFLAGS +my $debian_cflags = `dpkg-buildflags --get CFLAGS` . `dpkg-buildflags --get CPPFLAGS` . `dpkg-buildflags --get LDFLAGS` . "-Wa,--noexecstack -Wall"; @@ -15,7 +15,7 @@ Index: openssl-1.0.1/Configure my $strict_warnings = 0; my $x86_gcc_des="DES_PTR DES_RISC1 DES_UNROLL"; -@@ -338,6 +342,48 @@ +@@ -343,6 +347,55 @@ my %table=( "osf1-alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown):::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${alpha_asm}:dlfcn:alpha-osf1-shared:::.so", "tru64-alpha-cc", "cc:-std1 -tune host -fast -readonly_strings::-pthread:::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${alpha_asm}:dlfcn:alpha-osf1-shared::-msym:.so", @@ -23,9 +23,9 @@ Index: openssl-1.0.1/Configure +"debian-alpha","gcc:-DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-alpha-ev4","gcc:-DTERMIO ${debian_cflags} -mcpu=ev4::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-alpha-ev5","gcc:-DTERMIO ${debian_cflags} -mcpu=ev5::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${alpha_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-armeb","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-armel","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-armhf","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-arm64","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-armel","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-armhf","gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-amd64", "gcc:-m64 -DL_ENDIAN -DTERMIO ${debian_cflags} -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::", +"debian-avr32", "gcc:-DB_ENDIAN -DTERMIO ${debian_cflags} -fomit-frame-pointer::-D_REENTRANT::-ldl:BN_LLONG_BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-kfreebsd-amd64","gcc:-m64 -DL_ENDIAN -DTERMIOS ${debian_cflags} -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -40,15 +40,21 @@ Index: openssl-1.0.1/Configure +"debian-m68k","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR RC4_INDEX:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-mips", "gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-mipsel", "gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-mipsn32", "mips64-linux-gnuabin32-gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-mipsn32el", "mips64el-linux-gnuabin32-gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-mips64", "mips64-linux-gnuabi64-gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-mips64el", "mips64el-linux-gnuabi64-gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-netbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS ${debian_cflags} -m486::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-netbsd-m68k", "gcc:-DB_ENDIAN -DTERMIOS ${debian_cflags}::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-netbsd-sparc", "gcc:-DB_ENDIAN -DTERMIOS ${debian_cflags} -mv8::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-openbsd-alpha","gcc:-DTERMIOS ${debian_cflags}::(unknown):::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-openbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS ${debian_cflags} -m486::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_asm}:a.out:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-openbsd-mips","gcc:-DL_ENDIAN ${debian_cflags}::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-or1k", "gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-powerpc","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-powerpcspe","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-ppc64","gcc:-m64 -DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc64_asm}:linux64:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-ppc64el","gcc:-m64 -DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc64_asm}:linux64le:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-s390","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-s390x","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-sh3", "gcc:-DL_ENDIAN -DTERMIO ${debian_cflags}::-D_REENTRANT::-ldl:BN_LLONG:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -60,6 +66,7 @@ Index: openssl-1.0.1/Configure +"debian-sparc-v8","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags} -mcpu=v8 -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${sparcv8_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-sparc-v9","gcc:-DB_ENDIAN -DTERMIO ${debian_cflags} -mcpu=v9 -Wa,-Av8plus -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"debian-sparc64","gcc:-m64 -DB_ENDIAN -DTERMIO ${debian_cflags} -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-x32","gcc:-mx32 -DL_ENDIAN -DTERMIO ${debian_cflags} -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-mx32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::x32", + #### #### Variety of LINUX:-) diff --git a/meta/recipes-connectivity/openssl/openssl/debian/version-script.patch b/meta/recipes-connectivity/openssl/openssl/debian/version-script.patch index ece8b9b46c..a24918000a 100644 --- a/meta/recipes-connectivity/openssl/openssl/debian/version-script.patch +++ b/meta/recipes-connectivity/openssl/openssl/debian/version-script.patch @@ -1,10 +1,8 @@ -Upstream-Status: Backport [debian] - -Index: openssl-1.0.1d/Configure +Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/Configure =================================================================== ---- openssl-1.0.1d.orig/Configure 2013-02-06 19:41:43.000000000 +0100 -+++ openssl-1.0.1d/Configure 2013-02-06 19:41:43.000000000 +0100 -@@ -1621,6 +1621,8 @@ +--- openssl-1.0.2~beta1.obsolete.0.0498436515490575.orig/Configure 2014-02-24 21:02:30.000000000 +0100 ++++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/Configure 2014-02-24 21:02:30.000000000 +0100 +@@ -1651,6 +1651,8 @@ } } @@ -13,11 +11,11 @@ Index: openssl-1.0.1d/Configure open(IN,'<Makefile.org') || die "unable to read Makefile.org:$!\n"; unlink("$Makefile.new") || die "unable to remove old $Makefile.new:$!\n" if -e "$Makefile.new"; open(OUT,">$Makefile.new") || die "unable to create $Makefile.new:$!\n"; -Index: openssl-1.0.1d/openssl.ld +Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/openssl.ld =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ openssl-1.0.1d/openssl.ld 2013-02-06 19:44:25.000000000 +0100 -@@ -0,0 +1,4620 @@ ++++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/openssl.ld 2014-02-24 22:19:08.601827266 +0100 +@@ -0,0 +1,4615 @@ +OPENSSL_1.0.0 { + global: + BIO_f_ssl; @@ -2229,20 +2227,16 @@ Index: openssl-1.0.1d/openssl.ld + ERR_load_COMP_strings; + PKCS12_item_decrypt_d2i; + ASN1_UTF8STRING_it; -+ ASN1_UTF8STRING_it; + ENGINE_unregister_ciphers; + ENGINE_get_ciphers; + d2i_OCSP_BASICRESP; + KRB5_CHECKSUM_it; -+ KRB5_CHECKSUM_it; + EC_POINT_add; + ASN1_item_ex_i2d; + OCSP_CERTID_it; -+ OCSP_CERTID_it; + d2i_OCSP_RESPBYTES; + X509V3_add1_i2d; + PKCS7_ENVELOPE_it; -+ PKCS7_ENVELOPE_it; + UI_add_input_boolean; + ENGINE_unregister_RSA; + X509V3_EXT_nconf; @@ -2254,19 +2248,15 @@ Index: openssl-1.0.1d/openssl.ld + ENGINE_register_all_RAND; + ENGINE_load_dynamic; + PBKDF2PARAM_it; -+ PBKDF2PARAM_it; + EXTENDED_KEY_USAGE_new; + EC_GROUP_clear_free; + OCSP_sendreq_bio; + ASN1_item_digest; + OCSP_BASICRESP_delete_ext; + OCSP_SIGNATURE_it; -+ OCSP_SIGNATURE_it; -+ X509_CRL_it; + X509_CRL_it; + OCSP_BASICRESP_add_ext; + KRB5_ENCKEY_it; -+ KRB5_ENCKEY_it; + UI_method_set_closer; + X509_STORE_set_purpose; + i2d_ASN1_GENERALSTRING; @@ -2277,7 +2267,6 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_REQUEST_get_ext_by_OBJ; + _ossl_old_des_random_key; + ASN1_T61STRING_it; -+ ASN1_T61STRING_it; + EC_GROUP_method_of; + i2d_KRB5_APREQ; + _ossl_old_des_encrypt; @@ -2293,7 +2282,6 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_SINGLERESP_get_ext_count; + UI_ctrl; + _shadow_DES_rw_mode; -+ _shadow_DES_rw_mode; + asn1_do_adb; + ASN1_template_i2d; + ENGINE_register_DH; @@ -2307,8 +2295,6 @@ Index: openssl-1.0.1d/openssl.ld + KRB5_ENCKEY_free; + OCSP_resp_get0; + GENERAL_NAME_it; -+ GENERAL_NAME_it; -+ ASN1_GENERALIZEDTIME_it; + ASN1_GENERALIZEDTIME_it; + X509_STORE_set_flags; + EC_POINT_set_compressed_coordinates_GFp; @@ -2330,21 +2316,18 @@ Index: openssl-1.0.1d/openssl.ld + EC_POINT_set_affine_coords_GFp; + _ossl_old_des_options; + SXNET_it; -+ SXNET_it; + UI_dup_input_boolean; + PKCS12_add_CSPName_asc; + EC_POINT_is_at_infinity; + ENGINE_load_cryptodev; + DSO_convert_filename; + POLICYQUALINFO_it; -+ POLICYQUALINFO_it; + ENGINE_register_ciphers; + BN_mod_lshift_quick; + DSO_set_filename; + ASN1_item_free; + KRB5_TKTBODY_free; + AUTHORITY_KEYID_it; -+ AUTHORITY_KEYID_it; + KRB5_APREQBODY_new; + X509V3_EXT_REQ_add_nconf; + ENGINE_ctrl_cmd_string; @@ -2352,19 +2335,15 @@ Index: openssl-1.0.1d/openssl.ld + EVP_MD_CTX_init; + EXTENDED_KEY_USAGE_free; + PKCS7_ATTR_SIGN_it; -+ PKCS7_ATTR_SIGN_it; + UI_add_error_string; + KRB5_CHECKSUM_free; + OCSP_REQUEST_get_ext; + ENGINE_load_ubsec; + ENGINE_register_all_digests; + PKEY_USAGE_PERIOD_it; -+ PKEY_USAGE_PERIOD_it; + PKCS12_unpack_authsafes; + ASN1_item_unpack; + NETSCAPE_SPKAC_it; -+ NETSCAPE_SPKAC_it; -+ X509_REVOKED_it; + X509_REVOKED_it; + ASN1_STRING_encode; + EVP_aes_128_ecb; @@ -2376,7 +2355,6 @@ Index: openssl-1.0.1d/openssl.ld + UI_dup_info_string; + _ossl_old_des_xwhite_in2out; + PKCS12_it; -+ PKCS12_it; + OCSP_SINGLERESP_get_ext_by_critical; + OCSP_SINGLERESP_get_ext_by_crit; + OCSP_CERTSTATUS_free; @@ -2395,10 +2373,8 @@ Index: openssl-1.0.1d/openssl.ld + ENGINE_unregister_DSA; + _ossl_old_des_key_sched; + X509_EXTENSION_it; -+ X509_EXTENSION_it; + i2d_KRB5_AUTHENT; + SXNETID_it; -+ SXNETID_it; + d2i_OCSP_SINGLERESP; + EDIPARTYNAME_new; + PKCS12_certbag2x509; @@ -2409,10 +2385,8 @@ Index: openssl-1.0.1d/openssl.ld + d2i_KRB5_APREQBODY; + UI_method_get_flusher; + X509_PUBKEY_it; -+ X509_PUBKEY_it; + _ossl_old_des_enc_read; + PKCS7_ENCRYPT_it; -+ PKCS7_ENCRYPT_it; + i2d_OCSP_RESPONSE; + EC_GROUP_get_cofactor; + PKCS12_unpack_p7data; @@ -2430,10 +2404,8 @@ Index: openssl-1.0.1d/openssl.ld + PKCS12_item_i2d_encrypt; + X509_add1_ext_i2d; + PKCS7_SIGNER_INFO_it; -+ PKCS7_SIGNER_INFO_it; + KRB5_PRINCNAME_new; + PKCS12_SAFEBAG_it; -+ PKCS12_SAFEBAG_it; + EC_GROUP_get_order; + d2i_OCSP_RESPID; + OCSP_request_verify; @@ -2448,42 +2420,32 @@ Index: openssl-1.0.1d/openssl.ld + EVP_MD_CTX_create; + OCSP_resp_find_status; + X509_ALGOR_it; -+ X509_ALGOR_it; -+ ASN1_TIME_it; + ASN1_TIME_it; + OCSP_request_set1_name; + OCSP_ONEREQ_get_ext_count; + UI_get0_result; + PKCS12_AUTHSAFES_it; -+ PKCS12_AUTHSAFES_it; + EVP_aes_256_ecb; + PKCS12_pack_authsafes; + ASN1_IA5STRING_it; -+ ASN1_IA5STRING_it; + UI_get_input_flags; + EC_GROUP_set_generator; + _ossl_old_des_string_to_2keys; + OCSP_CERTID_free; + X509_CERT_AUX_it; -+ X509_CERT_AUX_it; -+ CERTIFICATEPOLICIES_it; + CERTIFICATEPOLICIES_it; + _ossl_old_des_ede3_cbc_encrypt; + RAND_set_rand_engine; + DSO_get_loaded_filename; + X509_ATTRIBUTE_it; -+ X509_ATTRIBUTE_it; + OCSP_ONEREQ_get_ext_by_NID; + PKCS12_decrypt_skey; + KRB5_AUTHENT_it; -+ KRB5_AUTHENT_it; + UI_dup_error_string; + RSAPublicKey_it; -+ RSAPublicKey_it; + i2d_OCSP_REQUEST; + PKCS12_x509crl2certbag; + OCSP_SERVICELOC_it; -+ OCSP_SERVICELOC_it; + ASN1_item_sign; + X509_CRL_set_issuer_name; + OBJ_NAME_do_all_sorted; @@ -2494,30 +2456,23 @@ Index: openssl-1.0.1d/openssl.ld + ENGINE_get_digest; + OCSP_RESPONSE_print; + KRB5_TKTBODY_it; -+ KRB5_TKTBODY_it; + ACCESS_DESCRIPTION_it; -+ ACCESS_DESCRIPTION_it; -+ PKCS7_ISSUER_AND_SERIAL_it; + PKCS7_ISSUER_AND_SERIAL_it; + PBE2PARAM_it; -+ PBE2PARAM_it; + PKCS12_certbag2x509crl; + PKCS7_SIGNED_it; -+ PKCS7_SIGNED_it; + ENGINE_get_cipher; + i2d_OCSP_CRLID; + OCSP_SINGLERESP_new; + ENGINE_cmd_is_executable; + RSA_up_ref; + ASN1_GENERALSTRING_it; -+ ASN1_GENERALSTRING_it; + ENGINE_register_DSA; + X509V3_EXT_add_nconf_sk; + ENGINE_set_load_pubkey_function; + PKCS8_decrypt; + PEM_bytes_read_bio; + DIRECTORYSTRING_it; -+ DIRECTORYSTRING_it; + d2i_OCSP_CRLID; + EC_POINT_is_on_curve; + CRYPTO_set_locked_mem_ex_functions; @@ -2525,7 +2480,6 @@ Index: openssl-1.0.1d/openssl.ld + d2i_KRB5_CHECKSUM; + ASN1_item_dup; + X509_it; -+ X509_it; + BN_mod_add; + KRB5_AUTHDATA_free; + _ossl_old_des_cbc_cksum; @@ -2534,7 +2488,6 @@ Index: openssl-1.0.1d/openssl.ld + EC_POINT_get_Jprojective_coordinates_GFp; + EC_POINT_get_Jproj_coords_GFp; + ZLONG_it; -+ ZLONG_it; + CRYPTO_get_locked_mem_ex_functions; + CRYPTO_get_locked_mem_ex_funcs; + ASN1_TIME_check; @@ -2544,41 +2497,30 @@ Index: openssl-1.0.1d/openssl.ld + _ossl_old_des_ede3_cfb64_encrypt; + _ossl_odes_ede3_cfb64_encrypt; + ASN1_BMPSTRING_it; -+ ASN1_BMPSTRING_it; + ASN1_tag2bit; + UI_method_set_flusher; + X509_ocspid_print; + KRB5_ENCDATA_it; -+ KRB5_ENCDATA_it; + ENGINE_get_load_pubkey_function; + UI_add_user_data; + OCSP_REQUEST_delete_ext; + UI_get_method; + OCSP_ONEREQ_free; + ASN1_PRINTABLESTRING_it; -+ ASN1_PRINTABLESTRING_it; + X509_CRL_set_nextUpdate; + OCSP_REQUEST_it; -+ OCSP_REQUEST_it; -+ OCSP_BASICRESP_it; + OCSP_BASICRESP_it; + AES_ecb_encrypt; + BN_mod_sqr; + NETSCAPE_CERT_SEQUENCE_it; -+ NETSCAPE_CERT_SEQUENCE_it; -+ GENERAL_NAMES_it; + GENERAL_NAMES_it; + AUTHORITY_INFO_ACCESS_it; -+ AUTHORITY_INFO_ACCESS_it; -+ ASN1_FBOOLEAN_it; + ASN1_FBOOLEAN_it; + UI_set_ex_data; + _ossl_old_des_string_to_key; + ENGINE_register_all_RSA; + d2i_KRB5_PRINCNAME; + OCSP_RESPBYTES_it; -+ OCSP_RESPBYTES_it; -+ X509_CINF_it; + X509_CINF_it; + ENGINE_unregister_digests; + d2i_EDIPARTYNAME; @@ -2588,7 +2530,6 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_RESPDATA_free; + d2i_KRB5_TICKET; + OTHERNAME_it; -+ OTHERNAME_it; + EVP_MD_CTX_cleanup; + d2i_ASN1_GENERALSTRING; + X509_CRL_set_version; @@ -2598,7 +2539,6 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_REQUEST_free; + OCSP_REQUEST_add1_ext_i2d; + X509_VAL_it; -+ X509_VAL_it; + EC_POINTs_make_affine; + EC_POINT_mul; + X509V3_EXT_add_nconf; @@ -2606,7 +2546,6 @@ Index: openssl-1.0.1d/openssl.ld + X509_CRL_add1_ext_i2d; + _ossl_old_des_fcrypt; + DISPLAYTEXT_it; -+ DISPLAYTEXT_it; + X509_CRL_set_lastUpdate; + OCSP_BASICRESP_free; + OCSP_BASICRESP_add1_ext_i2d; @@ -2619,7 +2558,6 @@ Index: openssl-1.0.1d/openssl.ld + UI_get0_result_string; + ASN1_GENERALSTRING_new; + X509_SIG_it; -+ X509_SIG_it; + ERR_set_implementation; + ERR_load_EC_strings; + UI_get0_action_string; @@ -2634,35 +2572,27 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_ONEREQ_get_ext_by_OBJ; + ASN1_primitive_new; + ASN1_PRINTABLE_it; -+ ASN1_PRINTABLE_it; + EVP_aes_192_ecb; + OCSP_SIGNATURE_new; + LONG_it; -+ LONG_it; -+ ASN1_VISIBLESTRING_it; + ASN1_VISIBLESTRING_it; + OCSP_SINGLERESP_add1_ext_i2d; + d2i_OCSP_CERTID; + ASN1_item_d2i_fp; + CRL_DIST_POINTS_it; -+ CRL_DIST_POINTS_it; + GENERAL_NAME_print; + OCSP_SINGLERESP_delete_ext; + PKCS12_SAFEBAGS_it; -+ PKCS12_SAFEBAGS_it; + d2i_OCSP_SIGNATURE; + OCSP_request_add1_nonce; + ENGINE_set_cmd_defns; + OCSP_SERVICELOC_free; + EC_GROUP_free; + ASN1_BIT_STRING_it; -+ ASN1_BIT_STRING_it; -+ X509_REQ_it; + X509_REQ_it; + _ossl_old_des_cbc_encrypt; + ERR_unload_strings; + PKCS7_SIGN_ENVELOPE_it; -+ PKCS7_SIGN_ENVELOPE_it; + EDIPARTYNAME_free; + OCSP_REQINFO_free; + EC_GROUP_new_curve_GFp; @@ -2687,7 +2617,6 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_CRLID_free; + OCSP_BASICRESP_get1_ext_d2i; + RSAPrivateKey_it; -+ RSAPrivateKey_it; + ENGINE_register_all_DH; + i2d_EDIPARTYNAME; + EC_POINT_get_affine_coordinates_GFp; @@ -2695,10 +2624,8 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_CRLID_new; + ENGINE_get_flags; + OCSP_ONEREQ_it; -+ OCSP_ONEREQ_it; + UI_process; + ASN1_INTEGER_it; -+ ASN1_INTEGER_it; + EVP_CipherInit_ex; + UI_get_string_type; + ENGINE_unregister_DH; @@ -2707,7 +2634,6 @@ Index: openssl-1.0.1d/openssl.ld + bn_dup_expand; + OCSP_cert_id_new; + BASIC_CONSTRAINTS_it; -+ BASIC_CONSTRAINTS_it; + BN_mod_add_quick; + EC_POINT_new; + EVP_MD_CTX_destroy; @@ -2717,7 +2643,6 @@ Index: openssl-1.0.1d/openssl.ld + EC_POINT_free; + DH_up_ref; + X509_NAME_ENTRY_it; -+ X509_NAME_ENTRY_it; + UI_get_ex_new_index; + BN_mod_sub_quick; + OCSP_ONEREQ_add_ext; @@ -2730,7 +2655,6 @@ Index: openssl-1.0.1d/openssl.ld + ENGINE_register_complete; + X509V3_EXT_nconf_nid; + ASN1_SEQUENCE_it; -+ ASN1_SEQUENCE_it; + UI_set_default_method; + RAND_query_egd_bytes; + UI_method_get_writer; @@ -2738,8 +2662,6 @@ Index: openssl-1.0.1d/openssl.ld + PEM_def_callback; + ENGINE_cleanup; + DIST_POINT_it; -+ DIST_POINT_it; -+ OCSP_SINGLERESP_it; + OCSP_SINGLERESP_it; + d2i_KRB5_TKTBODY; + EC_POINT_cmp; @@ -2758,24 +2680,20 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_cert_to_id; + OCSP_RESPID_new; + OCSP_RESPDATA_it; -+ OCSP_RESPDATA_it; + d2i_OCSP_RESPDATA; + ENGINE_register_all_complete; + OCSP_check_validity; + PKCS12_BAGS_it; -+ PKCS12_BAGS_it; + OCSP_url_svcloc_new; + ASN1_template_free; + OCSP_SINGLERESP_add_ext; + KRB5_AUTHENTBODY_it; -+ KRB5_AUTHENTBODY_it; + X509_supported_extension; + i2d_KRB5_AUTHDATA; + UI_method_get_opener; + ENGINE_set_ex_data; + OCSP_REQUEST_print; + CBIGNUM_it; -+ CBIGNUM_it; + KRB5_TICKET_new; + KRB5_APREQ_new; + EC_GROUP_get_curve_GFp; @@ -2785,27 +2703,20 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_single_get0_status; + BN_swap; + POLICYINFO_it; -+ POLICYINFO_it; + ENGINE_set_destroy_function; + asn1_enc_free; + OCSP_RESPID_it; -+ OCSP_RESPID_it; + EC_GROUP_new; + EVP_aes_256_cbc; + i2d_KRB5_PRINCNAME; + _ossl_old_des_encrypt2; + _ossl_old_des_encrypt3; + PKCS8_PRIV_KEY_INFO_it; -+ PKCS8_PRIV_KEY_INFO_it; -+ OCSP_REQINFO_it; + OCSP_REQINFO_it; + PBEPARAM_it; -+ PBEPARAM_it; + KRB5_AUTHENTBODY_new; + X509_CRL_add0_revoked; + EDIPARTYNAME_it; -+ EDIPARTYNAME_it; -+ NETSCAPE_SPKI_it; + NETSCAPE_SPKI_it; + UI_get0_test_string; + ENGINE_get_cipher_engine; @@ -2817,14 +2728,12 @@ Index: openssl-1.0.1d/openssl.ld + UI_method_get_reader; + OCSP_BASICRESP_get_ext_count; + ASN1_ENUMERATED_it; -+ ASN1_ENUMERATED_it; + UI_set_result; + i2d_KRB5_TICKET; + X509_print_ex_fp; + EVP_CIPHER_CTX_set_padding; + d2i_OCSP_RESPONSE; + ASN1_UTCTIME_it; -+ ASN1_UTCTIME_it; + _ossl_old_des_enc_write; + OCSP_RESPONSE_new; + AES_set_encrypt_key; @@ -2834,14 +2743,11 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_onereq_get0_id; + ENGINE_set_default_ciphers; + NOTICEREF_it; -+ NOTICEREF_it; + X509V3_EXT_CRL_add_nconf; + OCSP_REVOKEDINFO_it; -+ OCSP_REVOKEDINFO_it; + AES_encrypt; + OCSP_REQUEST_new; + ASN1_ANY_it; -+ ASN1_ANY_it; + CRYPTO_ex_data_new_class; + _ossl_old_des_ncbc_encrypt; + i2d_KRB5_TKTBODY; @@ -2864,19 +2770,15 @@ Index: openssl-1.0.1d/openssl.ld + ENGINE_load_nuron; + _ossl_old_des_pcbc_encrypt; + PKCS12_MAC_DATA_it; -+ PKCS12_MAC_DATA_it; + OCSP_accept_responses_new; + asn1_do_lock; + PKCS7_ATTR_VERIFY_it; -+ PKCS7_ATTR_VERIFY_it; -+ KRB5_APREQBODY_it; + KRB5_APREQBODY_it; + i2d_OCSP_SINGLERESP; + ASN1_item_ex_new; + UI_add_verify_string; + _ossl_old_des_set_key; + KRB5_PRINCNAME_it; -+ KRB5_PRINCNAME_it; + EVP_DecryptInit_ex; + i2d_OCSP_CERTID; + ASN1_item_d2i_bio; @@ -2890,20 +2792,17 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_BASICRESP_new; + OCSP_REQUEST_get_ext_by_NID; + KRB5_APREQ_it; -+ KRB5_APREQ_it; + ENGINE_get_destroy_function; + CONF_set_nconf; + ASN1_PRINTABLE_free; + OCSP_BASICRESP_get_ext_by_NID; + DIST_POINT_NAME_it; -+ DIST_POINT_NAME_it; + X509V3_extensions_print; + _ossl_old_des_cfb64_encrypt; + X509_REVOKED_add1_ext_i2d; + _ossl_old_des_ofb_encrypt; + KRB5_TKTBODY_new; + ASN1_OCTET_STRING_it; -+ ASN1_OCTET_STRING_it; + ERR_load_UI_strings; + i2d_KRB5_ENCKEY; + ASN1_template_new; @@ -2911,8 +2810,6 @@ Index: openssl-1.0.1d/openssl.ld + ASN1_item_i2d_fp; + KRB5_PRINCNAME_free; + PKCS7_RECIP_INFO_it; -+ PKCS7_RECIP_INFO_it; -+ EXTENDED_KEY_USAGE_it; + EXTENDED_KEY_USAGE_it; + EC_GFp_simple_method; + EC_GROUP_precompute_mult; @@ -2920,42 +2817,33 @@ Index: openssl-1.0.1d/openssl.ld + UI_method_set_writer; + KRB5_AUTHENT_new; + X509_CRL_INFO_it; -+ X509_CRL_INFO_it; + DSO_set_name_converter; + AES_set_decrypt_key; + PKCS7_DIGEST_it; -+ PKCS7_DIGEST_it; + PKCS12_x5092certbag; + EVP_DigestInit_ex; + i2a_ACCESS_DESCRIPTION; + OCSP_RESPONSE_it; -+ OCSP_RESPONSE_it; -+ PKCS7_ENC_CONTENT_it; + PKCS7_ENC_CONTENT_it; + OCSP_request_add0_id; + EC_POINT_make_affine; + DSO_get_filename; + OCSP_CERTSTATUS_it; -+ OCSP_CERTSTATUS_it; + OCSP_request_add1_cert; + UI_get0_output_string; + UI_dup_verify_string; + BN_mod_lshift; + KRB5_AUTHDATA_it; -+ KRB5_AUTHDATA_it; + asn1_set_choice_selector; + OCSP_basic_add1_status; + OCSP_RESPID_free; + asn1_get_field_ptr; + UI_add_input_string; + OCSP_CRLID_it; -+ OCSP_CRLID_it; + i2d_KRB5_AUTHENTBODY; + OCSP_REQUEST_get_ext_count; + ENGINE_load_atalla; + X509_NAME_it; -+ X509_NAME_it; -+ USERNOTICE_it; + USERNOTICE_it; + OCSP_REQINFO_new; + OCSP_BASICRESP_get_ext; @@ -2965,33 +2853,27 @@ Index: openssl-1.0.1d/openssl.ld + i2d_KRB5_ENCDATA; + X509_PURPOSE_set; + X509_REQ_INFO_it; -+ X509_REQ_INFO_it; + UI_method_set_opener; + ASN1_item_ex_free; + ASN1_BOOLEAN_it; -+ ASN1_BOOLEAN_it; + ENGINE_get_table_flags; + UI_create_method; + OCSP_ONEREQ_add1_ext_i2d; + _shadow_DES_check_key; -+ _shadow_DES_check_key; + d2i_OCSP_REQINFO; + UI_add_info_string; + UI_get_result_minsize; + ASN1_NULL_it; -+ ASN1_NULL_it; + BN_mod_lshift1; + d2i_OCSP_ONEREQ; + OCSP_ONEREQ_new; + KRB5_TICKET_it; -+ KRB5_TICKET_it; + EVP_aes_192_cbc; + KRB5_TICKET_free; + UI_new; + OCSP_response_create; + _ossl_old_des_xcbc_encrypt; + PKCS7_it; -+ PKCS7_it; + OCSP_REQUEST_get_ext_by_critical; + OCSP_REQUEST_get_ext_by_crit; + ENGINE_set_flags; @@ -3000,11 +2882,9 @@ Index: openssl-1.0.1d/openssl.ld + EVP_Digest; + OCSP_ONEREQ_delete_ext; + ASN1_TBOOLEAN_it; -+ ASN1_TBOOLEAN_it; + ASN1_item_new; + ASN1_TIME_to_generalizedtime; + BIGNUM_it; -+ BIGNUM_it; + AES_cbc_encrypt; + ENGINE_get_load_privkey_function; + ENGINE_get_load_privkey_fn; @@ -3016,7 +2896,6 @@ Index: openssl-1.0.1d/openssl.ld + EC_POINT_point2oct; + KRB5_APREQ_free; + ASN1_OBJECT_it; -+ ASN1_OBJECT_it; + OCSP_crlID_new; + OCSP_crlID2_new; + CONF_modules_load_file; @@ -3074,7 +2953,6 @@ Index: openssl-1.0.1d/openssl.ld + i2d_ASN1_UNIVERSALSTRING; + ASN1_UNIVERSALSTRING_free; + ASN1_UNIVERSALSTRING_it; -+ ASN1_UNIVERSALSTRING_it; + d2i_ASN1_UNIVERSALSTRING; + EVP_des_ede3_ecb; + X509_REQ_print_ex; @@ -3130,14 +3008,12 @@ Index: openssl-1.0.1d/openssl.ld + HMAC_CTX_set_flags; + d2i_PROXY_CERT_INFO_EXTENSION; + PROXY_POLICY_it; -+ PROXY_POLICY_it; + i2d_PROXY_POLICY; + i2d_PROXY_CERT_INFO_EXTENSION; + d2i_PROXY_POLICY; + PROXY_CERT_INFO_EXTENSION_new; + PROXY_CERT_INFO_EXTENSION_free; + PROXY_CERT_INFO_EXTENSION_it; -+ PROXY_CERT_INFO_EXTENSION_it; + PROXY_POLICY_free; + PROXY_POLICY_new; + BN_MONT_CTX_set_locked; @@ -3174,7 +3050,6 @@ Index: openssl-1.0.1d/openssl.ld + BN_BLINDING_get_thread_id; + X509_STORE_CTX_set0_param; + POLICY_MAPPING_it; -+ POLICY_MAPPING_it; + STORE_parse_attrs_start; + POLICY_CONSTRAINTS_free; + EVP_PKEY_add1_attr_by_NID; @@ -3183,7 +3058,6 @@ Index: openssl-1.0.1d/openssl.ld + STORE_set_method; + GENERAL_SUBTREE_free; + NAME_CONSTRAINTS_it; -+ NAME_CONSTRAINTS_it; + ECDH_get_default_method; + PKCS12_add_safe; + EC_KEY_new_by_curve_name; @@ -3226,7 +3100,6 @@ Index: openssl-1.0.1d/openssl.ld + ENGINE_get_default_ECDH; + EC_KEY_get_conv_form; + ASN1_OCTET_STRING_NDEF_it; -+ ASN1_OCTET_STRING_NDEF_it; + STORE_delete_public_key; + STORE_get_public_key; + STORE_modify_arbitrary; @@ -3383,7 +3256,6 @@ Index: openssl-1.0.1d/openssl.ld + ENGINE_load_padlock; + EC_GROUP_set_curve_name; + X509_CERT_PAIR_it; -+ X509_CERT_PAIR_it; + STORE_meth_get_revoke_fn; + STORE_method_get_revoke_function; + STORE_method_set_get_function; @@ -3510,7 +3382,6 @@ Index: openssl-1.0.1d/openssl.ld + pqueue_pop; + STORE_ATTR_INFO_get0_cstr; + POLICY_CONSTRAINTS_it; -+ POLICY_CONSTRAINTS_it; + STORE_get_ex_new_index; + EVP_PKEY_get_attr_by_OBJ; + X509_VERIFY_PARAM_add0_policy; @@ -3558,8 +3429,6 @@ Index: openssl-1.0.1d/openssl.ld + STORE_modify_crl; + STORE_list_private_key_start; + POLICY_MAPPINGS_it; -+ POLICY_MAPPINGS_it; -+ GENERAL_SUBTREE_it; + GENERAL_SUBTREE_it; + EC_GROUP_get_curve_name; + PEM_write_X509_CERT_PAIR; @@ -3692,15 +3561,12 @@ Index: openssl-1.0.1d/openssl.ld + BIO_set_callback_arg; + v3_addr_add_prefix; + IPAddressOrRange_it; -+ IPAddressOrRange_it; + BIO_set_flags; + ASIdentifiers_it; -+ ASIdentifiers_it; + v3_addr_get_range; + BIO_method_type; + v3_addr_inherits; + IPAddressChoice_it; -+ IPAddressChoice_it; + AES_ige_encrypt; + v3_addr_add_range; + EVP_CIPHER_CTX_nid; @@ -3721,7 +3587,6 @@ Index: openssl-1.0.1d/openssl.ld + BIO_clear_flags; + i2d_ASRange; + IPAddressRange_it; -+ IPAddressRange_it; + IPAddressChoice_new; + ASIdentifierChoice_new; + ASRange_free; @@ -3742,7 +3607,6 @@ Index: openssl-1.0.1d/openssl.ld + BIO_test_flags; + i2d_ASIdentifierChoice; + ASRange_it; -+ ASRange_it; + d2i_ASIdentifiers; + ASRange_new; + d2i_IPAddressChoice; @@ -3751,7 +3615,6 @@ Index: openssl-1.0.1d/openssl.ld + EVP_Cipher; + i2d_IPAddressOrRange; + ASIdOrRange_it; -+ ASIdOrRange_it; + EVP_CIPHER_nid; + i2d_IPAddressChoice; + EVP_CIPHER_CTX_block_size; @@ -3762,7 +3625,6 @@ Index: openssl-1.0.1d/openssl.ld + v3_addr_is_canonical; + i2d_IPAddressRange; + IPAddressFamily_it; -+ IPAddressFamily_it; + v3_asid_inherits; + EVP_CIPHER_CTX_cipher; + EVP_CIPHER_CTX_get_app_data; @@ -3772,7 +3634,6 @@ Index: openssl-1.0.1d/openssl.ld + d2i_IPAddressOrRange; + v3_addr_canonize; + ASIdentifierChoice_it; -+ ASIdentifierChoice_it; + EVP_MD_CTX_md; + d2i_ASIdentifierChoice; + BIO_method_name; @@ -3795,7 +3656,6 @@ Index: openssl-1.0.1d/openssl.ld + SEED_set_key; + EVP_seed_cfb128; + X509_EXTENSIONS_it; -+ X509_EXTENSIONS_it; + X509_get1_ocsp; + OCSP_REQ_CTX_free; + i2d_X509_EXTENSIONS; @@ -3803,7 +3663,6 @@ Index: openssl-1.0.1d/openssl.ld + OCSP_sendreq_new; + d2i_X509_EXTENSIONS; + X509_ALGORS_it; -+ X509_ALGORS_it; + X509_ALGOR_get0; + X509_ALGOR_set0; + AES_unwrap_key; @@ -3848,7 +3707,6 @@ Index: openssl-1.0.1d/openssl.ld + CMS_SignerInfo_verify; + CMS_data; + CMS_ContentInfo_it; -+ CMS_ContentInfo_it; + d2i_CMS_ReceiptRequest; + CMS_compress; + CMS_digest_create; @@ -3893,7 +3751,6 @@ Index: openssl-1.0.1d/openssl.ld + CMS_RecipientInfo_kekri_get0_id; + CMS_verify_receipt; + CMS_ReceiptRequest_it; -+ CMS_ReceiptRequest_it; + PEM_read_bio_CMS; + CMS_get1_crls; + CMS_add0_recipient_key; @@ -4032,7 +3889,6 @@ Index: openssl-1.0.1d/openssl.ld + TS_REQ_dup; + GENERAL_NAME_dup; + ASN1_SEQUENCE_ANY_it; -+ ASN1_SEQUENCE_ANY_it; + WHIRLPOOL; + X509_STORE_get1_crls; + ENGINE_get_pkey_asn1_meth; @@ -4103,7 +3959,6 @@ Index: openssl-1.0.1d/openssl.ld + DIST_POINT_set_dpname; + i2d_ISSUING_DIST_POINT; + ASN1_SET_ANY_it; -+ ASN1_SET_ANY_it; + EVP_PKEY_CTX_get_data; + TS_STATUS_INFO_print_bio; + EVP_PKEY_derive_init; @@ -4263,7 +4118,6 @@ Index: openssl-1.0.1d/openssl.ld + EVP_DigestSignFinal; + TS_RESP_CTX_set_def_policy; + NETSCAPE_X509_it; -+ NETSCAPE_X509_it; + TS_RESP_create_response; + PKCS7_SIGNER_INFO_get0_algs; + TS_TST_INFO_get_nonce; @@ -4322,7 +4176,6 @@ Index: openssl-1.0.1d/openssl.ld + EVP_CIPHER_do_all_sorted; + EVP_PKEY_CTX_free; + ISSUING_DIST_POINT_it; -+ ISSUING_DIST_POINT_it; + d2i_TS_MSG_IMPRINT_fp; + X509_STORE_get1_certs; + EVP_PKEY_CTX_get_operation; @@ -4615,7 +4468,6 @@ Index: openssl-1.0.1d/openssl.ld + X509_signature_dump; + d2i_RSA_PSS_PARAMS; + RSA_PSS_PARAMS_it; -+ RSA_PSS_PARAMS_it; + RSA_PSS_PARAMS_free; + X509_sign_ctx; + i2d_RSA_PSS_PARAMS; @@ -4638,10 +4490,151 @@ Index: openssl-1.0.1d/openssl.ld + CRYPTO_memcmp; +} OPENSSL_1.0.1; + -Index: openssl-1.0.1d/engines/openssl.ld ++OPENSSL_1.0.2 { ++ global: ++ SSL_CTX_set_alpn_protos; ++ SSL_set_alpn_protos; ++ SSL_CTX_set_alpn_select_cb; ++ SSL_get0_alpn_selected; ++ SSL_CTX_set_custom_cli_ext; ++ SSL_CTX_set_custom_srv_ext; ++ SSL_CTX_set_srv_supp_data; ++ SSL_CTX_set_cli_supp_data; ++ SSL_set_cert_cb; ++ SSL_CTX_use_serverinfo; ++ SSL_CTX_use_serverinfo_file; ++ SSL_CTX_set_cert_cb; ++ SSL_CTX_get0_param; ++ SSL_get0_param; ++ SSL_certs_clear; ++ DTLSv1_2_method; ++ DTLSv1_2_server_method; ++ DTLSv1_2_client_method; ++ DTLS_method; ++ DTLS_server_method; ++ DTLS_client_method; ++ SSL_CTX_get_ssl_method; ++ SSL_CTX_get0_certificate; ++ SSL_CTX_get0_privatekey; ++ SSL_COMP_set0_compression_methods; ++ SSL_COMP_free_compression_methods; ++ SSL_CIPHER_find; ++ SSL_is_server; ++ SSL_CONF_CTX_new; ++ SSL_CONF_CTX_finish; ++ SSL_CONF_CTX_free; ++ SSL_CONF_CTX_set_flags; ++ SSL_CONF_CTX_clear_flags; ++ SSL_CONF_CTX_set1_prefix; ++ SSL_CONF_CTX_set_ssl; ++ SSL_CONF_CTX_set_ssl_ctx; ++ SSL_CONF_cmd; ++ SSL_CONF_cmd_argv; ++ SSL_CONF_cmd_value_type; ++ SSL_trace; ++ SSL_CIPHER_standard_name; ++ SSL_get_tlsa_record_byname; ++ ASN1_TIME_diff; ++ BIO_hex_string; ++ CMS_RecipientInfo_get0_pkey_ctx; ++ CMS_RecipientInfo_encrypt; ++ CMS_SignerInfo_get0_pkey_ctx; ++ CMS_SignerInfo_get0_md_ctx; ++ CMS_SignerInfo_get0_signature; ++ CMS_RecipientInfo_kari_get0_alg; ++ CMS_RecipientInfo_kari_get0_reks; ++ CMS_RecipientInfo_kari_get0_orig_id; ++ CMS_RecipientInfo_kari_orig_id_cmp; ++ CMS_RecipientEncryptedKey_get0_id; ++ CMS_RecipientEncryptedKey_cert_cmp; ++ CMS_RecipientInfo_kari_set0_pkey; ++ CMS_RecipientInfo_kari_get0_ctx; ++ CMS_RecipientInfo_kari_decrypt; ++ CMS_SharedInfo_encode; ++ DH_compute_key_padded; ++ d2i_DHxparams; ++ i2d_DHxparams; ++ DH_get_1024_160; ++ DH_get_2048_224; ++ DH_get_2048_256; ++ DH_KDF_X9_42; ++ ECDH_KDF_X9_62; ++ ECDSA_METHOD_new; ++ ECDSA_METHOD_free; ++ ECDSA_METHOD_set_app_data; ++ ECDSA_METHOD_get_app_data; ++ ECDSA_METHOD_set_sign; ++ ECDSA_METHOD_set_sign_setup; ++ ECDSA_METHOD_set_verify; ++ ECDSA_METHOD_set_flags; ++ ECDSA_METHOD_set_name; ++ EVP_des_ede3_wrap; ++ EVP_aes_128_wrap; ++ EVP_aes_192_wrap; ++ EVP_aes_256_wrap; ++ EVP_aes_128_cbc_hmac_sha256; ++ EVP_aes_256_cbc_hmac_sha256; ++ CRYPTO_128_wrap; ++ CRYPTO_128_unwrap; ++ OCSP_REQ_CTX_nbio; ++ OCSP_REQ_CTX_new; ++ OCSP_set_max_response_length; ++ OCSP_REQ_CTX_i2d; ++ OCSP_REQ_CTX_nbio_d2i; ++ OCSP_REQ_CTX_get0_mem_bio; ++ OCSP_REQ_CTX_http; ++ RSA_padding_add_PKCS1_OAEP_mgf1; ++ RSA_padding_check_PKCS1_OAEP_mgf1; ++ RSA_OAEP_PARAMS_free; ++ RSA_OAEP_PARAMS_it; ++ RSA_OAEP_PARAMS_new; ++ SSL_get_sigalgs; ++ SSL_get_shared_sigalgs; ++ SSL_check_chain; ++ X509_chain_up_ref; ++ X509_http_nbio; ++ X509_CRL_http_nbio; ++ X509_REVOKED_dup; ++ i2d_re_X509_tbs; ++ X509_get0_signature; ++ X509_get_signature_nid; ++ X509_CRL_diff; ++ X509_chain_check_suiteb; ++ X509_CRL_check_suiteb; ++ X509_check_host; ++ X509_check_email; ++ X509_check_ip; ++ X509_check_ip_asc; ++ X509_STORE_set_lookup_crls_cb; ++ X509_STORE_CTX_get0_store; ++ X509_VERIFY_PARAM_set1_host; ++ X509_VERIFY_PARAM_add1_host; ++ X509_VERIFY_PARAM_set_hostflags; ++ X509_VERIFY_PARAM_get0_peername; ++ X509_VERIFY_PARAM_set1_email; ++ X509_VERIFY_PARAM_set1_ip; ++ X509_VERIFY_PARAM_set1_ip_asc; ++ X509_VERIFY_PARAM_get0_name; ++ X509_VERIFY_PARAM_get_count; ++ X509_VERIFY_PARAM_get0; ++ X509V3_EXT_free; ++ EC_GROUP_get_mont_data; ++ EC_curve_nid2nist; ++ EC_curve_nist2nid; ++ PEM_write_bio_DHxparams; ++ PEM_write_DHxparams; ++ SSL_CTX_add_client_custom_ext; ++ SSL_CTX_add_server_custom_ext; ++ SSL_extension_supported; ++ BUF_strnlen; ++ sk_deep_copy; ++ SSL_test_functions; ++} OPENSSL_1.0.1d; ++ +Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/openssl.ld =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ openssl-1.0.1d/engines/openssl.ld 2013-02-06 19:41:43.000000000 +0100 ++++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/openssl.ld 2014-02-24 21:02:30.000000000 +0100 @@ -0,0 +1,10 @@ +OPENSSL_1.0.0 { + global: @@ -4653,10 +4646,10 @@ Index: openssl-1.0.1d/engines/openssl.ld + *; +}; + -Index: openssl-1.0.1d/engines/ccgost/openssl.ld +Index: openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/ccgost/openssl.ld =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ openssl-1.0.1d/engines/ccgost/openssl.ld 2013-02-06 19:41:43.000000000 +0100 ++++ openssl-1.0.2~beta1.obsolete.0.0498436515490575/engines/ccgost/openssl.ld 2014-02-24 21:02:30.000000000 +0100 @@ -0,0 +1,10 @@ +OPENSSL_1.0.0 { + global: diff --git a/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_digicert_malaysia.patch b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_digicert_malaysia.patch new file mode 100644 index 0000000000..c43bcd1c77 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_digicert_malaysia.patch @@ -0,0 +1,29 @@ +From: Raphael Geissert <geissert@debian.org> +Description: make X509_verify_cert indicate that any certificate whose + name contains "Digicert Sdn. Bhd." (from Malaysia) is revoked. +Forwarded: not-needed +Origin: vendor +Last-Update: 2011-11-05 + +Upstream-Status: Backport [debian] + + +Index: openssl-1.0.2~beta1/crypto/x509/x509_vfy.c +=================================================================== +--- openssl-1.0.2~beta1.orig/crypto/x509/x509_vfy.c 2014-02-25 00:16:12.488028844 +0100 ++++ openssl-1.0.2~beta1/crypto/x509/x509_vfy.c 2014-02-25 00:16:12.484028929 +0100 +@@ -964,10 +964,11 @@ + for (i = sk_X509_num(ctx->chain) - 1; i >= 0; i--) + { + x = sk_X509_value(ctx->chain, i); +- /* Mark DigiNotar certificates as revoked, no matter +- * where in the chain they are. ++ /* Mark certificates containing the following names as ++ * revoked, no matter where in the chain they are. + */ +- if (x->name && strstr(x->name, "DigiNotar")) ++ if (x->name && (strstr(x->name, "DigiNotar") || ++ strstr(x->name, "Digicert Sdn. Bhd."))) + { + ctx->error = X509_V_ERR_CERT_REVOKED; + ctx->error_depth = i; diff --git a/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_diginotar.patch b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_diginotar.patch new file mode 100644 index 0000000000..0c1a0b651f --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/block_diginotar.patch @@ -0,0 +1,67 @@ +From: Raphael Geissert <geissert@debian.org> +Description: make X509_verify_cert indicate that any certificate whose + name contains "DigiNotar" is revoked. +Forwarded: not-needed +Origin: vendor +Last-Update: 2011-09-08 +Bug: http://bugs.debian.org/639744 +Reviewed-by: Kurt Roeckx <kurt@roeckx.be> +Reviewed-by: Dr Stephen N Henson <shenson@drh-consultancy.co.uk> + +This is not meant as final patch. + +Upstream-Status: Backport [debian] + + +Index: openssl-1.0.2/crypto/x509/x509_vfy.c +=================================================================== +--- openssl-1.0.2.orig/crypto/x509/x509_vfy.c ++++ openssl-1.0.2/crypto/x509/x509_vfy.c +@@ -119,6 +119,7 @@ static int check_trust(X509_STORE_CTX *c + static int check_revocation(X509_STORE_CTX *ctx); + static int check_cert(X509_STORE_CTX *ctx); + static int check_policy(X509_STORE_CTX *ctx); ++static int check_ca_blacklist(X509_STORE_CTX *ctx); + + static int get_crl_score(X509_STORE_CTX *ctx, X509 **pissuer, + unsigned int *preasons, X509_CRL *crl, X509 *x); +@@ -438,6 +439,9 @@ int X509_verify_cert(X509_STORE_CTX *ctx + if (!ok) + goto end; + ++ ok = check_ca_blacklist(ctx); ++ if(!ok) goto end; ++ + #ifndef OPENSSL_NO_RFC3779 + /* RFC 3779 path validation, now that CRL check has been done */ + ok = v3_asid_validate_path(ctx); +@@ -938,6 +942,29 @@ static int check_crl_time(X509_STORE_CTX + return 1; + } + ++static int check_ca_blacklist(X509_STORE_CTX *ctx) ++ { ++ X509 *x; ++ int i; ++ /* Check all certificates against the blacklist */ ++ for (i = sk_X509_num(ctx->chain) - 1; i >= 0; i--) ++ { ++ x = sk_X509_value(ctx->chain, i); ++ /* Mark DigiNotar certificates as revoked, no matter ++ * where in the chain they are. ++ */ ++ if (x->name && strstr(x->name, "DigiNotar")) ++ { ++ ctx->error = X509_V_ERR_CERT_REVOKED; ++ ctx->error_depth = i; ++ ctx->current_cert = x; ++ if (!ctx->verify_cb(0,ctx)) ++ return 0; ++ } ++ } ++ return 1; ++ } ++ + static int get_crl_sk(X509_STORE_CTX *ctx, X509_CRL **pcrl, X509_CRL **pdcrl, + X509 **pissuer, int *pscore, unsigned int *preasons, + STACK_OF(X509_CRL) *crls) diff --git a/meta/recipes-connectivity/openssl/openssl/debian1.0.2/padlock_conf.patch b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/padlock_conf.patch new file mode 100644 index 0000000000..61dcf457fe --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl/debian1.0.2/padlock_conf.patch @@ -0,0 +1,31 @@ + +Upstream-Status: Backport [debian] + +--- openssl/apps/openssl.cnf.orig 2012-06-06 00:45:56.000000000 +0200 ++++ openssl/apps/openssl.cnf 2012-06-06 00:46:46.000000000 +0200 +@@ -19,6 +19,8 @@ + # (Alternatively, use a configuration file that has only + # X.509v3 extensions in its main [= default] section.) + ++openssl_conf = openssl_def ++ + [ new_oids ] + + # We can add new OIDs in here for use by 'ca', 'req' and 'ts'. +@@ -348,3 +350,16 @@ + # (optional, default: no) + ess_cert_id_chain = no # Must the ESS cert id chain be included? + # (optional, default: no) ++ ++[openssl_def] ++engines = engine_section ++ ++[engine_section] ++padlock = padlock_section ++ ++[padlock_section] ++soft_load=1 ++init=1 ++default_algorithms = ALL ++dynamic_path=padlock ++ diff --git a/meta/recipes-connectivity/openssl/openssl/engines-install-in-libdir-ssl.patch b/meta/recipes-connectivity/openssl/openssl/engines-install-in-libdir-ssl.patch index d8a6f1a23c..a5746483e6 100644 --- a/meta/recipes-connectivity/openssl/openssl/engines-install-in-libdir-ssl.patch +++ b/meta/recipes-connectivity/openssl/openssl/engines-install-in-libdir-ssl.patch @@ -1,11 +1,11 @@ Upstream-Status: Inappropriate [configuration] -Index: openssl-1.0.0/engines/Makefile +Index: openssl-1.0.2/engines/Makefile =================================================================== ---- openssl-1.0.0.orig/engines/Makefile -+++ openssl-1.0.0/engines/Makefile -@@ -107,7 +107,7 @@ +--- openssl-1.0.2.orig/engines/Makefile ++++ openssl-1.0.2/engines/Makefile +@@ -107,13 +107,13 @@ install: @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile... @if [ -n "$(SHARED_LIBS)" ]; then \ set -e; \ @@ -14,16 +14,19 @@ Index: openssl-1.0.0/engines/Makefile for l in $(LIBNAMES); do \ ( echo installing $$l; \ pfx=lib; \ -@@ -119,13 +119,13 @@ + if expr "$(PLATFORM)" : "Cygwin" >/dev/null; then \ + sfx=".so"; \ +- cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \ ++ cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \ + else \ + case "$(CFLAGS)" in \ + *DSO_BEOS*) sfx=".so";; \ +@@ -122,10 +122,10 @@ install: *DSO_WIN32*) sfx="eay32.dll"; pfx=;; \ *) sfx=".bad";; \ esac; \ - cp $$pfx$$l$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \ + cp $$pfx$$l$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \ - else \ - sfx=".so"; \ -- cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \ -+ cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$$pfx$$l$$sfx.new; \ fi; \ - chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \ - mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx ); \ @@ -32,20 +35,25 @@ Index: openssl-1.0.0/engines/Makefile done; \ fi @target=install; $(RECURSIVE_MAKE) -Index: openssl-1.0.0/engines/ccgost/Makefile +Index: openssl-1.0.2/engines/ccgost/Makefile =================================================================== ---- openssl-1.0.0.orig/engines/ccgost/Makefile -+++ openssl-1.0.0/engines/ccgost/Makefile -@@ -53,13 +53,13 @@ +--- openssl-1.0.2.orig/engines/ccgost/Makefile ++++ openssl-1.0.2/engines/ccgost/Makefile +@@ -47,7 +47,7 @@ install: + pfx=lib; \ + if expr "$(PLATFORM)" : "Cygwin" >/dev/null; then \ + sfx=".so"; \ +- cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \ ++ cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new; \ + else \ + case "$(CFLAGS)" in \ + *DSO_BEOS*) sfx=".so";; \ +@@ -56,10 +56,10 @@ install: *DSO_WIN32*) sfx="eay32.dll"; pfx=;; \ *) sfx=".bad";; \ esac; \ - cp $${pfx}$(LIBNAME)$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \ + cp $${pfx}$(LIBNAME)$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new; \ - else \ - sfx=".so"; \ -- cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \ -+ cp cyg$(LIBNAME).dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/$${pfx}$(LIBNAME)$$sfx.new; \ fi; \ - chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new; \ - mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$${pfx}$(LIBNAME)$$sfx; \ diff --git a/meta/recipes-connectivity/openssl/openssl/fix-cipher-des-ede3-cfb1.patch b/meta/recipes-connectivity/openssl/openssl/fix-cipher-des-ede3-cfb1.patch index f0e177840f..06d1ea69d3 100644 --- a/meta/recipes-connectivity/openssl/openssl/fix-cipher-des-ede3-cfb1.patch +++ b/meta/recipes-connectivity/openssl/openssl/fix-cipher-des-ede3-cfb1.patch @@ -6,17 +6,16 @@ http://rt.openssl.org/Ticket/Display.html?id=2867 Signed-Off-By: Muhammad Shakeel <muhammad_shakeel@mentor.com> -diff --git a/crypto/evp/e_des3.c b/crypto/evp/e_des3.c -index 3232cfe..df84922 100644 +Index: openssl-1.0.2/crypto/evp/e_des3.c =================================================================== ---- a/crypto/evp/e_des3.c -+++ b/crypto/evp/e_des3.c -@@ -173,7 +173,7 @@ static int des_ede3_cfb1_cipher(EVP_CIPHER_CTX *ctx, unsigned char *out, +--- openssl-1.0.2.orig/crypto/evp/e_des3.c ++++ openssl-1.0.2/crypto/evp/e_des3.c +@@ -211,7 +211,7 @@ static int des_ede3_cfb1_cipher(EVP_CIPH size_t n; - unsigned char c[1],d[1]; + unsigned char c[1], d[1]; -- for(n=0 ; n < inl ; ++n) -+ for(n=0 ; n < inl*8 ; ++n) - { - c[0]=(in[n/8]&(1 << (7-n%8))) ? 0x80 : 0; - DES_ede3_cfb_encrypt(c,d,1,1, +- for (n = 0; n < inl; ++n) { ++ for (n = 0; n * 8 < inl; ++n) { + c[0] = (in[n / 8] & (1 << (7 - n % 8))) ? 0x80 : 0; + DES_ede3_cfb_encrypt(c, d, 1, 1, + &data(ctx)->ks1, &data(ctx)->ks2, diff --git a/meta/recipes-connectivity/openssl/openssl/heartbeat-test-private-api.patch b/meta/recipes-connectivity/openssl/openssl/heartbeat-test-private-api.patch deleted file mode 100644 index 3c77dfcdf0..0000000000 --- a/meta/recipes-connectivity/openssl/openssl/heartbeat-test-private-api.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 2e251ba8feaa696f9408a19336d1fbab148df55e Mon Sep 17 00:00:00 2001 -From: Kurt Roeckx <kurt@roeckx.be> -Date: Sat, 7 Jun 2014 13:32:23 +0200 -Subject: [PATCH] Link heartbeat_test with the static version of the libraries - -It's using an internal API that that might not be available in the shared -library. - -Upstream-Status: Submitted [https://github.com/openssl/openssl/pull/125] -Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> - ---- - test/Makefile | 9 ++++++++- - 1 file changed, 8 insertions(+), 1 deletion(-) - -diff --git a/test/Makefile b/test/Makefile -index f1816ac..1dd7bb9 100644 ---- a/test/Makefile -+++ b/test/Makefile -@@ -420,6 +420,13 @@ BUILD_CMD=shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \ - LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \ - link_app.$${shlib_target} - -+BUILD_CMD_STATIC=shlib_target=; \ -+ LIBRARIES="$(DLIBSSL) $(DLIBCRYPTO) $(LIBKRB5)"; \ -+ $(MAKE) -f $(TOP)/Makefile.shared -e \ -+ APPNAME=$$target$(EXE_EXT) OBJECTS="$$target.o" \ -+ LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \ -+ link_app.$${shlib_target} -+ - $(RSATEST)$(EXE_EXT): $(RSATEST).o $(DLIBCRYPTO) - @target=$(RSATEST); $(BUILD_CMD) - -@@ -618,7 +625,7 @@ $(V3NAMETEST)$(EXE_EXT): $(V3NAMETEST).o $(DLIBCRYPTO) - @target=$(V3NAMETEST); $(BUILD_CMD) - - $(HEARTBEATTEST)$(EXE_EXT): $(HEARTBEATTEST).o $(DLIBCRYPTO) -- @target=$(HEARTBEATTEST); $(BUILD_CMD) -+ @target=$(HEARTBEATTEST); $(BUILD_CMD_STATIC) - - #$(AESTEST).o: $(AESTEST).c - # $(CC) -c $(CFLAGS) -DINTERMEDIATE_VALUE_KAT -DTRACE_KAT_MCT $(AESTEST).c --- -1.9.3 - diff --git a/meta/recipes-connectivity/openssl/openssl/initial-aarch64-bits.patch b/meta/recipes-connectivity/openssl/openssl/initial-aarch64-bits.patch deleted file mode 100644 index 770097db78..0000000000 --- a/meta/recipes-connectivity/openssl/openssl/initial-aarch64-bits.patch +++ /dev/null @@ -1,120 +0,0 @@ -From: Andy Polyakov <appro@openssl.org> -Date: Sun, 13 Oct 2013 17:15:15 +0000 (+0200) -Subject: Initial aarch64 bits. -X-Git-Url: http://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff_plain;h=039081b80977e2a5de84e1f88f8b4d025b559956 - -Initial aarch64 bits. -Upstream-Status: backport (will be included in 1.0.2) ---- - crypto/bn/bn_lcl.h | 9 +++++++++ - crypto/md32_common.h | 18 ++++++++++++++++++ - crypto/modes/modes_lcl.h | 8 ++++++++ - crypto/sha/sha512.c | 13 +++++++++++++ - 4 files changed, 48 insertions(+) - -Index: openssl-1.0.1f/crypto/bn/bn_lcl.h -=================================================================== ---- openssl-1.0.1f.orig/crypto/bn/bn_lcl.h 2014-01-06 15:47:42.000000000 +0200 -+++ openssl-1.0.1f/crypto/bn/bn_lcl.h 2014-02-28 10:37:55.495979037 +0200 -@@ -300,6 +300,15 @@ - : "r"(a), "r"(b)); - # endif - # endif -+# elif defined(__aarch64__) && defined(SIXTY_FOUR_BIT_LONG) -+# if defined(__GNUC__) && __GNUC__>=2 -+# define BN_UMULT_HIGH(a,b) ({ \ -+ register BN_ULONG ret; \ -+ asm ("umulh %0,%1,%2" \ -+ : "=r"(ret) \ -+ : "r"(a), "r"(b)); \ -+ ret; }) -+# endif - # endif /* cpu */ - #endif /* OPENSSL_NO_ASM */ - -Index: openssl-1.0.1f/crypto/md32_common.h -=================================================================== ---- openssl-1.0.1f.orig/crypto/md32_common.h 2014-01-06 15:47:42.000000000 +0200 -+++ openssl-1.0.1f/crypto/md32_common.h 2014-02-28 10:39:21.751979107 +0200 -@@ -213,6 +213,24 @@ - asm ("bswapl %0":"=r"(r):"0"(r)); \ - *((unsigned int *)(c))=r; (c)+=4; r; }) - # endif -+# elif defined(__aarch64__) -+# if defined(__BYTE_ORDER__) -+# if defined(__ORDER_LITTLE_ENDIAN__) && __BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__ -+# define HOST_c2l(c,l) ({ unsigned int r; \ -+ asm ("rev %w0,%w1" \ -+ :"=r"(r) \ -+ :"r"(*((const unsigned int *)(c))));\ -+ (c)+=4; (l)=r; }) -+# define HOST_l2c(l,c) ({ unsigned int r; \ -+ asm ("rev %w0,%w1" \ -+ :"=r"(r) \ -+ :"r"((unsigned int)(l)));\ -+ *((unsigned int *)(c))=r; (c)+=4; r; }) -+# elif defined(__ORDER_BIG_ENDIAN__) && __BYTE_ORDER__==__ORDER_BIG_ENDIAN__ -+# define HOST_c2l(c,l) ((l)=*((const unsigned int *)(c)), (c)+=4, (l)) -+# define HOST_l2c(l,c) (*((unsigned int *)(c))=(l), (c)+=4, (l)) -+# endif -+# endif - # endif - # endif - #endif -Index: openssl-1.0.1f/crypto/modes/modes_lcl.h -=================================================================== ---- openssl-1.0.1f.orig/crypto/modes/modes_lcl.h 2014-02-28 10:47:48.731979011 +0200 -+++ openssl-1.0.1f/crypto/modes/modes_lcl.h 2014-02-28 10:48:49.707978919 +0200 -@@ -29,6 +29,7 @@ - #if defined(__i386) || defined(__i386__) || \ - defined(__x86_64) || defined(__x86_64__) || \ - defined(_M_IX86) || defined(_M_AMD64) || defined(_M_X64) || \ -+ defined(__aarch64__) || \ - defined(__s390__) || defined(__s390x__) - # undef STRICT_ALIGNMENT - #endif -@@ -50,6 +51,13 @@ - # define BSWAP4(x) ({ u32 ret=(x); \ - asm ("bswapl %0" \ - : "+r"(ret)); ret; }) -+# elif defined(__aarch64__) -+# define BSWAP8(x) ({ u64 ret; \ -+ asm ("rev %0,%1" \ -+ : "=r"(ret) : "r"(x)); ret; }) -+# define BSWAP4(x) ({ u32 ret; \ -+ asm ("rev %w0,%w1" \ -+ : "=r"(ret) : "r"(x)); ret; }) - # elif (defined(__arm__) || defined(__arm)) && !defined(STRICT_ALIGNMENT) - # define BSWAP8(x) ({ u32 lo=(u64)(x)>>32,hi=(x); \ - asm ("rev %0,%0; rev %1,%1" \ -Index: openssl-1.0.1f/crypto/sha/sha512.c -=================================================================== ---- openssl-1.0.1f.orig/crypto/sha/sha512.c 2014-01-06 15:47:42.000000000 +0200 -+++ openssl-1.0.1f/crypto/sha/sha512.c 2014-02-28 10:52:14.579978981 +0200 -@@ -55,6 +55,7 @@ - #if defined(__i386) || defined(__i386__) || defined(_M_IX86) || \ - defined(__x86_64) || defined(_M_AMD64) || defined(_M_X64) || \ - defined(__s390__) || defined(__s390x__) || \ -+ defined(__aarch64__) || \ - defined(SHA512_ASM) - #define SHA512_BLOCK_CAN_MANAGE_UNALIGNED_DATA - #endif -@@ -347,6 +348,18 @@ - asm ("rotrdi %0,%1,%2" \ - : "=r"(ret) \ - : "r"(a),"K"(n)); ret; }) -+# elif defined(__aarch64__) -+# define ROTR(a,n) ({ SHA_LONG64 ret; \ -+ asm ("ror %0,%1,%2" \ -+ : "=r"(ret) \ -+ : "r"(a),"I"(n)); ret; }) -+# if defined(__BYTE_ORDER__) && defined(__ORDER_LITTLE_ENDIAN__) && \ -+ __BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__ -+# define PULL64(x) ({ SHA_LONG64 ret; \ -+ asm ("rev %0,%1" \ -+ : "=r"(ret) \ -+ : "r"(*((const SHA_LONG64 *)(&(x))))); ret; }) -+# endif - # endif - # elif defined(_MSC_VER) - # if defined(_WIN64) /* applies to both IA-64 and AMD64 */ diff --git a/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch b/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch index c161e62f62..cebc8cf0d0 100644 --- a/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch +++ b/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch @@ -8,14 +8,16 @@ http://www.mail-archive.com/openssl-dev@openssl.org/msg32860.html Signed-off-by: Xufeng Zhang <xufeng.zhang@windriver.com> --- ---- a/crypto/evp/digest.c -+++ b/crypto/evp/digest.c -@@ -199,7 +199,7 @@ - return 0; - } +Index: openssl-1.0.2/crypto/evp/digest.c +=================================================================== +--- openssl-1.0.2.orig/crypto/evp/digest.c ++++ openssl-1.0.2/crypto/evp/digest.c +@@ -208,7 +208,7 @@ int EVP_DigestInit_ex(EVP_MD_CTX *ctx, c + return 0; + } #endif -- if (ctx->digest != type) -+ if (type && (ctx->digest != type)) - { - if (ctx->digest && ctx->digest->ctx_size) - OPENSSL_free(ctx->md_data); +- if (ctx->digest != type) { ++ if (type && (ctx->digest != type)) { + if (ctx->digest && ctx->digest->ctx_size) + OPENSSL_free(ctx->md_data); + ctx->digest = type; diff --git a/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch b/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch index 3e93fe4e22..d7047bbaac 100644 --- a/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch +++ b/meta/recipes-connectivity/openssl/openssl/openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch @@ -8,32 +8,19 @@ http://www.mail-archive.com/openssl-dev@openssl.org/msg32859.html Signed-off-by: Xufeng Zhang <xufeng.zhang@windriver.com> --- ---- a/crypto/dh/dh_ameth.c -+++ b/crypto/dh/dh_ameth.c -@@ -139,6 +139,12 @@ - dh=pkey->pkey.dh; +Index: openssl-1.0.2/crypto/dh/dh_ameth.c +=================================================================== +--- openssl-1.0.2.orig/crypto/dh/dh_ameth.c ++++ openssl-1.0.2/crypto/dh/dh_ameth.c +@@ -161,6 +161,11 @@ static int dh_pub_encode(X509_PUBKEY *pk + dh = pkey->pkey.dh; - str = ASN1_STRING_new(); -+ if (!str) -+ { -+ DHerr(DH_F_DH_PUB_ENCODE, ERR_R_MALLOC_FAILURE); -+ goto err; -+ } + str = ASN1_STRING_new(); ++ if (!str) { ++ DHerr(DH_F_DH_PUB_ENCODE, ERR_R_MALLOC_FAILURE); ++ goto err; ++ } + - str->length = i2d_DHparams(dh, &str->data); - if (str->length <= 0) - { ---- a/crypto/dsa/dsa_ameth.c -+++ b/crypto/dsa/dsa_ameth.c -@@ -148,6 +148,11 @@ - { - ASN1_STRING *str; - str = ASN1_STRING_new(); -+ if (!str) -+ { -+ DSAerr(DSA_F_DSA_PUB_ENCODE, ERR_R_MALLOC_FAILURE); -+ goto err; -+ } - str->length = i2d_DSAparams(dsa, &str->data); - if (str->length <= 0) - { + str->length = i2d_dhp(pkey, dh, &str->data); + if (str->length <= 0) { + DHerr(DH_F_DH_PUB_ENCODE, ERR_R_MALLOC_FAILURE); diff --git a/meta/recipes-connectivity/openssl/openssl/openssl_fix_for_x32.patch b/meta/recipes-connectivity/openssl/openssl/openssl_fix_for_x32.patch index 93ce0343cc..cbce32c89b 100644 --- a/meta/recipes-connectivity/openssl/openssl/openssl_fix_for_x32.patch +++ b/meta/recipes-connectivity/openssl/openssl/openssl_fix_for_x32.patch @@ -6,64 +6,13 @@ Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/07/13 ported the patch to the 1.0.0e version Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> 2011/12/01 -Index: openssl-1.0.1e/Configure +Index: openssl-1.0.2/crypto/bn/bn.h =================================================================== ---- openssl-1.0.1e.orig/Configure -+++ openssl-1.0.1e/Configure -@@ -402,6 +402,7 @@ my %table=( - "linux-ia64-ecc","ecc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", - "linux-ia64-icc","icc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", - "linux-x86_64", "gcc:-m64 -DL_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64", -+"linux-x32", "gcc:-mx32 -DL_ENDIAN -DTERMIO -O3 -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-mx32:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::x32", - "linux64-s390x", "gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${s390x_asm}:64:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64", - #### So called "highgprs" target for z/Architecture CPUs - # "Highgprs" is kernel feature first implemented in Linux 2.6.32, see -Index: openssl-1.0.1e/crypto/bn/asm/x86_64-gcc.c -=================================================================== ---- openssl-1.0.1e.orig/crypto/bn/asm/x86_64-gcc.c -+++ openssl-1.0.1e/crypto/bn/asm/x86_64-gcc.c -@@ -55,7 +55,7 @@ - * machine. - */ - --#ifdef _WIN64 -+#if defined _WIN64 || !defined __LP64__ - #define BN_ULONG unsigned long long - #else - #define BN_ULONG unsigned long -@@ -192,9 +192,9 @@ BN_ULONG bn_add_words (BN_ULONG *rp, con - asm ( - " subq %2,%2 \n" - ".p2align 4 \n" -- "1: movq (%4,%2,8),%0 \n" -- " adcq (%5,%2,8),%0 \n" -- " movq %0,(%3,%2,8) \n" -+ "1: movq (%q4,%2,8),%0 \n" -+ " adcq (%q5,%2,8),%0 \n" -+ " movq %0,(%q3,%2,8) \n" - " leaq 1(%2),%2 \n" - " loop 1b \n" - " sbbq %0,%0 \n" -@@ -215,9 +215,9 @@ BN_ULONG bn_sub_words (BN_ULONG *rp, con - asm ( - " subq %2,%2 \n" - ".p2align 4 \n" -- "1: movq (%4,%2,8),%0 \n" -- " sbbq (%5,%2,8),%0 \n" -- " movq %0,(%3,%2,8) \n" -+ "1: movq (%q4,%2,8),%0 \n" -+ " sbbq (%q5,%2,8),%0 \n" -+ " movq %0,(%q3,%2,8) \n" - " leaq 1(%2),%2 \n" - " loop 1b \n" - " sbbq %0,%0 \n" -Index: openssl-1.0.1e/crypto/bn/bn.h -=================================================================== ---- openssl-1.0.1e.orig/crypto/bn/bn.h -+++ openssl-1.0.1e/crypto/bn/bn.h -@@ -172,6 +172,13 @@ extern "C" { +--- openssl-1.0.2.orig/crypto/bn/bn.h ++++ openssl-1.0.2/crypto/bn/bn.h +@@ -173,6 +173,13 @@ extern "C" { + # endif # endif - #endif +/* Address type. */ +#ifdef _WIN64 @@ -72,19 +21,19 @@ Index: openssl-1.0.1e/crypto/bn/bn.h +#define BN_ADDR unsigned long +#endif + - /* assuming long is 64bit - this is the DEC Alpha - * unsigned long long is only 64 bits :-(, don't define - * BN_LLONG for the DEC Alpha */ -Index: openssl-1.0.1e/crypto/bn/bn_exp.c + /* + * assuming long is 64bit - this is the DEC Alpha unsigned long long is only + * 64 bits :-(, don't define BN_LLONG for the DEC Alpha +Index: openssl-1.0.2/crypto/bn/bn_exp.c =================================================================== ---- openssl-1.0.1e.orig/crypto/bn/bn_exp.c -+++ openssl-1.0.1e/crypto/bn/bn_exp.c -@@ -567,7 +567,7 @@ static int MOD_EXP_CTIME_COPY_FROM_PREBU - - /* Given a pointer value, compute the next address that is a cache line multiple. */ +--- openssl-1.0.2.orig/crypto/bn/bn_exp.c ++++ openssl-1.0.2/crypto/bn/bn_exp.c +@@ -638,7 +638,7 @@ static int MOD_EXP_CTIME_COPY_FROM_PREBU + * multiple. + */ #define MOD_EXP_CTIME_ALIGN(x_) \ -- ((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - (((size_t)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK)))) +- ((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - (((size_t)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK)))) + ((unsigned char*)(x_) + (MOD_EXP_CTIME_MIN_CACHE_LINE_WIDTH - (((BN_ADDR)(x_)) & (MOD_EXP_CTIME_MIN_CACHE_LINE_MASK)))) - /* This variant of BN_mod_exp_mont() uses fixed windows and the special - * precomputation memory layout to limit data-dependency to a minimum + /* + * This variant of BN_mod_exp_mont() uses fixed windows and the special diff --git a/meta/recipes-connectivity/openssl/openssl/ptest-deps.patch b/meta/recipes-connectivity/openssl/openssl/ptest-deps.patch index 527e10c53b..ef6d17934d 100644 --- a/meta/recipes-connectivity/openssl/openssl/ptest-deps.patch +++ b/meta/recipes-connectivity/openssl/openssl/ptest-deps.patch @@ -10,11 +10,11 @@ Upstream-Status: Inappropriate [config] Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> -diff --git a/test/Makefile b/test/Makefile -index e6fcfb4..5ae043b 100644 ---- a/test/Makefile -+++ b/test/Makefile -@@ -322,11 +322,11 @@ test_cms: +Index: openssl-1.0.2/test/Makefile +=================================================================== +--- openssl-1.0.2.orig/test/Makefile ++++ openssl-1.0.2/test/Makefile +@@ -330,7 +330,7 @@ test_cms: ../apps/openssl$(EXE_EXT) cms- @echo "CMS consistency test" $(PERL) cms-test.pl @@ -23,8 +23,12 @@ index e6fcfb4..5ae043b 100644 @echo "Test SRP" ../util/shlib_wrap.sh ./srptest +@@ -342,7 +342,7 @@ test_v3name: $(V3NAMETEST)$(EXE_EXT) + @echo "Test X509v3_check_*" + ../util/shlib_wrap.sh ./$(V3NAMETEST) + -test_heartbeat: $(HEARTBEATTEST)$(EXE_EXT) +test_heartbeat: ../util/shlib_wrap.sh ./$(HEARTBEATTEST) - lint: + test_constant_time: $(CONSTTIMETEST)$(EXE_EXT) diff --git a/meta/recipes-connectivity/openssl/openssl/update-version-script-for-1.0.2.patch b/meta/recipes-connectivity/openssl/openssl/update-version-script-for-1.0.2.patch new file mode 100644 index 0000000000..fcfccfadb3 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl/update-version-script-for-1.0.2.patch @@ -0,0 +1,66 @@ +Index: openssl-1.0.2/openssl.ld +=================================================================== +--- openssl-1.0.2.orig/openssl.ld ++++ openssl-1.0.2/openssl.ld +@@ -4618,3 +4618,61 @@ OPENSSL_1.0.1d { + CRYPTO_memcmp; + } OPENSSL_1.0.1; + ++OPENSSL_1.0.2 { ++ global: ++ ASN1_TIME_diff; ++ CMS_RecipientInfo_get0_pkey_ctx; ++ CMS_RecipientInfo_kari_get0_ctx; ++ CMS_SignerInfo_get0_pkey_ctx; ++ DH_get_1024_160; ++ DH_get_2048_224; ++ DH_get_2048_256; ++ DTLS_client_method; ++ DTLS_server_method; ++ DTLSv1_2_client_method; ++ DTLSv1_2_server_method; ++ EC_curve_nid2nist; ++ EC_curve_nist2nid; ++ EVP_aes_128_cbc_hmac_sha256; ++ EVP_aes_128_wrap; ++ EVP_aes_192_wrap; ++ EVP_aes_256_cbc_hmac_sha256; ++ EVP_aes_256_wrap; ++ EVP_des_ede3_wrap; ++ OCSP_REQ_CTX_http; ++ OCSP_REQ_CTX_new; ++ PEM_write_bio_DHxparams; ++ SSL_CIPHER_find; ++ SSL_CONF_CTX_finish; ++ SSL_CONF_CTX_free; ++ SSL_CONF_CTX_new; ++ SSL_CONF_CTX_set_flags; ++ SSL_CONF_CTX_set_ssl_ctx; ++ SSL_CONF_cmd; ++ SSL_CONF_cmd_argv; ++ SSL_CTX_add_client_custom_ext; ++ SSL_CTX_add_server_custom_ext; ++ SSL_CTX_set_alpn_protos; ++ SSL_CTX_set_alpn_select_cb; ++ SSL_CTX_set_cert_cb; ++ SSL_CTX_use_serverinfo_file; ++ SSL_certs_clear; ++ SSL_check_chain; ++ SSL_get0_alpn_selected; ++ SSL_get_shared_sigalgs; ++ SSL_get_sigalgs; ++ SSL_is_server; ++ X509_CRL_diff; ++ X509_CRL_http_nbio; ++ X509_STORE_set_lookup_crls_cb; ++ X509_VERIFY_PARAM_set1_email; ++ X509_VERIFY_PARAM_set1_host; ++ X509_VERIFY_PARAM_set1_ip_asc; ++ X509_chain_check_suiteb; ++ X509_chain_up_ref; ++ X509_check_email; ++ X509_check_host; ++ X509_check_ip_asc; ++ X509_get_signature_nid; ++ X509_http_nbio; ++} OPENSSL_1.0.1d; diff --git a/meta/recipes-connectivity/openssl/openssl_1.0.1h.bb b/meta/recipes-connectivity/openssl/openssl_1.0.2.bb index ddaaba8836..79537f99d9 100644 --- a/meta/recipes-connectivity/openssl/openssl_1.0.1h.bb +++ b/meta/recipes-connectivity/openssl/openssl_1.0.2.bb @@ -16,31 +16,31 @@ SRC_URI += "file://configure-targets.patch \ file://oe-ldflags.patch \ file://engines-install-in-libdir-ssl.patch \ file://openssl-fix-link.patch \ - file://debian/version-script.patch \ - file://debian/pic.patch \ - file://debian/c_rehash-compat.patch \ + file://debian1.0.2/block_diginotar.patch \ + file://debian1.0.2/block_digicert_malaysia.patch \ + file://debian1.0.2/padlock_conf.patch \ file://debian/ca.patch \ - file://debian/make-targets.patch \ - file://debian/no-rpath.patch \ + file://debian/c_rehash-compat.patch \ + file://debian/debian-targets.patch \ file://debian/man-dir.patch \ file://debian/man-section.patch \ + file://debian/no-rpath.patch \ file://debian/no-symbolic.patch \ - file://debian/debian-targets.patch \ + file://debian/pic.patch \ + file://debian/version-script.patch \ file://openssl_fix_for_x32.patch \ file://fix-cipher-des-ede3-cfb1.patch \ file://openssl-avoid-NULL-pointer-dereference-in-EVP_DigestInit_ex.patch \ file://openssl-avoid-NULL-pointer-dereference-in-dh_pub_encode.patch \ - file://initial-aarch64-bits.patch \ file://find.pl \ file://openssl-fix-des.pod-error.patch \ file://Makefiles-ptest.patch \ - file://heartbeat-test-private-api.patch \ file://ptest-deps.patch \ file://run-ptest \ " -SRC_URI[md5sum] = "8d6d684a9430d5cc98a62a5d8fbda8cf" -SRC_URI[sha256sum] = "9d1c8a9836aa63e2c6adb684186cbd4371c9e9dcc01d6e3bb447abf2d4d3d093" +SRC_URI[md5sum] = "38373013fc85c790aabf8837969c5eba" +SRC_URI[sha256sum] = "8c48baf3babe0d505d16cfc0cf272589c66d3624264098213db0fb00034728e9" PACKAGES =+ " \ ${PN}-engines \ diff --git a/meta/recipes-connectivity/portmap/portmap.inc b/meta/recipes-connectivity/portmap/portmap.inc index 7588341c8e..338af33a38 100644 --- a/meta/recipes-connectivity/portmap/portmap.inc +++ b/meta/recipes-connectivity/portmap/portmap.inc @@ -4,28 +4,14 @@ SECTION = "console/network" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://portmap.c;beginline=2;endline=31;md5=51ff67e66ec84b2009b017b1f94afbf4 \ file://from_local.c;beginline=9;endline=35;md5=1bec938a2268b8b423c58801ace3adc1" -DEPENDS = "virtual/fakeroot-native" - -SRC_URI = "${DEBIAN_MIRROR}/main/p/portmap/portmap_5.orig.tar.gz \ - ${DEBIAN_MIRROR}/main/p/portmap/portmap_${PV}.diff.gz \ - file://portmap.init \ - file://make.patch;apply=yes" -S = "${WORKDIR}/portmap_5beta" INITSCRIPT_NAME = "portmap" -INITSCRIPT_PARAMS = "start 43 S . start 32 0 6 . stop 81 1 ." - -inherit update-rc.d +INITSCRIPT_PARAMS = "start 10 2 3 4 5 . stop 32 0 1 6 ." -sbindir = "/sbin" +inherit update-rc.d systemd -fakeroot do_install() { - install -d ${D}${sysconfdir}/init.d - install -d ${D}${base_sbindir} - install -m 0755 ${WORKDIR}/portmap.init ${D}${sysconfdir}/init.d/portmap - oe_runmake 'docdir=${docdir}/portmap' 'DESTDIR=${D}' install -} +SYSTEMD_SERVICE_${PN} = "portmap.service" PACKAGES =+ "portmap-utils" -FILES_portmap-utils = "/sbin/pmap_set /sbin/pmap_dump" +FILES_portmap-utils = "${base_sbindir}/pmap_set ${base_sbindir}/pmap_dump" FILES_${PN}-doc += "${docdir}" diff --git a/meta/recipes-connectivity/portmap/portmap-6.0/destdir-no-strip.patch b/meta/recipes-connectivity/portmap/portmap/destdir-no-strip.patch index 2fbf784b73..2fbf784b73 100644 --- a/meta/recipes-connectivity/portmap/portmap-6.0/destdir-no-strip.patch +++ b/meta/recipes-connectivity/portmap/portmap/destdir-no-strip.patch diff --git a/meta/recipes-connectivity/portmap/portmap/portmap.service b/meta/recipes-connectivity/portmap/portmap/portmap.service new file mode 100644 index 0000000000..7ef9d7b02e --- /dev/null +++ b/meta/recipes-connectivity/portmap/portmap/portmap.service @@ -0,0 +1,10 @@ +[Unit] +Description=The RPC portmapper +After=network.target + +[Service] +Type=forking +ExecStart=@BASE_SBINDIR@/portmap + +[Install] +WantedBy=multi-user.target diff --git a/meta/recipes-connectivity/portmap/portmap-6.0/tcpd-config.patch b/meta/recipes-connectivity/portmap/portmap/tcpd-config.patch index 2f25058095..2f25058095 100644 --- a/meta/recipes-connectivity/portmap/portmap-6.0/tcpd-config.patch +++ b/meta/recipes-connectivity/portmap/portmap/tcpd-config.patch diff --git a/meta/recipes-connectivity/portmap/portmap_6.0.bb b/meta/recipes-connectivity/portmap/portmap_6.0.bb index b0a9454c48..e727fe3cb9 100644 --- a/meta/recipes-connectivity/portmap/portmap_6.0.bb +++ b/meta/recipes-connectivity/portmap/portmap_6.0.bb @@ -5,7 +5,8 @@ PR = "r9" SRC_URI = "http://www.sourcefiles.org/Networking/Tools/Miscellanenous/portmap-6.0.tgz \ file://destdir-no-strip.patch \ file://tcpd-config.patch \ - file://portmap.init" + file://portmap.init \ + file://portmap.service" SRC_URI[md5sum] = "ac108ab68bf0f34477f8317791aaf1ff" SRC_URI[sha256sum] = "02c820d39f3e6e729d1bea3287a2d8a6c684f1006fb9612f97dcad4a281d41de" @@ -19,8 +20,12 @@ CPPFLAGS += "-DFACILITY=LOG_DAEMON -DENABLE_DNS -DHOSTS_ACCESS" CFLAGS += "-Wall -Wstrict-prototypes -fPIC" EXTRA_OEMAKE += "'NO_TCP_WRAPPER=${@bb.utils.contains('PACKAGECONFIG', 'tcp-wrappers', '', '1', d)}'" -fakeroot do_install() { +do_install() { install -d ${D}${mandir}/man8/ ${D}${base_sbindir} ${D}${sysconfdir}/init.d install -m 0755 ${WORKDIR}/portmap.init ${D}${sysconfdir}/init.d/portmap oe_runmake install DESTDIR=${D} + + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/portmap.service ${D}${systemd_unitdir}/system + sed -i -e 's,@BASE_SBINDIR@,${base_sbindir},g' ${D}${systemd_unitdir}/system/portmap.service } diff --git a/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb b/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb index 68b83d00f1..51a76b4299 100644 --- a/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb +++ b/meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb @@ -12,6 +12,8 @@ SRC_URI = "file://host-peer \ inherit allarch useradd +S = "${WORKDIR}" + do_install() { install -d ${D}${sysconfdir}/ppp/peers install -m 0644 ${WORKDIR}/host-peer ${D}${sysconfdir}/ppp/peers/host diff --git a/meta/recipes-connectivity/ppp/ppp_2.4.6.bb b/meta/recipes-connectivity/ppp/ppp_2.4.7.bb index 8bc3672600..92ca0c92c6 100644 --- a/meta/recipes-connectivity/ppp/ppp_2.4.6.bb +++ b/meta/recipes-connectivity/ppp/ppp_2.4.7.bb @@ -31,8 +31,8 @@ SRC_URI = "http://ppp.samba.org/ftp/ppp/ppp-${PV}.tar.gz \ file://ppp@.service \ " -SRC_URI[md5sum] = "3434d2cc9327167a0723aaaa8670083b" -SRC_URI[sha256sum] = "1b33181a03962c8a092c055fb9980e9722728a8d98a4bb7ec7acda17c1b1b49d" +SRC_URI[md5sum] = "78818f40e6d33a1d1de68a1551f6595a" +SRC_URI[sha256sum] = "02e0a3dd3e4799e33103f70ec7df75348c8540966ee7c948e4ed8a42bbccfb30" inherit autotools-brokensep systemd diff --git a/meta/recipes-connectivity/resolvconf/resolvconf/99_resolvconf b/meta/recipes-connectivity/resolvconf/resolvconf/99_resolvconf new file mode 100644 index 0000000000..3790d774a7 --- /dev/null +++ b/meta/recipes-connectivity/resolvconf/resolvconf/99_resolvconf @@ -0,0 +1,4 @@ +d root root 0755 /var/run/resolvconf/interface none +f root root 0644 /etc/resolvconf/run/resolv.conf none +f root root 0644 /etc/resolvconf/run/enable-updates none +l root root 0644 /etc/resolv.conf /etc/resolvconf/run/resolv.conf diff --git a/meta/recipes-connectivity/resolvconf/resolvconf/fix-path-for-busybox.patch b/meta/recipes-connectivity/resolvconf/resolvconf/fix-path-for-busybox.patch new file mode 100644 index 0000000000..1aead07869 --- /dev/null +++ b/meta/recipes-connectivity/resolvconf/resolvconf/fix-path-for-busybox.patch @@ -0,0 +1,20 @@ + +busybox installs readlink into /usr/bin, so ensure /usr/bin +is in the path. + +Upstream-Status: Submitted +Signed-off-by: Saul Wold <sgw@linux.intel.com> + +Index: resolvconf-1.76/etc/resolvconf/update.d/libc +=================================================================== +--- resolvconf-1.76.orig/etc/resolvconf/update.d/libc ++++ resolvconf-1.76/etc/resolvconf/update.d/libc +@@ -16,7 +16,7 @@ + # + + set -e +-PATH=/sbin:/bin ++PATH=/sbin:/bin:/usr/bin + + [ -x /lib/resolvconf/list-records ] || exit 1 + diff --git a/meta/recipes-connectivity/resolvconf/resolvconf_1.75.bb b/meta/recipes-connectivity/resolvconf/resolvconf_1.76.bb index 7310c837e9..797e9b09c7 100644 --- a/meta/recipes-connectivity/resolvconf/resolvconf_1.75.bb +++ b/meta/recipes-connectivity/resolvconf/resolvconf_1.76.bb @@ -11,10 +11,13 @@ AUTHOR = "Thomas Hood" HOMEPAGE = "http://packages.debian.org/resolvconf" RDEPENDS_${PN} = "bash" -SRC_URI = "${DEBIAN_MIRROR}/main/r/resolvconf/resolvconf_${PV}.tar.xz" +SRC_URI = "http://snapshot.debian.org/archive/debian/20141013T184415Z/pool/main/r/${BPN}/${BPN}_1.76.tar.xz \ + file://fix-path-for-busybox.patch \ + file://99_resolvconf \ + " -SRC_URI[md5sum] = "4b8bc86a3cf070e3fd0e9aff7eaaba56" -SRC_URI[sha256sum] = "16167f37a77ef4bc4596dcbefece269b6a10d10fa448594ec55ed3303193086e" +SRC_URI[md5sum] = "d78ce30ea068999cd3e0523300b27255" +SRC_URI[sha256sum] = "c9f40f7405b37399ddbf29ca4205b4911ee35cb9ffd9be7671faa2385b1fa573" inherit allarch @@ -24,13 +27,13 @@ do_compile () { do_install () { install -d ${D}${sysconfdir}/default/volatiles - echo "d root root 0755 ${localstatedir}/run/${BPN}/interface none" \ - > ${D}${sysconfdir}/default/volatiles/99_resolvconf + install -m 0644 ${WORKDIR}/99_resolvconf ${D}${sysconfdir}/default/volatiles if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then install -d ${D}${sysconfdir}/tmpfiles.d echo "d /run/${BPN}/interface - - - -" \ > ${D}${sysconfdir}/tmpfiles.d/resolvconf.conf fi + install -d ${D}${base_libdir}/${BPN} install -d ${D}${sysconfdir}/${BPN} ln -snf ${localstatedir}/run/${BPN} ${D}${sysconfdir}/${BPN}/run install -d ${D}${sysconfdir} ${D}${base_sbindir} @@ -38,6 +41,11 @@ do_install () { cp -pPR etc/* ${D}${sysconfdir}/ chown -R root:root ${D}${sysconfdir}/ install -m 0755 bin/resolvconf ${D}${base_sbindir}/ + install -m 0755 bin/list-records ${D}${base_libdir}/${BPN} + install -d ${D}/${sysconfdir}/network/if-up.d + install -m 0755 debian/resolvconf.000resolvconf.if-up ${D}/${sysconfdir}/network/if-up.d/000resolvconf + install -d ${D}/${sysconfdir}/network/if-down.d + install -m 0755 debian/resolvconf.resolvconf.if-down ${D}/${sysconfdir}/network/if-down.d/resolvconf install -m 0644 README ${D}${docdir}/${P}/ install -m 0644 man/resolvconf.8 ${D}${mandir}/man8/ } @@ -51,3 +59,5 @@ pkg_postinst_${PN} () { fi fi } + +FILES_${PN} += "${base_libdir}/${BPN}" diff --git a/meta/recipes-connectivity/socat/socat/socat-1.7.2.4-linux-3.17.patch b/meta/recipes-connectivity/socat/socat/socat-1.7.2.4-linux-3.17.patch new file mode 100644 index 0000000000..9152df533f --- /dev/null +++ b/meta/recipes-connectivity/socat/socat/socat-1.7.2.4-linux-3.17.patch @@ -0,0 +1,29 @@ +socat: fix compile erorr against 3.17+ kernel headers + +With the linux 3.17 kernel socat's configure detects the wrong include for errqueue.h +which results in a compilation error. + +By backporting the gentoo patch from: + + http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-misc/socat/files/socat-1.7.2.4-linux-3.17.patch + +Fixes the build issue + +Upstream-status: backport + +Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> + +--- a/configure.in ++++ b/configure.in +@@ -80,7 +80,10 @@ + AC_CHECK_HEADERS(termios.h linux/if_tun.h) + AC_CHECK_HEADERS(net/if_dl.h) + AC_CHECK_HEADERS(linux/types.h) +-AC_CHECK_HEADER(linux/errqueue.h, AC_DEFINE(HAVE_LINUX_ERRQUEUE_H), [], [#include <linux/types.h>]) ++AC_CHECK_HEADER(linux/errqueue.h, AC_DEFINE(HAVE_LINUX_ERRQUEUE_H), [], [AC_INCLUDES_DEFAULT ++ #if HAVE_LINUX_TYPES_H ++ #include <linux/types.h> ++ #endif]) + AC_CHECK_HEADERS(sys/utsname.h sys/select.h sys/file.h) + AC_CHECK_HEADERS(util.h bsd/libutil.h libutil.h sys/stropts.h regex.h) + AC_CHECK_HEADERS(linux/fs.h linux/ext2_fs.h) diff --git a/meta/recipes-connectivity/socat/socat_1.7.2.4.bb b/meta/recipes-connectivity/socat/socat_1.7.2.4.bb index efa3b91c16..9e43e160e3 100644 --- a/meta/recipes-connectivity/socat/socat_1.7.2.4.bb +++ b/meta/recipes-connectivity/socat/socat_1.7.2.4.bb @@ -14,6 +14,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ SRC_URI = "http://www.dest-unreach.org/socat/download/socat-${PV}.tar.bz2 \ file://fix-cross-compiling-failed.patch \ + file://socat-1.7.2.4-linux-3.17.patch \ " SRC_URI[md5sum] = "69b8155dd442a6f24e28ef5407d868eb" @@ -26,6 +27,7 @@ EXTRA_AUTORECONF += "--exclude=autoheader" EXTRA_OECONF += "ac_cv_have_z_modifier=yes sc_cv_sys_crdly_shift=9 \ sc_cv_sys_tabdly_shift=11 sc_cv_sys_csize_shift=4 \ ac_cv_ispeed_offset=13 \ + ac_cv_header_bsd_libutil_h=no \ " PACKAGECONFIG ??= "tcp-wrappers" diff --git a/meta/recipes-connectivity/telepathy/libtelepathy/doublefix.patch b/meta/recipes-connectivity/telepathy/libtelepathy/doublefix.patch deleted file mode 100644 index a7737fbf03..0000000000 --- a/meta/recipes-connectivity/telepathy/libtelepathy/doublefix.patch +++ /dev/null @@ -1,18 +0,0 @@ -Fix double reference to this file to work with recent autoconf+automake - -RP 1/2/10 - -Upstream-Status: Inappropriate [configuration] - -Index: libtelepathy-0.3.3/src/Makefile.am -=================================================================== ---- libtelepathy-0.3.3.orig/src/Makefile.am 2010-02-01 13:13:50.869038984 +0000 -+++ libtelepathy-0.3.3/src/Makefile.am 2010-02-01 13:14:23.267789456 +0000 -@@ -27,7 +27,6 @@ - tp-chan-type-text-gen.h \ - tp-chan-type-tubes-gen.h \ - tp-conn-iface-aliasing-gen.h \ -- tp-conn-iface-avatars-gen.h \ - tp-conn-iface-capabilities-gen.h \ - tp-conn-iface-contact-info-gen.h \ - tp-conn-iface-forwarding-gen.h \ diff --git a/meta/recipes-connectivity/telepathy/libtelepathy/prefer_python_2.5.patch b/meta/recipes-connectivity/telepathy/libtelepathy/prefer_python_2.5.patch deleted file mode 100644 index 37679ab761..0000000000 --- a/meta/recipes-connectivity/telepathy/libtelepathy/prefer_python_2.5.patch +++ /dev/null @@ -1,15 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - -Index: libtelepathy-0.3.1/configure.ac -=================================================================== ---- libtelepathy-0.3.1.orig/configure.ac 2007-11-22 19:05:56.000000000 +0000 -+++ libtelepathy-0.3.1/configure.ac 2008-01-04 12:07:28.000000000 +0000 -@@ -51,7 +51,7 @@ - AC_MSG_ERROR([xsltproc (from the libxslt source package) is required]) - fi - --AC_CHECK_PROGS([PYTHON], [python2.3 python2.4 python2.5 python]) -+AC_CHECK_PROGS([PYTHON], [python2.5 python2.4 python2.3 python]) - if test -z "$PYTHON"; then - AC_MSG_ERROR([Python is required to compile this package]) - fi diff --git a/meta/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb b/meta/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb deleted file mode 100644 index f13e7093c8..0000000000 --- a/meta/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb +++ /dev/null @@ -1,23 +0,0 @@ -SUMMARY = "Telepathy framework" -DESCRIPTION = "Telepathy is a D-Bus framework for unifying real time \ -communication, including instant messaging, voice calls and video calls. It \ -abstracts differences between protocols to provide a unified interface for \ -applications." -HOMEPAGE = "http://telepathy.freedesktop.org/wiki/" -DEPENDS = "glib-2.0 dbus dbus-glib telepathy-glib libxslt-native" -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://src/tp-conn.c;beginline=1;endline=19;md5=4c58069f77d601cc59200bce5396c7cb" -PR = "r5" - -SRC_URI = "http://telepathy.freedesktop.org/releases/libtelepathy/libtelepathy-${PV}.tar.gz \ - file://prefer_python_2.5.patch \ - file://doublefix.patch" - -SRC_URI[md5sum] = "490ca1a0c614d4466394b72d43bf7370" -SRC_URI[sha256sum] = "e0d230be855125163579743418203c6f6be2f10f98c4f065735c1dc9ed115878" - -inherit autotools pkgconfig pythonnative - -FILES_${PN} += "${datadir}/telepathy \ - ${datadir}/dbus-1" diff --git a/meta/recipes-connectivity/telepathy/telepathy-glib_0.24.0.bb b/meta/recipes-connectivity/telepathy/telepathy-glib_0.24.0.bb deleted file mode 100644 index 6b8c20c381..0000000000 --- a/meta/recipes-connectivity/telepathy/telepathy-glib_0.24.0.bb +++ /dev/null @@ -1,16 +0,0 @@ -SUMMARY = "Telepathy Framework glib-base helper library" -DESCRIPTION = "Telepathy Framework: GLib-based helper library for connection managers" -HOMEPAGE = "http://telepathy.freedesktop.org/wiki/" -DEPENDS = "glib-2.0 dbus python-native-runtime dbus-native dbus-glib libxslt-native" -LICENSE = "LGPLv2.1+" - -SRC_URI = "http://telepathy.freedesktop.org/releases/telepathy-glib/${BP}.tar.gz" -SRC_URI[md5sum] = "93c429e37750b25dcf8de86bb514664f" -SRC_URI[sha256sum] = "ae0002134991217f42e503c43dea7817853afc18863b913744d51ffa029818cf" - -LIC_FILES_CHKSUM = "file://COPYING;md5=e413d83db6ee8f2c8e6055719096a48e" - -inherit autotools pkgconfig gettext - -FILES_${PN} += "${datadir}/telepathy \ - ${datadir}/dbus-1" diff --git a/meta/recipes-connectivity/telepathy/telepathy-idle/fix-svc-gtk-doc.h-target.patch b/meta/recipes-connectivity/telepathy/telepathy-idle/fix-svc-gtk-doc.h-target.patch deleted file mode 100644 index 2cd2c78c31..0000000000 --- a/meta/recipes-connectivity/telepathy/telepathy-idle/fix-svc-gtk-doc.h-target.patch +++ /dev/null @@ -1,15 +0,0 @@ -Upstream-Status: Pending - -Signed-off-by: Constantin Musca <constantinx.musca@intel.com> ---- a/extensions/Makefile.am -+++ b/extensions/Makefile.am -@@ -37,8 +37,8 @@ _gen/all.xml: all.xml $(wildcard $(srcdi - --xinclude $(tools_dir)/identity.xsl \ - $< > $@ - --extensions.html: _gen/all.xml $(tools_dir)/doc-generator.xsl -+extensions.html _gen/svc-gtk-doc.h: _gen/all.xml $(tools_dir)/doc-generator.xsl - $(AM_V_GEN)$(XSLTPROC) $(XSLTPROCFLAGS) \ - $(tools_dir)/doc-generator.xsl \ - $< > $@ - diff --git a/meta/recipes-connectivity/telepathy/telepathy-idle_0.2.0.bb b/meta/recipes-connectivity/telepathy/telepathy-idle_0.2.0.bb deleted file mode 100644 index ca09f6daf3..0000000000 --- a/meta/recipes-connectivity/telepathy/telepathy-idle_0.2.0.bb +++ /dev/null @@ -1,17 +0,0 @@ -SUMMARY = "Telepathy IRC connection manager" -DESCRIPTION = "Telepathy implementation of the Internet Relay Chat protocols." -HOMEPAGE = "http://telepathy.freedesktop.org/wiki/" -DEPENDS = "glib-2.0 dbus telepathy-glib openssl libxslt-native" -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1 \ - file://src/idle.c;beginline=1;endline=19;md5=b06b1e2594423111a1a7910b0eefc7f9" - -SRC_URI = "http://telepathy.freedesktop.org/releases/${BPN}/${BPN}-${PV}.tar.gz \ - file://fix-svc-gtk-doc.h-target.patch" -SRC_URI[md5sum] = "92a2de5198284cbd3c430b0d1a971a86" -SRC_URI[sha256sum] = "3013ad4b38d14ee630b8cc8ada5e95ccaa849b9a6fe15d2eaf6d0717d76f2fab" - -inherit autotools pkgconfig pythonnative - -FILES_${PN} += "${datadir}/telepathy \ - ${datadir}/dbus-1" diff --git a/meta/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch b/meta/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch deleted file mode 100644 index ece1da6bc3..0000000000 --- a/meta/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch +++ /dev/null @@ -1,76 +0,0 @@ -From: Robert Yang <liezhi.yang@windriver.com> -Date: Sun, 22 Sep 2013 23:21:01 -0400 -Subject: [PATCH] src/Makefile.am: fix race issue for _gen/gtypes.h and _gen/gtypes-body.h - -There might be an error when parallel build: - -[snip] -Traceback (most recent call last): - File "/path/to/tools/glib-gtypes-generator.py", line 304, in <module> - GTypesGenerator(dom, argv[1], argv[2])() - File "/path/to/tools/glib-gtypes-generator.py", line 295, in __call__ - file_set_contents(self.output + '.h', ''.join(self.header)) - File "/path/to/tools/libtpcodegen.py", line 42, in file_set_contents - os.rename(filename + '.tmp', filename) -OSError: [Errno 2] No such file or directory -[snip] - -This is a race issue, the _gen/gtypes.h and _gen/gtypes-body.h may -write(remove/rename) _gen/gtypes.tmp at the same time, then there would -be the error. - -There was a similar bug in telepathy-glib which was already fixed, we use the -similar patch to fix it. - -Upstream-Status: Pending - -Signed-off-by: Robert Yang <liezhi.yang@windriver.com> ---- - src/Makefile.am | 18 +++++++++++++++--- - 1 file changed, 15 insertions(+), 3 deletions(-) - -diff --git a/src/Makefile.am b/src/Makefile.am ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -288,7 +288,11 @@ _gen/interfaces-body.h: _gen/mcd.xml \ - $(tools_dir)/glib-interfaces-body-generator.xsl \ - $< > $@ - --_gen/gtypes.h _gen/gtypes-body.h: _gen/mcd.xml \ -+# do nothing, output as a side-effect -+_gen/gtypes.h: _gen/gtypes-body.h -+ @: -+ -+_gen/gtypes-body.h: _gen/mcd.xml \ - $(top_srcdir)/tools/glib-gtypes-generator.py - $(AM_V_GEN)$(PYTHON) $(top_srcdir)/tools/glib-gtypes-generator.py \ - $< _gen/gtypes mc -@@ -309,7 +313,11 @@ _gen/%.xml: %.xml $(wildcard $(top_srcdir)/xml/*.xml) Makefile.am - $(AM_V_GEN)$(XSLTPROC) $(XSLTPROCFLAGS) --xinclude $(tools_dir)/identity.xsl \ - $< > $@ - --_gen/cli-%-body.h _gen/cli-%.h: _gen/%.xml \ -+# do nothing, output as a side-effect -+_gen/cli-%.h: _gen/cli-%-body.h -+ @: -+ -+_gen/cli-%-body.h: _gen/%.xml \ - $(tools_dir)/glib-client-gen.py Makefile.am - $(AM_V_GEN)$(PYTHON) $(tools_dir)/glib-client-gen.py \ - --group=`echo $* | tr x- x_` \ -@@ -317,7 +325,11 @@ _gen/cli-%-body.h _gen/cli-%.h: _gen/%.xml \ - --tp-proxy-api=0.7.6 \ - $< Mc_Cli _gen/cli-$* - --_gen/svc-%.c _gen/svc-%.h: _gen/%.xml \ -+# do nothing, output as a side-effect -+_gen/svc-%.h: _gen/svc-%.c -+ @: -+ -+_gen/svc-%.c: _gen/%.xml \ - $(tools_dir)/glib-ginterface-gen.py Makefile.am - $(AM_V_GEN)$(PYTHON) $(tools_dir)/glib-ginterface-gen.py \ - --filename=_gen/svc-$* \ --- -1.7.10.4 - diff --git a/meta/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb b/meta/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb deleted file mode 100644 index 9ae68ddea9..0000000000 --- a/meta/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb +++ /dev/null @@ -1,51 +0,0 @@ -SUMMARY = "Central control for Telepathy IM connection managers" -HOMEPAGE = "http://telepathy.freedesktop.org/wiki/Mission_Control/" -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499 \ - file://src/request.h;beginline=1;endline=21;md5=f80534d9af1c33291b3b79609f196eb2" -SECTION = "libs" -DEPENDS = "libtelepathy dbus-glib gconf libxslt-native" - -SRC_URI = "http://telepathy.freedesktop.org/releases/telepathy-mission-control/${BP}.tar.gz \ - file://tmc-Makefile-fix-race.patch \ - " -SRC_URI[md5sum] = "421115a35b9e427807326877f86e7f43" -SRC_URI[sha256sum] = "14ceb7d53535b43d44b8271ad11319d1d0fe6d193d154636b9e62b42799b9723" - -inherit autotools-brokensep pkgconfig pythonnative - -PACKAGECONFIG ??= "" -PACKAGECONFIG[upower] = "--enable-upower,--disable-upower,upower" - -# to select connman or nm you need to use "connectivity" and "connman" or "nm", default is to disable both -PACKAGECONFIG[connectivity] = ",--with-connectivity=no" -PACKAGECONFIG[connman] = "--with-connectivity=connman,,connman" -PACKAGECONFIG[nm] = "--with-connectivity=nm,,networkmanager" - -PACKAGES =+ " \ - libmissioncontrol \ - libmissioncontrol-config \ - libmissioncontrol-server \ - libmissioncontrol-dev \ - libmissioncontrol-config-dev \ - libmissioncontrol-server-dev \ - libmissioncontrol-dbg \ - libmissioncontrol-config-dbg \ - libmissioncontrol-server-dbg \ -" - -FILES_${PN} += "${datadir}/dbus* ${datadir}/glib-2.0/schemas" - -FILES_libmissioncontrol = "${libdir}/libmissioncontrol.so.*" -FILES_libmissioncontrol-config = "${libdir}/libmissioncontrol-config.so.*" -FILES_libmissioncontrol-server = "${libdir}/libmissioncontrol-server.so.*" - -FILES_libmissioncontrol-dev = "${libdir}/libmissioncontrol.* \ - ${includedir}/libmissioncontrol/ \ - ${libdir}/pkgconfig/libmissioncontrol.pc" -FILES_libmissioncontrol-config-dev = "${libdir}/libmissioncontrol-config.*" -FILES_libmissioncontrol-server-dev = "${libdir}/libmissioncontrol-server.*" - -FILES_libmissioncontrol-dbg = "${libdir}/.debug/libmissioncontrol.so.*" -FILES_libmissioncontrol-config-dbg = "${libdir}/.debug/libmissioncontrol-config.so.*" -FILES_libmissioncontrol-server-dbg = "${libdir}/.debug/libmissioncontrol-server.so.*" diff --git a/meta/recipes-connectivity/telepathy/telepathy-python-0.15.19/parallel_make.patch b/meta/recipes-connectivity/telepathy/telepathy-python-0.15.19/parallel_make.patch deleted file mode 100644 index 248824606e..0000000000 --- a/meta/recipes-connectivity/telepathy/telepathy-python-0.15.19/parallel_make.patch +++ /dev/null @@ -1,43 +0,0 @@ -Add dependency of __init__.py - -Tasks must be done after exec of __init__, which creates the -src/_generated directory that tasks are based on. - -Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> - -Upstream-Status: Submitted -(However it seems that this project is out of maintanence.) - -diff -ruN telepathy-python-0.15.19-orig/src/Makefile.am telepathy-python-0.15.19/src/Makefile.am ---- telepathy-python-0.15.19-orig/src/Makefile.am 2011-03-10 08:51:49.000000000 +0800 -+++ telepathy-python-0.15.19/src/Makefile.am 2011-03-10 08:54:45.000000000 +0800 -@@ -39,17 +39,17 @@ - XSLTPROC_OPTS = --nonet --novalid --xinclude - tools_dir = $(top_srcdir)/tools - --_generated/interfaces.py: $(tools_dir)/python-interfaces-generator.xsl $(wildcard $(spec_dir)/*.xml) -+_generated/interfaces.py: _generated/__init__.py $(tools_dir)/python-interfaces-generator.xsl $(wildcard $(spec_dir)/*.xml) - $(AM_V_GEN)$(XSLTPROC) $(XSLTPROC_OPTS) -o $@ \ - $(tools_dir)/python-interfaces-generator.xsl \ - $(spec_dir)/all.xml - --_generated/constants.py: $(tools_dir)/python-constants-generator.xsl $(wildcard $(spec_dir)/*.xml) -+_generated/constants.py: _generated/__init__.py $(tools_dir)/python-constants-generator.xsl $(wildcard $(spec_dir)/*.xml) - $(AM_V_GEN)$(XSLTPROC) $(XSLTPROC_OPTS) -o $@ \ - $(tools_dir)/python-constants-generator.xsl \ - $(spec_dir)/all.xml - --_generated/errors.py: $(tools_dir)/python-errors-generator.xsl $(wildcard $(spec_dir)/*.xml) -+_generated/errors.py: _generated/__init__.py $(tools_dir)/python-errors-generator.xsl $(wildcard $(spec_dir)/*.xml) - $(AM_V_GEN)$(XSLTPROC) $(XSLTPROC_OPTS) -o $@ \ - $(tools_dir)/python-errors-generator.xsl \ - $(spec_dir)/all.xml -@@ -58,7 +58,7 @@ - $(AM_V_GEN)$(mkdir_p) $(dir $@) - @echo "# Placeholder for package" > $@ - --_generated/%.py: $(tools_dir)/spec-to-python.xsl $(spec_dir)/%.xml -+_generated/%.py: _generated/__init__.py $(tools_dir)/spec-to-python.xsl $(spec_dir)/%.xml - $(AM_V_GEN)$(XSLTPROC) $(XSLTPROC_OPTS) -o $@ \ - $(tools_dir)/spec-to-python.xsl \ - $(spec_dir)/$*.xml diff --git a/meta/recipes-connectivity/telepathy/telepathy-python-0.15.19/remove_duplicate_install.patch b/meta/recipes-connectivity/telepathy/telepathy-python-0.15.19/remove_duplicate_install.patch deleted file mode 100644 index df95a4c138..0000000000 --- a/meta/recipes-connectivity/telepathy/telepathy-python-0.15.19/remove_duplicate_install.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit f6c67662145de889055a86a6b3b12c70a45fc8d5 -Author: Dongxiao Xu <dongxiao.xu@intel.com> -Date: Wed Sep 7 16:02:20 2011 +0800 - - Avoid duplicated installation of errors.py - - newer version of autotools don't seem to like listing files to install - twice. Remove one errors.py from the installation list. - - Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> - - Upstream-Status: Inappropirate [upstream inactive] - -diff --git a/src/Makefile.am b/src/Makefile.am -index 5c27dfe..7536e43 100644 ---- a/src/Makefile.am -+++ b/src/Makefile.am -@@ -11,7 +11,7 @@ telepathy_PYTHON = \ - - # telepathy._generated.* auto-generated modules - spec_dir = $(top_srcdir)/spec --spec_files := $(patsubst $(spec_dir)%.xml,_generated%.py,$(wildcard $(spec_dir)/*.xml)) -+spec_files := $(filter-out _generated/errors.py, $(patsubst $(spec_dir)%.xml,_generated%.py,$(wildcard $(spec_dir)/*.xml))) - - BUILT_SOURCES = \ - _generated/interfaces.py \ diff --git a/meta/recipes-connectivity/telepathy/telepathy-python-0.15.19/telepathy-python_fix_for_automake_1.12.patch b/meta/recipes-connectivity/telepathy/telepathy-python-0.15.19/telepathy-python_fix_for_automake_1.12.patch deleted file mode 100644 index f613fdce4d..0000000000 --- a/meta/recipes-connectivity/telepathy/telepathy-python-0.15.19/telepathy-python_fix_for_automake_1.12.patch +++ /dev/null @@ -1,26 +0,0 @@ -Upstream-Status: Pending - -automake 1.12 has deprecated use of mkdir_p, and it recommends -use of MKDIR_P instead. Changed the code to avoid these kind -of warning-errors. - -| make[1]: _generated/: Command not found -| make[1]: *** [_generated/__init__.py] Error 127 -| make[1]: Leaving directory `/srv/home/nitin/builds2/build0/tmp/work/i586-poky-linux/telepathy-python-0.15.19-r4/telepathy-python-0.15.19/src' -| make: *** [all-recursive] Error 1 - -Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com> -2012/07/10 -Index: telepathy-python-0.15.19/src/Makefile.am -=================================================================== ---- telepathy-python-0.15.19.orig/src/Makefile.am -+++ telepathy-python-0.15.19/src/Makefile.am -@@ -55,7 +55,7 @@ _generated/errors.py: _generated/__init_ - $(spec_dir)/all.xml - - _generated/__init__.py: -- $(AM_V_GEN)$(mkdir_p) $(dir $@) -+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) - @echo "# Placeholder for package" > $@ - - _generated/%.py: _generated/__init__.py $(tools_dir)/spec-to-python.xsl $(spec_dir)/%.xml diff --git a/meta/recipes-connectivity/telepathy/telepathy-python_0.15.19.bb b/meta/recipes-connectivity/telepathy/telepathy-python_0.15.19.bb deleted file mode 100644 index 17167022b9..0000000000 --- a/meta/recipes-connectivity/telepathy/telepathy-python_0.15.19.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "Telepathy IM framework - Python package" -HOMEPAGE = "http://telepathy.freedesktop.org/wiki/" -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1 \ - file://src/utils.py;beginline=1;endline=17;md5=9a07d1a9791a7429a14e7b25c6c86822" - -DEPENDS = "libxslt-native" -RDEPENDS_${PN} += "python-dbus" - -SRC_URI = "http://telepathy.freedesktop.org/releases/${BPN}/${BPN}-${PV}.tar.gz \ - file://parallel_make.patch \ - file://remove_duplicate_install.patch \ - file://telepathy-python_fix_for_automake_1.12.patch" - -PR = "r6" - -inherit autotools pythonnative - -SRC_URI[md5sum] = "f7ca25ab3c88874015b7e9728f7f3017" -SRC_URI[sha256sum] = "244c0e1bf4bbd78ae298ea659fe10bf3a73738db550156767cc2477aedf72376" - -FILES_${PN} += "\ - ${libdir}/python*/site-packages/telepathy/*.py \ - ${libdir}/python*/site-packages/telepathy/*/*.py \ - " - -do_install_append () { - rm -f ${D}${libdir}/python*/site-packages/telepathy/*.pyc - rm -f ${D}${libdir}/python*/site-packages/telepathy/*.pyo - rm -f ${D}${libdir}/python*/site-packages/telepathy/*/*.pyc - rm -f ${D}${libdir}/python*/site-packages/telepathy/*/*.pyo -} diff --git a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc index d9c6532b5a..6f0de3cab8 100644 --- a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc +++ b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant.inc @@ -6,24 +6,28 @@ LICENSE = "BSD" LIC_FILES_CHKSUM = "file://COPYING;md5=ab87f20cd7e8c0d0a6539b34d3791d0e \ file://README;beginline=1;endline=56;md5=a07250b28e857455336bb59fc31cb845 \ file://wpa_supplicant/wpa_supplicant.c;beginline=1;endline=12;md5=e8e021e30f3a6ab7c341b66b86626a5a" -DEPENDS = "gnutls dbus libnl openssl libgcrypt" +DEPENDS = "dbus libnl libgcrypt" RRECOMMENDS_${PN} = "wpa-supplicant-passphrase wpa-supplicant-cli" +PACKAGECONFIG ??= "gnutls" +PACKAGECONFIG[gnutls] = ",,gnutls" +PACKAGECONFIG[openssl] = ",,openssl" + inherit systemd SYSTEMD_SERVICE_${PN} = "wpa_supplicant.service wpa_supplicant-nl80211@.service wpa_supplicant-wired@.service" SYSTEMD_AUTO_ENABLE = "disable" SRC_URI = "http://hostap.epitest.fi/releases/wpa_supplicant-${PV}.tar.gz \ - file://defconfig-gnutls \ + file://defconfig \ file://wpa-supplicant.sh \ file://wpa_supplicant.conf \ file://wpa_supplicant.conf-sane \ file://99_wpa_supplicant \ file://fix-libnl3-host-contamination.patch \ " -SRC_URI[md5sum] = "238e8e888bbd558e1a57e3eb28d1dd07" -SRC_URI[sha256sum] = "e0d8b8fd68a659636eaba246bb2caacbf53d22d53b2b6b90eb4b4fef0993c8ed" +SRC_URI[md5sum] = "f2ed8fef72cf63d8d446a2d0a6da630a" +SRC_URI[sha256sum] = "eaaa5bf3055270e521b2dff64f2d203ec8040f71958b8588269a82c00c9d7b6a" S = "${WORKDIR}/wpa_supplicant-${PV}" @@ -34,8 +38,22 @@ FILES_${PN} += "${datadir}/dbus-1/system-services/*" CONFFILES_${PN} += "${sysconfdir}/wpa_supplicant.conf" do_configure () { - install -m 0755 ${WORKDIR}/defconfig-gnutls wpa_supplicant/.config + ${MAKE} -C wpa_supplicant clean + install -m 0755 ${WORKDIR}/defconfig wpa_supplicant/.config echo "CFLAGS +=\"-I${STAGING_INCDIR}/libnl3\"" >> wpa_supplicant/.config + echo "DRV_CFLAGS +=\"-I${STAGING_INCDIR}/libnl3\"" >> wpa_supplicant/.config + + if echo "${PACKAGECONFIG}" | grep -qw "openssl"; then + ssl=openssl + elif echo "${PACKAGECONFIG}" | grep -qw "gnutls"; then + ssl=gnutls + fi + if [ -n "$ssl" ]; then + sed -i "s/%ssl%/$ssl/" wpa_supplicant/.config + fi + + # For rebuild + rm -f wpa_supplicant/*.d wpa_supplicant/dbus/*.d } export EXTRA_CFLAGS = "${CFLAGS}" diff --git a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig-gnutls b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig index 92ef8231d5..f04e398fdb 100644 --- a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig-gnutls +++ b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig @@ -453,7 +453,7 @@ CONFIG_CTRL_IFACE_DBUS_NEW=y #LIBS_p += -lbfd -liberty -lz #LIBS_c += -lbfd -liberty -lz -CONFIG_TLS = gnutls +CONFIG_TLS = %ssl% CONFIG_CTRL_IFACE_DBUS=y CONFIG_CTRL_IFACE_DBUS_NEW=y diff --git a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/fix-libnl3-host-contamination.patch b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/fix-libnl3-host-contamination.patch index eb8036f50c..e899c1655d 100644 --- a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/fix-libnl3-host-contamination.patch +++ b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/fix-libnl3-host-contamination.patch @@ -15,15 +15,15 @@ diff --git a/src/drivers/drivers.mak b/src/drivers/drivers.mak index 68ff910..1f38f57 100644 --- a/src/drivers/drivers.mak +++ b/src/drivers/drivers.mak -@@ -30,7 +30,7 @@ NEED_RFKILL=y +@@ -35,7 +35,7 @@ NEED_RFKILL=y ifdef CONFIG_LIBNL32 DRV_LIBS += -lnl-3 DRV_LIBS += -lnl-genl-3 - DRV_CFLAGS += -DCONFIG_LIBNL20 -I/usr/include/libnl3 + DRV_CFLAGS += -DCONFIG_LIBNL20 - else - ifdef CONFIG_LIBNL_TINY - DRV_LIBS += -lnl-tiny + ifdef CONFIG_LIBNL3_ROUTE + DRV_LIBS += -lnl-route-3 + DRV_CFLAGS += -DCONFIG_LIBNL3_ROUTE diff --git a/src/drivers/drivers.mk b/src/drivers/drivers.mk index db8561a..c93e88d 100644 --- a/src/drivers/drivers.mk @@ -34,9 +34,9 @@ index db8561a..c93e88d 100644 DRV_LIBS += -lnl-genl-3 - DRV_CFLAGS += -DCONFIG_LIBNL20 -I/usr/include/libnl3 + DRV_CFLAGS += -DCONFIG_LIBNL20 - else - ifdef CONFIG_LIBNL_TINY - DRV_LIBS += -lnl-tiny + ifdef CONFIG_LIBNL3_ROUTE + DRV_LIBS += -lnl-route-3 + DRV_CFLAGS += -DCONFIG_LIBNL3_ROUTE -- 1.7.10.4 diff --git a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.2.bb b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.3.bb index afd0654016..afd0654016 100644 --- a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.2.bb +++ b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.3.bb |