mirror of
https://github.com/cesanta/mongoose.git
synced 2026-10-26 12:14:56 +00:00
CL: Apache license to common/ PUBLISHED_FROM=901e9e4b12a31289b3515d1f86dd56a7f0f35c5e
94 lines
2.4 KiB
C
94 lines
2.4 KiB
C
/*
|
|
* 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_MBED_H_
|
|
#define CS_COMMON_PLATFORMS_PLATFORM_MBED_H_
|
|
#if CS_PLATFORM == CS_P_MBED
|
|
|
|
/*
|
|
* mbed.h contains C++ code (e.g. templates), thus, it should be processed
|
|
* only if included directly to startup file (ex: main.cpp)
|
|
*/
|
|
#ifdef __cplusplus
|
|
#include "mbed.h"
|
|
#endif /* __cplusplus */
|
|
|
|
#include <assert.h>
|
|
#include <ctype.h>
|
|
#include <errno.h>
|
|
#include <inttypes.h>
|
|
#include <stdint.h>
|
|
#include <string.h>
|
|
#include <time.h>
|
|
#include <sys/stat.h>
|
|
#include <sys/types.h>
|
|
#include <fcntl.h>
|
|
#include <stdio.h>
|
|
|
|
typedef struct stat cs_stat_t;
|
|
#define DIRSEP '/'
|
|
|
|
#ifndef CS_ENABLE_STDIO
|
|
#define CS_ENABLE_STDIO 1
|
|
#endif
|
|
|
|
/*
|
|
* mbed can be compiled with the ARM compiler which
|
|
* just doesn't come with a gettimeofday shim
|
|
* because it's a BSD API and ARM targets embedded
|
|
* non-unix platforms.
|
|
*/
|
|
#if defined(__ARMCC_VERSION) || defined(__ICCARM__)
|
|
#define _TIMEVAL_DEFINED
|
|
#define gettimeofday _gettimeofday
|
|
|
|
/* copied from GCC on ARM; for some reason useconds are signed */
|
|
typedef long suseconds_t; /* microseconds (signed) */
|
|
struct timeval {
|
|
time_t tv_sec; /* seconds */
|
|
suseconds_t tv_usec; /* and microseconds */
|
|
};
|
|
|
|
#endif
|
|
|
|
#if MG_NET_IF == MG_NET_IF_SIMPLELINK
|
|
|
|
#define MG_SIMPLELINK_NO_OSI 1
|
|
|
|
#include <simplelink.h>
|
|
|
|
typedef int sock_t;
|
|
#define INVALID_SOCKET (-1)
|
|
|
|
#define to64(x) strtoll(x, NULL, 10)
|
|
#define INT64_FMT PRId64
|
|
#define INT64_X_FMT PRIx64
|
|
#define SIZE_T_FMT "u"
|
|
|
|
#define SOMAXCONN 8
|
|
|
|
const char *inet_ntop(int af, const void *src, char *dst, socklen_t size);
|
|
char *inet_ntoa(struct in_addr in);
|
|
int inet_pton(int af, const char *src, void *dst);
|
|
int inet_aton(const char *cp, struct in_addr *inp);
|
|
in_addr_t inet_addr(const char *cp);
|
|
|
|
#endif /* MG_NET_IF == MG_NET_IF_SIMPLELINK */
|
|
|
|
#endif /* CS_PLATFORM == CS_P_MBED */
|
|
#endif /* CS_COMMON_PLATFORMS_PLATFORM_MBED_H_ */
|