home *** CD-ROM | disk | FTP | other *** search
/ Mac Power 1999 February / MACPOWER-1999-02.ISO.7z / MACPOWER-1999-02.ISO / 9902⁄AMUG / UTILITY / mac06-0.95.sit / mac06-0.95 / usr / include / sys / sys_socket.h < prev    next >
Text File  |  1998-11-14  |  2KB  |  93 lines

  1. /* mac06ゥ1997,98 by HNS/DSITRI hns@computer.org
  2. ** socket.h
  3. **
  4. ** 02.01.1998    HNS        shutdown() added
  5. */
  6.  
  7. #pragma once
  8.  
  9. #include "netinet/in.h"
  10.  
  11. /* socket types */
  12.  
  13. #define SOCK_DGRAM    0
  14. #define SOCK_STREAM 1
  15. #define SOCK_RAW    2
  16.  
  17. /* socket levels for get/setsockopt() */
  18.  
  19. #define SOL_SOCKET    7
  20.  
  21. /* socket level options for get/setsockopt() */
  22.  
  23. #define SO_SNDBUF        0
  24. #define SO_RCVBUF        1
  25. #define SO_SNDLOWAT        2
  26. #define SO_RCVLOWAT        3
  27. #define SO_SNDTIMEO        4
  28. #define SO_RCV            5
  29. #define SO_ERROR        6
  30. #define SO_TYPE            7
  31. #define SO_PROTOTYPE    8
  32. #define SO_LINGER        9
  33. #define SO_DEBUG        10
  34. #define SO_REUSEADDR    11
  35. #define SO_KEEPALIVE    12
  36. #define SO_DONTROUTE    13
  37. #define SO_BROADCAST    14
  38. #define SO_OOBINLINE    15
  39.  
  40.  
  41. struct linger
  42.   {
  43.   int l_onoff;    /* on/off */
  44.   int l_linger;    /* time */
  45.   };
  46.  
  47. /* message options for send(), recv() */
  48.  
  49. #define MSG_OOB            1
  50. #define MSG_PEEK        2
  51. #define MSG_DONTROUTE    4
  52.  
  53. /* address families */
  54.  
  55. #define AF_INET            2
  56. #define AF_APPLETALK    16
  57.  
  58. /* protocol families */
  59.  
  60. #define PF_INET    AF_INET
  61. #define PF_APPLETALK AF_APPLETALK
  62.  
  63. /* internet protocol numbers as defined in RFC1340 */
  64.  
  65. #define IPPROTO_TCP    6
  66. #define IPPROTO_UDP    17
  67. #define IPPROTO_IP    4
  68. #define IPPROTO_ICMP 1
  69.  
  70. struct sockaddr
  71.     {
  72.     unsigned short sa_family;
  73.     char sa_data[16-sizeof(unsigned short)];    /* fill up to 16 bytes */
  74.     };
  75.  
  76. /* Funktionsheader */
  77.  
  78. int accept(int s, struct sockaddr *peer, int *peerlen);
  79. int bind(int s, struct sockaddr *addr, int addrlen);
  80. int connect(int s, struct sockaddr *peer, int peerlen);
  81. int getsockname(int s, struct sockaddr *addr, int *addrlen);
  82. int getpeername(int s, struct sockaddr *addr, int *addrlen);
  83. int getsockopt(int s, int level, int opt, void *arg, int *arglen);
  84. int setsockopt(int s, int level, int opt, void *arg, int arglen);
  85. int listen(int s, int queuelen);
  86. int recv(int s, void *bfr, int len, int flags);
  87. int recvfrom(int s, void *bfr, int len, int flags, struct sockaddr *from, int *addrlen);
  88. int send(int s, void *bfr, int len, int flags);
  89. int sendto(int s, void *bfr, int len, int flags, struct sockaddr *peer, int addrlen);
  90. int shutdown(int fd, int what);
  91. int socket(int family, int type, int proto);
  92.  
  93. /* EOF */