You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

77 lines
2.4 KiB

  1. // Copyright 2014 The Go Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style
  3. // license that can be found in the LICENSE file.
  4. // +build ignore
  5. // +godefs map struct_in_addr [4]byte /* in_addr */
  6. package ipv4
  7. /*
  8. #include <sys/socket.h>
  9. #include <netinet/in.h>
  10. */
  11. import "C"
  12. const (
  13. sysIP_OPTIONS = C.IP_OPTIONS
  14. sysIP_HDRINCL = C.IP_HDRINCL
  15. sysIP_TOS = C.IP_TOS
  16. sysIP_TTL = C.IP_TTL
  17. sysIP_RECVOPTS = C.IP_RECVOPTS
  18. sysIP_RECVRETOPTS = C.IP_RECVRETOPTS
  19. sysIP_RECVDSTADDR = C.IP_RECVDSTADDR
  20. sysIP_RETOPTS = C.IP_RETOPTS
  21. sysIP_RECVIF = C.IP_RECVIF
  22. sysIP_STRIPHDR = C.IP_STRIPHDR
  23. sysIP_RECVTTL = C.IP_RECVTTL
  24. sysIP_BOUND_IF = C.IP_BOUND_IF
  25. sysIP_PKTINFO = C.IP_PKTINFO
  26. sysIP_RECVPKTINFO = C.IP_RECVPKTINFO
  27. sysIP_MULTICAST_IF = C.IP_MULTICAST_IF
  28. sysIP_MULTICAST_TTL = C.IP_MULTICAST_TTL
  29. sysIP_MULTICAST_LOOP = C.IP_MULTICAST_LOOP
  30. sysIP_ADD_MEMBERSHIP = C.IP_ADD_MEMBERSHIP
  31. sysIP_DROP_MEMBERSHIP = C.IP_DROP_MEMBERSHIP
  32. sysIP_MULTICAST_VIF = C.IP_MULTICAST_VIF
  33. sysIP_MULTICAST_IFINDEX = C.IP_MULTICAST_IFINDEX
  34. sysIP_ADD_SOURCE_MEMBERSHIP = C.IP_ADD_SOURCE_MEMBERSHIP
  35. sysIP_DROP_SOURCE_MEMBERSHIP = C.IP_DROP_SOURCE_MEMBERSHIP
  36. sysIP_BLOCK_SOURCE = C.IP_BLOCK_SOURCE
  37. sysIP_UNBLOCK_SOURCE = C.IP_UNBLOCK_SOURCE
  38. sysMCAST_JOIN_GROUP = C.MCAST_JOIN_GROUP
  39. sysMCAST_LEAVE_GROUP = C.MCAST_LEAVE_GROUP
  40. sysMCAST_JOIN_SOURCE_GROUP = C.MCAST_JOIN_SOURCE_GROUP
  41. sysMCAST_LEAVE_SOURCE_GROUP = C.MCAST_LEAVE_SOURCE_GROUP
  42. sysMCAST_BLOCK_SOURCE = C.MCAST_BLOCK_SOURCE
  43. sysMCAST_UNBLOCK_SOURCE = C.MCAST_UNBLOCK_SOURCE
  44. sizeofSockaddrStorage = C.sizeof_struct_sockaddr_storage
  45. sizeofSockaddrInet = C.sizeof_struct_sockaddr_in
  46. sizeofInetPktinfo = C.sizeof_struct_in_pktinfo
  47. sizeofIPMreq = C.sizeof_struct_ip_mreq
  48. sizeofIPMreqn = C.sizeof_struct_ip_mreqn
  49. sizeofIPMreqSource = C.sizeof_struct_ip_mreq_source
  50. sizeofGroupReq = C.sizeof_struct_group_req
  51. sizeofGroupSourceReq = C.sizeof_struct_group_source_req
  52. )
  53. type sockaddrStorage C.struct_sockaddr_storage
  54. type sockaddrInet C.struct_sockaddr_in
  55. type inetPktinfo C.struct_in_pktinfo
  56. type ipMreq C.struct_ip_mreq
  57. type ipMreqn C.struct_ip_mreqn
  58. type ipMreqSource C.struct_ip_mreq_source
  59. type groupReq C.struct_group_req
  60. type groupSourceReq C.struct_group_source_req