home *** CD-ROM | disk | FTP | other *** search
/ High Voltage Shareware / high1.zip / high1 / DIR3 / KA9Q212.ZIP / SOCKET.H < prev    next >
C/C++ Source or Header  |  1993-03-07  |  4KB  |  144 lines

  1. /****************************************************************************
  2. *    $Id: socket.h 1.3 93/03/07 16:34:01 ROOT_DOS Exp $
  3. *    24 Aug 92    1.2        GT    Add "time" port.                                *
  4. *    24 Oct 92    1.3        GT    rexec, rlogin and rsh ports.                    *
  5. ****************************************************************************/
  6.  
  7. #ifndef    _SOCKET_H
  8. #define    _SOCKET_H
  9.  
  10. #ifndef    _GLOBAL_H
  11. #include "global.h"
  12. #endif
  13.  
  14. #ifdef    ANSIPROTO
  15. #include <stdarg.h>
  16. #endif
  17.  
  18. #ifndef    _MBUF_H
  19. #include "mbuf.h"
  20. #endif
  21.  
  22. #ifndef _PROC_H
  23. #include "proc.h"
  24. #endif
  25.  
  26. #ifndef _SOCKADDR_H
  27. #include "sockaddr.h"
  28. #endif
  29.  
  30. /* Local IP wildcard address */
  31. #define    INADDR_ANY    0x0L
  32.  
  33. /* IP protocol numbers */
  34. /* now in internet.h */
  35.  
  36. /* TCP port numbers */
  37. #define    IPPORT_ECHO        7    /* Echo data port */
  38. #define    IPPORT_DISCARD    9    /* Discard data port */
  39. #define    IPPORT_FTPD        20    /* FTP Data port */
  40. #define    IPPORT_FTP        21    /* FTP Control port */
  41. #define IPPORT_TELNET    23    /* Telnet port */
  42. #define IPPORT_SMTP        25    /* Mail port */
  43. #define    IPPORT_TIME        37    /* Time port */
  44. #define    IPPORT_FINGER    79    /* Finger port */
  45. #define    IPPORT_TTYLINK    87    /* Chat port */
  46. #define IPPORT_POP        109    /* pop2 port */
  47. #define    IPPORT_NNTP        119    /* Netnews port */
  48. #define    IPPORT_REXEC    512    /* rexec        */
  49. #define    IPPORT_RLOGIN    513    /* rlogin        */
  50. #define    IPPORT_RSH        514    /* rsh            */
  51.  
  52. /* UDP port numbers */
  53. #define    IPPORT_DOMAIN    53
  54. #define    IPPORT_BOOTPS    67
  55. #define    IPPORT_BOOTPC    68
  56. #define    IPPORT_RIP    520
  57. #define    IPPORT_REMOTE    1234    /* Pulled out of the air */
  58.  
  59. #define    AF_INET        0
  60. #define    AF_AX25        1
  61. #define AF_NETROM    2
  62. #define    AF_LOCAL    3
  63.  
  64. #define    SOCK_STREAM    0
  65. #define    SOCK_DGRAM    1
  66. #define    SOCK_RAW    2
  67. #define SOCK_SEQPACKET    3
  68.  
  69. /* Socket flag values - controls newline mapping */
  70. #define    SOCK_BINARY    0    /* socket in raw (binary) mode */
  71. #define    SOCK_ASCII    1    /* socket in cooked (newline mapping) mode */
  72. #define    SOCK_QUERY    2    /* Return setting without change */
  73.  
  74. #define    EMFILE    1
  75. #define    EBADF    2
  76. #define    EINVAL    3
  77. #define    ESOCKTNOSUPPORT    4
  78. #define    EAFNOSUPPORT    5
  79. #define    EOPNOTSUPP    6
  80. #define    EFAULT        7
  81. #define    ENOTCONN    8
  82. #define    ECONNREFUSED    9
  83. #define EAFNOSUPP    10
  84. #define    EISCONN        11
  85. #define    EWOULDBLOCK    12
  86. #define    EINTR        13
  87. #define    EADDRINUSE    14
  88. #define    ENOMEM        15
  89. #define EMSGSIZE    16
  90. #define    EALARM        17
  91. #define    EABORT        18
  92.  
  93. /* In socket.c: */
  94. extern int Axi_sock;    /* Socket listening to AX25 (there can be only one) */
  95.  
  96. int accept __ARGS((int s,char *peername,int *peernamelen));
  97. int bind __ARGS((int s,char *name,int namelen));
  98. int close_s __ARGS((int s));
  99. int connect __ARGS((int s,char *peername,int peernamelen));
  100. void freesock __ARGS((struct proc *pp));
  101. int getpeername __ARGS((int s,char *peername,int *peernamelen));
  102. int getsockname __ARGS((int s,char *name,int *namelen));
  103. int listen __ARGS((int s,int backlog));
  104. int recv_mbuf __ARGS((int s,struct mbuf **bpp,int flags,char *from,int *fromlen));
  105. int send_mbuf __ARGS((int s,struct mbuf *bp,int flags,char *to,int tolen));
  106. int setflush __ARGS((int s,int c));
  107. int shutdown __ARGS((int s,int how));
  108. int socket __ARGS((int af,int type,int protocol));
  109. void sockinit __ARGS((void));
  110. int sockkick __ARGS((int s));
  111. int socklen __ARGS((int s,int rtx));
  112. struct proc *sockowner __ARGS((int s,struct proc *newowner));
  113. int usesock __ARGS((int s));
  114. int socketpair __ARGS((int af,int type,int protocol,int sv[]));
  115.  
  116. /* In sockuser.c: */
  117. void flushsocks __ARGS((void));
  118. int keywait __ARGS((char *prompt,int flush));
  119. int recv __ARGS((int s,char *buf,int len,int flags));
  120. int recvchar __ARGS((int s));
  121. int recvfrom __ARGS((int s,char *buf,int len,int flags,char *from,int *fromlen));
  122. int recvline __ARGS((int s,char *buf,unsigned len));
  123. int rrecvchar __ARGS((int s));
  124. int send __ARGS((int s,char *buf,int len,int flags));
  125. int sendto __ARGS((int s,char *buf,int len,int flags,char *to,int tolen));
  126. int seteol __ARGS((int s,char *seq));
  127. int sockmode __ARGS((int s,int mode));
  128. void tflush __ARGS((void));
  129. int tprintf __ARGS((char *fmt,...));
  130. int tputc __ARGS((char c));
  131. int tputs __ARGS((char *s));
  132. int usflush __ARGS((int s));
  133. int usprintf __ARGS((int s,char *fmt,...));
  134. int usputc __ARGS((int s,char c));
  135. int usputs __ARGS((int s,char *x));
  136. int usvprintf __ARGS((int s,char *fmt, va_list args));
  137.  
  138. /* In file sockutil.c: */
  139. char *psocket __ARGS((void *p));
  140. char *sockerr __ARGS((int s));
  141. char *sockstate __ARGS((int s));
  142.  
  143. #endif    /* _SOCKET_H */
  144.