Commit Graph

50 Commits (a608f1944f7194fb6dd4e1db9fe9068b76e229ca)

Author SHA1 Message Date
Yosuke Shimizu d2eeec5e26 Fix minor issues 2026-03-27 08:27:54 +09:00
John Safranek 8951bd9209 Release v1.4.22
1. Update copyright date to 2026.
2025-12-29 16:53:33 -08:00
JacobBarthelmeh 601d1a27de add user filesystme macro guard around chmod implementation 2025-06-13 16:11:12 -06:00
JacobBarthelmeh 5fb496b9aa add chmod support, update readme and example app 2025-03-19 14:32:18 +07:00
JacobBarthelmeh 4f9e6b5732 remove some trailing white space and initialize get current drive buffer 2025-03-18 15:13:48 +07:00
JacobBarthelmeh 7067b200b8 clear stat struct before use and treat mount as directory 2025-03-18 13:01:04 +07:00
JacobBarthelmeh 3a4c75f651 compiling with port changes, needs work for runtime use 2025-03-02 16:42:04 -07:00
JacobBarthelmeh c4acd86df5 progress on microchip fs port 2025-03-02 15:17:16 -07:00
Andrew Hutchings d108c69c5d Add cppcheck test to GitHub actions
Found and fixed:

* Fix typos in Renesas demo
* Fix uninitialized variable reads
* Fix redundant condition
* Fix argument checks
* Fix some null ptr dereferences
* Fix ambiguous statement
2025-02-05 19:49:01 +00:00
Juliusz Sosinowicz 2b2337055a Add NO_FILESYSTEM to Zephyr port 2024-04-16 16:27:51 +02:00
John Safranek 1736a4cabf
Update Copyright Date
1. Bring all copyright dates up to 2024.
2. Fix a few files with incorrect licensing.
2024-03-22 12:17:09 -07:00
Juliusz Sosinowicz 37412ff50f Init zephyr support
- SSH
- SFTP
- SCP
2023-10-02 20:38:21 +02:00
Fabio Alemagna 092c04fe30 All the filesystem-related W* macros accept a filesystem context pointer as first parameter, to make portability better. 2023-07-21 11:53:40 +02:00
John Safranek 95bcc4541c
Release v1.4.13
1. Update the copyright year in all file header comments.
2. Update the STM32CUBE files to use the correct GPL headers.
2023-04-03 10:41:10 -07:00
John Safranek b816ac5fe8
SFTP List
Updated from peer review comments.
2022-09-20 11:53:56 -07:00
John Safranek a48926b0dd
SFTP List
1. Update wolfSSH_SFTPNAME_readdir() to have a special case getting
   the drive letters at root in Windows.
2. The Win32 APIs can use forward slashes, but cannot have one at the
   beginning of the path before the drive letter. Add a trim function
   to remove the leading slash in the SFTP paths.
3. Update echoserver to always set the default SFTP path to either the
   provided command line option or to the CWD for the echoserver run.
4.  Get the RealPath for the default path
5. Tweak wolfSSH_RealPath() to handle some Windows cases.
6. Added more test cases.
2022-09-16 14:17:31 -07:00
Jacob Barthelmeh 92d1f39065 update copyright date 2022-08-17 16:58:21 -06:00
John Safranek ba42d6f732
Fix missing pread() and pwrite()
1. configure.ac: Check that the DECLs for `pread()` and `pwrite()` exist
   in unistd.h.
2. port.c: If `pread()` or `pwrite()` aren't available, use the local
   versions that are wrappers around `seek()` and `read()` and
   `write()`.
2022-01-27 10:36:42 -08:00
Jacob Barthelmeh ba99ddda68 run license update script 2021-11-04 13:11:53 -06:00
Takashi Kojo 329e45f03c WOLFSSH_USER_FILESYSTEM, fix WOLFSSL_USER_IO conflict 2021-04-23 12:21:56 +09:00
John Safranek 487bcef2cc
Fix Memory
1. A couple places weren't passing the correct heap pointer to free.
   Normally this was ignored in the build because the WMALLOC macro left
   them out. Found using wolfCrypt memory logging.
