Subversion Repositories Kolibri OS

Rev

Rev 1250 | Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. ; Socket types
  2. SOCK_STREAM     = 1
  3. SOCK_DGRAM      = 2
  4. SOCK_RAW        = 3     ; not supported by the kernel
  5.  
  6. ; IP protocols
  7. IPPROTO_IP      = 0
  8. IPPROTO_ICMP    = 1     ; not supported by the kernel
  9. IPPROTO_TCP     = 6
  10. IPPROTO_UDP     = 17
  11.  
  12. ; Address families
  13. AF_UNSPEC       = 0
  14. AF_UNIX         = 1
  15. AF_INET4        = 2     ; IPv4
  16. ;AF_INET6       = 28    ; IPv6 (not supported)
  17.  
  18. PF_UNSPEC       = AF_UNSPEC
  19. PF_UNIX         = AF_UNIX
  20. PF_INET4        = AF_INET4
  21. ;PF_INET6       = AF_INET6
  22.  
  23. ; Flags for addrinfo
  24. AI_PASSIVE      = 1
  25. AI_CANONNAME    = 2
  26. AI_NUMERICHOST  = 4
  27. AI_NUMERICSERV  = 8
  28. AI_ADDRCONFIG   = 0x400
  29.  
  30. ; internal definition
  31. AI_SUPPORTED    = 0x40F
  32.  
  33. struct sockaddr_in
  34.         sin_family      dw      ?       ; sa_family_t
  35.         sin_port        dw      ?       ; in_port_t
  36.         sin_addr        dd      ?       ; struct in_addr
  37.         sin_zero        rb      8       ; zero
  38. ends
  39.  
  40. struct addrinfo
  41.         ai_flags        dd      ?       ; bitmask of AI_*
  42.         ai_family       dd      ?       ; PF_*
  43.         ai_socktype     dd      ?       ; SOCK_*
  44.         ai_protocol     dd      ?       ; 0 or IPPROTO_*
  45.         ai_addrlen      dd      ?       ; length of ai_addr
  46.         ai_canonname    dd      ?       ; char*
  47.         ai_addr         dd      ?       ; struct sockaddr*
  48.         ai_next         dd      ?       ; struct addrinfo*
  49. ends
  50.  
  51. EAI_ADDRFAMILY  = 1
  52. EAI_AGAIN       = 2
  53. EAI_BADFLAGS    = 3
  54. EAI_FAIL        = 4
  55. EAI_FAMILY      = 5
  56. EAI_MEMORY      = 6
  57. EAI_NONAME      = 8
  58. EAI_SERVICE     = 9
  59. EAI_SOCKTYPE    = 10
  60. EAI_BADHINTS    = 12
  61. EAI_PROTOCOL    = 13
  62. EAI_OVERFLOW    = 14
  63.  
  64. socket          fix 75, 0
  65. close           fix 75, 1
  66. bind            fix 75, 2
  67. listen          fix 75, 3
  68. connect         fix 75, 4
  69. accept          fix 75, 5
  70. send            fix 75, 6
  71. recv            fix 75, 7
  72.  
  73.