diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2005-03-24 14:04:06 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2005-03-24 14:04:06 +0000 |
commit | b832c4cf214e3932d50de622dead4133845fc47e (patch) | |
tree | 0d0fb934d925ecdd67407491e91ebd92ceb425ef /winsup/cygwin/fhandler.h | |
parent | bc47d398b27f09cbb044dc40e4e9425fb33be7a9 (diff) | |
download | cygnal-b832c4cf214e3932d50de622dead4133845fc47e.tar.gz cygnal-b832c4cf214e3932d50de622dead4133845fc47e.tar.bz2 cygnal-b832c4cf214e3932d50de622dead4133845fc47e.zip |
* fhandler.h (fhandler_socket::secret_event): Remove.
(fhandler_socket::af_local_set_secret): New function combining former
set_connect_secret and get_connect_secret into one function.
(fhandler_socket::af_local_setblocking): Rename from eid_setblocking.
(fhandler_socket::af_local_unsetblocking): Rename from
eid_unsetblocking.
(fhandler_socket::af_local_set_cred): New method.
(fhandler_socket::af_local_copy): New method.
(fhandler_socket::af_local_recv_secret): New method.
(fhandler_socket::af_local_send_secret): New method.
(fhandler_socket::af_local_recv_cred): Rename from eid_recv.
(fhandler_socket::af_local_send_cred): Rename from eid_send.
(fhandler_socket::af_local_accept): New method.
(fhandler_socket::af_local_set_sockpair_cred): Rename from
set_socketpair_eids.
(fhandler_socket::eid_accept): Remove.
(fhandler_socket::eid_connect): Remove.
(fhandler_socket::set_connect_secret): Remove.
(fhandler_socket::get_connect_secret): Remove.
(fhandler_socket::create_secret_event): Remove.
(fhandler_socket::check_peer_secret_event): Remove.
(fhandler_socket::signal_secret_event): Remove.
(fhandler_socket::close_secret_event): Remove.
(fhandler_socket::sec_event_accept): Remove.
(fhandler_socket::sec_event_connect): Remove.
* fhandler_socket.cc (secret_event_name): Remove.
(fhandler_socket::af_local_set_sockpair_cred): Rename from
set_socketpair_eids.
(fhandler_socket::af_local_setblocking): Rename from eid_setblocking.
(fhandler_socket::af_local_unsetblocking): Rename from
eid_unsetblocking.
(fhandler_socket::af_local_recv_secret): New function to receive
AF_LOCAL connect secret over socket itself.
(fhandler_socket::af_local_send_secret): New function to send AF_LOCAL
connect secret over socket itself.
(fhandler_socket::af_local_recv_cred): Rename from eid_recv.
(fhandler_socket::af_local_send_cred): Rename from eid_send.
(fhandler_socket::eid_connect): Remove.
(fhandler_socket::af_local_connect): Take over connect side handling
of AF_LOCAL secret and credential handshake.
(fhandler_socket::eid_accept): Remove.
(fhandler_socket::af_local_accept): New method, take over accept side
handling of AF_LOCAL secret and credential handshake.
(fhandler_socket::af_local_set_cred): New method, set eid credentials
to start values.
(fhandler_socket::af_local_copy): New method, copy secret and
credentials to another socket.
(fhandler_socket::af_local_set_secret): New function combining former
set_connect_secret and get_connect_secret into one function.
(fhandler_socket::create_secret_event): Remove.
(fhandler_socket::signal_secret_event): Remove.
(fhandler_socket::close_secret_event): Remove.
(fhandler_socket::check_peer_secret_event): Remove.
(fhandler_socket::sec_event_connect): Remove.
(fhandler_socket::sec_event_accept): Remove.
(fhandler_socket::fixup_after_fork): Drop secret_event handling.
(fhandler_socket::bind): Call af_local_set_secret.
(fhandler_socket::connect): Call af_local_set_cred and af_local_connect.
(fhandler_socket::listen): Call af_local_set_cred.
(fhandler_socket::accept): Call af_local_copy and af_local_accept on
accepted socket.
(fhandler_socket::close): Don't call close_secret_event.
(fhandler_socket::set_close_on_exec): Don't set secret_event
inheritance.
* net.cc (cygwin_getsockopt): Add debug output.
(socketpair): Call af_local_set_sockpair_cred instead of
set_socketpair_eids.
* select.cc (set_bits): Drop AF_LOCAL special handling in case
of except bit set.
Diffstat (limited to 'winsup/cygwin/fhandler.h')
-rw-r--r-- | winsup/cygwin/fhandler.h | 34 |
1 files changed, 13 insertions, 21 deletions
diff --git a/winsup/cygwin/fhandler.h b/winsup/cygwin/fhandler.h index 2f1424681..ee86fd497 100644 --- a/winsup/cygwin/fhandler.h +++ b/winsup/cygwin/fhandler.h @@ -362,8 +362,7 @@ class fhandler_socket: public fhandler_base private: int addr_family; int type; - int connect_secret [4]; - HANDLE secret_event; + int connect_secret[4]; pid_t sec_pid; __uid32_t sec_uid; @@ -371,14 +370,19 @@ class fhandler_socket: public fhandler_base pid_t sec_peer_pid; __uid32_t sec_peer_uid; __gid32_t sec_peer_gid; - void eid_setblocking (bool &, bool &); - void eid_unsetblocking (bool, bool); - bool eid_recv (void); - bool eid_send (void); - void eid_accept (void); - void eid_connect (void); + void af_local_set_secret (char *); + void af_local_setblocking (bool &, bool &); + void af_local_unsetblocking (bool, bool); + void af_local_set_cred (void); + void af_local_copy (fhandler_socket *); + bool af_local_recv_secret (void); + bool af_local_send_secret (void); + bool af_local_recv_cred (void); + bool af_local_send_cred (void); + int af_local_accept (void); public: - void set_socketpair_eids (void); + int af_local_connect (void); + void af_local_set_sockpair_cred (void); private: struct _WSAPROTOCOL_INFOA *prot_info_ptr; @@ -459,18 +463,6 @@ class fhandler_socket: public fhandler_base void set_sun_path (const char *path); char *get_sun_path () {return sun_path;} - private: - void set_connect_secret (); - void get_connect_secret (char*); - HANDLE create_secret_event (); - int check_peer_secret_event (struct sockaddr_in *peer); - void signal_secret_event (); - void close_secret_event (); - int sec_event_accept (int, struct sockaddr_in *); - int sec_event_connect (struct sockaddr_in *peer); - public: - int af_local_connect (void); - int __stdcall fstat (struct __stat64 *buf) __attribute__ ((regparm (2))); int __stdcall fchmod (mode_t mode) __attribute__ ((regparm (1))); int __stdcall fchown (__uid32_t uid, __gid32_t gid) __attribute__ ((regparm (2))); |