123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- // Copyright 2013 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
- //go:build darwin || dragonfly || freebsd || netbsd || openbsd
- package net
- import (
- "errors"
- "fmt"
- "os/exec"
- "runtime"
- )
- func (ti *testInterface) setBroadcast(vid int) error {
- if runtime.GOOS == "openbsd" {
- ti.name = fmt.Sprintf("vether%d", vid)
- } else {
- ti.name = fmt.Sprintf("vlan%d", vid)
- }
- xname, err := exec.LookPath("ifconfig")
- if err != nil {
- return err
- }
- ti.setupCmds = append(ti.setupCmds, &exec.Cmd{
- Path: xname,
- Args: []string{"ifconfig", ti.name, "create"},
- })
- ti.teardownCmds = append(ti.teardownCmds, &exec.Cmd{
- Path: xname,
- Args: []string{"ifconfig", ti.name, "destroy"},
- })
- return nil
- }
- func (ti *testInterface) setPointToPoint(suffix int) error {
- ti.name = fmt.Sprintf("gif%d", suffix)
- xname, err := exec.LookPath("ifconfig")
- if err != nil {
- return err
- }
- ti.setupCmds = append(ti.setupCmds, &exec.Cmd{
- Path: xname,
- Args: []string{"ifconfig", ti.name, "create"},
- })
- ti.setupCmds = append(ti.setupCmds, &exec.Cmd{
- Path: xname,
- Args: []string{"ifconfig", ti.name, "inet", ti.local, ti.remote},
- })
- ti.teardownCmds = append(ti.teardownCmds, &exec.Cmd{
- Path: xname,
- Args: []string{"ifconfig", ti.name, "destroy"},
- })
- return nil
- }
- func (ti *testInterface) setLinkLocal(suffix int) error {
- return errors.New("not yet implemented for BSD")
- }
|