2. Replaced the call to strdup() with wstrdup() that takes a heap and
   type parameter so sit may allocate a buffer with WMALLOC() and be
   freed correctly by WFREE().
3. Tweaked the client to use a preallocated buffer for the private key
   rather than letting ReadKey allocate one. (Another WFREE() heap/type
   issue.)
2020-09-02 12:11:24 -07:00
Jacob Barthelmeh 633446fcce move guess of SIZEOF_OFF_T in non-autoconf builds to port.h 2020-02-07 15:58:52 -07:00
Chris Conlon 83f8372458 update copyright to 2020 2020-01-03 15:16:47 -08:00
Jacob Barthelmeh 526ca192b3 add check for shifting stats.st_size (type off_t) 2019-12-06 09:55:18 -07:00
Jacob Barthelmeh c5228e0fd5 add check on off_t size to build 2019-12-05 18:22:43 -07:00
Jacob Barthelmeh 328fd66c1e use off_t type with pwrite/pread 2019-12-05 16:35:23 -07:00
Chris Conlon 8e989810b9 SFTP port to MQX 4.2 2019-10-25 14:56:08 -06:00
Jacob Barthelmeh 3b722bf662 maintain Nucleus port 2019-04-08 13:22:36 -06:00
John Safranek 9aaebbb146 Update the copyright to 2019 2019-04-08 10:24:08 -07:00
John Safranek c14de5040b Change the ifdef around the Win32 wrapper functions to be switched off
when SCP or SFTP aren't enabled on a windows build.
2019-03-04 13:52:10 -08:00
John Safranek 854fb8d7e8 Added some porting fixes for OSE. Added the switch USE_OSE_API to enable
them.
2019-02-07 11:55:39 -08:00
John Safranek accd3c299d Add a function to assign-add a 32-bit value to a 64-bit value. The
64-bit value is an array 2 of 32-bit values. In SFTP, changed up all the
uses (most) of word64 to word32 arrays. Not all systems we support have
64-bit types available.
2019-02-06 14:31:31 -08:00
John Safranek 9b817d702c Update some more actions with Windows API calls instead of POSIX. 2019-01-29 17:11:10 -08:00
John Safranek 5512128aa5 1. Fix allocation for UNICODE strings. Need to be (count+1)*2 octets.
2. Added a local dynamic memory type in the ports for strings.
3. Removed the includes for winsock2.h. It is included by windows.h.
4. In the example client, switched fin and fout to macros to stdin and
stdout. While they are FILE in POSIX, in Windows they are a function.
2019-01-25 11:45:46 -08:00
John Safranek 4f8623b9b6 Add wrappers to the UNICODE Win32 functions to translate the strings
from ANSI C strings to wchar_t strings.
2019-01-24 17:34:35 -08:00
John Safranek a457abd11d 1. Initialize the ret value in RecvSetSTAT().
2. Delete trailing commas in a couple enums.
3. Add extern "C" C++ guards around wolfsftp.h.
4. In port.c, comment out the pwrite and pread wrappers for Windows builds.
5. Remove the getcwd from RecvRealPath(), but needs a better fix.
6. Leave out several operations that need to be touched later. Emphasis is to get Get and Put running.
7. Open, Close, Read, Write, have a WINCE version using the Win32 API.
8. Remove the include of stdio.h from port.c for Windows builds.
9. Remove and Rename actions return an error for Windows builds.
2019-01-18 16:53:07 -08:00
Jacob Barthelmeh 86344c7e68 make check condition exact 2018-12-12 14:58:22 -07:00
Jacob Barthelmeh 10c888b855 fix return check on ReadFile and WriteFile 2018-12-11 16:33:10 -07:00
John Safranek d8797b07f8 Add the function wstrcat() which acts like strncat, but adds an extra
check for space in the destination and will fail instead of truncating
the string.
2018-12-03 16:27:45 -08:00
Jacob Barthelmeh 39ab2abf66 add sftp client VS project 2018-12-03 16:27:45 -08:00
John Safranek b57e825381 wolfSFTP for Windows
1. Clean up some type size warnings.
2. Fix the wrappers for FileRead() and FileWrite(). The Overlapped
struct is a little funky to use.
2018-12-03 16:27:45 -08:00
John Safranek 4f9311890d wolfSFTP for Windows
1. Added wrappers for FileRead and FileWrite to work with Win32.
2018-12-03 16:27:45 -08:00
Jacob Barthelmeh 522d93add3 scp nucleus port
fix for uninitialised value

