mirror of https://github.com/wolfSSL/wolfssh.git
create library build exmaple
parent
5fb496b9aa
commit
79d32d0f80
|
@ -135,3 +135,6 @@ DLL Release
|
|||
/ide/Espressif/**/dependencies.lock
|
||||
|
||||
|
||||
/ide/mplabx/wolfssh.X/dist/
|
||||
/ide/mplabx/wolfssh.X/.generated_files
|
||||
/ide/mplabx/wolfssh.X/build
|
||||
|
|
|
@ -1,48 +1,54 @@
|
|||
This is example code for adding a wolfSSH echoserver to a MPLABX project.
|
||||
# wolfSSH MPLABX
|
||||
|
||||
For SAMV71:
|
||||
This is example project to create a wolfSSH library and example code for adding
|
||||
a wolfSSH echoserver to a MPLABX project.
|
||||
|
||||
1) Import the .mc3 settings. Create a new project for SAMV71, click on CM for content manager. Click "Load Manifest" and select the ide/mplabx/mcc-manifest-samv71.yml file and then click apply.
|
||||
2) Open MCC then click "Import" and import ide/mplabx/wolfssh-sftp-server-samv71.mc3 and then click "Generate"
|
||||
3) Adjust the "Preprocessor macros" to include WOLFSSH_IGNORE_FILE_WARN and WOLFSSL_USER_SETTINGS
|
||||
4) Create a user_sttings.h file in config/sam_v71_xult_freertos that includes config.h i.e.
|
||||
Tested on a ATSAMV71Q21B with MPLABX version 6.20.
|
||||
|
||||
user_settings.h
|
||||
```
|
||||
1 #ifndef USER_SETTINGS_H
|
||||
2 #define USER_SETTINGS_H
|
||||
3 #include "config.h"
|
||||
4 #endif
|
||||
```
|
||||
### Building wolfSSH library
|
||||
|
||||
5) Remove the generated app.c from Source Files
|
||||
6) Download wolfssh into src/third_party/wolfssh, for example:
|
||||
The library project is located at ide/mplabx/wolfssh.X
|
||||
|
||||
- First open wolfssh.X with MPLABX IDE then click on "CM" content manager and
|
||||
import the ide/mplabx/wolfssh.X/mcc-manifest-generated-success.yml file.
|
||||
- Click apply.
|
||||
- Next click "MCC" and "generate".
|
||||
- To build from the command line, do the following after the XC32 toolchain has
|
||||
been installed.
|
||||
|
||||
```
|
||||
cd src/third_party
|
||||
git clone git@github.com:wolfssl/wolfssh
|
||||
cd ide/mplabx/wolfssh.X
|
||||
make
|
||||
```
|
||||
|
||||
7) Right click on the project and add existing item. Select src/third_party/wolfssh/ide/mplabx/wolfssh.c
|
||||
8) Right click on the project and add existing folder. Select src/third_party/wolfssh/src
|
||||
9) Increase the heap size to 200,000 by right clicking on the project, selecting "Properties"->"x32-ld"
|
||||
10) In "Header Files"/config/sam_v71_xult_freertos/configuration.h alter the configuration to support wolfSSH
|
||||
- To build using the IDE open the project ide/mplabx/wolfssh.X and click build.
|
||||
|
||||
```
|
||||
// wolfSSH
|
||||
#define WOLFSSL_WOLFSSH
|
||||
#ifndef NO_FILESYSTEM
|
||||
#define WOLFSSH_SFTP
|
||||
#endif
|
||||
#define WOLFSSH_NO_HMAC_SHA2_512
|
||||
#define DEFAULT_WINDOW_SZ 16384
|
||||
```
|
||||
|
||||
If present remove NO_FILESYSTEM and NO_SIG_WRAPPER. Add NO_WOLFSSL_DIR.
|
||||
This will produce a wolfssh.X.a library in the directory
|
||||
ide/mplabx/wolfssh.X/dist/default/production/wolfssh.X.a
|
||||
|
||||
The application and wolfSSL must be built with the same user_settings.h as the
|
||||
wolfSSH library was built with! Differences in macro's defined for
|
||||
configuration will cause undefined behavior and potential crashes.
|
||||
|
||||
### Building an example app
|
||||
|
||||
1) Adjust the "Preprocessor macros" to include WOLFSSL_USER_SETTINGS and add an
|
||||
include path to ide/mplabx/user_settings.h.
|
||||
2) Remove the generated app.c from Source File
|
||||
3) Link to the wolfssh.X.a library. Properties->Libraries->Add Library/Object
|
||||
File...
|
||||
4) Right click on the project and add existing item. Select ide/mplabx/wolfssh.c
|
||||
5) Increase the heap size to 200,000 by right clicking on the project, selecting
|
||||
"Properties"->"x32-ld"
|
||||
|
||||
Notes:
|
||||
|
||||
For the current project this was tested with the heap and stack set to 200,000 each. This was not trimed to see the minumum possible heap and stack usage yet. The TX buffer size used was set to 1024. The example was developed with wolfssh version 1.4.20.
|
||||
For the current project this was tested with the heap and stack set to 200,000
|
||||
each. This was not trimed to see the minumum possible heap and stack usage yet.
|
||||
The TX buffer size used was set to 1024. The example was developed with wolfssh
|
||||
version 1.4.20.
|
||||
|
||||
After building and flashing the board a wolfSSH echoserver will be open on port 22 which can be connected to by using the example client bundled with wolfSSH. ```./examples/client/client -u jill -P upthehill -h 192.168.1.120 -p 22```
|
||||
After building and flashing the board a wolfSSH echoserver will be open on port
|
||||
22 which can be connected to by using the example client bundled with wolfSSH.
|
||||
```./examples/client/client -u jill -P upthehill -h 192.168.1.120 -p 22```
|
||||
|
|
|
@ -1,396 +1,47 @@
|
|||
/* Example custom user settings for wolfSSL with some wolfSSH settings */
|
||||
#ifndef USER_SETTINGS_H
|
||||
#define USER_SETTINGS_H
|
||||
|
||||
#ifndef WOLFSSL_USER_SETTINGS_H
|
||||
#define WOLFSSL_USER_SETTINGS_H
|
||||
/* include Microchip configuration first and then make additional changes */
|
||||
#include "configuration.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#include <stddef.h>
|
||||
|
||||
/* Turn on filesystem support for SFTP use */
|
||||
#undef NO_FILESYSTEM
|
||||
|
||||
/* wolfSSH configuration macros */
|
||||
#define WOLFSSL_WOLFSSH
|
||||
#ifndef NO_FILESYSTEM
|
||||
#define WOLFSSH_SFTP
|
||||
#endif
|
||||
#define DEFAULT_WINDOW_SZ 16384
|
||||
#define WOLFSSH_NO_HMAC_SHA2_512
|
||||
|
||||
#include <stddef.h> /* for size_t */
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Platform */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
#undef WOLFSSL_GENERAL_ALIGNMENT
|
||||
#define WOLFSSL_GENERAL_ALIGNMENT 4
|
||||
|
||||
#undef MICROCHIP_PIC32
|
||||
#define MICROCHIP_PIC32
|
||||
|
||||
#undef MICROCHIP_MPLAB_HARMONY
|
||||
#define MICROCHIP_MPLAB_HARMONY
|
||||
|
||||
#undef MICROCHIP_TCPIP
|
||||
#define MICROCHIP_TCPIP
|
||||
|
||||
#undef WOLFSSL_MICROCHIP_PIC32MZ
|
||||
#define WOLFSSL_MICROCHIP_PIC32MZ
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* wolfSSH settings */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
#define DEFAULT_WINDOW_SZ (16 * 1024)
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Math Configuration */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
#undef USE_FAST_MATH
|
||||
#define USE_FAST_MATH
|
||||
|
||||
#ifdef USE_FAST_MATH
|
||||
#undef TFM_TIMING_RESISTANT
|
||||
#define TFM_TIMING_RESISTANT
|
||||
|
||||
/* Optimizations */
|
||||
//#define TFM_MIPS
|
||||
#endif
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Crypto */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* ECC */
|
||||
#if 1
|
||||
#undef HAVE_ECC
|
||||
#define HAVE_ECC
|
||||
|
||||
/* Manually define enabled curves */
|
||||
#undef ECC_USER_CURVES
|
||||
#define ECC_USER_CURVES
|
||||
|
||||
//#define HAVE_ECC192
|
||||
//#define HAVE_ECC224
|
||||
#undef NO_ECC256
|
||||
//#define HAVE_ECC384
|
||||
//#define HAVE_ECC521
|
||||
|
||||
/* Fixed point cache (speeds repeated operations against same private key) */
|
||||
#undef FP_ECC
|
||||
//#define FP_ECC
|
||||
#ifdef FP_ECC
|
||||
/* Bits / Entries */
|
||||
#undef FP_ENTRIES
|
||||
#define FP_ENTRIES 2
|
||||
#undef FP_LUT
|
||||
#define FP_LUT 4
|
||||
#endif
|
||||
|
||||
/* Optional ECC calculation method */
|
||||
/* Note: doubles heap usage, but slightly faster */
|
||||
#undef ECC_SHAMIR
|
||||
#define ECC_SHAMIR
|
||||
|
||||
/* Reduces heap usage, but slower */
|
||||
#undef ECC_TIMING_RESISTANT
|
||||
#define ECC_TIMING_RESISTANT
|
||||
|
||||
#ifdef USE_FAST_MATH
|
||||
/* use reduced size math buffers for ecc points */
|
||||
#undef ALT_ECC_SIZE
|
||||
#define ALT_ECC_SIZE
|
||||
|
||||
/* Enable TFM optimizations for ECC */
|
||||
#if defined(HAVE_ECC192) || defined(HAVE_ALL_CURVES)
|
||||
#define TFM_ECC192
|
||||
#endif
|
||||
#if defined(HAVE_ECC224) || defined(HAVE_ALL_CURVES)
|
||||
#define TFM_ECC224
|
||||
#endif
|
||||
#if !defined(NO_ECC256) || defined(HAVE_ALL_CURVES)
|
||||
#define TFM_ECC256
|
||||
#endif
|
||||
#if defined(HAVE_ECC384) || defined(HAVE_ALL_CURVES)
|
||||
#define TFM_ECC384
|
||||
#endif
|
||||
#if defined(HAVE_ECC521) || defined(HAVE_ALL_CURVES)
|
||||
#define TFM_ECC521
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* RSA */
|
||||
#undef NO_RSA
|
||||
#if 1
|
||||
#ifdef USE_FAST_MATH
|
||||
/* Maximum math bits (Max RSA key bits * 2) */
|
||||
#undef FP_MAX_BITS
|
||||
#define FP_MAX_BITS 4096
|
||||
#endif
|
||||
|
||||
/* half as much memory but twice as slow */
|
||||
#undef RSA_LOW_MEM
|
||||
//#define RSA_LOW_MEM
|
||||
|
||||
/* timing resistance */
|
||||
#undef WC_RSA_BLINDING
|
||||
#define WC_RSA_BLINDING
|
||||
#else
|
||||
#define NO_RSA
|
||||
#endif
|
||||
|
||||
/* AES */
|
||||
#undef NO_AES
|
||||
#if 1
|
||||
#undef HAVE_AES_DECRYPT
|
||||
#define HAVE_AES_DECRYPT
|
||||
|
||||
#undef HAVE_AESGCM
|
||||
#define HAVE_AESGCM
|
||||
|
||||
/* GCM Method: GCM_SMALL, GCM_WORD32 or GCM_TABLE */
|
||||
#undef GCM_SMALL
|
||||
#define GCM_SMALL
|
||||
|
||||
//#undef HAVE_AESCCM
|
||||
//#define HAVE_AESCCM
|
||||
|
||||
#undef WOLFSSL_AES_COUNTER
|
||||
#define WOLFSSL_AES_COUNTER
|
||||
|
||||
#undef WOLFSSL_AES_DIRECT
|
||||
#define WOLFSSL_AES_DIRECT
|
||||
#else
|
||||
#define NO_AES
|
||||
#endif
|
||||
|
||||
/* DES3 */
|
||||
#undef NO_DES3
|
||||
#if 1
|
||||
#undef WOLFSSL_DES_ECB
|
||||
#define WOLFSSL_DES_ECB
|
||||
#else
|
||||
#define NO_DES3
|
||||
#endif
|
||||
|
||||
|
||||
/* ChaCha20 / Poly1305 */
|
||||
#undef HAVE_CHACHA
|
||||
#undef HAVE_POLY1305
|
||||
#if 0
|
||||
#define HAVE_CHACHA
|
||||
#define HAVE_POLY1305
|
||||
|
||||
/* Needed for Poly1305 */
|
||||
#undef HAVE_ONE_TIME_AUTH
|
||||
#define HAVE_ONE_TIME_AUTH
|
||||
#endif
|
||||
|
||||
/* Ed25519 / Curve25519 */
|
||||
#undef HAVE_CURVE25519
|
||||
#undef HAVE_ED25519
|
||||
#if 0
|
||||
#define HAVE_CURVE25519
|
||||
#define HAVE_ED25519
|
||||
|
||||
/* Optionally use small math (less flash usage, but much slower) */
|
||||
#if 0
|
||||
#define CURVED25519_SMALL
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Hashing */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Sha */
|
||||
#undef NO_SHA
|
||||
#if 1
|
||||
/* 1k smaller, but 25% slower */
|
||||
//#define USE_SLOW_SHA
|
||||
#else
|
||||
#define NO_SHA
|
||||
#endif
|
||||
|
||||
/* Sha256 */
|
||||
#undef NO_SHA256
|
||||
#if 1
|
||||
#else
|
||||
#define NO_SHA256
|
||||
#endif
|
||||
|
||||
/* Sha512 */
|
||||
#undef WOLFSSL_SHA512
|
||||
#if 1
|
||||
#define WOLFSSL_SHA512
|
||||
|
||||
/* Sha384 */
|
||||
#undef WOLFSSL_SHA384
|
||||
#if 1
|
||||
#define WOLFSSL_SHA384
|
||||
#endif
|
||||
|
||||
/* over twice as small, but 50% slower */
|
||||
//#define USE_SLOW_SHA2
|
||||
#endif
|
||||
|
||||
/* MD5 */
|
||||
#undef NO_MD5
|
||||
#if 1
|
||||
#else
|
||||
#define NO_MD5
|
||||
#endif
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Benchmark / Test */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Use reduced benchmark / test sizes */
|
||||
#undef BENCH_EMBEDDED
|
||||
#define BENCH_EMBEDDED
|
||||
|
||||
#undef USE_CERT_BUFFERS_2048
|
||||
#define USE_CERT_BUFFERS_2048
|
||||
|
||||
#undef USE_CERT_BUFFERS_1024
|
||||
//#define USE_CERT_BUFFERS_1024
|
||||
|
||||
#undef USE_CERT_BUFFERS_256
|
||||
#define USE_CERT_BUFFERS_256
|
||||
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Time */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
#if 0
|
||||
#warning Time/RTC disabled
|
||||
#undef NO_ASN_TIME
|
||||
#define NO_ASN_TIME
|
||||
#endif
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Debugging */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
#undef DEBUG_WOLFSSL
|
||||
#define DEBUG_WOLFSSL
|
||||
|
||||
#undef DEBUG_WOLFSSH
|
||||
#define DEBUG_WOLFSSH
|
||||
|
||||
#ifdef DEBUG_WOLFSSL
|
||||
/* Use this to measure / print heap usage */
|
||||
#if 0
|
||||
#undef USE_WOLFSSL_MEMORY
|
||||
#define USE_WOLFSSL_MEMORY
|
||||
#undef WOLFSSL_TRACK_MEMORY
|
||||
#define WOLFSSL_TRACK_MEMORY
|
||||
#endif
|
||||
#else
|
||||
#undef NO_WOLFSSL_MEMORY
|
||||
#define NO_WOLFSSL_MEMORY
|
||||
|
||||
#undef NO_ERROR_STRINGS
|
||||
//#define NO_ERROR_STRINGS
|
||||
#endif
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Enable Features */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
#undef KEEP_PEER_CERT
|
||||
//#define KEEP_PEER_CERT
|
||||
|
||||
#undef HAVE_COMP_KEY
|
||||
//#define HAVE_COMP_KEY
|
||||
|
||||
#undef HAVE_TLS_EXTENSIONS
|
||||
//#define HAVE_TLS_EXTENSIONS
|
||||
|
||||
#undef HAVE_SUPPORTED_CURVES
|
||||
//#define HAVE_SUPPORTED_CURVES
|
||||
|
||||
#undef WOLFSSL_BASE64_ENCODE
|
||||
//#define WOLFSSL_BASE64_ENCODE
|
||||
|
||||
/* TLS Session Cache */
|
||||
#if 0
|
||||
#define SMALL_SESSION_CACHE
|
||||
#else
|
||||
#define NO_SESSION_CACHE
|
||||
#endif
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------- */
|
||||
/* Disable Features */
|
||||
/* ------------------------------------------------------------------------- */
|
||||
#undef NO_WOLFSSL_SERVER
|
||||
//#define NO_WOLFSSL_SERVER
|
||||
|
||||
#undef NO_WOLFSSL_CLIENT
|
||||
//#define NO_WOLFSSL_CLIENT
|
||||
|
||||
#undef NO_CRYPT_TEST
|
||||
#define NO_CRYPT_TEST
|
||||
|
||||
#undef NO_CRYPT_BENCHMARK
|
||||
#define NO_CRYPT_BENCHMARK
|
||||
|
||||
/* In-lining of misc.c functions */
|
||||
/* If defined, must include wolfcrypt/src/misc.c in build */
|
||||
/* Slower, but about 1k smaller */
|
||||
#undef NO_INLINE
|
||||
//#define NO_INLINE
|
||||
|
||||
#undef NO_FILESYSTEM
|
||||
#define NO_FILESYSTEM
|
||||
|
||||
#undef NO_WRITEV
|
||||
#define NO_WRITEV
|
||||
|
||||
#undef NO_MAIN_DRIVER
|
||||
#define NO_MAIN_DRIVER
|
||||
|
||||
#undef NO_DEV_RANDOM
|
||||
#define NO_DEV_RANDOM
|
||||
|
||||
#undef NO_DSA
|
||||
#define NO_DSA
|
||||
|
||||
//#undef NO_DH
|
||||
//#define NO_DH
|
||||
|
||||
#undef NO_RC4
|
||||
#define NO_RC4
|
||||
|
||||
#undef NO_OLD_TLS
|
||||
#define NO_OLD_TLS
|
||||
|
||||
#undef NO_HC128
|
||||
#define NO_HC128
|
||||
|
||||
#undef NO_RABBIT
|
||||
#define NO_RABBIT
|
||||
|
||||
#undef NO_PSK
|
||||
#define NO_PSK
|
||||
|
||||
#undef NO_MD4
|
||||
#define NO_MD4
|
||||
|
||||
#undef NO_PWDBASED
|
||||
#define NO_PWDBASED
|
||||
|
||||
#undef NO_CODING
|
||||
//#define NO_CODING
|
||||
|
||||
#undef SINGLE_THREADED
|
||||
//#define SINGLE_THREADED
|
||||
|
||||
#undef NO_WOLFSSL_DIR
|
||||
/* do not use dirent with wolfSSL */
|
||||
#define NO_WOLFSSL_DIR
|
||||
|
||||
#undef WOLFCRYPT_ONLY
|
||||
#define WOLFCRYPT_ONLY
|
||||
/* avoid the defualt settings in older wolfssl versions from
|
||||
* wolfssl/wolfcryt/settings.h */
|
||||
#undef MICROCHIP_PIC32
|
||||
|
||||
/* Suppress array-bounds */
|
||||
#pragma GCC diagnostic ignored "-Warray-bounds"
|
||||
#undef TFM_TIMING_RESISTANT
|
||||
#define TFM_TIMING_RESISTANT
|
||||
|
||||
#undef ECC_TIMING_RESISTANT
|
||||
#define ECC_TIMING_RESISTANT
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
/* In older versions of wolfSSL (5.7.6 and older) the strcasecmp and strncasecmp
|
||||
* were dependent on the macro MICROCHIP_PIC32. Defining them here overrides
|
||||
* that. */
|
||||
#if (__XC32_VERSION >= 1000) && (__XC32_VERSION < 4000)
|
||||
#define XSTRCASECMP(s1,s2) strcasecmp((s1),(s2))
|
||||
#define XSTRNCASECMP(s1,s2,n) strncasecmp((s1),(s2),(n))
|
||||
#else
|
||||
#define XSTRCASECMP(s1,s2) strcmp((s1),(s2))
|
||||
#define XSTRNCASECMP(s1,s2,n) strncmp((s1),(s2),(n))
|
||||
#endif
|
||||
|
||||
#endif /* WOLFSSL_USER_SETTINGS_H */
|
||||
/* allow signature wrapper api for wolfSSH use */
|
||||
#undef NO_SIG_WRAPPER
|
||||
|
||||
#endif
|
||||
|
|
|
@ -0,0 +1,113 @@
|
|||
#
|
||||
# There exist several targets which are by default empty and which can be
|
||||
# used for execution of your targets. These targets are usually executed
|
||||
# before and after some main targets. They are:
|
||||
#
|
||||
# .build-pre: called before 'build' target
|
||||
# .build-post: called after 'build' target
|
||||
# .clean-pre: called before 'clean' target
|
||||
# .clean-post: called after 'clean' target
|
||||
# .clobber-pre: called before 'clobber' target
|
||||
# .clobber-post: called after 'clobber' target
|
||||
# .all-pre: called before 'all' target
|
||||
# .all-post: called after 'all' target
|
||||
# .help-pre: called before 'help' target
|
||||
# .help-post: called after 'help' target
|
||||
#
|
||||
# Targets beginning with '.' are not intended to be called on their own.
|
||||
#
|
||||
# Main targets can be executed directly, and they are:
|
||||
#
|
||||
# build build a specific configuration
|
||||
# clean remove built files from a configuration
|
||||
# clobber remove all built files
|
||||
# all build all configurations
|
||||
# help print help mesage
|
||||
#
|
||||
# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and
|
||||
# .help-impl are implemented in nbproject/makefile-impl.mk.
|
||||
#
|
||||
# Available make variables:
|
||||
#
|
||||
# CND_BASEDIR base directory for relative paths
|
||||
# CND_DISTDIR default top distribution directory (build artifacts)
|
||||
# CND_BUILDDIR default top build directory (object files, ...)
|
||||
# CONF name of current configuration
|
||||
# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration)
|
||||
# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration)
|
||||
# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration)
|
||||
# CND_PACKAGE_DIR_${CONF} directory of package (current configuration)
|
||||
# CND_PACKAGE_NAME_${CONF} name of package (current configuration)
|
||||
# CND_PACKAGE_PATH_${CONF} path to package (current configuration)
|
||||
#
|
||||
# NOCDDL
|
||||
|
||||
|
||||
# Environment
|
||||
MKDIR=mkdir
|
||||
CP=cp
|
||||
CCADMIN=CCadmin
|
||||
RANLIB=ranlib
|
||||
|
||||
|
||||
# build
|
||||
build: .build-post
|
||||
|
||||
.build-pre:
|
||||
# Add your pre 'build' code here...
|
||||
|
||||
.build-post: .build-impl
|
||||
# Add your post 'build' code here...
|
||||
|
||||
|
||||
# clean
|
||||
clean: .clean-post
|
||||
|
||||
.clean-pre:
|
||||
# Add your pre 'clean' code here...
|
||||
# WARNING: the IDE does not call this target since it takes a long time to
|
||||
# simply run make. Instead, the IDE removes the configuration directories
|
||||
# under build and dist directly without calling make.
|
||||
# This target is left here so people can do a clean when running a clean
|
||||
# outside the IDE.
|
||||
|
||||
.clean-post: .clean-impl
|
||||
# Add your post 'clean' code here...
|
||||
|
||||
|
||||
# clobber
|
||||
clobber: .clobber-post
|
||||
|
||||
.clobber-pre:
|
||||
# Add your pre 'clobber' code here...
|
||||
|
||||
.clobber-post: .clobber-impl
|
||||
# Add your post 'clobber' code here...
|
||||
|
||||
|
||||
# all
|
||||
all: .all-post
|
||||
|
||||
.all-pre:
|
||||
# Add your pre 'all' code here...
|
||||
|
||||
.all-post: .all-impl
|
||||
# Add your post 'all' code here...
|
||||
|
||||
|
||||
# help
|
||||
help: .help-post
|
||||
|
||||
.help-pre:
|
||||
# Add your pre 'help' code here...
|
||||
|
||||
.help-post: .help-impl
|
||||
# Add your post 'help' code here...
|
||||
|
||||
|
||||
|
||||
# include project implementation makefile
|
||||
include nbproject/Makefile-impl.mk
|
||||
|
||||
# include project make variables
|
||||
include nbproject/Makefile-variables.mk
|
|
@ -1,8 +1,8 @@
|
|||
# This file has been autogenerated by MPLAB Code Configurator. Please do not edit this file.
|
||||
|
||||
manifest_file_version: 1.0.0
|
||||
project: wolfssh_sftp_server_freertos
|
||||
creation_date: 2025-03-19T10:17:34.824+07:00[Asia/Jakarta]
|
||||
project: wolfssh
|
||||
creation_date: 2025-04-02T16:56:35.669-06:00[America/Denver]
|
||||
operating_system: Mac OS X
|
||||
mcc_mode: IDE
|
||||
mcc_mode_version: v6.20
|
||||
|
@ -15,14 +15,15 @@ is_mcc_offline: false
|
|||
is_using_prerelease_versions: false
|
||||
mcc_content_registries: https://registry.npmjs.org/
|
||||
device_library: {library_class: com.microchip.mcc.harmony.Harmony3Library, name: Harmony
|
||||
V3, version: 1.4.1}
|
||||
V3, version: 1.5.5}
|
||||
packs: {name: SAMV71_DFP, version: 4.12.237}
|
||||
modules:
|
||||
- {name: core, type: HARMONY, version: v3.13.1}
|
||||
- {name: csp, type: HARMONY, version: v3.18.0}
|
||||
- {name: filex, type: HARMONY, version: v6.2.1_rel}
|
||||
- {name: CMSIS_5, type: HARMONY, version: 5.9.0}
|
||||
- {name: littlefs, type: HARMONY, version: v2.10.1}
|
||||
- {name: wolfssl, type: HARMONY, version: v5.4.0}
|
||||
- {name: net, type: HARMONY, version: v3.11.0}
|
||||
- {name: bsp, type: HARMONY, version: v3.17.0}
|
||||
- {name: crypto, type: HARMONY, version: wolfssl}
|
||||
- {name: crypto, type: HARMONY, version: v3.8.1}
|
||||
- {name: CMSIS-FreeRTOS, type: HARMONY, version: v10.5.1}
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,27 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://www.netbeans.org/ns/project/1">
|
||||
<type>com.microchip.mplab.nbide.embedded.makeproject</type>
|
||||
<configuration>
|
||||
<data xmlns="http://www.netbeans.org/ns/make-project/1">
|
||||
<name>wolfssh</name>
|
||||
<creation-uuid>92aa1711-a46a-4125-9aea-fd01c492463b</creation-uuid>
|
||||
<make-project-type>0</make-project-type>
|
||||
<sourceEncoding>ISO-8859-1</sourceEncoding>
|
||||
<make-dep-projects/>
|
||||
<sourceRootList>
|
||||
<sourceRootElem>../../../src</sourceRootElem>
|
||||
<sourceRootElem>..</sourceRootElem>
|
||||
<sourceRootElem>../../../wolfssh</sourceRootElem>
|
||||
</sourceRootList>
|
||||
<confList>
|
||||
<confElem>
|
||||
<name>default</name>
|
||||
<type>3</type>
|
||||
</confElem>
|
||||
</confList>
|
||||
<formatting>
|
||||
<project-formatting-style>false</project-formatting-style>
|
||||
</formatting>
|
||||
</data>
|
||||
</configuration>
|
||||
</project>
|
File diff suppressed because it is too large
Load Diff
|
@ -21,7 +21,7 @@
|
|||
|
||||
/*
|
||||
* The port module wraps standard C library functions with macros to
|
||||
* cover portablility issues when building in environments that rename
|
||||
* cover portability issues when building in environments that rename
|
||||
* those functions. This module also provides local versions of some
|
||||
* standard C library functions that are missing on some platforms.
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue