#
aa092012 |
| 01-Oct-2024 |
Viktor Szakats |
tests: fixup `checkcmd` `PATH` on non-unixy platforms Do not add unixy system directories to `PATH` when looking up commands on Windows, MS-DOS or OS/2. Cherry-picked from #1494
tests: fixup `checkcmd` `PATH` on non-unixy platforms Do not add unixy system directories to `PATH` when looking up commands on Windows, MS-DOS or OS/2. Cherry-picked from #14949 Closes #15106
show more ...
|
#
9c1ab7fa |
| 01-Oct-2024 |
Viktor Szakats |
tests: fix `%POSIX_PWD` on native Windows Perl Though this variable isn't used in any of the current tests. Cherry-picked from #14949 Closes #15104
|
#
68c35861 |
| 30-Sep-2024 |
Viktor Szakats |
tests: replace hard-coded `/dev/null` with variable - add variable for the null device filename and use that in Perl code. - initialize this variable with `NUL` on native Windows. -
tests: replace hard-coded `/dev/null` with variable - add variable for the null device filename and use that in Perl code. - initialize this variable with `NUL` on native Windows. - add `%DEV_NULL` variable and use it in tests. Fixes `The system cannot find the path specified.` messages seen when running `runtests.pl` with native Windows Perl. Also adjust code to not break mcedit syntax highlighting. Cherry-picked from #14949 Closes #15098
show more ...
|
#
31a29fc6 |
| 30-Sep-2024 |
Viktor Szakats |
tests: add and use `%PERL` variable to refer to the Perl binary To ensure Perl invocations within tests call the same Perl binary used for running the tests, as specified or auto-detecte
tests: add and use `%PERL` variable to refer to the Perl binary To ensure Perl invocations within tests call the same Perl binary used for running the tests, as specified or auto-detected via `PERL` env (autotools) or `PERL_EXECUTABLE` setting (cmake). Instead of the first `perl` executable found in `PATH`.) Cherry-picked from #14949 Closes #15097
show more ...
|
#
f6cb707b |
| 29-Sep-2024 |
Viktor Szakats |
tests: replace `%PWD` with `%FILE_PWD` for `file://` Before this patch not all tests used `%FILE_PWD` with the `file://` protocol. Keep `%PWD` for test1145, to keep it fail on W
tests: replace `%PWD` with `%FILE_PWD` for `file://` Before this patch not all tests used `%FILE_PWD` with the `file://` protocol. Keep `%PWD` for test1145, to keep it fail on Windows like the test expects. Cherry-picked from #14949 Closes #15090
show more ...
|
#
841fbdb6 |
| 26-Sep-2024 |
Stefan Eissing |
tests: improve mqtt server handling Check that the mqtt server process actually is running. Handle its port number similar to other servers. Closes #15059
|
#
e61c5eb4 |
| 26-Sep-2024 |
Stefan Eissing |
tests: check http/2 and http/3 server responsiveness Check responsiveness of http/3 server when running. Also, a test case with http/2 or http/3 server requirement now implicitl
tests: check http/2 and http/3 server responsiveness Check responsiveness of http/3 server when running. Also, a test case with http/2 or http/3 server requirement now implicitly drags in a 'http' server and we need no longer mention that in testdata. Closes #15058
show more ...
|
#
dc284be4 |
| 26-Sep-2024 |
Daniel Stenberg |
tests: remove the %FTPTIME3 variable Nothing uses it. Ref: #15056 Closes #15064
|
#
5fb1b64f |
| 25-Sep-2024 |
Daniel Stenberg |
tests: introduce %CLIENT6IP-NB This is the %CLIENT6IP variable - but without outmost brackets since some commmand lines need the address without the brackets. With this variable we c
tests: introduce %CLIENT6IP-NB This is the %CLIENT6IP variable - but without outmost brackets since some commmand lines need the address without the brackets. With this variable we can run three more tests without prechecks. Closes #15039
show more ...
|
#
7aa2b4e0 |
| 25-Sep-2024 |
Daniel Stenberg |
tests: make precheck for HTTP on 127.0.0.1 into a feature It can now be required easily in <features> instead of having perl code in a <precheck>. Closes #15039
|
#
8ad3597d |
| 18-Sep-2024 |
Stefan Eissing |
tests: testrunner reliability improvements - perform torture tests with '-j2' for shorter runtime - when waiting on test results overly long, log the tests waited for and eventuall
tests: testrunner reliability improvements - perform torture tests with '-j2' for shorter runtime - when waiting on test results overly long, log the tests waited for and eventually log the test log directories for easier analysis what is wrong in CI jobs. - sockfilt.c: treat the windows errno 109 (ERROR_BROKEN_PIPE) as a socket closed by the client and do not exit. - when verifying https server, do not in addition check the http server behind it also - when tearing down the stunnel of a non-responsive https server, tear down the http server with it Closes #14960
show more ...
|
#
e53523fe |
| 11-Sep-2024 |
Viktor Szakats |
CI: move Azure jobs to GHA, fix fallouts, sshserver, runtests tweaks CI: - GHA/windows: enable OpenSSH server, SysInternals `handle`, `impacket`. Skip `impacket` on MSYS2 due
CI: move Azure jobs to GHA, fix fallouts, sshserver, runtests tweaks CI: - GHA/windows: enable OpenSSH server, SysInternals `handle`, `impacket`. Skip `impacket` on MSYS2 due to install failure. Skip OpenSSH server for old/standalone mingw-w64 (building curl without SSH there.) - GHA/windows: make test tool installs a separate step. - GHA/cygwin: enable OpenSSH server. Skip `impacket`: it's compiling for 7 minutes then breaks. Skip `stunnel` due to sluggish test run performance. (This update is unrelated to Azure jobs.) - GHA/linux: migrate Linux jobs from Azure CI. - GHA/linux: migrate scanbuild job from Azure CI. - GHA/linux: enable libssh2 in a job. Also enable valgrind. - CI/windows: enable SSPI in two jobs. - CI/windows: disable zlib in one more job. - CI/windows: improve `if` condition checking GnuTLS. - CI/windows: ignore SFTP/SCP tests as necessary. - universally ignore SCP tests, they fail everywhere. - ignore test 612. - ignore test 613 616 618 with MSYS2 mingw-w64. - ignore test 614 with libssh. - ignore all SFTP with MSYS2 native. - ignore all SFTP with vcpkg with `libssh2[core,zlib]`. - ignore a couple of SFTP tests with MSYS2 mingw-w64. (This matches settings on Azure CI.) - GHA/windows: ignore failing 1451 'Basic SMB request' test for old mingw-w64 7.3.0 (but not for 9.5.0!): ``` 2024-09-11 21:45:59,738 ERROR smbComNegotiate: b'NT LM 0.12\x00' is not in list [...] curl: (7) Could not connect to server [...] FAIL 1451: 'Basic SMB request' SMB ``` Ref: https://github.com/curl/curl/actions/runs/10816280746/job/30007130770#step:13:3546 - CI/Azure: delete, now moved to GHA. sshserver: - sshserver: fix permissions for SSH host key on Windows, allowing sshd to launch. - sshserver: fix initializing config paths with Cygwin/MSYS2 sshd. - sshserver: fix initializing config paths in parallel builds. - sshserver: delete redundant `DenyUsers`. This also opens the way to allow multiple usernames. - sshserver: fix `AllowUsers` for GHA/windows, by allowing the domainless username again. Follow-up to 3ee7c676ec8ef32e3a9cb4d0fb2929a8335d58db #5721 - sshserver: fix `Deprecated option` warnings in `sshd_config`: ``` D:/a/curl/curl/bld/tests/log/2/server/curl_sshd_config line 7: Deprecated option AuthorizedKeysFile2 D:/a/curl/curl/bld/tests/log/2/server/curl_sshd_config line 25: Deprecated option KeyRegenerationInterval D:/a/curl/curl/bld/tests/log/2/server/curl_sshd_config line 35: Deprecated option RhostsRSAAuthentication D:/a/curl/curl/bld/tests/log/2/server/curl_sshd_config line 36: Deprecated option RSAAuthentication D:/a/curl/curl/bld/tests/log/2/server/curl_sshd_config line 37: Deprecated option ServerKeyBits D:/a/curl/curl/bld/tests/log/2/server/curl_sshd_config line 41: Deprecated option UseLogin ``` - sshserver: fix `Deprecated option` warnings in `ssh_config` with Cygwin/MSYS2. - sshserver: fix dumping config files due to the filenames missing their full paths. - sshserver: add workaround to make `logmsg` messages visible. Before this patch they only went to a file and never shown. runtests: - runtests: log details when these Windows commands are called: `handle`, `taskkill`, `tasklist`. - runtests: add documentation links to Windows tools: `handle`, `taskkill`, `tasklist`, `icacls`. - runtests: add `-t` (kill whole tree) option to `taskkill` in `servers.pm`, syncing it with the other `taskkill` call. Follow-up to bc72a78a11764558639131d51fa8e7c81ee1e113 #14488 - runtests: show warning if Sysinternals `handle` tool is missing. - runtests: drop Windows XP Home compatibility `tskill` call. The call was made on all Windows versions. It's possibly overkill to do this, because XP Home is probably rarely used for running curl tests these days. In case it's needed, it'd be better to put it under an explicit option. - runtests: show Perl version and path. Fix/silence fallouts: - unit2603: fix building with disabled HTTP support. - unit2604: silence `-Woverlength-strings` warnings in C89 mode. - test437, test1614: fix to pass with no-IPv6 builds. Closes #14859
show more ...
|
#
e70c22b6 |
| 09-Sep-2024 |
Stefan Eissing |
tests: tweak lock file handling and timers - when server are killed by a test case, do not wait for the server lock file to go away. These tests are mostly about client timeouts and th
tests: tweak lock file handling and timers - when server are killed by a test case, do not wait for the server lock file to go away. These tests are mostly about client timeouts and the server will hang until killed. - when killing a server successfully, check for a remaining lock file, log its existence and remove it. - lower the delay timings on SLOWDOWN by half - add SLOWDOWNDATA server command to only slow down the FTP data bytes, not the control ones. - lower some timeout values Closes #14835
show more ...
|
#
bc72a78a |
| 11-Aug-2024 |
Aki <75532970+AkiSakurai@users.noreply.github.com> |
GHA/windows: enable HTTPS tests with stunnel - install stunnel Closes #14488
|
#
fa461b4e |
| 07-Aug-2024 |
Aki <75532970+AkiSakurai@users.noreply.github.com> |
GHA/macos: enable HTTPS tests with stunnel - Install stunnel. - Regenerate certificates (as SecureTransport requires a validity period less than 398 days). - Restart
GHA/macos: enable HTTPS tests with stunnel - Install stunnel. - Regenerate certificates (as SecureTransport requires a validity period less than 398 days). - Restart server if it is unresponsive. - Do not hardcode the SHA-256 base64 public pinned key. - Ignore test 313 as SecureTransport does not support crl file. - Ignore tests 1631 and 1632 as SecureTransport is not yet able to shut down FTP over HTTPS gracefully. - Add a CMake target for generating certificates. Closes #14486
show more ...
|
#
453d032b |
| 15-Aug-2024 |
Viktor Szakats |
tidy-up: misc build, tests, `lib/macos.c` - mkhelp.pl: drop unused assigment. - Makefile.mk: update a comment. - lib/macos.c: delete redundant block. - fix two typos. Cl
tidy-up: misc build, tests, `lib/macos.c` - mkhelp.pl: drop unused assigment. - Makefile.mk: update a comment. - lib/macos.c: delete redundant block. - fix two typos. Closes #14558
show more ...
|
#
0e73b69b |
| 26-Jun-2024 |
Daniel Stenberg |
runtests: support %DATE for YYYY-MM-DD of right now
|
#
348882ee |
| 26-Jun-2024 |
Daniel Stenberg |
runtests: support %VERNUM For the plain version number of the built curl without -DEV etc. Only digits and dots.
|
#
ad50d810 |
| 17-Dec-2023 |
Yedaya Katsman |
tests: respect $TMPDIR when creating unix domain sockets When running on termux, where $TMPDIR isn't /tmp, running the tests failed, since the server config tried creating sockets in /tm
tests: respect $TMPDIR when creating unix domain sockets When running on termux, where $TMPDIR isn't /tmp, running the tests failed, since the server config tried creating sockets in /tmp, without checking the temp dir config. Use the TMPDIR variable that makes it find the correct directory everywhere [0] [0] https://perldoc.perl.org/File::Temp#tempfile Closes #12545
show more ...
|
#
64936919 |
| 13-Oct-2023 |
Dan Fandrich |
tests: Fix Windows test helper tool search & use it for handle64 The checkcmd() and checktestcmd() functions would not have worked on Windows due to hard-coding the UNIX PATH separator c
tests: Fix Windows test helper tool search & use it for handle64 The checkcmd() and checktestcmd() functions would not have worked on Windows due to hard-coding the UNIX PATH separator character and not adding .exe file extension. This meant that tools like stunnel, valgrind and nghttpx would not have been found and used on Windows, and inspection of previous test runs show none of those being found in pure Windows CI builds. With this fixed, they can be used to detect the handle64.exe program before attempting to use it. When handle64.exe was called unconditionally without it existing, it caused perl to abort the test run with the error The running command stopped because the preference variable "ErrorActionPreference" or common parameter is set to Stop: sh: handle64.exe: command not found Closes #12115
show more ...
|
#
9db7f171 |
| 06-Sep-2023 |
Dan Fandrich |
tests: quadruple the %FTPTIME2 and %FTPTIME3 timeouts This gives more of a margin for error when running on overloaded CI servers. Ref: #11328
|
#
959e613e |
| 01-Aug-2023 |
Alexander Jaeger |
misc: fix various typos Closes #11561
|
#
1177c741 |
| 14-Jun-2023 |
Dan Fandrich |
runtests: rename server command file The name ftpserver.cmd was historical and has been used for more than ftp for many years now. Rename it to plain server.cmd to reduce confusion.
|
#
8cf41895 |
| 20-May-2023 |
Daniel Stenberg |
tests/servers: generate temp names in /tmp for unix domain sockets ... instead of putting them in the regular pid directories because systems generally have strict length requirements fo
tests/servers: generate temp names in /tmp for unix domain sockets ... instead of putting them in the regular pid directories because systems generally have strict length requirements for the path name to be shorter than 107 bytes and we easily hit that boundary otherwise. The new concept generates two random names: one for the socks daemon and one for http. Reported-by: Andy Fiddaman Fixes #11152 Closes #11166
show more ...
|
#
4efa0b57 |
| 29-May-2023 |
Daniel Stenberg |
tests/servers.pm: pick unused port number with a server socket This change replaces the previous method of picking a port number at random to try to start servers on, then retrying up to
tests/servers.pm: pick unused port number with a server socket This change replaces the previous method of picking a port number at random to try to start servers on, then retrying up to ten times with new random numbers each time, with a function that creates a server socket on port zero, thereby getting a suitable random port set by the kernel. That server socket is then closed and that port number is used to setup the actual test server on. There is a risk that *another* server can be started on the machine in the time gap, but the server verification feature will detect that. Closes #11220
show more ...
|