]>
git.ipfire.org Git - thirdparty/hostap.git/blob - src/utils/os_none.c
2 * wpa_supplicant/hostapd / Empty OS specific functions
3 * Copyright (c) 2005-2006, Jouni Malinen <j@w1.fi>
5 * This software may be distributed under the terms of the BSD license.
6 * See README for more details.
8 * This file can be used as a starting point when adding a new OS target. The
9 * functions here do not really work as-is since they are just empty or only
10 * return an error value. os_internal.c can be used as another starting point
11 * or reference since it has example implementation of many of these functions.
18 void os_sleep(os_time_t sec
, os_time_t usec
)
23 int os_get_time(struct os_time
*t
)
29 int os_get_reltime(struct os_reltime
*t
)
35 int os_mktime(int year
, int month
, int day
, int hour
, int min
, int sec
,
41 int os_gmtime(os_time_t t
, struct os_tm
*tm
)
47 int os_daemonize(const char *pid_file
)
53 void os_daemonize_terminate(const char *pid_file
)
58 int os_get_random(unsigned char *buf
, size_t len
)
64 unsigned long os_random(void)
70 char * os_rel2abs_path(const char *rel_path
)
72 return NULL
; /* strdup(rel_path) can be used here */
76 int os_program_init(void)
82 void os_program_deinit(void)
87 int os_setenv(const char *name
, const char *value
, int overwrite
)
93 int os_unsetenv(const char *name
)
99 char * os_readfile(const char *name
, size_t *len
)
105 int os_fdatasync(FILE *stream
)
111 void * os_zalloc(size_t size
)
117 void * os_memdup(const void *src
, size_t n
)
123 #ifdef OS_NO_C_LIB_DEFINES
124 void * os_malloc(size_t size
)
130 void * os_realloc(void *ptr
, size_t size
)
136 void os_free(void *ptr
)
141 void * os_memcpy(void *dest
, const void *src
, size_t n
)
147 void * os_memmove(void *dest
, const void *src
, size_t n
)
153 void * os_memset(void *s
, int c
, size_t n
)
159 int os_memcmp(const void *s1
, const void *s2
, size_t n
)
165 char * os_strdup(const char *s
)
171 size_t os_strlen(const char *s
)
177 int os_strcasecmp(const char *s1
, const char *s2
)
180 * Ignoring case is not required for main functionality, so just use
181 * the case sensitive version of the function.
183 return os_strcmp(s1
, s2
);
187 int os_strncasecmp(const char *s1
, const char *s2
, size_t n
)
190 * Ignoring case is not required for main functionality, so just use
191 * the case sensitive version of the function.
193 return os_strncmp(s1
, s2
, n
);
197 char * os_strchr(const char *s
, int c
)
203 char * os_strrchr(const char *s
, int c
)
209 int os_strcmp(const char *s1
, const char *s2
)
215 int os_strncmp(const char *s1
, const char *s2
, size_t n
)
221 size_t os_strlcpy(char *dest
, const char *src
, size_t size
)
227 int os_memcmp_const(const void *a
, const void *b
, size_t len
)
232 char * os_strstr(const char *haystack
, const char *needle
)
238 int os_snprintf(char *str
, size_t size
, const char *format
, ...)
242 #endif /* OS_NO_C_LIB_DEFINES */
245 int os_exec(const char *program
, const char *arg
, int wait_completion
)