summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sys/port.h
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sys/port.h')
-rw-r--r--sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sys/port.h77
1 files changed, 77 insertions, 0 deletions
diff --git a/sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sys/port.h b/sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sys/port.h
new file mode 100644
index 0000000000..a96ff627a6
--- /dev/null
+++ b/sysdeps/unix/sysv/solaris2/kopensolaris-gnu/sys/port.h
@@ -0,0 +1,77 @@
+/* Copyright (C) 2008 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by David Bartley <dtbartle@csclub.uwaterloo.ca>, 2008.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, write to the Free
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA. */
+
+#ifndef _SYS_PORT_H
+#define _SYS_PORT_H
+
+#include <sys/types.h>
+
+#define PORT_SOURCE_AIO 1
+#define PORT_SOURCE_TIMER 2
+#define PORT_SOURCE_USER 3
+#define PORT_SOURCE_FD 4
+#define PORT_SOURCE_ALERT 5
+#define PORT_SOURCE_MQ 6
+#define PORT_SOURCE_FILE 7
+
+typedef struct port_event
+ {
+ int portev_events;
+ unsigned short portev_source;
+ unsigned short portev_pad;
+ uintptr_t portev_object;
+ void *portev_user;
+ } port_event_t;
+
+typedef struct port_notify
+ {
+ int portnfy_port;
+ void *portnfy_user;
+ } port_notify_t;
+
+typedef struct file_obj
+ {
+ struct timespec fo_atime;
+ struct timespec fo_mtime;
+ struct timespec fo_ctime;
+ uintptr_t fo_pad[3];
+ char *fo_name;
+ } file_obj_t;
+
+#define PORT_ALERT_SET 0x01
+#define PORT_ALERT_UPDATE 0x02
+#define PORT_ALERT_INVALID (PORT_ALERT_SET | PORT_ALERT_UPDATE)
+
+#define FILE_ACCESS 0x00000001
+#define FILE_MODIFIED 0x00000002
+#define FILE_ATTRIB 0x00000004
+#define FILE_NOFOLLOW 0x10000000
+
+#define FILE_DELETE 0x00000010
+#define FILE_RENAME_TO 0x00000020
+#define FILE_RENAME_FROM 0x00000040
+
+#define UNMOUNTED 0x20000000
+
+#define MOUNTEDOVER 0x40000000
+
+#define FILE_EXCEPTION (UNMOUNTED | FILE_DELETE | FILE_RENAME_TO | \
+ FILE_RENAME_FROM | MOUNTEDOVER)
+
+#endif /* _SYS_PORT_H */