code: func vlanInterfaces(pIface *net.Interface) ([]*net.Interface, error) {
  	allIfaces, err := net.Interfaces()
  	if err != nil {
  		return nil, err
  	}
  	ifaces := make([]*net.Interface, 0, len(allIfaces))
  	prefix := fmt.Sprintf("%s.", pIface.Name)
  	for i, iface := range allIfaces {
  		if strings.HasPrefix(iface.Name, prefix) {
  			ifaces = append(ifaces, &allIfaces[i])
  		}
  	}
  	return ifaces, nil
  }
docs: // vlanInterfaces returns a slice containing the VLAN interfaces associated
  // with a physical interface.