socket.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. * This file is subject to the terms and conditions of the GNU General Public
  3. * License. See the file "COPYING" in the main directory of this archive
  4. * for more details.
  5. *
  6. * Copyright (C) 1997, 1999, 2000, 2001 Ralf Baechle
  7. * Copyright (C) 2000, 2001 Silicon Graphics, Inc.
  8. */
  9. #ifndef _ASM_SOCKET_H
  10. #define _ASM_SOCKET_H
  11. #include <uapi/asm/socket.h>
  12. /** sock_type - Socket types
  13. *
  14. * Please notice that for binary compat reasons MIPS has to
  15. * override the enum sock_type in include/linux/net.h, so
  16. * we define ARCH_HAS_SOCKET_TYPES here.
  17. *
  18. * @SOCK_DGRAM - datagram (conn.less) socket
  19. * @SOCK_STREAM - stream (connection) socket
  20. * @SOCK_RAW - raw socket
  21. * @SOCK_RDM - reliably-delivered message
  22. * @SOCK_SEQPACKET - sequential packet socket
  23. * @SOCK_PACKET - linux specific way of getting packets at the dev level.
  24. * For writing rarp and other similar things on the user level.
  25. */
  26. enum sock_type {
  27. SOCK_DGRAM = 1,
  28. SOCK_STREAM = 2,
  29. SOCK_RAW = 3,
  30. SOCK_RDM = 4,
  31. SOCK_SEQPACKET = 5,
  32. SOCK_DCCP = 6,
  33. SOCK_PACKET = 10,
  34. };
  35. #define SOCK_MAX (SOCK_PACKET + 1)
  36. /* Mask which covers at least up to SOCK_MASK-1. The
  37. * * remaining bits are used as flags. */
  38. #define SOCK_TYPE_MASK 0xf
  39. /* Flags for socket, socketpair, paccept */
  40. #define SOCK_CLOEXEC O_CLOEXEC
  41. #define SOCK_NONBLOCK O_NONBLOCK
  42. #define ARCH_HAS_SOCKET_TYPES 1
  43. #endif /* _ASM_SOCKET_H */