From 111313352547a475f5a67fdd846773dc5868ed69 Mon Sep 17 00:00:00 2001 From: JacobBarthelmeh Date: Fri, 21 Jun 2024 09:25:51 -0600 Subject: [PATCH] Merge pull request #712 from ejohnstown/echo-refresh Echoserver Refresh --- configure.ac | 2 +- examples/echoserver/echoserver.c | 19 +++++++++++++++++++ examples/echoserver/include.am | 2 +- tests/include.am | 9 +++++++++ 4 files changed, 30 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index cf95d02fb..04c60c587 100644 --- a/configure.ac +++ b/configure.ac @@ -313,7 +313,7 @@ AM_CONDITIONAL([BUILD_KEYGEN],[test "x$ENABLED_KEYGEN" = "xyes"]) AM_CONDITIONAL([BUILD_SCP],[test "x$ENABLED_SCP" = "xyes"]) AM_CONDITIONAL([BUILD_SFTP],[test "x$ENABLED_SFTP" = "xyes"]) AM_CONDITIONAL([BUILD_FWD],[test "x$ENABLED_FWD" = "xyes"]) -AM_CONDITIONAL([BUILD_TERM],[test "x$ENABLED_TERM" = "xyes"]) +AM_CONDITIONAL([BUILD_TERM],[test "x$ENABLED_PTERM" = "xyes"]) AM_CONDITIONAL([BUILD_SHELL],[test "x$ENABLED_SHELL" = "xyes"]) AM_CONDITIONAL([BUILD_AGENT],[test "x$ENABLED_AGENT" = "xyes"]) AM_CONDITIONAL([BUILD_SSHD],[test "x$ENABLED_SSHD" = "xyes"]) diff --git a/examples/echoserver/echoserver.c b/examples/echoserver/echoserver.c index 4c8e0f8d9..e43711325 100644 --- a/examples/echoserver/echoserver.c +++ b/examples/echoserver/echoserver.c @@ -864,6 +864,25 @@ static int ssh_worker(thread_ctx_t* threadCtx) ChildRunning = 1; #endif +#if defined(WOLFSSH_TERM) && defined(WOLFSSH_SHELL) + /* set initial size of terminal based on saved size */ +#if defined(HAVE_SYS_IOCTL_H) + wolfSSH_DoModes(ssh->modes, ssh->modesSz, childFd); + { + struct winsize s = {0}; + + s.ws_col = ssh->widthChar; + s.ws_row = ssh->heightRows; + s.ws_xpixel = ssh->widthPixels; + s.ws_ypixel = ssh->heightPixels; + + ioctl(childFd, TIOCSWINSZ, &s); + } +#endif /* HAVE_SYS_IOCTL_H */ + + wolfSSH_SetTerminalResizeCtx(ssh, (void*)&childFd); +#endif /* WOLFSSH_TERM && WOLFSSH_SHELL */ + while (ChildRunning) { fd_set readFds; WS_SOCKET_T maxFd; diff --git a/examples/echoserver/include.am b/examples/echoserver/include.am index 532f0f7bb..4192d605c 100644 --- a/examples/echoserver/include.am +++ b/examples/echoserver/include.am @@ -7,5 +7,5 @@ examples_echoserver_echoserver_SOURCES = examples/echoserver/echoserver.c \ examples/echoserver/echoserver.h examples_echoserver_echoserver_LDADD = src/libwolfssh.la examples_echoserver_echoserver_DEPENDENCIES = src/libwolfssh.la -examples_echoserver_echoserver_CFLAGS = $(AM_CFLAGS) +examples_echoserver_echoserver_CFLAGS = $(AM_CFLAGS) ${AM_CPPFLAGS} endif diff --git a/tests/include.am b/tests/include.am index c3d7e7508..e8b1b548e 100644 --- a/tests/include.am +++ b/tests/include.am @@ -18,6 +18,9 @@ endif if BUILD_SFTP tests_unit_test_CPPFLAGS += -DWOLFSSH_SFTP endif +if BUILD_TERM +tests_unit_test_CPPFLAGS += -DWOLFSSH_TERM +endif if BUILD_SHELL tests_unit_test_CPPFLAGS += -DWOLFSSH_SHELL endif @@ -45,6 +48,9 @@ endif if BUILD_SFTP tests_api_test_CPPFLAGS += -DWOLFSSH_SFTP endif +if BUILD_TERM +tests_api_test_CPPFLAGS += -DWOLFSSH_TERM +endif if BUILD_SHELL tests_api_test_CPPFLAGS += -DWOLFSSH_SHELL endif @@ -77,6 +83,9 @@ endif if BUILD_SFTP tests_testsuite_test_CPPFLAGS += -DWOLFSSH_SFTP endif +if BUILD_TERM +tests_testsuite_test_CPPFLAGS += -DWOLFSSH_TERM +endif if BUILD_SHELL tests_testsuite_test_CPPFLAGS += -DWOLFSSH_SHELL endif