Gratuitous changes causing hassle downstream and risks introducing bugs from merge conflicts with OpenSSH upstream
Can you please revert and not do changes like this? I am the maintainer for FreeBSD's OpenSSH-portable port and am trying to apply your patch. But changes like this make it difficult for no gain. It seems you are wanting a fork of OpenSSH but surely you see that changes like this also create hassle for you to update from upstream and risks introducing bugs.
If this is not wanted then perhaps providing a diff should not be supported?
Random examples out of hundreds:
- if (dup2(pin[0], 0) == -1)
+ if (dup2(pin[0], STDIN_FILENO) == -1)
- if (login_getcapbool(lc, "hushlogin", 0) || stat(buf, &st) >= 0)
+ if (login_getcapbool(lc, "hushlogin", 0) || stat(buf, &st) != -1)
In particular this platform-tracing one blocks fixing an actual bug as the 0
there must be getpid()
on FreeBSD (reported to OpenSSH maintainers already).
diff -ruN openssh-8.8p1/platform-tracing.c openssh-8.8p1+x509-13.2.2/platform-tracing.c
--- openssh-8.8p1/platform-tracing.c 2021-09-26 17:03:19.000000000 +0300
+++ openssh-8.8p1+x509-13.2.2/platform-tracing.c 2021-10-11 08:07:01.000000000 +0300
@@ -37,11 +37,12 @@
platform_disable_tracing(int strict)
{
#if defined(HAVE_PROCCTL) && defined(PROC_TRACE_CTL)
- /* On FreeBSD, we should make this process untraceable */
+{ /* On FreeBSD, we should make this process untraceable */
int disable_trace = PROC_TRACE_CTL_DISABLE;
if (procctl(P_PID, 0, PROC_TRACE_CTL, &disable_trace) && strict)
fatal("unable to make the process untraceable");
+}
#endif
#if defined(HAVE_PRCTL) && defined(PR_SET_DUMPABLE)
/* Disable ptrace on Linux without sgid bit */
Edited by Bryan Drewery