blob: 14e52373aff6a3470959dac3c07fe7a3d8291bf6 [file] [log] [blame]
/* This work is licensed under a Creative Commons CCZero 1.0 Universal License.
* See http://creativecommons.org/publicdomain/zero/1.0/ for more information.
*
* Copyright 2018 (c) Jose Cabral, fortiss GmbH
*/
#ifdef UA_ARCHITECTURE_POSIX
#include <open62541/types.h>
/* Global malloc singletons */
#ifdef UA_ENABLE_MALLOC_SINGLETON
void * (*UA_globalMalloc)(size_t size) = malloc;
void (*UA_globalFree)(void *ptr) = free;
void * (*UA_globalCalloc)(size_t nelem, size_t elsize) = calloc;
void * (*UA_globalRealloc)(void *ptr, size_t size) = realloc;
#endif
unsigned int UA_socket_set_blocking(UA_SOCKET sockfd){
int opts = fcntl(sockfd, F_GETFL);
if(opts < 0 || fcntl(sockfd, F_SETFL, opts & (~O_NONBLOCK)) < 0)
return UA_STATUSCODE_BADINTERNALERROR;
return UA_STATUSCODE_GOOD;
}
unsigned int UA_socket_set_nonblocking(UA_SOCKET sockfd){
int opts = fcntl(sockfd, F_GETFL);
if(opts < 0 || fcntl(sockfd, F_SETFL, opts | O_NONBLOCK) < 0)
return UA_STATUSCODE_BADINTERNALERROR;
return UA_STATUSCODE_GOOD;
}
void UA_initialize_architecture_network(void){
}
void UA_deinitialize_architecture_network(void){
}
#endif /* UA_ARCHITECTURE_POSIX */