Subversion Repositories Kolibri OS

Rev

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_INET         = 2     ; IPv4
  15. ;AF_INET6       = 28    ; IPv6 (not supported)
  16.  
  17. PF_UNSPEC       = AF_UNSPEC
  18. PF_INET         = AF_INET
  19. ;PF_INET6       = AF_INET6
  20.  
  21. ; Flags for addrinfo
  22. AI_PASSIVE      = 1
  23. AI_CANONNAME    = 2
  24. AI_NUMERICHOST  = 4
  25. AI_NUMERICSERV  = 8
  26. AI_ADDRCONFIG   = 0x400
  27.  
  28. ; internal definition
  29. AI_SUPPORTED    = 0x40F
  30.  
  31. struct sockaddr_in
  32.         sin_len         db      ?       ; uint8_t
  33.         sin_family      db      ?       ; sa_family_t
  34.         sin_port        dw      ?       ; in_port_t
  35.         sin_addr        dd      ?       ; struct in_addr
  36.         sin_zero        rb      8       ; zero
  37. ends
  38.  
  39. struct addrinfo
  40.         ai_flags        dd      ?       ; bitmask of AI_*
  41.         ai_family       dd      ?       ; PF_*
  42.         ai_socktype     dd      ?       ; SOCK_*
  43.         ai_protocol     dd      ?       ; 0 or IPPROTO_*
  44.         ai_addrlen      dd      ?       ; length of ai_addr
  45.         ai_canonname    dd      ?       ; char*
  46.         ai_addr         dd      ?       ; struct sockaddr*
  47.         ai_next         dd      ?       ; struct addrinfo*
  48. ends
  49.  
  50. EAI_ADDRFAMILY  = 1
  51. EAI_AGAIN       = 2
  52. EAI_BADFLAGS    = 3
  53. EAI_FAIL        = 4
  54. EAI_FAMILY      = 5
  55. EAI_MEMORY      = 6
  56. EAI_NONAME      = 8
  57. EAI_SERVICE     = 9
  58. EAI_SOCKTYPE    = 10
  59. EAI_BADHINTS    = 12
  60. EAI_PROTOCOL    = 13
  61. EAI_OVERFLOW    = 14
  62.