github.com/graybobo/golang.org-package-offline-cache@v0.0.0-20200626051047-6608995c132f/x/net/ipv4/sys_bsd.go (about) 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 5 // +build dragonfly netbsd 6 7 package ipv4 8 9 import ( 10 "net" 11 "syscall" 12 ) 13 14 type sysSockoptLen int32 15 16 var ( 17 ctlOpts = [ctlMax]ctlOpt{ 18 ctlTTL: {sysIP_RECVTTL, 1, marshalTTL, parseTTL}, 19 ctlDst: {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, 20 ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, 21 } 22 23 sockOpts = [ssoMax]sockOpt{ 24 ssoTOS: {sysIP_TOS, ssoTypeInt}, 25 ssoTTL: {sysIP_TTL, ssoTypeInt}, 26 ssoMulticastTTL: {sysIP_MULTICAST_TTL, ssoTypeByte}, 27 ssoMulticastInterface: {sysIP_MULTICAST_IF, ssoTypeInterface}, 28 ssoMulticastLoopback: {sysIP_MULTICAST_LOOP, ssoTypeInt}, 29 ssoReceiveTTL: {sysIP_RECVTTL, ssoTypeInt}, 30 ssoReceiveDst: {sysIP_RECVDSTADDR, ssoTypeInt}, 31 ssoReceiveInterface: {sysIP_RECVIF, ssoTypeInt}, 32 ssoHeaderPrepend: {sysIP_HDRINCL, ssoTypeInt}, 33 ssoJoinGroup: {sysIP_ADD_MEMBERSHIP, ssoTypeIPMreq}, 34 ssoLeaveGroup: {sysIP_DROP_MEMBERSHIP, ssoTypeIPMreq}, 35 } 36 )