Macros | |
| #define | padico_vio_errno |
Detailed Description
Macro Definition Documentation
◆ padico_vio_errno
| #define padico_vio_errno |
- Examples
- Tests/VIO/vio-test.c.
Function Documentation
◆ padico_vio_accept()
Definition at line 1229 of file vio.c.
References vobs_attr_listener_s::backlog, padico_vnode_content_t::binding, padico_vnode_s::content, done, vobs_attr_remote_s::established, padico_vnode_content_t::listener, padico_vnode_s::listener, namelen, NULL, padico_vio_set_errno(), pending, raddr, rc, padico_vnode_content_t::remote, padico_vnode_s::remote, vobs_attr_remote_s::remote_addr, vobs_attr_remote_s::remote_addrlen, s, padico_vnode_content_t::socket, vfd_to_vnode(), vio_alloc_desc(), VIO_DATA, vlink_address_trace, vnode, vnode_check, vnode_lock(), vnode_unlock(), and vobs_wait().
Referenced by bench_vio_init(), data_check_init(), make_servant(), padico_vio_abi_init(), token_ring_init(), and vio_ring_init().
◆ padico_vio_bind()
Definition at line 1182 of file vio.c.
References done, name, namelen, padico_vio_set_errno(), padico_vsock_bind(), rc, s, vfd_to_vnode(), vnode, vnode_get_error(), vnode_lock(), and vnode_unlock().
Referenced by bench_udp_init(), bench_vio_init(), data_check_init(), make_server(), padico_vio_abi_init(), token_ring_init(), and vio_ring_init().
◆ padico_vio_close()
Definition at line 492 of file vio.c.
References padico_vnode_s::assembly_stuff, done, fd, vnode_assembly_stuff_s::instance, NULL, padico_vnode_s::observer, padico_vio_set_errno(), padico_vnode_close(), vobs_attr_status_s::pending_op, rc, s, vobs_attr_observer_s::secondary, padico_vnode_s::status, vfd_to_vnode(), vio_release_desc(), vnode, vnode_lock(), and vobs_wait().
Referenced by bench_udp_finalize(), bench_vio_finalize(), bench_vio_init(), client_loop(), data_check_finalize(), data_check_init(), padico_vio_abi_init(), servant_loop(), token_ring_finalize(), token_ring_init(), vio_ring_finalize(), and vio_ring_init().
◆ padico_vio_component()
| puk_component_t padico_vio_component | ( | int | fd | ) |
Definition at line 2168 of file vio.c.
References padico_vnode_s::assembly_stuff, component, done, fd, vnode_assembly_stuff_s::instance, NULL, padico_vio_set_errno(), vfd_to_vnode(), and vnode.
Referenced by bench_vio_init(), and client().
◆ padico_vio_connect()
Definition at line 1306 of file vio.c.
References assert(), vobs_attr_status_s::connecting, padico_vnode_s::content, done, vobs_attr_remote_s::established, name, namelen, padico_vio_set_errno(), padico_vsock_active_connect(), rc, padico_vnode_content_t::remote, padico_vnode_s::remote, s, padico_vnode_content_t::socket, padico_vnode_s::status, vfd_to_vnode(), VIO_DATA, vio_pivot_vnode(), vlink_address_trace, vnode, vnode_get_error(), vnode_lock(), vnode_unlock(), and vobs_wait().
Referenced by bench_vio_init(), data_check_init(), make_client(), padico_vio_abi_init(), token_ring_init(), and vio_ring_init().
◆ padico_vio_creat()
Definition at line 1810 of file vio.c.
References done, mode, padico_vio_open(), and path.
Referenced by padico_vio_abi_init().
◆ padico_vio_dump_vfd()
| padico_rc_t padico_vio_dump_vfd | ( | int | vfd | ) |
Definition at line 221 of file vio.c.
References done, NULL, padico_vio_dumpvnode(), PADICO_VIO_MAX_DESC, rc, vio, and vnode.
Referenced by viodump_vfd_end_handler().
◆ padico_vio_fcntl()
Definition at line 877 of file vio.c.
References __attribute__, arg, done, fd, l, padico_vio_set_errno(), rc, vfd_to_vnode(), vio, VIO_DATA, vnode, vnode_get_error(), vnode_hfd_fcntl(), vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init().
◆ padico_vio_fstat()
Definition at line 1855 of file vio.c.
References padico_vnode_s::assembly_stuff, done, fd, vnode_assembly_stuff_s::instance, NULL, padico_vio_set_errno(), puk_instance_indirect_VFile(), r, rc, vfd_to_vnode(), vnode, vnode_get_error(), vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init().
◆ padico_vio_fsync()
Definition at line 937 of file vio.c.
References padico_vnode_s::assembly_stuff, done, fd, vnode_assembly_stuff_s::instance, NULL, padico_vio_set_errno(), puk_instance_indirect_VFile(), rc, vfd_to_vnode(), vnode, vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init().
◆ padico_vio_ftruncate()
Definition at line 1835 of file vio.c.
References padico_vnode_s::assembly_stuff, done, fd, vnode_assembly_stuff_s::instance, NULL, padico_vio_set_errno(), puk_instance_indirect_VFile(), r, rc, vfd_to_vnode(), vnode, vnode_get_error(), vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init().
◆ padico_vio_get_errno()
Definition at line 116 of file vio.c.
References done.
Referenced by padico_vio_readv(), and padico_vio_writev().
◆ padico_vio_getpeername()
Definition at line 1627 of file vio.c.
References padico_vnode_s::content, done, name, namelen, padico_vio_set_errno(), rc, padico_vnode_content_t::remote, padico_vnode_s::remote, vobs_attr_remote_s::remote_addr, vobs_attr_remote_s::remote_addrlen, s, padico_vnode_content_t::socket, vfd_to_vnode(), vnode, vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init(), and print_sock_info().
◆ padico_vio_getsockname()
Definition at line 1584 of file vio.c.
References padico_vnode_content_t::binding, padico_vnode_s::binding, padico_vnode_s::content, done, name, namelen, padico_vio_dumpvnode(), padico_vio_set_errno(), vobs_attr_binding_s::primary, vobs_attr_binding_s::primary_len, rc, s, padico_vnode_content_t::socket, vfd_to_vnode(), vlink_address_trace, vnode, vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init(), and print_sock_info().
◆ padico_vio_getsockopt()
Definition at line 1542 of file vio.c.
References padico_vnode_s::content, done, padico_vnode_content_t::listener, padico_vio_set_errno(), rc, s, vobs_attr_socket_s::so_type, padico_vnode_content_t::socket, padico_vnode_s::socket, vfd_to_vnode(), vnode, vnode_clear_error(), and vnode_get_error().
Referenced by padico_vio_abi_init().
◆ padico_vio_inotify_add_watch()
Definition at line 2105 of file vio.c.
References __puk_abi_wrap__errno, done, fd, vnode_hfd_s::fd, padico_vnode_s::hfd, padico_vio_set_errno(), PUK_ABI_FSYS_WRAP, rc, vfd_to_vnode(), vnode, vnode_lock(), and vnode_unlock().
◆ padico_vio_inotify_init()
Definition at line 2085 of file vio.c.
References __puk_abi_wrap__errno, component, done, fd, instance, NULL, vobs_attr_status_s::opened, padico_vio_set_errno(), PUK_ABI_FSYS_WRAP, puk_instance_indirect_VLink(), r, padico_vnode_s::status, vio_alloc_desc(), vnode, and vnode_hfd_create().
◆ padico_vio_inotify_rm_watch()
Definition at line 2123 of file vio.c.
References __puk_abi_wrap__errno, done, fd, vnode_hfd_s::fd, padico_vnode_s::hfd, padico_vio_set_errno(), PUK_ABI_FSYS_WRAP, rc, vfd_to_vnode(), vnode, vnode_lock(), and vnode_unlock().
◆ padico_vio_interrupt()
asynchronous interrupt
Definition at line 2147 of file vio.c.
References done, fd, padico_vio_set_errno(), vfd_to_vnode(), VIO_DATA, vnode, vnode_lock(), and vnode_unlock().
◆ padico_vio_ioctl()
- Warning
- only cmd=4 (GDESLIM) is supported
Definition at line 1685 of file vio.c.
References __puk_abi_wrap__errno, arg, padico_vnode_s::content, done, fd, vnode_hfd_s::fd, padico_vnode_content_t::hfd, padico_vnode_s::hfd, padico_vio_set_errno(), PUK_ABI_FSYS_WRAP, rc, request(), vfd_to_vnode(), and vnode.
Referenced by padico_vio_abi_init().
◆ padico_vio_listen()
Definition at line 1201 of file vio.c.
References padico_vnode_s::content, done, n, NULL, padico_vio_set_errno(), padico_vsock_passive_connect(), rc, s, padico_vnode_content_t::socket, vfd_to_vnode(), vnode, vnode_get_error(), vnode_lock(), and vnode_unlock().
Referenced by bench_vio_init(), data_check_init(), make_server(), padico_vio_abi_init(), token_ring_init(), and vio_ring_init().
◆ padico_vio_lseek()
Definition at line 1816 of file vio.c.
References padico_vnode_s::assembly_stuff, done, vobs_attr_status_s::end_of_file, fd, vnode_assembly_stuff_s::instance, NULL, padico_vio_set_errno(), puk_instance_indirect_VFile(), r, rc, padico_vnode_s::status, vfd_to_vnode(), vnode, vnode_get_error(), vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init().
◆ padico_vio_mmap()
Definition at line 1873 of file vio.c.
References __puk_abi_wrap__errno, padico_vnode_s::assembly_stuff, done, puk_receptacle_VFile_s::driver, fd, vnode_assembly_stuff_s::instance, len, NULL, padico_vio_set_errno(), PUK_ABI_FSYS_WRAP, puk_instance_indirect_VFile(), r, rc, vfd_to_vnode(), vnode, vnode_get_error(), vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init().
◆ padico_vio_open()
Definition at line 1749 of file vio.c.
References padico_vnode_s::assembly_stuff, assert(), component, done, instance, vnode_assembly_stuff_s::instance, mode, NULL, padico_vio_set_errno(), padico_vnode_close(), path, puk_instance_indirect_VFile(), r, rc, vio_alloc_desc(), vio_default_vfile, and vnode.
Referenced by padico_vio_abi_init(), and padico_vio_creat().
◆ padico_vio_pipe()
Definition at line 1715 of file vio.c.
References done, fd, NULL, padico_vio_set_errno(), padico_vpipe_driver_s::pipe, puk_component_get_driver_VPipe(), rc, vio_alloc_desc(), vnodes, and vpipe_driver.
Referenced by padico_vio_abi_init().
◆ padico_vio_poll()
Definition at line 615 of file vio.c.
References assert(), done, fd, NULL, padico_vio_set_errno(), rc, timeout, vnode_pollfd_from_observer(), vobs_secondary_destroy(), vobs_secondary_from_pollfd(), vobs_secondary_init(), vobs_secondary_lock(), vobs_secondary_timedwait(), vobs_secondary_unlock(), vobs_secondary_update(), and vobs_secondary_wait().
Referenced by padico_vio_abi_init().
◆ padico_vio_read()
Definition at line 282 of file vio.c.
References assert(), vobs_attr_remote_s::can_recv, vobs_attr_rbox_s::cant_interrupt_read, padico_vnode_s::content, done, vobs_attr_status_s::end_of_file, vobs_attr_remote_s::established, fd, vobs_attr_status_s::opened, padico_vio_set_errno(), padico_vnode_read_clear(), padico_vnode_read_post(), padico_vnode_s::rbox, rc, vobs_attr_rbox_s::read_done, padico_vnode_content_t::remote, padico_vnode_s::remote, padico_vnode_s::status, vfd_to_vnode(), VIO_DATA, vlink_profile_point, vlink_profile_start, vnode, vnode_lock(), vnode_unlock(), and vobs_wait().
Referenced by data_check_in(), padico_vio_abi_init(), padico_vio_readv(), padico_vio_recv(), servant_loop(), token_ring_run(), vio_test_in(), and vio_test_in().
◆ padico_vio_readv()
Definition at line 426 of file vio.c.
References current, done, i, padico_vio_get_errno(), padico_vio_read(), padico_vio_set_errno(), and rc.
Referenced by padico_vio_abi_init(), and padico_vio_recvmsg().
◆ padico_vio_recv()
Definition at line 986 of file vio.c.
References done, len, padico_vio_read(), rc, and s.
Referenced by padico_vio_abi_init().
◆ padico_vio_recvfrom()
| ssize_t padico_vio_recvfrom | ( | int | s, |
| void * | buf, | ||
| size_t | len, | ||
| int | flags, | ||
| struct sockaddr * | from, | ||
| socklen_t * | fromlen | ||
| ) |
Definition at line 1048 of file vio.c.
References done, vnode_hfd_s::fd, padico_vnode_s::hfd, len, padico_vio_set_errno(), PUK_ABI_FSYS_REAL, rc, s, vfd_to_vnode(), VIO_DATA, and vnode.
Referenced by padico_vio_abi_init(), and padico_vio_recvmsg().
◆ padico_vio_recvfrom_madio()
| ssize_t padico_vio_recvfrom_madio | ( | int | s, |
| void * | buf, | ||
| size_t | len, | ||
| int | flags, | ||
| struct sockaddr * | from, | ||
| int * | fromlen | ||
| ) |
Referenced by udp_client(), and udp_server().
◆ padico_vio_recvmsg()
Definition at line 1106 of file vio.c.
References padico_vnode_s::content, current, done, i, NULL, padico_vio_readv(), padico_vio_recvfrom(), padico_vio_set_errno(), ptr, rc, padico_vnode_content_t::remote, s, vfd_to_vnode(), and vnode.
Referenced by padico_vio_abi_init().
◆ padico_vio_select()
| int padico_vio_select | ( | int | nfds, |
| fd_set * | readfds, | ||
| fd_set * | writefds, | ||
| fd_set * | errorfds, | ||
| struct timeval * | timeout | ||
| ) |
Definition at line 778 of file vio.c.
References done, fdsets_from_vobs_secondary(), i, NULL, padico_vio_set_errno(), timeout, vobs_secondary_destroy(), vobs_secondary_from_fdsets(), vobs_secondary_init(), vobs_secondary_lock(), vobs_secondary_timedwait(), vobs_secondary_unlock(), vobs_secondary_update(), and vobs_secondary_wait().
Referenced by padico_vio_abi_init().
◆ padico_vio_send()
Definition at line 975 of file vio.c.
References done, len, padico_vio_write(), rc, and s.
Referenced by padico_vio_abi_init().
◆ padico_vio_sendmsg()
Definition at line 1070 of file vio.c.
References padico_vnode_s::content, done, i, NULL, padico_vio_sendto(), padico_vio_set_errno(), padico_vio_writev(), ptr, rc, padico_vnode_content_t::remote, s, vfd_to_vnode(), and vnode.
Referenced by padico_vio_abi_init().
◆ padico_vio_sendto()
| ssize_t padico_vio_sendto | ( | int | s, |
| const void * | buf, | ||
| size_t | len, | ||
| int | flags, | ||
| const struct sockaddr * | to, | ||
| int | tolen | ||
| ) |
Definition at line 1011 of file vio.c.
References done, len, padico_vio_set_errno(), padico_vsock_sendto(), rc, s, vfd_to_vnode(), vnode, vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init(), padico_vio_sendmsg(), udp_client(), and udp_server().
◆ padico_vio_setsockopt()
Definition at line 1449 of file vio.c.
References __puk_abi_wrap__errno, padico_vnode_s::content, done, vnode_hfd_s::fd, padico_vnode_content_t::hfd, padico_vnode_s::hfd, padico_vio_set_errno(), PUK_ABI_FSYS_WRAP, rc, s, vobs_attr_socket_s::so_options, padico_vnode_content_t::socket, padico_vnode_s::socket, vfd_to_vnode(), vnode, vobs_attr_socket, and vobs_commit().
Referenced by padico_vio_abi_init().
◆ padico_vio_shutdown()
Definition at line 1396 of file vio.c.
References vobs_attr_remote_s::can_recv, vobs_attr_remote_s::can_send, padico_vnode_s::content, done, padico_vio_set_errno(), padico_vsock_fullshutdown(), rc, padico_vnode_content_t::remote, padico_vnode_s::remote, s, padico_vnode_content_t::socket, vfd_to_vnode(), vnode, vnode_lock(), and vnode_unlock().
Referenced by padico_vio_abi_init().
◆ padico_vio_socket()
Definition at line 1156 of file vio.c.
References component, domain, done, instance, NULL, padico_vio_set_errno(), padico_vsock_create(), puk_instance_indirect_VLink(), r, rc, type, vio_alloc_desc(), vio_default_vsock, and vnode.
Referenced by bench_udp_init(), bench_vio_init(), data_check_init(), make_client(), make_server(), padico_vio_abi_init(), token_ring_init(), and vio_ring_init().
◆ padico_vio_ulimit()
Definition at line 1664 of file vio.c.
References done, PADICO_VIO_MAX_DESC, padico_vio_set_errno(), rc, and UL_GDESLIM.
◆ padico_vio_write()
Definition at line 372 of file vio.c.
References padico_vnode_s::content, done, fd, vobs_attr_status_s::opened, padico_vio_set_errno(), padico_vnode_write_clear(), padico_vnode_write_post(), rc, padico_vnode_content_t::remote, padico_vnode_s::status, vfd_to_vnode(), VIO_DATA, vlink_profile_point, vlink_profile_start, vnode, vnode_get_error(), vnode_lock(), vnode_unlock(), vobs_wait(), padico_vnode_content_t::wbox, padico_vnode_s::wbox, and vobs_attr_wbox_s::write_done.
Referenced by data_check_out(), padico_vio_abi_init(), padico_vio_send(), padico_vio_writev(), send_msg(), token_ring_run(), vio_test_out(), and vio_test_out().
◆ padico_vio_writev()
Definition at line 460 of file vio.c.
References current, done, i, padico_vio_get_errno(), padico_vio_set_errno(), padico_vio_write(), and rc.
Referenced by padico_vio_abi_init(), and padico_vio_sendmsg().