diff options
author | Tom Rini <trini@konsulko.com> | 2019-03-06 09:36:11 -0500 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-03-06 23:12:27 +0000 |
commit | e96a537f11968c387f1228214f3acbf5d9896c8f (patch) | |
tree | 5e1d640fd3661eda6a03f71a35c39b77633fae11 /meta/recipes-connectivity | |
parent | f08b1e12a024e02ad3d6c1472030f82aa477b076 (diff) | |
download | poky-e96a537f11968c387f1228214f3acbf5d9896c8f.tar.gz |
inetutils: Import version 1.9.4
In order to have more robust stand-alone network tools in oe-core, bring
in inetutils from meta-openembedded/meta-networking. This imports the
recipes as of git commit:
commit 408204073e6bdcd8ac586e05d5b75213417673f2
Author: Martin Jansa <martin.jansa@gmail.com>
Date: Thu Aug 16 20:39:15 2018 +0000
inetutils: fix build with glibc-2.28
(From OE-Core rev: ace6911e663709f07ca73aa72f6bb4f4111b2749)
Signed-off-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-connectivity')
13 files changed, 542 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/inetutils/inetutils/0001-rcp-fix-to-work-with-large-files.patch b/meta/recipes-connectivity/inetutils/inetutils/0001-rcp-fix-to-work-with-large-files.patch new file mode 100644 index 0000000000..d4764f5867 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/0001-rcp-fix-to-work-with-large-files.patch | |||
@@ -0,0 +1,31 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | Subject: rcp: fix to work with large files | ||
4 | |||
5 | When we copy file by rcp command, if the file > 2GB, it will fail. | ||
6 | The cause is that it used incorrect data type on file size in sink() of rcp. | ||
7 | |||
8 | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> | ||
9 | --- | ||
10 | src/rcp.c | 4 ++-- | ||
11 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
12 | |||
13 | diff --git a/src/rcp.c b/src/rcp.c | ||
14 | index 21f55b6..bafa35f 100644 | ||
15 | --- a/src/rcp.c | ||
16 | +++ b/src/rcp.c | ||
17 | @@ -876,9 +876,9 @@ sink (int argc, char *argv[]) | ||
18 | enum | ||
19 | { YES, NO, DISPLAYED } wrerr; | ||
20 | BUF *bp; | ||
21 | - off_t i, j; | ||
22 | + off_t i, j, size; | ||
23 | int amt, count, exists, first, mask, mode, ofd, omode; | ||
24 | - int setimes, size, targisdir, wrerrno; | ||
25 | + int setimes, targisdir, wrerrno; | ||
26 | char ch, *cp, *np, *targ, *vect[1], buf[BUFSIZ]; | ||
27 | const char *why; | ||
28 | |||
29 | -- | ||
30 | 1.9.1 | ||
31 | |||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/fix-disable-ipv6.patch b/meta/recipes-connectivity/inetutils/inetutils/fix-disable-ipv6.patch new file mode 100644 index 0000000000..24c134fcac --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/fix-disable-ipv6.patch | |||
@@ -0,0 +1,83 @@ | |||
1 | Upstream: http://www.mail-archive.com/bug-inetutils@gnu.org/msg02103.html | ||
2 | |||
3 | Upstream-Status: Pending | ||
4 | |||
5 | Signed-off-by: Jackie Huang <jackie.huang@windriver.com> | ||
6 | --- | ||
7 | ping/ping_common.h | 20 ++++++++++++++++++++ | ||
8 | 1 file changed, 20 insertions(+) | ||
9 | |||
10 | diff --git a/ping/ping_common.h b/ping/ping_common.h | ||
11 | index 1dfd1b5..3bfbd12 100644 | ||
12 | --- a/ping/ping_common.h | ||
13 | +++ b/ping/ping_common.h | ||
14 | @@ -17,10 +17,14 @@ | ||
15 | You should have received a copy of the GNU General Public License | ||
16 | along with this program. If not, see `http://www.gnu.org/licenses/'. */ | ||
17 | |||
18 | +#include <config.h> | ||
19 | + | ||
20 | #include <netinet/in_systm.h> | ||
21 | #include <netinet/in.h> | ||
22 | #include <netinet/ip.h> | ||
23 | +#ifdef HAVE_IPV6 | ||
24 | #include <netinet/icmp6.h> | ||
25 | +#endif | ||
26 | #include <icmp.h> | ||
27 | #include <error.h> | ||
28 | #include <progname.h> | ||
29 | @@ -62,7 +66,12 @@ struct ping_stat | ||
30 | want to follow the traditional behaviour of ping. */ | ||
31 | #define DEFAULT_PING_COUNT 0 | ||
32 | |||
33 | +#ifdef HAVE_IPV6 | ||
34 | #define PING_HEADER_LEN (USE_IPV6 ? sizeof (struct icmp6_hdr) : ICMP_MINLEN) | ||
35 | +#else | ||
36 | +#define PING_HEADER_LEN (ICMP_MINLEN) | ||
37 | +#endif | ||
38 | + | ||
39 | #define PING_TIMING(s) ((s) >= sizeof (struct timeval)) | ||
40 | #define PING_DATALEN (64 - PING_HEADER_LEN) /* default data length */ | ||
41 | |||
42 | @@ -74,13 +83,20 @@ struct ping_stat | ||
43 | (t).tv_usec = ((i)%PING_PRECISION)*(1000000/PING_PRECISION) ;\ | ||
44 | } while (0) | ||
45 | |||
46 | +#ifdef HAVE_IPV6 | ||
47 | /* FIXME: Adjust IPv6 case for options and their consumption. */ | ||
48 | #define _PING_BUFLEN(p, u) ((u)? ((p)->ping_datalen + sizeof (struct icmp6_hdr)) : \ | ||
49 | (MAXIPLEN + (p)->ping_datalen + ICMP_TSLEN)) | ||
50 | |||
51 | +#else | ||
52 | +#define _PING_BUFLEN(p, u) (MAXIPLEN + (p)->ping_datalen + ICMP_TSLEN) | ||
53 | +#endif | ||
54 | + | ||
55 | +#ifdef HAVE_IPV6 | ||
56 | typedef int (*ping_efp6) (int code, void *closure, struct sockaddr_in6 * dest, | ||
57 | struct sockaddr_in6 * from, struct icmp6_hdr * icmp, | ||
58 | int datalen); | ||
59 | +#endif | ||
60 | |||
61 | typedef int (*ping_efp) (int code, | ||
62 | void *closure, | ||
63 | @@ -89,13 +105,17 @@ typedef int (*ping_efp) (int code, | ||
64 | struct ip * ip, icmphdr_t * icmp, int datalen); | ||
65 | |||
66 | union event { | ||
67 | +#ifdef HAVE_IPV6 | ||
68 | ping_efp6 handler6; | ||
69 | +#endif | ||
70 | ping_efp handler; | ||
71 | }; | ||
72 | |||
73 | union ping_address { | ||
74 | struct sockaddr_in ping_sockaddr; | ||
75 | +#ifdef HAVE_IPV6 | ||
76 | struct sockaddr_in6 ping_sockaddr6; | ||
77 | +#endif | ||
78 | }; | ||
79 | |||
80 | typedef struct ping_data PING; | ||
81 | -- | ||
82 | 2.8.3 | ||
83 | |||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch new file mode 100644 index 0000000000..3da4e9f55a --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch | |||
@@ -0,0 +1,29 @@ | |||
1 | From 552a7d64ad4a7188a9b7cd89933ae7caf7ebfe90 Mon Sep 17 00:00:00 2001 | ||
2 | From: Mike Frysinger <vapier at gentoo.org> | ||
3 | Date: Thu, 18 Nov 2010 16:59:14 -0500 | ||
4 | Subject: [PATCH gnulib] printf-parse: pull in features.h for __GLIBC__ | ||
5 | |||
6 | Upstream-Status: Pending | ||
7 | |||
8 | Signed-off-by: Mike Frysinger <vapier at gentoo.org> | ||
9 | --- | ||
10 | lib/printf-parse.h | 3 +++ | ||
11 | 1 files changed, 3 insertions(+), 0 deletions(-) | ||
12 | |||
13 | diff --git a/lib/printf-parse.h b/lib/printf-parse.h | ||
14 | index 67a4a2a..3bd6152 100644 | ||
15 | --- a/lib/printf-parse.h | ||
16 | +++ b/lib/printf-parse.h | ||
17 | @@ -25,6 +25,9 @@ | ||
18 | |||
19 | #include "printf-args.h" | ||
20 | |||
21 | +#ifdef HAVE_FEATURES_H | ||
22 | +# include <features.h> /* for __GLIBC__ */ | ||
23 | +#endif | ||
24 | |||
25 | /* Flags */ | ||
26 | #define FLAG_GROUP 1 /* ' flag */ | ||
27 | -- | ||
28 | 1.7.3.2 | ||
29 | |||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0003-wchar.patch b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0003-wchar.patch new file mode 100644 index 0000000000..b13bb9229f --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0003-wchar.patch | |||
@@ -0,0 +1,14 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | --- inetutils-1.8/lib/wchar.in.h | ||
4 | +++ inetutils-1.8/lib/wchar.in.h | ||
5 | @@ -70,6 +70,9 @@ | ||
6 | /* The include_next requires a split double-inclusion guard. */ | ||
7 | #if @HAVE_WCHAR_H@ | ||
8 | # @INCLUDE_NEXT@ @NEXT_WCHAR_H@ | ||
9 | +#else | ||
10 | +# include <stddef.h> | ||
11 | +# define MB_CUR_MAX 1 | ||
12 | #endif | ||
13 | |||
14 | #undef _GL_ALREADY_INCLUDING_WCHAR_H | ||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch new file mode 100644 index 0000000000..2592989a90 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch | |||
@@ -0,0 +1,26 @@ | |||
1 | inetutils: define PATH_PROCNET_DEV if not already defined | ||
2 | |||
3 | this prevents the following compilation error : | ||
4 | system/linux.c:401:15: error: 'PATH_PROCNET_DEV' undeclared (first use in this function) | ||
5 | |||
6 | this patch comes from : | ||
7 | http://repository.timesys.com/buildsources/i/inetutils/inetutils-1.9/ | ||
8 | |||
9 | Upstream-Status: Inappropriate [not author] | ||
10 | |||
11 | Signed-of-by: Eric Bénard <eric@eukrea.com> | ||
12 | --- | ||
13 | diff -Naur inetutils-1.9.orig/ifconfig/system/linux.c inetutils-1.9/ifconfig/system/linux.c | ||
14 | --- inetutils-1.9.orig/ifconfig/system/linux.c 2012-01-04 16:31:36.000000000 -0500 | ||
15 | +++ inetutils-1.9/ifconfig/system/linux.c 2012-01-04 16:40:53.000000000 -0500 | ||
16 | @@ -49,6 +49,10 @@ | ||
17 | #include "../ifconfig.h" | ||
18 | |||
19 | |||
20 | +#ifndef PATH_PROCNET_DEV | ||
21 | + #define PATH_PROCNET_DEV "/proc/net/dev" | ||
22 | +#endif | ||
23 | + | ||
24 | /* ARPHRD stuff. */ | ||
25 | |||
26 | static void | ||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-only-check-pam_appl.h-when-pam-enabled.patch b/meta/recipes-connectivity/inetutils/inetutils/inetutils-only-check-pam_appl.h-when-pam-enabled.patch new file mode 100644 index 0000000000..ff3abd86aa --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-only-check-pam_appl.h-when-pam-enabled.patch | |||
@@ -0,0 +1,40 @@ | |||
1 | Only check security/pam_appl.h which is provided by package libpam when pam is | ||
2 | enabled. | ||
3 | |||
4 | Upstream-Status: Pending | ||
5 | |||
6 | Signed-off-by: Kai Kang <kai.kang@windriver.com> | ||
7 | --- | ||
8 | diff --git a/configure.ac b/configure.ac | ||
9 | index b35e672..e78a751 100644 | ||
10 | --- a/configure.ac | ||
11 | +++ b/configure.ac | ||
12 | @@ -195,6 +195,19 @@ fi | ||
13 | |||
14 | # See if we have libpam.a. Investigate PAM versus Linux-PAM. | ||
15 | if test "$with_pam" = yes ; then | ||
16 | + AC_CHECK_HEADERS([security/pam_appl.h], [], [], [ | ||
17 | +#include <sys/types.h> | ||
18 | +#ifdef HAVE_NETINET_IN_SYSTM_H | ||
19 | +# include <netinet/in_systm.h> | ||
20 | +#endif | ||
21 | +#include <netinet/in.h> | ||
22 | +#ifdef HAVE_NETINET_IP_H | ||
23 | +# include <netinet/ip.h> | ||
24 | +#endif | ||
25 | +#ifdef HAVE_SYS_PARAM_H | ||
26 | +# include <sys/param.h> | ||
27 | +#endif | ||
28 | +]) | ||
29 | AC_CHECK_LIB(dl, dlopen, LIBDL=-ldl) | ||
30 | AC_CHECK_LIB(pam, pam_authenticate, LIBPAM=-lpam) | ||
31 | if test "$ac_cv_lib_pam_pam_authenticate" = yes ; then | ||
32 | @@ -587,7 +600,7 @@ AC_HEADER_DIRENT | ||
33 | AC_CHECK_HEADERS([arpa/nameser.h errno.h fcntl.h features.h \ | ||
34 | glob.h memory.h netinet/ether.h netinet/in_systm.h \ | ||
35 | netinet/ip.h netinet/ip_icmp.h netinet/ip_var.h \ | ||
36 | - security/pam_appl.h shadow.h \ | ||
37 | + shadow.h \ | ||
38 | stdarg.h stdlib.h string.h stropts.h sys/tty.h \ | ||
39 | sys/utsname.h sys/ptyvar.h sys/msgbuf.h sys/filio.h \ | ||
40 | sys/ioctl_compat.h sys/cdefs.h sys/stream.h sys/mkdev.h \ | ||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/rexec.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/rexec.xinetd.inetutils new file mode 100644 index 0000000000..30e81ef450 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/rexec.xinetd.inetutils | |||
@@ -0,0 +1,20 @@ | |||
1 | # default: off | ||
2 | # description: | ||
3 | # Rexecd is the server for the rexec program. The server provides remote | ||
4 | # execution facilities with authentication based on user names and | ||
5 | # passwords. | ||
6 | # | ||
7 | service exec | ||
8 | { | ||
9 | socket_type = stream | ||
10 | protocol = tcp | ||
11 | flags = NAMEINARGS | ||
12 | wait = no | ||
13 | user = root | ||
14 | group = root | ||
15 | log_on_success += USERID | ||
16 | log_on_failure += USERID | ||
17 | server = @SBINDIR@/tcpd | ||
18 | server_args = @SBINDIR@/in.rexecd | ||
19 | disable = yes | ||
20 | } | ||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/rlogin.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/rlogin.xinetd.inetutils new file mode 100644 index 0000000000..21b55da9a9 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/rlogin.xinetd.inetutils | |||
@@ -0,0 +1,23 @@ | |||
1 | # default: off | ||
2 | # description: | ||
3 | # Rlogind is a server for the rlogin program. The server provides remote | ||
4 | # execution with authentication based on privileged port numbers from trusted | ||
5 | # host | ||
6 | # | ||
7 | service login | ||
8 | { | ||
9 | socket_type = stream | ||
10 | protocol = tcp | ||
11 | flags = NAMEINARGS | ||
12 | wait = no | ||
13 | user = root | ||
14 | group = root | ||
15 | log_on_success += USERID | ||
16 | log_on_failure += USERID | ||
17 | server = @SBINDIR@/tcpd | ||
18 | server_args = @SBINDIR@/in.rlogind -a | ||
19 | disable = yes | ||
20 | } | ||
21 | |||
22 | |||
23 | |||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/rsh.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/rsh.xinetd.inetutils new file mode 100644 index 0000000000..2b894a74bd --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/rsh.xinetd.inetutils | |||
@@ -0,0 +1,21 @@ | |||
1 | # default: off | ||
2 | # description: | ||
3 | # The rshd server is a server for the rcmd(3) routine and, | ||
4 | # consequently, for the rsh(1) program. The server provides | ||
5 | # remote execution facilities with authentication based on | ||
6 | # privileged port numbers from trusted hosts. | ||
7 | # | ||
8 | service shell | ||
9 | { | ||
10 | socket_type = stream | ||
11 | protocol = tcp | ||
12 | flags = NAMEINARGS | ||
13 | wait = no | ||
14 | user = root | ||
15 | group = root | ||
16 | log_on_success += USERID | ||
17 | log_on_failure += USERID | ||
18 | server = @SBINDIR@/tcpd | ||
19 | server_args = @SBINDIR@/in.rshd -aL | ||
20 | disable = yes | ||
21 | } | ||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/telnet.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/telnet.xinetd.inetutils new file mode 100644 index 0000000000..2d9a0408c0 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/telnet.xinetd.inetutils | |||
@@ -0,0 +1,13 @@ | |||
1 | # default: on | ||
2 | # description: The telnet server serves telnet sessions; it uses \ | ||
3 | # unencrypted username/password pairs for authentication. | ||
4 | service telnet | ||
5 | { | ||
6 | disable = no | ||
7 | flags = REUSE | ||
8 | socket_type = stream | ||
9 | wait = no | ||
10 | user = root | ||
11 | server = @SBINDIR@/in.telnetd | ||
12 | log_on_failure += USERID | ||
13 | } | ||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/tftpd.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/tftpd.xinetd.inetutils new file mode 100644 index 0000000000..67b44c43e8 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/tftpd.xinetd.inetutils | |||
@@ -0,0 +1,19 @@ | |||
1 | # default: off | ||
2 | # description: | ||
3 | # Tftpd is a server which supports the Internet Trivial File Transfer | ||
4 | # Pro-tocol (RFC 783). The TFTP server operates at the port indicated | ||
5 | # in the tftp service description; see services(5). | ||
6 | # | ||
7 | service tftp | ||
8 | { | ||
9 | disable = yes | ||
10 | socket_type = dgram | ||
11 | protocol = udp | ||
12 | flags = IPv6 | ||
13 | wait = yes | ||
14 | user = root | ||
15 | group = root | ||
16 | server = @SBINDIR@/in.tftpd | ||
17 | server_args = /tftpboot | ||
18 | } | ||
19 | |||
diff --git a/meta/recipes-connectivity/inetutils/inetutils/version.patch b/meta/recipes-connectivity/inetutils/inetutils/version.patch new file mode 100644 index 0000000000..532a0e5c08 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/version.patch | |||
@@ -0,0 +1,17 @@ | |||
1 | Upstream-Status: Pending | ||
2 | |||
3 | remove m4_esyscmd function | ||
4 | |||
5 | Signed-off-by: Chunrong Guo <b40290@freescale.com> | ||
6 | --- inetutils-1.9.1/configure.ac 2012-01-06 22:05:05.000000000 +0800 | ||
7 | +++ inetutils-1.9.1/configure.ac 2012-11-12 14:01:11.732957019 +0800 | ||
8 | @@ -20,8 +20,7 @@ | ||
9 | |||
10 | AC_PREREQ(2.59) | ||
11 | |||
12 | -AC_INIT([GNU inetutils], | ||
13 | - m4_esyscmd([build-aux/git-version-gen .tarball-version 's/inetutils-/v/;s/_/./g']), | ||
14 | +AC_INIT([GNU inetutils],[1.9.4], | ||
15 | [bug-inetutils@gnu.org]) | ||
16 | |||
17 | AC_CONFIG_SRCDIR([src/inetd.c]) | ||
diff --git a/meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb b/meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb new file mode 100644 index 0000000000..a27dbae2e6 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb | |||
@@ -0,0 +1,206 @@ | |||
1 | DESCRIPTION = "The GNU inetutils are a collection of common \ | ||
2 | networking utilities and servers including ftp, ftpd, rcp, \ | ||
3 | rexec, rlogin, rlogind, rsh, rshd, syslog, syslogd, talk, \ | ||
4 | talkd, telnet, telnetd, tftp, tftpd, and uucpd." | ||
5 | HOMEPAGE = "http://www.gnu.org/software/inetutils" | ||
6 | SECTION = "net" | ||
7 | DEPENDS = "ncurses netbase readline virtual/crypt" | ||
8 | |||
9 | LICENSE = "GPLv3" | ||
10 | |||
11 | LIC_FILES_CHKSUM = "file://COPYING;md5=0c7051aef9219dc7237f206c5c4179a7" | ||
12 | |||
13 | SRC_URI = "${GNU_MIRROR}/inetutils/inetutils-${PV}.tar.gz \ | ||
14 | file://version.patch \ | ||
15 | file://inetutils-1.8-0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch \ | ||
16 | file://inetutils-1.8-0003-wchar.patch \ | ||
17 | file://rexec.xinetd.inetutils \ | ||
18 | file://rlogin.xinetd.inetutils \ | ||
19 | file://rsh.xinetd.inetutils \ | ||
20 | file://telnet.xinetd.inetutils \ | ||
21 | file://tftpd.xinetd.inetutils \ | ||
22 | file://inetutils-1.9-PATH_PROCNET_DEV.patch \ | ||
23 | file://inetutils-only-check-pam_appl.h-when-pam-enabled.patch \ | ||
24 | file://0001-rcp-fix-to-work-with-large-files.patch \ | ||
25 | " | ||
26 | |||
27 | SRC_URI[md5sum] = "04852c26c47cc8c6b825f2b74f191f52" | ||
28 | SRC_URI[sha256sum] = "be8f75eff936b8e41b112462db51adf689715658a1b09e0d6b05d11ec92cc616" | ||
29 | |||
30 | inherit autotools gettext update-alternatives texinfo | ||
31 | |||
32 | acpaths = "-I ./m4" | ||
33 | |||
34 | SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '', 'file://fix-disable-ipv6.patch', d)}" | ||
35 | |||
36 | PACKAGECONFIG ??= "ftp uucpd \ | ||
37 | ${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \ | ||
38 | ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6 ping6', '', d)} \ | ||
39 | " | ||
40 | PACKAGECONFIG[ftp] = "--enable-ftp,--disable-ftp,readline" | ||
41 | PACKAGECONFIG[uucpd] = "--enable-uucpd,--disable-uucpd,readline" | ||
42 | PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam" | ||
43 | PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6 gl_cv_socket_ipv6=no," | ||
44 | PACKAGECONFIG[ping6] = "--enable-ping6,--disable-ping6," | ||
45 | |||
46 | EXTRA_OECONF = "--with-ncurses-include-dir=${STAGING_INCDIR} \ | ||
47 | inetutils_cv_path_login=${base_bindir}/login \ | ||
48 | --with-libreadline-prefix=${STAGING_LIBDIR} \ | ||
49 | --enable-rpath=no \ | ||
50 | " | ||
51 | |||
52 | EXTRA_OECONF_append_libc-musl = " --disable-rsh --disable-rcp --disable-rlogin " | ||
53 | |||
54 | do_configure_prepend () { | ||
55 | export HELP2MAN='true' | ||
56 | cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${S}/build-aux/config.rpath | ||
57 | rm -f ${S}/glob/configure* | ||
58 | } | ||
59 | |||
60 | do_install_append () { | ||
61 | install -m 0755 -d ${D}${base_sbindir} | ||
62 | install -m 0755 -d ${D}${sbindir} | ||
63 | install -m 0755 -d ${D}${sysconfdir}/xinetd.d | ||
64 | if [ "${base_bindir}" != "${bindir}" ] ; then | ||
65 | install -m 0755 -d ${D}${base_bindir} | ||
66 | mv ${D}${bindir}/ping* ${D}${base_bindir}/ | ||
67 | mv ${D}${bindir}/hostname ${D}${base_bindir}/ | ||
68 | fi | ||
69 | mv ${D}${bindir}/ifconfig ${D}${base_sbindir}/ | ||
70 | mv ${D}${libexecdir}/syslogd ${D}${base_sbindir}/ | ||
71 | mv ${D}${libexecdir}/tftpd ${D}${sbindir}/in.tftpd | ||
72 | mv ${D}${libexecdir}/telnetd ${D}${sbindir}/in.telnetd | ||
73 | mv ${D}${libexecdir}/rexecd ${D}${sbindir}/in.rexecd | ||
74 | if [ -e ${D}${libexecdir}/rlogind ]; then | ||
75 | mv ${D}${libexecdir}/rlogind ${D}${sbindir}/in.rlogind | ||
76 | fi | ||
77 | if [ -e ${D}${libexecdir}/rshd ]; then | ||
78 | mv ${D}${libexecdir}/rshd ${D}${sbindir}/in.rshd | ||
79 | fi | ||
80 | if [ -e ${D}${libexecdir}/talkd ]; then | ||
81 | mv ${D}${libexecdir}/talkd ${D}${sbindir}/in.talkd | ||
82 | fi | ||
83 | mv ${D}${libexecdir}/uucpd ${D}${sbindir}/in.uucpd | ||
84 | mv ${D}${libexecdir}/* ${D}${bindir}/ | ||
85 | cp ${WORKDIR}/rexec.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rexec | ||
86 | cp ${WORKDIR}/rlogin.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rlogin | ||
87 | cp ${WORKDIR}/rsh.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rsh | ||
88 | cp ${WORKDIR}/telnet.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/telnet | ||
89 | cp ${WORKDIR}/tftpd.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/tftpd | ||
90 | |||
91 | sed -e 's,@SBINDIR@,${sbindir},g' -i ${D}/${sysconfdir}/xinetd.d/* | ||
92 | if [ -e ${D}${libdir}/charset.alias ]; then | ||
93 | rm -rf ${D}${libdir}/charset.alias | ||
94 | fi | ||
95 | rm -rf ${D}${libexecdir}/ | ||
96 | # remove usr/lib if empty | ||
97 | rmdir ${D}${libdir} || true | ||
98 | } | ||
99 | |||
100 | PACKAGES =+ "${PN}-ping ${PN}-ping6 ${PN}-hostname ${PN}-ifconfig \ | ||
101 | ${PN}-tftp ${PN}-logger ${PN}-traceroute ${PN}-syslogd \ | ||
102 | ${PN}-ftp ${PN}-ftpd ${PN}-tftpd ${PN}-telnet ${PN}-telnetd ${PN}-inetd \ | ||
103 | ${PN}-rsh ${PN}-rshd" | ||
104 | |||
105 | # The packages tftpd, telnetd and rshd conflict with the ones | ||
106 | # provided by netkit, so add the corresponding -dbg packages | ||
107 | # for them to avoid the confliction between the dbg package | ||
108 | # of inetutils and netkit. | ||
109 | PACKAGES =+ "${PN}-tftpd-dbg ${PN}-telnetd-dbg ${PN}-rshd-dbg" | ||
110 | NOAUTOPACKAGEDEBUG = "1" | ||
111 | |||
112 | ALTERNATIVE_PRIORITY = "79" | ||
113 | ALTERNATIVE_${PN} = "talk whois" | ||
114 | ALTERNATIVE_LINK_NAME[talkd] = "${sbindir}/in.talkd" | ||
115 | ALTERNATIVE_LINK_NAME[uucpd] = "${sbindir}/in.uucpd" | ||
116 | |||
117 | ALTERNATIVE_PRIORITY_${PN}-logger = "60" | ||
118 | ALTERNATIVE_${PN}-logger = "logger" | ||
119 | ALTERNATIVE_${PN}-syslogd = "syslogd" | ||
120 | ALTERNATIVE_LINK_NAME[syslogd] = "${base_sbindir}/syslogd" | ||
121 | |||
122 | ALTERNATIVE_${PN}-ftp = "ftp" | ||
123 | ALTERNATIVE_${PN}-ftpd = "ftpd" | ||
124 | ALTERNATIVE_${PN}-tftp = "tftp" | ||
125 | ALTERNATIVE_${PN}-tftpd = "tftpd" | ||
126 | ALTERNATIVE_LINK_NAME[tftpd] = "${sbindir}/tftpd" | ||
127 | ALTERNATIVE_TARGET[tftpd] = "${sbindir}/in.tftpd" | ||
128 | |||
129 | ALTERNATIVE_${PN}-telnet = "telnet" | ||
130 | ALTERNATIVE_${PN}-telnetd = "telnetd" | ||
131 | ALTERNATIVE_LINK_NAME[telnetd] = "${sbindir}/telnetd" | ||
132 | ALTERNATIVE_TARGET[telnetd] = "${sbindir}/in.telnetd" | ||
133 | |||
134 | ALTERNATIVE_${PN}-rsh = "rcp rexec rlogin rsh" | ||
135 | ALTERNATIVE_${PN}-rshd = "rshd rexecd rlogind" | ||
136 | ALTERNATIVE_LINK_NAME[rshd] = "${sbindir}/rshd" | ||
137 | ALTERNATIVE_TARGET[rshd] = "${sbindir}/in.rshd" | ||
138 | ALTERNATIVE_LINK_NAME[rexecd] = "${sbindir}/rexecd" | ||
139 | ALTERNATIVE_TARGET[rexecd] = "${sbindir}/in.rexecd" | ||
140 | ALTERNATIVE_LINK_NAME[rlogind] = "${sbindir}/rlogind" | ||
141 | ALTERNATIVE_TARGET[rlogind] = "${sbindir}/in.rlogind" | ||
142 | |||
143 | ALTERNATIVE_${PN}-inetd= "inetd" | ||
144 | ALTERNATIVE_${PN}-traceroute = "traceroute" | ||
145 | |||
146 | ALTERNATIVE_${PN}-hostname = "hostname" | ||
147 | ALTERNATIVE_LINK_NAME[hostname] = "${base_bindir}/hostname" | ||
148 | |||
149 | ALTERNATIVE_${PN}-doc = "hostname.1 dnsdomainname.1 logger.1 syslogd.8" | ||
150 | ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1" | ||
151 | ALTERNATIVE_LINK_NAME[dnsdomainname.1] = "${mandir}/man1/dnsdomainname.1" | ||
152 | ALTERNATIVE_LINK_NAME[logger.1] = "${mandir}/man1/logger.1" | ||
153 | ALTERNATIVE_LINK_NAME[syslogd.8] = "${mandir}/man8/syslogd.8" | ||
154 | |||
155 | ALTERNATIVE_${PN}-ifconfig = "ifconfig" | ||
156 | ALTERNATIVE_LINK_NAME[ifconfig] = "${base_sbindir}/ifconfig" | ||
157 | |||
158 | ALTERNATIVE_${PN}-ping = "ping" | ||
159 | ALTERNATIVE_LINK_NAME[ping] = "${base_bindir}/ping" | ||
160 | |||
161 | ALTERNATIVE_${PN}-ping6 = "${@bb.utils.filter('PACKAGECONFIG', 'ping6', d)}" | ||
162 | ALTERNATIVE_LINK_NAME[ping6] = "${base_bindir}/ping6" | ||
163 | |||
164 | |||
165 | FILES_${PN}-dbg += "${base_bindir}/.debug ${base_sbindir}/.debug ${bindir}/.debug ${sbindir}/.debug" | ||
166 | FILES_${PN}-ping = "${base_bindir}/ping.${BPN}" | ||
167 | FILES_${PN}-ping6 = "${base_bindir}/ping6.${BPN}" | ||
168 | FILES_${PN}-hostname = "${base_bindir}/hostname.${BPN}" | ||
169 | FILES_${PN}-ifconfig = "${base_sbindir}/ifconfig.${BPN}" | ||
170 | FILES_${PN}-traceroute = "${bindir}/traceroute.${BPN}" | ||
171 | FILES_${PN}-logger = "${bindir}/logger.${BPN}" | ||
172 | |||
173 | FILES_${PN}-syslogd = "${base_sbindir}/syslogd.${BPN}" | ||
174 | RCONFLICTS_${PN}-syslogd = "rsyslog busybox-syslog sysklogd syslog-ng" | ||
175 | |||
176 | FILES_${PN}-ftp = "${bindir}/ftp.${BPN}" | ||
177 | |||
178 | FILES_${PN}-tftp = "${bindir}/tftp.${BPN}" | ||
179 | FILES_${PN}-telnet = "${bindir}/telnet.${BPN}" | ||
180 | FILES_${PN}-rsh = "${bindir}/rsh.${BPN} ${bindir}/rlogin.${BPN} ${bindir}/rexec.${BPN} ${bindir}/rcp.${BPN}" | ||
181 | |||
182 | FILES_${PN}-rshd = "${sbindir}/in.rshd ${sbindir}/in.rlogind ${sbindir}/in.rexecd \ | ||
183 | ${sysconfdir}/xinetd.d/rsh ${sysconfdir}/xinetd.d/rlogin ${sysconfdir}/xinetd.d/rexec" | ||
184 | FILES_${PN}-rshd-dbg = "${sbindir}/.debug/in.rshd ${sbindir}/.debug/in.rlogind ${sbindir}/.debug/in.rexecd" | ||
185 | RDEPENDS_${PN}-rshd += "xinetd tcp-wrappers" | ||
186 | RCONFLICTS_${PN}-rshd += "netkit-rshd" | ||
187 | RPROVIDES_${PN}-rshd = "rshd" | ||
188 | |||
189 | FILES_${PN}-ftpd = "${bindir}/ftpd.${BPN}" | ||
190 | FILES_${PN}-ftpd-dbg = "${bindir}/.debug/ftpd.${BPN}" | ||
191 | RDEPENDS_${PN}-ftpd += "xinetd" | ||
192 | |||
193 | FILES_${PN}-tftpd = "${sbindir}/in.tftpd ${sysconfdir}/xinetd.d/tftpd" | ||
194 | FILES_${PN}-tftpd-dbg = "${sbindir}/.debug/in.tftpd" | ||
195 | RCONFLICTS_${PN}-tftpd += "netkit-tftpd" | ||
196 | RDEPENDS_${PN}-tftpd += "xinetd" | ||
197 | |||
198 | FILES_${PN}-telnetd = "${sbindir}/in.telnetd ${sysconfdir}/xinetd.d/telnet" | ||
199 | FILES_${PN}-telnetd-dbg = "${sbindir}/.debug/in.telnetd" | ||
200 | RCONFLICTS_${PN}-telnetd += "netkit-telnetd" | ||
201 | RPROVIDES_${PN}-telnetd = "telnetd" | ||
202 | RDEPENDS_${PN}-telnetd += "xinetd" | ||
203 | |||
204 | FILES_${PN}-inetd = "${bindir}/inetd.${BPN}" | ||
205 | |||
206 | RDEPENDS_${PN} = "xinetd" | ||