#include <socket.h>
Inheritance diagram for os::posix::socket_lockable< T, L >:Public Types | |
| using | lockable_type = L |
| using | value_type = T |
Types & Constants | |
| enum class | type : type_t { unknown = 0 , not_set = 1 << 0 , char_device = 1 << 1 , block_device = 1 << 2 , tty = 1 << 3 , file = 1 << 4 , socket = 1 << 5 } |
| using | type_t = unsigned int |
Public Member Functions | |
Constructors & Destructor | |
| socket_lockable (class net_stack &ns, lockable_type &locker) | |
| virtual | ~socket_lockable () |
Public Member Functions | |
| virtual int | close (void) override |
| virtual class socket * | accept (sockaddr *address, socklen_t *address_len) override |
| virtual int | bind (const sockaddr *address, socklen_t address_len) override |
| virtual int | connect (const sockaddr *address, socklen_t address_len) override |
| virtual int | getpeername (sockaddr *address, socklen_t *address_len) override |
| virtual int | getsockname (sockaddr *address, socklen_t *address_len) override |
| virtual int | getsockopt (int level, int option_name, void *option_value, socklen_t *option_len) override |
| virtual int | listen (int backlog) override |
| virtual ssize_t | recv (void *buffer, size_t length, int flags) override |
| virtual ssize_t | recvfrom (void *buffer, size_t length, int flags, sockaddr *address, socklen_t *address_len) override |
| virtual ssize_t | recvmsg (msghdr *message, int flags) override |
| virtual ssize_t | send (const void *buffer, size_t length, int flags) override |
| virtual ssize_t | sendmsg (const msghdr *message, int flags) override |
| virtual ssize_t | sendto (const void *message, size_t length, int flags, const sockaddr *dest_addr, socklen_t dest_len) override |
| virtual int | setsockopt (int level, int option_name, const void *option_value, socklen_t option_len) override |
| virtual int | shutdown (int how) override |
| virtual int | sockatmark (void) override |
| value_type & | impl (void) const |
Public Member Functions | |
| class net_stack * | net_stack (void) |
Public Member Functions | |
| virtual ssize_t | read (void *buf, std::size_t nbyte) |
| virtual ssize_t | write (const void *buf, std::size_t nbyte) |
| virtual ssize_t | writev (const iovec *iov, int iovcnt) |
| int | fcntl (int cmd,...) |
| virtual int | vfcntl (int cmd, std::va_list args) |
| int | isatty (void) |
| virtual int | fstat (struct stat *buf) |
| virtual off_t | lseek (off_t offset, int whence) |
| type_t | get_type (void) const |
| file_descriptor_t | file_descriptor (void) const |
| bool | is_opened (void) |
Protected Member Functions | |
Private Member Functions | |
| void | file_descriptor (file_descriptor_t fildes) |
| void | clear_file_descriptor (void) |
| io * | alloc_file_descriptor (void) |
Definition at line 410 of file posix-io/socket.h.
| using os::posix::socket_lockable< T, L >::lockable_type = L |
Definition at line 416 of file posix-io/socket.h.
|
inherited |
| using os::posix::socket_lockable< T, L >::value_type = T |
Definition at line 415 of file posix-io/socket.h.
|
stronginherited |
| Enumerator | |
|---|---|
| unknown | |
| not_set | |
| char_device | |
| block_device | |
| tty | |
| file | |
| socket | |
Definition at line 126 of file io.h.
| os::posix::socket_lockable< T, L >::socket_lockable | ( | class net_stack & | ns, |
| lockable_type & | locker | ||
| ) |
Definition at line 598 of file posix-io/socket.h.
References os::trace::printf().
|
virtual |
Definition at line 609 of file posix-io/socket.h.
References os::trace::printf().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 629 of file posix-io/socket.h.
References os::posix::socket::accept().
|
protectedinherited |
Definition at line 189 of file io.cpp.
References os::posix::file_descriptors_manager::allocate(), os::posix::io::clear_file_descriptor(), os::posix::io_impl::do_close(), os::posix::io::impl(), and os::trace::printf().
Referenced by os::posix::socket::accept(), os::posix::socket(), os::posix::device::vopen(), and os::posix::file_system::vopen().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 639 of file posix-io/socket.h.
References os::posix::socket::bind().
|
inlineprotectedinherited |
Definition at line 446 of file io.h.
References os::posix::no_file_descriptor.
Referenced by os::posix::io::alloc_file_descriptor().
|
overridevirtual |
Reimplemented from os::posix::io.
Definition at line 620 of file posix-io/socket.h.
References os::posix::io::close().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 649 of file posix-io/socket.h.
References os::posix::socket::connect().
|
inherited |
Definition at line 363 of file io.cpp.
References os::posix::io::vfcntl().
|
inlineprotectedinherited |
|
inlineinherited |
Definition at line 452 of file io.h.
Referenced by os::posix::file_descriptors_manager::allocate(), os::posix::file_descriptors_manager::assign(), os::posix::device::vopen(), and os::posix::vopen().
|
virtualinherited |
Reimplemented in os::posix::file_lockable< T, L >.
Definition at line 416 of file io.cpp.
References os::posix::io_impl::do_fstat(), os::posix::io::impl(), and os::trace::printf().
Referenced by os::posix::file_lockable< T, L >::fstat().
|
inlineinherited |
Definition at line 434 of file io.h.
Referenced by os::posix::file_descriptors_manager::socket().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 659 of file posix-io/socket.h.
References os::posix::socket::getpeername().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 669 of file posix-io/socket.h.
References os::posix::socket::getsockname().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 679 of file posix-io/socket.h.
References os::posix::socket::getsockopt().
| socket_lockable< T, L >::value_type & os::posix::socket_lockable< T, L >::impl | ( | void | ) | const |
Definition at line 788 of file posix-io/socket.h.
|
inlineinherited |
Definition at line 458 of file io.h.
References os::posix::io_impl::do_is_opened(), and os::posix::io::impl().
|
inherited |
Definition at line 406 of file io.cpp.
References os::posix::io_impl::do_isatty(), and os::posix::io::impl().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 690 of file posix-io/socket.h.
References os::posix::socket::listen().
|
virtualinherited |
Reimplemented in os::posix::block_device_lockable< T, L >, and os::posix::file_lockable< T, L >.
Definition at line 447 of file io.cpp.
References os::posix::io_impl::do_lseek(), os::posix::io::impl(), and os::trace::printf().
Referenced by os::posix::block_device_lockable< T, L >::lseek(), and os::posix::file_lockable< T, L >::lseek().
|
inlineinherited |
Definition at line 558 of file posix-io/socket.h.
|
virtualinherited |
Reimplemented in os::posix::block_device_lockable< T, L >, and os::posix::file_lockable< T, L >.
Definition at line 217 of file io.cpp.
References os::posix::io_impl::do_read(), os::posix::io::impl(), and os::trace::printf().
Referenced by os::posix::block_device_lockable< T, L >::read(), and os::posix::file_lockable< T, L >::read().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 699 of file posix-io/socket.h.
References os::posix::socket::recv().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 708 of file posix-io/socket.h.
References os::posix::socket::recvfrom().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 719 of file posix-io/socket.h.
References os::posix::socket::recvmsg().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 728 of file posix-io/socket.h.
References os::posix::socket::send().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 737 of file posix-io/socket.h.
References os::posix::socket::sendmsg().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 747 of file posix-io/socket.h.
References os::posix::socket::sendto().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 759 of file posix-io/socket.h.
References os::posix::socket::setsockopt().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 770 of file posix-io/socket.h.
References os::posix::socket::shutdown().
|
overridevirtual |
Reimplemented from os::posix::socket.
Definition at line 779 of file posix-io/socket.h.
References os::posix::socket::sockatmark().
|
virtualinherited |
Reimplemented in os::posix::block_device_lockable< T, L >, and os::posix::file_lockable< T, L >.
Definition at line 380 of file io.cpp.
References os::posix::io_impl::do_vfcntl(), os::posix::io::impl(), and os::trace::printf().
Referenced by os::posix::io::fcntl(), os::posix::block_device_lockable< T, L >::vfcntl(), and os::posix::file_lockable< T, L >::vfcntl().
|
virtualinherited |
Reimplemented in os::posix::block_device_lockable< T, L >, and os::posix::file_lockable< T, L >.
Definition at line 268 of file io.cpp.
References os::posix::io_impl::do_write(), os::posix::io::impl(), and os::trace::printf().
Referenced by os::posix::block_device_lockable< T, L >::write(), and os::posix::file_lockable< T, L >::write().
|
virtualinherited |
Reimplemented in os::posix::block_device_lockable< T, L >, and os::posix::file_lockable< T, L >.
Definition at line 321 of file io.cpp.
References os::posix::io_impl::do_writev(), os::posix::io::impl(), and os::trace::printf().
Referenced by os::posix::block_device_lockable< T, L >::writev(), and os::posix::file_lockable< T, L >::writev().