6ba6187077
Fixes the following security issues:
CVE-2019-11365: An issue was discovered in atftpd in atftp 0.7.1. A remote
attacker may send a crafted packet triggering a stack-based buffer overflow
due to an insecurely implemented strncpy call. The vulnerability is
triggered by sending an error packet of 3 bytes or fewer. There are
multiple instances of this vulnerable strncpy pattern within the code base,
specifically within tftpd_file.c, tftp_file.c, tftpd_mtftp.c, and
tftp_mtftp.c.
CVE-2019-11366: An issue was discovered in atftpd in atftp 0.7.1. It does
not lock the thread_list_mutex mutex before assigning the current thread
data structure. As a result, the daemon is vulnerable to a denial of
service attack due to a NULL pointer dereference. If thread_data is NULL
when assigned to current, and modified by another thread before a certain
tftpd_list.c check, there is a crash when dereferencing current->next.
For details, see
https://pulsesecurity.co.nz/advisories/atftpd-multiple-vulnerabilities
Patch 0001-Makefile.am-link-against-libpthread-for-atftp.patch patches
Makefile.am, so add _AUTORECONF.
CFLAGS is now correctly handled since commit f9dbb96844167f (configure.ac:
fix hard setting of CFLAGS), so drop the workaround about passing
-fgnu89-inline in CPPFLAGS.
Add a hash for the license file.
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Reviewed-by: Ryan Barnett <ryan.barnett@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 457837087d
)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
38 lines
1.1 KiB
Makefile
38 lines
1.1 KiB
Makefile
################################################################################
|
|
#
|
|
# atftp
|
|
#
|
|
################################################################################
|
|
|
|
ATFTP_VERSION = 0.7.2
|
|
ATFTP_SITE = http://sourceforge.net/projects/atftp/files
|
|
ATFTP_LICENSE = GPL-2.0+
|
|
ATFTP_LICENSE_FILES = LICENSE
|
|
# 0001-Makefile.am-link-against-libpthread-for-atftp.patch patches Makefile.am
|
|
ATFTP_AUTORECONF = YES
|
|
ATFTP_CONF_OPTS = --disable-libwrap --disable-mtftp
|
|
# For static we need to explicitly link against libpthread
|
|
ATFTP_LIBS = -lpthread
|
|
# -fgnu89-inline is needed to avoid multiple definition error with gcc 5. See
|
|
# https://gcc.gnu.org/gcc-5/porting_to.html.
|
|
ATFTP_CONF_ENV = LIBS="$(ATFTP_LIBS)" \
|
|
CFLAGS="$(TARGET_CFLAGS) -fgnu89-inline"
|
|
|
|
ifeq ($(BR2_PACKAGE_READLINE),y)
|
|
ATFTP_DEPENDENCIES += readline
|
|
ATFTP_CONF_OPTS += --enable-libreadline
|
|
# For static, readline links with ncurses
|
|
ATFTP_LIBS += -lncurses
|
|
else
|
|
ATFTP_CONF_OPTS += --disable-libreadline
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_PCRE),y)
|
|
ATFTP_DEPENDENCIES += pcre
|
|
ATFTP_CONF_OPTS += --enable-libpcre
|
|
else
|
|
ATFTP_CONF_OPTS += --disable-libpcre
|
|
endif
|
|
|
|
$(eval $(autotools-package))
|