Commit 30df40a6 authored by Mikio Hara's avatar Mikio Hara

ipv6: rename internal types and constants generated by cgo

To match up with other packages that work with IP protocol stack.

Change-Id: I1f4eb76051964766113914c9698233022e73d5eb
Reviewed-on: https://go-review.googlesource.com/30575
Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
parent a14f429b
...@@ -20,9 +20,9 @@ func (c *dgramOpt) SetBPF(filter []bpf.RawInstruction) error { ...@@ -20,9 +20,9 @@ func (c *dgramOpt) SetBPF(filter []bpf.RawInstruction) error {
if err != nil { if err != nil {
return err return err
} }
prog := sysSockFProg{ prog := sockFProg{
Len: uint16(len(filter)), Len: uint16(len(filter)),
Filter: (*sysSockFilter)(unsafe.Pointer(&filter[0])), Filter: (*sockFilter)(unsafe.Pointer(&filter[0])),
} }
return os.NewSyscallError("setsockopt", setsockopt(s, sysSOL_SOCKET, sysSO_ATTACH_FILTER, unsafe.Pointer(&prog), uint32(unsafe.Sizeof(prog)))) return os.NewSyscallError("setsockopt", setsockopt(s, sysSOL_SOCKET, sysSO_ATTACH_FILTER, unsafe.Pointer(&prog), uint32(unsafe.Sizeof(prog))))
} }
...@@ -29,9 +29,9 @@ func marshal2292PacketInfo(b []byte, cm *ControlMessage) []byte { ...@@ -29,9 +29,9 @@ func marshal2292PacketInfo(b []byte, cm *ControlMessage) []byte {
m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0])) m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0]))
m.Level = iana.ProtocolIPv6 m.Level = iana.ProtocolIPv6
m.Type = sysIPV6_2292PKTINFO m.Type = sysIPV6_2292PKTINFO
m.SetLen(syscall.CmsgLen(sysSizeofInet6Pktinfo)) m.SetLen(syscall.CmsgLen(sizeofInet6Pktinfo))
if cm != nil { if cm != nil {
pi := (*sysInet6Pktinfo)(unsafe.Pointer(&b[syscall.CmsgLen(0)])) pi := (*inet6Pktinfo)(unsafe.Pointer(&b[syscall.CmsgLen(0)]))
if ip := cm.Src.To16(); ip != nil && ip.To4() == nil { if ip := cm.Src.To16(); ip != nil && ip.To4() == nil {
copy(pi.Addr[:], ip) copy(pi.Addr[:], ip)
} }
...@@ -39,17 +39,17 @@ func marshal2292PacketInfo(b []byte, cm *ControlMessage) []byte { ...@@ -39,17 +39,17 @@ func marshal2292PacketInfo(b []byte, cm *ControlMessage) []byte {
pi.setIfindex(cm.IfIndex) pi.setIfindex(cm.IfIndex)
} }
} }
return b[syscall.CmsgSpace(sysSizeofInet6Pktinfo):] return b[syscall.CmsgSpace(sizeofInet6Pktinfo):]
} }
func marshal2292NextHop(b []byte, cm *ControlMessage) []byte { func marshal2292NextHop(b []byte, cm *ControlMessage) []byte {
m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0])) m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0]))
m.Level = iana.ProtocolIPv6 m.Level = iana.ProtocolIPv6
m.Type = sysIPV6_2292NEXTHOP m.Type = sysIPV6_2292NEXTHOP
m.SetLen(syscall.CmsgLen(sysSizeofSockaddrInet6)) m.SetLen(syscall.CmsgLen(sizeofSockaddrInet6))
if cm != nil { if cm != nil {
sa := (*sysSockaddrInet6)(unsafe.Pointer(&b[syscall.CmsgLen(0)])) sa := (*sockaddrInet6)(unsafe.Pointer(&b[syscall.CmsgLen(0)]))
sa.setSockaddr(cm.NextHop, cm.IfIndex) sa.setSockaddr(cm.NextHop, cm.IfIndex)
} }
return b[syscall.CmsgSpace(sysSizeofSockaddrInet6):] return b[syscall.CmsgSpace(sizeofSockaddrInet6):]
} }
...@@ -49,9 +49,9 @@ func marshalPacketInfo(b []byte, cm *ControlMessage) []byte { ...@@ -49,9 +49,9 @@ func marshalPacketInfo(b []byte, cm *ControlMessage) []byte {
m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0])) m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0]))
m.Level = iana.ProtocolIPv6 m.Level = iana.ProtocolIPv6
m.Type = sysIPV6_PKTINFO m.Type = sysIPV6_PKTINFO
m.SetLen(syscall.CmsgLen(sysSizeofInet6Pktinfo)) m.SetLen(syscall.CmsgLen(sizeofInet6Pktinfo))
if cm != nil { if cm != nil {
pi := (*sysInet6Pktinfo)(unsafe.Pointer(&b[syscall.CmsgLen(0)])) pi := (*inet6Pktinfo)(unsafe.Pointer(&b[syscall.CmsgLen(0)]))
if ip := cm.Src.To16(); ip != nil && ip.To4() == nil { if ip := cm.Src.To16(); ip != nil && ip.To4() == nil {
copy(pi.Addr[:], ip) copy(pi.Addr[:], ip)
} }
...@@ -59,11 +59,11 @@ func marshalPacketInfo(b []byte, cm *ControlMessage) []byte { ...@@ -59,11 +59,11 @@ func marshalPacketInfo(b []byte, cm *ControlMessage) []byte {
pi.setIfindex(cm.IfIndex) pi.setIfindex(cm.IfIndex)
} }
} }
return b[syscall.CmsgSpace(sysSizeofInet6Pktinfo):] return b[syscall.CmsgSpace(sizeofInet6Pktinfo):]
} }
func parsePacketInfo(cm *ControlMessage, b []byte) { func parsePacketInfo(cm *ControlMessage, b []byte) {
pi := (*sysInet6Pktinfo)(unsafe.Pointer(&b[0])) pi := (*inet6Pktinfo)(unsafe.Pointer(&b[0]))
cm.Dst = pi.Addr[:] cm.Dst = pi.Addr[:]
cm.IfIndex = int(pi.Ifindex) cm.IfIndex = int(pi.Ifindex)
} }
...@@ -72,12 +72,12 @@ func marshalNextHop(b []byte, cm *ControlMessage) []byte { ...@@ -72,12 +72,12 @@ func marshalNextHop(b []byte, cm *ControlMessage) []byte {
m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0])) m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0]))
m.Level = iana.ProtocolIPv6 m.Level = iana.ProtocolIPv6
m.Type = sysIPV6_NEXTHOP m.Type = sysIPV6_NEXTHOP
m.SetLen(syscall.CmsgLen(sysSizeofSockaddrInet6)) m.SetLen(syscall.CmsgLen(sizeofSockaddrInet6))
if cm != nil { if cm != nil {
sa := (*sysSockaddrInet6)(unsafe.Pointer(&b[syscall.CmsgLen(0)])) sa := (*sockaddrInet6)(unsafe.Pointer(&b[syscall.CmsgLen(0)]))
sa.setSockaddr(cm.NextHop, cm.IfIndex) sa.setSockaddr(cm.NextHop, cm.IfIndex)
} }
return b[syscall.CmsgSpace(sysSizeofSockaddrInet6):] return b[syscall.CmsgSpace(sizeofSockaddrInet6):]
} }
func parseNextHop(cm *ControlMessage, b []byte) { func parseNextHop(cm *ControlMessage, b []byte) {
...@@ -87,12 +87,12 @@ func marshalPathMTU(b []byte, cm *ControlMessage) []byte { ...@@ -87,12 +87,12 @@ func marshalPathMTU(b []byte, cm *ControlMessage) []byte {
m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0])) m := (*syscall.Cmsghdr)(unsafe.Pointer(&b[0]))
m.Level = iana.ProtocolIPv6 m.Level = iana.ProtocolIPv6
m.Type = sysIPV6_PATHMTU m.Type = sysIPV6_PATHMTU
m.SetLen(syscall.CmsgLen(sysSizeofIPv6Mtuinfo)) m.SetLen(syscall.CmsgLen(sizeofIPv6Mtuinfo))
return b[syscall.CmsgSpace(sysSizeofIPv6Mtuinfo):] return b[syscall.CmsgSpace(sizeofIPv6Mtuinfo):]
} }
func parsePathMTU(cm *ControlMessage, b []byte) { func parsePathMTU(cm *ControlMessage, b []byte) {
mi := (*sysIPv6Mtuinfo)(unsafe.Pointer(&b[0])) mi := (*ipv6Mtuinfo)(unsafe.Pointer(&b[0]))
cm.Dst = mi.Addr.Addr[:] cm.Dst = mi.Addr.Addr[:]
cm.IfIndex = int(mi.Addr.Scope_id) cm.IfIndex = int(mi.Addr.Scope_id)
cm.MTU = int(mi.Mtu) cm.MTU = int(mi.Mtu)
......
...@@ -83,30 +83,30 @@ const ( ...@@ -83,30 +83,30 @@ const (
sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH
sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW
sysSizeofSockaddrStorage = C.sizeof_struct_sockaddr_storage sizeofSockaddrStorage = C.sizeof_struct_sockaddr_storage
sysSizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6 sizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
sysSizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo sizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
sysSizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo sizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo
sysSizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq sizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
sysSizeofGroupReq = C.sizeof_struct_group_req sizeofGroupReq = C.sizeof_struct_group_req
sysSizeofGroupSourceReq = C.sizeof_struct_group_source_req sizeofGroupSourceReq = C.sizeof_struct_group_source_req
sysSizeofICMPv6Filter = C.sizeof_struct_icmp6_filter sizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
) )
type sysSockaddrStorage C.struct_sockaddr_storage type sockaddrStorage C.struct_sockaddr_storage
type sysSockaddrInet6 C.struct_sockaddr_in6 type sockaddrInet6 C.struct_sockaddr_in6
type sysInet6Pktinfo C.struct_in6_pktinfo type inet6Pktinfo C.struct_in6_pktinfo
type sysIPv6Mtuinfo C.struct_ip6_mtuinfo type ipv6Mtuinfo C.struct_ip6_mtuinfo
type sysIPv6Mreq C.struct_ipv6_mreq type ipv6Mreq C.struct_ipv6_mreq
type sysICMPv6Filter C.struct_icmp6_filter type icmpv6Filter C.struct_icmp6_filter
type sysGroupReq C.struct_group_req type groupReq C.struct_group_req
type sysGroupSourceReq C.struct_group_source_req type groupSourceReq C.struct_group_source_req
...@@ -64,21 +64,21 @@ const ( ...@@ -64,21 +64,21 @@ const (
sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH
sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW
sysSizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6 sizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
sysSizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo sizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
sysSizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo sizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo
sysSizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq sizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
sysSizeofICMPv6Filter = C.sizeof_struct_icmp6_filter sizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
) )
type sysSockaddrInet6 C.struct_sockaddr_in6 type sockaddrInet6 C.struct_sockaddr_in6
type sysInet6Pktinfo C.struct_in6_pktinfo type inet6Pktinfo C.struct_in6_pktinfo
type sysIPv6Mtuinfo C.struct_ip6_mtuinfo type ipv6Mtuinfo C.struct_ip6_mtuinfo
type sysIPv6Mreq C.struct_ipv6_mreq type ipv6Mreq C.struct_ipv6_mreq
type sysICMPv6Filter C.struct_icmp6_filter type icmpv6Filter C.struct_icmp6_filter
...@@ -76,30 +76,30 @@ const ( ...@@ -76,30 +76,30 @@ const (
sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH
sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW
sysSizeofSockaddrStorage = C.sizeof_struct_sockaddr_storage sizeofSockaddrStorage = C.sizeof_struct_sockaddr_storage
sysSizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6 sizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
sysSizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo sizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
sysSizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo sizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo
sysSizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq sizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
sysSizeofGroupReq = C.sizeof_struct_group_req sizeofGroupReq = C.sizeof_struct_group_req
sysSizeofGroupSourceReq = C.sizeof_struct_group_source_req sizeofGroupSourceReq = C.sizeof_struct_group_source_req
sysSizeofICMPv6Filter = C.sizeof_struct_icmp6_filter sizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
) )
type sysSockaddrStorage C.struct_sockaddr_storage type sockaddrStorage C.struct_sockaddr_storage
type sysSockaddrInet6 C.struct_sockaddr_in6 type sockaddrInet6 C.struct_sockaddr_in6
type sysInet6Pktinfo C.struct_in6_pktinfo type inet6Pktinfo C.struct_in6_pktinfo
type sysIPv6Mtuinfo C.struct_ip6_mtuinfo type ipv6Mtuinfo C.struct_ip6_mtuinfo
type sysIPv6Mreq C.struct_ipv6_mreq type ipv6Mreq C.struct_ipv6_mreq
type sysGroupReq C.struct_group_req type groupReq C.struct_group_req
type sysGroupSourceReq C.struct_group_source_req type groupSourceReq C.struct_group_source_req
type sysICMPv6Filter C.struct_icmp6_filter type icmpv6Filter C.struct_icmp6_filter
...@@ -109,37 +109,37 @@ const ( ...@@ -109,37 +109,37 @@ const (
sysSOL_SOCKET = C.SOL_SOCKET sysSOL_SOCKET = C.SOL_SOCKET
sysSO_ATTACH_FILTER = C.SO_ATTACH_FILTER sysSO_ATTACH_FILTER = C.SO_ATTACH_FILTER
sysSizeofKernelSockaddrStorage = C.sizeof_struct___kernel_sockaddr_storage sizeofKernelSockaddrStorage = C.sizeof_struct___kernel_sockaddr_storage
sysSizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6 sizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
sysSizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo sizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
sysSizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo sizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo
sysSizeofIPv6FlowlabelReq = C.sizeof_struct_in6_flowlabel_req sizeofIPv6FlowlabelReq = C.sizeof_struct_in6_flowlabel_req
sysSizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq sizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
sysSizeofGroupReq = C.sizeof_struct_group_req sizeofGroupReq = C.sizeof_struct_group_req
sysSizeofGroupSourceReq = C.sizeof_struct_group_source_req sizeofGroupSourceReq = C.sizeof_struct_group_source_req
sysSizeofICMPv6Filter = C.sizeof_struct_icmp6_filter sizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
) )
type sysKernelSockaddrStorage C.struct___kernel_sockaddr_storage type kernelSockaddrStorage C.struct___kernel_sockaddr_storage
type sysSockaddrInet6 C.struct_sockaddr_in6 type sockaddrInet6 C.struct_sockaddr_in6
type sysInet6Pktinfo C.struct_in6_pktinfo type inet6Pktinfo C.struct_in6_pktinfo
type sysIPv6Mtuinfo C.struct_ip6_mtuinfo type ipv6Mtuinfo C.struct_ip6_mtuinfo
type sysIPv6FlowlabelReq C.struct_in6_flowlabel_req type ipv6FlowlabelReq C.struct_in6_flowlabel_req
type sysIPv6Mreq C.struct_ipv6_mreq type ipv6Mreq C.struct_ipv6_mreq
type sysGroupReq C.struct_group_req type groupReq C.struct_group_req
type sysGroupSourceReq C.struct_group_source_req type groupSourceReq C.struct_group_source_req
type sysICMPv6Filter C.struct_icmp6_filter type icmpv6Filter C.struct_icmp6_filter
type sysSockFProg C.struct_sock_fprog type sockFProg C.struct_sock_fprog
type sysSockFilter C.struct_sock_filter type sockFilter C.struct_sock_filter
...@@ -60,21 +60,21 @@ const ( ...@@ -60,21 +60,21 @@ const (
sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH
sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW
sysSizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6 sizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
sysSizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo sizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
sysSizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo sizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo
sysSizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq sizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
sysSizeofICMPv6Filter = C.sizeof_struct_icmp6_filter sizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
) )
type sysSockaddrInet6 C.struct_sockaddr_in6 type sockaddrInet6 C.struct_sockaddr_in6
type sysInet6Pktinfo C.struct_in6_pktinfo type inet6Pktinfo C.struct_in6_pktinfo
type sysIPv6Mtuinfo C.struct_ip6_mtuinfo type ipv6Mtuinfo C.struct_ip6_mtuinfo
type sysIPv6Mreq C.struct_ipv6_mreq type ipv6Mreq C.struct_ipv6_mreq
type sysICMPv6Filter C.struct_icmp6_filter type icmpv6Filter C.struct_icmp6_filter
...@@ -69,21 +69,21 @@ const ( ...@@ -69,21 +69,21 @@ const (
sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH sysIPV6_PORTRANGE_HIGH = C.IPV6_PORTRANGE_HIGH
sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW sysIPV6_PORTRANGE_LOW = C.IPV6_PORTRANGE_LOW
sysSizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6 sizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
sysSizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo sizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
sysSizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo sizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo
sysSizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq sizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
sysSizeofICMPv6Filter = C.sizeof_struct_icmp6_filter sizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
) )
type sysSockaddrInet6 C.struct_sockaddr_in6 type sockaddrInet6 C.struct_sockaddr_in6
type sysInet6Pktinfo C.struct_in6_pktinfo type inet6Pktinfo C.struct_in6_pktinfo
type sysIPv6Mtuinfo C.struct_ip6_mtuinfo type ipv6Mtuinfo C.struct_ip6_mtuinfo
type sysIPv6Mreq C.struct_ipv6_mreq type ipv6Mreq C.struct_ipv6_mreq
type sysICMPv6Filter C.struct_icmp6_filter type icmpv6Filter C.struct_icmp6_filter
...@@ -85,30 +85,30 @@ const ( ...@@ -85,30 +85,30 @@ const (
sysICMP6_FILTER = C.ICMP6_FILTER sysICMP6_FILTER = C.ICMP6_FILTER
sysSizeofSockaddrStorage = C.sizeof_struct_sockaddr_storage sizeofSockaddrStorage = C.sizeof_struct_sockaddr_storage
sysSizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6 sizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
sysSizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo sizeofInet6Pktinfo = C.sizeof_struct_in6_pktinfo
sysSizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo sizeofIPv6Mtuinfo = C.sizeof_struct_ip6_mtuinfo
sysSizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq sizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
sysSizeofGroupReq = C.sizeof_struct_group_req sizeofGroupReq = C.sizeof_struct_group_req
sysSizeofGroupSourceReq = C.sizeof_struct_group_source_req sizeofGroupSourceReq = C.sizeof_struct_group_source_req
sysSizeofICMPv6Filter = C.sizeof_struct_icmp6_filter sizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
) )
type sysSockaddrStorage C.struct_sockaddr_storage type sockaddrStorage C.struct_sockaddr_storage
type sysSockaddrInet6 C.struct_sockaddr_in6 type sockaddrInet6 C.struct_sockaddr_in6
type sysInet6Pktinfo C.struct_in6_pktinfo type inet6Pktinfo C.struct_in6_pktinfo
type sysIPv6Mtuinfo C.struct_ip6_mtuinfo type ipv6Mtuinfo C.struct_ip6_mtuinfo
type sysIPv6Mreq C.struct_ipv6_mreq type ipv6Mreq C.struct_ipv6_mreq
type sysGroupReq C.struct_group_req type groupReq C.struct_group_req
type sysGroupSourceReq C.struct_group_source_req type groupSourceReq C.struct_group_source_req
type sysICMPv6Filter C.struct_icmp6_filter type icmpv6Filter C.struct_icmp6_filter
...@@ -31,7 +31,7 @@ func (typ ICMPType) Protocol() int { ...@@ -31,7 +31,7 @@ func (typ ICMPType) Protocol() int {
// packets not explicitly addressed to itself, and a host means a node // packets not explicitly addressed to itself, and a host means a node
// that is not a router. // that is not a router.
type ICMPFilter struct { type ICMPFilter struct {
sysICMPv6Filter icmpv6Filter
} }
// Accept accepts incoming ICMP packets including the type field value // Accept accepts incoming ICMP packets including the type field value
......
...@@ -6,15 +6,15 @@ ...@@ -6,15 +6,15 @@
package ipv6 package ipv6
func (f *sysICMPv6Filter) accept(typ ICMPType) { func (f *icmpv6Filter) accept(typ ICMPType) {
f.Filt[typ>>5] |= 1 << (uint32(typ) & 31) f.Filt[typ>>5] |= 1 << (uint32(typ) & 31)
} }
func (f *sysICMPv6Filter) block(typ ICMPType) { func (f *icmpv6Filter) block(typ ICMPType) {
f.Filt[typ>>5] &^= 1 << (uint32(typ) & 31) f.Filt[typ>>5] &^= 1 << (uint32(typ) & 31)
} }
func (f *sysICMPv6Filter) setAll(block bool) { func (f *icmpv6Filter) setAll(block bool) {
for i := range f.Filt { for i := range f.Filt {
if block { if block {
f.Filt[i] = 0 f.Filt[i] = 0
...@@ -24,6 +24,6 @@ func (f *sysICMPv6Filter) setAll(block bool) { ...@@ -24,6 +24,6 @@ func (f *sysICMPv6Filter) setAll(block bool) {
} }
} }
func (f *sysICMPv6Filter) willBlock(typ ICMPType) bool { func (f *icmpv6Filter) willBlock(typ ICMPType) bool {
return f.Filt[typ>>5]&(1<<(uint32(typ)&31)) == 0 return f.Filt[typ>>5]&(1<<(uint32(typ)&31)) == 0
} }
...@@ -4,15 +4,15 @@ ...@@ -4,15 +4,15 @@
package ipv6 package ipv6
func (f *sysICMPv6Filter) accept(typ ICMPType) { func (f *icmpv6Filter) accept(typ ICMPType) {
f.Data[typ>>5] &^= 1 << (uint32(typ) & 31) f.Data[typ>>5] &^= 1 << (uint32(typ) & 31)
} }
func (f *sysICMPv6Filter) block(typ ICMPType) { func (f *icmpv6Filter) block(typ ICMPType) {
f.Data[typ>>5] |= 1 << (uint32(typ) & 31) f.Data[typ>>5] |= 1 << (uint32(typ) & 31)
} }
func (f *sysICMPv6Filter) setAll(block bool) { func (f *icmpv6Filter) setAll(block bool) {
for i := range f.Data { for i := range f.Data {
if block { if block {
f.Data[i] = 1<<32 - 1 f.Data[i] = 1<<32 - 1
...@@ -22,6 +22,6 @@ func (f *sysICMPv6Filter) setAll(block bool) { ...@@ -22,6 +22,6 @@ func (f *sysICMPv6Filter) setAll(block bool) {
} }
} }
func (f *sysICMPv6Filter) willBlock(typ ICMPType) bool { func (f *icmpv6Filter) willBlock(typ ICMPType) bool {
return f.Data[typ>>5]&(1<<(uint32(typ)&31)) != 0 return f.Data[typ>>5]&(1<<(uint32(typ)&31)) != 0
} }
...@@ -6,15 +6,15 @@ ...@@ -6,15 +6,15 @@
package ipv6 package ipv6
func (f *sysICMPv6Filter) accept(typ ICMPType) { func (f *icmpv6Filter) accept(typ ICMPType) {
f.X__icmp6_filt[typ>>5] |= 1 << (uint32(typ) & 31) f.X__icmp6_filt[typ>>5] |= 1 << (uint32(typ) & 31)
} }
func (f *sysICMPv6Filter) block(typ ICMPType) { func (f *icmpv6Filter) block(typ ICMPType) {
f.X__icmp6_filt[typ>>5] &^= 1 << (uint32(typ) & 31) f.X__icmp6_filt[typ>>5] &^= 1 << (uint32(typ) & 31)
} }
func (f *sysICMPv6Filter) setAll(block bool) { func (f *icmpv6Filter) setAll(block bool) {
for i := range f.X__icmp6_filt { for i := range f.X__icmp6_filt {
if block { if block {
f.X__icmp6_filt[i] = 0 f.X__icmp6_filt[i] = 0
...@@ -24,6 +24,6 @@ func (f *sysICMPv6Filter) setAll(block bool) { ...@@ -24,6 +24,6 @@ func (f *sysICMPv6Filter) setAll(block bool) {
} }
} }
func (f *sysICMPv6Filter) willBlock(typ ICMPType) bool { func (f *icmpv6Filter) willBlock(typ ICMPType) bool {
return f.X__icmp6_filt[typ>>5]&(1<<(uint32(typ)&31)) == 0 return f.X__icmp6_filt[typ>>5]&(1<<(uint32(typ)&31)) == 0
} }
...@@ -6,18 +6,18 @@ ...@@ -6,18 +6,18 @@
package ipv6 package ipv6
type sysICMPv6Filter struct { type icmpv6Filter struct {
} }
func (f *sysICMPv6Filter) accept(typ ICMPType) { func (f *icmpv6Filter) accept(typ ICMPType) {
} }
func (f *sysICMPv6Filter) block(typ ICMPType) { func (f *icmpv6Filter) block(typ ICMPType) {
} }
func (f *sysICMPv6Filter) setAll(block bool) { func (f *icmpv6Filter) setAll(block bool) {
} }
func (f *sysICMPv6Filter) willBlock(typ ICMPType) bool { func (f *icmpv6Filter) willBlock(typ ICMPType) bool {
return false return false
} }
...@@ -4,19 +4,19 @@ ...@@ -4,19 +4,19 @@
package ipv6 package ipv6
func (f *sysICMPv6Filter) accept(typ ICMPType) { func (f *icmpv6Filter) accept(typ ICMPType) {
// TODO(mikio): implement this // TODO(mikio): implement this
} }
func (f *sysICMPv6Filter) block(typ ICMPType) { func (f *icmpv6Filter) block(typ ICMPType) {
// TODO(mikio): implement this // TODO(mikio): implement this
} }
func (f *sysICMPv6Filter) setAll(block bool) { func (f *icmpv6Filter) setAll(block bool) {
// TODO(mikio): implement this // TODO(mikio): implement this
} }
func (f *sysICMPv6Filter) willBlock(typ ICMPType) bool { func (f *icmpv6Filter) willBlock(typ ICMPType) bool {
// TODO(mikio): implement this // TODO(mikio): implement this
return false return false
} }
...@@ -13,10 +13,10 @@ import ( ...@@ -13,10 +13,10 @@ import (
) )
func setsockoptIPMreq(s uintptr, opt *sockOpt, ifi *net.Interface, grp net.IP) error { func setsockoptIPMreq(s uintptr, opt *sockOpt, ifi *net.Interface, grp net.IP) error {
var mreq sysIPv6Mreq var mreq ipv6Mreq
copy(mreq.Multiaddr[:], grp) copy(mreq.Multiaddr[:], grp)
if ifi != nil { if ifi != nil {
mreq.setIfindex(ifi.Index) mreq.setIfindex(ifi.Index)
} }
return os.NewSyscallError("setsockopt", setsockopt(s, opt.level, opt.name, unsafe.Pointer(&mreq), sysSizeofIPv6Mreq)) return os.NewSyscallError("setsockopt", setsockopt(s, opt.level, opt.name, unsafe.Pointer(&mreq), sizeofIPv6Mreq))
} }
...@@ -67,8 +67,8 @@ func getICMPFilter(s uintptr, opt *sockOpt) (*ICMPFilter, error) { ...@@ -67,8 +67,8 @@ func getICMPFilter(s uintptr, opt *sockOpt) (*ICMPFilter, error) {
return nil, errOpNoSupport return nil, errOpNoSupport
} }
var f ICMPFilter var f ICMPFilter
l := uint32(sysSizeofICMPv6Filter) l := uint32(sizeofICMPv6Filter)
if err := getsockopt(s, opt.level, opt.name, unsafe.Pointer(&f.sysICMPv6Filter), &l); err != nil { if err := getsockopt(s, opt.level, opt.name, unsafe.Pointer(&f.icmpv6Filter), &l); err != nil {
return nil, os.NewSyscallError("getsockopt", err) return nil, os.NewSyscallError("getsockopt", err)
} }
return &f, nil return &f, nil
...@@ -78,15 +78,15 @@ func setICMPFilter(s uintptr, opt *sockOpt, f *ICMPFilter) error { ...@@ -78,15 +78,15 @@ func setICMPFilter(s uintptr, opt *sockOpt, f *ICMPFilter) error {
if opt.name < 1 || opt.typ != ssoTypeICMPFilter { if opt.name < 1 || opt.typ != ssoTypeICMPFilter {
return errOpNoSupport return errOpNoSupport
} }
return os.NewSyscallError("setsockopt", setsockopt(s, opt.level, opt.name, unsafe.Pointer(&f.sysICMPv6Filter), sysSizeofICMPv6Filter)) return os.NewSyscallError("setsockopt", setsockopt(s, opt.level, opt.name, unsafe.Pointer(&f.icmpv6Filter), sizeofICMPv6Filter))
} }
func getMTUInfo(s uintptr, opt *sockOpt) (*net.Interface, int, error) { func getMTUInfo(s uintptr, opt *sockOpt) (*net.Interface, int, error) {
if opt.name < 1 || opt.typ != ssoTypeMTUInfo { if opt.name < 1 || opt.typ != ssoTypeMTUInfo {
return nil, 0, errOpNoSupport return nil, 0, errOpNoSupport
} }
var mi sysIPv6Mtuinfo var mi ipv6Mtuinfo
l := uint32(sysSizeofIPv6Mtuinfo) l := uint32(sizeofIPv6Mtuinfo)
if err := getsockopt(s, opt.level, opt.name, unsafe.Pointer(&mi), &l); err != nil { if err := getsockopt(s, opt.level, opt.name, unsafe.Pointer(&mi), &l); err != nil {
return nil, 0, os.NewSyscallError("getsockopt", err) return nil, 0, os.NewSyscallError("getsockopt", err)
} }
......
...@@ -15,7 +15,7 @@ import ( ...@@ -15,7 +15,7 @@ import (
var freebsd32o64 bool var freebsd32o64 bool
func setsockoptGroupReq(s uintptr, opt *sockOpt, ifi *net.Interface, grp net.IP) error { func setsockoptGroupReq(s uintptr, opt *sockOpt, ifi *net.Interface, grp net.IP) error {
var gr sysGroupReq var gr groupReq
if ifi != nil { if ifi != nil {
gr.Interface = uint32(ifi.Index) gr.Interface = uint32(ifi.Index)
} }
...@@ -23,21 +23,21 @@ func setsockoptGroupReq(s uintptr, opt *sockOpt, ifi *net.Interface, grp net.IP) ...@@ -23,21 +23,21 @@ func setsockoptGroupReq(s uintptr, opt *sockOpt, ifi *net.Interface, grp net.IP)
var p unsafe.Pointer var p unsafe.Pointer
var l uint32 var l uint32
if freebsd32o64 { if freebsd32o64 {
var d [sysSizeofGroupReq + 4]byte var d [sizeofGroupReq + 4]byte
s := (*[sysSizeofGroupReq]byte)(unsafe.Pointer(&gr)) s := (*[sizeofGroupReq]byte)(unsafe.Pointer(&gr))
copy(d[:4], s[:4]) copy(d[:4], s[:4])
copy(d[8:], s[4:]) copy(d[8:], s[4:])
p = unsafe.Pointer(&d[0]) p = unsafe.Pointer(&d[0])
l = sysSizeofGroupReq + 4 l = sizeofGroupReq + 4
} else { } else {
p = unsafe.Pointer(&gr) p = unsafe.Pointer(&gr)
l = sysSizeofGroupReq l = sizeofGroupReq
} }
return os.NewSyscallError("setsockopt", setsockopt(s, opt.level, opt.name, p, l)) return os.NewSyscallError("setsockopt", setsockopt(s, opt.level, opt.name, p, l))
} }
func setsockoptGroupSourceReq(s uintptr, opt *sockOpt, ifi *net.Interface, grp, src net.IP) error { func setsockoptGroupSourceReq(s uintptr, opt *sockOpt, ifi *net.Interface, grp, src net.IP) error {
var gsr sysGroupSourceReq var gsr groupSourceReq
if ifi != nil { if ifi != nil {
gsr.Interface = uint32(ifi.Index) gsr.Interface = uint32(ifi.Index)
} }
...@@ -45,15 +45,15 @@ func setsockoptGroupSourceReq(s uintptr, opt *sockOpt, ifi *net.Interface, grp, ...@@ -45,15 +45,15 @@ func setsockoptGroupSourceReq(s uintptr, opt *sockOpt, ifi *net.Interface, grp,
var p unsafe.Pointer var p unsafe.Pointer
var l uint32 var l uint32
if freebsd32o64 { if freebsd32o64 {
var d [sysSizeofGroupSourceReq + 4]byte var d [sizeofGroupSourceReq + 4]byte
s := (*[sysSizeofGroupSourceReq]byte)(unsafe.Pointer(&gsr)) s := (*[sizeofGroupSourceReq]byte)(unsafe.Pointer(&gsr))
copy(d[:4], s[:4]) copy(d[:4], s[:4])
copy(d[8:], s[4:]) copy(d[8:], s[4:])
p = unsafe.Pointer(&d[0]) p = unsafe.Pointer(&d[0])
l = sysSizeofGroupSourceReq + 4 l = sizeofGroupSourceReq + 4
} else { } else {
p = unsafe.Pointer(&gsr) p = unsafe.Pointer(&gsr)
l = sysSizeofGroupSourceReq l = sizeofGroupSourceReq
} }
return os.NewSyscallError("setsockopt", setsockopt(s, opt.level, opt.name, p, l)) return os.NewSyscallError("setsockopt", setsockopt(s, opt.level, opt.name, p, l))
} }
...@@ -17,9 +17,9 @@ var ( ...@@ -17,9 +17,9 @@ var (
ctlOpts = [ctlMax]ctlOpt{ ctlOpts = [ctlMax]ctlOpt{
ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
ctlPacketInfo: {sysIPV6_PKTINFO, sysSizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
ctlNextHop: {sysIPV6_NEXTHOP, sysSizeofSockaddrInet6, marshalNextHop, parseNextHop}, ctlNextHop: {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
ctlPathMTU: {sysIPV6_PATHMTU, sysSizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
} }
sockOpts = [ssoMax]sockOpt{ sockOpts = [ssoMax]sockOpt{
...@@ -40,17 +40,17 @@ var ( ...@@ -40,17 +40,17 @@ var (
} }
) )
func (sa *sysSockaddrInet6) setSockaddr(ip net.IP, i int) { func (sa *sockaddrInet6) setSockaddr(ip net.IP, i int) {
sa.Len = sysSizeofSockaddrInet6 sa.Len = sizeofSockaddrInet6
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], ip) copy(sa.Addr[:], ip)
sa.Scope_id = uint32(i) sa.Scope_id = uint32(i)
} }
func (pi *sysInet6Pktinfo) setIfindex(i int) { func (pi *inet6Pktinfo) setIfindex(i int) {
pi.Ifindex = uint32(i) pi.Ifindex = uint32(i)
} }
func (mreq *sysIPv6Mreq) setIfindex(i int) { func (mreq *ipv6Mreq) setIfindex(i int) {
mreq.Interface = uint32(i) mreq.Interface = uint32(i)
} }
...@@ -17,7 +17,7 @@ import ( ...@@ -17,7 +17,7 @@ import (
var ( var (
ctlOpts = [ctlMax]ctlOpt{ ctlOpts = [ctlMax]ctlOpt{
ctlHopLimit: {sysIPV6_2292HOPLIMIT, 4, marshal2292HopLimit, parseHopLimit}, ctlHopLimit: {sysIPV6_2292HOPLIMIT, 4, marshal2292HopLimit, parseHopLimit},
ctlPacketInfo: {sysIPV6_2292PKTINFO, sysSizeofInet6Pktinfo, marshal2292PacketInfo, parsePacketInfo}, ctlPacketInfo: {sysIPV6_2292PKTINFO, sizeofInet6Pktinfo, marshal2292PacketInfo, parsePacketInfo},
} }
sockOpts = [ssoMax]sockOpt{ sockOpts = [ssoMax]sockOpt{
...@@ -54,9 +54,9 @@ func init() { ...@@ -54,9 +54,9 @@ func init() {
} }
ctlOpts[ctlTrafficClass] = ctlOpt{sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass} ctlOpts[ctlTrafficClass] = ctlOpt{sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}
ctlOpts[ctlHopLimit] = ctlOpt{sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit} ctlOpts[ctlHopLimit] = ctlOpt{sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}
ctlOpts[ctlPacketInfo] = ctlOpt{sysIPV6_PKTINFO, sysSizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo} ctlOpts[ctlPacketInfo] = ctlOpt{sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}
ctlOpts[ctlNextHop] = ctlOpt{sysIPV6_NEXTHOP, sysSizeofSockaddrInet6, marshalNextHop, parseNextHop} ctlOpts[ctlNextHop] = ctlOpt{sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}
ctlOpts[ctlPathMTU] = ctlOpt{sysIPV6_PATHMTU, sysSizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU} ctlOpts[ctlPathMTU] = ctlOpt{sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}
sockOpts[ssoTrafficClass] = sockOpt{iana.ProtocolIPv6, sysIPV6_TCLASS, ssoTypeInt} sockOpts[ssoTrafficClass] = sockOpt{iana.ProtocolIPv6, sysIPV6_TCLASS, ssoTypeInt}
sockOpts[ssoReceiveTrafficClass] = sockOpt{iana.ProtocolIPv6, sysIPV6_RECVTCLASS, ssoTypeInt} sockOpts[ssoReceiveTrafficClass] = sockOpt{iana.ProtocolIPv6, sysIPV6_RECVTCLASS, ssoTypeInt}
sockOpts[ssoReceiveHopLimit] = sockOpt{iana.ProtocolIPv6, sysIPV6_RECVHOPLIMIT, ssoTypeInt} sockOpts[ssoReceiveHopLimit] = sockOpt{iana.ProtocolIPv6, sysIPV6_RECVHOPLIMIT, ssoTypeInt}
...@@ -71,35 +71,35 @@ func init() { ...@@ -71,35 +71,35 @@ func init() {
sockOpts[ssoUnblockSourceGroup] = sockOpt{iana.ProtocolIPv6, sysMCAST_UNBLOCK_SOURCE, ssoTypeGroupSourceReq} sockOpts[ssoUnblockSourceGroup] = sockOpt{iana.ProtocolIPv6, sysMCAST_UNBLOCK_SOURCE, ssoTypeGroupSourceReq}
} }
func (sa *sysSockaddrInet6) setSockaddr(ip net.IP, i int) { func (sa *sockaddrInet6) setSockaddr(ip net.IP, i int) {
sa.Len = sysSizeofSockaddrInet6 sa.Len = sizeofSockaddrInet6
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], ip) copy(sa.Addr[:], ip)
sa.Scope_id = uint32(i) sa.Scope_id = uint32(i)
} }
func (pi *sysInet6Pktinfo) setIfindex(i int) { func (pi *inet6Pktinfo) setIfindex(i int) {
pi.Ifindex = uint32(i) pi.Ifindex = uint32(i)
} }
func (mreq *sysIPv6Mreq) setIfindex(i int) { func (mreq *ipv6Mreq) setIfindex(i int) {
mreq.Interface = uint32(i) mreq.Interface = uint32(i)
} }
func (gr *sysGroupReq) setGroup(grp net.IP) { func (gr *groupReq) setGroup(grp net.IP) {
sa := (*sysSockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gr)) + 4)) sa := (*sockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gr)) + 4))
sa.Len = sysSizeofSockaddrInet6 sa.Len = sizeofSockaddrInet6
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], grp) copy(sa.Addr[:], grp)
} }
func (gsr *sysGroupSourceReq) setSourceGroup(grp, src net.IP) { func (gsr *groupSourceReq) setSourceGroup(grp, src net.IP) {
sa := (*sysSockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gsr)) + 4)) sa := (*sockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gsr)) + 4))
sa.Len = sysSizeofSockaddrInet6 sa.Len = sizeofSockaddrInet6
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], grp) copy(sa.Addr[:], grp)
sa = (*sysSockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gsr)) + 132)) sa = (*sockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gsr)) + 132))
sa.Len = sysSizeofSockaddrInet6 sa.Len = sizeofSockaddrInet6
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], src) copy(sa.Addr[:], src)
} }
...@@ -18,9 +18,9 @@ var ( ...@@ -18,9 +18,9 @@ var (
ctlOpts = [ctlMax]ctlOpt{ ctlOpts = [ctlMax]ctlOpt{
ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
ctlPacketInfo: {sysIPV6_PKTINFO, sysSizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
ctlNextHop: {sysIPV6_NEXTHOP, sysSizeofSockaddrInet6, marshalNextHop, parseNextHop}, ctlNextHop: {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
ctlPathMTU: {sysIPV6_PATHMTU, sysSizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
} }
sockOpts = [ssoMax]sockOpt{ sockOpts = [ssoMax]sockOpt{
...@@ -57,35 +57,35 @@ func init() { ...@@ -57,35 +57,35 @@ func init() {
} }
} }
func (sa *sysSockaddrInet6) setSockaddr(ip net.IP, i int) { func (sa *sockaddrInet6) setSockaddr(ip net.IP, i int) {
sa.Len = sysSizeofSockaddrInet6 sa.Len = sizeofSockaddrInet6
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], ip) copy(sa.Addr[:], ip)
sa.Scope_id = uint32(i) sa.Scope_id = uint32(i)
} }
func (pi *sysInet6Pktinfo) setIfindex(i int) { func (pi *inet6Pktinfo) setIfindex(i int) {
pi.Ifindex = uint32(i) pi.Ifindex = uint32(i)
} }
func (mreq *sysIPv6Mreq) setIfindex(i int) { func (mreq *ipv6Mreq) setIfindex(i int) {
mreq.Interface = uint32(i) mreq.Interface = uint32(i)
} }
func (gr *sysGroupReq) setGroup(grp net.IP) { func (gr *groupReq) setGroup(grp net.IP) {
sa := (*sysSockaddrInet6)(unsafe.Pointer(&gr.Group)) sa := (*sockaddrInet6)(unsafe.Pointer(&gr.Group))
sa.Len = sysSizeofSockaddrInet6 sa.Len = sizeofSockaddrInet6
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], grp) copy(sa.Addr[:], grp)
} }
func (gsr *sysGroupSourceReq) setSourceGroup(grp, src net.IP) { func (gsr *groupSourceReq) setSourceGroup(grp, src net.IP) {
sa := (*sysSockaddrInet6)(unsafe.Pointer(&gsr.Group)) sa := (*sockaddrInet6)(unsafe.Pointer(&gsr.Group))
sa.Len = sysSizeofSockaddrInet6 sa.Len = sizeofSockaddrInet6
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], grp) copy(sa.Addr[:], grp)
sa = (*sysSockaddrInet6)(unsafe.Pointer(&gsr.Source)) sa = (*sockaddrInet6)(unsafe.Pointer(&gsr.Source))
sa.Len = sysSizeofSockaddrInet6 sa.Len = sizeofSockaddrInet6
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], src) copy(sa.Addr[:], src)
} }
...@@ -16,8 +16,8 @@ var ( ...@@ -16,8 +16,8 @@ var (
ctlOpts = [ctlMax]ctlOpt{ ctlOpts = [ctlMax]ctlOpt{
ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
ctlPacketInfo: {sysIPV6_PKTINFO, sysSizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
ctlPathMTU: {sysIPV6_PATHMTU, sysSizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
} }
sockOpts = [ssoMax]sockOpt{ sockOpts = [ssoMax]sockOpt{
...@@ -42,31 +42,31 @@ var ( ...@@ -42,31 +42,31 @@ var (
} }
) )
func (sa *sysSockaddrInet6) setSockaddr(ip net.IP, i int) { func (sa *sockaddrInet6) setSockaddr(ip net.IP, i int) {
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], ip) copy(sa.Addr[:], ip)
sa.Scope_id = uint32(i) sa.Scope_id = uint32(i)
} }
func (pi *sysInet6Pktinfo) setIfindex(i int) { func (pi *inet6Pktinfo) setIfindex(i int) {
pi.Ifindex = int32(i) pi.Ifindex = int32(i)
} }
func (mreq *sysIPv6Mreq) setIfindex(i int) { func (mreq *ipv6Mreq) setIfindex(i int) {
mreq.Ifindex = int32(i) mreq.Ifindex = int32(i)
} }
func (gr *sysGroupReq) setGroup(grp net.IP) { func (gr *groupReq) setGroup(grp net.IP) {
sa := (*sysSockaddrInet6)(unsafe.Pointer(&gr.Group)) sa := (*sockaddrInet6)(unsafe.Pointer(&gr.Group))
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], grp) copy(sa.Addr[:], grp)
} }
func (gsr *sysGroupSourceReq) setSourceGroup(grp, src net.IP) { func (gsr *groupSourceReq) setSourceGroup(grp, src net.IP) {
sa := (*sysSockaddrInet6)(unsafe.Pointer(&gsr.Group)) sa := (*sockaddrInet6)(unsafe.Pointer(&gsr.Group))
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], grp) copy(sa.Addr[:], grp)
sa = (*sysSockaddrInet6)(unsafe.Pointer(&gsr.Source)) sa = (*sockaddrInet6)(unsafe.Pointer(&gsr.Source))
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], src) copy(sa.Addr[:], src)
} }
...@@ -16,9 +16,9 @@ var ( ...@@ -16,9 +16,9 @@ var (
ctlOpts = [ctlMax]ctlOpt{ ctlOpts = [ctlMax]ctlOpt{
ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass},
ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit},
ctlPacketInfo: {sysIPV6_PKTINFO, sysSizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo},
ctlNextHop: {sysIPV6_NEXTHOP, sysSizeofSockaddrInet6, marshalNextHop, parseNextHop}, ctlNextHop: {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop},
ctlPathMTU: {sysIPV6_PATHMTU, sysSizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU},
} }
sockOpts = [ssoMax]sockOpt{ sockOpts = [ssoMax]sockOpt{
...@@ -43,31 +43,31 @@ var ( ...@@ -43,31 +43,31 @@ var (
} }
) )
func (sa *sysSockaddrInet6) setSockaddr(ip net.IP, i int) { func (sa *sockaddrInet6) setSockaddr(ip net.IP, i int) {
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], ip) copy(sa.Addr[:], ip)
sa.Scope_id = uint32(i) sa.Scope_id = uint32(i)
} }
func (pi *sysInet6Pktinfo) setIfindex(i int) { func (pi *inet6Pktinfo) setIfindex(i int) {
pi.Ifindex = uint32(i) pi.Ifindex = uint32(i)
} }
func (mreq *sysIPv6Mreq) setIfindex(i int) { func (mreq *ipv6Mreq) setIfindex(i int) {
mreq.Interface = uint32(i) mreq.Interface = uint32(i)
} }
func (gr *sysGroupReq) setGroup(grp net.IP) { func (gr *groupReq) setGroup(grp net.IP) {
sa := (*sysSockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gr)) + 4)) sa := (*sockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gr)) + 4))
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], grp) copy(sa.Addr[:], grp)
} }
func (gsr *sysGroupSourceReq) setSourceGroup(grp, src net.IP) { func (gsr *groupSourceReq) setSourceGroup(grp, src net.IP) {
sa := (*sysSockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gsr)) + 4)) sa := (*sockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gsr)) + 4))
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], grp) copy(sa.Addr[:], grp)
sa = (*sysSockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gsr)) + 260)) sa = (*sockaddrInet6)(unsafe.Pointer(uintptr(unsafe.Pointer(gsr)) + 260))
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], src) copy(sa.Addr[:], src)
} }
...@@ -21,14 +21,14 @@ const ( ...@@ -21,14 +21,14 @@ const (
sysIPV6_LEAVE_GROUP = 0xd sysIPV6_LEAVE_GROUP = 0xd
sysIPV6_PKTINFO = 0x13 sysIPV6_PKTINFO = 0x13
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofICMPv6Filter = 0 sizeofICMPv6Filter = 0
) )
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -36,17 +36,17 @@ type sysSockaddrInet6 struct { ...@@ -36,17 +36,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Interface uint32 Interface uint32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
// TODO(mikio): implement this // TODO(mikio): implement this
} }
...@@ -63,12 +63,12 @@ var ( ...@@ -63,12 +63,12 @@ var (
} }
) )
func (sa *sysSockaddrInet6) setSockaddr(ip net.IP, i int) { func (sa *sockaddrInet6) setSockaddr(ip net.IP, i int) {
sa.Family = syscall.AF_INET6 sa.Family = syscall.AF_INET6
copy(sa.Addr[:], ip) copy(sa.Addr[:], ip)
sa.Scope_id = uint32(i) sa.Scope_id = uint32(i)
} }
func (mreq *sysIPv6Mreq) setIfindex(i int) { func (mreq *ipv6Mreq) setIfindex(i int) {
mreq.Interface = uint32(i) mreq.Interface = uint32(i)
} }
...@@ -71,19 +71,19 @@ const ( ...@@ -71,19 +71,19 @@ const (
sysIPV6_PORTRANGE_HIGH = 0x1 sysIPV6_PORTRANGE_HIGH = 0x1
sysIPV6_PORTRANGE_LOW = 0x2 sysIPV6_PORTRANGE_LOW = 0x2
sysSizeofSockaddrStorage = 0x80 sizeofSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x84 sizeofGroupReq = 0x84
sysSizeofGroupSourceReq = 0x104 sizeofGroupSourceReq = 0x104
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysSockaddrStorage struct { type sockaddrStorage struct {
Len uint8 Len uint8
Family uint8 Family uint8
X__ss_pad1 [6]int8 X__ss_pad1 [6]int8
...@@ -91,7 +91,7 @@ type sysSockaddrStorage struct { ...@@ -91,7 +91,7 @@ type sysSockaddrStorage struct {
X__ss_pad2 [112]int8 X__ss_pad2 [112]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Len uint8 Len uint8
Family uint8 Family uint8
Port uint16 Port uint16
...@@ -100,31 +100,31 @@ type sysSockaddrInet6 struct { ...@@ -100,31 +100,31 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex uint32 Ifindex uint32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Interface uint32 Interface uint32
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Filt [8]uint32 Filt [8]uint32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [128]byte Pad_cgo_0 [128]byte
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [128]byte Pad_cgo_0 [128]byte
Pad_cgo_1 [128]byte Pad_cgo_1 [128]byte
......
...@@ -52,16 +52,16 @@ const ( ...@@ -52,16 +52,16 @@ const (
sysIPV6_PORTRANGE_HIGH = 0x1 sysIPV6_PORTRANGE_HIGH = 0x1
sysIPV6_PORTRANGE_LOW = 0x2 sysIPV6_PORTRANGE_LOW = 0x2
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Len uint8 Len uint8
Family uint8 Family uint8
Port uint16 Port uint16
...@@ -70,21 +70,21 @@ type sysSockaddrInet6 struct { ...@@ -70,21 +70,21 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex uint32 Ifindex uint32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Interface uint32 Interface uint32
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Filt [8]uint32 Filt [8]uint32
} }
...@@ -62,19 +62,19 @@ const ( ...@@ -62,19 +62,19 @@ const (
sysIPV6_PORTRANGE_HIGH = 0x1 sysIPV6_PORTRANGE_HIGH = 0x1
sysIPV6_PORTRANGE_LOW = 0x2 sysIPV6_PORTRANGE_LOW = 0x2
sysSizeofSockaddrStorage = 0x80 sizeofSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x84 sizeofGroupReq = 0x84
sysSizeofGroupSourceReq = 0x104 sizeofGroupSourceReq = 0x104
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysSockaddrStorage struct { type sockaddrStorage struct {
Len uint8 Len uint8
Family uint8 Family uint8
X__ss_pad1 [6]int8 X__ss_pad1 [6]int8
...@@ -82,7 +82,7 @@ type sysSockaddrStorage struct { ...@@ -82,7 +82,7 @@ type sysSockaddrStorage struct {
X__ss_pad2 [112]int8 X__ss_pad2 [112]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Len uint8 Len uint8
Family uint8 Family uint8
Port uint16 Port uint16
...@@ -91,32 +91,32 @@ type sysSockaddrInet6 struct { ...@@ -91,32 +91,32 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex uint32 Ifindex uint32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Interface uint32 Interface uint32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Group sysSockaddrStorage Group sockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Group sysSockaddrStorage Group sockaddrStorage
Source sysSockaddrStorage Source sockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Filt [8]uint32 Filt [8]uint32
} }
...@@ -62,19 +62,19 @@ const ( ...@@ -62,19 +62,19 @@ const (
sysIPV6_PORTRANGE_HIGH = 0x1 sysIPV6_PORTRANGE_HIGH = 0x1
sysIPV6_PORTRANGE_LOW = 0x2 sysIPV6_PORTRANGE_LOW = 0x2
sysSizeofSockaddrStorage = 0x80 sizeofSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x88 sizeofGroupReq = 0x88
sysSizeofGroupSourceReq = 0x108 sizeofGroupSourceReq = 0x108
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysSockaddrStorage struct { type sockaddrStorage struct {
Len uint8 Len uint8
Family uint8 Family uint8
X__ss_pad1 [6]int8 X__ss_pad1 [6]int8
...@@ -82,7 +82,7 @@ type sysSockaddrStorage struct { ...@@ -82,7 +82,7 @@ type sysSockaddrStorage struct {
X__ss_pad2 [112]int8 X__ss_pad2 [112]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Len uint8 Len uint8
Family uint8 Family uint8
Port uint16 Port uint16
...@@ -91,34 +91,34 @@ type sysSockaddrInet6 struct { ...@@ -91,34 +91,34 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex uint32 Ifindex uint32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Interface uint32 Interface uint32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysSockaddrStorage Group sockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysSockaddrStorage Group sockaddrStorage
Source sysSockaddrStorage Source sockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Filt [8]uint32 Filt [8]uint32
} }
...@@ -62,19 +62,19 @@ const ( ...@@ -62,19 +62,19 @@ const (
sysIPV6_PORTRANGE_HIGH = 0x1 sysIPV6_PORTRANGE_HIGH = 0x1
sysIPV6_PORTRANGE_LOW = 0x2 sysIPV6_PORTRANGE_LOW = 0x2
sysSizeofSockaddrStorage = 0x80 sizeofSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x88 sizeofGroupReq = 0x88
sysSizeofGroupSourceReq = 0x108 sizeofGroupSourceReq = 0x108
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysSockaddrStorage struct { type sockaddrStorage struct {
Len uint8 Len uint8
Family uint8 Family uint8
X__ss_pad1 [6]int8 X__ss_pad1 [6]int8
...@@ -82,7 +82,7 @@ type sysSockaddrStorage struct { ...@@ -82,7 +82,7 @@ type sysSockaddrStorage struct {
X__ss_pad2 [112]int8 X__ss_pad2 [112]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Len uint8 Len uint8
Family uint8 Family uint8
Port uint16 Port uint16
...@@ -91,34 +91,34 @@ type sysSockaddrInet6 struct { ...@@ -91,34 +91,34 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex uint32 Ifindex uint32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Interface uint32 Interface uint32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysSockaddrStorage Group sockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysSockaddrStorage Group sockaddrStorage
Source sysSockaddrStorage Source sockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Filt [8]uint32 Filt [8]uint32
} }
...@@ -87,25 +87,25 @@ const ( ...@@ -87,25 +87,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x84 sizeofGroupReq = 0x84
sysSizeofGroupSourceReq = 0x104 sizeofGroupSourceReq = 0x104
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]int8 X__data [126]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -113,17 +113,17 @@ type sysSockaddrInet6 struct { ...@@ -113,17 +113,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -134,33 +134,33 @@ type sysIPv6FlowlabelReq struct { ...@@ -134,33 +134,33 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [2]byte Pad_cgo_0 [2]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -87,25 +87,25 @@ const ( ...@@ -87,25 +87,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x88 sizeofGroupReq = 0x88
sysSizeofGroupSourceReq = 0x108 sizeofGroupSourceReq = 0x108
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]int8 X__data [126]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -113,17 +113,17 @@ type sysSockaddrInet6 struct { ...@@ -113,17 +113,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -134,35 +134,35 @@ type sysIPv6FlowlabelReq struct { ...@@ -134,35 +134,35 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [6]byte Pad_cgo_0 [6]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -87,25 +87,25 @@ const ( ...@@ -87,25 +87,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x84 sizeofGroupReq = 0x84
sysSizeofGroupSourceReq = 0x104 sizeofGroupSourceReq = 0x104
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]int8 X__data [126]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -113,17 +113,17 @@ type sysSockaddrInet6 struct { ...@@ -113,17 +113,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -134,33 +134,33 @@ type sysIPv6FlowlabelReq struct { ...@@ -134,33 +134,33 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [2]byte Pad_cgo_0 [2]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -89,25 +89,25 @@ const ( ...@@ -89,25 +89,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x88 sizeofGroupReq = 0x88
sysSizeofGroupSourceReq = 0x108 sizeofGroupSourceReq = 0x108
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]int8 X__data [126]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct { ...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct { ...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [6]byte Pad_cgo_0 [6]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -89,25 +89,25 @@ const ( ...@@ -89,25 +89,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x88 sizeofGroupReq = 0x88
sysSizeofGroupSourceReq = 0x108 sizeofGroupSourceReq = 0x108
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]int8 X__data [126]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct { ...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct { ...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [6]byte Pad_cgo_0 [6]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -89,25 +89,25 @@ const ( ...@@ -89,25 +89,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x88 sizeofGroupReq = 0x88
sysSizeofGroupSourceReq = 0x108 sizeofGroupSourceReq = 0x108
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]int8 X__data [126]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct { ...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct { ...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [6]byte Pad_cgo_0 [6]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -89,25 +89,25 @@ const ( ...@@ -89,25 +89,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x84 sizeofGroupReq = 0x84
sysSizeofGroupSourceReq = 0x104 sizeofGroupSourceReq = 0x104
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]uint8 X__data [126]uint8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct { ...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -136,33 +136,33 @@ type sysIPv6FlowlabelReq struct { ...@@ -136,33 +136,33 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [2]byte Pad_cgo_0 [2]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -89,25 +89,25 @@ const ( ...@@ -89,25 +89,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x88 sizeofGroupReq = 0x88
sysSizeofGroupSourceReq = 0x108 sizeofGroupSourceReq = 0x108
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]int8 X__data [126]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct { ...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct { ...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [6]byte Pad_cgo_0 [6]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -89,25 +89,25 @@ const ( ...@@ -89,25 +89,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x88 sizeofGroupReq = 0x88
sysSizeofGroupSourceReq = 0x108 sizeofGroupSourceReq = 0x108
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]int8 X__data [126]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct { ...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct { ...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [6]byte Pad_cgo_0 [6]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -89,25 +89,25 @@ const ( ...@@ -89,25 +89,25 @@ const (
sysSOL_SOCKET = 0x1 sysSOL_SOCKET = 0x1
sysSO_ATTACH_FILTER = 0x1a sysSO_ATTACH_FILTER = 0x1a
sysSizeofKernelSockaddrStorage = 0x80 sizeofKernelSockaddrStorage = 0x80
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6FlowlabelReq = 0x20 sizeofIPv6FlowlabelReq = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x88 sizeofGroupReq = 0x88
sysSizeofGroupSourceReq = 0x108 sizeofGroupSourceReq = 0x108
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysKernelSockaddrStorage struct { type kernelSockaddrStorage struct {
Family uint16 Family uint16
X__data [126]int8 X__data [126]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct { ...@@ -115,17 +115,17 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6FlowlabelReq struct { type ipv6FlowlabelReq struct {
Dst [16]byte /* in6_addr */ Dst [16]byte /* in6_addr */
Label uint32 Label uint32
Action uint8 Action uint8
...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct { ...@@ -136,35 +136,35 @@ type sysIPv6FlowlabelReq struct {
X__flr_pad uint32 X__flr_pad uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Ifindex int32 Ifindex int32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [4]byte Pad_cgo_0 [4]byte
Group sysKernelSockaddrStorage Group kernelSockaddrStorage
Source sysKernelSockaddrStorage Source kernelSockaddrStorage
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Data [8]uint32 Data [8]uint32
} }
type sysSockFProg struct { type sockFProg struct {
Len uint16 Len uint16
Pad_cgo_0 [6]byte Pad_cgo_0 [6]byte
Filter *sysSockFilter Filter *sockFilter
} }
type sysSockFilter struct { type sockFilter struct {
Code uint16 Code uint16
Jt uint8 Jt uint8
Jf uint8 Jf uint8
......
...@@ -46,16 +46,16 @@ const ( ...@@ -46,16 +46,16 @@ const (
sysIPV6_PORTRANGE_HIGH = 0x1 sysIPV6_PORTRANGE_HIGH = 0x1
sysIPV6_PORTRANGE_LOW = 0x2 sysIPV6_PORTRANGE_LOW = 0x2
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Len uint8 Len uint8
Family uint8 Family uint8
Port uint16 Port uint16
...@@ -64,21 +64,21 @@ type sysSockaddrInet6 struct { ...@@ -64,21 +64,21 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex uint32 Ifindex uint32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Interface uint32 Interface uint32
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Filt [8]uint32 Filt [8]uint32
} }
...@@ -55,16 +55,16 @@ const ( ...@@ -55,16 +55,16 @@ const (
sysIPV6_PORTRANGE_HIGH = 0x1 sysIPV6_PORTRANGE_HIGH = 0x1
sysIPV6_PORTRANGE_LOW = 0x2 sysIPV6_PORTRANGE_LOW = 0x2
sysSizeofSockaddrInet6 = 0x1c sizeofSockaddrInet6 = 0x1c
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x20 sizeofIPv6Mtuinfo = 0x20
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Len uint8 Len uint8
Family uint8 Family uint8
Port uint16 Port uint16
...@@ -73,21 +73,21 @@ type sysSockaddrInet6 struct { ...@@ -73,21 +73,21 @@ type sysSockaddrInet6 struct {
Scope_id uint32 Scope_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex uint32 Ifindex uint32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Interface uint32 Interface uint32
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
Filt [8]uint32 Filt [8]uint32
} }
...@@ -74,26 +74,26 @@ const ( ...@@ -74,26 +74,26 @@ const (
sysICMP6_FILTER = 0x1 sysICMP6_FILTER = 0x1
sysSizeofSockaddrStorage = 0x100 sizeofSockaddrStorage = 0x100
sysSizeofSockaddrInet6 = 0x20 sizeofSockaddrInet6 = 0x20
sysSizeofInet6Pktinfo = 0x14 sizeofInet6Pktinfo = 0x14
sysSizeofIPv6Mtuinfo = 0x24 sizeofIPv6Mtuinfo = 0x24
sysSizeofIPv6Mreq = 0x14 sizeofIPv6Mreq = 0x14
sysSizeofGroupReq = 0x104 sizeofGroupReq = 0x104
sysSizeofGroupSourceReq = 0x204 sizeofGroupSourceReq = 0x204
sysSizeofICMPv6Filter = 0x20 sizeofICMPv6Filter = 0x20
) )
type sysSockaddrStorage struct { type sockaddrStorage struct {
Family uint16 Family uint16
X_ss_pad1 [6]int8 X_ss_pad1 [6]int8
X_ss_align float64 X_ss_align float64
X_ss_pad2 [240]int8 X_ss_pad2 [240]int8
} }
type sysSockaddrInet6 struct { type sockaddrInet6 struct {
Family uint16 Family uint16
Port uint16 Port uint16
Flowinfo uint32 Flowinfo uint32
...@@ -102,32 +102,32 @@ type sysSockaddrInet6 struct { ...@@ -102,32 +102,32 @@ type sysSockaddrInet6 struct {
X__sin6_src_id uint32 X__sin6_src_id uint32
} }
type sysInet6Pktinfo struct { type inet6Pktinfo struct {
Addr [16]byte /* in6_addr */ Addr [16]byte /* in6_addr */
Ifindex uint32 Ifindex uint32
} }
type sysIPv6Mtuinfo struct { type ipv6Mtuinfo struct {
Addr sysSockaddrInet6 Addr sockaddrInet6
Mtu uint32 Mtu uint32
} }
type sysIPv6Mreq struct { type ipv6Mreq struct {
Multiaddr [16]byte /* in6_addr */ Multiaddr [16]byte /* in6_addr */
Interface uint32 Interface uint32
} }
type sysGroupReq struct { type groupReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [256]byte Pad_cgo_0 [256]byte
} }
type sysGroupSourceReq struct { type groupSourceReq struct {
Interface uint32 Interface uint32
Pad_cgo_0 [256]byte Pad_cgo_0 [256]byte
Pad_cgo_1 [256]byte Pad_cgo_1 [256]byte
} }
type sysICMPv6Filter struct { type icmpv6Filter struct {
X__icmp6_filt [8]uint32 X__icmp6_filt [8]uint32
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment