diff --git a/ChangeLog.md b/ChangeLog.md
index 651c0f35..ea4febaa 100644
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,55 @@
+# wolfSSH v1.4.17 (March 25, 2024)
+
+## Vulnerabilities
+
+* Fixes a vulnerability where a properly crafted SSH client can bypass user
+ authentication in the wolfSSH server code. The added fix filters the
+ messages that are allowed during different operational states.
+
+## Notes
+
+* When building wolfSSL/wolfCrypt versions before v5.6.6 with CMake,
+ wolfSSH may have a problem with RSA keys. This is due to wolfSSH not
+ checking on the size of `___uint128_t`. wolfSSH sees the RSA structure
+ as the wrong size. You will have to define `HAVE___UINT128_T` if you
+ know you have it and are using it in wolfSSL. wolfSSL v5.6.6 exports that
+ define in options.h when using CMake.
+* The example server in directory examples/server/server.c has been removed.
+ It was never kept up to date, the echoserver did its job as an example and
+ test server.
+
+## New Features
+
+* Added functions to set algorithms lists for KEX at run-time, and some
+ functions to inspect which algorithms are set or are available to use.
+* In v1.4.15, we had disabled SHA-1 in the build by default. SHA-1 has been
+ re-enabled in the build and is now "soft" disabled, where algorithms using
+ it can be configured for KEX.
+* Add Curve25519 KEX support for server/client key agreement.
+
+## Improvements
+
+* Clean up some issues when building for Nucleus.
+* Clean up some issues when building for Windows.
+* Clean up some issues when building for QNX.
+* Added more wolfSSHd testing.
+* Added more appropriate build option guard checking.
+* General improvements for the ESP32 builds.
+* Better terminal support in Windows.
+* Better I/O pipes and return codes when running commands or scripts over an
+ SSH connection.
+
+## Fixes
+
+* Fix shell terminal window resizing and it sets up the environment better.
+* Fix some corner cases with the SFTP testing.
+* Fix some corner cases with SFTP in general.
+* Fix verifying RSA signatures.
+* Add masking of file mode bits for Zephyr.
+* Fix leak of terminal modes cache.
+
+---
+
# wolfSSH v1.4.15 (December 22, 2023)
## Vulnerabilities
diff --git a/apps/wolfssh/common.c b/apps/wolfssh/common.c
index f83d135f..5d5a90d3 100644
--- a/apps/wolfssh/common.c
+++ b/apps/wolfssh/common.c
@@ -1,6 +1,6 @@
/* common.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
@@ -451,7 +451,8 @@ int ClientPublicKeyCheck(const byte* pubKey, word32 pubKeySz, void* ctx)
current->ipString);
WLOG(WS_LOG_DEBUG,
"\texpecting host IP : %s", (char*)ctx);
- if (XSTRCMP(ctx, current->ipString) == 0) {
+ if (XSTRCMP((const char*)ctx,
+ current->ipString) == 0) {
WLOG(WS_LOG_DEBUG, "\tmatched!");
ipMatch = 1;
}
diff --git a/apps/wolfssh/common.h b/apps/wolfssh/common.h
index 14d45dcb..0f7b8414 100644
--- a/apps/wolfssh/common.h
+++ b/apps/wolfssh/common.h
@@ -1,6 +1,6 @@
/* common.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/apps/wolfssh/wolfssh.c b/apps/wolfssh/wolfssh.c
index d3b60178..73a3cbba 100644
--- a/apps/wolfssh/wolfssh.c
+++ b/apps/wolfssh/wolfssh.c
@@ -1,6 +1,6 @@
/* wolfssh.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
@@ -794,7 +794,7 @@ static int config_parse_command_line(struct config* config,
free(config->user);
}
sz = WSTRLEN(cursor);
- config->user = WMALLOC(sz + 1, NULL, 0);
+ config->user = (char*)WMALLOC(sz + 1, NULL, 0);
strcpy(config->user, cursor);
cursor = found + 1;
}
diff --git a/apps/wolfsshd/auth.c b/apps/wolfsshd/auth.c
index 4be65162..f60a299a 100644
--- a/apps/wolfsshd/auth.c
+++ b/apps/wolfsshd/auth.c
@@ -1,6 +1,6 @@
/* auth.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/apps/wolfsshd/auth.h b/apps/wolfsshd/auth.h
index ddc6e90a..53868da8 100644
--- a/apps/wolfsshd/auth.h
+++ b/apps/wolfsshd/auth.h
@@ -1,6 +1,6 @@
/* auth.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/apps/wolfsshd/configuration.c b/apps/wolfsshd/configuration.c
index 76f6bef0..aef6a1ff 100644
--- a/apps/wolfsshd/configuration.c
+++ b/apps/wolfsshd/configuration.c
@@ -1,6 +1,6 @@
/* configuration.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/apps/wolfsshd/configuration.h b/apps/wolfsshd/configuration.h
index 68807975..e39d9fa2 100644
--- a/apps/wolfsshd/configuration.h
+++ b/apps/wolfsshd/configuration.h
@@ -1,6 +1,6 @@
/* configuration.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/apps/wolfsshd/wolfsshd.c b/apps/wolfsshd/wolfsshd.c
index a7ef2f0a..ccaafd17 100644
--- a/apps/wolfsshd/wolfsshd.c
+++ b/apps/wolfsshd/wolfsshd.c
@@ -1,6 +1,6 @@
/* wolfsshd.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
@@ -1391,8 +1391,9 @@ static int SHELL_Subsystem(WOLFSSHD_CONNECTION* conn, WOLFSSH* ssh,
#if defined(HAVE_SYS_IOCTL_H)
wolfSSH_DoModes(ssh->modes, ssh->modesSz, childFd);
{
- struct winsize s = {0};
+ struct winsize s;
+ WMEMSET(&s, 0, sizeof(s));
s.ws_col = ssh->widthChar;
s.ws_row = ssh->heightRows;
s.ws_xpixel = ssh->widthPixels;
diff --git a/configure.ac b/configure.ac
index 4070c217..cf95d02f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,9 +1,9 @@
# wolfssh
-# Copyright (C) 2014-2023 wolfSSL Inc.
+# Copyright (C) 2014-2024 wolfSSL Inc.
# All right reserved.
-AC_COPYRIGHT([Copyright (C) 2014-2023 wolfSSL Inc.])
-AC_INIT([wolfssh],[1.4.16],[support@wolfssl.com],[wolfssh],[https://www.wolfssl.com])
+AC_COPYRIGHT([Copyright (C) 2014-2024 wolfSSL Inc.])
+AC_INIT([wolfssh],[1.4.17],[support@wolfssl.com],[wolfssh],[https://www.wolfssl.com])
AC_PREREQ([2.63])
AC_CONFIG_AUX_DIR([build-aux])
@@ -18,18 +18,19 @@ AC_ARG_PROGRAM
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_HEADERS([config.h])
-WOLFSSH_LIBRARY_VERSION=15:3:8
-# | | |
-# +------+ | +---+
-# | | |
+WOLFSSH_LIBRARY_VERSION=16:0:9
+# | | |
+# +-----+ | +----+
+# | | |
# current:revision:age
-# | | |
-# | | +- increment if interfaces have been added
-# | | set to zero if interfaces have been removed
-# | | or changed
-# | +- increment if source code has changed
-# | set to zero if current is incremented
-# +- increment if interfaces have been added, removed or changed
+# | | |
+# | | +- increment if interfaces have been added
+# | | +- set to zero if interfaces have been
+# | | removed or changed
+# | +- increment if source code has changed
+# | +- set to zero if current is incremented
+# +- increment if interfaces have been added, removed
+# or changed
AC_SUBST([WOLFSSH_LIBRARY_VERSION])
LT_PREREQ([2.2])
diff --git a/examples/client/client.c b/examples/client/client.c
index 974c321f..92ad394d 100644
--- a/examples/client/client.c
+++ b/examples/client/client.c
@@ -1,6 +1,6 @@
/* client.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/client/client.h b/examples/client/client.h
index 80aa61ee..c02d80d9 100644
--- a/examples/client/client.h
+++ b/examples/client/client.h
@@ -1,6 +1,6 @@
/* client.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/client/common.c b/examples/client/common.c
index 97051386..302dea58 100644
--- a/examples/client/common.c
+++ b/examples/client/common.c
@@ -1,6 +1,6 @@
/* common.c
*
- * Copyright (C) 2014-2022 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
@@ -403,7 +403,8 @@ int ClientPublicKeyCheck(const byte* pubKey, word32 pubKeySz, void* ctx)
current->ipString);
WLOG(WS_LOG_DEBUG,
"\texpecting host IP : %s", (char*)ctx);
- if (XSTRCMP(ctx, current->ipString) == 0) {
+ if (XSTRCMP((const char*)ctx,
+ current->ipString) == 0) {
WLOG(WS_LOG_DEBUG, "\tmatched!");
ipMatch = 1;
}
diff --git a/examples/client/common.h b/examples/client/common.h
index 68c36efe..d27d22f1 100644
--- a/examples/client/common.h
+++ b/examples/client/common.h
@@ -1,6 +1,6 @@
/* common.h
*
- * Copyright (C) 2014-2022 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/echoserver/echoserver.c b/examples/echoserver/echoserver.c
index def9e1f7..721eeda4 100644
--- a/examples/echoserver/echoserver.c
+++ b/examples/echoserver/echoserver.c
@@ -1,6 +1,6 @@
/* echoserver.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/echoserver/echoserver.h b/examples/echoserver/echoserver.h
index 704206db..45fcb432 100644
--- a/examples/echoserver/echoserver.h
+++ b/examples/echoserver/echoserver.h
@@ -1,6 +1,6 @@
/* echoserver.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/portfwd/portfwd.c b/examples/portfwd/portfwd.c
index 173d3189..ecc38f7e 100644
--- a/examples/portfwd/portfwd.c
+++ b/examples/portfwd/portfwd.c
@@ -1,6 +1,6 @@
/* portfwd.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/portfwd/wolfssh_portfwd.h b/examples/portfwd/wolfssh_portfwd.h
index 3a3c5e47..996360b2 100644
--- a/examples/portfwd/wolfssh_portfwd.h
+++ b/examples/portfwd/wolfssh_portfwd.h
@@ -1,6 +1,6 @@
/* wolfssh_portfwd.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/scpclient/scpclient.c b/examples/scpclient/scpclient.c
index a23fdef4..5e404e4d 100644
--- a/examples/scpclient/scpclient.c
+++ b/examples/scpclient/scpclient.c
@@ -1,6 +1,6 @@
/* scpclient.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/scpclient/scpclient.h b/examples/scpclient/scpclient.h
index dcbd9508..c46e4ce2 100644
--- a/examples/scpclient/scpclient.h
+++ b/examples/scpclient/scpclient.h
@@ -1,6 +1,6 @@
/* scpclient.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/sftpclient/sftpclient.c b/examples/sftpclient/sftpclient.c
index 01a2308b..5bb412f2 100644
--- a/examples/sftpclient/sftpclient.c
+++ b/examples/sftpclient/sftpclient.c
@@ -1,6 +1,6 @@
/* sftpclient.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/examples/sftpclient/sftpclient.h b/examples/sftpclient/sftpclient.h
index 1d515a69..03e1e55c 100644
--- a/examples/sftpclient/sftpclient.h
+++ b/examples/sftpclient/sftpclient.h
@@ -1,6 +1,6 @@
/* sftpclient.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Espressif/ESP-IDF/default_espressif_options.h b/ide/Espressif/ESP-IDF/default_espressif_options.h
index b1cac4f0..e77d81ff 100644
--- a/ide/Espressif/ESP-IDF/default_espressif_options.h
+++ b/ide/Espressif/ESP-IDF/default_espressif_options.h
@@ -1,7 +1,7 @@
/* wolfssl options.h
* generated from configure options
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/CMakeLists.txt b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/CMakeLists.txt
index 2b754ab8..ee051c8d 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/CMakeLists.txt
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/CMakeLists.txt
@@ -1,22 +1,21 @@
# [wolfSSL Project]/CMakeLists.txt
#
-# Copyright (C) 2006-2023 WOLFSSL Inc.
+# Copyright (C) 2014-2024 wolfSSL Inc.
#
-# This file is part of WOLFSSH.
+# This file is part of wolfSSH.
#
-# WOLFSSH is free software; you can redistribute it and/or modify
+# wolfSSH is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# WOLFSSH is distributed in the hope that it will be useful,
+# wolfSSH is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+# along with wolfSSH. If not, see .
#
# cmake for WOLFSSH Espressif projects
#
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssh/CMakeLists.txt b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssh/CMakeLists.txt
index c3e5d37a..11b8d6a4 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssh/CMakeLists.txt
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssh/CMakeLists.txt
@@ -1,22 +1,21 @@
# [wolfSSL Project]/components/wolfssh/CMakeLists.txt
#
-# Copyright (C) 2006-2023 WOLFSSL Inc.
+# Copyright (C) 2014-2024 wolfSSL Inc.
#
-# This file is part of WOLFSSH.
+# This file is part of wolfSSH.
#
-# WOLFSSH is free software; you can redistribute it and/or modify
+# wolfSSH is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# WOLFSSH is distributed in the hope that it will be useful,
+# wolfSSH is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+# along with wolfSSH. If not, see .
#
# cmake for WOLFSSH Espressif projects v5.6.6 r1
#
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssl/CMakeLists.txt b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssl/CMakeLists.txt
index d58704b8..fb86bdfd 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssl/CMakeLists.txt
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssl/CMakeLists.txt
@@ -1,21 +1,20 @@
#
-# Copyright (C) 2006-2023 wolfSSL Inc.
+# Copyright (C) 2014-2024 wolfSSL Inc.
#
-# This file is part of wolfSSL.
+# This file is part of wolfSSH.
#
-# wolfSSL is free software; you can redistribute it and/or modify
+# wolfSSH is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# wolfSSL is distributed in the hope that it will be useful,
+# wolfSSH is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+# along with wolfSSH. If not, see .
#
# cmake for wolfssl Espressif projects
#
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssl/include/user_settings.h b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssl/include/user_settings.h
index 41f588a0..6d0e197e 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssl/include/user_settings.h
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/components/wolfssl/include/user_settings.h
@@ -1,22 +1,21 @@
/* user_settings.h
*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
#include /* essential to chip set detection */
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/CMakeLists.txt b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/CMakeLists.txt
index d58c2ae1..0945f322 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/CMakeLists.txt
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/CMakeLists.txt
@@ -1,22 +1,21 @@
# [wolfSSL Project]/main/CMakeLists.txt
#
-# Copyright (C) 2006-2023 WOLFSSL Inc.
+# Copyright (C) 2014-2024 wolfSSL Inc.
#
-# This file is part of WOLFSSH.
+# This file is part of wolfSSH.
#
-# WOLFSSH is free software; you can redistribute it and/or modify
+# wolfSSH is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# WOLFSSH is distributed in the hope that it will be useful,
+# wolfSSH is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+# along with wolfSSH. If not, see .
#
# cmake for WOLFSSH Espressif projects
#
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/echoserver.c b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/echoserver.c
index 2eae6076..49c90d42 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/echoserver.c
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/echoserver.c
@@ -1,6 +1,6 @@
/* echoserver.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/echoserver.h b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/echoserver.h
index ac7e17cf..48fd59d1 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/echoserver.h
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/echoserver.h
@@ -1,6 +1,6 @@
/* echoserver.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/main.h b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/main.h
index 7e07ec1d..73d22769 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/main.h
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/main.h
@@ -1,22 +1,21 @@
/* template main.h
*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
#ifndef _MAIN_H_
#define _MAIN_H_
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/time_helper.h b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/time_helper.h
index a47f9400..e244ddd1 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/time_helper.h
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/time_helper.h
@@ -1,21 +1,20 @@
/*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
/* common Espressif time_helper v5.6.3.001 */
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/wifi_connect.h b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/wifi_connect.h
index a0014d4c..9ac4d7f5 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/wifi_connect.h
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/include/wifi_connect.h
@@ -1,22 +1,21 @@
/* wifi_connect.h
*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
#ifndef _WIFI_CONNECT_H_
#define _WIFI_CONNECT_H_
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/main.c b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/main.c
index 7781f428..8934ece4 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/main.c
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/main.c
@@ -1,22 +1,21 @@
/* main.c
*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
#include "sdkconfig.h"
#include "main.h"
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/time_helper.c b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/time_helper.c
index 0abf70c5..498c53d7 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/time_helper.c
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/time_helper.c
@@ -1,22 +1,21 @@
/* time_helper.c
*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
/* common Espressif time_helper v5.6.3.002 */
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/wifi_connect.c b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/wifi_connect.c
index 384a8627..973eb4ff 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/wifi_connect.c
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_echoserver/main/wifi_connect.c
@@ -1,22 +1,21 @@
/* wifi_connect.c
*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
#include "wifi_connect.h"
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssh/CMakeLists.txt b/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssh/CMakeLists.txt
index 6d54b9e7..b32d5cb8 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssh/CMakeLists.txt
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssh/CMakeLists.txt
@@ -1,22 +1,21 @@
# Espressif component/wolfssh/CMakeLists.txt
#
-# Copyright (C) 2006-2023 WOLFSSL Inc.
+# Copyright (C) 2014-2024 wolfSSL Inc.
#
-# This file is part of WOLFSSH.
+# This file is part of wolfSSH.
#
-# WOLFSSH is free software; you can redistribute it and/or modify
+# wolfSSH is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# WOLFSSH is distributed in the hope that it will be useful,
+# wolfSSH is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+# along with wolfSSH. If not, see .
#
# cmake for WOLFSSH Espressif projects
#
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssl/CMakeLists.txt b/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssl/CMakeLists.txt
index d58704b8..fb86bdfd 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssl/CMakeLists.txt
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssl/CMakeLists.txt
@@ -1,21 +1,20 @@
#
-# Copyright (C) 2006-2023 wolfSSL Inc.
+# Copyright (C) 2014-2024 wolfSSL Inc.
#
-# This file is part of wolfSSL.
+# This file is part of wolfSSH.
#
-# wolfSSL is free software; you can redistribute it and/or modify
+# wolfSSH is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# wolfSSL is distributed in the hope that it will be useful,
+# wolfSSH is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+# along with wolfSSH. If not, see .
#
# cmake for wolfssl Espressif projects
#
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssl/include/user_settings.h b/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssl/include/user_settings.h
index 41f588a0..6d0e197e 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssl/include/user_settings.h
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_template/components/wolfssl/include/user_settings.h
@@ -1,22 +1,21 @@
/* user_settings.h
*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
#include /* essential to chip set detection */
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/CMakeLists.txt b/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/CMakeLists.txt
index 9ae9d6bf..0021fd7e 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/CMakeLists.txt
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/CMakeLists.txt
@@ -1,22 +1,21 @@
# [wolfSSL Project]/main/CMakeLists.txt
#
-# Copyright (C) 2006-2023 WOLFSSL Inc.
+# Copyright (C) 2014-2024 wolfSSL Inc.
#
-# This file is part of WOLFSSH.
+# This file is part of wolfSSH.
#
-# WOLFSSH is free software; you can redistribute it and/or modify
+# wolfSSH is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
-# WOLFSSH is distributed in the hope that it will be useful,
+# wolfSSH is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+# along with wolfSSH. If not, see .
#
# cmake for WOLFSSH Espressif projects
#
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/include/main.h b/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/include/main.h
index 7e07ec1d..73d22769 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/include/main.h
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/include/main.h
@@ -1,22 +1,21 @@
/* template main.h
*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
#ifndef _MAIN_H_
#define _MAIN_H_
diff --git a/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/main.c b/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/main.c
index 6204cc39..af6f87cc 100644
--- a/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/main.c
+++ b/ide/Espressif/ESP-IDF/examples/wolfssh_template/main/main.c
@@ -1,22 +1,21 @@
/* main.c
*
- * Copyright (C) 2006-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
- * This file is part of wolfSSL.
+ * This file is part of wolfSSH.
*
- * wolfSSL is free software; you can redistribute it and/or modify
+ * wolfSSH is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
+ * the Free Software Foundation; either version 3 of the License, or
* (at your option) any later version.
*
- * wolfSSL is distributed in the hope that it will be useful,
+ * wolfSSH is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
+ * along with wolfSSH. If not, see .
*/
#include "main.h"
diff --git a/ide/IAR-EWARM/Projects/lib/myFilesystem.h b/ide/IAR-EWARM/Projects/lib/myFilesystem.h
index 0fcdacc8..0a38ea46 100644
--- a/ide/IAR-EWARM/Projects/lib/myFilesystem.h
+++ b/ide/IAR-EWARM/Projects/lib/myFilesystem.h
@@ -1,6 +1,6 @@
/* dummy_filesystem.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Renesas/cs+/common/strings.h b/ide/Renesas/cs+/common/strings.h
index 0c46b4f1..efe786a2 100644
--- a/ide/Renesas/cs+/common/strings.h
+++ b/ide/Renesas/cs+/common/strings.h
@@ -1,6 +1,6 @@
/* strings.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Renesas/cs+/common/unistd.h b/ide/Renesas/cs+/common/unistd.h
index 71943bce..d108f898 100644
--- a/ide/Renesas/cs+/common/unistd.h
+++ b/ide/Renesas/cs+/common/unistd.h
@@ -1,6 +1,6 @@
/* unistd.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Renesas/cs+/common/user_settings.h b/ide/Renesas/cs+/common/user_settings.h
index 8553ce71..5e43a826 100644
--- a/ide/Renesas/cs+/common/user_settings.h
+++ b/ide/Renesas/cs+/common/user_settings.h
@@ -1,6 +1,6 @@
/* user_settings.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Renesas/cs+/common/wolfssh_csplus_usersettings.h b/ide/Renesas/cs+/common/wolfssh_csplus_usersettings.h
index 2a54ccae..c37ec20f 100644
--- a/ide/Renesas/cs+/common/wolfssh_csplus_usersettings.h
+++ b/ide/Renesas/cs+/common/wolfssh_csplus_usersettings.h
@@ -1,6 +1,6 @@
/* wolfssh_csplus_usersettings..h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Renesas/cs+/demo_server/wolfssh_demo.c b/ide/Renesas/cs+/demo_server/wolfssh_demo.c
index b9f6b0ae..866be2f7 100644
--- a/ide/Renesas/cs+/demo_server/wolfssh_demo.c
+++ b/ide/Renesas/cs+/demo_server/wolfssh_demo.c
@@ -1,6 +1,6 @@
/* wolfssh_demo.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Renesas/cs+/demo_server/wolfssh_demo.h b/ide/Renesas/cs+/demo_server/wolfssh_demo.h
index 2eeb34e0..e9becd13 100644
--- a/ide/Renesas/cs+/demo_server/wolfssh_demo.h
+++ b/ide/Renesas/cs+/demo_server/wolfssh_demo.h
@@ -1,6 +1,6 @@
/* wolfssh_demo.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/Renesas/cs+/demo_server/wolfssh_dummy.c b/ide/Renesas/cs+/demo_server/wolfssh_dummy.c
index 4ccac07a..3edaff78 100644
--- a/ide/Renesas/cs+/demo_server/wolfssh_dummy.c
+++ b/ide/Renesas/cs+/demo_server/wolfssh_dummy.c
@@ -1,6 +1,6 @@
/* wolfssh_dummy.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/STM32CUBE/main.c b/ide/STM32CUBE/main.c
index 76155abd..3827fd82 100644
--- a/ide/STM32CUBE/main.c
+++ b/ide/STM32CUBE/main.c
@@ -1,6 +1,6 @@
/* main.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/STM32CUBE/myFilesystem.h b/ide/STM32CUBE/myFilesystem.h
index 31eefd45..cfacbc9d 100644
--- a/ide/STM32CUBE/myFilesystem.h
+++ b/ide/STM32CUBE/myFilesystem.h
@@ -1,6 +1,6 @@
/* myFilesystem.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/STM32CUBE/userio_template.h b/ide/STM32CUBE/userio_template.h
index 4b814428..049335e0 100644
--- a/ide/STM32CUBE/userio_template.h
+++ b/ide/STM32CUBE/userio_template.h
@@ -1,6 +1,6 @@
/* userio_template.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/STM32CUBE/wolfssh_test.c b/ide/STM32CUBE/wolfssh_test.c
index ba9c5a44..60459a88 100644
--- a/ide/STM32CUBE/wolfssh_test.c
+++ b/ide/STM32CUBE/wolfssh_test.c
@@ -1,6 +1,6 @@
/* wolfssh_test.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/ide/STM32CUBE/wolfssh_test.h b/ide/STM32CUBE/wolfssh_test.h
index 063027b2..fc88dc6a 100644
--- a/ide/STM32CUBE/wolfssh_test.h
+++ b/ide/STM32CUBE/wolfssh_test.h
@@ -1,6 +1,6 @@
/* wolfssh_test.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/agent.c b/src/agent.c
index 78fc73c0..bfda4930 100644
--- a/src/agent.c
+++ b/src/agent.c
@@ -1,6 +1,6 @@
/* agent.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/certman.c b/src/certman.c
index 584f9552..40b8eba7 100644
--- a/src/certman.c
+++ b/src/certman.c
@@ -1,6 +1,6 @@
/* certman.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/internal.c b/src/internal.c
index 3adeda6e..ea402881 100644
--- a/src/internal.c
+++ b/src/internal.c
@@ -1,6 +1,6 @@
/* internal.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/io.c b/src/io.c
index a3e6af1c..fb25ec37 100644
--- a/src/io.c
+++ b/src/io.c
@@ -1,6 +1,6 @@
/* io.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/keygen.c b/src/keygen.c
index 46b0431e..2fb4b3a9 100644
--- a/src/keygen.c
+++ b/src/keygen.c
@@ -1,6 +1,6 @@
/* keygen.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/log.c b/src/log.c
index 2f66d5a9..2c96c5d9 100644
--- a/src/log.c
+++ b/src/log.c
@@ -1,6 +1,6 @@
/* log.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/misc.c b/src/misc.c
index f78eb72a..5e4579b8 100644
--- a/src/misc.c
+++ b/src/misc.c
@@ -1,6 +1,6 @@
/* misc.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/port.c b/src/port.c
index 03501908..f8bd4337 100644
--- a/src/port.c
+++ b/src/port.c
@@ -1,6 +1,6 @@
/* port.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/ssh.c b/src/ssh.c
index 73ee5fea..46e83f56 100644
--- a/src/ssh.c
+++ b/src/ssh.c
@@ -1,6 +1,6 @@
/* ssh.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/wolfscp.c b/src/wolfscp.c
index c50be706..1bbb89cd 100644
--- a/src/wolfscp.c
+++ b/src/wolfscp.c
@@ -1,6 +1,6 @@
/* wolfscp.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/src/wolfsftp.c b/src/wolfsftp.c
index b2ecf1fd..0a90f10f 100644
--- a/src/wolfsftp.c
+++ b/src/wolfsftp.c
@@ -1,6 +1,6 @@
/* wolfsftp.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
@@ -2042,7 +2042,8 @@ int wolfSSH_SFTP_RecvOpen(WOLFSSH* ssh, int reqId, byte* data, word32 maxSz)
}
{
- WS_SFTP_FILEATRB fileAtr = { 0 };
+ WS_SFTP_FILEATRB fileAtr;
+ WMEMSET(&fileAtr, 0, sizeof(fileAtr));
if (SFTP_GetAttributes(ssh->fs,
dir, &fileAtr, 1, ssh->ctx->heap) == WS_SUCCESS) {
if ((fileAtr.per & FILEATRB_PER_MASK_TYPE) != FILEATRB_PER_FILE) {
@@ -8767,7 +8768,8 @@ int wolfSSH_SFTP_Put(WOLFSSH* ssh, char* from, char* to, byte resume,
WLOG(WS_LOG_SFTP, "SFTP PUT STATE: OPEN LOCAL");
#ifndef USE_WINDOWS_API
{
- WS_SFTP_FILEATRB fileAtr = { 0 };
+ WS_SFTP_FILEATRB fileAtr;
+ WMEMSET(&fileAtr, 0, sizeof(fileAtr));
if (SFTP_GetAttributes(ssh->fs,
from, &fileAtr, 1, ssh->ctx->heap)
== WS_SUCCESS) {
diff --git a/src/wolfterm.c b/src/wolfterm.c
index 65925683..691ff388 100644
--- a/src/wolfterm.c
+++ b/src/wolfterm.c
@@ -1,6 +1,6 @@
/* wolfterm.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/tests/api.c b/tests/api.c
index 2de3ab6f..3c738bc8 100644
--- a/tests/api.c
+++ b/tests/api.c
@@ -1,6 +1,6 @@
/* api.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/tests/api.h b/tests/api.h
index a59be081..8c814256 100644
--- a/tests/api.h
+++ b/tests/api.h
@@ -1,6 +1,6 @@
/* api.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/tests/sftp.c b/tests/sftp.c
index 1e4aa067..75ab904e 100644
--- a/tests/sftp.c
+++ b/tests/sftp.c
@@ -1,6 +1,6 @@
/* sftp.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/tests/sftp.h b/tests/sftp.h
index cb1860ba..d69e2433 100644
--- a/tests/sftp.h
+++ b/tests/sftp.h
@@ -1,6 +1,6 @@
/* sftp.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/tests/testsuite.c b/tests/testsuite.c
index c9441b24..4914cc29 100644
--- a/tests/testsuite.c
+++ b/tests/testsuite.c
@@ -1,6 +1,6 @@
/* testsuite.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/tests/testsuite.h b/tests/testsuite.h
index 7391237f..c40bd09e 100644
--- a/tests/testsuite.h
+++ b/tests/testsuite.h
@@ -1,6 +1,6 @@
/* testsuite.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/tests/unit.c b/tests/unit.c
index 5c9898d3..335813b6 100644
--- a/tests/unit.c
+++ b/tests/unit.c
@@ -1,6 +1,6 @@
/* unit.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/tests/unit.h b/tests/unit.h
index 39a1767a..364a1925 100644
--- a/tests/unit.h
+++ b/tests/unit.h
@@ -1,6 +1,6 @@
/* unit.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/agent.h b/wolfssh/agent.h
index 97f3220a..c3d6412a 100644
--- a/wolfssh/agent.h
+++ b/wolfssh/agent.h
@@ -1,6 +1,6 @@
/* agent.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/certman.h b/wolfssh/certman.h
index a4fe2c01..63e4542d 100644
--- a/wolfssh/certman.h
+++ b/wolfssh/certman.h
@@ -1,6 +1,6 @@
/* certman.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/certs_test.h b/wolfssh/certs_test.h
index a5de5752..1d60530f 100644
--- a/wolfssh/certs_test.h
+++ b/wolfssh/certs_test.h
@@ -1,6 +1,6 @@
/* certs_test.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/error.h b/wolfssh/error.h
index eab35366..3749a55b 100644
--- a/wolfssh/error.h
+++ b/wolfssh/error.h
@@ -1,6 +1,6 @@
/* error.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/internal.h b/wolfssh/internal.h
index 2a81a49a..6ff2721c 100644
--- a/wolfssh/internal.h
+++ b/wolfssh/internal.h
@@ -1,6 +1,6 @@
/* internal.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/keygen.h b/wolfssh/keygen.h
index 52b4f34b..9cf58e7c 100644
--- a/wolfssh/keygen.h
+++ b/wolfssh/keygen.h
@@ -1,6 +1,6 @@
/* keygen.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/log.h b/wolfssh/log.h
index a51d3783..26f20212 100644
--- a/wolfssh/log.h
+++ b/wolfssh/log.h
@@ -1,6 +1,6 @@
/* log.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/misc.h b/wolfssh/misc.h
index d0501cf8..55dd6cf8 100644
--- a/wolfssh/misc.h
+++ b/wolfssh/misc.h
@@ -1,6 +1,6 @@
/* misc.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/port.h b/wolfssh/port.h
index 3a4820ef..b65d32fd 100644
--- a/wolfssh/port.h
+++ b/wolfssh/port.h
@@ -1,6 +1,6 @@
/* port.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/settings.h b/wolfssh/settings.h
index e4aa0166..12e7527d 100644
--- a/wolfssh/settings.h
+++ b/wolfssh/settings.h
@@ -1,6 +1,6 @@
/* settings.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/ssh.h b/wolfssh/ssh.h
index a303ae6c..3b4f65e0 100644
--- a/wolfssh/ssh.h
+++ b/wolfssh/ssh.h
@@ -1,6 +1,6 @@
/* ssh.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/test.h b/wolfssh/test.h
index cf276b10..402eb558 100644
--- a/wolfssh/test.h
+++ b/wolfssh/test.h
@@ -1,6 +1,6 @@
/* test.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/version.h b/wolfssh/version.h
index 34fdb11a..c616365e 100644
--- a/wolfssh/version.h
+++ b/wolfssh/version.h
@@ -1,6 +1,6 @@
/* version.h.in
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
@@ -35,8 +35,8 @@
extern "C" {
#endif
-#define LIBWOLFSSH_VERSION_STRING "1.4.16"
-#define LIBWOLFSSH_VERSION_HEX 0x01004016
+#define LIBWOLFSSH_VERSION_STRING "1.4.17"
+#define LIBWOLFSSH_VERSION_HEX 0x01004017
#ifdef __cplusplus
}
diff --git a/wolfssh/version.h.in b/wolfssh/version.h.in
index e9a5cf04..b44be340 100644
--- a/wolfssh/version.h.in
+++ b/wolfssh/version.h.in
@@ -1,6 +1,6 @@
/* version.h.in
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/visibility.h b/wolfssh/visibility.h
index ae41a312..fa9da681 100644
--- a/wolfssh/visibility.h
+++ b/wolfssh/visibility.h
@@ -1,6 +1,6 @@
/* visibility.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/wolfscp.h b/wolfssh/wolfscp.h
index fedf5771..eba468dc 100644
--- a/wolfssh/wolfscp.h
+++ b/wolfssh/wolfscp.h
@@ -1,6 +1,6 @@
/* wolfscp.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/wolfssh/wolfsftp.h b/wolfssh/wolfsftp.h
index 8fbbdbb7..b5d4afce 100644
--- a/wolfssh/wolfsftp.h
+++ b/wolfssh/wolfsftp.h
@@ -1,6 +1,6 @@
/* wolfsftp.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/zephyr/samples/tests/tests.c b/zephyr/samples/tests/tests.c
index 56d18c91..cd5e5435 100644
--- a/zephyr/samples/tests/tests.c
+++ b/zephyr/samples/tests/tests.c
@@ -1,6 +1,6 @@
/* tests.c
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/zephyr/samples/tests/user_settings.h b/zephyr/samples/tests/user_settings.h
index 0f755a54..1cfbb585 100644
--- a/zephyr/samples/tests/user_settings.h
+++ b/zephyr/samples/tests/user_settings.h
@@ -1,6 +1,6 @@
/* user_settings.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*
diff --git a/zephyr/samples/tests/wolfssl_user_settings.h b/zephyr/samples/tests/wolfssl_user_settings.h
index 35cd345f..03b12c94 100644
--- a/zephyr/samples/tests/wolfssl_user_settings.h
+++ b/zephyr/samples/tests/wolfssl_user_settings.h
@@ -1,6 +1,6 @@
/* wolfssl_user_settings.h
*
- * Copyright (C) 2014-2023 wolfSSL Inc.
+ * Copyright (C) 2014-2024 wolfSSL Inc.
*
* This file is part of wolfSSH.
*