/* * Copyright (c) 2014-2018 Cesanta Software Limited * All rights reserved * * Licensed under the Apache License, Version 2.0 (the ""License""); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an ""AS IS"" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef CS_COMMON_PLATFORMS_PLATFORM_CC3220_H_ #define CS_COMMON_PLATFORMS_PLATFORM_CC3220_H_ #if CS_PLATFORM == CS_P_CC3220 #include #include #include #include #include #include #include #include #ifndef __TI_COMPILER_VERSION__ #include #include #endif #define MG_NET_IF MG_NET_IF_SIMPLELINK #ifndef MG_SSL_IF #define MG_SSL_IF MG_SSL_IF_SIMPLELINK #endif /* Only SPIFFS supports directories, SLFS does not. */ #if defined(CC3220_FS_SPIFFS) && !defined(MG_ENABLE_DIRECTORY_LISTING) #define MG_ENABLE_DIRECTORY_LISTING 1 #endif #include "common/platforms/simplelink/cs_simplelink.h" typedef int sock_t; #define INVALID_SOCKET (-1) #define SIZE_T_FMT "u" typedef struct stat cs_stat_t; #define DIRSEP '/' #define to64(x) strtoll(x, NULL, 10) #define INT64_FMT PRId64 #define INT64_X_FMT PRIx64 #define __cdecl #define fileno(x) -1 /* Some functions we implement for Mongoose. */ #ifdef __cplusplus extern "C" { #endif #ifdef __TI_COMPILER_VERSION__ struct SlTimeval_t; #define timeval SlTimeval_t int gettimeofday(struct timeval *t, void *tz); int settimeofday(const struct timeval *tv, const void *tz); int asprintf(char **strp, const char *fmt, ...); #endif /* TI's libc does not have stat & friends, add them. */ #ifdef __TI_COMPILER_VERSION__ #include typedef unsigned int mode_t; typedef size_t _off_t; typedef long ssize_t; struct stat { int st_ino; mode_t st_mode; int st_nlink; time_t st_mtime; off_t st_size; }; int _stat(const char *pathname, struct stat *st); int stat(const char *pathname, struct stat *st); #define __S_IFMT 0170000 #define __S_IFDIR 0040000 #define __S_IFCHR 0020000 #define __S_IFREG 0100000 #define __S_ISTYPE(mode, mask) (((mode) &__S_IFMT) == (mask)) #define S_IFDIR __S_IFDIR #define S_IFCHR __S_IFCHR #define S_IFREG __S_IFREG #define S_ISDIR(mode) __S_ISTYPE((mode), __S_IFDIR) #define S_ISREG(mode) __S_ISTYPE((mode), __S_IFREG) #endif /* __TI_COMPILER_VERSION__ */ #ifndef CS_ENABLE_STDIO #define CS_ENABLE_STDIO 1 #endif #ifdef __cplusplus } #endif #endif /* CS_PLATFORM == CS_P_CC3220 */ #endif /* CS_COMMON_PLATFORMS_PLATFORM_CC3200_H_ */