diff options
Diffstat (limited to 'import-layers/meta-openembedded/meta-networking/recipes-daemons')
63 files changed, 3463 insertions, 174 deletions
diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs/0001-modules-lookup_multi.c-Replace-__S_IEXEC-with-S_IEXE.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs/0001-modules-lookup_multi.c-Replace-__S_IEXEC-with-S_IEXE.patch new file mode 100644 index 000000000..7ac145674 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs/0001-modules-lookup_multi.c-Replace-__S_IEXEC-with-S_IEXE.patch @@ -0,0 +1,29 @@ +From e4ee00e08acd7c0912a3264ad32e4de861c7416f Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 7 Sep 2017 22:22:31 -0700 +Subject: [PATCH] modules/lookup_multi.c: Replace __S_IEXEC with S_IEXEC + +__S_IEXEC is internal to libc and may not be available on +all libc e.g. musl + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + modules/lookup_multi.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules/lookup_multi.c b/modules/lookup_multi.c +index 3ecda6d..cf109de 100644 +--- a/modules/lookup_multi.c ++++ b/modules/lookup_multi.c +@@ -452,7 +452,7 @@ int lookup_reinit(const char *my_mapfmt, + continue; + } + +- if (st.st_mode & __S_IEXEC) ++ if (st.st_mode & S_IEXEC) + type = src_prog; + else + type = src_file; +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs_5.1.2.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs_5.1.2.bb index eea7c4b83..68c64fdb0 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs_5.1.2.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/autofs/autofs_5.1.2.bb @@ -3,7 +3,7 @@ SECTION = "utils" LICENSE = "GPL-2.0" LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" -DEPENDS += "libtirpc flex-native bison-native e2fsprogs openssl libxml2 util-linux cyrus-sasl" +DEPENDS += "libtirpc flex-native bison-native e2fsprogs openssl libxml2 util-linux cyrus-sasl libnsl2" CFLAGS += "-I${STAGING_INCDIR}/tirpc" @@ -26,6 +26,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/daemons/autofs/v5/autofs-${PV}.tar.gz \ file://0002-Replace-__S_IEXEC-with-S_IEXEC.patch \ file://autofs-5.1.2-libtirpc-as-need.patch \ file://pkgconfig-libnsl.patch \ + file://0001-modules-lookup_multi.c-Replace-__S_IEXEC-with-S_IEXE.patch \ " SRC_URI[md5sum] = "28cf88f99eff553a8500659ba5d45a76" SRC_URI[sha256sum] = "0d57e4138c2ec8058ca92164d035546f68ce4af93acb893369993d67c7056a10" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl_2.1.26.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl_2.1.26.bb index 61b7ad47d..eaa453d91 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl_2.1.26.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl_2.1.26.bb @@ -1,5 +1,6 @@ SUMMARY = "Generic client/server library for SASL authentication" SECTION = "libs" +HOMEPAGE = "http://asg.web.cmu.edu/sasl/" DEPENDS = "openssl virtual/db" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://COPYING;md5=3f55e0974e3d6db00ca6f57f2d206396" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb deleted file mode 100644 index 2da29d9cb..000000000 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb +++ /dev/null @@ -1,41 +0,0 @@ -SUMMARY = "A caching, forwarding DNS proxy server" -DESCRIPTION = "\ -dnrd is a proxying nameserver. It forwards DNS queries to the appropriate \ -nameserver, but can also act as the primary nameserver for a subnet behind \ -a firewall. It also has features such as caching DNS requests, support for \ -DNS servers, cache poisoning prevention, TCP support, etc.." -HOMEPAGE = "http://dnrd.sourceforge.net/" -SECTION = "net" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=0be67017f1c770313ad7b40e18d568f1" - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.gz \ - file://dnrd.service \ - file://dnrd.conf.sample \ - file://dnrd.init" -SRC_URI[md5sum] = "41c9b070aae8ed403fc8c2aac7ab157c" -SRC_URI[sha256sum] = "aa46e7f8736b88c1d752cf606b3990041221ce91d014e955c6b02eb2167db015" - -PNBLACKLIST[dnrd] ?= "BROKEN: dnrd-2.20.3-r0 do_package: QA Issue: dnrd: Files/directories were installed but not shipped in any package: - the recipe will be removed on 2017-09-01 unless the issue is fixed" - -SYSTEMD_SERVICE_${PN} = "dnrd.service" -SYSTEMD_AUTO_ENABLE = "disable" - -inherit autotools -inherit ${@bb.utils.filter('VIRTUAL-RUNTIME_init_manager', 'systemd', d)} - -do_install() { - oe_runmake install DESTDIR=${D} INSTALL="install -p" - - sed -i -e 's:/etc/rc.d/init.d/functions:/etc/init.d/functions:g' \ - ${WORKDIR}/dnrd.init - install -d -m 0755 ${D}${sysconfdir}/init.d - install -d -m 0755 ${D}${sysconfdir}/dnrd - install -p -m 0644 ${WORKDIR}/dnrd.conf.sample ${D}${sysconfdir}/dnrd/dnrd.conf - install -p -m 0755 ${WORKDIR}/dnrd.init ${D}${sysconfdir}/init.d/dnrd - - if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then - install -d -m 0755 ${D}${systemd_unitdir}/system - install -m 644 ${WORKDIR}/dnrd.service ${D}${systemd_unitdir}/system - fi -} diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/igmpproxy/igmpproxy/0001-src-igmpproxy.h-Include-sys-types.h-for-u_short-u_in.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/igmpproxy/igmpproxy/0001-src-igmpproxy.h-Include-sys-types.h-for-u_short-u_in.patch new file mode 100644 index 000000000..82cdc36ac --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/igmpproxy/igmpproxy/0001-src-igmpproxy.h-Include-sys-types.h-for-u_short-u_in.patch @@ -0,0 +1,25 @@ +From a557651a08e21e3c7c7f5eca9f5405f86624903f Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 14 Jul 2017 22:42:51 -0700 +Subject: [PATCH] src/igmpproxy.h: Include sys/types.h for u_short/u_init + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/igmpproxy.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/igmpproxy.h b/src/igmpproxy.h +index 4dabd1c..4454729 100644 +--- a/src/igmpproxy.h ++++ b/src/igmpproxy.h +@@ -46,6 +46,7 @@ + #include <stdbool.h> + + #include <sys/socket.h> ++#include <sys/types.h> + #include <sys/un.h> + #include <sys/time.h> + #include <sys/ioctl.h> +-- +2.13.3 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/igmpproxy/igmpproxy_0.1.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/igmpproxy/igmpproxy_0.1.bb index c3d2f1afa..5424dc455 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/igmpproxy/igmpproxy_0.1.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/igmpproxy/igmpproxy_0.1.bb @@ -5,9 +5,12 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=1e995e2799bb0d27d63069b97f805420" SRC_URI = "http://sourceforge.net/projects/igmpproxy/files/${BPN}/${PV}/${BPN}-${PV}.tar.gz \ - " + file://0001-src-igmpproxy.h-Include-sys-types.h-for-u_short-u_in.patch \ + " SRC_URI[md5sum] = "c56f41ec195bc1fe016369bf74efc5a1" SRC_URI[sha256sum] = "ee18ff3d8c3ae3a29dccb7e5eedf332337330020168bd95a11cece8d7d7ee6ae" inherit autotools pkgconfig + +CFLAGS += "-D_GNU_SOURCE" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0001-Respect-flags-from-env.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0001-Respect-flags-from-env.patch new file mode 100644 index 000000000..e96762125 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0001-Respect-flags-from-env.patch @@ -0,0 +1,56 @@ +From 4848b9e4d516a9203c08432901a7b40419e8f43c Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 19 Jul 2017 15:54:35 -0700 +Subject: [PATCH 1/3] Respect flags from env + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + Makefile | 4 ++-- + cli/Makefile | 2 +- + pppd/Makefile | 2 +- + 3 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/Makefile b/Makefile +index a05a000..439a978 100644 +--- a/Makefile ++++ b/Makefile +@@ -81,8 +81,8 @@ LIBS.dmalloc= -ldmalloc + export USE_DMALLOC + endif + +-CPPFLAGS= $(CPPFLAGS.ippooltest) +-CFLAGS= -I. -Iusl -Icli -MMD -Wall -g $(CPPFLAGS) $(CPPFLAGS.dmalloc) ++CPPFLAGS+= $(CPPFLAGS.ippooltest) ++CFLAGS+= -I. -Iusl -Icli -MMD -Wall -g $(CPPFLAGS) $(CPPFLAGS.dmalloc) + LDFLAGS.ippoold= $(LDFLAGS) -Wl,-E -L. -Lusl -lusl -lnsl -ldl $(LIBS.dmalloc) -lc + LDFLAGS.ippoolconfig= $(LDFLAGS) -Lcli -lcli -lreadline -lcurses -lnsl $(LIBS.dmalloc) -lc + +diff --git a/cli/Makefile b/cli/Makefile +index 4b5dd59..56fbf2f 100644 +--- a/cli/Makefile ++++ b/cli/Makefile +@@ -7,7 +7,7 @@ CLI_SRCS_TEST.o= $(CLI_SRCS_TEST.c:%.c=%.o) + + LDFLAGS.cli_test= -L.. -L. $(READLINE_LDFLAGS) -lcli -lusl -lreadline -lcurses -lc + +-CFLAGS= $(CFLAGS.optimize) -MMD -Wall -Werror -I.. $(READLINE_CFLAGS) ++CFLAGS= $(CFLAGS.optimize) -MMD -Wall -Werror -I.. $(READLINE_CFLAGS) $(CPPFLAGS) + + .PHONY: all test clean + +diff --git a/pppd/Makefile b/pppd/Makefile +index 106deca..7fd815f 100644 +--- a/pppd/Makefile ++++ b/pppd/Makefile +@@ -10,7 +10,7 @@ endif + + # END CONFIGURABLE SETTINGS + +-CFLAGS += -g -I.. -I/usr/include/pppd $(CFLAGS.pppd) -fPIC ++CFLAGS += -g -I.. -I=/usr/include/pppd $(CFLAGS.pppd) -fPIC + LDFLAGS += -shared + + all: ippool.so +-- +2.13.3 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0001-read-returns-ssize_t.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0001-read-returns-ssize_t.patch new file mode 100644 index 000000000..7d3f9acb6 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0001-read-returns-ssize_t.patch @@ -0,0 +1,31 @@ +From e4e0aae139b6489dc582fd14e54e562126482ce2 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 26 Aug 2017 07:23:53 -0700 +Subject: [PATCH 1/3] read() returns ssize_t + +Fixes +usl_fd.c:284:10: error: comparison of unsigned expression < 0 is always false [-Werror,-Wtautological-compare] + if (nb < 0) { + ~~ ^ ~ + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + usl/usl_fd.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/usl/usl_fd.c b/usl/usl_fd.c +index 3b7a813..04ba48c 100644 +--- a/usl/usl_fd.c ++++ b/usl/usl_fd.c +@@ -280,7 +280,7 @@ size_t usl_fd_read(int fd, void *buf, size_t count) + char *ptr = buf; + + for (chars_read = 0; chars_read < count; ) { +- size_t nb = read(fd, ptr, count - chars_read); ++ ssize_t nb = read(fd, ptr, count - chars_read); + if (nb < 0) { + if (errno == EINTR) + continue; +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0001-usl_timer-Check-for-return-value-of-write-API.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0001-usl_timer-Check-for-return-value-of-write-API.patch new file mode 100644 index 000000000..6fb7cc5c4 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0001-usl_timer-Check-for-return-value-of-write-API.patch @@ -0,0 +1,28 @@ +From 5d7f20c045b3c74dad2c53d65e30bd4840250082 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 27 Jun 2017 15:17:19 -0700 +Subject: [PATCH] usl_timer: Check for return value of write() API + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + usl/usl_timer.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/usl/usl_timer.c b/usl/usl_timer.c +index fda752b..d8414a6 100644 +--- a/usl/usl_timer.c ++++ b/usl/usl_timer.c +@@ -94,7 +94,9 @@ void usl_timer_tick(void) + + if (!usl_tick_pending) { + usl_tick_pending = 1; +- write(usl_tick_pipe[1], &msg, sizeof(msg)); ++ if (write(usl_tick_pipe[1], &msg, sizeof(msg)) != sizeof(msg)) { ++ fprintf(stderr, "write to fd %i failed: %s\n", usl_tick_pipe[1], strerror(errno)); ++ } + } + } + +-- +2.13.2 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0002-Mark-first-element-of-a-string-as-null.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0002-Mark-first-element-of-a-string-as-null.patch new file mode 100644 index 000000000..6e2bd523d --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0002-Mark-first-element-of-a-string-as-null.patch @@ -0,0 +1,31 @@ +From cf25576428903168cd41b183fb1ca9c2b7e2666e Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 26 Aug 2017 07:28:10 -0700 +Subject: [PATCH 2/3] Mark first element of a string as null + +Fixes +cli_lib.c:427:20: error: expression which evaluates to zero treated as a null pointer constant of type 'char *' [-Werror,-Wnon-literal-null-conversion] + values[arg] = '\0'; + ^~~~ + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + cli/cli_lib.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/cli/cli_lib.c b/cli/cli_lib.c +index 41a0b06..e4d2fd5 100644 +--- a/cli/cli_lib.c ++++ b/cli/cli_lib.c +@@ -424,7 +424,7 @@ int cli_find_args(int argc, char *argv[], struct cli_node *cmd, struct cli_node + if (arg_string[1] == '\0') { + /* no arg value - only allowed for string args */ + if (node->arg->parser == cli_arg_parse_string) { +- values[arg] = '\0'; ++ *values[arg] = '\0'; + } else { + result = -EINVAL; + break; +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0002-link-with-libtirpc.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0002-link-with-libtirpc.patch new file mode 100644 index 000000000..d80f7b436 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0002-link-with-libtirpc.patch @@ -0,0 +1,30 @@ +From 47aef26198431f7ad568c2277dded158bda3e36f Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 19 Jul 2017 16:00:35 -0700 +Subject: [PATCH 2/3] link with libtirpc + +musl needs it + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Makefile b/Makefile +index 439a978..ea821eb 100644 +--- a/Makefile ++++ b/Makefile +@@ -83,8 +83,8 @@ endif + + CPPFLAGS+= $(CPPFLAGS.ippooltest) + CFLAGS+= -I. -Iusl -Icli -MMD -Wall -g $(CPPFLAGS) $(CPPFLAGS.dmalloc) +-LDFLAGS.ippoold= $(LDFLAGS) -Wl,-E -L. -Lusl -lusl -lnsl -ldl $(LIBS.dmalloc) -lc +-LDFLAGS.ippoolconfig= $(LDFLAGS) -Lcli -lcli -lreadline -lcurses -lnsl $(LIBS.dmalloc) -lc ++LDFLAGS.ippoold= $(LDFLAGS) -Wl,-E -L. -Lusl -lusl -ldl $(LIBS.dmalloc) -lc -ltirpc ++LDFLAGS.ippoolconfig= $(LDFLAGS) -Lcli -lcli -lreadline -lcurses $(LIBS.dmalloc) -lc -ltirpc + + OPT_CFLAGS?= -O + +-- +2.13.3 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0003-cli-Mark-return-of-strtol-as-long-int.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0003-cli-Mark-return-of-strtol-as-long-int.patch new file mode 100644 index 000000000..3854b1133 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0003-cli-Mark-return-of-strtol-as-long-int.patch @@ -0,0 +1,58 @@ +From 994d9575374d3cdb34b1b0f70c3c53ae76fe578e Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 26 Aug 2017 07:41:05 -0700 +Subject: [PATCH 3/3] cli: Mark return of strtol as long int + +strtol does not return unsigned long + +error: taking the absolute value of unsigned type 'unsigned long' has no effect [-Werror,-Wabsolute-value] + if ((*endp == '\0') && (labs(tmp) < 32768)) { + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + cli/cli_lib.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/cli/cli_lib.c b/cli/cli_lib.c +index e4d2fd5..5f487dc 100644 +--- a/cli/cli_lib.c ++++ b/cli/cli_lib.c +@@ -522,7 +522,7 @@ int cli_arg_parse_int32(struct cli_node *arg, const char *val, void *result) + int cli_arg_parse_int16(struct cli_node *arg, const char *val, void *result) + { + int16_t *intval = result; +- unsigned long tmp; ++ long tmp; + char *endp; + int ret = 0; + +@@ -539,7 +539,7 @@ int cli_arg_parse_int16(struct cli_node *arg, const char *val, void *result) + int cli_arg_parse_int8(struct cli_node *arg, const char *val, void *result) + { + int8_t *intval = result; +- unsigned long tmp; ++ long tmp; + char *endp; + int ret = 0; + +@@ -573,7 +573,7 @@ int cli_arg_parse_uint32(struct cli_node *arg, const char *val, void *result) + int cli_arg_parse_uint16(struct cli_node *arg, const char *val, void *result) + { + uint16_t *intval = result; +- unsigned long tmp; ++ long tmp; + char *endp; + int ret = 0; + +@@ -590,7 +590,7 @@ int cli_arg_parse_uint16(struct cli_node *arg, const char *val, void *result) + int cli_arg_parse_uint8(struct cli_node *arg, const char *val, void *result) + { + uint8_t *intval = result; +- unsigned long tmp; ++ long tmp; + char *endp; + int ret = 0; + +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0003-musl-fixes.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0003-musl-fixes.patch new file mode 100644 index 000000000..3cd5259fa --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/0003-musl-fixes.patch @@ -0,0 +1,283 @@ +From eb345047decba665e3f39908336a83f039e1ece2 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 19 Jul 2017 16:01:32 -0700 +Subject: [PATCH 3/3] musl fixes + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + cli/cli_readline.c | 7 +- + ippool_api.c | 9 ++- + net/ppp_defs.h | 194 +++++++++++++++++++++++++++++++++++++++++++++++++++++ + usl/usl.h | 4 ++ + 4 files changed, 208 insertions(+), 6 deletions(-) + create mode 100644 net/ppp_defs.h + +diff --git a/cli/cli_readline.c b/cli/cli_readline.c +index 2812e6e..542935c 100644 +--- a/cli/cli_readline.c ++++ b/cli/cli_readline.c +@@ -17,13 +17,14 @@ + * Boston, MA 02110-1301 USA + * + *****************************************************************************/ +- ++#define _GNU_SOURCE + #include <stdio.h> + #include <unistd.h> + #include <sys/types.h> + #include <sys/file.h> + #include <sys/stat.h> +-#include <sys/errno.h> ++#include <fcntl.h> ++#include <errno.h> + #include <signal.h> + + #include <readline/readline.h> +@@ -630,7 +631,7 @@ static void cli_rl_uninstall_signal_handlers(void) + + static int cli_rl_install_signal_handlers(void) + { +- __sighandler_t handler; ++ sighandler_t handler; + + rl_catch_signals = 0; + rl_clear_signals(); +diff --git a/ippool_api.c b/ippool_api.c +index 2c10c47..d1127a9 100644 +--- a/ippool_api.c ++++ b/ippool_api.c +@@ -181,10 +181,13 @@ int ippool_api_rpc_check_request(SVCXPRT *xprt) + * non-loopback interface, reject the request. + */ + if ((!ippool_opt_remote_rpc) && +- ((xprt->xp_raddr.sin_addr.s_addr != htonl(INADDR_LOOPBACK)) && +- (xprt->xp_raddr.sin_addr.s_addr != htonl(INADDR_ANY)))) { ++ ((xprt->xp_raddr.sin6_addr.s6_addr != htonl(INADDR_LOOPBACK)) && ++ (xprt->xp_raddr.sin6_addr.s6_addr != htonl(INADDR_ANY)))) { ++ char straddr[INET6_ADDRSTRLEN]; ++ inet_ntop(AF_INET6, &xprt->xp_raddr.sin6_addr, straddr, sizeof(straddr)); ++ + if (ippool_opt_debug) { +- ippool_log(LOG_ERR, "Rejecting RPC request from %s", inet_ntoa(xprt->xp_raddr.sin_addr)); ++ ippool_log(LOG_ERR, "Rejecting RPC request from %s", straddr); + } + svcerr_auth(xprt, AUTH_TOOWEAK); + return -EPERM; +diff --git a/net/ppp_defs.h b/net/ppp_defs.h +new file mode 100644 +index 0000000..b06eda5 +--- /dev/null ++++ b/net/ppp_defs.h +@@ -0,0 +1,194 @@ ++/* $Id: ppp_defs.h,v 1.17 2002/12/06 09:49:15 paulus Exp $ */ ++ ++/* ++ * ppp_defs.h - PPP definitions. ++ * ++ * Copyright (c) 1984 Paul Mackerras. All rights reserved. ++ * ++ * Redistribution and use in source and binary forms, with or without ++ * modification, are permitted provided that the following conditions ++ * are met: ++ * ++ * 1. Redistributions of source code must retain the above copyright ++ * notice, this list of conditions and the following disclaimer. ++ * ++ * 2. Redistributions in binary form must reproduce the above copyright ++ * notice, this list of conditions and the following disclaimer in ++ * the documentation and/or other materials provided with the ++ * distribution. ++ * ++ * 3. The name(s) of the authors of this software must not be used to ++ * endorse or promote products derived from this software without ++ * prior written permission. ++ * ++ * 4. Redistributions of any form whatsoever must retain the following ++ * acknowledgment: ++ * "This product includes software developed by Paul Mackerras ++ * <paulus@samba.org>". ++ * ++ * THE AUTHORS OF THIS SOFTWARE DISCLAIM ALL WARRANTIES WITH REGARD TO ++ * THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ++ * AND FITNESS, IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY ++ * SPECIAL, 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. ++ */ ++ ++#ifndef _PPP_DEFS_H_ ++#define _PPP_DEFS_H_ ++ ++/* ++ * The basic PPP frame. ++ */ ++#define PPP_HDRLEN 4 /* octets for standard ppp header */ ++#define PPP_FCSLEN 2 /* octets for FCS */ ++ ++/* ++ * Packet sizes ++ * ++ * Note - lcp shouldn't be allowed to negotiate stuff outside these ++ * limits. See lcp.h in the pppd directory. ++ * (XXX - these constants should simply be shared by lcp.c instead ++ * of living in lcp.h) ++ */ ++#define PPP_MTU 1500 /* Default MTU (size of Info field) */ ++#define PPP_MAXMTU 65535 - (PPP_HDRLEN + PPP_FCSLEN) ++#define PPP_MINMTU 64 ++#define PPP_MRU 1500 /* default MRU = max length of info field */ ++#define PPP_MAXMRU 65000 /* Largest MRU we allow */ ++#define PPP_MINMRU 128 ++ ++#define PPP_ADDRESS(p) (((u_char *)(p))[0]) ++#define PPP_CONTROL(p) (((u_char *)(p))[1]) ++#define PPP_PROTOCOL(p) ((((u_char *)(p))[2] << 8) + ((u_char *)(p))[3]) ++ ++/* ++ * Significant octet values. ++ */ ++#define PPP_ALLSTATIONS 0xff /* All-Stations broadcast address */ ++#define PPP_UI 0x03 /* Unnumbered Information */ ++#define PPP_FLAG 0x7e /* Flag Sequence */ ++#define PPP_ESCAPE 0x7d /* Asynchronous Control Escape */ ++#define PPP_TRANS 0x20 /* Asynchronous transparency modifier */ ++ ++/* ++ * Protocol field values. ++ */ ++#define PPP_IP 0x21 /* Internet Protocol */ ++#define PPP_AT 0x29 /* AppleTalk Protocol */ ++#define PPP_IPX 0x2b /* IPX protocol */ ++#define PPP_VJC_COMP 0x2d /* VJ compressed TCP */ ++#define PPP_VJC_UNCOMP 0x2f /* VJ uncompressed TCP */ ++#define PPP_IPV6 0x57 /* Internet Protocol Version 6 */ ++#define PPP_COMP 0xfd /* compressed packet */ ++#define PPP_IPCP 0x8021 /* IP Control Protocol */ ++#define PPP_ATCP 0x8029 /* AppleTalk Control Protocol */ ++#define PPP_IPXCP 0x802b /* IPX Control Protocol */ ++#define PPP_IPV6CP 0x8057 /* IPv6 Control Protocol */ ++#define PPP_CCP 0x80fd /* Compression Control Protocol */ ++#define PPP_ECP 0x8053 /* Encryption Control Protocol */ ++#define PPP_LCP 0xc021 /* Link Control Protocol */ ++#define PPP_PAP 0xc023 /* Password Authentication Protocol */ ++#define PPP_LQR 0xc025 /* Link Quality Report protocol */ ++#define PPP_CHAP 0xc223 /* Cryptographic Handshake Auth. Protocol */ ++#define PPP_CBCP 0xc029 /* Callback Control Protocol */ ++#define PPP_EAP 0xc227 /* Extensible Authentication Protocol */ ++ ++/* ++ * Values for FCS calculations. ++ */ ++#define PPP_INITFCS 0xffff /* Initial FCS value */ ++#define PPP_GOODFCS 0xf0b8 /* Good final FCS value */ ++#define PPP_FCS(fcs, c) (((fcs) >> 8) ^ fcstab[((fcs) ^ (c)) & 0xff]) ++ ++/* ++ * A 32-bit unsigned integral type. ++ */ ++ ++#if !defined(__BIT_TYPES_DEFINED__) && !defined(_BITYPES) \ ++ && !defined(__FreeBSD__) && (NS_TARGET < 40) ++#ifdef UINT32_T ++typedef UINT32_T u_int32_t; ++#else ++typedef unsigned int u_int32_t; ++typedef unsigned short u_int16_t; ++#endif ++#endif ++ ++/* ++ * Extended asyncmap - allows any character to be escaped. ++ */ ++typedef u_int32_t ext_accm[8]; ++ ++/* ++ * What to do with network protocol (NP) packets. ++ */ ++enum NPmode { ++ NPMODE_PASS, /* pass the packet through */ ++ NPMODE_DROP, /* silently drop the packet */ ++ NPMODE_ERROR, /* return an error */ ++ NPMODE_QUEUE /* save it up for later. */ ++}; ++ ++/* ++ * Statistics. ++ */ ++struct pppstat { ++ unsigned int ppp_ibytes; /* bytes received */ ++ unsigned int ppp_ipackets; /* packets received */ ++ unsigned int ppp_ierrors; /* receive errors */ ++ unsigned int ppp_obytes; /* bytes sent */ ++ unsigned int ppp_opackets; /* packets sent */ ++ unsigned int ppp_oerrors; /* transmit errors */ ++}; ++ ++struct vjstat { ++ unsigned int vjs_packets; /* outbound packets */ ++ unsigned int vjs_compressed; /* outbound compressed packets */ ++ unsigned int vjs_searches; /* searches for connection state */ ++ unsigned int vjs_misses; /* times couldn't find conn. state */ ++ unsigned int vjs_uncompressedin; /* inbound uncompressed packets */ ++ unsigned int vjs_compressedin; /* inbound compressed packets */ ++ unsigned int vjs_errorin; /* inbound unknown type packets */ ++ unsigned int vjs_tossed; /* inbound packets tossed because of error */ ++}; ++ ++struct ppp_stats { ++ struct pppstat p; /* basic PPP statistics */ ++ struct vjstat vj; /* VJ header compression statistics */ ++}; ++ ++struct compstat { ++ unsigned int unc_bytes; /* total uncompressed bytes */ ++ unsigned int unc_packets; /* total uncompressed packets */ ++ unsigned int comp_bytes; /* compressed bytes */ ++ unsigned int comp_packets; /* compressed packets */ ++ unsigned int inc_bytes; /* incompressible bytes */ ++ unsigned int inc_packets; /* incompressible packets */ ++ unsigned int ratio; /* recent compression ratio << 8 */ ++}; ++ ++struct ppp_comp_stats { ++ struct compstat c; /* packet compression statistics */ ++ struct compstat d; /* packet decompression statistics */ ++}; ++ ++/* ++ * The following structure records the time in seconds since ++ * the last NP packet was sent or received. ++ */ ++struct ppp_idle { ++ time_t xmit_idle; /* time since last NP packet sent */ ++ time_t recv_idle; /* time since last NP packet received */ ++}; ++ ++#ifndef __P ++#ifdef __STDC__ ++#define __P(x) x ++#else ++#define __P(x) () ++#endif ++#endif ++ ++#endif /* _PPP_DEFS_H_ */ +diff --git a/usl/usl.h b/usl/usl.h +index cdc16db..88d2714 100644 +--- a/usl/usl.h ++++ b/usl/usl.h +@@ -38,6 +38,10 @@ + #include "usl_fsm.h" + #include "usl_list.h" + ++#ifndef WAIT_ANY ++#define WAIT_ANY (-1) ++#endif ++ + #define USL_VERSION "0.6" + + #ifdef DEBUG +-- +2.13.3 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/always_syslog.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/always_syslog.patch new file mode 100644 index 000000000..e475276c0 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/always_syslog.patch @@ -0,0 +1,22 @@ +ippool: always log to syslog + +Even when running in the foreground, send log messages to syslog. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Joe Slater <jslater@windriver.com> + + +--- a/ippool_main.c ++++ b/ippool_main.c +@@ -251,9 +251,8 @@ void ippool_vlog(int level, const char * + if (ippool_opt_nodaemon) { + vprintf(fmt, ap); + printf("\n"); +- } else { +- vsyslog(level, fmt, ap); + } ++ vsyslog(level, fmt, ap); + DMALLOC_VMESSAGE(fmt, ap); + } + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool.service b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool.service new file mode 100644 index 000000000..e5917fc14 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool.service @@ -0,0 +1,19 @@ +[Unit] +Description=ip address pool allocator +Requires=rpcbind.service +After=rpcbind.service + +[Service] +Type=simple +# Start ippoold in the foreground! +ExecStart=@SBINDIR@/ippoold -f +# Normal output will go to syslog, so suppress stdout. +StandardOutput=null +StandardError=syslog +# ExecStop is not needed. systemd will send SIGTERM +# and ippoold will exit status 1. +SuccessExitStatus=1 + +[Install] +WantedBy=multi-user.target + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool_init.d.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool_init.d.patch new file mode 100644 index 000000000..14a768d0f --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool_init.d.patch @@ -0,0 +1,65 @@ +Fix start error if lsb init-functions doesn't exist + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> + +diff --git a/debian/init.d b/debian/init.d +index 363ba89..0327fec 100644 +--- a/debian/init.d ++++ b/debian/init.d +@@ -10,6 +10,9 @@ + # Description: Start ippool daemon + ### END INIT INFO + ++# Source function library. ++. /etc/init.d/functions ++ + DAEMON=/usr/sbin/ippoold + NAME=ippoold + MODULE=pppol2tp +@@ -18,7 +21,23 @@ MODULE=pppol2tp + test -x $DAEMON || exit 0 + + # Get lsb functions +-. /lib/lsb/init-functions ++if [ -f /lib/lsb/init-functions ] ++then ++ . /lib/lsb/init-functions ++else ++ log_begin_msg() { ++ echo -n $* ++ } ++ ++ log_end_msg() { ++ if [ $1 -eq 0 ]; then ++ echo "done" ++ else ++ echo "failed" ++ fi ++ } ++fi ++ + . /etc/default/rcS + + case "$1" in +@@ -35,6 +54,10 @@ case "$1" in + fi + log_end_msg $? + ;; ++ status) ++ status /usr/sbin/ippoold; ++ exit $? ++ ;; + restart) + $0 stop + sleep 1 +@@ -46,7 +69,7 @@ case "$1" in + log_end_msg $? + ;; + *) +- log_success_msg "Usage: /etc/init.d/ippoold {start|stop|restart|reload|force-reload}" ++ log_success_msg "Usage: /etc/init.d/ippoold {start|stop|status|restart|reload|force-reload}" + exit 1 + esac + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool_parallel_make_and_pic.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool_parallel_make_and_pic.patch new file mode 100644 index 000000000..1ebd95ea1 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool_parallel_make_and_pic.patch @@ -0,0 +1,89 @@ +1)add -fPIC for $(IPPOOL_RPC_STEM)_xdr.o, $(IPPOOL_RPC_STEM)_client.o +2)add sub target for subdirs-all, and those dependencies below + pppd plugin directory build depends on $(IPPOOL_RPC_STEM)_xdr.o +$(IPPOOL_RPC_STEM)_client.o ippool_rpc.h + + ippoold depends on libusl + ippoolconfig depends on libcli + + $(IPPOOL_RPC_STEM)_xdr.o, $(IPPOOL_RPC_STEM)_client.o +$(IPPOOL_RPC_STEM)_server.o *.o in main directory depends on ippool_rpc.h +as those all directly or indirectly include ippool_rpc.h which is +dynamically generated by rpcgen + +to make parallel make working. +3)include dependency files for pppd. + +Upstream-Status: Pending + +Signed-off-by: Yao Zhao <yao.zhao@windriver.com> +--- +diff --git a/Makefile b/Makefile +index 73aa72f..4f7af1d 100644 +--- a/Makefile ++++ b/Makefile +@@ -106,14 +106,14 @@ all: generated-files $(IPPOOL_RPC_STEM)_xdr.o $(IPPOOL_RPC_STEM)_client.o \ + subdirs-all $(PROGS.sbin) $(PROGS.bin) + + # Compile without -Wall because rpcgen-generated code is full of warnings +-$(IPPOOL_RPC_STEM)_xdr.o: $(IPPOOL_RPC_STEM)_xdr.c +- $(CC) -I. -MMD -g -c -w $(CPPFLAGS) $(CFLAGS.optimize) $< ++$(IPPOOL_RPC_STEM)_xdr.o: $(IPPOOL_RPC_STEM)_xdr.c $(IPPOOL_RPC_STEM).h ++ $(CC) -I. -MMD -g -c -w $(CPPFLAGS) $(CFLAGS.optimize) $< -fPIC + +-$(IPPOOL_RPC_STEM)_client.o: $(IPPOOL_RPC_STEM)_client.c +- $(CC) -I. -MMD -g -c -w $(CPPFLAGS) $(CFLAGS.optimize) $< ++$(IPPOOL_RPC_STEM)_client.o: $(IPPOOL_RPC_STEM)_client.c $(IPPOOL_RPC_STEM).h ++ $(CC) -I. -MMD -g -c -w $(CPPFLAGS) $(CFLAGS.optimize) $< -fPIC + +-$(IPPOOL_RPC_STEM)_server.o: $(IPPOOL_RPC_STEM)_server.c +- $(CC) -I. -MMD -g -c -w $(CPPFLAGS) $(CFLAGS.optimize) $< ++$(IPPOOL_RPC_STEM)_server.o: $(IPPOOL_RPC_STEM)_server.c $(IPPOOL_RPC_STEM).h ++ $(CC) -I. -MMD -g -c -w $(CPPFLAGS) $(CFLAGS.optimize) $< -fPIC + + $(IPPOOL_RPC_STEM)_xdr.c: $(IPPOOL_RPC_STEM).x + -$(RM) $@ +@@ -136,8 +136,12 @@ $(IPPOOL_RPC_STEM).h: $(IPPOOL_RPC_STEM).x + + generated-files: $(RPC_FILES) + +-subdirs-all: +- @for d in $(SUBDIRS); do $(MAKE) -C $$d $(MFLAGS) EXTRA_CFLAGS="$(CPPFLAGS)" all; if [ $$? -ne 0 ]; then exit 1; fi; done ++subdirs-all: $(patsubst %,%-dir, $(SUBDIRS)) ++ ++pppd-dir: $(IPPOOL_RPC_STEM)_xdr.o $(IPPOOL_RPC_STEM)_client.o $(IPPOOL_RPC_STEM).h ++ ++$(patsubst %,%-dir,$(SUBDIRS)): ++ @for d in $(patsubst %-dir,%,$@); do $(MAKE) -C $$d $(MFLAGS) EXTRA_CFLAGS="$(CPPFLAGS)" all; if [ $$? -ne 0 ]; then exit 1; fi; done + + clean: + @for d in $(SUBDIRS); do $(MAKE) -C $$d $(MFLAGS) $@; if [ $$? -ne 0 ]; then exit 1; fi; done +@@ -151,13 +155,13 @@ TAGS: + @for d in $(SUBDIRS); do $(MAKE) -C $$d $(MFLAGS) $@; done + etags -t $(wildcard *.c) $(wildcard *.h) + +-ippoold: $(IPPOOLD_SRCS.o) +- $(CC) -o $@ $^ $(LDFLAGS.ippoold) ++ippoold: $(IPPOOLD_SRCS.o) usl-dir ++ $(CC) -o $@ $(IPPOOLD_SRCS.o) $(LDFLAGS.ippoold) + +-ippoolconfig: $(IPPOOLCONFIG_SRCS.o) +- $(CC) -o $@ $^ $(LDFLAGS.ippoolconfig) ++ippoolconfig: $(IPPOOLCONFIG_SRCS.o) cli-dir ++ $(CC) -o $@ $(IPPOOLCONFIG_SRCS.o) $(LDFLAGS.ippoolconfig) + +-%.o: %.c ++%.o: %.c $(IPPOOL_RPC_STEM).h + $(CC) -c $(CFLAGS) $< -o $@ + + install: all +diff --git a/pppd/Makefile b/pppd/Makefile +index 78d9b33..106deca 100644 +--- a/pppd/Makefile ++++ b/pppd/Makefile +@@ -24,3 +24,5 @@ install: ippool.so + + clean: + -rm -rf *.o *.so ++ ++include $(wildcard *.d /dev/null) diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool_usl_timer.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool_usl_timer.patch new file mode 100644 index 000000000..ca0e3320c --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/ippool_usl_timer.patch @@ -0,0 +1,49 @@ +include limits.h to avoid UINT_MAX undefined compiling error. +remove the unused assign which caused compiling error with -Werror. + +Upstream-Status: Pending + +Signed-off-by: Yao Zhao <yao.zhao@windriver.com> +--- + +diff --git a/usl/usl_timer.c b/usl/usl_timer.c +index 734b820..fda752b 100644 +--- a/usl/usl_timer.c ++++ b/usl/usl_timer.c +@@ -42,6 +42,7 @@ + #include <signal.h> + #include <string.h> + #include <sys/time.h> ++#include <limits.h> + + #include "usl.h" + +@@ -87,14 +88,13 @@ void (*usl_timer_tick_hook)(void); + */ + void usl_timer_tick(void) + { +- int result; + char msg = '\0'; + + usl_tick++; + + if (!usl_tick_pending) { + usl_tick_pending = 1; +- result = write(usl_tick_pipe[1], &msg, sizeof(msg)); ++ write(usl_tick_pipe[1], &msg, sizeof(msg)); + } + } + +@@ -111,11 +111,10 @@ static void usl_timer_tick_handler(int fd, void *arg) + struct usl_ord_list_head *tmp; + struct usl_list_head *iwalk; + struct usl_list_head *itmp; +- int result; + char msg; + USL_LIST_HEAD(expire_list); + +- result = usl_fd_read(usl_tick_pipe[0], &msg, sizeof(msg)); ++ usl_fd_read(usl_tick_pipe[0], &msg, sizeof(msg)); + usl_tick_pending = 0; + + usl_list_for_each(walk, tmp, &usl_timer_list) { diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/makefile-add-ldflags.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/makefile-add-ldflags.patch new file mode 100644 index 000000000..7d5b715ae --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/makefile-add-ldflags.patch @@ -0,0 +1,21 @@ +Add LDFLAGS variable to Makefile so that extra linker flags can be sent via this variable. + +Upstream-Status: Pending + +Signed-off-by: Yi Zhao <yi.zhao@windriver.com> + +diff --git a/Makefile b/Makefile +index 4f7af1d..a05a000 100644 +--- a/Makefile ++++ b/Makefile +@@ -83,8 +83,8 @@ endif + + CPPFLAGS= $(CPPFLAGS.ippooltest) + CFLAGS= -I. -Iusl -Icli -MMD -Wall -g $(CPPFLAGS) $(CPPFLAGS.dmalloc) +-LDFLAGS.ippoold= -Wl,-E -L. -Lusl -lusl -lnsl -ldl $(LIBS.dmalloc) -lc +-LDFLAGS.ippoolconfig= -Lcli -lcli -lreadline -lcurses -lnsl $(LIBS.dmalloc) -lc ++LDFLAGS.ippoold= $(LDFLAGS) -Wl,-E -L. -Lusl -lusl -lnsl -ldl $(LIBS.dmalloc) -lc ++LDFLAGS.ippoolconfig= $(LDFLAGS) -Lcli -lcli -lreadline -lcurses -lnsl $(LIBS.dmalloc) -lc + + OPT_CFLAGS?= -O + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/runtest.sh b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/runtest.sh new file mode 100644 index 000000000..f91f58237 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool/runtest.sh @@ -0,0 +1,26 @@ +#!/bin/sh +BANNER="----------------------------------------------------------------------------" +TCLSH="tclsh all.tcl -preservecore 3 -verbose bps -tmpdir ./results -outfile test-ippool.result" + +test_setup() { + if [ -d ./results ]; then rm -fr ./results; fi + mkdir ./results +} + +test_ippool() { + echo "${BANNER}" + eval $TCLSH -constraints "ipPool" +} +test_postprocess() { + echo "${BANNER}" + (failed=`grep FAILED results/*.result | wc -l`; \ + let failed2=failed/2 ;\ + passed=`grep PASSED results/*.result | wc -l`; \ + echo "TEST SUMMARY: $passed tests PASSED, $failed2 tests FAILED" ;\ + exit $failed2) +} + +test_setup +test_ippool +test_postprocess + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool_1.3.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool_1.3.bb new file mode 100644 index 000000000..6e4748357 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ippool/ippool_1.3.bb @@ -0,0 +1,113 @@ +SUMMARY = "An IP address pool manager" +DESCRIPTION = "IpPool is implemented as a separate server daemon \ +to allow any application to use its address pools. This makes it possible \ +to define address pools that are shared by PPP, L2TP, PPTP etc. It may be \ +useful in some VPN server setups. IpPool comes with a command line \ +management application, ippoolconfig to manage and query address pool \ +status. A pppd plugin is supplied which allows pppd to request IP \ +addresses from ippoold. \ +" +HOMEPAGE = "http://www.openl2tp.org/" +SECTION = "console/network" +LICENSE = "GPLv2+" + +SRC_URI = "https://sourceforge.net/projects/openl2tp/files/${BPN}/${PV}/${BPN}-${PV}.tar.gz \ + file://runtest.sh \ + file://ippool.service \ + file://ippool_usl_timer.patch \ + file://ippool_parallel_make_and_pic.patch \ + file://ippool_init.d.patch \ + file://always_syslog.patch \ + file://makefile-add-ldflags.patch \ + file://0001-usl_timer-Check-for-return-value-of-write-API.patch \ + file://0001-Respect-flags-from-env.patch \ + file://0001-read-returns-ssize_t.patch \ + file://0002-Mark-first-element-of-a-string-as-null.patch \ + file://0003-cli-Mark-return-of-strtol-as-long-int.patch \ + " +SRC_URI_append_libc-musl = "\ + file://0002-link-with-libtirpc.patch \ + file://0003-musl-fixes.patch \ + " + +LIC_FILES_CHKSUM = "file://LICENSE;md5=4c59283b82fc2b166455e0fc23c71c6f" +SRC_URI[md5sum] = "e2401e65db26a3764585b97212888fae" +SRC_URI[sha256sum] = "d3eab7d6cad5da8ccc9d1e31d5303e27a39622c07bdb8fa3618eea314412075b" + +inherit systemd + +DEPENDS = "readline ppp ncurses gzip-native" +DEPENDS_append_libc-musl = " libtirpc" +RDEPENDS_${PN} = "rpcbind" + +EXTRA_OEMAKE = "CC='${CC}' AS='${AS}' LD='${LD}' AR='${AR}' NM='${NM}' STRIP='${STRIP}'" +EXTRA_OEMAKE += "PPPD_VERSION=${PPPD_VERSION} SYS_LIBDIR=${libdir}" +# enable self tests +EXTRA_OEMAKE += "IPPOOL_TEST=y" + +CPPFLAGS += "${SELECTED_OPTIMIZATION}" +CPPFLAGS_append_libc-musl = " -I${STAGING_INCDIR}/tirpc" + +SYSTEMD_SERVICE_${PN} = "ippool.service" +SYSTEMD_AUTO_ENABLE = "disable" + + +do_compile_prepend() { + # fix the CFLAGS= and CPPFLAGS= in main Makefile, to have the extra CFLAGS in env + sed -i -e "s/^CFLAGS=/CFLAGS+=/" ${S}/Makefile + sed -i -e "s/^CPPFLAGS=/CPPFLAGS+=/" ${S}/Makefile + + sed -i -e "s:-I/usr/include/pppd:-I=/usr/include/pppd:" ${S}/pppd/Makefile + +} + + +do_install() { + oe_runmake DESTDIR=${D} install + + install -D -m 0755 ${S}/debian/init.d ${D}${sysconfdir}/init.d/ippoold + install -D -m 0644 ${WORKDIR}/ippool.service ${D}${systemd_system_unitdir}/ippool.service + sed -i -e 's:@SBINDIR@:${sbindir}:g' ${D}${systemd_system_unitdir}/ippool.service + + # install self test + install -d ${D}/opt/${BPN} + install ${S}/test/all.tcl ${S}/test/ippool.test \ + ${S}/test/test_procs.tcl ${D}/opt/${BPN} + install ${WORKDIR}/runtest.sh ${D}/opt/${BPN} + # fix the ../ippoolconfig in test_procs.tcl + sed -i -e "s:../ippoolconfig:ippoolconfig:" \ + ${D}/opt/${BPN}/test_procs.tcl +} + + +PACKAGES =+ "${PN}-test" + +FILES_${PN} += "${libdir}/pppd/${PPPD_VERSION}/ippool.so" +FILES_${PN}-dbg += "${libdir}/pppd/${PPPD_VERSION}/.debug/ippool.so" +FILES_${PN}-test = "/opt/${BPN}" + +# needs tcl to run tests +RDEPENDS_${PN}-test += "tcl ${BPN}" + +PPPD_VERSION="${@get_ppp_version(d)}" + +def get_ppp_version(d): + import re + + pppd_plugin = d.expand('${STAGING_LIBDIR}/pppd') + if not os.path.isdir(pppd_plugin): + return None + + bb.debug(1, "pppd plugin dir %s" % pppd_plugin) + r = re.compile("\d*\.\d*\.\d*") + for f in os.listdir(pppd_plugin): + if os.path.isdir(os.path.join(pppd_plugin, f)): + ma = r.match(f) + if ma: + bb.debug(1, "pppd version dir %s" % f) + return f + else: + bb.debug(1, "under pppd plugin dir %s" % f) + + return None + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_1.3.5.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_1.3.5.bb new file mode 100644 index 000000000..5e7e6e49f --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/keepalived/keepalived_1.3.5.bb @@ -0,0 +1,49 @@ +SUMMARY = "High Availability monitor built upon LVS, VRRP and service pollers" +DESCRIPTION = "Keepalived is a routing software written in C. The main goal \ +of this project is to provide simple and robust facilities for loadbalancing \ +and high-availability to Linux system and Linux based infrastructures. \ +Loadbalancing framework relies on well-known and widely used Linux Virtual \ +Server (IPVS) kernel module providing Layer4 loadbalancing \ +" +HOMEPAGE = "http://www.keepalived.org/" + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +SRC_URI = "http://www.keepalived.org/software/${BP}.tar.gz" + +SRC_URI[md5sum] = "9964d295ec9d34ed3408b57d28847b68" +SRC_URI[sha256sum] = "c0114d86ea4c896557beb0d9367819a423ffba772bc5d7c548dc455e6b3bd048" + +DEPENDS = "libnfnetlink openssl" + +inherit autotools pkgconfig systemd update-rc.d + +PACKAGECONFIG ??= "libnl snmp \ + ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \ +" +PACKAGECONFIG[libnl] = "--enable-libnl,--disable-libnl,libnl" +PACKAGECONFIG[snmp] = "--enable-snmp,--disable-snmp,net-snmp" +PACKAGECONFIG[systemd] = "--with-init=systemd --with-systemdsystemunitdir=${systemd_system_unitdir},--with-init=SYSV,systemd" + +EXTRA_OECONF = "--disable-libiptc" +EXTRA_OEMAKE = "initdir=${sysconfdir}/init.d" + +do_install_append() { + if [ -f ${D}${sysconfdir}/init.d/${BPN} ]; then + chmod 0755 ${D}${sysconfdir}/init.d/${BPN} + sed -i 's#rc.d/##' ${D}${sysconfdir}/init.d/${BPN} + fi + + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -D -m 0644 ${B}/${BPN}/${BPN}.service ${D}${systemd_system_unitdir}/${BPN}.service + fi +} + +FILES_${PN} += "${datadir}/snmp/mibs/KEEPALIVED-MIB.txt" + +INITSCRIPT_NAME = "keepalived" +INITSCRIPT_PARAMS = "remove" + +SYSTEMD_SERVICE_${PN} = "keepalived.service" +SYSTEMD_AUTO_ENABLE ?= "disable" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/lldpd/files/src-daemon-lldpd.service.in-Use-fixed-path-for-mkdir.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/lldpd/files/src-daemon-lldpd.service.in-Use-fixed-path-for-mkdir.patch new file mode 100644 index 000000000..4876e1794 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/lldpd/files/src-daemon-lldpd.service.in-Use-fixed-path-for-mkdir.patch @@ -0,0 +1,32 @@ +From f9f3e4dd31588cce5f655730da7b5c3f56a9bdc1 Mon Sep 17 00:00:00 2001 +From: Fabio Berton <fabio.berton@ossystems.com.br> +Date: Tue, 26 Sep 2017 09:19:51 -0300 +Subject: [PATCH] src/daemon/lldpd.service.in: Use fixed path for mkdir command +Organization: O.S. Systems Software LTDA. + +@mkdir_p@ is expanded to host tools path ../build/tmp/hosttools/mkdir that +doesn't exist on target. Remove @mkdir_p@ and use /bin/mkdir -p to +create /var/run/lldpd directory. + +Upstream-Status: Inappropriate [configuration] + +Signed-off-by: Fabio Berton <fabio.berton@ossystems.com.br> +--- + src/daemon/lldpd.service.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/daemon/lldpd.service.in b/src/daemon/lldpd.service.in +index fdb7338..4291830 100644 +--- a/src/daemon/lldpd.service.in ++++ b/src/daemon/lldpd.service.in +@@ -9,7 +9,7 @@ Type=notify + NotifyAccess=main + EnvironmentFile=-/etc/default/lldpd + EnvironmentFile=-/etc/sysconfig/lldpd +-ExecStartPre=@mkdir_p@ @PRIVSEP_CHROOT@ ++ExecStartPre=/bin/mkdir -p @PRIVSEP_CHROOT@ + ExecStart=@sbindir@/lldpd $DAEMON_ARGS $LLDPD_OPTIONS + Restart=on-failure + PrivateTmp=yes +-- +2.14.2 diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_0.9.6.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_0.9.8.bb index 0cd063720..dbd84cf67 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_0.9.6.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/lldpd/lldpd_0.9.8.bb @@ -9,10 +9,11 @@ SRC_URI = "\ http://media.luffy.cx/files/${BPN}/${BPN}-${PV}.tar.gz \ file://lldpd.init.d \ file://lldpd.default \ + file://src-daemon-lldpd.service.in-Use-fixed-path-for-mkdir.patch \ " -SRC_URI[md5sum] = "0dcdee7c1b3c62362d73f6508c11edae" -SRC_URI[sha256sum] = "e74e2dd7e2a233ca1ff385c925ddae2a916d302819d1433741407d2f8fb0ddd8" +SRC_URI[md5sum] = "8809600492f6b73149eb19158e819c1f" +SRC_URI[sha256sum] = "9ee494e91bc33938575b2c09b26188c486ef8eac6e2155d250c189cc4e988c4f" inherit autotools update-rc.d useradd systemd pkgconfig bash-completion @@ -29,7 +30,6 @@ EXTRA_OECONF += "--without-embedded-libevent \ " PACKAGECONFIG ??= "cdp fdp edp sonmp lldpmed dot1 dot3" -PACKAGECONFIG[json] = "--with-json,--without-json,jansson" PACKAGECONFIG[xml] = "--with-xml,--without-xml,libxm2" PACKAGECONFIG[snmp] = "--with-snmp,--without-snmp,net-snmp" PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ncftp/ncftp/unistd.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ncftp/ncftp/unistd.patch new file mode 100644 index 000000000..1c8146eda --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ncftp/ncftp/unistd.patch @@ -0,0 +1,32 @@ +This patch is needed to avoid double definitions of functions +especially when building with security flags turned on. The double +definitions causes the sed.sh script in configure to fail since it +starts to spit out double outputs e.g. + +wi_cv_gethostname_size_t size_t size_t + +which then caused almost all subsequent compile time tests to fail since +this gets into confdefs.h file + +removing this include causes only one definitions to be emitted into +the genrated protos.h file and thus avoiding the above failure. + +Other solution would to fix sed.sh to ignore double definitions + +Upstream-Status: Pending + +Signed-of-by: Khem Raj <raj.khem@gmail.com> + + +Index: ncftp-3.2.6/configure +=================================================================== +--- ncftp-3.2.6.orig/configure ++++ ncftp-3.2.6/configure +@@ -7859,7 +7859,6 @@ chmod 755 "$wi_tmpdir/prpp.pl" + cat << 'EOF' > "$wi_tmpdir/unistd.c" + #include <confdefs.h> + +-#include <unistd.h> + #include <sys/types.h> + #include <sys/socket.h> + #include <netinet/in.h> diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ncftp/ncftp_3.2.5.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ncftp/ncftp_3.2.6.bb index 893eacb99..5f92f27fd 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/ncftp/ncftp_3.2.5.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/ncftp/ncftp_3.2.6.bb @@ -2,21 +2,29 @@ DESCRIPTION = "A sophisticated console ftp client" HOMEPAGE = "http://ncftp.com/" SECTION = "net" LICENSE = "ClArtistic" -LIC_FILES_CHKSUM = "file://ncftp/cmds.c;beginline=3;endline=4;md5=9de76faeaedc4f908082e3f8142715f4" +LIC_FILES_CHKSUM = "file://ncftp/cmds.c;beginline=3;endline=4;md5=9c2390809f71465aa7ff76e03dc14d91" DEPENDS = "ncurses" -SRC_URI = "${DEBIAN_MIRROR}/main/n/${BPN}/${BPN}_${PV}.orig.tar.gz \ +SRC_URI = "ftp://ftp.ncftp.com/${BPN}/${BP}-src.tar.xz \ file://ncftp-configure-use-BUILD_CC-for-ccdv.patch \ + file://unistd.patch \ " -SRC_URI[md5sum] = "685e45f60ac11c89442c572c28af4228" -SRC_URI[sha256sum] = "ac111b71112382853b2835c42ebe7bd59acb7f85dd00d44b2c19fbd074a436c4" +SRC_URI[md5sum] = "42d0f896d69a4d603ec097546444245f" +SRC_URI[sha256sum] = "5f200687c05d0807690d9fb770327b226f02dd86155b49e750853fce4e31098d" inherit autotools-brokensep pkgconfig +CFLAGS += "-DNO_SSLv2 -D_FILE_OFFSET_BITS=64 -Wall" + PACKAGECONFIG ??= "" PACKAGECONFIG[ccdv] = "--enable-ccdv,--disable-ccdv,," +EXTRA_OECONF = "--disable-precomp" +TARGET_CC_ARCH_append = " ${SELECTED_OPTIMIZATION}" + do_configure() { + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S} + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S} oe_runconf } do_install () { diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/0001-Fix-build-failures-with-gcc7.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/0001-Fix-build-failures-with-gcc7.patch new file mode 100644 index 000000000..4f493f7b8 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/0001-Fix-build-failures-with-gcc7.patch @@ -0,0 +1,49 @@ +From 398c6db66c643ed6133cc2b028ab1e27a17c5295 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Mon, 1 May 2017 19:10:09 +0000 +Subject: [PATCH] Fix build failures with gcc7 + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + plugins/ipmidirect/ipmi_mc_vendor.cpp | 2 +- + plugins/ipmidirect/ipmi_resource.cpp | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/plugins/ipmidirect/ipmi_mc_vendor.cpp b/plugins/ipmidirect/ipmi_mc_vendor.cpp +index 2c6c090..557771c 100644 +--- a/plugins/ipmidirect/ipmi_mc_vendor.cpp ++++ b/plugins/ipmidirect/ipmi_mc_vendor.cpp +@@ -322,7 +322,7 @@ cIpmiMcVendor::CreateResources( cIpmiDomain *domain, cIpmiMc *source_mc, cIpmiSd + if ( addr.m_channel != source_mc->GetChannel() ) + stdlog << "WARNING : SDR channel " << addr.m_channel << " NOT equal to MC channel " << source_mc->GetChannel() << "\n"; + +- if ( FindOrCreateResource( domain, source_mc, fru_id, sdr, sdrs ) == false ) { ++ if ( !FindOrCreateResource( domain, source_mc, fru_id, sdr, sdrs ) ) { + return false; + } + } +diff --git a/plugins/ipmidirect/ipmi_resource.cpp b/plugins/ipmidirect/ipmi_resource.cpp +index c438e74..2552673 100644 +--- a/plugins/ipmidirect/ipmi_resource.cpp ++++ b/plugins/ipmidirect/ipmi_resource.cpp +@@ -73,7 +73,7 @@ cIpmiResource::SendCommandReadLock( const cIpmiMsg &msg, cIpmiMsg &rsp, + + domain->ReadLock(); + +- if ( domain->VerifyResource( resource ) == false ) ++ if ( !domain->VerifyResource( resource ) ) + return SA_ERR_HPI_NOT_PRESENT; + + return rv; +@@ -91,7 +91,7 @@ cIpmiResource::SendCommandReadLock( cIpmiRdr *rdr, const cIpmiMsg &msg, cIpmiMsg + + domain->ReadLock(); + +- if ( domain->VerifyRdr( rdr ) == false ) ++ if ( !domain->VerifyRdr( rdr ) ) + return SA_ERR_HPI_NOT_PRESENT; + + return rv; +-- +1.9.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/0001-ipmidirect-Replace-__STRING.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/0001-ipmidirect-Replace-__STRING.patch new file mode 100644 index 000000000..4d56f6535 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/0001-ipmidirect-Replace-__STRING.patch @@ -0,0 +1,31 @@ +From be40b3f11460cf495bbbef45692e7763afda0c2b Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 14 Sep 2017 17:56:31 -0700 +Subject: [PATCH] ipmidirect: Replace __STRING + +__STRING is not universally available e.g. +musl does not define it + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- +Upstream-Status: Pending + + plugins/ipmidirect/t/test.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/plugins/ipmidirect/t/test.h b/plugins/ipmidirect/t/test.h +index 8d71381..978d5ff 100644 +--- a/plugins/ipmidirect/t/test.h ++++ b/plugins/ipmidirect/t/test.h +@@ -22,7 +22,7 @@ TestFunction( const char *str, const char *file, int line, bool expr ) + } + + +-#define Test(expr) TestFunction( __STRING(expr), __FILE__, __LINE__, expr ) ++#define Test(expr) TestFunction( #expr, __FILE__, __LINE__, expr ) + + + static int +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/0001-plugins-Check-for-PTHREAD_RECURSIVE_MUTEX_INITIALIZE.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/0001-plugins-Check-for-PTHREAD_RECURSIVE_MUTEX_INITIALIZE.patch new file mode 100644 index 000000000..0f033ac85 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/0001-plugins-Check-for-PTHREAD_RECURSIVE_MUTEX_INITIALIZE.patch @@ -0,0 +1,47 @@ +From be665d9513cca7e8b64c79ae424cf44ac166b052 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 14 Sep 2017 17:07:58 -0700 +Subject: [PATCH] plugins: Check for PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP + before use + +musl does not define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP +so we can not assume that all Linux systems support PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP +its a glibc specific define so check for it being defined before using it + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- +Upstream-Status: Pending + + plugins/dynamic_simulator/thread.cpp | 2 +- + plugins/ipmidirect/thread.cpp | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/plugins/dynamic_simulator/thread.cpp b/plugins/dynamic_simulator/thread.cpp +index d663be0..9210fd7 100644 +--- a/plugins/dynamic_simulator/thread.cpp ++++ b/plugins/dynamic_simulator/thread.cpp +@@ -229,7 +229,7 @@ cThread::Exit( void *rv ) + /** + * Constructor + **/ +-#if ( defined(__sun) && defined(__SVR4) ) || defined(__FreeBSD__) ++#ifndef PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP + cThreadLock::cThreadLock() + { + pthread_mutexattr_t attr; +diff --git a/plugins/ipmidirect/thread.cpp b/plugins/ipmidirect/thread.cpp +index 5c52557..48e83fa 100644 +--- a/plugins/ipmidirect/thread.cpp ++++ b/plugins/ipmidirect/thread.cpp +@@ -167,7 +167,7 @@ cThread::Exit( void *rv ) + // cThreadLock + ////////////////////////////////////////////////// + +-#if ( defined(__sun) && defined(__SVR4) ) || defined(__FreeBSD__) ++#ifndef PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP + cThreadLock::cThreadLock() + { + pthread_mutexattr_t attr; +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/c++11.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/c++11.patch new file mode 100644 index 000000000..0549d5977 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/c++11.patch @@ -0,0 +1,12 @@ +Index: openhpi-3.6.1/configure.ac +=================================================================== +--- openhpi-3.6.1.orig/configure.ac ++++ openhpi-3.6.1/configure.ac +@@ -44,6 +44,7 @@ AC_PROG_CPP + AC_PROG_INSTALL + AC_PROG_LN_S + AC_PROG_MAKE_SET ++AX_CXX_COMPILE_STDCXX_11([noext],[mandatory]) + + enabled_non32bit="no" + AC_ARG_ENABLE([non32bit-int], diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/clang-c++11.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/clang-c++11.patch new file mode 100644 index 000000000..9b35a0cce --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/clang-c++11.patch @@ -0,0 +1,1288 @@ +Index: openhpi-3.6.1/plugins/dynamic_simulator/new_sim.cpp +=================================================================== +--- openhpi-3.6.1.orig/plugins/dynamic_simulator/new_sim.cpp ++++ openhpi-3.6.1/plugins/dynamic_simulator/new_sim.cpp +@@ -415,7 +415,7 @@ extern "C" { + /** + * Alias for @ref öh_open(), implemented by @ref NewSimulatorOpen(). + **/ +-static void * NewSimulatorOpen( GHashTable *, unsigned int, oh_evt_queue * ) __attribute__((used)); ++static void * NewSimulatorOpen( GHashTable *, unsigned int, oh_evt_queue * ) __asm__("NewSimulatorOpen") __attribute__((used)); + + /** + * @fn NewSimulatorOpen( GHashTable *handler_config, unsigned int hid, +@@ -530,7 +530,7 @@ static void * NewSimulatorOpen( GHashTab + /** + * Alias for @ref öh_close(), implemented by @ref NewSimulatorClose(). + **/ +-static void NewSimulatorClose( void * ) __attribute__((used)); ++static void NewSimulatorClose( void * ) __asm__("NewSimulatorClose") __attribute__((used)); + + /** + * @relate NewSimulatorClose +@@ -585,7 +585,7 @@ static void NewSimulatorClose( void *hnd + * + * @return HPI error code + **/ +-static SaErrorT NewSimulatorGetEvent( void * ) __attribute__((used)); ++static SaErrorT NewSimulatorGetEvent( void * ) __asm__("NewSimulatorGetEvent") __attribute__((used)); + + static SaErrorT NewSimulatorGetEvent( void *hnd ) { + dbg( "NewSimulatorGetEvent" ); +@@ -613,7 +613,7 @@ static SaErrorT NewSimulatorGetEvent( vo + * + * @return HPI error code + **/ +-static SaErrorT NewSimulatorDiscoverResources( void * ) __attribute__((used)); ++static SaErrorT NewSimulatorDiscoverResources( void * ) __asm__("NewSimulatorDiscoverResources") __attribute__((used)); + + static SaErrorT NewSimulatorDiscoverResources( void *hnd ) { + dbg( "NewSimulatorDiscoverResources" ); +@@ -641,7 +641,7 @@ static SaErrorT NewSimulatorDiscoverReso + * + * @return HPI error code + **/ +-static SaErrorT NewSimulatorSetResourceTag( void *, SaHpiResourceIdT, SaHpiTextBufferT * ) __attribute__((used)); ++static SaErrorT NewSimulatorSetResourceTag( void *, SaHpiResourceIdT, SaHpiTextBufferT * ) __asm__("NewSimulatorSetResourceTag") __attribute__((used)); + + static SaErrorT NewSimulatorSetResourceTag( void *hnd, SaHpiResourceIdT id, + SaHpiTextBufferT *tag ) { +@@ -669,7 +669,7 @@ static SaErrorT NewSimulatorSetResourceT + * + * @return HPI error code + **/ +-static SaErrorT NewSimulatorSetResourceSeverity( void *, SaHpiResourceIdT, SaHpiSeverityT ) __attribute__((used)); ++static SaErrorT NewSimulatorSetResourceSeverity( void *, SaHpiResourceIdT, SaHpiSeverityT ) __asm__("NewSimulatorSetResourceSeverity") __attribute__((used)); + + static SaErrorT NewSimulatorSetResourceSeverity( void *hnd, SaHpiResourceIdT id, + SaHpiSeverityT sev ) { +@@ -703,7 +703,7 @@ static SaErrorT NewSimulatorGetSensorRea + SaHpiResourceIdT id, + SaHpiSensorNumT num, + SaHpiSensorReadingT *data, +- SaHpiEventStateT *state ) __attribute__((used)); ++ SaHpiEventStateT *state ) __asm__("NewSimulatorGetSensorReading") __attribute__((used)); + + static SaErrorT NewSimulatorGetSensorReading( void *hnd, + SaHpiResourceIdT id, +@@ -738,7 +738,7 @@ static SaErrorT NewSimulatorGetSensorRea + static SaErrorT NewSimulatorGetSensorThresholds( void *hnd, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiSensorThresholdsT * ) __attribute__((used)); ++ SaHpiSensorThresholdsT * ) __asm__("NewSimulatorGetSensorThresholds") __attribute__((used)); + + static SaErrorT NewSimulatorGetSensorThresholds( void *hnd, + SaHpiResourceIdT id, +@@ -777,7 +777,7 @@ static SaErrorT NewSimulatorGetSensorThr + static SaErrorT NewSimulatorSetSensorThresholds( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- const SaHpiSensorThresholdsT * ) __attribute__((used)); ++ const SaHpiSensorThresholdsT * ) __asm__("NewSimulatorSetSensorThresholds") __attribute__((used)); + + static SaErrorT NewSimulatorSetSensorThresholds( void *hnd, + SaHpiResourceIdT id, +@@ -815,7 +815,7 @@ static SaErrorT NewSimulatorSetSensorThr + static SaErrorT NewSimulatorGetSensorEnable( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiBoolT * ) __attribute__((used)); ++ SaHpiBoolT * ) __asm__("NewSimulatorGetSensorEnable") __attribute__((used)); + + static SaErrorT NewSimulatorGetSensorEnable( void *hnd, + SaHpiResourceIdT id, +@@ -849,7 +849,7 @@ static SaErrorT NewSimulatorGetSensorEna + static SaErrorT NewSimulatorSetSensorEnable( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiBoolT ) __attribute__((used)); ++ SaHpiBoolT ) __asm__("NewSimulatorSetSensorEnable") __attribute__((used)); + + static SaErrorT NewSimulatorSetSensorEnable( void *hnd, + SaHpiResourceIdT id, +@@ -883,7 +883,7 @@ static SaErrorT NewSimulatorSetSensorEna + static SaErrorT NewSimulatorGetSensorEventEnables( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiBoolT * ) __attribute__((used)); ++ SaHpiBoolT * ) __asm__("NewSimulatorGetSensorEventEnables") __attribute__((used)); + + static SaErrorT NewSimulatorGetSensorEventEnables( void *hnd, + SaHpiResourceIdT id, +@@ -916,7 +916,7 @@ static SaErrorT NewSimulatorGetSensorEve + static SaErrorT NewSimulatorSetSensorEventEnables( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiBoolT ) __attribute__((used)); ++ SaHpiBoolT ) __asm__("NewSimulatorSetSensorEventEnables") __attribute__((used)); + + static SaErrorT NewSimulatorSetSensorEventEnables( void *hnd, + SaHpiResourceIdT id, +@@ -952,7 +952,7 @@ static SaErrorT NewSimulatorGetSensorEve + SaHpiResourceIdT, + SaHpiSensorNumT, + SaHpiEventStateT *, +- SaHpiEventStateT * ) __attribute__((used)); ++ SaHpiEventStateT * ) __asm__("NewSimulatorGetSensorEventMasks") __attribute__((used)); + + static SaErrorT NewSimulatorGetSensorEventMasks( void *hnd, + SaHpiResourceIdT id, +@@ -990,7 +990,7 @@ static SaErrorT NewSimulatorSetSensorEve + SaHpiSensorNumT, + SaHpiSensorEventMaskActionT, + SaHpiEventStateT, +- SaHpiEventStateT ) __attribute__((used)); ++ SaHpiEventStateT ) __asm__("NewSimulatorSetSensorEventMasks") __attribute__((used)); + + static SaErrorT NewSimulatorSetSensorEventMasks( void *hnd, + SaHpiResourceIdT id, +@@ -1026,7 +1026,7 @@ static SaErrorT NewSimulatorSetSensorEve + static SaErrorT NewSimulatorGetControlState( void *, SaHpiResourceIdT, + SaHpiCtrlNumT, + SaHpiCtrlModeT *, +- SaHpiCtrlStateT * ) __attribute__((used)); ++ SaHpiCtrlStateT * ) __asm__("NewSimulatorGetControlState") __attribute__((used)); + + static SaErrorT NewSimulatorGetControlState( void *hnd, SaHpiResourceIdT id, + SaHpiCtrlNumT num, +@@ -1061,7 +1061,7 @@ static SaErrorT NewSimulatorGetControlSt + static SaErrorT NewSimulatorSetControlState( void *, SaHpiResourceIdT, + SaHpiCtrlNumT, + SaHpiCtrlModeT, +- SaHpiCtrlStateT * ) __attribute__((used)); ++ SaHpiCtrlStateT * ) __asm__("NewSimulatorSetControlState") __attribute__((used)); + + static SaErrorT NewSimulatorSetControlState( void *hnd, SaHpiResourceIdT id, + SaHpiCtrlNumT num, +@@ -1099,7 +1099,7 @@ static SaErrorT NewSimulatorGetNextAnnou + SaHpiAnnunciatorNumT, + SaHpiSeverityT, + SaHpiBoolT, +- SaHpiAnnouncementT *) __attribute__((used)); ++ SaHpiAnnouncementT *) __asm__("NewSimulatorGetNextAnnouncement") __attribute__((used)); + + static SaErrorT NewSimulatorGetNextAnnouncement(void *hnd, SaHpiResourceIdT id, + SaHpiAnnunciatorNumT num, +@@ -1135,7 +1135,7 @@ static SaErrorT NewSimulatorGetNextAnnou + static SaErrorT NewSimulatorGetAnnouncement(void *, SaHpiResourceIdT, + SaHpiAnnunciatorNumT, + SaHpiEntryIdT, +- SaHpiAnnouncementT *) __attribute__((used)); ++ SaHpiAnnouncementT *) __asm__("NewSimulatorGetAnnouncement") __attribute__((used)); + + static SaErrorT NewSimulatorGetAnnouncement(void *hnd, SaHpiResourceIdT id, + SaHpiAnnunciatorNumT num, +@@ -1171,7 +1171,7 @@ static SaErrorT NewSimulatorGetAnnouncem + static SaErrorT NewSimulatorAckAnnouncement(void *, SaHpiResourceIdT, + SaHpiAnnunciatorNumT, + SaHpiEntryIdT, +- SaHpiSeverityT) __attribute__((used)); ++ SaHpiSeverityT) __asm__("NewSimulatorAckAnnouncement") __attribute__((used)); + + static SaErrorT NewSimulatorAckAnnouncement(void *hnd, SaHpiResourceIdT id, + SaHpiAnnunciatorNumT num, +@@ -1205,7 +1205,7 @@ static SaErrorT NewSimulatorAckAnnouncem + **/ + static SaErrorT NewSimulatorAddAnnouncement(void *, SaHpiResourceIdT, + SaHpiAnnunciatorNumT, +- SaHpiAnnouncementT *) __attribute__((used)); ++ SaHpiAnnouncementT *) __asm__("NewSimulatorAddAnnouncement") __attribute__((used)); + + static SaErrorT NewSimulatorAddAnnouncement(void *hnd, SaHpiResourceIdT id, + SaHpiAnnunciatorNumT num, +@@ -1239,7 +1239,7 @@ static SaErrorT NewSimulatorAddAnnouncem + static SaErrorT NewSimulatorDelAnnouncement(void *, SaHpiResourceIdT, + SaHpiAnnunciatorNumT, + SaHpiEntryIdT, +- SaHpiSeverityT) __attribute__((used)); ++ SaHpiSeverityT) __asm__("NewSimulatorDelAnnouncement") __attribute__((used)); + + static SaErrorT NewSimulatorDelAnnouncement(void *hnd, SaHpiResourceIdT id, + SaHpiAnnunciatorNumT num, +@@ -1273,7 +1273,7 @@ static SaErrorT NewSimulatorDelAnnouncem + **/ + static SaErrorT NewSimulatorGetAnnMode(void *, SaHpiResourceIdT, + SaHpiAnnunciatorNumT, +- SaHpiAnnunciatorModeT *) __attribute__((used)); ++ SaHpiAnnunciatorModeT *) __asm__("NewSimulatorGetAnnMode") __attribute__((used)); + + static SaErrorT NewSimulatorGetAnnMode(void *hnd, SaHpiResourceIdT id, + SaHpiAnnunciatorNumT num, +@@ -1306,7 +1306,7 @@ static SaErrorT NewSimulatorGetAnnMode(v + **/ + static SaErrorT NewSimulatorSetAnnMode(void *, SaHpiResourceIdT, + SaHpiAnnunciatorNumT, +- SaHpiAnnunciatorModeT) __attribute__((used)); ++ SaHpiAnnunciatorModeT) __asm__("NewSimulatorSetAnnMode") __attribute__((used)); + + static SaErrorT NewSimulatorSetAnnMode(void *hnd, SaHpiResourceIdT id, + SaHpiAnnunciatorNumT num, +@@ -1340,7 +1340,7 @@ static SaErrorT NewSimulatorSetAnnMode(v + static SaErrorT NewSimulatorGetIdrInfo( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, +- SaHpiIdrInfoT * ) __attribute__((used)); ++ SaHpiIdrInfoT * ) __asm__("NewSimulatorGetIdrInfo") __attribute__((used)); + + static SaErrorT NewSimulatorGetIdrInfo( void *hnd, + SaHpiResourceIdT id, +@@ -1380,7 +1380,7 @@ static SaErrorT NewSimulatorGetIdrAreaHe + SaHpiIdrAreaTypeT, + SaHpiEntryIdT, + SaHpiEntryIdT *, +- SaHpiIdrAreaHeaderT * ) __attribute__((used)); ++ SaHpiIdrAreaHeaderT * ) __asm__("NewSimulatorGetIdrAreaHeader") __attribute__((used)); + + static SaErrorT NewSimulatorGetIdrAreaHeader( void *hnd, + SaHpiResourceIdT id, +@@ -1419,7 +1419,7 @@ static SaErrorT NewSimulatorAddIdrArea( + SaHpiResourceIdT, + SaHpiIdrIdT, + SaHpiIdrAreaTypeT, +- SaHpiEntryIdT * ) __attribute__((used)); ++ SaHpiEntryIdT * ) __asm__("NewSimulatorAddIdrArea") __attribute__((used)); + + static SaErrorT NewSimulatorAddIdrArea( void *hnd, + SaHpiResourceIdT id, +@@ -1456,7 +1456,7 @@ static SaErrorT NewSimulatorAddIdrAreaBy + SaHpiResourceIdT, + SaHpiIdrIdT, + SaHpiIdrAreaTypeT, +- SaHpiEntryIdT ) __attribute__((used)); ++ SaHpiEntryIdT ) __asm__("NewSimulatorAddIdrAreaById") __attribute__((used)); + + static SaErrorT NewSimulatorAddIdrAreaById( void *hnd, + SaHpiResourceIdT id, +@@ -1490,7 +1490,7 @@ static SaErrorT NewSimulatorAddIdrAreaBy + static SaErrorT NewSimulatorDelIdrArea( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, +- SaHpiEntryIdT ) __attribute__((used)); ++ SaHpiEntryIdT ) __asm__("NewSimulatorDelIdrArea") __attribute__((used)); + + static SaErrorT NewSimulatorDelIdrArea( void *hnd, + SaHpiResourceIdT id, +@@ -1532,7 +1532,7 @@ static SaErrorT NewSimulatorGetIdrField( + SaHpiIdrFieldTypeT, + SaHpiEntryIdT, + SaHpiEntryIdT *, +- SaHpiIdrFieldT * ) __attribute__((used)); ++ SaHpiIdrFieldT * ) __asm__("NewSimulatorGetIdrField") __attribute__((used)); + + static SaErrorT NewSimulatorGetIdrField( void *hnd, + SaHpiResourceIdT id, +@@ -1570,7 +1570,7 @@ static SaErrorT NewSimulatorGetIdrField( + static SaErrorT NewSimulatorAddIdrField( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, +- SaHpiIdrFieldT * ) __attribute__((used)); ++ SaHpiIdrFieldT * ) __asm__("NewSimulatorAddIdrField") __attribute__((used)); + + static SaErrorT NewSimulatorAddIdrField( void *hnd, + SaHpiResourceIdT id, +@@ -1604,7 +1604,7 @@ static SaErrorT NewSimulatorAddIdrField( + static SaErrorT NewSimulatorAddIdrFieldById( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, +- SaHpiIdrFieldT * ) __attribute__((used)); ++ SaHpiIdrFieldT * ) __asm__("NewSimulatorAddIdrFieldById") __attribute__((used)); + + static SaErrorT NewSimulatorAddIdrFieldById( void *hnd, + SaHpiResourceIdT id, +@@ -1637,7 +1637,7 @@ static SaErrorT NewSimulatorAddIdrFieldB + static SaErrorT NewSimulatorSetIdrField( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, +- SaHpiIdrFieldT * ) __attribute__((used)); ++ SaHpiIdrFieldT * ) __asm__("NewSimulatorSetIdrField") __attribute__((used)); + + static SaErrorT NewSimulatorSetIdrField( void *hnd, + SaHpiResourceIdT id, +@@ -1672,7 +1672,7 @@ static SaErrorT NewSimulatorDelIdrField( + SaHpiResourceIdT, + SaHpiIdrIdT, + SaHpiEntryIdT, +- SaHpiEntryIdT ) __attribute__((used)); ++ SaHpiEntryIdT ) __asm__("NewSimulatorDelIdrField") __attribute__((used)); + + static SaErrorT NewSimulatorDelIdrField( void *hnd, + SaHpiResourceIdT id, +@@ -1704,7 +1704,7 @@ static SaErrorT NewSimulatorDelIdrField( + **/ + static SaErrorT NewSimulatorGetSelInfo( void *, + SaHpiResourceIdT, +- SaHpiEventLogInfoT * ) __attribute__((used)); ++ SaHpiEventLogInfoT * ) __asm__("NewSimulatorGetSelInfo") __attribute__((used)); + + static SaErrorT NewSimulatorGetSelInfo( void *hnd, + SaHpiResourceIdT id, +@@ -1736,7 +1736,7 @@ static SaErrorT NewSimulatorGetSelInfo( + * + * @return HPI error code + **/ +-static SaErrorT NewSimulatorSetSelTime( void *, SaHpiResourceIdT, SaHpiTimeT ) __attribute__((used)); ++static SaErrorT NewSimulatorSetSelTime( void *, SaHpiResourceIdT, SaHpiTimeT ) __asm__("NewSimulatorSetSelTime") __attribute__((used)); + + static SaErrorT NewSimulatorSetSelTime( void *hnd, SaHpiResourceIdT id, SaHpiTimeT t ) { + SaErrorT rv = SA_ERR_HPI_INTERNAL_ERROR; +@@ -1766,7 +1766,7 @@ static SaErrorT NewSimulatorSetSelTime( + * + * @return HPI error code + **/ +-static SaErrorT NewSimulatorAddSelEntry( void *, SaHpiResourceIdT, const SaHpiEventT * ) __attribute__((used)); ++static SaErrorT NewSimulatorAddSelEntry( void *, SaHpiResourceIdT, const SaHpiEventT * ) __asm__("NewSimulatorAddSelEntry") __attribute__((used)); + + static SaErrorT NewSimulatorAddSelEntry( void *hnd, SaHpiResourceIdT id, + const SaHpiEventT *Event ) { +@@ -1809,7 +1809,7 @@ static SaErrorT NewSimulatorGetSelEntry( + SaHpiEventLogEntryIdT *, + SaHpiEventLogEntryT *, + SaHpiRdrT *, +- SaHpiRptEntryT * ) __attribute__((used)); ++ SaHpiRptEntryT * ) __asm__("NewSimulatorGetSelEntry") __attribute__((used)); + + static SaErrorT NewSimulatorGetSelEntry( void *hnd, SaHpiResourceIdT id, + SaHpiEventLogEntryIdT current, +@@ -1844,7 +1844,7 @@ static SaErrorT NewSimulatorGetSelEntry( + * + * @return HPI error code + **/ +-static SaErrorT NewSimulatorClearSel( void *, SaHpiResourceIdT ) __attribute__((used)); ++static SaErrorT NewSimulatorClearSel( void *, SaHpiResourceIdT ) __asm__("NewSimulatorClearSel") __attribute__((used)); + + static SaErrorT NewSimulatorClearSel( void *hnd, SaHpiResourceIdT id ) { + SaErrorT rv = SA_ERR_HPI_INTERNAL_ERROR; +@@ -1875,7 +1875,7 @@ static SaErrorT NewSimulatorClearSel( vo + * @return HPI error code + **/ + static SaErrorT NewSimulatorSetSelState(void *, SaHpiResourceIdT, +- SaHpiBoolT) __attribute__((used)); ++ SaHpiBoolT) __asm__("NewSimulatorSetSelState") __attribute__((used)); + + static SaErrorT NewSimulatorSetSelState( void *hnd, SaHpiResourceIdT id, + SaHpiBoolT state ) { +@@ -1907,7 +1907,7 @@ static SaErrorT NewSimulatorSetSelState( + * @return HPI error code + **/ + static SaErrorT NewSimulatorGetSelState(void *, SaHpiResourceIdT, +- SaHpiBoolT *) __attribute__((used)); ++ SaHpiBoolT *) __asm__("NewSimulatorGetSelState") __attribute__((used)); + + static SaErrorT NewSimulatorGetSelState( void *hnd, SaHpiResourceIdT id, + SaHpiBoolT *state ) { +@@ -1939,7 +1939,7 @@ static SaErrorT NewSimulatorGetSelState( + * @return HPI error code + **/ + static SaErrorT NewSimulatorGetSelCapability(void *, SaHpiResourceIdT, +- SaHpiEventLogCapabilitiesT *) __attribute__((used)); ++ SaHpiEventLogCapabilitiesT *) __asm__("NewSimulatorGetSelCapability") __attribute__((used)); + + static SaErrorT NewSimulatorGetSelCapability( void *hnd, SaHpiResourceIdT id, + SaHpiEventLogCapabilitiesT *caps ) { +@@ -1970,7 +1970,7 @@ static SaErrorT NewSimulatorGetSelCapabi + * @return HPI error code + **/ + static SaErrorT NewSimulatorResetSelOverflow(void *, SaHpiResourceIdT) +- __attribute__((used)); ++ __asm__("NewSimulatorResetSelOverflow") __attribute__((used)); + + static SaErrorT NewSimulatorResetSelOverflow( void *hnd, SaHpiResourceIdT id ) { + +@@ -2002,7 +2002,7 @@ static SaErrorT NewSimulatorResetSelOver + * @return HPI error code + **/ + static SaErrorT NewSimulatorHotswapPolicyCancel( void *, SaHpiResourceIdT, +- SaHpiTimeoutT ) __attribute__((used)); ++ SaHpiTimeoutT ) __asm__("NewSimulatorHotswapPolicyCancel") __attribute__((used)); + + static SaErrorT NewSimulatorHotswapPolicyCancel( void *hnd, SaHpiResourceIdT id, + SaHpiTimeoutT timeout) { +@@ -2032,7 +2032,7 @@ static SaErrorT NewSimulatorHotswapPolic + * @return HPI error code + **/ + static SaErrorT NewSimulatorGetHotswapState( void *, SaHpiResourceIdT , +- SaHpiHsStateT * ) __attribute__((used)); ++ SaHpiHsStateT * ) __asm__("NewSimulatorGetHotswapState") __attribute__((used)); + + static SaErrorT NewSimulatorGetHotswapState( void *hnd, SaHpiResourceIdT id, + SaHpiHsStateT *state ) { +@@ -2063,7 +2063,7 @@ static SaErrorT NewSimulatorGetHotswapSt + * @return HPI error code + **/ + static SaErrorT NewSimulatorSetHotswapState( void *, SaHpiResourceIdT, +- SaHpiHsStateT ) __attribute__((used)); ++ SaHpiHsStateT ) __asm__("NewSimulatorSetHotswapState") __attribute__((used)); + + static SaErrorT NewSimulatorSetHotswapState( void *hnd, SaHpiResourceIdT id, + SaHpiHsStateT state ) { +@@ -2105,7 +2105,7 @@ static SaErrorT NewSimulatorSetHotswapSt + * @return HPI error code + **/ + static SaErrorT NewSimulatorRequestHotswapAction( void *, SaHpiResourceIdT, +- SaHpiHsActionT ) __attribute__((used)); ++ SaHpiHsActionT ) __asm__("NewSimulatorRequestHotswapAction") __attribute__((used)); + + static SaErrorT NewSimulatorRequestHotswapAction( void *hnd, SaHpiResourceIdT id, + SaHpiHsActionT act ) { +@@ -2139,7 +2139,7 @@ static SaErrorT NewSimulatorRequestHotsw + static SaErrorT NewSimulatorGetWatchdogInfo(void *, + SaHpiResourceIdT, + SaHpiWatchdogNumT, +- SaHpiWatchdogT *) __attribute__((used)); ++ SaHpiWatchdogT *) __asm__("NewSimulatorGetWatchdogInfo") __attribute__((used)); + + static SaErrorT NewSimulatorGetWatchdogInfo(void *hnd, + SaHpiResourceIdT id, +@@ -2170,7 +2170,7 @@ static SaErrorT NewSimulatorGetWatchdogI + static SaErrorT NewSimulatorSetWatchdogInfo(void *, + SaHpiResourceIdT, + SaHpiWatchdogNumT, +- SaHpiWatchdogT *) __attribute__((used)); ++ SaHpiWatchdogT *) __asm__("NewSimulatorSetWatchdogInfo") __attribute__((used)); + + static SaErrorT NewSimulatorSetWatchdogInfo(void *hnd, + SaHpiResourceIdT id, +@@ -2199,7 +2199,7 @@ static SaErrorT NewSimulatorSetWatchdogI + **/ + static SaErrorT NewSimulatorResetWatchdog(void *, + SaHpiResourceIdT, +- SaHpiWatchdogNumT) __attribute__((used)); ++ SaHpiWatchdogNumT) __asm__("NewSimulatorResetWatchdog") __attribute__((used)); + + static SaErrorT NewSimulatorResetWatchdog(void *hnd, + SaHpiResourceIdT id, +@@ -2229,7 +2229,7 @@ static SaErrorT NewSimulatorResetWatchdo + static SaErrorT NewSimulatorGetFumiSpec(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiFumiSpecInfoT *) __attribute__((used)); ++ SaHpiFumiSpecInfoT *) __asm__("NewSimulatorGetFumiSpec") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiSpec(void *hnd, + SaHpiResourceIdT id, +@@ -2260,7 +2260,7 @@ static SaErrorT NewSimulatorGetFumiSpec( + static SaErrorT NewSimulatorGetFumiServImpact(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiFumiServiceImpactDataT *) __attribute__((used)); ++ SaHpiFumiServiceImpactDataT *) __asm__("NewSimulatorGetFumiServImpact") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiServImpact(void *hnd, + SaHpiResourceIdT id, +@@ -2294,7 +2294,7 @@ static SaErrorT NewSimulatorSetFumiSourc + SaHpiResourceIdT, + SaHpiFumiNumT, + SaHpiBankNumT, +- SaHpiTextBufferT *) __attribute__((used)); ++ SaHpiTextBufferT *) __asm__("NewSimulatorSetFumiSource") __attribute__((used)); + + static SaErrorT NewSimulatorSetFumiSource(void *hnd, + SaHpiResourceIdT id, +@@ -2327,7 +2327,7 @@ static SaErrorT NewSimulatorSetFumiSourc + static SaErrorT NewSimulatorValidateFumiSource(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiBankNumT) __attribute__((used)); ++ SaHpiBankNumT) __asm__("NewSimulatorValidateFumiSource") __attribute__((used)); + + static SaErrorT NewSimulatorValidateFumiSource(void *hnd, + SaHpiResourceIdT id, +@@ -2361,7 +2361,7 @@ static SaErrorT NewSimulatorGetFumiSourc + SaHpiResourceIdT, + SaHpiFumiNumT, + SaHpiBankNumT, +- SaHpiFumiSourceInfoT *) __attribute__((used)); ++ SaHpiFumiSourceInfoT *) __asm__("NewSimulatorGetFumiSource") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiSource(void *hnd, + SaHpiResourceIdT id, +@@ -2400,7 +2400,7 @@ static SaErrorT NewSimulatorGetFumiSourc + SaHpiBankNumT, + SaHpiEntryIdT, + SaHpiEntryIdT *, +- SaHpiFumiComponentInfoT *) __attribute__((used)); ++ SaHpiFumiComponentInfoT *) __asm__("NewSimulatorGetFumiSourceComponent") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiSourceComponent(void *hnd, + SaHpiResourceIdT id, +@@ -2437,7 +2437,7 @@ static SaErrorT NewSimulatorGetFumiTarge + SaHpiResourceIdT, + SaHpiFumiNumT, + SaHpiBankNumT, +- SaHpiFumiBankInfoT *) __attribute__((used)); ++ SaHpiFumiBankInfoT *) __asm__("NewSimulatorGetFumiTarget") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiTarget(void *hnd, + SaHpiResourceIdT id, +@@ -2476,7 +2476,7 @@ static SaErrorT NewSimulatorGetFumiTarge + SaHpiBankNumT, + SaHpiEntryIdT, + SaHpiEntryIdT *, +- SaHpiFumiComponentInfoT *) __attribute__((used)); ++ SaHpiFumiComponentInfoT *) __asm__("NewSimulatorGetFumiTargetComponent") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiTargetComponent(void *hnd, + SaHpiResourceIdT id, +@@ -2511,7 +2511,7 @@ static SaErrorT NewSimulatorGetFumiTarge + static SaErrorT NewSimulatorGetFumiLogicalTarget(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiFumiLogicalBankInfoT *) __attribute__((used)); ++ SaHpiFumiLogicalBankInfoT *) __asm__("NewSimulatorGetFumiLogicalTarget") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiLogicalTarget(void *hnd, + SaHpiResourceIdT id, +@@ -2547,7 +2547,7 @@ static SaErrorT NewSimulatorGetFumiLogic + SaHpiFumiNumT, + SaHpiEntryIdT, + SaHpiEntryIdT *, +- SaHpiFumiLogicalComponentInfoT *) __attribute__((used)); ++ SaHpiFumiLogicalComponentInfoT *) __asm__("NewSimulatorGetFumiLogicalTargetComponent") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiLogicalTargetComponent(void *hnd, + SaHpiResourceIdT id, +@@ -2579,7 +2579,7 @@ static SaErrorT NewSimulatorGetFumiLogic + **/ + static SaErrorT NewSimulatorStartFumiBackup(void *, + SaHpiResourceIdT, +- SaHpiFumiNumT) __attribute__((used)); ++ SaHpiFumiNumT) __asm__("NewSimulatorStartFumiBackup") __attribute__((used)); + + static SaErrorT NewSimulatorStartFumiBackup(void *hnd, + SaHpiResourceIdT id, +@@ -2612,7 +2612,7 @@ static SaErrorT NewSimulatorSetFumiBankO + SaHpiResourceIdT, + SaHpiFumiNumT, + SaHpiBankNumT, +- SaHpiUint32T) __attribute__((used)); ++ SaHpiUint32T) __asm__("NewSimulatorSetFumiBankOrder") __attribute__((used)); + + static SaErrorT NewSimulatorSetFumiBankOrder(void *hnd, + SaHpiResourceIdT id, +@@ -2647,7 +2647,7 @@ static SaErrorT NewSimulatorStartFumiBan + SaHpiResourceIdT, + SaHpiFumiNumT, + SaHpiBankNumT, +- SaHpiBankNumT) __attribute__((used)); ++ SaHpiBankNumT) __asm__("NewSimulatorStartFumiBankCopy") __attribute__((used)); + + static SaErrorT NewSimulatorStartFumiBankCopy(void *hnd, + SaHpiResourceIdT id, +@@ -2680,7 +2680,7 @@ static SaErrorT NewSimulatorStartFumiBan + static SaErrorT NewSimulatorStartFumiInstall(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiBankNumT) __attribute__((used)); ++ SaHpiBankNumT) __asm__("NewSimulatorStartFumiInstall") __attribute__((used)); + + static SaErrorT NewSimulatorStartFumiInstall(void *hnd, + SaHpiResourceIdT id, +@@ -2714,7 +2714,7 @@ static SaErrorT NewSimulatorGetFumiStatu + SaHpiResourceIdT, + SaHpiFumiNumT, + SaHpiBankNumT, +- SaHpiFumiUpgradeStatusT *) __attribute__((used)); ++ SaHpiFumiUpgradeStatusT *) __asm__("NewSimulatorGetFumiStatus") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiStatus(void *hnd, + SaHpiResourceIdT id, +@@ -2747,7 +2747,7 @@ static SaErrorT NewSimulatorGetFumiStatu + static SaErrorT NewSimulatorStartFumiVerification(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiBankNumT) __attribute__((used)); ++ SaHpiBankNumT) __asm__("NewSimulatorStartFumiVerification") __attribute__((used)); + + static SaErrorT NewSimulatorStartFumiVerification(void *hnd, + SaHpiResourceIdT id, +@@ -2776,7 +2776,7 @@ static SaErrorT NewSimulatorStartFumiVer + **/ + static SaErrorT NewSimulatorStartFumiVerificationMain(void *, + SaHpiResourceIdT, +- SaHpiFumiNumT) __attribute__((used)); ++ SaHpiFumiNumT) __asm__("NewSimulatorStartFumiVerificationMain") __attribute__((used)); + + static SaErrorT NewSimulatorStartFumiVerificationMain(void *hnd, + SaHpiResourceIdT id, +@@ -2807,7 +2807,7 @@ static SaErrorT NewSimulatorStartFumiVer + static SaErrorT NewSimulatorCancelFumiUpgrade(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiBankNumT) __attribute__((used)); ++ SaHpiBankNumT) __asm__("NewSimulatorCancelFumiUpgrade") __attribute__((used)); + + static SaErrorT NewSimulatorCancelFumiUpgrade(void *hnd, + SaHpiResourceIdT id, +@@ -2838,7 +2838,7 @@ static SaErrorT NewSimulatorCancelFumiUp + static SaErrorT NewSimulatorGetFumiRollback(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiBoolT *) __attribute__((used)); ++ SaHpiBoolT *) __asm__("NewSimulatorGetFumiRollback") __attribute__((used)); + + static SaErrorT NewSimulatorGetFumiRollback(void *hnd, + SaHpiResourceIdT id, +@@ -2870,7 +2870,7 @@ static SaErrorT NewSimulatorGetFumiRollb + static SaErrorT NewSimulatorSetFumiRollback(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiBoolT) __attribute__((used)); ++ SaHpiBoolT) __asm__("NewSimulatorSetFumiRollback") __attribute__((used)); + + static SaErrorT NewSimulatorSetFumiRollback(void *hnd, + SaHpiResourceIdT id, +@@ -2900,7 +2900,7 @@ static SaErrorT NewSimulatorSetFumiRollb + **/ + static SaErrorT NewSimulatorStartFumiRollback(void *, + SaHpiResourceIdT, +- SaHpiFumiNumT) __attribute__((used)); ++ SaHpiFumiNumT) __asm__("NewSimulatorStartFumiRollback") __attribute__((used)); + + static SaErrorT NewSimulatorStartFumiRollback(void *hnd, + SaHpiResourceIdT id, +@@ -2929,7 +2929,7 @@ static SaErrorT NewSimulatorStartFumiRol + **/ + static SaErrorT NewSimulatorActivateFumi(void *, + SaHpiResourceIdT, +- SaHpiFumiNumT) __attribute__((used)); ++ SaHpiFumiNumT) __asm__("NewSimulatorActivateFumi") __attribute__((used)); + + static SaErrorT NewSimulatorActivateFumi(void *hnd, + SaHpiResourceIdT id, +@@ -2960,7 +2960,7 @@ static SaErrorT NewSimulatorActivateFumi + static SaErrorT NewSimulatorStartFumiActivation(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiBoolT) __attribute__((used)); ++ SaHpiBoolT) __asm__("NewSimulatorStartFumiActivation") __attribute__((used)); + + static SaErrorT NewSimulatorStartFumiActivation(void *hnd, + SaHpiResourceIdT id, +@@ -2992,7 +2992,7 @@ static SaErrorT NewSimulatorStartFumiAct + static SaErrorT NewSimulatorCleanupFumi(void *, + SaHpiResourceIdT, + SaHpiFumiNumT, +- SaHpiBankNumT) __attribute__((used)); ++ SaHpiBankNumT) __asm__("NewSimulatorCleanupFumi") __attribute__((used)); + + static SaErrorT NewSimulatorCleanupFumi(void *hnd, + SaHpiResourceIdT id, +@@ -3023,7 +3023,7 @@ static SaErrorT NewSimulatorCleanupFumi( + static SaErrorT NewSimulatorGetDimiInfo( void *, + SaHpiResourceIdT, + SaHpiDimiNumT, +- SaHpiDimiInfoT *) __attribute__((used)); ++ SaHpiDimiInfoT *) __asm__("NewSimulatorGetDimiInfo") __attribute__((used)); + + static SaErrorT NewSimulatorGetDimiInfo( void *hnd, + SaHpiResourceIdT id, +@@ -3057,7 +3057,7 @@ static SaErrorT NewSimulatorGetDimiTestI + SaHpiResourceIdT, + SaHpiDimiNumT, + SaHpiDimiTestNumT, +- SaHpiDimiTestT *) __attribute__((used)); ++ SaHpiDimiTestT *) __asm__("NewSimulatorGetDimiTestInfo") __attribute__((used)); + + static SaErrorT NewSimulatorGetDimiTestInfo( void *hnd, + SaHpiResourceIdT id, +@@ -3092,7 +3092,7 @@ static SaErrorT NewSimulatorGetDimiTestR + SaHpiResourceIdT, + SaHpiDimiNumT, + SaHpiDimiTestNumT, +- SaHpiDimiReadyT *) __attribute__((used)); ++ SaHpiDimiReadyT *) __asm__("NewSimulatorGetDimiTestReadiness") __attribute__((used)); + + static SaErrorT NewSimulatorGetDimiTestReadiness( void *hnd, + SaHpiResourceIdT id, +@@ -3129,7 +3129,7 @@ static SaErrorT NewSimulatorStartDimiTes + SaHpiDimiNumT, + SaHpiDimiTestNumT, + SaHpiUint8T, +- SaHpiDimiTestVariableParamsT *) __attribute__((used)); ++ SaHpiDimiTestVariableParamsT *) __asm__("NewSimulatorStartDimiTest") __attribute__((used)); + + static SaErrorT NewSimulatorStartDimiTest( void *hnd, + SaHpiResourceIdT id, +@@ -3163,7 +3163,7 @@ static SaErrorT NewSimulatorStartDimiTes + static SaErrorT NewSimulatorCancelDimiTest( void *, + SaHpiResourceIdT, + SaHpiDimiNumT, +- SaHpiDimiTestNumT) __attribute__((used)); ++ SaHpiDimiTestNumT) __asm__("NewSimulatorCancelDimiTest") __attribute__((used)); + + static SaErrorT NewSimulatorCancelDimiTest( void *hnd, + SaHpiResourceIdT id, +@@ -3199,7 +3199,7 @@ static SaErrorT NewSimulatorGetDimiTestS + SaHpiDimiNumT, + SaHpiDimiTestNumT, + SaHpiDimiTestPercentCompletedT *, +- SaHpiDimiTestRunStatusT *) __attribute__((used)); ++ SaHpiDimiTestRunStatusT *) __asm__("NewSimulatorGetDimiTestStatus") __attribute__((used)); + + static SaErrorT NewSimulatorGetDimiTestStatus( void *hnd, + SaHpiResourceIdT id, +@@ -3234,7 +3234,7 @@ static SaErrorT NewSimulatorGetDimiTestR + SaHpiResourceIdT, + SaHpiDimiNumT, + SaHpiDimiTestNumT, +- SaHpiDimiTestResultsT *) __attribute__((used)); ++ SaHpiDimiTestResultsT *) __asm__("NewSimulatorGetDimiTestResults") __attribute__((used)); + + static SaErrorT NewSimulatorGetDimiTestResults( void *hnd, + SaHpiResourceIdT id, +@@ -3263,7 +3263,7 @@ static SaErrorT NewSimulatorGetDimiTestR + * @return HPI error code + **/ + static SaErrorT NewSimulatorSetAutoInsertTimeout( void *, +- SaHpiTimeoutT ) __attribute__((used)); ++ SaHpiTimeoutT ) __asm__("NewSimulatorSetAutoInsertTimeout") __attribute__((used)); + + static SaErrorT NewSimulatorSetAutoInsertTimeout( void *hnd, SaHpiTimeoutT timeout) { + NewSimulator *newsim = VerifyNewSimulator( hnd ); +@@ -3289,7 +3289,7 @@ static SaErrorT NewSimulatorSetAutoInser + * @return HPI error code + **/ + static SaErrorT NewSimulatorGetAutoExtractTimeout( void *, SaHpiResourceIdT, +- SaHpiTimeoutT * ) __attribute__((used)); ++ SaHpiTimeoutT * ) __asm__("NewSimulatorGetAutoExtractTimeout") __attribute__((used)); + + static SaErrorT NewSimulatorGetAutoExtractTimeout( void *hnd, SaHpiResourceIdT id, + SaHpiTimeoutT *timeout ) { +@@ -3319,7 +3319,7 @@ static SaErrorT NewSimulatorGetAutoExtra + * @return HPI error code + **/ + static SaErrorT NewSimulatorSetAutoExtractTimeout( void *, SaHpiResourceIdT, +- SaHpiTimeoutT ) __attribute__((used)); ++ SaHpiTimeoutT ) __asm__("NewSimulatorSetAutoExtractTimeout") __attribute__((used)); + + static SaErrorT NewSimulatorSetAutoExtractTimeout( void *hnd, SaHpiResourceIdT id, + SaHpiTimeoutT timeout ) { +@@ -3350,7 +3350,7 @@ static SaErrorT NewSimulatorSetAutoExtra + * @return HPI error code + **/ + static SaErrorT NewSimulatorGetPowerState( void *, SaHpiResourceIdT, +- SaHpiPowerStateT * ) __attribute__((used)); ++ SaHpiPowerStateT * ) __asm__("NewSimulatorGetPowerState") __attribute__((used)); + + static SaErrorT NewSimulatorGetPowerState( void *hnd, SaHpiResourceIdT id, + SaHpiPowerStateT *state ) { +@@ -3382,7 +3382,7 @@ static SaErrorT NewSimulatorGetPowerStat + * @return HPI error code + **/ + static SaErrorT NewSimulatorSetPowerState( void *, SaHpiResourceIdT, +- SaHpiPowerStateT ) __attribute__((used)); ++ SaHpiPowerStateT ) __asm__("NewSimulatorSetPowerState") __attribute__((used)); + + static SaErrorT NewSimulatorSetPowerState( void *hnd, SaHpiResourceIdT id, + SaHpiPowerStateT state ) { +@@ -3414,7 +3414,7 @@ static SaErrorT NewSimulatorSetPowerStat + * @return HPI error code + **/ + static SaErrorT NewSimulatorGetIndicatorState( void *, SaHpiResourceIdT, +- SaHpiHsIndicatorStateT * ) __attribute__((used)); ++ SaHpiHsIndicatorStateT * ) __asm__("NewSimulatorGetIndicatorState") __attribute__((used)); + + static SaErrorT NewSimulatorGetIndicatorState( void *hnd, SaHpiResourceIdT id, + SaHpiHsIndicatorStateT *state ) { +@@ -3446,7 +3446,7 @@ static SaErrorT NewSimulatorGetIndicator + * @return HPI error code + **/ + static SaErrorT NewSimulatorSetIndicatorState( void *, SaHpiResourceIdT, +- SaHpiHsIndicatorStateT ) __attribute__((used)); ++ SaHpiHsIndicatorStateT ) __asm__("NewSimulatorSetIndicatorState") __attribute__((used)); + + static SaErrorT NewSimulatorSetIndicatorState( void *hnd, SaHpiResourceIdT id, + SaHpiHsIndicatorStateT state ) { +@@ -3479,7 +3479,7 @@ static SaErrorT NewSimulatorSetIndicator + **/ + static SaErrorT NewSimulatorControlParm( void *, + SaHpiResourceIdT, +- SaHpiParmActionT ) __attribute__((used)); ++ SaHpiParmActionT ) __asm__("NewSimulatorControlParm") __attribute__((used)); + + static SaErrorT NewSimulatorControlParm( void *hnd, + SaHpiResourceIdT id, +@@ -3512,7 +3512,7 @@ static SaErrorT NewSimulatorControlParm( + * @return HPI error code + **/ + static SaErrorT NewSimulatorGetResetState( void *, SaHpiResourceIdT, +- SaHpiResetActionT * ) __attribute__((used)); ++ SaHpiResetActionT * ) __asm__("NewSimulatorGetResetState") __attribute__((used)); + + static SaErrorT NewSimulatorGetResetState( void *hnd, SaHpiResourceIdT id, + SaHpiResetActionT *act ) { +@@ -3545,7 +3545,7 @@ static SaErrorT NewSimulatorGetResetStat + **/ + static SaErrorT NewSimulatorSetResetState( void *, + SaHpiResourceIdT, +- SaHpiResetActionT ) __attribute__((used)); ++ SaHpiResetActionT ) __asm__("NewSimulatorSetResetState") __attribute__((used)); + + static SaErrorT NewSimulatorSetResetState( void *hnd, + SaHpiResourceIdT id, +Index: openhpi-3.6.1/plugins/dynamic_simulator/new_sim_file.cpp +=================================================================== +--- openhpi-3.6.1.orig/plugins/dynamic_simulator/new_sim_file.cpp ++++ openhpi-3.6.1/plugins/dynamic_simulator/new_sim_file.cpp +@@ -44,9 +44,9 @@ + ///< Global skip characters for oh_scanner_config + static gchar skip_characters[] = " \t\n"; + ///< Global identifier_first for oh_scanner_config +-static gchar identifier_first[] = G_CSET_a_2_z"_/."G_CSET_A_2_Z; ++static gchar identifier_first[] = G_CSET_a_2_z "_/." G_CSET_A_2_Z; + ///< Global identifier_nth for oh_scanner_config +-static gchar identifier_nth[] = G_CSET_a_2_z"_-0123456789/."G_CSET_A_2_Z; ++static gchar identifier_nth[] = G_CSET_a_2_z "_-0123456789/." G_CSET_A_2_Z; + ///< Global comment signs for oh_scanner_config + static gchar comment_single[] = "#\n"; + +Index: openhpi-3.6.1/plugins/ipmidirect/ipmi.cpp +=================================================================== +--- openhpi-3.6.1.orig/plugins/ipmidirect/ipmi.cpp ++++ openhpi-3.6.1/plugins/ipmidirect/ipmi.cpp +@@ -279,7 +279,7 @@ extern "C" { + // ABI Interface functions + + static void * +-IpmiOpen( GHashTable *, unsigned int, oh_evt_queue * ) __attribute__((used)); ++IpmiOpen( GHashTable *, unsigned int, oh_evt_queue * ) __asm__("IpmiOpen") __attribute__((used)); + + static void * + IpmiOpen( GHashTable *handler_config, unsigned int hid, oh_evt_queue *eventq ) +@@ -388,7 +388,7 @@ IpmiOpen( GHashTable *handler_config, un + + + static void +-IpmiClose( void * ) __attribute__((used)); ++IpmiClose( void * ) __asm__("IpmiClose") __attribute__((used)); + + static void + IpmiClose( void *hnd ) +@@ -436,7 +436,7 @@ IpmiClose( void *hnd ) + + + static SaErrorT +-IpmiGetEvent( void * ) __attribute__((used)); ++IpmiGetEvent( void * ) __asm__("IpmiGetEvent") __attribute__((used)); + + static SaErrorT + IpmiGetEvent( void *hnd ) +@@ -458,7 +458,7 @@ IpmiGetEvent( void *hnd ) + + + static SaErrorT +-IpmiDiscoverResources( void * ) __attribute__((used)); ++IpmiDiscoverResources( void * ) __asm__("IpmiDiscoverResources") __attribute__((used)); + + static SaErrorT + IpmiDiscoverResources( void *hnd ) +@@ -479,7 +479,7 @@ IpmiDiscoverResources( void *hnd ) + + + static SaErrorT +-IpmiSetResourceTag( void *, SaHpiResourceIdT, SaHpiTextBufferT * ) __attribute__((used)); ++IpmiSetResourceTag( void *, SaHpiResourceIdT, SaHpiTextBufferT * ) __asm__("IpmiSetResourceTag") __attribute__((used)); + + static SaErrorT + IpmiSetResourceTag( void *hnd, SaHpiResourceIdT id, SaHpiTextBufferT *tag ) +@@ -499,7 +499,7 @@ IpmiSetResourceTag( void *hnd, SaHpiReso + + + static SaErrorT +-IpmiSetResourceSeverity( void *, SaHpiResourceIdT, SaHpiSeverityT ) __attribute__((used)); ++IpmiSetResourceSeverity( void *, SaHpiResourceIdT, SaHpiSeverityT ) __asm__("IpmiSetResourceSeverity") __attribute__((used)); + + static SaErrorT + IpmiSetResourceSeverity( void *hnd, SaHpiResourceIdT id, SaHpiSeverityT sev ) +@@ -523,7 +523,7 @@ IpmiGetSensorReading( void *, + SaHpiResourceIdT id, + SaHpiSensorNumT num, + SaHpiSensorReadingT *data, +- SaHpiEventStateT *state ) __attribute__((used)); ++ SaHpiEventStateT *state ) __asm__("IpmiGetSensorReading") __attribute__((used)); + + static SaErrorT + IpmiGetSensorReading( void *hnd, +@@ -550,7 +550,7 @@ static SaErrorT + IpmiGetSensorThresholds( void *hnd, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiSensorThresholdsT * ) __attribute__((used)); ++ SaHpiSensorThresholdsT * ) __asm__("IpmiGetSensorThresholds") __attribute__((used)); + + static SaErrorT + IpmiGetSensorThresholds( void *hnd, +@@ -581,7 +581,7 @@ static SaErrorT + IpmiSetSensorThresholds( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- const SaHpiSensorThresholdsT * ) __attribute__((used)); ++ const SaHpiSensorThresholdsT * ) __asm__("IpmiSetSensorThresholds") __attribute__((used)); + + static SaErrorT + IpmiSetSensorThresholds( void *hnd, +@@ -612,7 +612,7 @@ static SaErrorT + IpmiGetSensorEnable( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiBoolT * ) __attribute__((used)); ++ SaHpiBoolT * ) __asm__("IpmiGetSensorEnable") __attribute__((used)); + + static SaErrorT + IpmiGetSensorEnable( void *hnd, +@@ -638,7 +638,7 @@ static SaErrorT + IpmiSetSensorEnable( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiBoolT ) __attribute__((used)); ++ SaHpiBoolT ) __asm__("IpmiSetSensorEnable") __attribute__((used)); + + static SaErrorT + IpmiSetSensorEnable( void *hnd, +@@ -664,7 +664,7 @@ static SaErrorT + IpmiGetSensorEventEnables( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiBoolT * ) __attribute__((used)); ++ SaHpiBoolT * ) __asm__("IpmiGetSensorEventEnables") __attribute__((used)); + + static SaErrorT + IpmiGetSensorEventEnables( void *hnd, +@@ -690,7 +690,7 @@ static SaErrorT + IpmiSetSensorEventEnables( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, +- SaHpiBoolT ) __attribute__((used)); ++ SaHpiBoolT ) __asm__("IpmiSetSensorEventEnables") __attribute__((used)); + + static SaErrorT + IpmiSetSensorEventEnables( void *hnd, +@@ -717,7 +717,7 @@ IpmiGetSensorEventMasks( void *, + SaHpiResourceIdT, + SaHpiSensorNumT, + SaHpiEventStateT *, +- SaHpiEventStateT * ) __attribute__((used)); ++ SaHpiEventStateT * ) __asm__("IpmiGetSensorEventMasks") __attribute__((used)); + + static SaErrorT + IpmiGetSensorEventMasks( void *hnd, +@@ -747,7 +747,7 @@ IpmiSetSensorEventMasks( void *, + SaHpiSensorNumT, + SaHpiSensorEventMaskActionT, + SaHpiEventStateT, +- SaHpiEventStateT ) __attribute__((used)); ++ SaHpiEventStateT ) __asm__("IpmiSetSensorEventMasks") __attribute__((used)); + + static SaErrorT + IpmiSetSensorEventMasks( void *hnd, +@@ -776,7 +776,7 @@ static SaErrorT + IpmiGetControlState( void *, SaHpiResourceIdT, + SaHpiCtrlNumT, + SaHpiCtrlModeT *, +- SaHpiCtrlStateT * ) __attribute__((used)); ++ SaHpiCtrlStateT * ) __asm__("IpmiGetControlState") __attribute__((used)); + + static SaErrorT + IpmiGetControlState( void *hnd, SaHpiResourceIdT id, +@@ -802,7 +802,7 @@ static SaErrorT + IpmiSetControlState( void *, SaHpiResourceIdT, + SaHpiCtrlNumT, + SaHpiCtrlModeT, +- SaHpiCtrlStateT * ) __attribute__((used)); ++ SaHpiCtrlStateT * ) __asm__("IpmiSetControlState") __attribute__((used)); + + static SaErrorT + IpmiSetControlState( void *hnd, SaHpiResourceIdT id, +@@ -828,7 +828,7 @@ static SaErrorT + IpmiGetIdrInfo( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, +- SaHpiIdrInfoT * ) __attribute__((used)); ++ SaHpiIdrInfoT * ) __asm__("IpmiGetIdrInfo") __attribute__((used)); + + static SaErrorT + IpmiGetIdrInfo( void *hnd, +@@ -857,7 +857,7 @@ IpmiGetIdrAreaHeader( void *, + SaHpiIdrAreaTypeT, + SaHpiEntryIdT, + SaHpiEntryIdT *, +- SaHpiIdrAreaHeaderT * ) __attribute__((used)); ++ SaHpiIdrAreaHeaderT * ) __asm__("IpmiGetIdrAreaHeader") __attribute__((used)); + + static SaErrorT + IpmiGetIdrAreaHeader( void *hnd, +@@ -887,7 +887,7 @@ IpmiAddIdrArea( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, + SaHpiIdrAreaTypeT, +- SaHpiEntryIdT * ) __attribute__((used)); ++ SaHpiEntryIdT * ) __asm__("IpmiAddIdrArea") __attribute__((used)); + + static SaErrorT + IpmiAddIdrArea( void *hnd, +@@ -914,7 +914,7 @@ static SaErrorT + IpmiDelIdrArea( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, +- SaHpiEntryIdT ) __attribute__((used)); ++ SaHpiEntryIdT ) __asm__("IpmiDelIdrArea") __attribute__((used)); + + static SaErrorT + IpmiDelIdrArea( void *hnd, +@@ -944,7 +944,7 @@ IpmiGetIdrField( void *, + SaHpiIdrFieldTypeT, + SaHpiEntryIdT, + SaHpiEntryIdT *, +- SaHpiIdrFieldT * ) __attribute__((used)); ++ SaHpiIdrFieldT * ) __asm__("IpmiGetIdrField") __attribute__((used)); + + static SaErrorT + IpmiGetIdrField( void *hnd, +@@ -974,7 +974,7 @@ static SaErrorT + IpmiAddIdrField( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, +- SaHpiIdrFieldT * ) __attribute__((used)); ++ SaHpiIdrFieldT * ) __asm__("IpmiAddIdrField") __attribute__((used)); + + static SaErrorT + IpmiAddIdrField( void *hnd, +@@ -1000,7 +1000,7 @@ static SaErrorT + IpmiSetIdrField( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, +- SaHpiIdrFieldT * ) __attribute__((used)); ++ SaHpiIdrFieldT * ) __asm__("IpmiSetIdrField") __attribute__((used)); + + static SaErrorT + IpmiSetIdrField( void *hnd, +@@ -1027,7 +1027,7 @@ IpmiDelIdrField( void *, + SaHpiResourceIdT, + SaHpiIdrIdT, + SaHpiEntryIdT, +- SaHpiEntryIdT ) __attribute__((used)); ++ SaHpiEntryIdT ) __asm__("IpmiDelIdrField") __attribute__((used)); + + static SaErrorT + IpmiDelIdrField( void *hnd, +@@ -1053,7 +1053,7 @@ IpmiDelIdrField( void *hnd, + static SaErrorT + IpmiGetSelInfo( void *, + SaHpiResourceIdT, +- SaHpiEventLogInfoT * ) __attribute__((used)); ++ SaHpiEventLogInfoT * ) __asm__("IpmiGetSelInfo") __attribute__((used)); + + static SaErrorT + IpmiGetSelInfo( void *hnd, +@@ -1075,7 +1075,7 @@ IpmiGetSelInfo( void *hnd, + + + static SaErrorT +-IpmiSetSelTime( void *, SaHpiResourceIdT, SaHpiTimeT ) __attribute__((used)); ++IpmiSetSelTime( void *, SaHpiResourceIdT, SaHpiTimeT ) __asm__("IpmiSetSelTime") __attribute__((used)); + + static SaErrorT + IpmiSetSelTime( void *hnd, SaHpiResourceIdT id, SaHpiTimeT t ) +@@ -1096,7 +1096,7 @@ IpmiSetSelTime( void *hnd, SaHpiResource + + static SaErrorT + IpmiAddSelEntry( void *, SaHpiResourceIdT, +- const SaHpiEventT * ) __attribute__((used)); ++ const SaHpiEventT * ) __asm__("IpmiAddSelEntry") __attribute__((used)); + + static SaErrorT + IpmiAddSelEntry( void *hnd, SaHpiResourceIdT id, +@@ -1118,7 +1118,7 @@ IpmiAddSelEntry( void *hnd, SaHpiResourc + #ifdef NOTUSED + static SaErrorT + IpmiDelSelEntry( void *, SaHpiResourceIdT, +- SaHpiEventLogEntryIdT ) __attribute__((used)); ++ SaHpiEventLogEntryIdT ) __asm__("IpmiDelSelEntry") __attribute__((used)); + + static SaErrorT + IpmiDelSelEntry( void *hnd, SaHpiResourceIdT id, +@@ -1145,7 +1145,7 @@ IpmiGetSelEntry( void *hnd, SaHpiResourc + SaHpiEventLogEntryIdT *, SaHpiEventLogEntryIdT *, + SaHpiEventLogEntryT *, + SaHpiRdrT *, +- SaHpiRptEntryT * ) __attribute__((used)); ++ SaHpiRptEntryT * ) __asm__("IpmiGetSelEntry") __attribute__((used)); + + static SaErrorT + IpmiGetSelEntry( void *hnd, SaHpiResourceIdT id, +@@ -1170,7 +1170,7 @@ IpmiGetSelEntry( void *hnd, SaHpiResourc + + + static SaErrorT +-IpmiClearSel( void *, SaHpiResourceIdT ) __attribute__((used)); ++IpmiClearSel( void *, SaHpiResourceIdT ) __asm__("IpmiClearSel") __attribute__((used)); + + static SaErrorT + IpmiClearSel( void *hnd, SaHpiResourceIdT id ) +@@ -1190,7 +1190,7 @@ IpmiClearSel( void *hnd, SaHpiResourceId + + static SaErrorT + IpmiHotswapPolicyCancel( void *, SaHpiResourceIdT, +- SaHpiTimeoutT ) __attribute__((used)); ++ SaHpiTimeoutT ) __asm__("IpmiHotswapPolicyCancel") __attribute__((used)); + + static SaErrorT + IpmiHotswapPolicyCancel( void *hnd, SaHpiResourceIdT id, +@@ -1210,7 +1210,7 @@ IpmiHotswapPolicyCancel( void *hnd, SaHp + } + + static SaErrorT +-IpmiSetAutoInsertTimeout( void *, SaHpiTimeoutT ) __attribute__((used)); ++IpmiSetAutoInsertTimeout( void *, SaHpiTimeoutT ) __asm__("IpmiSetAutoInsertTimeout") __attribute__((used)); + + static SaErrorT + IpmiSetAutoInsertTimeout( void *hnd, SaHpiTimeoutT timeout) +@@ -1229,7 +1229,7 @@ IpmiSetAutoInsertTimeout( void *hnd, SaH + + static SaErrorT + IpmiGetAutoExtractTimeout( void *, SaHpiResourceIdT, +- SaHpiTimeoutT * ) __attribute__((used)); ++ SaHpiTimeoutT * ) __asm__("IpmiGetAutoExtractTimeout") __attribute__((used)); + + static SaErrorT + IpmiGetAutoExtractTimeout( void *hnd, SaHpiResourceIdT id, +@@ -1250,7 +1250,7 @@ IpmiGetAutoExtractTimeout( void *hnd, Sa + + static SaErrorT + IpmiSetAutoExtractTimeout( void *, SaHpiResourceIdT, +- SaHpiTimeoutT ) __attribute__((used)); ++ SaHpiTimeoutT ) __asm__("IpmiSetAutoExtractTimeout") __attribute__((used)); + + static SaErrorT + IpmiSetAutoExtractTimeout( void *hnd, SaHpiResourceIdT id, +@@ -1271,7 +1271,7 @@ IpmiSetAutoExtractTimeout( void *hnd, Sa + + static SaErrorT + IpmiGetHotswapState( void *, SaHpiResourceIdT , +- SaHpiHsStateT * ) __attribute__((used)); ++ SaHpiHsStateT * ) __asm__("IpmiGetHotswapState") __attribute__((used)); + + static SaErrorT + IpmiGetHotswapState( void *hnd, SaHpiResourceIdT id, +@@ -1293,7 +1293,7 @@ IpmiGetHotswapState( void *hnd, SaHpiRes + + static SaErrorT + IpmiSetHotswapState( void *, SaHpiResourceIdT, +- SaHpiHsStateT ) __attribute__((used)); ++ SaHpiHsStateT ) __asm__("IpmiSetHotswapState") __attribute__((used)); + + static SaErrorT + IpmiSetHotswapState( void *hnd, SaHpiResourceIdT id, +@@ -1315,7 +1315,7 @@ IpmiSetHotswapState( void *hnd, SaHpiRes + + static SaErrorT + IpmiRequestHotswapAction( void *, SaHpiResourceIdT, +- SaHpiHsActionT ) __attribute__((used)); ++ SaHpiHsActionT ) __asm__("IpmiRequestHotswapAction") __attribute__((used)); + + static SaErrorT + IpmiRequestHotswapAction( void *hnd, SaHpiResourceIdT id, +@@ -1337,7 +1337,7 @@ IpmiRequestHotswapAction( void *hnd, SaH + + static SaErrorT + IpmiGetPowerState( void *, SaHpiResourceIdT, +- SaHpiPowerStateT * ) __attribute__((used)); ++ SaHpiPowerStateT * ) __asm__("IpmiGetPowerState") __attribute__((used)); + + static SaErrorT + IpmiGetPowerState( void *hnd, SaHpiResourceIdT id, +@@ -1359,7 +1359,7 @@ IpmiGetPowerState( void *hnd, SaHpiResou + + static SaErrorT + IpmiSetPowerState( void *, SaHpiResourceIdT, +- SaHpiPowerStateT ) __attribute__((used)); ++ SaHpiPowerStateT ) __asm__("IpmiSetPowerState") __attribute__((used)); + + static SaErrorT + IpmiSetPowerState( void *hnd, SaHpiResourceIdT id, +@@ -1381,7 +1381,7 @@ IpmiSetPowerState( void *hnd, SaHpiResou + + static SaErrorT + IpmiGetIndicatorState( void *, SaHpiResourceIdT, +- SaHpiHsIndicatorStateT * ) __attribute__((used)); ++ SaHpiHsIndicatorStateT * ) __asm__("IpmiGetIndicatorState") __attribute__((used)); + + static SaErrorT + IpmiGetIndicatorState( void *hnd, SaHpiResourceIdT id, +@@ -1403,7 +1403,7 @@ IpmiGetIndicatorState( void *hnd, SaHpiR + + static SaErrorT + IpmiSetIndicatorState( void *, SaHpiResourceIdT, +- SaHpiHsIndicatorStateT ) __attribute__((used)); ++ SaHpiHsIndicatorStateT ) __asm__("IpmiSetIndicatorState") __attribute__((used)); + + static SaErrorT + IpmiSetIndicatorState( void *hnd, SaHpiResourceIdT id, +@@ -1426,7 +1426,7 @@ IpmiSetIndicatorState( void *hnd, SaHpiR + static SaErrorT + IpmiControlParm( void *, + SaHpiResourceIdT, +- SaHpiParmActionT ) __attribute__((used)); ++ SaHpiParmActionT ) __asm__("IpmiControlParm") __attribute__((used)); + + static SaErrorT + IpmiControlParm( void *hnd, +@@ -1449,7 +1449,7 @@ IpmiControlParm( void *hnd, + + static SaErrorT + IpmiGetResetState( void *, SaHpiResourceIdT, +- SaHpiResetActionT * ) __attribute__((used)); ++ SaHpiResetActionT * ) __asm__("IpmiGetResetState") __attribute__((used)); + + static SaErrorT + IpmiGetResetState( void *hnd, SaHpiResourceIdT id, +@@ -1472,7 +1472,7 @@ IpmiGetResetState( void *hnd, SaHpiResou + static SaErrorT + IpmiSetResetState( void *, + SaHpiResourceIdT, +- SaHpiResetActionT ) __attribute__((used)); ++ SaHpiResetActionT ) __asm__("IpmiSetResetState") __attribute__((used)); + + static SaErrorT + IpmiSetResetState( void *hnd, +@@ -1496,7 +1496,7 @@ static SaErrorT + IpmiGetWatchdogInfo(void *, + SaHpiResourceIdT, + SaHpiWatchdogNumT, +- SaHpiWatchdogT *) __attribute__((used)); ++ SaHpiWatchdogT *) __asm__("IpmiGetWatchdogInfo") __attribute__((used)); + + static SaErrorT + IpmiGetWatchdogInfo(void *hnd, +@@ -1517,7 +1517,7 @@ static SaErrorT + IpmiSetWatchdogInfo(void *, + SaHpiResourceIdT, + SaHpiWatchdogNumT, +- SaHpiWatchdogT *) __attribute__((used)); ++ SaHpiWatchdogT *) __asm__("IpmiSetWatchdogInfo") __attribute__((used)); + + static SaErrorT + IpmiSetWatchdogInfo(void *hnd, +@@ -1537,7 +1537,7 @@ IpmiSetWatchdogInfo(void *hnd, + static SaErrorT + IpmiResetWatchdog(void *, + SaHpiResourceIdT, +- SaHpiWatchdogNumT) __attribute__((used)); ++ SaHpiWatchdogNumT) __asm__("IpmiResetWatchdog") __attribute__((used)); + + static SaErrorT + IpmiResetWatchdog(void *hnd, +Index: openhpi-3.6.1/plugins/ipmidirect/ipmi_auth.h +=================================================================== +--- openhpi-3.6.1.orig/plugins/ipmidirect/ipmi_auth.h ++++ openhpi-3.6.1/plugins/ipmidirect/ipmi_auth.h +@@ -32,7 +32,7 @@ class cIpmiAuthSg + { + public: + void *data; /* NULL to terminate. */ +- int len; ++ unsigned int len; + }; + + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/fix-narrowing-warning.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/fix-narrowing-warning.patch new file mode 100644 index 000000000..4c545708f --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/files/fix-narrowing-warning.patch @@ -0,0 +1,20 @@ +Fix + +sensor_factors_000.cpp:66:5: error: non-constant-expression cannot be narrowed from type 'int' to 'unsigned char' in initializer list [-Wc++11-narrowing] +((dRExp << 4) & 0xf0) | (dBExp & 0x0f ), ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +Index: openhpi-3.6.1/plugins/ipmidirect/t/sensor_factors_000.cpp +=================================================================== +--- openhpi-3.6.1.orig/plugins/ipmidirect/t/sensor_factors_000.cpp ++++ openhpi-3.6.1/plugins/ipmidirect/t/sensor_factors_000.cpp +@@ -63,7 +63,7 @@ static cIpmiSdr sdr = + dB & 0xff, + ((dB >> 2) & 0xc0) | (dAccuracy & 0x3f), + ((dAccuracy >> 2) & 0xf0) | ((dAccuracyExp << 2) & 0x0c), +- ((dRExp << 4) & 0xf0) | (dBExp & 0x0f ), ++ (unsigned char)(((dRExp << 4) & 0xf0) | (dBExp & 0x0f )), + 0, + 0, + } diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/openhpi_3.6.1.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/openhpi_3.6.1.bb index b9b0437b2..ecf71d70f 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/openhpi_3.6.1.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/openhpi/openhpi_3.6.1.bb @@ -20,9 +20,12 @@ SECTION = "net" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://COPYING;md5=e3c772a32386888ccb5ae1c0ba95f1a4" -DEPENDS = "net-snmp libxml2 ncurses openssl glib-2.0 popt e2fsprogs" +DEPENDS = "net-snmp libxml2 ncurses openssl glib-2.0 popt e2fsprogs autoconf-archive-native" SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.gz \ + file://openhpi.init \ + file://openhpid.service \ + file://run-ptest \ file://openhpi-netsnmp-cross-compile.patch \ file://openhpi-sysfs-cross-compile.patch \ file://openhpi-libxml2-cross-compile.patch \ @@ -35,11 +38,13 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.gz \ file://openhpi-invalide-session.patch \ file://openhpi-use-serial-tests-config-needed-by-ptest.patch \ file://openhpi-fix-alignment-issue.patch \ - \ - file://openhpi.init \ - file://openhpid.service \ - file://run-ptest \ -" + file://0001-Fix-build-failures-with-gcc7.patch \ + file://c++11.patch \ + file://clang-c++11.patch \ + file://fix-narrowing-warning.patch \ + file://0001-plugins-Check-for-PTHREAD_RECURSIVE_MUTEX_INITIALIZE.patch \ + file://0001-ipmidirect-Replace-__STRING.patch \ + " SRC_URI[md5sum] = "4718b16e0f749b5ad214a9b04f45dd23" SRC_URI[sha256sum] = "e0a810cb401c4bdcfc9551f2e6afd5a8ca4b411f5ee3bc60c19f82fd6e84a3dc" @@ -53,9 +58,10 @@ FILES_${PN}-libs = "${libdir}/${BPN}/*.so /usr/lib/${BPN}/*.so" INSANE_SKIP_${PN}-libs = "dev-so" RDEPENDS_${PN} += "${PN}-libs" -PACKAGECONFIG ??= "libgcrypt" +PACKAGECONFIG ??= "libgcrypt non32bit" PACKAGECONFIG[sysfs] = "--enable-sysfs,--disable-sysfs,sysfsutils," PACKAGECONFIG[libgcrypt] = "--enable-encryption,--disable-encryption,libgcrypt," +PACKAGECONFIG[non32bit] = "--enable-non32bit-int,--disable-non32bit-int,," do_install_append () { install -m 0755 -d ${D}${sysconfdir}/${BPN} diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-Remove-unused-variables.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-Remove-unused-variables.patch deleted file mode 100644 index 1c88b81cd..000000000 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-Remove-unused-variables.patch +++ /dev/null @@ -1,43 +0,0 @@ -From a441a75fbb8451268a8a57616c7158cddc1823aa Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Sat, 22 Apr 2017 12:40:19 -0700 -Subject: [PATCH] Remove unused variables - -Fixes build errors with gcc7 e.g. - -../opensaf-5.2.0/src/amf/amfd/imm.cc: In member function 'bool ImmObjCreate::immobj_update_required()': -../opensaf-5.2.0/src/amf/amfd/imm.cc:2174:28: error: unused variable 'pos' [-Werror=unused-variable] - std::string::size_type pos; - ^~~ -../opensaf-5.2.0/src/amf/amfd/imm.cc:2215:28: error: unused variable 'pos' [-Werror=unused-variable] - std::string::size_type pos; - ^~~ - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/amf/amfd/imm.cc | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/src/amf/amfd/imm.cc b/src/amf/amfd/imm.cc -index 7932364..4f47b65 100644 ---- a/src/amf/amfd/imm.cc -+++ b/src/amf/amfd/imm.cc -@@ -2171,7 +2171,6 @@ bool ImmObjCreate::immobj_update_required() { - if (class_type == AVSV_SA_AMF_SI_ASSIGNMENT) { - std::string su_name; - std::string sisu_name; -- std::string::size_type pos; - while ((attribute = attrValues_[i++]) != nullptr) { - if (!strcmp(attribute->attrName, "safSISU")) { - sisu_name = Amf::to_string( -@@ -2212,7 +2211,6 @@ bool ImmObjCreate::immobj_update_required() { - } else if (class_type == AVSV_SA_AMF_CSI_ASSIGNMENT) { - std::string comp_name; - std::string csicomp_name; -- std::string::size_type pos; - AVD_CSI *csi = nullptr; - AVD_COMP *comp = nullptr; - AVD_COMP_CSI_REL *compcsi = nullptr; --- -2.12.2 - diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-immpbe_dump.cc-Use-sys-wait.h-instead-of-wait.h.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-immpbe_dump.cc-Use-sys-wait.h-instead-of-wait.h.patch new file mode 100644 index 000000000..76c47c658 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-immpbe_dump.cc-Use-sys-wait.h-instead-of-wait.h.patch @@ -0,0 +1,34 @@ +From 508ea7c0d67243feb1684eaa83569cb687561d64 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 15 Sep 2017 10:09:03 -0700 +Subject: [PATCH] immpbe_dump.cc: Use sys/wait.h instead of wait.h + +Fixes +redirecting incorrect #include <wait.h> to <sys/wait.h> + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/imm/common/immpbe_dump.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/imm/common/immpbe_dump.cc b/src/imm/common/immpbe_dump.cc +index 100222f37..33e47ce3c 100644 +--- a/src/imm/common/immpbe_dump.cc ++++ b/src/imm/common/immpbe_dump.cc +@@ -26,12 +26,12 @@ + #include <stdlib.h> + #include <stdio.h> + #include <time.h> +-#include <wait.h> + #include <unistd.h> + #include <iostream> + #include <sstream> + #include <stdint.h> + #include <sys/stat.h> ++#include <sys/wait.h> + #include <libgen.h> + + #include <saAis.h> +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-src-Add-missing-header-limits.h-for-_POSIX_HOST_NAME.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-src-Add-missing-header-limits.h-for-_POSIX_HOST_NAME.patch new file mode 100644 index 000000000..4a2a825f9 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf/0001-src-Add-missing-header-limits.h-for-_POSIX_HOST_NAME.patch @@ -0,0 +1,122 @@ +From 6442b57a855e273aa5a3d93e8596783cea128073 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 15 Sep 2017 09:39:40 -0700 +Subject: [PATCH] src: Add missing header limits.h for _POSIX_HOST_NAME_MAX + +Use _GNU_SOURCE instead of libc internal __USE_GNU +Do not use the deprecated headers under include/sys + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/base/os_defs.h | 5 +++-- + src/mds/mds_dt_tcp.c | 1 - + src/mds/mds_dt_tcp_disc.h | 2 +- + src/mds/mds_dt_tipc.c | 1 - + src/mds/mds_dt_tipc.h | 2 +- + src/mds/mds_dt_trans.c | 1 - + src/ntf/ntfd/NtfLogger.cc | 2 +- + 7 files changed, 6 insertions(+), 8 deletions(-) + +diff --git a/src/base/os_defs.h b/src/base/os_defs.h +index 50a9bf5fc..af6842863 100644 +--- a/src/base/os_defs.h ++++ b/src/base/os_defs.h +@@ -47,17 +47,18 @@ + #include <sys/stat.h> + #include <sys/msg.h> /* Added for message-queues : PM : 28/10/03 */ + #include <syslog.h> +-#ifndef __USE_GNU ++#include <limits.h> ++#ifndef _GNU_SOURCE + struct msgbuf { + long int mtype; + char mtext[1]; + }; + #endif /* else defined in <sys/msg.h> */ + #include <sys/time.h> +-#include <sys/fcntl.h> + #include <sys/socket.h> + #include <netinet/in.h> + ++#include <fcntl.h> + #include <signal.h> + #include <pthread.h> + +diff --git a/src/mds/mds_dt_tcp.c b/src/mds/mds_dt_tcp.c +index 1407eb1ab..a87c22faa 100644 +--- a/src/mds/mds_dt_tcp.c ++++ b/src/mds/mds_dt_tcp.c +@@ -27,7 +27,6 @@ + + #include <stdlib.h> + #include <sched.h> +-#include <sys/poll.h> + #include <poll.h> + #include <sys/types.h> + #include <unistd.h> +diff --git a/src/mds/mds_dt_tcp_disc.h b/src/mds/mds_dt_tcp_disc.h +index a6249d73e..574f52681 100644 +--- a/src/mds/mds_dt_tcp_disc.h ++++ b/src/mds/mds_dt_tcp_disc.h +@@ -24,7 +24,7 @@ + #include "base/ncssysf_tsk.h" + #include "base/ncssysf_mem.h" + #include "mds_dt_tcp_disc.h" +-#include "sys/poll.h" ++#include <poll.h> + + /* mds_indentifire + mds_version + msg_type + scope_type + server_type + + server_instance_lower + server_instance_upper + sub_ref_val + sub_ref_val + +diff --git a/src/mds/mds_dt_tipc.c b/src/mds/mds_dt_tipc.c +index 37745e7f0..9b3255567 100644 +--- a/src/mds/mds_dt_tipc.c ++++ b/src/mds/mds_dt_tipc.c +@@ -35,7 +35,6 @@ + #include <stdbool.h> + #include <stdlib.h> + #include <sched.h> +-#include <sys/poll.h> + #include <poll.h> + #include <sys/types.h> + #include <unistd.h> +diff --git a/src/mds/mds_dt_tipc.h b/src/mds/mds_dt_tipc.h +index e73a11b09..401d208c2 100644 +--- a/src/mds/mds_dt_tipc.h ++++ b/src/mds/mds_dt_tipc.h +@@ -32,7 +32,7 @@ + #include <assert.h> + #include <string.h> + #include <sys/param.h> +-#include <sys/poll.h> ++#include <poll.h> + #include <netdb.h> + #include <errno.h> + #include <fcntl.h> +diff --git a/src/mds/mds_dt_trans.c b/src/mds/mds_dt_trans.c +index 6f621e04e..5aacbd33e 100644 +--- a/src/mds/mds_dt_trans.c ++++ b/src/mds/mds_dt_trans.c +@@ -26,7 +26,6 @@ + #include "mds_core.h" + #include "base/osaf_utility.h" + +-#include <sys/poll.h> + #include <poll.h> + + #define MDS_PROT_TCP 0xA0 +diff --git a/src/ntf/ntfd/NtfLogger.cc b/src/ntf/ntfd/NtfLogger.cc +index 84014b578..31b1ccc6c 100644 +--- a/src/ntf/ntfd/NtfLogger.cc ++++ b/src/ntf/ntfd/NtfLogger.cc +@@ -20,7 +20,7 @@ + * INCLUDE FILES + * ======================================================================== + */ +-#include <sys/poll.h> ++#include <poll.h> + + #include "base/osaf_utility.h" + #include <saAis.h> +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.2.0.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.17.07.bb index be79ba8cb..74483d778 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.2.0.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/opensaf/opensaf_5.17.07.bb @@ -22,10 +22,11 @@ SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}" SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/releases/${BPN}-${PV}.tar.gz \ file://0001-configure-Pass-linker-specific-options-with-Wl.patch \ file://0001-configure-Disable-format-overflow-if-supported-by-gc.patch \ - file://0001-Remove-unused-variables.patch \ + file://0001-src-Add-missing-header-limits.h-for-_POSIX_HOST_NAME.patch \ + file://0001-immpbe_dump.cc-Use-sys-wait.h-instead-of-wait.h.patch \ " -SRC_URI[md5sum] = "08991fd467ae9dcea3c8747be8e3981e" -SRC_URI[sha256sum] = "903478244afe37e329be93050f1d48fa18c84ea17862134c4217b920e267a04a" +SRC_URI[md5sum] = "125bcd9aabd7412aedcbfbf73f4e6196" +SRC_URI[sha256sum] = "3fb2239bb2c9328c8b45368ff8d8de979ea286a27edc9871d218200e88bb91cc" inherit autotools useradd systemd pkgconfig diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/0001-Check-for-glibc-before-setting-CANT_USE_SEND_RECV_MS.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/0001-Check-for-glibc-before-setting-CANT_USE_SEND_RECV_MS.patch new file mode 100644 index 000000000..6b86e3925 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/0001-Check-for-glibc-before-setting-CANT_USE_SEND_RECV_MS.patch @@ -0,0 +1,26 @@ +From 63619acf25151d4dade6d65732722ec4a710a5ac Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 15 Jul 2017 09:54:25 -0700 +Subject: [PATCH] Check for glibc before setting CANT_USE_SEND_RECV_MSG + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/util/sys_defs.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/util/sys_defs.h b/src/util/sys_defs.h +index f720e2a..7314c63 100644 +--- a/src/util/sys_defs.h ++++ b/src/util/sys_defs.h +@@ -813,7 +813,7 @@ extern int initgroups(const char *, int); + #define KERNEL_VERSION(a,b,c) (LINUX_VERSION_CODE + 1) + #endif + #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,2,0)) \ +- || (__GLIBC__ < 2) ++ || (defined(__GLIBC__) && (__GLIBC__ < 2)) + #define CANT_USE_SEND_RECV_MSG + #define DEF_SMTP_CACHE_DEMAND 0 + #else +-- +2.13.3 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/0001-makedefs-Use-native-compiler-to-build-makedefs.test.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/0001-makedefs-Use-native-compiler-to-build-makedefs.test.patch new file mode 100644 index 000000000..763a4a9b9 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/0001-makedefs-Use-native-compiler-to-build-makedefs.test.patch @@ -0,0 +1,64 @@ +From a0d0de10e4c5ab55bc2fa48798079e2876b1211d Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 26 Aug 2017 10:29:37 -0700 +Subject: [PATCH] makedefs: Use native compiler to build makedefs.test + +Its a binary used during build + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + makedefs | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/makedefs b/makedefs +index 9fd4bc2..5ee7747 100644 +--- a/makedefs ++++ b/makedefs +@@ -526,7 +526,7 @@ int main(int argc, char **argv) + exit(0); + } + EOF +- ${CC-gcc} -o makedefs.test makedefs.test.c || exit 1 ++ ${BUILD_CC-gcc} -o makedefs.test makedefs.test.c || exit 1 + rm -f makedefs.test makedefs.test.[co] + fi;; + esac +@@ -762,7 +762,7 @@ int main(int argc, char **argv) + exit(0); + } + EOF +- ${CC-gcc} -o makedefs.test makedefs.test.c || exit 1 ++ ${BUILD_CC-gcc} -o makedefs.test makedefs.test.c || exit 1 + ./makedefs.test 2>/dev/null || + CCARGS="$CCARGS -DNO_SIGSETJMP" + rm -f makedefs.test makedefs.test.[co] +@@ -796,7 +796,7 @@ int main(int argc, char **argv) + &error) != 14); + } + EOF +- ${CC-gcc} -o makedefs.test makedefs.test.c $icu_cppflags \ ++ ${BUILD_CC-gcc} -o makedefs.test makedefs.test.c $icu_cppflags \ + $icu_ldflags >/dev/null 2>&1 + if ./makedefs.test 2>/dev/null ; then + CCARGS="$CCARGS $icu_cppflags" +@@ -911,7 +911,7 @@ int main(void) + exit(ferror(stdout) ? 1 : 0); + } + EOF +- eval ${CC-gcc} ${CCARGS} -o makedefs.test makedefs.test.c || exit 1 ++ eval ${BUILD_CC-gcc} ${CCARGS} -o makedefs.test makedefs.test.c || exit 1 + ./makedefs.test || exit 1 + rm -f makedefs.test makedefs.test.[co] + } +@@ -1067,7 +1067,7 @@ int main(void) + exit(ferror(stdout) ? 1 : 0); + } + EOF +- eval ${CC-gcc} ${CCARGS} -o makedefs.test makedefs.test.c || exit 1 ++ eval ${BUILD_CC-gcc} ${CCARGS} -o makedefs.test makedefs.test.c || exit 1 + parm_val=`./makedefs.test` || exit 1 + rm -f makedefs.test makedefs.test.[co] + eval ${parm_name}=\""\$parm_val"\" +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/icu-config.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/icu-config.patch new file mode 100644 index 000000000..9bd9c2f03 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/icu-config.patch @@ -0,0 +1,21 @@ +do not entertain cppflags from icu, this is because +icu-config feeds the -I path without sysroot which +caused native headers to be included and build is +corrupted in any case its just adding -I/usr/include +to the CCARGS which we loose nothing if its not +entertained. + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +Index: postfix-3.2.2/makedefs +=================================================================== +--- postfix-3.2.2.orig/makedefs ++++ postfix-3.2.2/makedefs +@@ -799,7 +799,6 @@ EOF + ${BUILD_CC-gcc} -o makedefs.test makedefs.test.c $icu_cppflags \ + $icu_ldflags >/dev/null 2>&1 + if ./makedefs.test 2>/dev/null ; then +- CCARGS="$CCARGS $icu_cppflags" + SYSLIBS="$SYSLIBS $icu_ldflags" + else + CCARGS="$CCARGS -DNO_EAI" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/postfix-install.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/postfix-install.patch new file mode 100644 index 000000000..45479bd52 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/files/postfix-install.patch @@ -0,0 +1,26 @@ +Index: postfix-3.2.2/postfix-install +=================================================================== +--- postfix-3.2.2.orig/postfix-install ++++ postfix-3.2.2/postfix-install +@@ -843,7 +843,7 @@ IFS="$BACKUP_IFS" + # the wrong place when Postfix is being upgraded. + + case "$mail_version" in +-"") mail_version="`$POSTCONF -dhx mail_version`" || exit 1 ++"") mail_version="`$POSTCONF -c $CONFIG_DIRECTORY -dhx mail_version`" || exit 1 + esac + + # Undo MAIL_VERSION expansion at the end of a parameter value. If +Index: postfix-3.2.2/Makefile.in +=================================================================== +--- postfix-3.2.2.orig/Makefile.in ++++ postfix-3.2.2/Makefile.in +@@ -20,7 +20,7 @@ META = meta/main.cf.proto meta/master.cf + EXPAND = sed -e "s;\$${LIB_PREFIX};$(LIB_PREFIX);" \ + -e "s;\$${LIB_SUFFIX};$(LIB_SUFFIX);" + SHLIB_DIR_OVERRIDE = \ +- $${shlib_directory:-`$(SHLIB_ENV) bin/postconf -dhx shlib_directory`} ++ $${shlib_directory:-`$(SHLIB_ENV) $(POSTCONF) -dhx shlib_directory`} + + default: update + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix.inc b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix.inc index 4c794ffd6..a588bd347 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix.inc +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix.inc @@ -60,20 +60,24 @@ export AUXLIBS-ldap = "\ export CCARGS-ldap_class-native = "" export AUXLIBS-ldap_class-native = "" +export CCARGS-nonis_libc-musl = "-DNO_NIS" +export CCARGS-nonis = "" + # SASL support -DUSE_LDAP_SASL -DUSE_SASL_AUTH # current openldap didn't enable SASL export CCARGS-sasl = "\ - ${@bb.utils.contains('DISTRO_FEATURES', 'sasl', '-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I=/usr/include/sasl', '', d)}" + ${@bb.utils.contains('DISTRO_FEATURES', 'sasl', '-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I${STAGING_INCDIR}/sasl', '', d)}" export AUXLIBS-sasl = "\ ${@bb.utils.contains('DISTRO_FEATURES', 'sasl', '-lsasl2', '', d)}" export CCARGS-sasl_class-native = "" export AUXLIBS-sasl_class-native = "" # PCRE, TLS support default -export CCARGS = "${CFLAGS} -DHAS_PCRE -DUSE_TLS ${CCARGS-ldap} ${CCARGS-sasl}" +export CCARGS = "${CFLAGS} -DHAS_PCRE -DUSE_TLS -I${STAGING_INCDIR}/openssl ${CCARGS-ldap} ${CCARGS-sasl} ${CCARGS-nonis}" export AUXLIBS = "-lpcre -lssl -lcrypto ${AUXLIBS-sasl} ${AUXLIBS-ldap}" export POSTCONF = "${STAGING_DIR_NATIVE}${sbindir_native}/postconf" +export CCARGS-nonis_libc-musl = "-DNO_NIS" # OPT,DEBUG is aready in CFLAGS # ignore the OPTS="CC=$CC" in Makefile it will not use the CC=$CC $CCARGS EXTRA_OEMAKE += "OPT= DEBUG= OPTS= " diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.1.1.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.1.1.bb deleted file mode 100644 index dbbe24ca3..000000000 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.1.1.bb +++ /dev/null @@ -1,4 +0,0 @@ -require postfix.inc - -SRC_URI[md5sum] = "40d72ea143af7ab0038c2cee1f483707" -SRC_URI[sha256sum] = "3deda4c34631970490b1b5fbb559905f93531bf1c7eb00e38b0d0deb1dba9982" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.2.2.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.2.2.bb new file mode 100644 index 000000000..439ede9b6 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/postfix/postfix_3.2.2.bb @@ -0,0 +1,18 @@ +require postfix.inc + +SRC_URI = "ftp://ftp.porcupine.org/mirrors/postfix-release/official/postfix-${PV}.tar.gz \ + file://makedefs.patch \ + file://install.patch \ + file://main.cf_2.0 \ + file://postfix \ + file://internal_recipient \ + file://postfix.service \ + file://aliasesdb \ + file://check_hostname.sh \ + file://0001-Check-for-glibc-before-setting-CANT_USE_SEND_RECV_MS.patch \ + file://0001-makedefs-Use-native-compiler-to-build-makedefs.test.patch \ + file://postfix-install.patch \ + file://icu-config.patch \ + " +SRC_URI[md5sum] = "aea073a9b0bea5bdb590460a270a4aa0" +SRC_URI[sha256sum] = "d06849418d119d09366997b2b481bb23f737629769b4e4a52da42fb3ad8b0576" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/proftpd/files/build_fixup.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/proftpd/files/build_fixup.patch index 19617a6bb..9816d4d22 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/proftpd/files/build_fixup.patch +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/proftpd/files/build_fixup.patch @@ -9,11 +9,11 @@ redefine PR_RUN_DIR as ${localstatedir}/run Signed-off-By: Armin Kuster <akuster808@gmail.com> -Index: proftpd-1.3.5/Make.rules.in +Index: proftpd-1.3.6/Make.rules.in =================================================================== ---- proftpd-1.3.5.orig/Make.rules.in -+++ proftpd-1.3.5/Make.rules.in -@@ -29,9 +29,9 @@ INSTALL=@INSTALL@ +--- proftpd-1.3.6.orig/Make.rules.in ++++ proftpd-1.3.6/Make.rules.in +@@ -30,9 +30,9 @@ INSTALL=@INSTALL@ INSTALL_STRIP=@INSTALL_STRIP@ INSTALL_USER=@install_user@ INSTALL_GROUP=@install_group@ @@ -26,10 +26,10 @@ Index: proftpd-1.3.5/Make.rules.in RM=rm -f SHELL=@CONFIG_SHELL@ -Index: proftpd-1.3.5/Makefile.in +Index: proftpd-1.3.6/Makefile.in =================================================================== ---- proftpd-1.3.5.orig/Makefile.in -+++ proftpd-1.3.5/Makefile.in +--- proftpd-1.3.6.orig/Makefile.in ++++ proftpd-1.3.6/Makefile.in @@ -105,7 +105,6 @@ check: proftpd$(EXEEXT) $(DESTDIR)$(localedir) $(DESTDIR)$(includedir) $(DESTDIR)$(includedir)/proftpd $(DESTDIR)$(libdir) $(DESTDIR)$(pkgconfigdir) $(DESTDIR)$(libdir)/proftpd $(DESTDIR)$(libexecdir) $(DESTDIR)$(localstatedir) $(DESTDIR)$(sysconfdir) $(DESTDIR)$(bindir) $(DESTDIR)$(sbindir) $(DESTDIR)$(mandir) $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man8: @if [ ! -d $@ ]; then \ @@ -60,11 +60,11 @@ Index: proftpd-1.3.5/Makefile.in $(top_srcdir)/sample-configurations/basic.conf \ $(DESTDIR)$(sysconfdir)/proftpd.conf ; \ fi -Index: proftpd-1.3.5/configure +Index: proftpd-1.3.6/configure =================================================================== ---- proftpd-1.3.5.orig/configure -+++ proftpd-1.3.5/configure -@@ -38255,7 +38255,7 @@ _ACEOF +--- proftpd-1.3.6.orig/configure ++++ proftpd-1.3.6/configure +@@ -41777,7 +41777,7 @@ _ACEOF cat >>confdefs.h <<_ACEOF @@ -72,9 +72,9 @@ Index: proftpd-1.3.5/configure +#define PR_RUN_DIR "`eval echo "${localstatedir}"/run/`" _ACEOF - cat >>confdefs.h <<_ACEOF -@@ -38263,7 +38263,7 @@ cat >>confdefs.h <<_ACEOF - _ACEOF + +@@ -41787,7 +41787,7 @@ _ACEOF + cat >>confdefs.h <<_ACEOF -#define PR_PID_FILE_PATH "`eval echo "${localstatedir}/proftpd.pid"`" @@ -82,25 +82,25 @@ Index: proftpd-1.3.5/configure _ACEOF -Index: proftpd-1.3.5/configure.in +Index: proftpd-1.3.6/configure.in =================================================================== ---- proftpd-1.3.5.orig/configure.in -+++ proftpd-1.3.5/configure.in -@@ -2971,8 +2971,8 @@ locale_dir="`eval echo ${locale_dir}`" - AC_DEFINE_UNQUOTED(PR_LOCALE_DIR, "`eval echo "${locale_dir}"`") +--- proftpd-1.3.6.orig/configure.in ++++ proftpd-1.3.6/configure.in +@@ -3833,8 +3833,8 @@ locale_dir="`eval echo ${locale_dir}`" + AC_DEFINE_UNQUOTED(PR_LOCALE_DIR, "`eval echo "${locale_dir}"`", [Define the locale directory]) - AC_DEFINE_UNQUOTED(PR_RUN_DIR, "`eval echo "${localstatedir}"`") --AC_DEFINE_UNQUOTED(PR_CONFIG_FILE_PATH, "`eval echo "${sysconfdir}/proftpd.conf"`") --AC_DEFINE_UNQUOTED(PR_PID_FILE_PATH, "`eval echo "${localstatedir}/proftpd.pid"`") -+AC_DEFINE_UNQUOTED(PR_CONFIG_FILE_PATH, "`eval echo "${sysconfdir}/run/proftpd.conf"`") -+AC_DEFINE_UNQUOTED(PR_PID_FILE_PATH, "`eval echo "${localstatedir}/run/proftpd.pid"`") + AC_DEFINE_UNQUOTED(PR_RUN_DIR, "`eval echo "${localstatedir}"`", [Define the run directory]) +-AC_DEFINE_UNQUOTED(PR_CONFIG_FILE_PATH, "`eval echo "${sysconfdir}/proftpd.conf"`", [Define the configuration file path]) +-AC_DEFINE_UNQUOTED(PR_PID_FILE_PATH, "`eval echo "${localstatedir}/proftpd.pid"`", [Define the PID file path]) ++AC_DEFINE_UNQUOTED(PR_CONFIG_FILE_PATH, "`eval echo "${sysconfdir}/run/proftpd.conf"`", [Define the configuration file path]) ++AC_DEFINE_UNQUOTED(PR_PID_FILE_PATH, "`eval echo "${localstatedir}/run/proftpd.pid"`", [Define the PID file path]) prefix="$pr_saved_prefix" exec_prefix="$pr_saved_exec_prefix" -Index: proftpd-1.3.5/lib/libcap/Makefile +Index: proftpd-1.3.6/lib/libcap/Makefile =================================================================== ---- proftpd-1.3.5.orig/lib/libcap/Makefile -+++ proftpd-1.3.5/lib/libcap/Makefile +--- proftpd-1.3.6.orig/lib/libcap/Makefile ++++ proftpd-1.3.6/lib/libcap/Makefile @@ -26,7 +26,7 @@ OBJS=$(addsuffix .o, $(FILES)) all: $(LIBNAME) diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/proftpd/proftpd_1.3.5b.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/proftpd/proftpd_1.3.6.bb index 73efac2fb..409947265 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/proftpd/proftpd_1.3.5b.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/proftpd/proftpd_1.3.6.bb @@ -13,9 +13,8 @@ SRC_URI = "ftp://ftp.proftpd.org/distrib/source/${BPN}-${PV}.tar.gz \ file://build_fixup.patch \ file://proftpd.service \ " - -SRC_URI[md5sum] = "f7b8e3a383b34a894c2502db74ccccde" -SRC_URI[sha256sum] = "afc1789f2478acf88dfdc7d70da90a4fa2786d628218e9574273295d044b4fc8" +iSRC_URI[md5sum] = "13270911c42aac842435f18205546a1b" +SRC_URI[sha256sum] = "91ef74b143495d5ff97c4d4770c6804072a8c8eb1ad1ecc8cc541b40e152ecaf" inherit autotools-brokensep useradd update-rc.d systemd @@ -63,6 +62,8 @@ PACKAGECONFIG[auth] = "--enable-auth-file, --disable-auth-file" # proftpd uses libltdl which currently makes configuring using # autotools.bbclass a pain... do_configure () { + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S} + install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S} oe_runconf cp ${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool ${S}/libtool } diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/radvd/radvd_2.14.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/radvd/radvd_2.14.bb deleted file mode 100644 index 2525249cb..000000000 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/radvd/radvd_2.14.bb +++ /dev/null @@ -1,5 +0,0 @@ - -require radvd.inc - -SRC_URI[md5sum] = "acd3883dece2c7888d15596b05c9fae4" -SRC_URI[sha256sum] = "46d31c05daea11c3d1e3dc092997d3631b3bc72b20a4f279b05304b83dbd7aa8" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/radvd/radvd_2.17.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/radvd/radvd_2.17.bb new file mode 100644 index 000000000..4baea01d0 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/radvd/radvd_2.17.bb @@ -0,0 +1,5 @@ + +require radvd.inc + +SRC_URI[md5sum] = "64ee3fdb5544bcddef1c6cd80d77fa0a" +SRC_URI[sha256sum] = "53757e7f2164899e1145482f1ae91829600a6e2f6fec29cfb3b350a3bb45bd5d" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-configure-Check-for-Wno-error-format-truncation-comp.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-configure-Check-for-Wno-error-format-truncation-comp.patch new file mode 100644 index 000000000..0c0a3aad1 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-configure-Check-for-Wno-error-format-truncation-comp.patch @@ -0,0 +1,116 @@ +From 14d469bc82c758116aef7d549abd49c131b4170f Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 22 Apr 2017 11:54:57 -0700 +Subject: [PATCH] configure: Check for -Wno-error=format-truncation compiler + option + +If this option is supported by compiler then disable it ( gcc7+) +Fixes +client.c:834:23: error: '%s' directive output may be truncated writing up to 1023 bytes into a region of size 1010 [-Werror=format-truncation=] + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + configure.ac | 3 +- + m4/ax_check_compile_flag.m4 | 74 +++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 76 insertions(+), 1 deletion(-) + create mode 100644 m4/ax_check_compile_flag.m4 + +Index: squid-3.5.26/configure.ac +=================================================================== +--- squid-3.5.26.orig/configure.ac ++++ squid-3.5.26/configure.ac +@@ -26,6 +26,7 @@ m4_include([acinclude/pkg.m4]) + m4_include([acinclude/lib-checks.m4]) + m4_include([acinclude/ax_cxx_compile_stdcxx_11.m4]) + m4_include([acinclude/ax_cxx_0x_types.m4]) ++m4_include([acinclude/ax_check_compile_flag.m4]) + + HOSTCXX="$BUILD_CXX" + PRESET_CFLAGS="$CFLAGS" +@@ -44,6 +45,7 @@ AC_PROG_CXX + AC_LANG([C++]) + AC_CANONICAL_HOST + ++AX_CHECK_COMPILE_FLAG([-Werror=format-truncation],[CFLAGS="$CFLAGS -Wno-error=format-truncation" CXXFLAGS="$CXXFLAGS -Wno-error=format-truncation"]) + # Clang 3.2 on some CPUs requires -march-native to detect correctly. + # GCC 4.3+ can also produce faster executables when its used. + # But building inside a virtual machine environment has been found to +Index: squid-3.5.26/acinclude/ax_check_compile_flag.m4 +=================================================================== +--- /dev/null ++++ squid-3.5.26/acinclude/ax_check_compile_flag.m4 +@@ -0,0 +1,74 @@ ++# =========================================================================== ++# https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html ++# =========================================================================== ++# ++# SYNOPSIS ++# ++# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT]) ++# ++# DESCRIPTION ++# ++# Check whether the given FLAG works with the current language's compiler ++# or gives an error. (Warnings, however, are ignored) ++# ++# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on ++# success/failure. ++# ++# If EXTRA-FLAGS is defined, it is added to the current language's default ++# flags (e.g. CFLAGS) when the check is done. The check is thus made with ++# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to ++# force the compiler to issue an error when a bad flag is given. ++# ++# INPUT gives an alternative input source to AC_COMPILE_IFELSE. ++# ++# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this ++# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG. ++# ++# LICENSE ++# ++# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de> ++# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> ++# ++# This program is free software: you can redistribute it and/or modify it ++# under the terms of the GNU General Public License as published by the ++# Free Software Foundation, either version 3 of the License, or (at your ++# option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General ++# Public License for more details. ++# ++# You should have received a copy of the GNU General Public License along ++# with this program. If not, see <https://www.gnu.org/licenses/>. ++# ++# As a special exception, the respective Autoconf Macro's copyright owner ++# gives unlimited permission to copy, distribute and modify the configure ++# scripts that are the output of Autoconf when processing the Macro. You ++# need not follow the terms of the GNU General Public License when using ++# or distributing such scripts, even though portions of the text of the ++# Macro appear in them. The GNU General Public License (GPL) does govern ++# all other use of the material that constitutes the Autoconf Macro. ++# ++# This special exception to the GPL applies to versions of the Autoconf ++# Macro released by the Autoconf Archive. When you make and distribute a ++# modified version of the Autoconf Macro, you may extend this special ++# exception to the GPL to apply to your modified version as well. ++ ++#serial 5 ++ ++AC_DEFUN([AX_CHECK_COMPILE_FLAG], ++[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF ++AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl ++AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ ++ ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS ++ _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1" ++ AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], ++ [AS_VAR_SET(CACHEVAR,[yes])], ++ [AS_VAR_SET(CACHEVAR,[no])]) ++ _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags]) ++AS_VAR_IF(CACHEVAR,yes, ++ [m4_default([$2], :)], ++ [m4_default([$3], :)]) ++AS_VAR_POPDEF([CACHEVAR])dnl ++])dnl AX_CHECK_COMPILE_FLAGS diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-tools.cc-fixed-unused-result-warning.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-tools.cc-fixed-unused-result-warning.patch new file mode 100644 index 000000000..082a1114b --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/files/0001-tools.cc-fixed-unused-result-warning.patch @@ -0,0 +1,36 @@ +From a78f2f0feda8f92cb59afe8236bd90726908768f Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sun, 25 Jun 2017 00:59:24 -0700 +Subject: [PATCH] tools.cc: fixed unused-result warning + +fix +| ../../squid-3.5.26/src/tools.cc: In function 'void enter_suid()': +| ../../squid-3.5.26/src/tools.cc:616:11: error: ignoring return value of 'int setuid(__uid_t)', declared with attribute warn_unused_result [-Werror=unused-result] +| setuid(0); +| ~~~~~~^~~ + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- +Upstream-Status: Submitted + + src/tools.cc | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/tools.cc b/src/tools.cc +index 8137a03..843e266 100644 +--- a/src/tools.cc ++++ b/src/tools.cc +@@ -612,8 +612,8 @@ enter_suid(void) + if (setresuid((uid_t)-1, 0, (uid_t)-1) < 0) + debugs (21, 3, "enter_suid: setresuid failed: " << xstrerror ()); + #else +- +- setuid(0); ++ if (setuid(0) < 0) ++ debugs(50, DBG_IMPORTANT, "WARNING: no_suid: setuid(0): " << xstrerror()); + #endif + #if HAVE_PRCTL && defined(PR_SET_DUMPABLE) + /* Set Linux DUMPABLE flag */ +-- +2.13.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/files/gcc7-fixes.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/files/gcc7-fixes.patch new file mode 100644 index 000000000..cc1ea78a5 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/files/gcc7-fixes.patch @@ -0,0 +1,17 @@ +../../squid-3.5.26/src/DiskIO/DiskThreads/aiops.cc: In function 'void squidaio_init()': ../../squid-3.5.26/src/DiskIO/DiskThreads/DiskThreads.h:30:50: error: '*' in boolean context, suggest '&&' instead [-Werror=int-in-bool-context] #define NUMTHREADS (Config.cacheSwap.n_configured*16) + + +Upstream-Status: Backport +Index: squid-3.5.26/src/DiskIO/DiskThreads/aiops.cc +=================================================================== +--- squid-3.5.26.orig/src/DiskIO/DiskThreads/aiops.cc ++++ squid-3.5.26/src/DiskIO/DiskThreads/aiops.cc +@@ -290,7 +290,7 @@ squidaio_init(void) + /* Create threads and get them to sit in their wait loop */ + squidaio_thread_pool = memPoolCreate("aio_thread", sizeof(squidaio_thread_t)); + +- assert(NUMTHREADS); ++ assert(NUMTHREADS != 0); + + for (i = 0; i < NUMTHREADS; ++i) { + threadp = (squidaio_thread_t *)squidaio_thread_pool->alloc(); diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/squid_3.5.25.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/squid_3.5.26.bb index 5116383b8..3ee96abb7 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/squid_3.5.25.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/squid/squid_3.5.26.bb @@ -22,16 +22,22 @@ SRC_URI = "http://www.squid-cache.org/Versions/v${MAJ_VER}/${MIN_VER}/${BPN}-${P file://set_sysroot_patch.patch \ file://squid-don-t-do-squid-conf-tests-at-build-time.patch \ file://0001-SquidNew-use-noexcept-instead-of-throw-for-C-11-comp.patch \ + file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch \ + file://gcc7-fixes.patch \ + file://0001-tools.cc-fixed-unused-result-warning.patch \ " -SRC_URI[md5sum] = "c34b228129a755f363367c45c46287ba" -SRC_URI[sha256sum] = "0bfd6182154b7f29574d71c659f1cfd1b7d9be9356895dac70dc0f3696a0639b" + +SRC_URI_remove_toolchain-clang = "file://0001-configure-Check-for-Wno-error-format-truncation-comp.patch" + +SRC_URI[md5sum] = "dc1830cd361e077814aa39bcc3691d8b" +SRC_URI[sha256sum] = "41d8845863dcd026c856508cd1599d417c8947ffd96e86e24085f9893cb8b8c2" LIC_FILES_CHKSUM = "file://COPYING;md5=c492e2d6d32ec5c1aad0e0609a141ce9 \ file://errors/COPYRIGHT;md5=8861130fae91400bcf99b66f133172b3 \ " -DEPENDS = "libtool krb5 openldap db cyrus-sasl" +DEPENDS = "libtool krb5 openldap db cyrus-sasl openssl expat libxml2" -inherit autotools useradd ptest +inherit autotools pkgconfig useradd ptest perlnative USERADD_PACKAGES = "${PN}" USERADD_PARAM_${PN} = "--system --no-create-home --home-dir /var/run/squid --shell /bin/false --user-group squid" @@ -46,12 +52,14 @@ PACKAGECONFIG[noatomics] = "squid_cv_gnu_atomics=no,squid_cv_gnu_atomics=yes,," PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," BASIC_AUTH = "DB SASL LDAP" -BASIC_AUTH_append_libc-glibc = " NIS" DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" BASIC_AUTH += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'PAM', '', d)}" -EXTRA_OECONF += "--with-default-user=squid --enable-auth-basic='${BASIC_AUTH}' --sysconfdir=${sysconfdir}/${BPN} --with-logdir=${localstatedir}/log/${BPN}" +EXTRA_OECONF += "--with-default-user=squid --enable-auth-basic='${BASIC_AUTH}' \ + --sysconfdir=${sysconfdir}/${BPN} \ + --with-logdir=${localstatedir}/log/${BPN} \ + 'PERL=${USRBINPATH}/env perl'" export BUILDCXXFLAGS="${BUILD_CXXFLAGS}" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/0001-__progname-is-provided-by-libc.patch b/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/0001-__progname-is-provided-by-libc.patch new file mode 100644 index 000000000..cead977e2 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/0001-__progname-is-provided-by-libc.patch @@ -0,0 +1,62 @@ +From 941038fc05be21202cab7a7a9434097fb55ecbe0 Mon Sep 17 00:00:00 2001 +From: Thorsten Glaser <tg@mirbsd.de> +Date: Thu, 31 Jul 2014 16:29:41 +0930 +Subject: [PATCH] __progname[] is provided by libc + +Rename local variable to tftpd_progname to avoid a clash with glibc +global symbols and work around Debian bug #519006 (Closes: #564052). + +[ hpa: specifically, double-underscore symbols in C are reserved for + the implementation, i.e. compiler/libc. ] + +Signed-off-by: Ron Lee <ron@debian.org> +Signed-off-by: H. Peter Anvin <hpa@linux.intel.com> +--- + tftpd/tftpd.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/tftpd/tftpd.c b/tftpd/tftpd.c +index e247b97..5fec7bf 100644 +--- a/tftpd/tftpd.c ++++ b/tftpd/tftpd.c +@@ -76,7 +76,7 @@ static int ai_fam = AF_INET; + #define TRIES 6 /* Number of attempts to send each packet */ + #define TIMEOUT_LIMIT ((1 << TRIES)-1) + +-const char *__progname; ++const char *tftpd_progname; + static int peer; + static unsigned long timeout = TIMEOUT; /* Current timeout value */ + static unsigned long rexmtval = TIMEOUT; /* Basic timeout value */ +@@ -395,9 +395,9 @@ int main(int argc, char **argv) + /* basename() is way too much of a pain from a portability standpoint */ + + p = strrchr(argv[0], '/'); +- __progname = (p && p[1]) ? p + 1 : argv[0]; ++ tftpd_progname = (p && p[1]) ? p + 1 : argv[0]; + +- openlog(__progname, LOG_PID | LOG_NDELAY, LOG_DAEMON); ++ openlog(tftpd_progname, LOG_PID | LOG_NDELAY, LOG_DAEMON); + + srand(time(NULL) ^ getpid()); + +@@ -946,14 +946,14 @@ int main(int argc, char **argv) + syslog daemon gets restarted by the time we get here. */ + if (secure && standalone) { + closelog(); +- openlog(__progname, LOG_PID | LOG_NDELAY, LOG_DAEMON); ++ openlog(tftpd_progname, LOG_PID | LOG_NDELAY, LOG_DAEMON); + } + + #ifdef HAVE_TCPWRAPPERS + /* Verify if this was a legal request for us. This has to be + done before the chroot, while /etc is still accessible. */ + request_init(&wrap_request, +- RQ_DAEMON, __progname, ++ RQ_DAEMON, tftpd_progname, + RQ_FILE, fd, + RQ_CLIENT_SIN, &from, RQ_SERVER_SIN, &myaddr, 0); + sock_methods(&wrap_request); +-- +2.14.1 + diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/tftpd-hpa.service b/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/tftpd-hpa.service new file mode 100644 index 000000000..97d56586b --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/tftpd-hpa.service @@ -0,0 +1,10 @@ +[Unit] +Description=Tftp Server +Requires=tftpd-hpa.socket + +[Service] +ExecStart=@SBINDIR@/in.tftpd-hpa -s /var/lib/tftpboot +StandardInput=socket + +[Install] +Also=tftpd-hpa.socket diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/tftpd-hpa.socket b/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/tftpd-hpa.socket new file mode 100644 index 000000000..8764c1de3 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/tftpd-hpa.socket @@ -0,0 +1,8 @@ +[Unit] +Description=Tftp Server Activation Socket + +[Socket] +ListenDatagram=69 + +[Install] +WantedBy=sockets.target diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb index 7f567133b..132972b33 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/tftp-hpa_5.2.bb @@ -7,6 +7,7 @@ remote machine. This program and TFTP provide very little security, \ and should not be enabled unless it is expressly needed." DEPENDS = "tcp-wrappers readline" SECTION = "net" +HOMEPAGE = "http://freecode.com/projects/tftp-hpa" LICENSE = "BSD-4-Clause" LIC_FILES_CHKSUM = "file://MCONFIG.in;beginline=1;endline=9;md5=c28ba5adb43041fae4629db05c83cbdd \ file://tftp/tftp.c;beginline=1;endline=32;md5=988c1cba99d70858a26cd877209857f4" @@ -26,12 +27,15 @@ SRC_URI = "http://kernel.org/pub/software/network/tftp/tftp-hpa/tftp-hpa-${PV}.t file://add-error-check-for-disk-filled-up.patch \ file://tftp-hpa-bug-fix-on-separated-CR-and-LF.patch \ file://fix-writing-emtpy-file.patch \ + file://0001-__progname-is-provided-by-libc.patch \ + file://tftpd-hpa.socket \ + file://tftpd-hpa.service \ " SRC_URI[md5sum] = "46c9bd20bbffa62f79c958c7b99aac21" SRC_URI[sha256sum] = "0a9f88d4c1c02687b4853b02ab5dd8779d4de4ffdb9b2e5c9332841304d1a269" -inherit autotools-brokensep update-rc.d update-alternatives +inherit autotools-brokensep update-rc.d update-alternatives systemd export AR = "${HOST_PREFIX}ar cq" @@ -60,6 +64,11 @@ do_install() { install -d ${D}${sysconfdir}/default install -m 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/tftpd-hpa + + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/tftpd-hpa.socket ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/tftpd-hpa.service ${D}${systemd_unitdir}/system + sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/tftpd-hpa.service } FILES_${PN} = "${bindir}" @@ -77,3 +86,6 @@ ALTERNATIVE_${PN} = "tftp" ALTERNATIVE_TARGET[tftp] = "${bindir}/tftp-hpa" ALTERNATIVE_PRIORITY = "60" +SYSTEMD_PACKAGES = "tftp-hpa-server" +SYSTEMD_SERVICE_tftp-hpa-server = "tftpd-hpa.socket tftpd-hpa.service" +SYSTEMD_AUTO_ENABLE_tftp-hpa-server = "enable" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/vblade.conf b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/vblade.conf new file mode 100644 index 000000000..e8b93ec37 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/vblade.conf @@ -0,0 +1,2 @@ +# network_device shelf slot file/disk/partition mac[,mac[,mac]] +#eth0 0 0 /dev/sdb 00:11:22:33:44:55 diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/vblade.init b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/vblade.init new file mode 100644 index 000000000..0298c8001 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/vblade.init @@ -0,0 +1,193 @@ +#!/bin/sh +# +# Init script for vblade (ATA over Ethernet daemon) +# +# chkconfig: - 30 70 +# description: vblade AoE daemon +# +# processname: vblade +# config: /etc/vblade.conf +# +# Shamelessly hacked together from other init scripts (sshd, mostly) +# integrate vblade.init from Fedora's vblade-14-6.fc12.src.rpm +# + +RETVAL=0 +prog=vblade + +spawn_vblade() { + ALLOWMACS="" + [ -n "$5" ] && ALLOWMACS="-m $5" + ID="$1-e$2.$3" + if [ ! -d "/var/run/$prog" ]; then + mkdir /var/run/$prog + fi + PID_FILE=/var/run/$prog/${ID}.pid + $prog $ALLOWMACS $2 $3 $1 $4 >> /var/log/$prog.log 2>&1 & + pid=$! + RETVAL=$? + echo $pid > $PID_FILE + echo -n $"$4 (e$2.$3@$1) [pid $pid]" + [ "$RETVAL" = 0 ] && echo "success" || echo "failure" + echo +} + +start() { + local ret + + echo $"Starting up $prog: " + + #/var/lock/subsys/$prog exists? + status $prog 2>&1 > /dev/null + ret=$? + + if [ "$ret" = "2" ]; then + echo "$prog dead but subsys locked" + echo + return 2 + else + if [ "$ret" = "0" ]; then + #is running + echo "already running" + return 0 + fi + fi + + if [ 0 -ne `grep -vc '^#\|^$' /etc/$prog.conf` ] + then + grep -v '^#' /etc/$prog.conf | sed -e 's/ / /g' -e 's/ / /g' | while read line + do + spawn_vblade $line + done + touch /var/lock/subsys/$prog + else + echo -n "empty $prog.conf?" + echo " passed" + echo + fi +} + +stop() { + echo -n $"Shutting down $prog: " + for pidfile in `ls /var/run/$prog/*.pid 2>/dev/null` + do + kill -TERM `cat $pidfile` + rm -f $pidfile + done + echo "success" + echo + rm -f /var/lock/subsys/$prog +} + +__pids_var_run() { + local base=${1##*/} + local pid_file=${2:-/var/run/$base.pid} + + pid= + if [ -f "$pid_file" ] ; then + local line p + + while : ; do + read line + [ -z "$line" ] && break + for p in $line ; do + [ -z "${p//[0-9]/}" -a -d "/proc/$p" ] && pid="$pid $p" + done + done < "$pid_file" + + if [ -n "$pid" ]; then + return 0 + fi + return 1 # "Program is dead and /var/run pid file exists" + fi + return 3 # "Program is not running" +} + +__pids_pidof() { + pidof "$1" || pidof "${1##*/}" +} + +status() { + local base pid lock_file= pid_file= + + # Test syntax. + if [ "$#" = 0 ] ; then + echo $"Usage: status [-p pidfile] {program}" + return 1 + fi + if [ "$1" = "-p" ]; then + pid_file=$2 + shift 2 + fi + if [ "$1" = "-l" ]; then + lock_file=$2 + shift 2 + fi + base=${1##*/} + + # First try "pidof" + __pids_var_run "$1" "$pid_file" + RC=$? + if [ -z "$pid_file" -a -z "$pid" ]; then + pid="$(__pids_pidof "$1")" + fi + if [ -n "$pid" ]; then + echo $"${base} (pid $pid) is running..." + return 0 + fi + + case "$RC" in + 0) + echo $"${base} (pid $pid) is running..." + return 0 + ;; + 1) + echo $"${base} dead but pid file exists" + return 1 + ;; + esac + if [ -z "${lock_file}" ]; then + lock_file=${base} + fi + # See if /var/lock/subsys/${lock_file} exists + if [ -f /var/lock/subsys/${lock_file} ]; then + echo $"${base} dead but subsys locked" + return 2 + fi + echo $"${base} is stopped" + return 3 +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + stop + start + ;; + reload) + # yes, this sucks, but the vblade processes die on SIGHUP + stop + start + ;; + condrestart) + if [ -f /var/lock/subsys/$prog ]; then + stop + # avoid race + sleep 3 + start + fi + ;; + status) + status $prog + RETVAL=$? + ;; + *) + echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}" + RETVAL=1 +esac +exit $RETVAL diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/vblade.service b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/vblade.service new file mode 100644 index 000000000..83a4d5dcb --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/vblade.service @@ -0,0 +1,11 @@ +[Unit] +Description=Virtual EtherDrive blade AoE target +After=syslog.target network.target + +[Service] +Type=forking +ExecStart=@BINDIR@/vblade.init start +ExecStop=@BINDIR@/vblade.init stop + +[Install] +WantedBy=multi-user.target diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/volatiles.99_vblade b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/volatiles.99_vblade new file mode 100644 index 000000000..64a5881c0 --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/files/volatiles.99_vblade @@ -0,0 +1 @@ +d root root 0755 /var/run/vblade none diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_20.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_20.bb deleted file mode 100644 index 344c7462c..000000000 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_20.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "Virtual EtherDrive blade AoE target" -SECTION = "admin" - -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" - -SRC_URI = "${SOURCEFORGE_MIRROR}/aoetools/${BPN}-${PV}.tgz \ - file://cross.patch \ - file://makefile-add-ldflags.patch \ - " - -SRC_URI[md5sum] = "3c80e4a6bc7d66ae0c235b88cb44bd59" -SRC_URI[sha256sum] = "c8fe2fc4f2fba8e07e5cfdf17335982584eef2cd5c78bf8b1db93f2b56e7121d" - -inherit autotools-brokensep - -do_install() { - install -D -m 0755 ${S}/vblade ${D}/${sbindir}/vblade - install -D -m 0755 ${S}/vbladed ${D}/${sbindir}/vbladed - install -D -m 0644 ${S}/vblade.8 ${D}/${mandir}/man8/vblade.8 -} - diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_22.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_22.bb new file mode 100644 index 000000000..d7b1dfaad --- /dev/null +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vblade/vblade_22.bb @@ -0,0 +1,51 @@ +SUMMARY = "Virtual EtherDrive blade AoE target" +SECTION = "admin" + +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" + +SRC_URI = "${SOURCEFORGE_MIRROR}/aoetools/${BP}.tar.gz \ + file://cross.patch \ + file://makefile-add-ldflags.patch \ + file://${BPN}.conf \ + file://${BPN}.init \ + file://${BPN}.service \ + file://volatiles.99_vblade \ + " + +SRC_URI[md5sum] = "510d98ba0f231284a5fbe2da11cb2d6e" +SRC_URI[sha256sum] = "a990378f273f10eb431e42954a871aed52714035bbab28c54cef600c458356bb" + +inherit autotools-brokensep update-rc.d systemd + +do_install() { + install -D -m 0755 ${S}/vblade ${D}/${sbindir}/vblade + install -D -m 0755 ${S}/vbladed ${D}/${sbindir}/vbladed + install -D -m 0644 ${S}/vblade.8 ${D}/${mandir}/man8/vblade.8 + + install -D -m 0644 ${WORKDIR}/${BPN}.conf ${D}/${sysconfdir}/${BPN}.conf + install -D -m 0755 ${WORKDIR}/${BPN}.init ${D}/${sysconfdir}/init.d/${BPN} + + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then + install -d ${D}/${sysconfdir}/default/volatiles + install -m 0755 ${WORKDIR}/volatiles.99_vblade ${D}/${sysconfdir}/default/volatiles/99_vblade + fi + + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}/${bindir} + install -m 0755 ${WORKDIR}/${BPN}.init ${D}/${bindir}/ + install -d ${D}${sysconfdir}/tmpfiles.d + echo "d /var/run/${BPN} 0755 root root -" > ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf + + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/vblade.service ${D}${systemd_system_unitdir} + sed -e 's,@BINDIR@,${bindir},g' -i ${D}${systemd_system_unitdir}/*.service + fi + +} + +INITSCRIPT_NAME = "vblade" +INITSCRIPT_PARAMS = "start 30 . stop 70 0 1 2 3 4 5 6 ." + +SYSTEMD_SERVICE_${PN} = "vblade.service" +SYSTEMD_AUTO_ENABLE = "disable" diff --git a/import-layers/meta-openembedded/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.3.bb b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.3.bb index e52461446..7a2035601 100644 --- a/import-layers/meta-openembedded/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.3.bb +++ b/import-layers/meta-openembedded/meta-networking/recipes-daemons/vsftpd/vsftpd_3.0.3.bb @@ -37,6 +37,7 @@ PACKAGECONFIG[tcp-wrappers] = ",,tcp-wrappers" DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" RDEPENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-listfile', '', d)}" PAMLIB = "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '-L${STAGING_BASELIBDIR} -lpam', '', d)}" +WRAPLIB = "${@bb.utils.contains('PACKAGECONFIG', 'tcp-wrappers', '-lwrap', '', d)}" NOPAM_SRC ="${@bb.utils.contains('PACKAGECONFIG', 'tcp-wrappers', 'file://nopam-with-tcp_wrappers.patch', 'file://nopam.patch', d)}" inherit update-rc.d useradd systemd @@ -54,7 +55,7 @@ do_configure() { } do_compile() { - oe_runmake "LIBS=-L${STAGING_LIBDIR} -lcrypt -lcap ${PAMLIB} -lwrap" + oe_runmake "LIBS=-L${STAGING_LIBDIR} -lcrypt -lcap ${PAMLIB} ${WRAPLIB}" } do_install() { |