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.
5 // +build darwin freebsd linux solaris
13 "golang.org/x/net/internal/socket"
18 func (so *sockOpt) setGroupReq(c *socket.Conn, ifi *net.Interface, grp net.IP) error {
21 gr.Interface = uint32(ifi.Index)
26 var d [sizeofGroupReq + 4]byte
27 s := (*[sizeofGroupReq]byte)(unsafe.Pointer(&gr))
32 b = (*[sizeofGroupReq]byte)(unsafe.Pointer(&gr))[:sizeofGroupReq]
37 func (so *sockOpt) setGroupSourceReq(c *socket.Conn, ifi *net.Interface, grp, src net.IP) error {
38 var gsr groupSourceReq
40 gsr.Interface = uint32(ifi.Index)
42 gsr.setSourceGroup(grp, src)
45 var d [sizeofGroupSourceReq + 4]byte
46 s := (*[sizeofGroupSourceReq]byte)(unsafe.Pointer(&gsr))
51 b = (*[sizeofGroupSourceReq]byte)(unsafe.Pointer(&gsr))[:sizeofGroupSourceReq]