1 /* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright (C) 2019 Intel Corporation. 3 * All rights reserved. 4 */ 5 6 #include "spdk/stdinc.h" 7 8 #include "spdk_internal/sock.h" 9 #include "spdk_internal/mock.h" 10 11 DEFINE_STUB(spdk_sock_getaddr, int, (struct spdk_sock *sock, char *saddr, int slen, uint16_t *sport, 12 char *caddr, int clen, uint16_t *cport), 0); 13 DEFINE_STUB(spdk_sock_connect, struct spdk_sock *, (const char *ip, int port, 14 const char *impl_name), NULL); 15 DEFINE_STUB(spdk_sock_listen, struct spdk_sock *, (const char *ip, int port, const char *impl_name), 16 NULL); 17 DEFINE_STUB(spdk_sock_listen_ext, struct spdk_sock *, (const char *ip, int port, 18 const char *impl_name, struct spdk_sock_opts *opts), NULL); 19 DEFINE_STUB_V(spdk_sock_get_default_opts, (struct spdk_sock_opts *opts)); 20 DEFINE_STUB(spdk_sock_impl_get_opts, int, (const char *impl_name, struct spdk_sock_impl_opts *opts, 21 size_t *len), 0); 22 DEFINE_STUB(spdk_sock_accept, struct spdk_sock *, (struct spdk_sock *sock), NULL); 23 DEFINE_STUB(spdk_sock_close, int, (struct spdk_sock **sock), 0); 24 DEFINE_STUB(spdk_sock_recv, ssize_t, (struct spdk_sock *sock, void *buf, size_t len), 1); 25 DEFINE_STUB(spdk_sock_writev, ssize_t, (struct spdk_sock *sock, struct iovec *iov, int iovcnt), 0); 26 DEFINE_STUB(spdk_sock_readv, ssize_t, (struct spdk_sock *sock, struct iovec *iov, int iovcnt), 0); 27 DEFINE_STUB(spdk_sock_set_recvlowat, int, (struct spdk_sock *sock, int nbytes), 0); 28 DEFINE_STUB(spdk_sock_set_recvbuf, int, (struct spdk_sock *sock, int sz), 0); 29 DEFINE_STUB(spdk_sock_set_sendbuf, int, (struct spdk_sock *sock, int sz), 0); 30 DEFINE_STUB_V(spdk_sock_writev_async, (struct spdk_sock *sock, struct spdk_sock_request *req)); 31 DEFINE_STUB(spdk_sock_flush, int, (struct spdk_sock *sock), 0); 32 DEFINE_STUB(spdk_sock_is_ipv6, bool, (struct spdk_sock *sock), false); 33 DEFINE_STUB(spdk_sock_is_ipv4, bool, (struct spdk_sock *sock), true); 34 DEFINE_STUB(spdk_sock_is_connected, bool, (struct spdk_sock *sock), true); 35 DEFINE_STUB(spdk_sock_group_create, struct spdk_sock_group *, (void *ctx), NULL); 36 DEFINE_STUB(spdk_sock_group_add_sock, int, (struct spdk_sock_group *group, struct spdk_sock *sock, 37 spdk_sock_cb cb_fn, void *cb_arg), 0); 38 DEFINE_STUB(spdk_sock_group_remove_sock, int, (struct spdk_sock_group *group, 39 struct spdk_sock *sock), 0); 40 DEFINE_STUB(spdk_sock_group_poll, int, (struct spdk_sock_group *group), 0); 41 DEFINE_STUB(spdk_sock_group_poll_count, int, (struct spdk_sock_group *group, int max_events), 0); 42 DEFINE_STUB(spdk_sock_group_close, int, (struct spdk_sock_group **group), 0); 43 DEFINE_STUB(spdk_sock_group_provide_buf, int, (struct spdk_sock_group *group, void *buf, size_t len, 44 void *ctx), 0); 45 46 static uint8_t g_buf[0x1000] = {}; 47 48 DEFINE_RETURN_MOCK(spdk_sock_recv_next, int); 49 int 50 spdk_sock_recv_next(struct spdk_sock *sock, void **buf, void **ctx) 51 { 52 HANDLE_RETURN_MOCK(spdk_sock_recv_next); 53 54 *buf = g_buf; 55 *ctx = NULL; 56 57 return 0x1000; 58 } 59