Opened 20 months ago
#67134 new defect
vsftpd @3.0.5 (net) fails on connection, apparently due setrlimit() syscall with undefined argument in Monterey
Reported by: | philscott799 | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.8.1 |
Keywords: | execution failure | Cc: | |
Port: | vsftpd |
Description
$ telnet localhost 21 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 500 OOPS: setrlimit Connection closed by foreign host.
This apparently happens because Apple has dropped support for the RLIMIT_AS argument to the setrlimit() syscall in Monterey. The documentation of syscall.c in the distribution mentions that this argument is also missing in OpenBSD and the author has provided an #ifdef to isolate the offending code for that operating system. It's not clear why this #ifdef doesn't also work for macOS.
It seems to me that the easiest fix for this would be to undef RLIMIT_AS in the compile options, although I am no programmer so I may have misunderstood the problem.
FYI the homebrew folks have patched the code in syscall.c, https://github.com/Homebrew/homebrew-core/issues/88570
I have emailed the developer of vsftpd who has not replied.