You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When trying to build dropbear-2022.83, with only INETD_MODE and DISABLE_SYSLOG, the binary refuses to run, saying: Dropbear inetd mode is incompatible with debug -v or non-syslog.
A comment in the code says: /* log output goes to stderr which would get sent over the inetd network socket */.
But this is inaccurate. Super-servers like s6-tcpserver and tcpsvd, which spawn inetd-mode processes, do not conflate stdout and stderr; the daemon's stdout is sent over the network socket, but the daemon's stderr is properly sent to the logger. Using syslog has never been necessary in inetd mode; my server runs with lots of daemons under s6-tcpserver and no syslogd at all. It worked with the 2020 version of dropbear; I was surprised that it stopped working when I upgraded.
Could the functionality please be restored?
Thanks.
The text was updated successfully, but these errors were encountered:
I hadn't realised stderr worked OK with those.
I'll change it to allow non-syslog. I wonder if there's any way to catch running under an unsupported inetd - there have been cases reported in the past where it seemed to work but then the connection mysteriously broke when debug output was printed.
I think it's more a question of "bad configuration" than "unsupported inetd". Any inetd-like superserver can send stderr to stdout when misconfigured, and that would obviously cause issues - but it's neither on you, nor on the inetd author. Admins are responsible for handling their tools properly.
Thank you for the fix. This allows to debug configuration issues on the ubiquitous systemd, where you can configure StandardError=file:/error_output.txt.
Hi,
When trying to build dropbear-2022.83, with only INETD_MODE and DISABLE_SYSLOG, the binary refuses to run, saying:
Dropbear inetd mode is incompatible with debug -v or non-syslog
.A comment in the code says:
/* log output goes to stderr which would get sent over the inetd network socket */
.But this is inaccurate. Super-servers like s6-tcpserver and tcpsvd, which spawn inetd-mode processes, do not conflate stdout and stderr; the daemon's stdout is sent over the network socket, but the daemon's
stderr
is properly sent to the logger. Using syslog has never been necessary in inetd mode; my server runs with lots of daemons under s6-tcpserver and no syslogd at all. It worked with the 2020 version of dropbear; I was surprised that it stopped working when I upgraded.Could the functionality please be restored?
Thanks.
The text was updated successfully, but these errors were encountered: