Lines Matching defs:uvwasi
20 #include "uvwasi.h"
126 void* uvwasi__malloc(const uvwasi_t* uvwasi, size_t size) {
127 return uvwasi->allocator->malloc(size, uvwasi->allocator->mem_user_data);
130 void uvwasi__free(const uvwasi_t* uvwasi, void* ptr) {
134 uvwasi->allocator->free(ptr, uvwasi->allocator->mem_user_data);
137 void* uvwasi__calloc(const uvwasi_t* uvwasi, size_t nmemb, size_t size) {
138 return uvwasi->allocator->calloc(nmemb,
140 uvwasi->allocator->mem_user_data);
143 void* uvwasi__realloc(const uvwasi_t* uvwasi, void* ptr, size_t size) {
144 return uvwasi->allocator->realloc(ptr,
146 uvwasi->allocator->mem_user_data);
192 static uvwasi_errno_t uvwasi__setup_iovs(const uvwasi_t* uvwasi,
202 bufs = uvwasi__malloc(uvwasi, iovs_len * sizeof(*bufs));
214 static uvwasi_errno_t uvwasi__setup_ciovs(const uvwasi_t* uvwasi,
224 bufs = uvwasi__malloc(uvwasi, iovs_len * sizeof(*bufs));
243 uvwasi_errno_t uvwasi_init(uvwasi_t* uvwasi, const uvwasi_options_t* options) {
256 if (uvwasi == NULL || options == NULL || options->fd_table_size == 0)
260 uvwasi->loop = NULL;
262 uvwasi->allocator = options->allocator;
264 if (uvwasi->allocator == NULL)
265 uvwasi->allocator = &default_allocator;
267 uvwasi->argv_buf = NULL;
268 uvwasi->argv = NULL;
269 uvwasi->env_buf = NULL;
270 uvwasi->env = NULL;
271 uvwasi->fds = NULL;
277 uvwasi->argc = options->argc;
278 uvwasi->argv_buf_size = args_size;
281 uvwasi->argv_buf = uvwasi__malloc(uvwasi, args_size);
282 if (uvwasi->argv_buf == NULL) {
287 uvwasi->argv = uvwasi__calloc(uvwasi, options->argc, sizeof(char*));
288 if (uvwasi->argv == NULL) {
296 memcpy(uvwasi->argv_buf + offset, options->argv[i], size);
297 uvwasi->argv[i] = uvwasi->argv_buf + offset;
311 uvwasi->envc = env_count;
312 uvwasi->env_buf_size = env_buf_size;
315 uvwasi->env_buf = uvwasi__malloc(uvwasi, env_buf_size);
316 if (uvwasi->env_buf == NULL) {
321 uvwasi->env = uvwasi__calloc(uvwasi, env_count, sizeof(char*));
322 if (uvwasi->env == NULL) {
330 memcpy(uvwasi->env_buf + offset, options->envp[i], size);
331 uvwasi->env[i] = uvwasi->env_buf + offset;
352 err = uvwasi_fd_table_init(uvwasi, options);
375 err = uvwasi_fd_table_insert_preopen(uvwasi,
376 uvwasi->fds,
388 uvwasi->loop = uvwasi__malloc(uvwasi, sizeof(uv_loop_t));
389 r = uv_loop_init(uvwasi->loop);
398 uv_tcp_init(uvwasi->loop, socket);
409 err = uvwasi_fd_table_insert_preopen_socket(uvwasi,
410 uvwasi->fds,
420 uvwasi_destroy(uvwasi);
425 void uvwasi_destroy(uvwasi_t* uvwasi) {
426 if (uvwasi == NULL)
429 uvwasi_fd_table_free(uvwasi, uvwasi->fds);
430 uvwasi__free(uvwasi, uvwasi->argv_buf);
431 uvwasi__free(uvwasi, uvwasi->argv);
432 uvwasi__free(uvwasi, uvwasi->env_buf);
433 uvwasi__free(uvwasi, uvwasi->env);
434 if (uvwasi->loop != NULL) {
435 uv_stop(uvwasi->loop);
436 uv_loop_close(uvwasi->loop);
437 uvwasi__free(uvwasi, uvwasi->loop);
438 uvwasi->loop = NULL;
440 uvwasi->fds = NULL;
441 uvwasi->argv_buf = NULL;
442 uvwasi->argv = NULL;
443 uvwasi->env_buf = NULL;
444 uvwasi->env = NULL;
467 uvwasi_errno_t uvwasi_embedder_remap_fd(uvwasi_t* uvwasi,
473 if (uvwasi == NULL)
476 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, 0, 0);
486 uvwasi_errno_t uvwasi_args_get(uvwasi_t* uvwasi, char** argv, char* argv_buf) {
489 UVWASI_DEBUG("uvwasi_args_get(uvwasi=%p, argv=%p, argv_buf=%p)\n",
490 uvwasi,
494 if (uvwasi == NULL || argv == NULL || argv_buf == NULL)
497 for (i = 0; i < uvwasi->argc; ++i) {
498 argv[i] = argv_buf + (uvwasi->argv[i] - uvwasi->argv_buf);
501 memcpy(argv_buf, uvwasi->argv_buf, uvwasi->argv_buf_size);
506 uvwasi_errno_t uvwasi_args_sizes_get(uvwasi_t* uvwasi,
509 UVWASI_DEBUG("uvwasi_args_sizes_get(uvwasi=%p, argc=%p, argv_buf_size=%p)\n",
510 uvwasi,
514 if (uvwasi == NULL || argc == NULL || argv_buf_size == NULL)
517 *argc = uvwasi->argc;
518 *argv_buf_size = uvwasi->argv_buf_size;
523 uvwasi_errno_t uvwasi_clock_res_get(uvwasi_t* uvwasi,
526 UVWASI_DEBUG("uvwasi_clock_res_get(uvwasi=%p, clock_id=%d, resolution=%p)\n",
527 uvwasi,
531 if (uvwasi == NULL || resolution == NULL)
549 uvwasi_errno_t uvwasi_clock_time_get(uvwasi_t* uvwasi,
553 UVWASI_DEBUG("uvwasi_clock_time_get(uvwasi=%p, clock_id=%d, "
555 uvwasi,
560 if (uvwasi == NULL || time == NULL)
579 uvwasi_errno_t uvwasi_environ_get(uvwasi_t* uvwasi,
584 UVWASI_DEBUG("uvwasi_environ_get(uvwasi=%p, environment=%p, "
586 uvwasi,
590 if (uvwasi == NULL || environment == NULL || environ_buf == NULL)
593 for (i = 0; i < uvwasi->envc; ++i) {
594 environment[i] = environ_buf + (uvwasi->env[i] - uvwasi->env_buf);
597 memcpy(environ_buf, uvwasi->env_buf, uvwasi->env_buf_size);
602 uvwasi_errno_t uvwasi_environ_sizes_get(uvwasi_t* uvwasi,
605 UVWASI_DEBUG("uvwasi_environ_sizes_get(uvwasi=%p, environ_count=%p, "
607 uvwasi,
611 if (uvwasi == NULL || environ_count == NULL || environ_buf_size == NULL)
614 *environ_count = uvwasi->envc;
615 *environ_buf_size = uvwasi->env_buf_size;
620 uvwasi_errno_t uvwasi_fd_advise(uvwasi_t* uvwasi,
632 UVWASI_DEBUG("uvwasi_fd_advise(uvwasi=%p, fd=%d, offset=%"PRIu64", "
634 uvwasi,
640 if (uvwasi == NULL)
678 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, UVWASI_RIGHT_FD_ADVISE, 0);
694 uvwasi_errno_t uvwasi_fd_allocate(uvwasi_t* uvwasi,
706 UVWASI_DEBUG("uvwasi_fd_allocate(uvwasi=%p, fd=%d, offset=%"PRIu64", "
708 uvwasi,
713 if (uvwasi == NULL)
716 err = uvwasi_fd_table_get(uvwasi->fds,
756 uvwasi_errno_t uvwasi_fd_close(uvwasi_t* uvwasi, uvwasi_fd_t fd) {
762 UVWASI_DEBUG("uvwasi_fd_close(uvwasi=%p, fd=%d)\n", uvwasi, fd);
764 if (uvwasi == NULL)
767 uvwasi_fd_table_lock(uvwasi->fds);
769 err = uvwasi_fd_table_get_nolock(uvwasi->fds, fd, &wrap, 0, 0);
779 err = free_handle_sync(uvwasi, (uv_handle_t*) wrap->sock);
791 err = uvwasi_fd_table_remove_nolock(uvwasi, uvwasi->fds, fd);
794 uvwasi_fd_table_unlock(uvwasi->fds);
799 uvwasi_errno_t uvwasi_fd_datasync(uvwasi_t* uvwasi, uvwasi_fd_t fd) {
805 UVWASI_DEBUG("uvwasi_fd_datasync(uvwasi=%p, fd=%d)\n", uvwasi, fd);
807 if (uvwasi == NULL)
810 err = uvwasi_fd_table_get(uvwasi->fds,
829 uvwasi_errno_t uvwasi_fd_fdstat_get(uvwasi_t* uvwasi,
838 UVWASI_DEBUG("uvwasi_fd_fdstat_get(uvwasi=%p, fd=%d, buf=%p)\n",
839 uvwasi,
843 if (uvwasi == NULL || buf == NULL)
846 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, 0, 0);
870 uvwasi_errno_t uvwasi_fd_fdstat_set_flags(uvwasi_t* uvwasi,
874 UVWASI_DEBUG("uvwasi_fd_fdstat_set_flags(uvwasi=%p, fd=%d, flags=%d)\n",
875 uvwasi,
887 UVWASI_DEBUG("uvwasi_fd_fdstat_set_flags(uvwasi=%p, fd=%d, flags=%d)\n",
888 uvwasi,
892 if (uvwasi == NULL)
895 err = uvwasi_fd_table_get(uvwasi->fds,
940 uvwasi_errno_t uvwasi_fd_fdstat_set_rights(uvwasi_t* uvwasi,
948 UVWASI_DEBUG("uvwasi_fd_fdstat_set_rights(uvwasi=%p, fd=%d, "
950 uvwasi,
955 if (uvwasi == NULL)
958 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, 0, 0);
983 uvwasi_errno_t uvwasi_fd_filestat_get(uvwasi_t* uvwasi,
991 UVWASI_DEBUG("uvwasi_fd_filestat_get(uvwasi=%p, fd=%d, buf=%p)\n",
992 uvwasi,
996 if (uvwasi == NULL || buf == NULL)
999 err = uvwasi_fd_table_get(uvwasi->fds,
1022 uvwasi_errno_t uvwasi_fd_filestat_set_size(uvwasi_t* uvwasi,
1031 UVWASI_DEBUG("uvwasi_fd_filestat_set_size(uvwasi=%p, fd=%d, "
1033 uvwasi,
1037 if (uvwasi == NULL)
1040 err = uvwasi_fd_table_get(uvwasi->fds,
1059 uvwasi_errno_t uvwasi_fd_filestat_set_times(uvwasi_t* uvwasi,
1071 UVWASI_DEBUG("uvwasi_fd_filestat_set_times(uvwasi=%p, fd=%d, "
1073 uvwasi,
1079 if (uvwasi == NULL)
1084 err = uvwasi_fd_table_get(uvwasi->fds,
1116 uvwasi_errno_t uvwasi_fd_pread(uvwasi_t* uvwasi,
1129 UVWASI_DEBUG("uvwasi_fd_pread(uvwasi=%p, fd=%d, iovs=%p, iovs_len=%d, "
1131 uvwasi,
1138 if (uvwasi == NULL || iovs == NULL || nread == NULL)
1141 err = uvwasi_fd_table_get(uvwasi->fds,
1149 err = uvwasi__setup_iovs(uvwasi, &bufs, iovs, iovs_len);
1159 uvwasi__free(uvwasi, bufs);
1169 uvwasi_errno_t uvwasi_fd_prestat_get(uvwasi_t* uvwasi,
1175 UVWASI_DEBUG("uvwasi_fd_prestat_get(uvwasi=%p, fd=%d, buf=%p)\n",
1176 uvwasi,
1180 if (uvwasi == NULL || buf == NULL)
1183 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, 0, 0);
1200 uvwasi_errno_t uvwasi_fd_prestat_dir_name(uvwasi_t* uvwasi,
1208 UVWASI_DEBUG("uvwasi_fd_prestat_dir_name(uvwasi=%p, fd=%d, path=%p, "
1210 uvwasi,
1215 if (uvwasi == NULL || path == NULL)
1218 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, 0, 0);
1240 uvwasi_errno_t uvwasi_fd_pwrite(uvwasi_t* uvwasi,
1253 UVWASI_DEBUG("uvwasi_fd_pwrite(uvwasi=%p, fd=%d, iovs=%p, iovs_len=%d, "
1255 uvwasi,
1262 if (uvwasi == NULL || iovs == NULL || nwritten == NULL)
1265 err = uvwasi_fd_table_get(uvwasi->fds,
1273 err = uvwasi__setup_ciovs(uvwasi, &bufs, iovs, iovs_len);
1283 uvwasi__free(uvwasi, bufs);
1293 uvwasi_errno_t uvwasi_fd_read(uvwasi_t* uvwasi,
1305 UVWASI_DEBUG("uvwasi_fd_read(uvwasi=%p, fd=%d, iovs=%p, iovs_len=%d, "
1307 uvwasi,
1313 if (uvwasi == NULL || iovs == NULL || nread == NULL)
1316 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, UVWASI_RIGHT_FD_READ, 0);
1320 err = uvwasi__setup_iovs(uvwasi, &bufs, iovs, iovs_len);
1330 uvwasi__free(uvwasi, bufs);
1340 uvwasi_errno_t uvwasi_fd_readdir(uvwasi_t* uvwasi,
1362 UVWASI_DEBUG("uvwasi_fd_readdir(uvwasi=%p, fd=%d, buf=%p, buf_len=%d, "
1364 uvwasi,
1371 if (uvwasi == NULL || buf == NULL || bufused == NULL)
1375 err = uvwasi_fd_table_get(uvwasi->fds,
1496 uvwasi_errno_t uvwasi_fd_renumber(uvwasi_t* uvwasi,
1499 UVWASI_DEBUG("uvwasi_fd_renumber(uvwasi=%p, from=%d, to=%d)\n",
1500 uvwasi,
1504 if (uvwasi == NULL)
1507 return uvwasi_fd_table_renumber(uvwasi, uvwasi->fds, to, from);
1511 uvwasi_errno_t uvwasi_fd_seek(uvwasi_t* uvwasi,
1519 UVWASI_DEBUG("uvwasi_fd_seek(uvwasi=%p, fd=%d, offset=%"PRId64", "
1521 uvwasi,
1527 if (uvwasi == NULL || newoffset == NULL)
1530 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, UVWASI_RIGHT_FD_SEEK, 0);
1540 uvwasi_errno_t uvwasi_fd_sync(uvwasi_t* uvwasi, uvwasi_fd_t fd) {
1546 UVWASI_DEBUG("uvwasi_fd_sync(uvwasi=%p, fd=%d)\n", uvwasi, fd);
1548 if (uvwasi == NULL)
1551 err = uvwasi_fd_table_get(uvwasi->fds,
1570 uvwasi_errno_t uvwasi_fd_tell(uvwasi_t* uvwasi,
1576 UVWASI_DEBUG("uvwasi_fd_tell(uvwasi=%p, fd=%d, offset=%p)\n",
1577 uvwasi,
1581 if (uvwasi == NULL || offset == NULL)
1584 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, UVWASI_RIGHT_FD_TELL, 0);
1594 uvwasi_errno_t uvwasi_fd_write(uvwasi_t* uvwasi,
1606 UVWASI_DEBUG("uvwasi_fd_write(uvwasi=%p, fd=%d, iovs=%p, iovs_len=%d, "
1608 uvwasi,
1614 if (uvwasi == NULL || iovs == NULL || nwritten == NULL)
1617 err = uvwasi_fd_table_get(uvwasi->fds, fd, &wrap, UVWASI_RIGHT_FD_WRITE, 0);
1621 err = uvwasi__setup_ciovs(uvwasi, &bufs, iovs, iovs_len);
1631 uvwasi__free(uvwasi, bufs);
1641 uvwasi_errno_t uvwasi_path_create_directory(uvwasi_t* uvwasi,
1651 UVWASI_DEBUG("uvwasi_path_create_directory(uvwasi=%p, fd=%d, path='%s', "
1653 uvwasi,
1658 if (uvwasi == NULL || path == NULL)
1661 err = uvwasi_fd_table_get(uvwasi->fds,
1669 err = uvwasi__resolve_path(uvwasi, wrap, path, path_len, &resolved_path, 0);
1675 uvwasi__free(uvwasi, resolved_path);
1689 uvwasi_errno_t uvwasi_path_filestat_get(uvwasi_t* uvwasi,
1701 UVWASI_DEBUG("uvwasi_path_filestat_get(uvwasi=%p, fd=%d, flags=%d, "
1703 uvwasi,
1710 if (uvwasi == NULL || path == NULL || buf == NULL)
1713 err = uvwasi_fd_table_get(uvwasi->fds,
1721 err = uvwasi__resolve_path(uvwasi,
1731 uvwasi__free(uvwasi, resolved_path);
1747 uvwasi_errno_t uvwasi_path_filestat_set_times(uvwasi_t* uvwasi,
1763 UVWASI_DEBUG("uvwasi_path_filestat_set_times(uvwasi=%p, fd=%d, "
1766 uvwasi,
1775 if (uvwasi == NULL || path == NULL)
1780 err = uvwasi_fd_table_get(uvwasi->fds,
1788 err = uvwasi__resolve_path(uvwasi,
1805 uvwasi__free(uvwasi, resolved_path);
1811 uvwasi__free(uvwasi, resolved_path);
1826 uvwasi_errno_t uvwasi_path_link(uvwasi_t* uvwasi,
1842 UVWASI_DEBUG("uvwasi_path_link(uvwasi=%p, old_fd=%d, old_flags=%d, "
1845 uvwasi,
1854 if (uvwasi == NULL || old_path == NULL || new_path == NULL)
1857 uvwasi_fd_table_lock(uvwasi->fds);
1860 err = uvwasi_fd_table_get_nolock(uvwasi->fds,
1868 err = uvwasi_fd_table_get_nolock(uvwasi->fds,
1874 uvwasi_fd_table_unlock(uvwasi->fds);
1878 err = uvwasi_fd_table_get_nolock(uvwasi->fds,
1887 uvwasi_fd_table_unlock(uvwasi->fds);
1895 err = uvwasi__resolve_path(uvwasi,
1904 err = uvwasi__resolve_path(uvwasi,
1926 uvwasi__free(uvwasi, resolved_old_path);
1927 uvwasi__free(uvwasi, resolved_new_path);
1932 uvwasi_errno_t uvwasi_path_open(uvwasi_t* uvwasi,
1957 UVWASI_DEBUG("uvwasi_path_open(uvwasi=%p, dirfd=%d, dirflags=%d, path='%s', "
1960 uvwasi,
1971 if (uvwasi == NULL || path == NULL || fd == NULL)
2020 err = uvwasi_fd_table_get(uvwasi->fds,
2028 err = uvwasi__resolve_path(uvwasi,
2044 uvwasi__free(uvwasi, resolved_path);
2064 err = uvwasi_fd_table_insert(uvwasi,
2065 uvwasi->fds,
2080 uvwasi__free(uvwasi, resolved_path);
2086 uvwasi__free(uvwasi, resolved_path);
2091 uvwasi_errno_t uvwasi_path_readlink(uvwasi_t* uvwasi,
2105 UVWASI_DEBUG("uvwasi_path_readlink(uvwasi=%p, fd=%d, path='%s', path_len=%d, "
2107 uvwasi,
2115 if (uvwasi == NULL || path == NULL || buf == NULL || bufused == NULL)
2118 err = uvwasi_fd_table_get(uvwasi->fds,
2126 err = uvwasi__resolve_path(uvwasi, wrap, path, path_len, &resolved_path, 0);
2134 uvwasi__free(uvwasi, resolved_path);
2154 uvwasi_errno_t uvwasi_path_remove_directory(uvwasi_t* uvwasi,
2164 UVWASI_DEBUG("uvwasi_path_remove_directory(uvwasi=%p, fd=%d, path='%s', "
2166 uvwasi,
2171 if (uvwasi == NULL || path == NULL)
2174 err = uvwasi_fd_table_get(uvwasi->fds,
2182 err = uvwasi__resolve_path(uvwasi, wrap, path, path_len, &resolved_path, 0);
2190 uvwasi__free(uvwasi, resolved_path);
2200 uvwasi_errno_t uvwasi_path_rename(uvwasi_t* uvwasi,
2215 UVWASI_DEBUG("uvwasi_path_rename(uvwasi=%p, old_fd=%d, old_path='%s', "
2217 uvwasi,
2225 if (uvwasi == NULL || old_path == NULL || new_path == NULL)
2228 uvwasi_fd_table_lock(uvwasi->fds);
2231 err = uvwasi_fd_table_get_nolock(uvwasi->fds,
2239 err = uvwasi_fd_table_get_nolock(uvwasi->fds,
2245 uvwasi_fd_table_unlock(uvwasi->fds);
2249 err = uvwasi_fd_table_get_nolock(uvwasi->fds,
2258 uvwasi_fd_table_unlock(uvwasi->fds);
2266 err = uvwasi__resolve_path(uvwasi,
2275 err = uvwasi__resolve_path(uvwasi,
2297 uvwasi__free(uvwasi, resolved_old_path);
2298 uvwasi__free(uvwasi, resolved_new_path);
2303 uvwasi_errno_t uvwasi_path_symlink(uvwasi_t* uvwasi,
2315 UVWASI_DEBUG("uvwasi_path_symlink(uvwasi=%p, old_path='%s', old_path_len=%d, "
2317 uvwasi,
2324 if (uvwasi == NULL || old_path == NULL || new_path == NULL)
2327 err = uvwasi_fd_table_get(uvwasi->fds,
2335 err = uvwasi__resolve_path(uvwasi,
2349 uvwasi__free(uvwasi, resolved_new_path);
2358 uvwasi_errno_t uvwasi_path_unlink_file(uvwasi_t* uvwasi,
2368 UVWASI_DEBUG("uvwasi_path_unlink_file(uvwasi=%p, fd=%d, path='%s', "
2370 uvwasi,
2375 if (uvwasi == NULL || path == NULL)
2378 err = uvwasi_fd_table_get(uvwasi->fds,
2386 err = uvwasi__resolve_path(uvwasi, wrap, path, path_len, &resolved_path, 0);
2394 uvwasi__free(uvwasi, resolved_path);
2404 uvwasi_errno_t uvwasi_poll_oneoff(uvwasi_t* uvwasi,
2421 UVWASI_DEBUG("uvwasi_poll_oneoff(uvwasi=%p, in=%p, out=%p, "
2423 uvwasi,
2429 if (uvwasi == NULL || in == NULL || out == NULL ||
2435 err = uvwasi__poll_oneoff_state_init(uvwasi, &state, nsubscriptions);
2527 uvwasi_errno_t uvwasi_proc_exit(uvwasi_t* uvwasi, uvwasi_exitcode_t rval) {
2528 UVWASI_DEBUG("uvwasi_proc_exit(uvwasi=%p, rval=%d)\n", uvwasi, rval);
2534 uvwasi_errno_t uvwasi_proc_raise(uvwasi_t* uvwasi, uvwasi_signal_t sig) {
2537 UVWASI_DEBUG("uvwasi_proc_raise(uvwasi=%p, sig=%d)\n", uvwasi, sig);
2539 if (uvwasi == NULL)
2554 uvwasi_errno_t uvwasi_random_get(uvwasi_t* uvwasi,
2559 UVWASI_DEBUG("uvwasi_random_get(uvwasi=%p, buf=%p, buf_len=%d)\n",
2560 uvwasi,
2564 if (uvwasi == NULL || buf == NULL)
2575 uvwasi_errno_t uvwasi_sched_yield(uvwasi_t* uvwasi) {
2576 UVWASI_DEBUG("uvwasi_sched_yield(uvwasi=%p)\n", uvwasi);
2578 if (uvwasi == NULL)
2591 uvwasi_errno_t uvwasi_sock_recv(uvwasi_t* uvwasi,
2602 UVWASI_DEBUG("uvwasi_sock_recv(uvwasi=%p, sock=%d, ri_data=%p, "
2604 uvwasi,
2612 if (uvwasi == NULL || ri_data == NULL || ro_datalen == NULL || ro_flags == NULL)
2618 err = uvwasi_fd_table_get(uvwasi->fds,
2628 err = read_stream_sync(uvwasi, (uv_stream_t*) wrap->sock, &recv_data);
2645 uvwasi_errno_t uvwasi_sock_send(uvwasi_t* uvwasi,
2657 UVWASI_DEBUG("uvwasi_sock_send(uvwasi=%p, sock=%d, si_data=%p, "
2659 uvwasi,
2666 if (uvwasi == NULL || si_data == NULL || so_datalen == NULL ||
2670 err = uvwasi_fd_table_get(uvwasi->fds,
2678 err = uvwasi__setup_ciovs(uvwasi, &bufs, si_data, si_data_len);
2685 uvwasi__free(uvwasi, bufs);
2694 uvwasi_errno_t uvwasi_sock_shutdown(uvwasi_t* uvwasi,
2704 UVWASI_DEBUG("uvwasi_sock_shutdown(uvwasi=%p, sock=%d, how=%d)\n",
2705 uvwasi,
2709 if (uvwasi == NULL)
2712 err = uvwasi_fd_table_get(uvwasi->fds,
2721 err = shutdown_stream_sync(uvwasi, (uv_stream_t*) wrap->sock, &shutdown_data);
2736 uvwasi_errno_t uvwasi_sock_accept(uvwasi_t* uvwasi,
2746 UVWASI_DEBUG("uvwasi_sock_accept(uvwasi=%p, sock=%d, flags=%d, "
2748 uvwasi,
2753 if (uvwasi == NULL || connect_sock == NULL)
2759 err = uvwasi_fd_table_get(uvwasi->fds,
2768 uv_tcp_t* uv_connect_sock = (uv_tcp_t*) uvwasi__malloc(uvwasi, sizeof(uv_tcp_t));
2776 err = free_handle_sync(uvwasi, (uv_handle_t*) uv_connect_sock);
2815 err = uvwasi_fd_table_insert(uvwasi,
2816 uvwasi->fds,
2836 uvwasi__free(uvwasi, uv_connect_sock);