curl/CMake
Patrick Monnerat bbac7c19e5
tftpd: always use curl's own tftp.h
Using the system's provided arpa/tftp.h and optimizing, GCC 12 detects
and reports a stringop-overread warning:

tftpd.c: In function ‘write_behind.isra’:
tftpd.c:485:12: warning: ‘write’ reading between 1 and 2147483647 bytes from a region of size 0 [-Wstringop-overread]
  485 |     return write(test->ofile, writebuf, count);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from tftpd.c:71:
/usr/include/arpa/tftp.h:58:30: note: source object ‘tu_data’ of size 0
   58 |                         char tu_data[0];        /* data or error string */
      |                              ^~~~~~~

This occurs because writebuf points to this field and the latter
cannot be considered as being of dynamic length because it is not
the last field in the structure. Thus it is bound to its declared
size.

This commit always uses curl's own version of tftp.h where the
target field is last in its structure, effectively avoiding the
warning.

As HAVE_ARPA_TFTP_H is not used anymore, cmake/configure checks for
arpa/tftp.h are removed.

Closes #11897
2023-09-21 08:47:07 +02:00
..
Platforms tftpd: always use curl's own tftp.h 2023-09-21 08:47:07 +02:00
cmake_uninstall.cmake.in copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
CMakeConfigurableFile.in copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
curl-config.cmake.in cmake: fix to use variable for the curl namespace 2023-08-09 12:01:46 +00:00
CurlSymbolHiding.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
CurlTests.c tidy-up: mostly whitespace nits 2023-08-31 23:02:10 +00:00
FindBearSSL.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindBrotli.cmake cmake: fix dev warning due to mismatched arg 2023-02-12 01:45:48 -05:00
FindCARES.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindGSS.cmake cmake: use list APPEND syntax for CMAKE_REQUIRED_DEFINITIONS 2023-01-24 03:09:09 -05:00
FindLibPSL.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindLibSSH2.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindMbedTLS.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindMSH3.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindNGHTTP2.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindNGHTTP3.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindNGTCP2.cmake cmake: update ngtcp2 detection 2023-07-24 18:13:53 +00:00
FindQUICHE.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindWolfSSL.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
FindZstd.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
Macros.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00
OtherTests.cmake cmake: drop HAVE_LIBWINMM and HAVE_LIBWS2_32 feature checks 2023-08-08 09:10:03 +00:00
PickyWarnings.cmake cmake: speed up and extend picky clang/gcc options 2023-04-16 22:28:25 +00:00
Utilities.cmake copyright: update all copyright lines and remove year ranges 2023-01-03 09:19:21 +01:00