mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2025-08-02 12:14:38 +02:00
fixed uITRON, uTKernel option
This commit is contained in:
@@ -391,6 +391,7 @@ int UnLockMutex(wolfSSL_Mutex *m)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#elif defined(WOLFSSL_uITRON4)
|
#elif defined(WOLFSSL_uITRON4)
|
||||||
|
#include "stddef.h"
|
||||||
#include "kernel.h"
|
#include "kernel.h"
|
||||||
int InitMutex(wolfSSL_Mutex* m)
|
int InitMutex(wolfSSL_Mutex* m)
|
||||||
{
|
{
|
||||||
@@ -401,7 +402,7 @@ int UnLockMutex(wolfSSL_Mutex *m)
|
|||||||
m->sem.name = NULL ;
|
m->sem.name = NULL ;
|
||||||
|
|
||||||
m->id = acre_sem(&m->sem);
|
m->id = acre_sem(&m->sem);
|
||||||
if( m->id != NULL )
|
if( m->id != E_OK )
|
||||||
iReturn = 0;
|
iReturn = 0;
|
||||||
else
|
else
|
||||||
iReturn = BAD_MUTEX_E;
|
iReturn = BAD_MUTEX_E;
|
||||||
|
@@ -117,12 +117,18 @@
|
|||||||
/* do nothing */
|
/* do nothing */
|
||||||
#elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX)
|
#elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX)
|
||||||
/* do nothing */
|
/* do nothing */
|
||||||
|
#elif defined(WOLFSSL_uITRON4)
|
||||||
|
/* do nothing */
|
||||||
|
#elif defined(WOLFSSL_uTKERNEL2)
|
||||||
|
/* do nothing */
|
||||||
#elif defined(WOLFSSL_MDK_ARM)
|
#elif defined(WOLFSSL_MDK_ARM)
|
||||||
#if defined(WOLFSSL_MDK5)
|
#if defined(WOLFSSL_MDK5)
|
||||||
#include "cmsis_os.h"
|
#include "cmsis_os.h"
|
||||||
#else
|
#else
|
||||||
#include <rtl.h>
|
#include <rtl.h>
|
||||||
#endif
|
#endif
|
||||||
|
#elif defined(WOLFSSL_CMSIS_RTOS)
|
||||||
|
#include "cmsis_os.h"
|
||||||
#elif defined(MBED)
|
#elif defined(MBED)
|
||||||
#elif defined(WOLFSSL_TIRTOS)
|
#elif defined(WOLFSSL_TIRTOS)
|
||||||
/* do nothing */
|
/* do nothing */
|
||||||
|
@@ -307,6 +307,54 @@
|
|||||||
#define USE_WINDOWS_API
|
#define USE_WINDOWS_API
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(WOLFSSL_uITRON4)
|
||||||
|
|
||||||
|
#define XMALLOC_USER
|
||||||
|
#include <stddef.h>
|
||||||
|
#define ITRON_POOL_SIZE 1024*20
|
||||||
|
extern int uITRON4_minit(size_t poolsz) ;
|
||||||
|
extern void *uITRON4_malloc(size_t sz) ;
|
||||||
|
extern void *uITRON4_realloc(void *p, size_t sz) ;
|
||||||
|
extern void uITRON4_free(void *p) ;
|
||||||
|
|
||||||
|
#define XMALLOC(sz, heap, type) uITRON4_malloc(sz)
|
||||||
|
#define XREALLOC(p, sz, heap, type) uITRON4_realloc(p, sz)
|
||||||
|
#define XFREE(p, heap, type) uITRON4_free(p)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(WOLFSSL_uTKERNEL2)
|
||||||
|
#define WOLFSSL_CLOSESOCKET
|
||||||
|
#define XMALLOC_USER
|
||||||
|
int uTKernel_init_mpool(unsigned int sz) ; /* initializing malloc pool */
|
||||||
|
void *uTKernel_malloc(unsigned int sz) ;
|
||||||
|
void *uTKernel_realloc(void *p, unsigned int sz) ;
|
||||||
|
void uTKernel_free(void *p) ;
|
||||||
|
#define XMALLOC(s, h, type) uTKernel_malloc((s))
|
||||||
|
#define XREALLOC(p, n, h, t) uTKernel_realloc((p), (n))
|
||||||
|
#define XFREE(p, h, type) uTKernel_free((p))
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include "tm/tmonitor.h"
|
||||||
|
static char *fgets(char *buff, int sz, FILE *fp)
|
||||||
|
/*static char * gets(char *buff)*/
|
||||||
|
{
|
||||||
|
char * p = buff ;
|
||||||
|
*p = '\0' ;
|
||||||
|
while(1) {
|
||||||
|
*p = tm_getchar(-1) ;
|
||||||
|
tm_putchar(*p) ;
|
||||||
|
if(*p == '\r') {
|
||||||
|
tm_putchar('\n') ;
|
||||||
|
*p = '\0' ;
|
||||||
|
break ;
|
||||||
|
}
|
||||||
|
p ++ ;
|
||||||
|
}
|
||||||
|
return buff ;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#if defined(WOLFSSL_LEANPSK) && !defined(XMALLOC_USER)
|
#if defined(WOLFSSL_LEANPSK) && !defined(XMALLOC_USER)
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@@ -161,7 +161,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/* idea to add global alloc override by Moisés Guimarães */
|
/* idea to add global alloc override by Moises Guimaraes */
|
||||||
/* default to libc stuff */
|
/* default to libc stuff */
|
||||||
/* XREALLOC is used once in normal math lib, not in fast math lib */
|
/* XREALLOC is used once in normal math lib, not in fast math lib */
|
||||||
/* XFREE on some embeded systems doesn't like free(0) so test */
|
/* XFREE on some embeded systems doesn't like free(0) so test */
|
||||||
@@ -180,7 +180,8 @@
|
|||||||
#elif !defined(MICRIUM_MALLOC) && !defined(EBSNET) \
|
#elif !defined(MICRIUM_MALLOC) && !defined(EBSNET) \
|
||||||
&& !defined(WOLFSSL_SAFERTOS) && !defined(FREESCALE_MQX) \
|
&& !defined(WOLFSSL_SAFERTOS) && !defined(FREESCALE_MQX) \
|
||||||
&& !defined(FREESCALE_KSDK_MQX) && !defined(WOLFSSL_LEANPSK) \
|
&& !defined(FREESCALE_KSDK_MQX) && !defined(WOLFSSL_LEANPSK) \
|
||||||
&& !defined(FREERTOS)
|
&& !defined(FREERTOS) && !defined(WOLFSSL_uITRON4) \
|
||||||
|
&& !defined(WOLFSSL_uTKERNEL2)
|
||||||
/* default C runtime, can install different routines at runtime via cbs */
|
/* default C runtime, can install different routines at runtime via cbs */
|
||||||
#include <wolfssl/wolfcrypt/memory.h>
|
#include <wolfssl/wolfcrypt/memory.h>
|
||||||
#define XMALLOC(s, h, t) ((void)h, (void)t, wolfSSL_Malloc((s)))
|
#define XMALLOC(s, h, t) ((void)h, (void)t, wolfSSL_Malloc((s)))
|
||||||
|
@@ -55,6 +55,10 @@
|
|||||||
/* do nothing */
|
/* do nothing */
|
||||||
#elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX)
|
#elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX)
|
||||||
/* do nothing */
|
/* do nothing */
|
||||||
|
#elif defined(WOLFSSL_uITRON4)
|
||||||
|
#include "kernel.h"
|
||||||
|
#elif defined(WOLFSSL_uTKERNEL2)
|
||||||
|
#include "tk/tkernel.h"
|
||||||
#elif defined(WOLFSSL_MDK_ARM)
|
#elif defined(WOLFSSL_MDK_ARM)
|
||||||
#if defined(WOLFSSL_MDK5)
|
#if defined(WOLFSSL_MDK5)
|
||||||
#include "cmsis_os.h"
|
#include "cmsis_os.h"
|
||||||
@@ -100,6 +104,16 @@
|
|||||||
typedef RTP_MUTEX wolfSSL_Mutex;
|
typedef RTP_MUTEX wolfSSL_Mutex;
|
||||||
#elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX)
|
#elif defined(FREESCALE_MQX) || defined(FREESCALE_KSDK_MQX)
|
||||||
typedef MUTEX_STRUCT wolfSSL_Mutex;
|
typedef MUTEX_STRUCT wolfSSL_Mutex;
|
||||||
|
#elif defined(WOLFSSL_uITRON4)
|
||||||
|
typedef struct wolfSSL_Mutex {
|
||||||
|
T_CSEM sem ;
|
||||||
|
ID id ;
|
||||||
|
} wolfSSL_Mutex;
|
||||||
|
#elif defined(WOLFSSL_uTKERNEL2)
|
||||||
|
typedef struct wolfSSL_Mutex {
|
||||||
|
T_CSEM sem ;
|
||||||
|
ID id ;
|
||||||
|
} wolfSSL_Mutex;
|
||||||
#elif defined(WOLFSSL_MDK_ARM)
|
#elif defined(WOLFSSL_MDK_ARM)
|
||||||
#if defined(WOLFSSL_CMSIS_RTOS)
|
#if defined(WOLFSSL_CMSIS_RTOS)
|
||||||
typedef osMutexId wolfSSL_Mutex;
|
typedef osMutexId wolfSSL_Mutex;
|
||||||
|
Reference in New Issue
Block a user