From: Damien Miller Date: Mon, 18 Aug 2025 04:22:18 +0000 (+1000) Subject: wrap SIGINFO in ifdef X-Git-Tag: V_10_1_P1~150 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b7ee13fbbb4ebafcf71f29685f053ecb97d1bcef;p=thirdparty%2Fopenssh-portable.git wrap SIGINFO in ifdef --- diff --git a/clientloop.c b/clientloop.c index 677bf40f0..b9a010414 100644 --- a/clientloop.c +++ b/clientloop.c @@ -225,12 +225,14 @@ window_change_handler(int sig) received_window_change_signal = 1; } +#ifdef SIGINFO /* Signal handler for SIGINFO */ static void siginfo_handler(int sig) { siginfo_received = 1; } +#endif /* * Signal handler for signals that cause the program to terminate. These @@ -1522,7 +1524,9 @@ client_loop(struct ssh *ssh, int have_pty, int escape_char_arg, if (ssh_signal(SIGTERM, SIG_IGN) != SIG_IGN) ssh_signal(SIGTERM, signal_handler); ssh_signal(SIGWINCH, window_change_handler); +#ifdef SIGINFO ssh_signal(SIGINFO, siginfo_handler); +#endif if (have_pty) enter_raw_mode(options.request_tty == REQUEST_TTY_FORCE); @@ -1545,9 +1549,12 @@ client_loop(struct ssh *ssh, int have_pty, int escape_char_arg, sigaddset(&bsigset, SIGHUP) == -1 || sigaddset(&bsigset, SIGINT) == -1 || sigaddset(&bsigset, SIGQUIT) == -1 || - sigaddset(&bsigset, SIGTERM) == -1 || - sigaddset(&bsigset, SIGINFO) == -1) + sigaddset(&bsigset, SIGTERM) == -1) error_f("bsigset setup: %s", strerror(errno)); +#ifdef SIGINFO + if (sigaddset(&bsigset, SIGINFO) == -1) + error_f("bsigset setup: %s", strerror(errno)); +#endif /* Main loop of the client for the interactive session mode. */ while (!quit_pending) { diff --git a/serverloop.c b/serverloop.c index 753f56388..4beb2a390 100644 --- a/serverloop.c +++ b/serverloop.c @@ -104,11 +104,13 @@ sigchld_handler(int sig) child_terminated = 1; } +#ifdef SIGINFO static void siginfo_handler(int sig) { siginfo_received = 1; } +#endif static void client_alive_check(struct ssh *ssh) @@ -341,11 +343,14 @@ server_loop2(struct ssh *ssh, Authctxt *authctxt) debug("Entering interactive session for SSH2."); if (sigemptyset(&bsigset) == -1 || - sigaddset(&bsigset, SIGCHLD) == -1 || - sigaddset(&bsigset, SIGINFO) == -1) + sigaddset(&bsigset, SIGCHLD) == -1) error_f("bsigset setup: %s", strerror(errno)); ssh_signal(SIGCHLD, sigchld_handler); +#ifdef SIGINFO + if (sigaddset(&bsigset, SIGINFO) == -1) + error_f("bsigset setup: %s", strerror(errno)); ssh_signal(SIGINFO, siginfo_handler); +#endif child_terminated = 0; connection_in = ssh_packet_get_connection_in(ssh); connection_out = ssh_packet_get_connection_out(ssh);