fix compile time warnings

scp only build and handle file size of 0

macro guard on sftp build

adjust directory pointer on desktop build

close connection still on fail and update derefrence of dir with nucleus

ssh only build for nucleus
2018-06-13 16:23:08 -06:00
Jacob Barthelmeh 6d434d0030 initial port to Nucleus
update example on Nucleus

add code sourcery IDE project

fix naming of IDE project files

clean up opendir for fail case

fix for build warnings

add fstat and fixes for nucleus port

update FALL_THROUGH case

add null terminator and more memory free's

fix for scan build warnings

fix warning of no return value

better bounds checking

better path cleaning

fix return values in header file

clean path before access

remove trailing delimiter from clean path
2018-06-13 09:44:54 -06:00
Jacob Barthelmeh ae70eb7b44 initial port to pic32 2018-03-30 10:33:25 -06:00
John Safranek 1498bc5409 IDE Support
1. Added Windows Visual Studio build solution. Includes projects for:
 * wolfSSH static library
 * echoserver
 * unit-test
 * api-test
 * 32- and 64-bit debug and release builds for all
2. Made necessary tweaks including adding some wrapper functions so the code compiles for both Linux/macOS and Windows.
3. Fixed a bug in the KDF test where the output buffer wasn't updated when SHA-256 was added.
4. Added the fallthrough attribute for GCC7.
5. Replaced all uses of `uint8_t`, `uint16_t`, and `uint32_t` with the wolfCrypt provided `byte`, `word16`, and `word32`.
6. Split the new channel function into new and init.
7. Added some ECC keys for authentication testing.
8. Moved some functions and includes around.
9. Removed the keying state machine and replaced with a flag.
10. Added rekey trigger if the client sends *CTRL-F* to echoserver.
11. Moved the sequence number increase outside `CreateMac()`. Incremented if the packet was successfully created. This way the sequence number is incremented when using AES-GCM.
12. Removed the redundant function `SendText()`.
13. Renamed the `clientId` related functions and data members to `protoId` to keep things role agnostic.
14. Changed all references of `clientKey` and `serverKey` to `keys` and `peerKeys`.
15. Updated `GenerateKeys()` to generate `keys` and `peerKeys` appropriately based on the endpoint side.
16. Added the wolfSSL style _test.h_ file to group shared example functions in one place.
17. Changed the echoserver to be similar to wolfSSL's where the code may be included without the main function in another executable.

Note:
This commit is a squash of more than a dozen commits. IDE support was added to the client branch, but the client branch is on hold. There were many changes in the client branch that are needed going forward. The code at the head of the client branch was copied over to the IDE branch, and the client code either deleted or removed from the build.
2017-09-12 14:42:23 -07:00
John Safranek 1a278fe713 update copyright dates and licensing to GPLv3 2016-07-19 13:44:02 -07:00
John Safranek 793a19857f update copyright banner on sources 2015-12-08 13:45:20 -08:00
John Safranek 8cb5fea384 1. Added a description comment to each C and H file.
2. Updated the FSF address in the comments.
2014-08-11 16:19:11 -07:00
John Safranek 749cb6ff90 initial set of files 2014-06-24 14:48:08 -07:00