www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - [ patch] std.c.linux.linux: add waitflags and poll interfacccce

This patch adds both the proper flags for waitpid, and the proper 
structures and enums for the poll system call.


--- linux.d	2006-04-13 21:53:13.000000000 -0400
+++ linux.d.new	2006-04-13 22:20:42.000000000 -0400
   -14,6 +14,7   

  alias uint uid_t;
  alias uint gid_t;
+alias ulong nfds_t;

  enum : int
  {
   -380,3 +381,44   

      int getpwnam_r(char*, passwd*, void*, size_t, passwd**);
  }
+// flags for wait and waitpid
+// bits for the third argument of waitpid
+enum
+{
+	WNOHANG = 1,
+	WUNTRACED = 2
+}
+
+// bits for the fourth argument of waitpid
+enum
+{
+	WSTOPPED = 2,
+	WEXITED = 4,
+	WCONTINUED = 8,
+	WNOWAIT =        0x01000000,
+	__WALL = 0x40000000,
+	__WCLONE = 0x80000000 
+}
+// flags for poll()
+enum
+{
+	POLLIN = 1,
+	POLLPRI = 2,
+	POLLOUT = 4,
+	POLLERR = 8,
+	POLLHUP = 16,
+	POLLNVAL = 32,
+	POLLRDNORM = 64,
+	POLLRDBAND = 128,
+	POLLWRNORM = 256,
+	POLLWRBAND = 512,
+	POLLMSG = 1024
+}
+
+struct pollfd
+{
+	int fd;
+	short events;
+	short revents;
+}
+extern (C) int poll(pollfd*, nfds_t, int);
Apr 13 2006