Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | RSS feed

  1. /* Copyright (C) 1997, 2001, 2006 Free Software Foundation, Inc.
  2.    This file is part of the GNU C Library.
  3.  
  4.    The GNU C Library is free software; you can redistribute it and/or
  5.    modify it under the terms of the GNU Lesser General Public
  6.    License as published by the Free Software Foundation; either
  7.    version 2.1 of the License, or (at your option) any later version.
  8.  
  9.    The GNU C Library is distributed in the hope that it will be useful,
  10.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12.    Lesser General Public License for more details.
  13.  
  14.    You should have received a copy of the GNU Lesser General Public
  15.    License along with the GNU C Library; if not, write to the Free
  16.    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
  17.    02111-1307 USA.  */
  18.  
  19. #ifndef _SYS_POLL_H
  20. # error "Never use <bits/poll.h> directly; include <sys/poll.h> instead."
  21. #endif
  22.  
  23. /* Event types that can be polled for.  These bits may be set in `events'
  24.    to indicate the interesting event types; they will appear in `revents'
  25.    to indicate the status of the file descriptor.  */
  26. #define POLLIN          0x001           /* There is data to read.  */
  27. #define POLLPRI         0x002           /* There is urgent data to read.  */
  28. #define POLLOUT         0x004           /* Writing now will not block.  */
  29.  
  30. #ifdef __USE_XOPEN
  31. /* These values are defined in XPG4.2.  */
  32. # define POLLRDNORM     0x040           /* Normal data may be read.  */
  33. # define POLLRDBAND     0x080           /* Priority data may be read.  */
  34. # define POLLWRNORM     0x100           /* Writing now will not block.  */
  35. # define POLLWRBAND     0x200           /* Priority data may be written.  */
  36. #endif
  37.  
  38. #ifdef __USE_GNU
  39. /* These are extensions for Linux.  */
  40. # define POLLMSG        0x400
  41. # define POLLREMOVE     0x1000
  42. # define POLLRDHUP      0x2000
  43. #endif
  44.  
  45. /* Event types always implicitly polled for.  These bits need not be set in
  46.    `events', but they will appear in `revents' to indicate the status of
  47.    the file descriptor.  */
  48. #define POLLERR         0x008           /* Error condition.  */
  49. #define POLLHUP         0x010           /* Hung up.  */
  50. #define POLLNVAL        0x020           /* Invalid polling request.  */
  51.