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.

114 lines
3.5 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_in6_addr [16]byte /* in6_addr */
  6. package ipv6
  7. /*
  8. #include <sys/socket.h>
  9. #include <netinet/in.h>
  10. #include <netinet/icmp6.h>
  11. */
  12. import "C"
  13. const (
  14. sysIPV6_UNICAST_HOPS = C.IPV6_UNICAST_HOPS
  15. sysIPV6_MULTICAST_IF = C.IPV6_MULTICAST_IF
  16. sysIPV6_MULTICAST_HOPS = C.IPV6_MULTICAST_HOPS
  17. sysIPV6_MULTICAST_LOOP = C.IPV6_MULTICAST_LOOP
  18. sysIPV6_JOIN_GROUP = C.IPV6_JOIN_GROUP
  19. sysIPV6_LEAVE_GROUP = C.IPV6_LEAVE_GROUP
  20. sysIPV6_PKTINFO = C.IPV6_PKTINFO
  21. sysIPV6_HOPLIMIT = C.IPV6_HOPLIMIT
  22. sysIPV6_NEXTHOP = C.IPV6_NEXTHOP
  23. sysIPV6_HOPOPTS = C.IPV6_HOPOPTS
  24. sysIPV6_DSTOPTS = C.IPV6_DSTOPTS
  25. sysIPV6_RTHDR = C.IPV6_RTHDR
  26. sysIPV6_RTHDRDSTOPTS = C.IPV6_RTHDRDSTOPTS
  27. sysIPV6_RECVPKTINFO = C.IPV6_RECVPKTINFO
  28. sysIPV6_RECVHOPLIMIT = C.IPV6_RECVHOPLIMIT
  29. sysIPV6_RECVHOPOPTS = C.IPV6_RECVHOPOPTS
  30. sysIPV6_RECVRTHDR = C.IPV6_RECVRTHDR
  31. sysIPV6_RECVRTHDRDSTOPTS = C.IPV6_RECVRTHDRDSTOPTS
  32. sysIPV6_CHECKSUM = C.IPV6_CHECKSUM
  33. sysIPV6_RECVTCLASS = C.IPV6_RECVTCLASS
  34. sysIPV6_USE_MIN_MTU = C.IPV6_USE_MIN_MTU
  35. sysIPV6_DONTFRAG = C.IPV6_DONTFRAG
  36. sysIPV6_SEC_OPT = C.IPV6_SEC_OPT
  37. sysIPV6_SRC_PREFERENCES = C.IPV6_SRC_PREFERENCES
  38. sysIPV6_RECVPATHMTU = C.IPV6_RECVPATHMTU
  39. sysIPV6_PATHMTU = C.IPV6_PATHMTU
  40. sysIPV6_TCLASS = C.IPV6_TCLASS
  41. sysIPV6_V6ONLY = C.IPV6_V6ONLY
  42. sysIPV6_RECVDSTOPTS = C.IPV6_RECVDSTOPTS
  43. sysMCAST_JOIN_GROUP = C.MCAST_JOIN_GROUP
  44. sysMCAST_LEAVE_GROUP = C.MCAST_LEAVE_GROUP
  45. sysMCAST_BLOCK_SOURCE = C.MCAST_BLOCK_SOURCE
  46. sysMCAST_UNBLOCK_SOURCE = C.MCAST_UNBLOCK_SOURCE
  47. sysMCAST_JOIN_SOURCE_GROUP = C.MCAST_JOIN_SOURCE_GROUP
  48. sysMCAST_LEAVE_SOURCE_GROUP = C.MCAST_LEAVE_SOURCE_GROUP
  49. sysIPV6_PREFER_SRC_HOME = C.IPV6_PREFER_SRC_HOME
  50. sysIPV6_PREFER_SRC_COA = C.IPV6_PREFER_SRC_COA
  51. sysIPV6_PREFER_SRC_PUBLIC = C.IPV6_PREFER_SRC_PUBLIC
  52. sysIPV6_PREFER_SRC_TMP = C.IPV6_PREFER_SRC_TMP
  53. sysIPV6_PREFER_SRC_NONCGA = C.IPV6_PREFER_SRC_NONCGA
  54. sysIPV6_PREFER_SRC_CGA = C.IPV6_PREFER_SRC_CGA
  55. sysIPV6_PREFER_SRC_MIPMASK = C.IPV6_PREFER_SRC_MIPMASK
  56. sysIPV6_PREFER_SRC_MIPDEFAULT = C.IPV6_PREFER_SRC_MIPDEFAULT
  57. sysIPV6_PREFER_SRC_TMPMASK = C.IPV6_PREFER_SRC_TMPMASK
  58. sysIPV6_PREFER_SRC_TMPDEFAULT = C.IPV6_PREFER_SRC_TMPDEFAULT
  59. sysIPV6_PREFER_SRC_CGAMASK = C.IPV6_PREFER_SRC_CGAMASK
  60. sysIPV6_PREFER_SRC_CGADEFAULT = C.IPV6_PREFER_SRC_CGADEFAULT
  61. sysIPV6_PREFER_SRC_MASK = C.IPV6_PREFER_SRC_MASK
  62. sysIPV6_PREFER_SRC_DEFAULT = C.IPV6_PREFER_SRC_DEFAULT
  63. sysIPV6_BOUND_IF = C.IPV6_BOUND_IF
  64. sysIPV6_UNSPEC_SRC = C.IPV6_UNSPEC_SRC
  65. sysICMP6_FILTER = C.ICMP6_FILTER
  66. sizeofSockaddrStorage = C.sizeof_struct_sockaddr_storage
  67. sizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
  68. sizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
  69. sizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo
  70. sizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
  71. sizeofGroupReq = C.sizeof_struct_group_req
  72. sizeofGroupSourceReq = C.sizeof_struct_group_source_req
  73. sizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
  74. )
  75. type sockaddrStorage C.struct_sockaddr_storage
  76. type sockaddrInet6 C.struct_sockaddr_in6
  77. type inet6Pktinfo C.struct_in6_pktinfo
  78. type ipv6Mtuinfo C.struct_ip6_mtuinfo
  79. type ipv6Mreq C.struct_ipv6_mreq
  80. type groupReq C.struct_group_req
  81. type groupSourceReq C.struct_group_source_req
  82. type icmpv6Filter C.struct_icmp6_filter