aboutsummaryrefslogtreecommitdiff
path: root/winsup/cygwin/fhandler.h
diff options
context:
space:
mode:
authorKen Brown <kbrown@cornell.edu>2021-05-13 18:21:53 -0400
committerKen Brown <kbrown@cornell.edu>2021-06-04 12:41:43 -0400
commit9037f01e51ab45e3b0b04b8e834a02d3ff143b55 (patch)
tree4bdc29939fc45612abd4e8ac2c22705af505cd72 /winsup/cygwin/fhandler.h
parentf95148f1560eb4e4e9bd2a3b9be1722589e4baa2 (diff)
downloadnewlib-github/topic/af_unix_mq.zip
newlib-github/topic/af_unix_mq.tar.gz
newlib-github/topic/af_unix_mq.tar.bz2
Cygwin: AF_UNIX: implement recvmsggithub/topic/af_unix_mqtopic/af_unix_mq
First cut. Not yet tested.
Diffstat (limited to 'winsup/cygwin/fhandler.h')
-rw-r--r--winsup/cygwin/fhandler.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/winsup/cygwin/fhandler.h b/winsup/cygwin/fhandler.h
index 109e73d..a361786 100644
--- a/winsup/cygwin/fhandler.h
+++ b/winsup/cygwin/fhandler.h
@@ -1102,6 +1102,8 @@ class fhandler_socket_unix : public fhandler_socket
void set_pipe_non_blocking (bool nonblocking);
int send_sock_info (bool from_bind);
void xchg_sock_info ();
+ void record_shut_info (af_unix_pkt_hdr_t *packet);
+ void process_admin_pkt (af_unix_pkt_hdr_t *packet);
int grab_admin_pkt (bool peek = true);
int recv_peer_info ();
static NTSTATUS npfs_handle (HANDLE &nph);
@@ -1164,6 +1166,9 @@ class fhandler_socket_unix : public fhandler_socket
int open (int flags, mode_t mode = 0);
int close ();
int getpeereid (pid_t *pid, uid_t *euid, gid_t *egid);
+ bool evaluate_cmsg_data (af_unix_pkt_hdr_t *packet, struct msghdr *msg,
+ bool cloexec = false);
+ int handle_partial_read (af_unix_pkt_hdr_t *packet, size_t excess);
ssize_t recvmsg (struct msghdr *msg, int flags);
ssize_t recvfrom (void *ptr, size_t len, int flags,
struct sockaddr *from, int *fromlen);