xref: /spdk/lib/ut_mock/mock.c (revision 0098e636761237b77c12c30c2408263a5d2260cc)
1 /*   SPDX-License-Identifier: BSD-3-Clause
2  *   Copyright (c) Intel Corporation.
3  *   All rights reserved.
4  */
5 
6 #include "spdk_internal/mock.h"
7 
8 DEFINE_WRAPPER(calloc, void *, (size_t nmemb, size_t size), (nmemb, size))
9 
10 DEFINE_WRAPPER(pthread_mutex_init, int,
11 	       (pthread_mutex_t *mtx, const pthread_mutexattr_t *attr),
12 	       (mtx, attr))
13 
14 DEFINE_WRAPPER(pthread_mutexattr_init, int,
15 	       (pthread_mutexattr_t *attr), (attr))
16 
17 DEFINE_WRAPPER(recvmsg, ssize_t, (int sockfd, struct msghdr *msg, int flags), (sockfd, msg, flags))
18 
19 DEFINE_WRAPPER(sendmsg, ssize_t, (int sockfd, const struct msghdr *msg, int flags), (sockfd, msg,
20 		flags))
21 
22 DEFINE_WRAPPER(writev, ssize_t, (int fd, const struct iovec *iov, int iovcnt), (fd, iov, iovcnt))
23 
24 char *g_unlink_path;
25 void (*g_unlink_callback)(void);
26 
27 int
28 __attribute__((used))
29 __wrap_unlink(const char *path)
30 {
31 	if (g_unlink_path == NULL) {
32 		return ENOENT;
33 	}
34 
35 	if (strcmp(g_unlink_path, path) != 0) {
36 		return ENOENT;
37 	}
38 
39 	if (g_unlink_callback) {
40 		g_unlink_callback();
41 	}
42 	return 0;
43 }
44