Nanostack Border Router is a generic mbed border router implementation that provides the 6LoWPAN ND or Thread border router initialization logic.

Committer:
mbed_official
Date:
Wed Nov 27 10:02:22 2019 +0000
Revision:
108:0c14bd1d3334
Parent:
94:0c008659750c
Fix conflicting declarations of main() (#197)

Update the main() to be compatible with the declaration from
platform/mbed_toolchain.h that adds the MBED_USED attribute.
Without the attribute the main() symbol is not emitted with the
GCC toolchain using "-Wl,--wrap,main" and "-flto" flags.
.
Commit copied from https://github.com/ARMmbed/nanostack-border-router

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 94:0c008659750c 1 /*
mbed_official 94:0c008659750c 2 * Copyright (c) 2016, 2019 ARM Limited. All rights reserved.
mbed_official 94:0c008659750c 3 */
mbed_official 94:0c008659750c 4
mbed_official 94:0c008659750c 5 #ifndef MBEDTLS_WISUN_CONFIG_H_
mbed_official 94:0c008659750c 6 #define MBEDTLS_WISUN_CONFIG_H_
mbed_official 94:0c008659750c 7
mbed_official 94:0c008659750c 8 #define MBEDTLS_ENTROPY_MAX_SOURCES 4 // save 320 bytes of RAM (default is 20 entropy source)
mbed_official 94:0c008659750c 9 #define MBEDTLS_SSL_MAX_CONTENT_LEN 4096 // Use 4kB buffers for input and output instead of 16kB
mbed_official 94:0c008659750c 10
mbed_official 94:0c008659750c 11 //#define MBEDTLS_DEBUG_C
mbed_official 94:0c008659750c 12
mbed_official 94:0c008659750c 13 /* mbed TLS feature support */
mbed_official 94:0c008659750c 14 #define MBEDTLS_ECP_NIST_OPTIM
mbed_official 94:0c008659750c 15 #define MBEDTLS_ECP_DP_SECP256R1_ENABLED
mbed_official 94:0c008659750c 16 #undef MBEDTLS_ECP_DP_SECP192R1_ENABLED
mbed_official 94:0c008659750c 17 #undef MBEDTLS_ECP_DP_SECP224R1_ENABLED
mbed_official 94:0c008659750c 18 #undef MBEDTLS_ECP_DP_SECP384R1_ENABLED
mbed_official 94:0c008659750c 19 #undef MBEDTLS_ECP_DP_SECP521R1_ENABLED
mbed_official 94:0c008659750c 20 #undef MBEDTLS_ECP_DP_SECP192K1_ENABLED
mbed_official 94:0c008659750c 21 #undef MBEDTLS_ECP_DP_SECP224K1_ENABLED
mbed_official 94:0c008659750c 22 #undef MBEDTLS_ECP_DP_SECP256K1_ENABLED
mbed_official 94:0c008659750c 23 #undef MBEDTLS_ECP_DP_BP256R1_ENABLED
mbed_official 94:0c008659750c 24 #undef MBEDTLS_ECP_DP_BP384R1_ENABLED
mbed_official 94:0c008659750c 25 #undef MBEDTLS_ECP_DP_BP512R1_ENABLED
mbed_official 94:0c008659750c 26 #undef MBEDTLS_ECP_DP_CURVE25519_ENABLED
mbed_official 94:0c008659750c 27
mbed_official 94:0c008659750c 28 #ifdef MBEDTLS_SSL_TLS_C
mbed_official 94:0c008659750c 29 #define MBEDTLS_SSL_MAX_FRAGMENT_LENGTH
mbed_official 94:0c008659750c 30 #define MBEDTLS_SSL_PROTO_TLS1_2
mbed_official 94:0c008659750c 31 #define MBEDTLS_SSL_EXPORT_KEYS
mbed_official 94:0c008659750c 32 #define MBEDTLS_SSL_ALL_ALERT_MESSAGES
mbed_official 94:0c008659750c 33 #endif
mbed_official 94:0c008659750c 34
mbed_official 94:0c008659750c 35 /* mbed TLS modules */
mbed_official 94:0c008659750c 36 #define MBEDTLS_BIGNUM_C
mbed_official 94:0c008659750c 37 #define MBEDTLS_CIPHER_C
mbed_official 94:0c008659750c 38 #define MBEDTLS_AES_C
mbed_official 94:0c008659750c 39 #define MBEDTLS_CCM_C
mbed_official 94:0c008659750c 40 #define MBEDTLS_CTR_DRBG_C
mbed_official 94:0c008659750c 41 #define MBEDTLS_ECP_C
mbed_official 94:0c008659750c 42 #define MBEDTLS_MD_C
mbed_official 94:0c008659750c 43 #define MBEDTLS_PK_C
mbed_official 94:0c008659750c 44 #define MBEDTLS_SHA256_C
mbed_official 94:0c008659750c 45 #ifdef MBEDTLS_SSL_TLS_C
mbed_official 94:0c008659750c 46 #define MBEDTLS_SSL_COOKIE_C
mbed_official 94:0c008659750c 47 #define MBEDTLS_SSL_CLI_C
mbed_official 94:0c008659750c 48 #define MBEDTLS_SSL_SRV_C
mbed_official 94:0c008659750c 49 #endif
mbed_official 94:0c008659750c 50 #define MBEDTLS_NIST_KW_C
mbed_official 94:0c008659750c 51 #define MBEDTLS_PEM_PARSE_C
mbed_official 94:0c008659750c 52 #define MBEDTLS_BASE64_C
mbed_official 94:0c008659750c 53 #define MBEDTLS_SHA1_C
mbed_official 94:0c008659750c 54
mbed_official 94:0c008659750c 55 /* Save RAM at the expense of ROM */
mbed_official 94:0c008659750c 56 #define MBEDTLS_AES_ROM_TABLES
mbed_official 94:0c008659750c 57 #define MBEDTLS_AES_FEWER_TABLES
mbed_official 94:0c008659750c 58
mbed_official 94:0c008659750c 59 /* Save RAM by adjusting to our exact needs */
mbed_official 94:0c008659750c 60 #define MBEDTLS_ECP_MAX_BITS 256
mbed_official 94:0c008659750c 61 #undef MBEDTLS_MPI_MAX_SIZE
mbed_official 94:0c008659750c 62 #define MBEDTLS_MPI_MAX_SIZE 128 // 256 bits is 32 bytes
mbed_official 94:0c008659750c 63
mbed_official 94:0c008659750c 64 /* Save ROM and a few bytes of RAM by specifying our own ciphersuite list */
mbed_official 94:0c008659750c 65 #define MBEDTLS_SSL_CIPHERSUITES MBEDTLS_TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8
mbed_official 94:0c008659750c 66
mbed_official 94:0c008659750c 67 /* Optimization. Remove all not needed stuff */
mbed_official 94:0c008659750c 68 #define MBEDTLS_X509_USE_C
mbed_official 94:0c008659750c 69 #define MBEDTLS_X509_CRT_PARSE_C
mbed_official 94:0c008659750c 70 #undef MBEDTLS_SSL_SERVER_NAME_INDICATION
mbed_official 94:0c008659750c 71 #undef MBEDTLS_SELF_TEST
mbed_official 94:0c008659750c 72 #undef MBEDTLS_SSL_ENCRYPT_THEN_MAC
mbed_official 94:0c008659750c 73 #undef MBEDTLS_SSL_EXTENDED_MASTER_SECRET
mbed_official 94:0c008659750c 74 #define MBEDTLS_ASN1_PARSE_C
mbed_official 94:0c008659750c 75 #define MBEDTLS_ASN1_WRITE_C
mbed_official 94:0c008659750c 76 #define MBEDTLS_ECDH_C
mbed_official 94:0c008659750c 77 #define MBEDTLS_ECDSA_C
mbed_official 94:0c008659750c 78 #undef MBEDTLS_ERROR_C
mbed_official 94:0c008659750c 79 #define MBEDTLS_GCM_C
mbed_official 94:0c008659750c 80 #define MBEDTLS_OID_C
mbed_official 94:0c008659750c 81 #define MBEDTLS_PK_PARSE_C
mbed_official 94:0c008659750c 82 #define MBEDTLS_PK_WRITE_C
mbed_official 94:0c008659750c 83 #undef MBEDTLS_RSA_C
mbed_official 94:0c008659750c 84 #undef MBEDTLS_VERSION_C
mbed_official 94:0c008659750c 85 #undef MBEDTLS_CERTS_C
mbed_official 94:0c008659750c 86 #undef MBEDTLS_HMAC_DRBG_C
mbed_official 94:0c008659750c 87 #define MBEDTLS_CIPHER_MODE_CBC
mbed_official 94:0c008659750c 88 #undef MBEDTLS_CIPHER_PADDING_PKCS7
mbed_official 94:0c008659750c 89 #undef MBEDTLS_ECDSA_DETERMINISTIC
mbed_official 94:0c008659750c 90 #undef MBEDTLS_SSL_SESSION_TICKETS
mbed_official 94:0c008659750c 91 #undef MBEDTLS_VERSION_FEATURES
mbed_official 94:0c008659750c 92 #undef MBEDTLS_X509_CHECK_KEY_USAGE
mbed_official 94:0c008659750c 93 #undef MBEDTLS_X509_CHECK_EXTENDED_KEY_USAGE
mbed_official 94:0c008659750c 94 #undef MBEDTLS_ERROR_STRERROR_DUMMY
mbed_official 94:0c008659750c 95 #undef MBEDTLS_SSL_ALPN
mbed_official 94:0c008659750c 96 #undef MBEDTLS_SSL_TICKET_C
mbed_official 94:0c008659750c 97 #undef MBEDTLS_HAVE_SSE2
mbed_official 94:0c008659750c 98 #undef MBEDTLS_PLATFORM_MEMORY
mbed_official 94:0c008659750c 99 #undef MBEDTLS_PLATFORM_NO_STD_FUNCTIONS
mbed_official 94:0c008659750c 100 #undef MBEDTLS_DEPRECATED_WARNING
mbed_official 94:0c008659750c 101 #undef MBEDTLS_DEPRECATED_REMOVED
mbed_official 94:0c008659750c 102 #undef MBEDTLS_CAMELLIA_SMALL_MEMORY
mbed_official 94:0c008659750c 103 #undef MBEDTLS_CIPHER_MODE_CFB
mbed_official 94:0c008659750c 104 #undef MBEDTLS_CIPHER_MODE_CTR
mbed_official 94:0c008659750c 105 #undef MBEDTLS_CIPHER_NULL_CIPHER
mbed_official 94:0c008659750c 106 #undef MBEDTLS_CIPHER_PADDING_ONE_AND_ZEROS
mbed_official 94:0c008659750c 107 #undef MBEDTLS_CIPHER_PADDING_ZEROS_AND_LEN
mbed_official 94:0c008659750c 108 #undef MBEDTLS_CIPHER_PADDING_ZEROS
mbed_official 94:0c008659750c 109 #undef MBEDTLS_ENABLE_WEAK_CIPHERSUITES
mbed_official 94:0c008659750c 110 #define MBEDTLS_REMOVE_ARC4_CIPHERSUITES
mbed_official 94:0c008659750c 111 #undef MBEDTLS_ECP_DP_CURVE25519_ENABLED
mbed_official 94:0c008659750c 112 #define MBEDTLS_KEY_EXCHANGE_PSK_ENABLED
mbed_official 94:0c008659750c 113 #undef MBEDTLS_KEY_EXCHANGE_DHE_PSK_ENABLED
mbed_official 94:0c008659750c 114 #define MBEDTLS_KEY_EXCHANGE_ECDHE_PSK_ENABLED
mbed_official 94:0c008659750c 115 #undef MBEDTLS_KEY_EXCHANGE_RSA_PSK_ENABLED
mbed_official 94:0c008659750c 116 #undef MBEDTLS_KEY_EXCHANGE_RSA_ENABLED
mbed_official 94:0c008659750c 117 #undef MBEDTLS_KEY_EXCHANGE_DHE_RSA_ENABLED
mbed_official 94:0c008659750c 118 #undef MBEDTLS_KEY_EXCHANGE_ECDHE_RSA_ENABLED
mbed_official 94:0c008659750c 119 #define MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED
mbed_official 94:0c008659750c 120 #undef MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA_ENABLED
mbed_official 94:0c008659750c 121 #undef MBEDTLS_KEY_EXCHANGE_ECDH_RSA_ENABLED
mbed_official 94:0c008659750c 122 #undef MBEDTLS_PK_PARSE_EC_EXTENDED
mbed_official 94:0c008659750c 123 #undef MBEDTLS_GENPRIME
mbed_official 94:0c008659750c 124 #undef MBEDTLS_NO_DEFAULT_ENTROPY_SOURCES
mbed_official 94:0c008659750c 125 #undef MBEDTLS_MEMORY_DEBUG
mbed_official 94:0c008659750c 126 #undef MBEDTLS_MEMORY_BACKTRACE
mbed_official 94:0c008659750c 127 #undef MBEDTLS_PK_RSA_ALT_SUPPORT
mbed_official 94:0c008659750c 128 #undef MBEDTLS_PKCS1_V15
mbed_official 94:0c008659750c 129 #undef MBEDTLS_PKCS1_V21
mbed_official 94:0c008659750c 130 #undef MBEDTLS_RSA_NO_CRT
mbed_official 94:0c008659750c 131 #undef MBEDTLS_SSL_AEAD_RANDOM_IV
mbed_official 94:0c008659750c 132 #undef MBEDTLS_RSA_NO_CRT
mbed_official 94:0c008659750c 133 #undef MBEDTLS_SSL_DEBUG_ALL
mbed_official 94:0c008659750c 134 #undef MBEDTLS_SSL_FALLBACK_SCSV
mbed_official 94:0c008659750c 135 #undef MBEDTLS_SSL_HW_RECORD_ACCEL
mbed_official 94:0c008659750c 136 #undef MBEDTLS_SSL_CBC_RECORD_SPLITTING
mbed_official 94:0c008659750c 137 #undef MBEDTLS_SSL_RENEGOTIATION
mbed_official 94:0c008659750c 138 #undef MBEDTLS_SSL_SRV_SUPPORT_SSLV2_CLIENT_HELLO
mbed_official 94:0c008659750c 139 #undef MBEDTLS_SSL_SRV_RESPECT_CLIENT_PREFERENCE
mbed_official 94:0c008659750c 140 #undef MBEDTLS_SSL_PROTO_TLS1
mbed_official 94:0c008659750c 141 #undef MBEDTLS_SSL_PROTO_TLS1_1
mbed_official 94:0c008659750c 142 #undef MBEDTLS_SSL_DTLS_BADMAC_LIMIT
mbed_official 94:0c008659750c 143 #undef MBEDTLS_SSL_TRUNCATED_HMAC
mbed_official 94:0c008659750c 144 #undef MBEDTLS_THREADING_ALT
mbed_official 94:0c008659750c 145 #undef MBEDTLS_THREADING_PTHREAD
mbed_official 94:0c008659750c 146 #undef MBEDTLS_X509_ALLOW_EXTENSIONS_NON_V3
mbed_official 94:0c008659750c 147 #undef MBEDTLS_X509_ALLOW_UNSUPPORTED_CRITICAL_EXTENSION
mbed_official 94:0c008659750c 148 #undef MBEDTLS_X509_RSASSA_PSS_SUPPORT
mbed_official 94:0c008659750c 149 #undef MBEDTLS_ZLIB_SUPPORT
mbed_official 94:0c008659750c 150 #undef MBEDTLS_AESNI_C
mbed_official 94:0c008659750c 151 #undef MBEDTLS_ARC4_C
mbed_official 94:0c008659750c 152 #undef MBEDTLS_BLOWFISH_C
mbed_official 94:0c008659750c 153 #undef MBEDTLS_CAMELLIA_C
mbed_official 94:0c008659750c 154 #undef MBEDTLS_DES_C
mbed_official 94:0c008659750c 155 #undef MBEDTLS_DHM_C
mbed_official 94:0c008659750c 156 #undef MBEDTLS_HAVEGE_C
mbed_official 94:0c008659750c 157 #undef MBEDTLS_MD2_C
mbed_official 94:0c008659750c 158 #undef MBEDTLS_MD4_C
mbed_official 94:0c008659750c 159 #undef MBEDTLS_MD5_C
mbed_official 94:0c008659750c 160 #undef MBEDTLS_MEMORY_BUFFER_ALLOC_C
mbed_official 94:0c008659750c 161 #undef MBEDTLS_PADLOCK_C
mbed_official 94:0c008659750c 162 #undef MBEDTLS_PEM_WRITE_C
mbed_official 94:0c008659750c 163 #undef MBEDTLS_PKCS5_C
mbed_official 94:0c008659750c 164 #undef MBEDTLS_PKCS11_C
mbed_official 94:0c008659750c 165 #undef MBEDTLS_PKCS12_C
mbed_official 94:0c008659750c 166 #undef MBEDTLS_PLATFORM_C
mbed_official 94:0c008659750c 167 #undef MBEDTLS_RIPEMD160_C
mbed_official 94:0c008659750c 168 #undef MBEDTLS_SHA512_C
mbed_official 94:0c008659750c 169 #undef MBEDTLS_SSL_CACHE_C
mbed_official 94:0c008659750c 170 #undef MBEDTLS_THREADING_C
mbed_official 94:0c008659750c 171 #define MBEDTLS_X509_CREATE_C
mbed_official 94:0c008659750c 172 #define MBEDTLS_X509_CRT_WRITE_C
mbed_official 94:0c008659750c 173 #undef MBEDTLS_XTEA_C
mbed_official 94:0c008659750c 174
mbed_official 94:0c008659750c 175
mbed_official 94:0c008659750c 176 #include "mbedtls/check_config.h"
mbed_official 94:0c008659750c 177
mbed_official 94:0c008659750c 178 #endif /* MBEDTLS_WISUN_CONFIG_H */
mbed_official 94:0c008659750c 179