mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-04-02 02:49:12 +00:00
tftp-hpa: upgrade 5.2 -> 5.3
* Use git instead of tarball in SRC_URI. * Update configuration options. * Clean up and refresh local patches. Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
parent
bc543c673a
commit
9c7e2aa21b
@ -1,64 +0,0 @@
|
||||
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>
|
||||
---
|
||||
Upstream-Status: Pending
|
||||
|
||||
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
|
||||
|
||||
@ -1,30 +0,0 @@
|
||||
From 2a12174a5059e84d4ff6fad8f983a4d0f2127e73 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Wed, 12 Aug 2020 12:17:31 -0700
|
||||
Subject: [PATCH] tftp: Mark toplevel definition as external
|
||||
|
||||
Fixes
|
||||
multiple definition of `toplevel'; tftp.o:/usr/src/debug/tftp-hpa/5.2-r0/tftp-hpa-5.2/tftp/tftp.c:51: first defined here
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
tftp/tftp.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tftp/tftp.c b/tftp/tftp.c
|
||||
index 9d15022..109848c 100644
|
||||
--- a/tftp/tftp.c
|
||||
+++ b/tftp/tftp.c
|
||||
@@ -48,7 +48,7 @@ extern int maxtimeout;
|
||||
#define PKTSIZE SEGSIZE+4
|
||||
char ackbuf[PKTSIZE];
|
||||
int timeout;
|
||||
-sigjmp_buf toplevel;
|
||||
+extern sigjmp_buf toplevel;
|
||||
sigjmp_buf timeoutbuf;
|
||||
|
||||
static void nak(int, const char *);
|
||||
--
|
||||
2.28.0
|
||||
|
||||
@ -1,39 +0,0 @@
|
||||
From e9ed48d91642d384ce07cbb9bec788f07fc6354c Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 6 Sep 2022 14:51:42 -0700
|
||||
Subject: [PATCH] tftp: Remove double inclusion of signal.h
|
||||
|
||||
Undefine __USE_XOPEN2K8 so we can get bsd_signal definition from system
|
||||
headers
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
config.h | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/config.h b/config.h
|
||||
index 3ff2915..ae1a14b 100644
|
||||
--- a/config.h
|
||||
+++ b/config.h
|
||||
@@ -93,7 +93,6 @@
|
||||
#endif
|
||||
|
||||
#include <errno.h>
|
||||
-#include <signal.h>
|
||||
|
||||
#ifdef HAVE_SYS_SOCKET_H
|
||||
#include <sys/socket.h>
|
||||
@@ -296,6 +295,9 @@ char *xstrdup(const char *);
|
||||
|
||||
#ifndef HAVE_BSD_SIGNAL
|
||||
void (*bsd_signal(int, void (*)(int))) (int);
|
||||
+#else
|
||||
+#undef __USE_XOPEN2K8
|
||||
+#include <signal.h>
|
||||
#endif
|
||||
#ifndef HAVE_DUP2
|
||||
int dup2(int, int);
|
||||
--
|
||||
2.37.3
|
||||
|
||||
@ -1,19 +1,19 @@
|
||||
From bd5773947af5ca80ca546ad5625818fc912bdd60 Mon Sep 17 00:00:00 2001
|
||||
From 0b89c5bd9723ebd5207590016a14e5f2c6a0bdc9 Mon Sep 17 00:00:00 2001
|
||||
From: "Roy.Li" <rongqing.li@windriver.com>
|
||||
Date: Thu, 22 Aug 2013 08:56:09 +0800
|
||||
Subject: [PATCH] tftp-hpa: add error check for disk filled up
|
||||
|
||||
Upstream-Status: Pending [Sent to http://www.syslinux.org/archives/2013-August/020765.html]
|
||||
|
||||
Add error check when the write-buffer is finally flushed to the file,
|
||||
the caller can detect if the disk filled up (or had an i/o error) and
|
||||
return a NOSAPCE nak to the other side.
|
||||
|
||||
Upstream-Status: Pending [Sent to http://www.syslinux.org/archives/2013-August/020765.html]
|
||||
|
||||
Signed-off-by: Ming Liu <ming.liu@windriver.com>
|
||||
Signed-off-by: Roy.Li <rongqing.li@windriver.com>
|
||||
---
|
||||
common/tftpsubs.c | 8 +++++---
|
||||
tftpd/tftpd.c | 12 ++++++++++--
|
||||
common/tftpsubs.c | 8 +++++---
|
||||
tftpd/tftpd.c | 12 ++++++++++--
|
||||
2 files changed, 15 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/common/tftpsubs.c b/common/tftpsubs.c
|
||||
@ -47,10 +47,10 @@ index 8c999f6..b4d4ffe 100644
|
||||
|
||||
/* When an error has occurred, it is possible that the two sides
|
||||
diff --git a/tftpd/tftpd.c b/tftpd/tftpd.c
|
||||
index 1873e70..c2adbda 100644
|
||||
index 3158c6d..001237b 100644
|
||||
--- a/tftpd/tftpd.c
|
||||
+++ b/tftpd/tftpd.c
|
||||
@@ -1681,7 +1681,11 @@ static void tftp_recvfile(const struct formats *pf, struct tftphdr *oap, int oac
|
||||
@@ -1690,7 +1690,11 @@ static void tftp_recvfile(const struct formats *pf, struct tftphdr *oap, int oac
|
||||
syslog(LOG_WARNING, "tftpd: write(ack): %m");
|
||||
goto abort;
|
||||
}
|
||||
@ -63,7 +63,7 @@ index 1873e70..c2adbda 100644
|
||||
for (;;) {
|
||||
n = recv_time(peer, dp, PKTSIZE, 0, &r_timeout);
|
||||
if (n < 0) { /* really? */
|
||||
@@ -1712,7 +1716,11 @@ static void tftp_recvfile(const struct formats *pf, struct tftphdr *oap, int oac
|
||||
@@ -1721,7 +1725,11 @@ static void tftp_recvfile(const struct formats *pf, struct tftphdr *oap, int oac
|
||||
goto abort;
|
||||
}
|
||||
} while (size == segsize);
|
||||
@ -77,5 +77,5 @@ index 1873e70..c2adbda 100644
|
||||
|
||||
ap->th_opcode = htons((u_short) ACK); /* send the "final" ack */
|
||||
--
|
||||
1.7.10.4
|
||||
2.34.1
|
||||
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
[PATCH] fix the empty file writting
|
||||
|
||||
Upstream-Status: Pending
|
||||
From 1ce974f1cf6afbc528c941a8cdf0817a3fd7c5a7 Mon Sep 17 00:00:00 2001
|
||||
From: "Roy.Li" <rongqing.li@windriver.com>
|
||||
Date: Mon, 30 Mar 2026 22:37:22 +0800
|
||||
Subject: [PATCH] fix the empty file writting
|
||||
|
||||
With the feature that checking the disk filled up, the return
|
||||
value of function write_behind was checked and used to detect
|
||||
@ -11,13 +12,15 @@ error was miss-raised.
|
||||
make write_behind to return 0 if written file is empty, to fix
|
||||
the this bug.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Roy.Li <rongqing.li@windriver.com>
|
||||
---
|
||||
common/tftpsubs.c | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/common/tftpsubs.c b/common/tftpsubs.c
|
||||
index b4ea3f2..9f6cafc 100644
|
||||
index b4ea3f2..30e749a 100644
|
||||
--- a/common/tftpsubs.c
|
||||
+++ b/common/tftpsubs.c
|
||||
@@ -198,9 +198,12 @@ int write_behind(FILE * file, int convert)
|
||||
@ -35,5 +38,5 @@ index b4ea3f2..9f6cafc 100644
|
||||
return write(fileno(file), buf, count);
|
||||
|
||||
--
|
||||
1.9.1
|
||||
2.34.1
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Patch originally from Fedora
|
||||
|
||||
http://pkgs.fedoraproject.org/cgit/tftp.git/
|
||||
https://src.fedoraproject.org/rpms/tftp.git
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Patch originally from Fedora
|
||||
|
||||
http://pkgs.fedoraproject.org/cgit/tftp.git/
|
||||
https://src.fedoraproject.org/rpms/tftp.git
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Patch originally from Fedora
|
||||
|
||||
http://pkgs.fedoraproject.org/cgit/tftp.git/
|
||||
https://src.fedoraproject.org/rpms/tftp.git
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Patch originally from Fedora
|
||||
|
||||
http://pkgs.fedoraproject.org/cgit/tftp.git/
|
||||
https://src.fedoraproject.org/rpms/tftp.git
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Patch originally from Fedora
|
||||
|
||||
http://pkgs.fedoraproject.org/cgit/tftp.git/
|
||||
https://src.fedoraproject.org/rpms/tftp.git
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Patch originally from Fedora
|
||||
|
||||
http://pkgs.fedoraproject.org/cgit/tftp.git/
|
||||
https://src.fedoraproject.org/rpms/tftp.git
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
|
||||
@ -1,29 +0,0 @@
|
||||
Patch originally from Fedora
|
||||
|
||||
http://pkgs.fedoraproject.org/cgit/tftp.git/
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
diff -up tftp-hpa-5.2/tftpd/recvfrom.c.test tftp-hpa-5.2/tftpd/recvfrom.c
|
||||
--- tftp-hpa-5.2/tftpd/recvfrom.c.test 2011-12-11 23:13:52.000000000 +0100
|
||||
+++ tftp-hpa-5.2/tftpd/recvfrom.c 2012-01-04 10:05:17.852042256 +0100
|
||||
@@ -149,16 +149,16 @@ myrecvfrom(int s, void *buf, int len, un
|
||||
|
||||
/* Try to enable getting the return address */
|
||||
#ifdef IP_RECVDSTADDR
|
||||
- if (from->sa_family == AF_INET)
|
||||
+ if (from->sa_family == AF_INET || !from->sa_family)
|
||||
setsockopt(s, IPPROTO_IP, IP_RECVDSTADDR, &on, sizeof(on));
|
||||
#endif
|
||||
#ifdef IP_PKTINFO
|
||||
- if (from->sa_family == AF_INET)
|
||||
+ if (from->sa_family == AF_INET || !from->sa_family)
|
||||
setsockopt(s, IPPROTO_IP, IP_PKTINFO, &on, sizeof(on));
|
||||
#endif
|
||||
#ifdef HAVE_IPV6
|
||||
#ifdef IPV6_RECVPKTINFO
|
||||
- if (from->sa_family == AF_INET6)
|
||||
+ if (from->sa_family == AF_INET6 || !from->sa_family)
|
||||
setsockopt(s, IPPROTO_IPV6, IPV6_RECVPKTINFO, &on, sizeof(on));
|
||||
#endif
|
||||
#endif
|
||||
@ -1,34 +1,23 @@
|
||||
Patch originally from Fedora
|
||||
|
||||
http://pkgs.fedoraproject.org/cgit/tftp.git/
|
||||
https://src.fedoraproject.org/rpms/tftp.git
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
diff -up tftp-hpa-0.49/config.h.cmd_arg tftp-hpa-0.49/config.h
|
||||
--- tftp-hpa-0.49/config.h.cmd_arg 2010-04-19 15:29:10.567331454 +0200
|
||||
+++ tftp-hpa-0.49/config.h 2010-04-20 07:33:03.133232772 +0200
|
||||
@@ -291,6 +291,7 @@ typedef int socklen_t;
|
||||
diff -up tftp-hpa-5.3/config.h.cmd_arg tftp-hpa-5.3/config.h
|
||||
--- tftp-hpa-5.3/config.h.cmd_arg 2024-05-30 00:40:13.000000000 +0200
|
||||
+++ tftp-hpa-5.3/config.h 2025-12-26 22:27:30.933202754 +0100
|
||||
@@ -277,6 +277,7 @@ typedef int socklen_t;
|
||||
/* Prototypes for libxtra functions */
|
||||
|
||||
void *xmalloc(size_t);
|
||||
+void *xrealloc(void *, size_t);
|
||||
char *xstrdup(const char *);
|
||||
|
||||
#ifndef HAVE_BSD_SIGNAL
|
||||
diff -up tftp-hpa-0.49/configure.in.cmd_arg tftp-hpa-0.49/configure.in
|
||||
--- tftp-hpa-0.49/configure.in.cmd_arg 2008-10-21 00:08:31.000000000 +0200
|
||||
+++ tftp-hpa-0.49/configure.in 2010-04-19 11:05:12.387340698 +0200
|
||||
@@ -152,6 +152,7 @@ OBJROOT=`pwd`
|
||||
|
||||
XTRA=false
|
||||
PA_SEARCH_LIBS_AND_ADD(xmalloc, iberty)
|
||||
+PA_SEARCH_LIBS_AND_ADD(xrealloc, iberty)
|
||||
PA_SEARCH_LIBS_AND_ADD(xstrdup, iberty)
|
||||
PA_SEARCH_LIBS_AND_ADD(bsd_signal, bsd, bsdsignal)
|
||||
PA_SEARCH_LIBS_AND_ADD(getopt_long, getopt, getopt_long)
|
||||
diff -up tftp-hpa-0.49/lib/xrealloc.c.cmd_arg tftp-hpa-0.49/lib/xrealloc.c
|
||||
--- tftp-hpa-0.49/lib/xrealloc.c.cmd_arg 2010-04-19 11:05:12.387340698 +0200
|
||||
+++ tftp-hpa-0.49/lib/xrealloc.c 2010-04-19 11:05:12.387340698 +0200
|
||||
#ifndef HAVE_SIGHANDLER_T
|
||||
diff -up tftp-hpa-5.3/lib/xrealloc.c.cmd_arg tftp-hpa-5.3/lib/xrealloc.c
|
||||
--- tftp-hpa-5.3/lib/xrealloc.c.cmd_arg 2025-12-26 22:19:59.751870026 +0100
|
||||
+++ tftp-hpa-5.3/lib/xrealloc.c 2025-12-26 22:19:59.751870026 +0100
|
||||
@@ -0,0 +1,20 @@
|
||||
+/*
|
||||
+ * xrealloc.c
|
||||
@ -50,9 +39,9 @@ diff -up tftp-hpa-0.49/lib/xrealloc.c.cmd_arg tftp-hpa-0.49/lib/xrealloc.c
|
||||
+
|
||||
+ return p;
|
||||
+}
|
||||
diff -up tftp-hpa-0.49/tftp/main.c.cmd_arg tftp-hpa-0.49/tftp/main.c
|
||||
--- tftp-hpa-0.49/tftp/main.c.cmd_arg 2008-10-21 00:08:31.000000000 +0200
|
||||
+++ tftp-hpa-0.49/tftp/main.c 2010-04-19 11:05:12.389329337 +0200
|
||||
diff -up tftp-hpa-5.3/tftp/main.c.cmd_arg tftp-hpa-5.3/tftp/main.c
|
||||
--- tftp-hpa-5.3/tftp/main.c.cmd_arg 2024-05-30 00:40:13.000000000 +0200
|
||||
+++ tftp-hpa-5.3/tftp/main.c 2025-12-26 22:19:59.752870023 +0100
|
||||
@@ -89,11 +89,14 @@ int connected;
|
||||
const struct modes *mode;
|
||||
#ifdef WITH_READLINE
|
||||
@ -0,0 +1,29 @@
|
||||
Patch originally from Fedora
|
||||
|
||||
https://src.fedoraproject.org/rpms/tftp.git
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
diff -up tftp-hpa-5.3/tftpd/recvfrom.c.pktinfo tftp-hpa-5.3/tftpd/recvfrom.c
|
||||
--- tftp-hpa-5.3/tftpd/recvfrom.c.pktinfo 2024-05-30 00:40:13.000000000 +0200
|
||||
+++ tftp-hpa-5.3/tftpd/recvfrom.c 2025-12-26 22:30:37.142522362 +0100
|
||||
@@ -170,16 +170,16 @@ myrecvfrom(int s, void *buf, int len, un
|
||||
|
||||
/* Try to enable getting the return address */
|
||||
#ifdef IP_RECVDSTADDR
|
||||
- if (from->sa.sa_family == AF_INET)
|
||||
+ if (from->sa.sa_family == AF_INET || !from->sa.sa_family)
|
||||
setsockopt(s, IPPROTO_IP, IP_RECVDSTADDR, &on, sizeof(on));
|
||||
#endif
|
||||
#ifdef IP_PKTINFO
|
||||
- if (from->sa.sa_family == AF_INET)
|
||||
+ if (from->sa.sa_family == AF_INET || !from->sa.sa_family)
|
||||
setsockopt(s, IPPROTO_IP, IP_PKTINFO, &on, sizeof(on));
|
||||
#endif
|
||||
#ifdef HAVE_IPV6
|
||||
#ifdef IPV6_RECVPKTINFO
|
||||
- if (from->sa.sa_family == AF_INET6)
|
||||
+ if (from->sa.sa_family == AF_INET6 || !from->sa.sa_family)
|
||||
setsockopt(s, IPPROTO_IPV6, IPV6_RECVPKTINFO, &on, sizeof(on));
|
||||
#endif
|
||||
#endif
|
||||
@ -1,4 +1,4 @@
|
||||
From 6ed1eb8829dee351b54e183bc42c007cb306aaa5 Mon Sep 17 00:00:00 2001
|
||||
From 2be04543d790d9ec29fa8522f07f221468ccd033 Mon Sep 17 00:00:00 2001
|
||||
From: Zhang Xiao <xiao.zhang@windriver.com>
|
||||
Date: Wed, 11 Jun 2014 14:01:16 +0800
|
||||
Subject: [PATCH] tftp-hpa: bug fix on separated CR and LF
|
||||
@ -34,5 +34,5 @@ index b4d4ffe..b4ea3f2 100644
|
||||
c = *p++; /* pick up a character */
|
||||
if (prevchar == '\r') { /* if prev char was cr */
|
||||
--
|
||||
1.8.5.2.233.g932f7e4
|
||||
2.34.1
|
||||
|
||||
|
||||
@ -1,18 +0,0 @@
|
||||
# default: off
|
||||
# description: The tftp server serves files using the trivial file transfer \
|
||||
# protocol. The tftp protocol is often used to boot diskless \
|
||||
# workstations, download configuration files to network-aware printers, \
|
||||
# and to start the installation process for some operating systems.
|
||||
service tftp
|
||||
{
|
||||
socket_type = dgram
|
||||
protocol = udp
|
||||
wait = yes
|
||||
user = root
|
||||
server = /usr/sbin/in.tftpd-hpa
|
||||
server_args = -s /var/lib/tftpboot
|
||||
disable = yes
|
||||
per_source = 11
|
||||
cps = 100 2
|
||||
flags = IPv6
|
||||
}
|
||||
@ -5,51 +5,47 @@ booting diskless workstations. The tftp package provides the user \
|
||||
interface for TFTP, which allows users to transfer files to and from a \
|
||||
remote machine. This program and TFTP provide very little security, \
|
||||
and should not be enabled unless it is expressly needed."
|
||||
DEPENDS = "readline"
|
||||
HOMEPAGE = "https://git.kernel.org/pub/scm/network/tftp/tftp-hpa.git/"
|
||||
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"
|
||||
|
||||
|
||||
SRC_URI = "http://kernel.org/pub/software/network/tftp/tftp-hpa/tftp-hpa-${PV}.tar.bz2 \
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/network/tftp/tftp-hpa.git;protocol=https;branch=master;tag=tftp-hpa-${PV} \
|
||||
file://tftp-0.40-remap.patch \
|
||||
file://tftp-0.42-tftpboot.patch \
|
||||
file://tftp-0.49-chk_retcodes.patch \
|
||||
file://tftp-0.49-cmd_arg.patch \
|
||||
file://tftp-hpa-5.3-cmd_arg.patch \
|
||||
file://tftp-hpa-0.39-tzfix.patch \
|
||||
file://tftp-hpa-0.49-fortify-strcpy-crash.patch \
|
||||
file://tftp-hpa-0.49-stats.patch \
|
||||
file://tftp-hpa-5.2-pktinfo.patch \
|
||||
file://default \
|
||||
file://init \
|
||||
file://tftp-hpa-5.3-pktinfo.patch \
|
||||
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://0001-tftp-Mark-toplevel-definition-as-external.patch \
|
||||
file://0001-tftp-Remove-double-inclusion-of-signal.h.patch \
|
||||
file://default \
|
||||
file://init \
|
||||
file://tftpd-hpa.socket \
|
||||
file://tftpd-hpa.service \
|
||||
"
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "46c9bd20bbffa62f79c958c7b99aac21"
|
||||
SRC_URI[sha256sum] = "0a9f88d4c1c02687b4853b02ab5dd8779d4de4ffdb9b2e5c9332841304d1a269"
|
||||
SRCREV = "15c4f369ee741e9205dc28ce631aaf6799193b04"
|
||||
|
||||
inherit autotools-brokensep update-rc.d update-alternatives systemd
|
||||
|
||||
export AR = "${HOST_PREFIX}ar cq"
|
||||
DEPENDS = "readline"
|
||||
|
||||
EXTRA_OECONF += "--disable-option-checking"
|
||||
EXTRA_OECONF = "--enable-largefile \
|
||||
--enable-year2038 \
|
||||
--with-readline \
|
||||
--without-tcpwrappers \
|
||||
"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
|
||||
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
|
||||
PACKAGECONFIG[ipv6] = "--with-ipv6,--without-ipv6,"
|
||||
|
||||
# configure.in has errors
|
||||
do_configure() {
|
||||
oe_runconf
|
||||
}
|
||||
CACHED_CONFIGUREVARS:libc-musl = "ac_cv_type_socklen_t=yes"
|
||||
|
||||
do_install() {
|
||||
oe_runmake install INSTALLROOT=${D}
|
||||
@ -57,20 +53,25 @@ do_install() {
|
||||
mv ${D}${sbindir}/in.tftpd ${D}${sbindir}/in.tftpd-hpa
|
||||
|
||||
install -m 755 -d ${D}${localstatedir}/lib/tftpboot/
|
||||
install -d ${D}${sysconfdir}/init.d
|
||||
install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
|
||||
install -d ${D}${sysconfdir}/default
|
||||
install -m 0644 ${UNPACKDIR}/default ${D}${sysconfdir}/default/tftpd-hpa
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then
|
||||
install -d ${D}${sysconfdir}/default
|
||||
install -m 0644 ${UNPACKDIR}/default ${D}${sysconfdir}/default/tftpd-hpa
|
||||
|
||||
install -d ${D}${systemd_unitdir}/system
|
||||
install -m 0644 ${UNPACKDIR}/tftpd-hpa.socket ${D}${systemd_unitdir}/system
|
||||
install -m 0644 ${UNPACKDIR}/tftpd-hpa.service ${D}${systemd_unitdir}/system
|
||||
sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/tftpd-hpa.service
|
||||
install -d ${D}${sysconfdir}/init.d
|
||||
install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
sed -i 's!/usr/sbin/!${sbindir}/!g' ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
sed -i 's!/etc/!${sysconfdir}/!g' ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
sed -i 's!/var/!${localstatedir}/!g' ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
sed -i 's!^PATH=.*!PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}${sysconfdir}/init.d/tftpd-hpa
|
||||
fi
|
||||
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
|
||||
install -d ${D}${systemd_unitdir}/system
|
||||
install -m 0644 ${UNPACKDIR}/tftpd-hpa.socket ${D}${systemd_unitdir}/system
|
||||
install -m 0644 ${UNPACKDIR}/tftpd-hpa.service ${D}${systemd_unitdir}/system
|
||||
sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_unitdir}/system/tftpd-hpa.service
|
||||
fi
|
||||
}
|
||||
|
||||
FILES:${PN} = "${bindir}"
|
||||
@ -92,7 +93,6 @@ ALTERNATIVE:${PN} = "tftp"
|
||||
ALTERNATIVE_TARGET[tftp] = "${bindir}/tftp-hpa"
|
||||
ALTERNATIVE_PRIORITY = "100"
|
||||
|
||||
|
||||
SYSTEMD_PACKAGES = "tftp-hpa-server"
|
||||
SYSTEMD_SERVICE:tftp-hpa-server = "tftpd-hpa.socket tftpd-hpa.service"
|
||||
SYSTEMD_AUTO_ENABLE:tftp-hpa-server = "enable"
|
||||
Loading…
x
Reference in New Issue
Block a user