Updated vendor to get container-diff master

This commit is contained in:
Priya Wadhwa 2018-03-01 13:10:24 -08:00
parent 142ec6aa98
commit 31d02ad5db
No known key found for this signature in database
GPG Key ID: 0D0DAFD8F7AA73AE
62 changed files with 2336 additions and 1282 deletions

20
Gopkg.lock generated
View File

@ -15,7 +15,7 @@
"pkg/image", "pkg/image",
"pkg/util" "pkg/util"
] ]
revision = "6267be2c48c901780fdeab3ada003b323136c254" revision = "ce3228b4afba2b2fb9b42c416c8f59a14ee7c1dd"
source = "github.com/GoogleCloudPlatform/container-diff" source = "github.com/GoogleCloudPlatform/container-diff"
[[projects]] [[projects]]
@ -119,7 +119,7 @@
"pkg/system", "pkg/system",
"pkg/truncindex" "pkg/truncindex"
] ]
revision = "477e551dd493e5c80999d3690d3a201fd26ba2f1" revision = "66a38bb219e9776482c18e8c02f438e5112916f1"
[[projects]] [[projects]]
branch = "master" branch = "master"
@ -137,7 +137,7 @@
"registry/storage/cache", "registry/storage/cache",
"registry/storage/cache/memory" "registry/storage/cache/memory"
] ]
revision = "6664ec703991875e14419ff4960921cce7678bab" revision = "6fca8d6e6713acbdf3f9ca40cf6370fc5ee5ee53"
[[projects]] [[projects]]
name = "github.com/docker/docker" name = "github.com/docker/docker"
@ -359,7 +359,7 @@
"internal/bitbucket.org/ww/goautoneg", "internal/bitbucket.org/ww/goautoneg",
"model" "model"
] ]
revision = "89604d197083d4781071d3c65855d24ecfb0a563" revision = "6fb6fce6f8b75884b92e1889c150403fc0872c5e"
[[projects]] [[projects]]
branch = "master" branch = "master"
@ -370,7 +370,7 @@
"nfs", "nfs",
"xfs" "xfs"
] ]
revision = "282c8707aa210456a825798969cc27edda34992a" revision = "d274e363d5759d1c916232217be421f1cc89c5fe"
[[projects]] [[projects]]
name = "github.com/sirupsen/logrus" name = "github.com/sirupsen/logrus"
@ -419,7 +419,7 @@
"openpgp/s2k", "openpgp/s2k",
"ssh/terminal" "ssh/terminal"
] ]
revision = "432090b8f568c018896cd8a0fb0345872bbac6ce" revision = "91a49db82a88618983a78a06c1cbd4e00ab749ab"
[[projects]] [[projects]]
branch = "master" branch = "master"
@ -433,7 +433,7 @@
"lex/httplex", "lex/httplex",
"proxy" "proxy"
] ]
revision = "cbe0f9307d0156177f9dd5dc85da1a31abc5f2fb" revision = "22ae77b79946ea320088417e4d50825671d82d57"
[[projects]] [[projects]]
branch = "master" branch = "master"
@ -442,7 +442,7 @@
"unix", "unix",
"windows" "windows"
] ]
revision = "37707fdb30a5b38865cfb95e5aab41707daec7fd" revision = "f6cff0780e542efa0c8e864dc8fa522808f6a598"
[[projects]] [[projects]]
name = "golang.org/x/text" name = "golang.org/x/text"
@ -472,10 +472,10 @@
version = "v1.0.22" version = "v1.0.22"
[[projects]] [[projects]]
branch = "v2"
name = "gopkg.in/yaml.v2" name = "gopkg.in/yaml.v2"
packages = ["."] packages = ["."]
revision = "d670f9405373e636a5a2765eea47fac0c9bc91a4" revision = "7f97868eec74b32b0982dd158a51a446d1da7eb5"
version = "v2.1.1"
[[projects]] [[projects]]
name = "k8s.io/client-go" name = "k8s.io/client-go"

View File

@ -22,6 +22,7 @@ import (
"encoding/json" "encoding/json"
"io" "io"
"io/ioutil" "io/ioutil"
"strings"
"time" "time"
"github.com/containers/image/manifest" "github.com/containers/image/manifest"
@ -119,7 +120,7 @@ func gzipBytes(b []byte) ([]byte, error) {
} }
// appendLayer appends an uncompressed blob to the image, preserving the invariants required across the config and manifest. // appendLayer appends an uncompressed blob to the image, preserving the invariants required across the config and manifest.
func (m *MutableSource) AppendLayer(content []byte) error { func (m *MutableSource) AppendLayer(content []byte, author string) error {
compressedBlob, err := gzipBytes(content) compressedBlob, err := gzipBytes(content)
if err != nil { if err != nil {
return err return err
@ -141,12 +142,7 @@ func (m *MutableSource) AppendLayer(content []byte) error {
// Also add it to the config. // Also add it to the config.
diffID := digest.FromBytes(content) diffID := digest.FromBytes(content)
m.cfg.RootFS.DiffIDs = append(m.cfg.RootFS.DiffIDs, diffID) m.cfg.RootFS.DiffIDs = append(m.cfg.RootFS.DiffIDs, diffID)
history := manifest.Schema2History{ m.appendConfigHistory(author, false)
Created: time.Now(),
Author: "container-diff",
}
m.cfg.History = append(m.cfg.History, history)
return nil return nil
} }
@ -166,3 +162,45 @@ func (m *MutableSource) saveConfig() error {
} }
return nil return nil
} }
// Env returns a map of environment variables stored in the image config
// Converts each variable from a string of the form KEY=VALUE to a map of KEY:VALUE
func (m *MutableSource) Env() map[string]string {
envArray := m.cfg.Schema2V1Image.Config.Env
envMap := make(map[string]string)
for _, env := range envArray {
entry := strings.Split(env, "=")
envMap[entry[0]] = entry[1]
}
return envMap
}
// SetEnv takes a map of environment variables, and converts them to an array of strings
// in the form KEY=VALUE, and then sets the image config
func (m *MutableSource) SetEnv(envMap map[string]string, author string) {
envArray := []string{}
for key, value := range envMap {
entry := key + "=" + value
envArray = append(envArray, entry)
}
m.cfg.Schema2V1Image.Config.Env = envArray
m.appendConfigHistory(author, true)
}
func (m *MutableSource) Config() *manifest.Schema2Config {
return m.cfg.Schema2V1Image.Config
}
func (m *MutableSource) SetConfig(config *manifest.Schema2Config, author string, emptyLayer bool) {
m.cfg.Schema2V1Image.Config = config
m.appendConfigHistory(author, emptyLayer)
}
func (m *MutableSource) appendConfigHistory(author string, emptyLayer bool) {
history := manifest.Schema2History{
Created: time.Now(),
Author: author,
EmptyLayer: emptyLayer,
}
m.cfg.History = append(m.cfg.History, history)
}

View File

@ -462,6 +462,12 @@ type store struct {
// GetStore attempts to find an already-created Store object matching the // GetStore attempts to find an already-created Store object matching the
// specified location and graph driver, and if it can't, it creates and // specified location and graph driver, and if it can't, it creates and
// initializes a new Store object, and the underlying storage that it controls. // initializes a new Store object, and the underlying storage that it controls.
//
// If StoreOptions `options` haven't been fully populated, then DefaultStoreOptions are used.
//
// These defaults observe environment variables:
// * `STORAGE_DRIVER` for the name of the storage driver to attempt to use
// * `STORAGE_OPTS` for the string of options to pass to the driver
func GetStore(options StoreOptions) (Store, error) { func GetStore(options StoreOptions) (Store, error) {
if options.RunRoot == "" && options.GraphRoot == "" && options.GraphDriverName == "" && len(options.GraphDriverOptions) == 0 { if options.RunRoot == "" && options.GraphRoot == "" && options.GraphDriverName == "" && len(options.GraphDriverOptions) == 0 {
options = DefaultStoreOptions options = DefaultStoreOptions

View File

@ -26,7 +26,7 @@ const (
// The Content-Type values for the different wire protocols. // The Content-Type values for the different wire protocols.
FmtUnknown Format = `<unknown>` FmtUnknown Format = `<unknown>`
FmtText Format = `text/plain; version=` + TextVersion FmtText Format = `text/plain; version=` + TextVersion + `; charset=utf-8`
FmtProtoDelim Format = ProtoFmt + ` encoding=delimited` FmtProtoDelim Format = ProtoFmt + ` encoding=delimited`
FmtProtoText Format = ProtoFmt + ` encoding=text` FmtProtoText Format = ProtoFmt + ` encoding=text`
FmtProtoCompact Format = ProtoFmt + ` encoding=compact-text` FmtProtoCompact Format = ProtoFmt + ` encoding=compact-text`

View File

@ -1 +0,0 @@
/usr/bin/vim

View File

@ -1 +0,0 @@
../../symlinktargets/abc

View File

@ -1 +0,0 @@
../../symlinktargets/def

View File

@ -1 +0,0 @@
../../symlinktargets/xyz

View File

@ -1 +0,0 @@
../../symlinktargets/ghi

View File

@ -1 +0,0 @@
../../symlinktargets/uvw

View File

@ -1 +0,0 @@
mnt:[4026531840]

View File

@ -1 +0,0 @@
net:[4026531993]

View File

@ -1 +0,0 @@
../../symlinktargets/abc

View File

@ -1 +0,0 @@
../../symlinktargets/def

View File

@ -1 +0,0 @@
../../symlinktargets/ghi

View File

@ -1 +0,0 @@
../../symlinktargets/uvw

View File

@ -1 +0,0 @@
../../symlinktargets/xyz

View File

@ -1 +0,0 @@
26231

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
// While implementing parsing of /proc/[pid]/mountstats, this blog was used // While implementing parsing of /proc/[pid]/mountstats, this blog was used

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (

View File

@ -1,6 +1,20 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (
"bytes"
"fmt" "fmt"
"io/ioutil" "io/ioutil"
"os" "os"
@ -113,7 +127,7 @@ func (p Proc) CmdLine() ([]string, error) {
return []string{}, nil return []string{}, nil
} }
return strings.Split(string(data[:len(data)-1]), string(byte(0))), nil return strings.Split(string(bytes.TrimRight(data, string("\x00"))), string(byte(0))), nil
} }
// Comm returns the command name of a process. // Comm returns the command name of a process.

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (

View File

@ -1,3 +1,16 @@
// Copyright 2018 The Prometheus Authors
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package procfs package procfs
import ( import (

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_32BIT = 0x40 MAP_32BIT = 0x40
MAP_ANON = 0x20 MAP_ANON = 0x20
MAP_ANONYMOUS = 0x20 MAP_ANONYMOUS = 0x20
@ -899,6 +918,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -998,6 +1018,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1196,6 +1217,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1282,6 +1308,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1292,7 +1319,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1566,6 +1593,7 @@ const (
SOL_SOCKET = 0x1 SOL_SOCKET = 0x1
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1e SO_ACCEPTCONN = 0x1e
@ -1634,6 +1662,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1730,6 +1759,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1750,6 +1781,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x2 TCSAFLUSH = 0x2

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_32BIT = 0x40 MAP_32BIT = 0x40
MAP_ANON = 0x20 MAP_ANON = 0x20
MAP_ANONYMOUS = 0x20 MAP_ANONYMOUS = 0x20
@ -899,6 +918,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -998,6 +1018,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1196,6 +1217,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1283,6 +1309,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1293,7 +1320,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1567,6 +1594,7 @@ const (
SOL_SOCKET = 0x1 SOL_SOCKET = 0x1
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1e SO_ACCEPTCONN = 0x1e
@ -1635,6 +1663,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1731,6 +1760,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1751,6 +1782,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x2 TCSAFLUSH = 0x2

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_ANON = 0x20 MAP_ANON = 0x20
MAP_ANONYMOUS = 0x20 MAP_ANONYMOUS = 0x20
MAP_DENYWRITE = 0x800 MAP_DENYWRITE = 0x800
@ -898,6 +917,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -997,6 +1017,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1195,6 +1216,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1216,6 +1242,9 @@ const (
PTRACE_EVENT_VFORK_DONE = 0x5 PTRACE_EVENT_VFORK_DONE = 0x5
PTRACE_GETCRUNCHREGS = 0x19 PTRACE_GETCRUNCHREGS = 0x19
PTRACE_GETEVENTMSG = 0x4201 PTRACE_GETEVENTMSG = 0x4201
PTRACE_GETFDPIC = 0x1f
PTRACE_GETFDPIC_EXEC = 0x0
PTRACE_GETFDPIC_INTERP = 0x1
PTRACE_GETFPREGS = 0xe PTRACE_GETFPREGS = 0xe
PTRACE_GETHBPREGS = 0x1d PTRACE_GETHBPREGS = 0x1d
PTRACE_GETREGS = 0xc PTRACE_GETREGS = 0xc
@ -1287,6 +1316,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1297,7 +1327,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1571,6 +1601,7 @@ const (
SOL_SOCKET = 0x1 SOL_SOCKET = 0x1
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1e SO_ACCEPTCONN = 0x1e
@ -1639,6 +1670,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1735,6 +1767,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1755,6 +1789,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x2 TCSAFLUSH = 0x2

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -391,6 +392,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -399,6 +401,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -409,11 +412,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -478,6 +483,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -490,6 +496,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -497,6 +506,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -508,6 +521,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -563,6 +578,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -847,6 +864,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -855,6 +873,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_ANON = 0x20 MAP_ANON = 0x20
MAP_ANONYMOUS = 0x20 MAP_ANONYMOUS = 0x20
MAP_DENYWRITE = 0x800 MAP_DENYWRITE = 0x800
@ -900,6 +919,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -999,6 +1019,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1197,6 +1218,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1273,6 +1299,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1283,7 +1310,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1557,6 +1584,7 @@ const (
SOL_SOCKET = 0x1 SOL_SOCKET = 0x1
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1e SO_ACCEPTCONN = 0x1e
@ -1625,6 +1653,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1721,6 +1750,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1741,6 +1772,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x2 TCSAFLUSH = 0x2

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_ANON = 0x800 MAP_ANON = 0x800
MAP_ANONYMOUS = 0x800 MAP_ANONYMOUS = 0x800
MAP_DENYWRITE = 0x2000 MAP_DENYWRITE = 0x2000
@ -899,6 +918,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -998,6 +1018,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1196,6 +1217,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1284,6 +1310,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1294,7 +1321,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1568,6 +1595,7 @@ const (
SOL_SOCKET = 0xffff SOL_SOCKET = 0xffff
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1009 SO_ACCEPTCONN = 0x1009
@ -1637,6 +1665,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1732,6 +1761,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1752,6 +1783,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x5410 TCSAFLUSH = 0x5410

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_ANON = 0x800 MAP_ANON = 0x800
MAP_ANONYMOUS = 0x800 MAP_ANONYMOUS = 0x800
MAP_DENYWRITE = 0x2000 MAP_DENYWRITE = 0x2000
@ -899,6 +918,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -998,6 +1018,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1196,6 +1217,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1284,6 +1310,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1294,7 +1321,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1568,6 +1595,7 @@ const (
SOL_SOCKET = 0xffff SOL_SOCKET = 0xffff
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1009 SO_ACCEPTCONN = 0x1009
@ -1637,6 +1665,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1732,6 +1761,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1752,6 +1783,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x5410 TCSAFLUSH = 0x5410

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_ANON = 0x800 MAP_ANON = 0x800
MAP_ANONYMOUS = 0x800 MAP_ANONYMOUS = 0x800
MAP_DENYWRITE = 0x2000 MAP_DENYWRITE = 0x2000
@ -899,6 +918,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -998,6 +1018,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1196,6 +1217,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1284,6 +1310,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1294,7 +1321,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1568,6 +1595,7 @@ const (
SOL_SOCKET = 0xffff SOL_SOCKET = 0xffff
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1009 SO_ACCEPTCONN = 0x1009
@ -1637,6 +1665,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1732,6 +1761,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1752,6 +1783,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x5410 TCSAFLUSH = 0x5410

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_ANON = 0x800 MAP_ANON = 0x800
MAP_ANONYMOUS = 0x800 MAP_ANONYMOUS = 0x800
MAP_DENYWRITE = 0x2000 MAP_DENYWRITE = 0x2000
@ -899,6 +918,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -998,6 +1018,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1196,6 +1217,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1284,6 +1310,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1294,7 +1321,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1568,6 +1595,7 @@ const (
SOL_SOCKET = 0xffff SOL_SOCKET = 0xffff
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1009 SO_ACCEPTCONN = 0x1009
@ -1637,6 +1665,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1732,6 +1761,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1752,6 +1783,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x5410 TCSAFLUSH = 0x5410

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_ANON = 0x20 MAP_ANON = 0x20
MAP_ANONYMOUS = 0x20 MAP_ANONYMOUS = 0x20
MAP_DENYWRITE = 0x800 MAP_DENYWRITE = 0x800
@ -898,6 +917,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -999,6 +1019,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1198,6 +1219,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1340,6 +1366,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1350,7 +1377,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1624,6 +1651,7 @@ const (
SOL_SOCKET = 0x1 SOL_SOCKET = 0x1
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1e SO_ACCEPTCONN = 0x1e
@ -1692,6 +1720,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1786,6 +1815,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1806,6 +1837,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x2 TCSAFLUSH = 0x2

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_ANON = 0x20 MAP_ANON = 0x20
MAP_ANONYMOUS = 0x20 MAP_ANONYMOUS = 0x20
MAP_DENYWRITE = 0x800 MAP_DENYWRITE = 0x800
@ -898,6 +917,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -999,6 +1019,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1198,6 +1219,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1340,6 +1366,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1350,7 +1377,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1624,6 +1651,7 @@ const (
SOL_SOCKET = 0x1 SOL_SOCKET = 0x1
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1e SO_ACCEPTCONN = 0x1e
@ -1692,6 +1720,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1786,6 +1815,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1806,6 +1837,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x2 TCSAFLUSH = 0x2

View File

@ -121,6 +121,7 @@ const (
ARPHRD_PPP = 0x200 ARPHRD_PPP = 0x200
ARPHRD_PRONET = 0x4 ARPHRD_PRONET = 0x4
ARPHRD_RAWHDLC = 0x206 ARPHRD_RAWHDLC = 0x206
ARPHRD_RAWIP = 0x207
ARPHRD_ROSE = 0x10e ARPHRD_ROSE = 0x10e
ARPHRD_RSRVD = 0x104 ARPHRD_RSRVD = 0x104
ARPHRD_SIT = 0x308 ARPHRD_SIT = 0x308
@ -390,6 +391,7 @@ const (
ETH_P_DSA = 0x1b ETH_P_DSA = 0x1b
ETH_P_ECONET = 0x18 ETH_P_ECONET = 0x18
ETH_P_EDSA = 0xdada ETH_P_EDSA = 0xdada
ETH_P_ERSPAN = 0x88be
ETH_P_FCOE = 0x8906 ETH_P_FCOE = 0x8906
ETH_P_FIP = 0x8914 ETH_P_FIP = 0x8914
ETH_P_HDLC = 0x19 ETH_P_HDLC = 0x19
@ -398,6 +400,7 @@ const (
ETH_P_IEEE802154 = 0xf6 ETH_P_IEEE802154 = 0xf6
ETH_P_IEEEPUP = 0xa00 ETH_P_IEEEPUP = 0xa00
ETH_P_IEEEPUPAT = 0xa01 ETH_P_IEEEPUPAT = 0xa01
ETH_P_IFE = 0xed3e
ETH_P_IP = 0x800 ETH_P_IP = 0x800
ETH_P_IPV6 = 0x86dd ETH_P_IPV6 = 0x86dd
ETH_P_IPX = 0x8137 ETH_P_IPX = 0x8137
@ -408,11 +411,13 @@ const (
ETH_P_LOOP = 0x60 ETH_P_LOOP = 0x60
ETH_P_LOOPBACK = 0x9000 ETH_P_LOOPBACK = 0x9000
ETH_P_MACSEC = 0x88e5 ETH_P_MACSEC = 0x88e5
ETH_P_MAP = 0xf9
ETH_P_MOBITEX = 0x15 ETH_P_MOBITEX = 0x15
ETH_P_MPLS_MC = 0x8848 ETH_P_MPLS_MC = 0x8848
ETH_P_MPLS_UC = 0x8847 ETH_P_MPLS_UC = 0x8847
ETH_P_MVRP = 0x88f5 ETH_P_MVRP = 0x88f5
ETH_P_NCSI = 0x88f8 ETH_P_NCSI = 0x88f8
ETH_P_NSH = 0x894f
ETH_P_PAE = 0x888e ETH_P_PAE = 0x888e
ETH_P_PAUSE = 0x8808 ETH_P_PAUSE = 0x8808
ETH_P_PHONET = 0xf5 ETH_P_PHONET = 0xf5
@ -476,6 +481,7 @@ const (
FS_POLICY_FLAGS_PAD_8 = 0x1 FS_POLICY_FLAGS_PAD_8 = 0x1
FS_POLICY_FLAGS_PAD_MASK = 0x3 FS_POLICY_FLAGS_PAD_MASK = 0x3
FS_POLICY_FLAGS_VALID = 0x3 FS_POLICY_FLAGS_VALID = 0x3
F_ADD_SEALS = 0x409
F_DUPFD = 0x0 F_DUPFD = 0x0
F_DUPFD_CLOEXEC = 0x406 F_DUPFD_CLOEXEC = 0x406
F_EXLCK = 0x4 F_EXLCK = 0x4
@ -488,6 +494,9 @@ const (
F_GETOWN_EX = 0x10 F_GETOWN_EX = 0x10
F_GETPIPE_SZ = 0x408 F_GETPIPE_SZ = 0x408
F_GETSIG = 0xb F_GETSIG = 0xb
F_GET_FILE_RW_HINT = 0x40d
F_GET_RW_HINT = 0x40b
F_GET_SEALS = 0x40a
F_LOCK = 0x1 F_LOCK = 0x1
F_NOTIFY = 0x402 F_NOTIFY = 0x402
F_OFD_GETLK = 0x24 F_OFD_GETLK = 0x24
@ -495,6 +504,10 @@ const (
F_OFD_SETLKW = 0x26 F_OFD_SETLKW = 0x26
F_OK = 0x0 F_OK = 0x0
F_RDLCK = 0x0 F_RDLCK = 0x0
F_SEAL_GROW = 0x4
F_SEAL_SEAL = 0x1
F_SEAL_SHRINK = 0x2
F_SEAL_WRITE = 0x8
F_SETFD = 0x2 F_SETFD = 0x2
F_SETFL = 0x4 F_SETFL = 0x4
F_SETLEASE = 0x400 F_SETLEASE = 0x400
@ -506,6 +519,8 @@ const (
F_SETOWN_EX = 0xf F_SETOWN_EX = 0xf
F_SETPIPE_SZ = 0x407 F_SETPIPE_SZ = 0x407
F_SETSIG = 0xa F_SETSIG = 0xa
F_SET_FILE_RW_HINT = 0x40e
F_SET_RW_HINT = 0x40c
F_SHLCK = 0x8 F_SHLCK = 0x8
F_TEST = 0x3 F_TEST = 0x3
F_TLOCK = 0x2 F_TLOCK = 0x2
@ -561,6 +576,8 @@ const (
IFF_MASTER = 0x400 IFF_MASTER = 0x400
IFF_MULTICAST = 0x1000 IFF_MULTICAST = 0x1000
IFF_MULTI_QUEUE = 0x100 IFF_MULTI_QUEUE = 0x100
IFF_NAPI = 0x10
IFF_NAPI_FRAGS = 0x20
IFF_NOARP = 0x80 IFF_NOARP = 0x80
IFF_NOFILTER = 0x1000 IFF_NOFILTER = 0x1000
IFF_NOTRAILERS = 0x20 IFF_NOTRAILERS = 0x20
@ -845,6 +862,7 @@ const (
MADV_FREE = 0x8 MADV_FREE = 0x8
MADV_HUGEPAGE = 0xe MADV_HUGEPAGE = 0xe
MADV_HWPOISON = 0x64 MADV_HWPOISON = 0x64
MADV_KEEPONFORK = 0x13
MADV_MERGEABLE = 0xc MADV_MERGEABLE = 0xc
MADV_NOHUGEPAGE = 0xf MADV_NOHUGEPAGE = 0xf
MADV_NORMAL = 0x0 MADV_NORMAL = 0x0
@ -853,6 +871,7 @@ const (
MADV_SEQUENTIAL = 0x2 MADV_SEQUENTIAL = 0x2
MADV_UNMERGEABLE = 0xd MADV_UNMERGEABLE = 0xd
MADV_WILLNEED = 0x3 MADV_WILLNEED = 0x3
MADV_WIPEONFORK = 0x12
MAP_ANON = 0x20 MAP_ANON = 0x20
MAP_ANONYMOUS = 0x20 MAP_ANONYMOUS = 0x20
MAP_DENYWRITE = 0x800 MAP_DENYWRITE = 0x800
@ -898,6 +917,7 @@ const (
MSG_TRYHARD = 0x4 MSG_TRYHARD = 0x4
MSG_WAITALL = 0x100 MSG_WAITALL = 0x100
MSG_WAITFORONE = 0x10000 MSG_WAITFORONE = 0x10000
MSG_ZEROCOPY = 0x4000000
MS_ACTIVE = 0x40000000 MS_ACTIVE = 0x40000000
MS_ASYNC = 0x1 MS_ASYNC = 0x1
MS_BIND = 0x1000 MS_BIND = 0x1000
@ -997,6 +1017,7 @@ const (
NLM_F_EXCL = 0x200 NLM_F_EXCL = 0x200
NLM_F_MATCH = 0x200 NLM_F_MATCH = 0x200
NLM_F_MULTI = 0x2 NLM_F_MULTI = 0x2
NLM_F_NONREC = 0x100
NLM_F_REPLACE = 0x100 NLM_F_REPLACE = 0x100
NLM_F_REQUEST = 0x1 NLM_F_REQUEST = 0x1
NLM_F_ROOT = 0x100 NLM_F_ROOT = 0x100
@ -1195,6 +1216,11 @@ const (
PR_SET_TIMING = 0xe PR_SET_TIMING = 0xe
PR_SET_TSC = 0x1a PR_SET_TSC = 0x1a
PR_SET_UNALIGN = 0x6 PR_SET_UNALIGN = 0x6
PR_SVE_GET_VL = 0x33
PR_SVE_SET_VL = 0x32
PR_SVE_SET_VL_ONEXEC = 0x40000
PR_SVE_VL_INHERIT = 0x20000
PR_SVE_VL_LEN_MASK = 0xffff
PR_TASK_PERF_EVENTS_DISABLE = 0x1f PR_TASK_PERF_EVENTS_DISABLE = 0x1f
PR_TASK_PERF_EVENTS_ENABLE = 0x20 PR_TASK_PERF_EVENTS_ENABLE = 0x20
PR_TIMING_STATISTICAL = 0x0 PR_TIMING_STATISTICAL = 0x0
@ -1344,6 +1370,7 @@ const (
RTAX_ADVMSS = 0x8 RTAX_ADVMSS = 0x8
RTAX_CC_ALGO = 0x10 RTAX_CC_ALGO = 0x10
RTAX_CWND = 0x7 RTAX_CWND = 0x7
RTAX_FASTOPEN_NO_COOKIE = 0x11
RTAX_FEATURES = 0xc RTAX_FEATURES = 0xc
RTAX_FEATURE_ALLFRAG = 0x8 RTAX_FEATURE_ALLFRAG = 0x8
RTAX_FEATURE_ECN = 0x1 RTAX_FEATURE_ECN = 0x1
@ -1354,7 +1381,7 @@ const (
RTAX_INITCWND = 0xb RTAX_INITCWND = 0xb
RTAX_INITRWND = 0xe RTAX_INITRWND = 0xe
RTAX_LOCK = 0x1 RTAX_LOCK = 0x1
RTAX_MAX = 0x10 RTAX_MAX = 0x11
RTAX_MTU = 0x2 RTAX_MTU = 0x2
RTAX_QUICKACK = 0xf RTAX_QUICKACK = 0xf
RTAX_REORDERING = 0x9 RTAX_REORDERING = 0x9
@ -1628,6 +1655,7 @@ const (
SOL_SOCKET = 0x1 SOL_SOCKET = 0x1
SOL_TCP = 0x6 SOL_TCP = 0x6
SOL_TIPC = 0x10f SOL_TIPC = 0x10f
SOL_TLS = 0x11a
SOL_X25 = 0x106 SOL_X25 = 0x106
SOMAXCONN = 0x80 SOMAXCONN = 0x80
SO_ACCEPTCONN = 0x1e SO_ACCEPTCONN = 0x1e
@ -1696,6 +1724,7 @@ const (
SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3
SO_VM_SOCKETS_TRUSTED = 0x5 SO_VM_SOCKETS_TRUSTED = 0x5
SO_WIFI_STATUS = 0x29 SO_WIFI_STATUS = 0x29
SO_ZEROCOPY = 0x3c
SPLICE_F_GIFT = 0x8 SPLICE_F_GIFT = 0x8
SPLICE_F_MORE = 0x4 SPLICE_F_MORE = 0x4
SPLICE_F_MOVE = 0x1 SPLICE_F_MOVE = 0x1
@ -1792,6 +1821,8 @@ const (
TCP_MAXWIN = 0xffff TCP_MAXWIN = 0xffff
TCP_MAX_WINSHIFT = 0xe TCP_MAX_WINSHIFT = 0xe
TCP_MD5SIG = 0xe TCP_MD5SIG = 0xe
TCP_MD5SIG_EXT = 0x20
TCP_MD5SIG_FLAG_PREFIX = 0x1
TCP_MD5SIG_MAXKEYLEN = 0x50 TCP_MD5SIG_MAXKEYLEN = 0x50
TCP_MSS = 0x200 TCP_MSS = 0x200
TCP_MSS_DEFAULT = 0x218 TCP_MSS_DEFAULT = 0x218
@ -1812,6 +1843,7 @@ const (
TCP_THIN_DUPACK = 0x11 TCP_THIN_DUPACK = 0x11
TCP_THIN_LINEAR_TIMEOUTS = 0x10 TCP_THIN_LINEAR_TIMEOUTS = 0x10
TCP_TIMESTAMP = 0x18 TCP_TIMESTAMP = 0x18
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12 TCP_USER_TIMEOUT = 0x12
TCP_WINDOW_CLAMP = 0xa TCP_WINDOW_CLAMP = 0xa
TCSAFLUSH = 0x2 TCSAFLUSH = 0x2

View File

@ -308,6 +308,7 @@ const (
SYS_PWRITEV2 = 377 SYS_PWRITEV2 = 377
SYS_S390_GUARDED_STORAGE = 378 SYS_S390_GUARDED_STORAGE = 378
SYS_STATX = 379 SYS_STATX = 379
SYS_S390_STHYI = 380
SYS_SELECT = 142 SYS_SELECT = 142
SYS_GETRLIMIT = 191 SYS_GETRLIMIT = 191
SYS_LCHOWN = 198 SYS_LCHOWN = 198

View File

@ -465,7 +465,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -469,7 +469,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -469,7 +469,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -470,7 +470,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -468,7 +468,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -470,7 +470,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -470,7 +470,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -468,7 +468,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -471,7 +471,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -471,7 +471,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

View File

@ -470,7 +470,33 @@ const (
IFLA_LINKINFO = 0x12 IFLA_LINKINFO = 0x12
IFLA_NET_NS_PID = 0x13 IFLA_NET_NS_PID = 0x13
IFLA_IFALIAS = 0x14 IFLA_IFALIAS = 0x14
IFLA_MAX = 0x2c IFLA_NUM_VF = 0x15
IFLA_VFINFO_LIST = 0x16
IFLA_STATS64 = 0x17
IFLA_VF_PORTS = 0x18
IFLA_PORT_SELF = 0x19
IFLA_AF_SPEC = 0x1a
IFLA_GROUP = 0x1b
IFLA_NET_NS_FD = 0x1c
IFLA_EXT_MASK = 0x1d
IFLA_PROMISCUITY = 0x1e
IFLA_NUM_TX_QUEUES = 0x1f
IFLA_NUM_RX_QUEUES = 0x20
IFLA_CARRIER = 0x21
IFLA_PHYS_PORT_ID = 0x22
IFLA_CARRIER_CHANGES = 0x23
IFLA_PHYS_SWITCH_ID = 0x24
IFLA_LINK_NETNSID = 0x25
IFLA_PHYS_PORT_NAME = 0x26
IFLA_PROTO_DOWN = 0x27
IFLA_GSO_MAX_SEGS = 0x28
IFLA_GSO_MAX_SIZE = 0x29
IFLA_PAD = 0x2a
IFLA_XDP = 0x2b
IFLA_EVENT = 0x2c
IFLA_NEW_NETNSID = 0x2d
IFLA_IF_NETNSID = 0x2e
IFLA_MAX = 0x2e
RT_SCOPE_UNIVERSE = 0x0 RT_SCOPE_UNIVERSE = 0x0
RT_SCOPE_SITE = 0xc8 RT_SCOPE_SITE = 0xc8
RT_SCOPE_LINK = 0xfd RT_SCOPE_LINK = 0xfd

13
vendor/gopkg.in/yaml.v2/NOTICE generated vendored Normal file
View File

@ -0,0 +1,13 @@
Copyright 2011-2016 Canonical Ltd.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

53
vendor/gopkg.in/yaml.v2/apic.go generated vendored
View File

@ -2,7 +2,6 @@ package yaml
import ( import (
"io" "io"
"os"
) )
func yaml_insert_token(parser *yaml_parser_t, pos int, token *yaml_token_t) { func yaml_insert_token(parser *yaml_parser_t, pos int, token *yaml_token_t) {
@ -48,9 +47,9 @@ func yaml_string_read_handler(parser *yaml_parser_t, buffer []byte) (n int, err
return n, nil return n, nil
} }
// File read handler. // Reader read handler.
func yaml_file_read_handler(parser *yaml_parser_t, buffer []byte) (n int, err error) { func yaml_reader_read_handler(parser *yaml_parser_t, buffer []byte) (n int, err error) {
return parser.input_file.Read(buffer) return parser.input_reader.Read(buffer)
} }
// Set a string input. // Set a string input.
@ -64,12 +63,12 @@ func yaml_parser_set_input_string(parser *yaml_parser_t, input []byte) {
} }
// Set a file input. // Set a file input.
func yaml_parser_set_input_file(parser *yaml_parser_t, file *os.File) { func yaml_parser_set_input_reader(parser *yaml_parser_t, r io.Reader) {
if parser.read_handler != nil { if parser.read_handler != nil {
panic("must set the input source only once") panic("must set the input source only once")
} }
parser.read_handler = yaml_file_read_handler parser.read_handler = yaml_reader_read_handler
parser.input_file = file parser.input_reader = r
} }
// Set the source encoding. // Set the source encoding.
@ -81,14 +80,13 @@ func yaml_parser_set_encoding(parser *yaml_parser_t, encoding yaml_encoding_t) {
} }
// Create a new emitter object. // Create a new emitter object.
func yaml_emitter_initialize(emitter *yaml_emitter_t) bool { func yaml_emitter_initialize(emitter *yaml_emitter_t) {
*emitter = yaml_emitter_t{ *emitter = yaml_emitter_t{
buffer: make([]byte, output_buffer_size), buffer: make([]byte, output_buffer_size),
raw_buffer: make([]byte, 0, output_raw_buffer_size), raw_buffer: make([]byte, 0, output_raw_buffer_size),
states: make([]yaml_emitter_state_t, 0, initial_stack_size), states: make([]yaml_emitter_state_t, 0, initial_stack_size),
events: make([]yaml_event_t, 0, initial_queue_size), events: make([]yaml_event_t, 0, initial_queue_size),
} }
return true
} }
// Destroy an emitter object. // Destroy an emitter object.
@ -102,9 +100,10 @@ func yaml_string_write_handler(emitter *yaml_emitter_t, buffer []byte) error {
return nil return nil
} }
// File write handler. // yaml_writer_write_handler uses emitter.output_writer to write the
func yaml_file_write_handler(emitter *yaml_emitter_t, buffer []byte) error { // emitted text.
_, err := emitter.output_file.Write(buffer) func yaml_writer_write_handler(emitter *yaml_emitter_t, buffer []byte) error {
_, err := emitter.output_writer.Write(buffer)
return err return err
} }
@ -118,12 +117,12 @@ func yaml_emitter_set_output_string(emitter *yaml_emitter_t, output_buffer *[]by
} }
// Set a file output. // Set a file output.
func yaml_emitter_set_output_file(emitter *yaml_emitter_t, file io.Writer) { func yaml_emitter_set_output_writer(emitter *yaml_emitter_t, w io.Writer) {
if emitter.write_handler != nil { if emitter.write_handler != nil {
panic("must set the output target only once") panic("must set the output target only once")
} }
emitter.write_handler = yaml_file_write_handler emitter.write_handler = yaml_writer_write_handler
emitter.output_file = file emitter.output_writer = w
} }
// Set the output encoding. // Set the output encoding.
@ -252,41 +251,41 @@ func yaml_emitter_set_break(emitter *yaml_emitter_t, line_break yaml_break_t) {
// //
// Create STREAM-START. // Create STREAM-START.
func yaml_stream_start_event_initialize(event *yaml_event_t, encoding yaml_encoding_t) bool { func yaml_stream_start_event_initialize(event *yaml_event_t, encoding yaml_encoding_t) {
*event = yaml_event_t{ *event = yaml_event_t{
typ: yaml_STREAM_START_EVENT, typ: yaml_STREAM_START_EVENT,
encoding: encoding, encoding: encoding,
} }
return true
} }
// Create STREAM-END. // Create STREAM-END.
func yaml_stream_end_event_initialize(event *yaml_event_t) bool { func yaml_stream_end_event_initialize(event *yaml_event_t) {
*event = yaml_event_t{ *event = yaml_event_t{
typ: yaml_STREAM_END_EVENT, typ: yaml_STREAM_END_EVENT,
} }
return true
} }
// Create DOCUMENT-START. // Create DOCUMENT-START.
func yaml_document_start_event_initialize(event *yaml_event_t, version_directive *yaml_version_directive_t, func yaml_document_start_event_initialize(
tag_directives []yaml_tag_directive_t, implicit bool) bool { event *yaml_event_t,
version_directive *yaml_version_directive_t,
tag_directives []yaml_tag_directive_t,
implicit bool,
) {
*event = yaml_event_t{ *event = yaml_event_t{
typ: yaml_DOCUMENT_START_EVENT, typ: yaml_DOCUMENT_START_EVENT,
version_directive: version_directive, version_directive: version_directive,
tag_directives: tag_directives, tag_directives: tag_directives,
implicit: implicit, implicit: implicit,
} }
return true
} }
// Create DOCUMENT-END. // Create DOCUMENT-END.
func yaml_document_end_event_initialize(event *yaml_event_t, implicit bool) bool { func yaml_document_end_event_initialize(event *yaml_event_t, implicit bool) {
*event = yaml_event_t{ *event = yaml_event_t{
typ: yaml_DOCUMENT_END_EVENT, typ: yaml_DOCUMENT_END_EVENT,
implicit: implicit, implicit: implicit,
} }
return true
} }
///* ///*
@ -348,7 +347,7 @@ func yaml_sequence_end_event_initialize(event *yaml_event_t) bool {
} }
// Create MAPPING-START. // Create MAPPING-START.
func yaml_mapping_start_event_initialize(event *yaml_event_t, anchor, tag []byte, implicit bool, style yaml_mapping_style_t) bool { func yaml_mapping_start_event_initialize(event *yaml_event_t, anchor, tag []byte, implicit bool, style yaml_mapping_style_t) {
*event = yaml_event_t{ *event = yaml_event_t{
typ: yaml_MAPPING_START_EVENT, typ: yaml_MAPPING_START_EVENT,
anchor: anchor, anchor: anchor,
@ -356,15 +355,13 @@ func yaml_mapping_start_event_initialize(event *yaml_event_t, anchor, tag []byte
implicit: implicit, implicit: implicit,
style: yaml_style_t(style), style: yaml_style_t(style),
} }
return true
} }
// Create MAPPING-END. // Create MAPPING-END.
func yaml_mapping_end_event_initialize(event *yaml_event_t) bool { func yaml_mapping_end_event_initialize(event *yaml_event_t) {
*event = yaml_event_t{ *event = yaml_event_t{
typ: yaml_MAPPING_END_EVENT, typ: yaml_MAPPING_END_EVENT,
} }
return true
} }
// Destroy an event object. // Destroy an event object.

207
vendor/gopkg.in/yaml.v2/decode.go generated vendored
View File

@ -4,6 +4,7 @@ import (
"encoding" "encoding"
"encoding/base64" "encoding/base64"
"fmt" "fmt"
"io"
"math" "math"
"reflect" "reflect"
"strconv" "strconv"
@ -22,6 +23,8 @@ type node struct {
kind int kind int
line, column int line, column int
tag string tag string
// For an alias node, alias holds the resolved alias.
alias *node
value string value string
implicit bool implicit bool
children []*node children []*node
@ -35,6 +38,7 @@ type parser struct {
parser yaml_parser_t parser yaml_parser_t
event yaml_event_t event yaml_event_t
doc *node doc *node
doneInit bool
} }
func newParser(b []byte) *parser { func newParser(b []byte) *parser {
@ -42,21 +46,30 @@ func newParser(b []byte) *parser {
if !yaml_parser_initialize(&p.parser) { if !yaml_parser_initialize(&p.parser) {
panic("failed to initialize YAML emitter") panic("failed to initialize YAML emitter")
} }
if len(b) == 0 { if len(b) == 0 {
b = []byte{'\n'} b = []byte{'\n'}
} }
yaml_parser_set_input_string(&p.parser, b) yaml_parser_set_input_string(&p.parser, b)
p.skip()
if p.event.typ != yaml_STREAM_START_EVENT {
panic("expected stream start event, got " + strconv.Itoa(int(p.event.typ)))
}
p.skip()
return &p return &p
} }
func newParserFromReader(r io.Reader) *parser {
p := parser{}
if !yaml_parser_initialize(&p.parser) {
panic("failed to initialize YAML emitter")
}
yaml_parser_set_input_reader(&p.parser, r)
return &p
}
func (p *parser) init() {
if p.doneInit {
return
}
p.expect(yaml_STREAM_START_EVENT)
p.doneInit = true
}
func (p *parser) destroy() { func (p *parser) destroy() {
if p.event.typ != yaml_NO_EVENT { if p.event.typ != yaml_NO_EVENT {
yaml_event_delete(&p.event) yaml_event_delete(&p.event)
@ -64,16 +77,35 @@ func (p *parser) destroy() {
yaml_parser_delete(&p.parser) yaml_parser_delete(&p.parser)
} }
func (p *parser) skip() { // expect consumes an event from the event stream and
if p.event.typ != yaml_NO_EVENT { // checks that it's of the expected type.
func (p *parser) expect(e yaml_event_type_t) {
if p.event.typ == yaml_NO_EVENT {
if !yaml_parser_parse(&p.parser, &p.event) {
p.fail()
}
}
if p.event.typ == yaml_STREAM_END_EVENT { if p.event.typ == yaml_STREAM_END_EVENT {
failf("attempted to go past the end of stream; corrupted value?") failf("attempted to go past the end of stream; corrupted value?")
} }
if p.event.typ != e {
p.parser.problem = fmt.Sprintf("expected %s event but got %s", e, p.event.typ)
p.fail()
}
yaml_event_delete(&p.event) yaml_event_delete(&p.event)
p.event.typ = yaml_NO_EVENT
}
// peek peeks at the next event in the event stream,
// puts the results into p.event and returns the event type.
func (p *parser) peek() yaml_event_type_t {
if p.event.typ != yaml_NO_EVENT {
return p.event.typ
} }
if !yaml_parser_parse(&p.parser, &p.event) { if !yaml_parser_parse(&p.parser, &p.event) {
p.fail() p.fail()
} }
return p.event.typ
} }
func (p *parser) fail() { func (p *parser) fail() {
@ -103,7 +135,8 @@ func (p *parser) anchor(n *node, anchor []byte) {
} }
func (p *parser) parse() *node { func (p *parser) parse() *node {
switch p.event.typ { p.init()
switch p.peek() {
case yaml_SCALAR_EVENT: case yaml_SCALAR_EVENT:
return p.scalar() return p.scalar()
case yaml_ALIAS_EVENT: case yaml_ALIAS_EVENT:
@ -118,7 +151,7 @@ func (p *parser) parse() *node {
// Happens when attempting to decode an empty buffer. // Happens when attempting to decode an empty buffer.
return nil return nil
default: default:
panic("attempted to parse unknown event: " + strconv.Itoa(int(p.event.typ))) panic("attempted to parse unknown event: " + p.event.typ.String())
} }
} }
@ -134,19 +167,20 @@ func (p *parser) document() *node {
n := p.node(documentNode) n := p.node(documentNode)
n.anchors = make(map[string]*node) n.anchors = make(map[string]*node)
p.doc = n p.doc = n
p.skip() p.expect(yaml_DOCUMENT_START_EVENT)
n.children = append(n.children, p.parse()) n.children = append(n.children, p.parse())
if p.event.typ != yaml_DOCUMENT_END_EVENT { p.expect(yaml_DOCUMENT_END_EVENT)
panic("expected end of document event but got " + strconv.Itoa(int(p.event.typ)))
}
p.skip()
return n return n
} }
func (p *parser) alias() *node { func (p *parser) alias() *node {
n := p.node(aliasNode) n := p.node(aliasNode)
n.value = string(p.event.anchor) n.value = string(p.event.anchor)
p.skip() n.alias = p.doc.anchors[n.value]
if n.alias == nil {
failf("unknown anchor '%s' referenced", n.value)
}
p.expect(yaml_ALIAS_EVENT)
return n return n
} }
@ -156,29 +190,29 @@ func (p *parser) scalar() *node {
n.tag = string(p.event.tag) n.tag = string(p.event.tag)
n.implicit = p.event.implicit n.implicit = p.event.implicit
p.anchor(n, p.event.anchor) p.anchor(n, p.event.anchor)
p.skip() p.expect(yaml_SCALAR_EVENT)
return n return n
} }
func (p *parser) sequence() *node { func (p *parser) sequence() *node {
n := p.node(sequenceNode) n := p.node(sequenceNode)
p.anchor(n, p.event.anchor) p.anchor(n, p.event.anchor)
p.skip() p.expect(yaml_SEQUENCE_START_EVENT)
for p.event.typ != yaml_SEQUENCE_END_EVENT { for p.peek() != yaml_SEQUENCE_END_EVENT {
n.children = append(n.children, p.parse()) n.children = append(n.children, p.parse())
} }
p.skip() p.expect(yaml_SEQUENCE_END_EVENT)
return n return n
} }
func (p *parser) mapping() *node { func (p *parser) mapping() *node {
n := p.node(mappingNode) n := p.node(mappingNode)
p.anchor(n, p.event.anchor) p.anchor(n, p.event.anchor)
p.skip() p.expect(yaml_MAPPING_START_EVENT)
for p.event.typ != yaml_MAPPING_END_EVENT { for p.peek() != yaml_MAPPING_END_EVENT {
n.children = append(n.children, p.parse(), p.parse()) n.children = append(n.children, p.parse(), p.parse())
} }
p.skip() p.expect(yaml_MAPPING_END_EVENT)
return n return n
} }
@ -187,7 +221,7 @@ func (p *parser) mapping() *node {
type decoder struct { type decoder struct {
doc *node doc *node
aliases map[string]bool aliases map[*node]bool
mapType reflect.Type mapType reflect.Type
terrors []string terrors []string
strict bool strict bool
@ -198,11 +232,13 @@ var (
durationType = reflect.TypeOf(time.Duration(0)) durationType = reflect.TypeOf(time.Duration(0))
defaultMapType = reflect.TypeOf(map[interface{}]interface{}{}) defaultMapType = reflect.TypeOf(map[interface{}]interface{}{})
ifaceType = defaultMapType.Elem() ifaceType = defaultMapType.Elem()
timeType = reflect.TypeOf(time.Time{})
ptrTimeType = reflect.TypeOf(&time.Time{})
) )
func newDecoder(strict bool) *decoder { func newDecoder(strict bool) *decoder {
d := &decoder{mapType: defaultMapType, strict: strict} d := &decoder{mapType: defaultMapType, strict: strict}
d.aliases = make(map[string]bool) d.aliases = make(map[*node]bool)
return d return d
} }
@ -308,16 +344,13 @@ func (d *decoder) document(n *node, out reflect.Value) (good bool) {
} }
func (d *decoder) alias(n *node, out reflect.Value) (good bool) { func (d *decoder) alias(n *node, out reflect.Value) (good bool) {
an, ok := d.doc.anchors[n.value] if d.aliases[n] {
if !ok { // TODO this could actually be allowed in some circumstances.
failf("unknown anchor '%s' referenced", n.value)
}
if d.aliases[n.value] {
failf("anchor '%s' value contains itself", n.value) failf("anchor '%s' value contains itself", n.value)
} }
d.aliases[n.value] = true d.aliases[n] = true
good = d.unmarshal(an, out) good = d.unmarshal(n.alias, out)
delete(d.aliases, n.value) delete(d.aliases, n)
return good return good
} }
@ -329,7 +362,7 @@ func resetMap(out reflect.Value) {
} }
} }
func (d *decoder) scalar(n *node, out reflect.Value) (good bool) { func (d *decoder) scalar(n *node, out reflect.Value) bool {
var tag string var tag string
var resolved interface{} var resolved interface{}
if n.tag == "" && !n.implicit { if n.tag == "" && !n.implicit {
@ -353,9 +386,26 @@ func (d *decoder) scalar(n *node, out reflect.Value) (good bool) {
} }
return true return true
} }
if s, ok := resolved.(string); ok && out.CanAddr() { if resolvedv := reflect.ValueOf(resolved); out.Type() == resolvedv.Type() {
if u, ok := out.Addr().Interface().(encoding.TextUnmarshaler); ok { // We've resolved to exactly the type we want, so use that.
err := u.UnmarshalText([]byte(s)) out.Set(resolvedv)
return true
}
// Perhaps we can use the value as a TextUnmarshaler to
// set its value.
if out.CanAddr() {
u, ok := out.Addr().Interface().(encoding.TextUnmarshaler)
if ok {
var text []byte
if tag == yaml_BINARY_TAG {
text = []byte(resolved.(string))
} else {
// We let any value be unmarshaled into TextUnmarshaler.
// That might be more lax than we'd like, but the
// TextUnmarshaler itself should bowl out any dubious values.
text = []byte(n.value)
}
err := u.UnmarshalText(text)
if err != nil { if err != nil {
fail(err) fail(err)
} }
@ -366,46 +416,53 @@ func (d *decoder) scalar(n *node, out reflect.Value) (good bool) {
case reflect.String: case reflect.String:
if tag == yaml_BINARY_TAG { if tag == yaml_BINARY_TAG {
out.SetString(resolved.(string)) out.SetString(resolved.(string))
good = true return true
} else if resolved != nil { }
if resolved != nil {
out.SetString(n.value) out.SetString(n.value)
good = true return true
} }
case reflect.Interface: case reflect.Interface:
if resolved == nil { if resolved == nil {
out.Set(reflect.Zero(out.Type())) out.Set(reflect.Zero(out.Type()))
} else if tag == yaml_TIMESTAMP_TAG {
// It looks like a timestamp but for backward compatibility
// reasons we set it as a string, so that code that unmarshals
// timestamp-like values into interface{} will continue to
// see a string and not a time.Time.
out.Set(reflect.ValueOf(n.value))
} else { } else {
out.Set(reflect.ValueOf(resolved)) out.Set(reflect.ValueOf(resolved))
} }
good = true return true
case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
switch resolved := resolved.(type) { switch resolved := resolved.(type) {
case int: case int:
if !out.OverflowInt(int64(resolved)) { if !out.OverflowInt(int64(resolved)) {
out.SetInt(int64(resolved)) out.SetInt(int64(resolved))
good = true return true
} }
case int64: case int64:
if !out.OverflowInt(resolved) { if !out.OverflowInt(resolved) {
out.SetInt(resolved) out.SetInt(resolved)
good = true return true
} }
case uint64: case uint64:
if resolved <= math.MaxInt64 && !out.OverflowInt(int64(resolved)) { if resolved <= math.MaxInt64 && !out.OverflowInt(int64(resolved)) {
out.SetInt(int64(resolved)) out.SetInt(int64(resolved))
good = true return true
} }
case float64: case float64:
if resolved <= math.MaxInt64 && !out.OverflowInt(int64(resolved)) { if resolved <= math.MaxInt64 && !out.OverflowInt(int64(resolved)) {
out.SetInt(int64(resolved)) out.SetInt(int64(resolved))
good = true return true
} }
case string: case string:
if out.Type() == durationType { if out.Type() == durationType {
d, err := time.ParseDuration(resolved) d, err := time.ParseDuration(resolved)
if err == nil { if err == nil {
out.SetInt(int64(d)) out.SetInt(int64(d))
good = true return true
} }
} }
} }
@ -414,44 +471,49 @@ func (d *decoder) scalar(n *node, out reflect.Value) (good bool) {
case int: case int:
if resolved >= 0 && !out.OverflowUint(uint64(resolved)) { if resolved >= 0 && !out.OverflowUint(uint64(resolved)) {
out.SetUint(uint64(resolved)) out.SetUint(uint64(resolved))
good = true return true
} }
case int64: case int64:
if resolved >= 0 && !out.OverflowUint(uint64(resolved)) { if resolved >= 0 && !out.OverflowUint(uint64(resolved)) {
out.SetUint(uint64(resolved)) out.SetUint(uint64(resolved))
good = true return true
} }
case uint64: case uint64:
if !out.OverflowUint(uint64(resolved)) { if !out.OverflowUint(uint64(resolved)) {
out.SetUint(uint64(resolved)) out.SetUint(uint64(resolved))
good = true return true
} }
case float64: case float64:
if resolved <= math.MaxUint64 && !out.OverflowUint(uint64(resolved)) { if resolved <= math.MaxUint64 && !out.OverflowUint(uint64(resolved)) {
out.SetUint(uint64(resolved)) out.SetUint(uint64(resolved))
good = true return true
} }
} }
case reflect.Bool: case reflect.Bool:
switch resolved := resolved.(type) { switch resolved := resolved.(type) {
case bool: case bool:
out.SetBool(resolved) out.SetBool(resolved)
good = true return true
} }
case reflect.Float32, reflect.Float64: case reflect.Float32, reflect.Float64:
switch resolved := resolved.(type) { switch resolved := resolved.(type) {
case int: case int:
out.SetFloat(float64(resolved)) out.SetFloat(float64(resolved))
good = true return true
case int64: case int64:
out.SetFloat(float64(resolved)) out.SetFloat(float64(resolved))
good = true return true
case uint64: case uint64:
out.SetFloat(float64(resolved)) out.SetFloat(float64(resolved))
good = true return true
case float64: case float64:
out.SetFloat(resolved) out.SetFloat(resolved)
good = true return true
}
case reflect.Struct:
if resolvedv := reflect.ValueOf(resolved); out.Type() == resolvedv.Type() {
out.Set(resolvedv)
return true
} }
case reflect.Ptr: case reflect.Ptr:
if out.Type().Elem() == reflect.TypeOf(resolved) { if out.Type().Elem() == reflect.TypeOf(resolved) {
@ -459,13 +521,11 @@ func (d *decoder) scalar(n *node, out reflect.Value) (good bool) {
elem := reflect.New(out.Type().Elem()) elem := reflect.New(out.Type().Elem())
elem.Elem().Set(reflect.ValueOf(resolved)) elem.Elem().Set(reflect.ValueOf(resolved))
out.Set(elem) out.Set(elem)
good = true return true
} }
} }
if !good {
d.terror(n, tag, out) d.terror(n, tag, out)
} return false
return good
} }
func settableValueOf(i interface{}) reflect.Value { func settableValueOf(i interface{}) reflect.Value {
@ -561,7 +621,7 @@ func (d *decoder) mapping(n *node, out reflect.Value) (good bool) {
} }
e := reflect.New(et).Elem() e := reflect.New(et).Elem()
if d.unmarshal(n.children[i+1], e) { if d.unmarshal(n.children[i+1], e) {
out.SetMapIndex(k, e) d.setMapIndex(n.children[i+1], out, k, e)
} }
} }
} }
@ -569,6 +629,14 @@ func (d *decoder) mapping(n *node, out reflect.Value) (good bool) {
return true return true
} }
func (d *decoder) setMapIndex(n *node, out, k, v reflect.Value) {
if d.strict && out.MapIndex(k) != zeroValue {
d.terrors = append(d.terrors, fmt.Sprintf("line %d: key %#v already set in map", n.line+1, k.Interface()))
return
}
out.SetMapIndex(k, v)
}
func (d *decoder) mappingSlice(n *node, out reflect.Value) (good bool) { func (d *decoder) mappingSlice(n *node, out reflect.Value) (good bool) {
outt := out.Type() outt := out.Type()
if outt.Elem() != mapItemType { if outt.Elem() != mapItemType {
@ -616,6 +684,10 @@ func (d *decoder) mappingStruct(n *node, out reflect.Value) (good bool) {
elemType = inlineMap.Type().Elem() elemType = inlineMap.Type().Elem()
} }
var doneFields []bool
if d.strict {
doneFields = make([]bool, len(sinfo.FieldsList))
}
for i := 0; i < l; i += 2 { for i := 0; i < l; i += 2 {
ni := n.children[i] ni := n.children[i]
if isMerge(ni) { if isMerge(ni) {
@ -626,6 +698,13 @@ func (d *decoder) mappingStruct(n *node, out reflect.Value) (good bool) {
continue continue
} }
if info, ok := sinfo.FieldsMap[name.String()]; ok { if info, ok := sinfo.FieldsMap[name.String()]; ok {
if d.strict {
if doneFields[info.Id] {
d.terrors = append(d.terrors, fmt.Sprintf("line %d: field %s already set in type %s", ni.line+1, name.String(), out.Type()))
continue
}
doneFields[info.Id] = true
}
var field reflect.Value var field reflect.Value
if info.Inline == nil { if info.Inline == nil {
field = out.Field(info.Num) field = out.Field(info.Num)
@ -639,9 +718,9 @@ func (d *decoder) mappingStruct(n *node, out reflect.Value) (good bool) {
} }
value := reflect.New(elemType).Elem() value := reflect.New(elemType).Elem()
d.unmarshal(n.children[i+1], value) d.unmarshal(n.children[i+1], value)
inlineMap.SetMapIndex(name, value) d.setMapIndex(n.children[i+1], inlineMap, name, value)
} else if d.strict { } else if d.strict {
d.terrors = append(d.terrors, fmt.Sprintf("line %d: field %s not found in struct %s", ni.line+1, name.String(), out.Type())) d.terrors = append(d.terrors, fmt.Sprintf("line %d: field %s not found in type %s", ni.line+1, name.String(), out.Type()))
} }
} }
return true return true

View File

@ -2,6 +2,7 @@ package yaml
import ( import (
"bytes" "bytes"
"fmt"
) )
// Flush the buffer if needed. // Flush the buffer if needed.
@ -664,7 +665,7 @@ func yaml_emitter_emit_node(emitter *yaml_emitter_t, event *yaml_event_t,
return yaml_emitter_emit_mapping_start(emitter, event) return yaml_emitter_emit_mapping_start(emitter, event)
default: default:
return yaml_emitter_set_emitter_error(emitter, return yaml_emitter_set_emitter_error(emitter,
"expected SCALAR, SEQUENCE-START, MAPPING-START, or ALIAS") fmt.Sprintf("expected SCALAR, SEQUENCE-START, MAPPING-START, or ALIAS, but got %v", event.typ))
} }
} }

126
vendor/gopkg.in/yaml.v2/encode.go generated vendored
View File

@ -3,12 +3,14 @@ package yaml
import ( import (
"encoding" "encoding"
"fmt" "fmt"
"io"
"reflect" "reflect"
"regexp" "regexp"
"sort" "sort"
"strconv" "strconv"
"strings" "strings"
"time" "time"
"unicode/utf8"
) )
type encoder struct { type encoder struct {
@ -16,25 +18,39 @@ type encoder struct {
event yaml_event_t event yaml_event_t
out []byte out []byte
flow bool flow bool
// doneInit holds whether the initial stream_start_event has been
// emitted.
doneInit bool
} }
func newEncoder() (e *encoder) { func newEncoder() *encoder {
e = &encoder{} e := &encoder{}
e.must(yaml_emitter_initialize(&e.emitter)) yaml_emitter_initialize(&e.emitter)
yaml_emitter_set_output_string(&e.emitter, &e.out) yaml_emitter_set_output_string(&e.emitter, &e.out)
yaml_emitter_set_unicode(&e.emitter, true) yaml_emitter_set_unicode(&e.emitter, true)
e.must(yaml_stream_start_event_initialize(&e.event, yaml_UTF8_ENCODING))
e.emit()
e.must(yaml_document_start_event_initialize(&e.event, nil, nil, true))
e.emit()
return e return e
} }
func (e *encoder) finish() { func newEncoderWithWriter(w io.Writer) *encoder {
e.must(yaml_document_end_event_initialize(&e.event, true)) e := &encoder{}
yaml_emitter_initialize(&e.emitter)
yaml_emitter_set_output_writer(&e.emitter, w)
yaml_emitter_set_unicode(&e.emitter, true)
return e
}
func (e *encoder) init() {
if e.doneInit {
return
}
yaml_stream_start_event_initialize(&e.event, yaml_UTF8_ENCODING)
e.emit() e.emit()
e.doneInit = true
}
func (e *encoder) finish() {
e.emitter.open_ended = false e.emitter.open_ended = false
e.must(yaml_stream_end_event_initialize(&e.event)) yaml_stream_end_event_initialize(&e.event)
e.emit() e.emit()
} }
@ -44,9 +60,7 @@ func (e *encoder) destroy() {
func (e *encoder) emit() { func (e *encoder) emit() {
// This will internally delete the e.event value. // This will internally delete the e.event value.
if !yaml_emitter_emit(&e.emitter, &e.event) && e.event.typ != yaml_DOCUMENT_END_EVENT && e.event.typ != yaml_STREAM_END_EVENT { e.must(yaml_emitter_emit(&e.emitter, &e.event))
e.must(false)
}
} }
func (e *encoder) must(ok bool) { func (e *encoder) must(ok bool) {
@ -59,13 +73,28 @@ func (e *encoder) must(ok bool) {
} }
} }
func (e *encoder) marshalDoc(tag string, in reflect.Value) {
e.init()
yaml_document_start_event_initialize(&e.event, nil, nil, true)
e.emit()
e.marshal(tag, in)
yaml_document_end_event_initialize(&e.event, true)
e.emit()
}
func (e *encoder) marshal(tag string, in reflect.Value) { func (e *encoder) marshal(tag string, in reflect.Value) {
if !in.IsValid() { if !in.IsValid() || in.Kind() == reflect.Ptr && in.IsNil() {
e.nilv() e.nilv()
return return
} }
iface := in.Interface() iface := in.Interface()
if m, ok := iface.(Marshaler); ok { switch m := iface.(type) {
case time.Time, *time.Time:
// Although time.Time implements TextMarshaler,
// we don't want to treat it as a string for YAML
// purposes because YAML has special support for
// timestamps.
case Marshaler:
v, err := m.MarshalYAML() v, err := m.MarshalYAML()
if err != nil { if err != nil {
fail(err) fail(err)
@ -75,30 +104,33 @@ func (e *encoder) marshal(tag string, in reflect.Value) {
return return
} }
in = reflect.ValueOf(v) in = reflect.ValueOf(v)
} else if m, ok := iface.(encoding.TextMarshaler); ok { case encoding.TextMarshaler:
text, err := m.MarshalText() text, err := m.MarshalText()
if err != nil { if err != nil {
fail(err) fail(err)
} }
in = reflect.ValueOf(string(text)) in = reflect.ValueOf(string(text))
case nil:
e.nilv()
return
} }
switch in.Kind() { switch in.Kind() {
case reflect.Interface: case reflect.Interface:
if in.IsNil() {
e.nilv()
} else {
e.marshal(tag, in.Elem()) e.marshal(tag, in.Elem())
}
case reflect.Map: case reflect.Map:
e.mapv(tag, in) e.mapv(tag, in)
case reflect.Ptr: case reflect.Ptr:
if in.IsNil() { if in.Type() == ptrTimeType {
e.nilv() e.timev(tag, in.Elem())
} else { } else {
e.marshal(tag, in.Elem()) e.marshal(tag, in.Elem())
} }
case reflect.Struct: case reflect.Struct:
if in.Type() == timeType {
e.timev(tag, in)
} else {
e.structv(tag, in) e.structv(tag, in)
}
case reflect.Slice: case reflect.Slice:
if in.Type().Elem() == mapItemType { if in.Type().Elem() == mapItemType {
e.itemsv(tag, in) e.itemsv(tag, in)
@ -191,10 +223,10 @@ func (e *encoder) mappingv(tag string, f func()) {
e.flow = false e.flow = false
style = yaml_FLOW_MAPPING_STYLE style = yaml_FLOW_MAPPING_STYLE
} }
e.must(yaml_mapping_start_event_initialize(&e.event, nil, []byte(tag), implicit, style)) yaml_mapping_start_event_initialize(&e.event, nil, []byte(tag), implicit, style)
e.emit() e.emit()
f() f()
e.must(yaml_mapping_end_event_initialize(&e.event)) yaml_mapping_end_event_initialize(&e.event)
e.emit() e.emit()
} }
@ -240,23 +272,36 @@ var base60float = regexp.MustCompile(`^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+(?:\.[0
func (e *encoder) stringv(tag string, in reflect.Value) { func (e *encoder) stringv(tag string, in reflect.Value) {
var style yaml_scalar_style_t var style yaml_scalar_style_t
s := in.String() s := in.String()
rtag, rs := resolve("", s) canUsePlain := true
if rtag == yaml_BINARY_TAG { switch {
if tag == "" || tag == yaml_STR_TAG { case !utf8.ValidString(s):
tag = rtag if tag == yaml_BINARY_TAG {
s = rs.(string)
} else if tag == yaml_BINARY_TAG {
failf("explicitly tagged !!binary data must be base64-encoded") failf("explicitly tagged !!binary data must be base64-encoded")
} else { }
if tag != "" {
failf("cannot marshal invalid UTF-8 data as %s", shortTag(tag)) failf("cannot marshal invalid UTF-8 data as %s", shortTag(tag))
} }
// It can't be encoded directly as YAML so use a binary tag
// and encode it as base64.
tag = yaml_BINARY_TAG
s = encodeBase64(s)
case tag == "":
// Check to see if it would resolve to a specific
// tag when encoded unquoted. If it doesn't,
// there's no need to quote it.
rtag, _ := resolve("", s)
canUsePlain = rtag == yaml_STR_TAG && !isBase60Float(s)
} }
if tag == "" && (rtag != yaml_STR_TAG || isBase60Float(s)) { // Note: it's possible for user code to emit invalid YAML
style = yaml_DOUBLE_QUOTED_SCALAR_STYLE // if they explicitly specify a tag and a string containing
} else if strings.Contains(s, "\n") { // text that's incompatible with that tag.
switch {
case strings.Contains(s, "\n"):
style = yaml_LITERAL_SCALAR_STYLE style = yaml_LITERAL_SCALAR_STYLE
} else { case canUsePlain:
style = yaml_PLAIN_SCALAR_STYLE style = yaml_PLAIN_SCALAR_STYLE
default:
style = yaml_DOUBLE_QUOTED_SCALAR_STYLE
} }
e.emitScalar(s, "", tag, style) e.emitScalar(s, "", tag, style)
} }
@ -281,9 +326,16 @@ func (e *encoder) uintv(tag string, in reflect.Value) {
e.emitScalar(s, "", tag, yaml_PLAIN_SCALAR_STYLE) e.emitScalar(s, "", tag, yaml_PLAIN_SCALAR_STYLE)
} }
func (e *encoder) timev(tag string, in reflect.Value) {
t := in.Interface().(time.Time)
if tag == "" {
tag = yaml_TIMESTAMP_TAG
}
e.emitScalar(t.Format(time.RFC3339Nano), "", tag, yaml_PLAIN_SCALAR_STYLE)
}
func (e *encoder) floatv(tag string, in reflect.Value) { func (e *encoder) floatv(tag string, in reflect.Value) {
// FIXME: Handle 64 bits here. s := strconv.FormatFloat(in.Float(), 'g', -1, 64)
s := strconv.FormatFloat(float64(in.Float()), 'g', -1, 32)
switch s { switch s {
case "+Inf": case "+Inf":
s = ".inf" s = ".inf"

57
vendor/gopkg.in/yaml.v2/resolve.go generated vendored
View File

@ -6,7 +6,7 @@ import (
"regexp" "regexp"
"strconv" "strconv"
"strings" "strings"
"unicode/utf8" "time"
) )
type resolveMapItem struct { type resolveMapItem struct {
@ -75,7 +75,7 @@ func longTag(tag string) string {
func resolvableTag(tag string) bool { func resolvableTag(tag string) bool {
switch tag { switch tag {
case "", yaml_STR_TAG, yaml_BOOL_TAG, yaml_INT_TAG, yaml_FLOAT_TAG, yaml_NULL_TAG: case "", yaml_STR_TAG, yaml_BOOL_TAG, yaml_INT_TAG, yaml_FLOAT_TAG, yaml_NULL_TAG, yaml_TIMESTAMP_TAG:
return true return true
} }
return false return false
@ -125,6 +125,15 @@ func resolve(tag string, in string) (rtag string, out interface{}) {
case 'D', 'S': case 'D', 'S':
// Int, float, or timestamp. // Int, float, or timestamp.
// Only try values as a timestamp if the value is unquoted or there's an explicit
// !!timestamp tag.
if tag == "" || tag == yaml_TIMESTAMP_TAG {
t, ok := parseTimestamp(in)
if ok {
return yaml_TIMESTAMP_TAG, t
}
}
plain := strings.Replace(in, "_", "", -1) plain := strings.Replace(in, "_", "", -1)
intv, err := strconv.ParseInt(plain, 0, 64) intv, err := strconv.ParseInt(plain, 0, 64)
if err == nil { if err == nil {
@ -167,19 +176,11 @@ func resolve(tag string, in string) (rtag string, out interface{}) {
} }
} }
} }
// XXX Handle timestamps here.
default: default:
panic("resolveTable item not yet handled: " + string(rune(hint)) + " (with " + in + ")") panic("resolveTable item not yet handled: " + string(rune(hint)) + " (with " + in + ")")
} }
} }
if tag == yaml_BINARY_TAG {
return yaml_BINARY_TAG, in
}
if utf8.ValidString(in) {
return yaml_STR_TAG, in return yaml_STR_TAG, in
}
return yaml_BINARY_TAG, encodeBase64(in)
} }
// encodeBase64 encodes s as base64 that is broken up into multiple lines // encodeBase64 encodes s as base64 that is broken up into multiple lines
@ -206,3 +207,39 @@ func encodeBase64(s string) string {
} }
return string(out[:k]) return string(out[:k])
} }
// This is a subset of the formats allowed by the regular expression
// defined at http://yaml.org/type/timestamp.html.
var allowedTimestampFormats = []string{
"2006-1-2T15:4:5Z07:00",
"2006-1-2t15:4:5Z07:00", // RFC3339 with lower-case "t".
"2006-1-2 15:4:5", // space separated with no time zone
"2006-1-2", // date only
// Notable exception: time.Parse cannot handle: "2001-12-14 21:59:43.10 -5"
// from the set of examples.
}
// parseTimestamp parses s as a timestamp string and
// returns the timestamp and reports whether it succeeded.
// Timestamp formats are defined at http://yaml.org/type/timestamp.html
func parseTimestamp(s string) (time.Time, bool) {
// TODO write code to check all the formats supported by
// http://yaml.org/type/timestamp.html instead of using time.Parse.
// Quick check: all date formats start with YYYY-.
i := 0
for ; i < len(s); i++ {
if c := s[i]; c < '0' || c > '9' {
break
}
}
if i != 4 || i == len(s) || s[i] != '-' {
return time.Time{}, false
}
for _, format := range allowedTimestampFormats {
if t, err := time.Parse(format, s); err == nil {
return t, true
}
}
return time.Time{}, false
}

11
vendor/gopkg.in/yaml.v2/scannerc.go generated vendored
View File

@ -2592,19 +2592,10 @@ func yaml_parser_scan_plain_scalar(parser *yaml_parser_t, token *yaml_token_t) b
// Consume non-blank characters. // Consume non-blank characters.
for !is_blankz(parser.buffer, parser.buffer_pos) { for !is_blankz(parser.buffer, parser.buffer_pos) {
// Check for 'x:x' in the flow context. TODO: Fix the test "spec-08-13".
if parser.flow_level > 0 &&
parser.buffer[parser.buffer_pos] == ':' &&
!is_blankz(parser.buffer, parser.buffer_pos+1) {
yaml_parser_set_scanner_error(parser, "while scanning a plain scalar",
start_mark, "found unexpected ':'")
return false
}
// Check for indicators that may end a plain scalar. // Check for indicators that may end a plain scalar.
if (parser.buffer[parser.buffer_pos] == ':' && is_blankz(parser.buffer, parser.buffer_pos+1)) || if (parser.buffer[parser.buffer_pos] == ':' && is_blankz(parser.buffer, parser.buffer_pos+1)) ||
(parser.flow_level > 0 && (parser.flow_level > 0 &&
(parser.buffer[parser.buffer_pos] == ',' || parser.buffer[parser.buffer_pos] == ':' || (parser.buffer[parser.buffer_pos] == ',' ||
parser.buffer[parser.buffer_pos] == '?' || parser.buffer[parser.buffer_pos] == '[' || parser.buffer[parser.buffer_pos] == '?' || parser.buffer[parser.buffer_pos] == '[' ||
parser.buffer[parser.buffer_pos] == ']' || parser.buffer[parser.buffer_pos] == '{' || parser.buffer[parser.buffer_pos] == ']' || parser.buffer[parser.buffer_pos] == '{' ||
parser.buffer[parser.buffer_pos] == '}')) { parser.buffer[parser.buffer_pos] == '}')) {

63
vendor/gopkg.in/yaml.v2/writerc.go generated vendored
View File

@ -18,72 +18,9 @@ func yaml_emitter_flush(emitter *yaml_emitter_t) bool {
return true return true
} }
// If the output encoding is UTF-8, we don't need to recode the buffer.
if emitter.encoding == yaml_UTF8_ENCODING {
if err := emitter.write_handler(emitter, emitter.buffer[:emitter.buffer_pos]); err != nil { if err := emitter.write_handler(emitter, emitter.buffer[:emitter.buffer_pos]); err != nil {
return yaml_emitter_set_writer_error(emitter, "write error: "+err.Error()) return yaml_emitter_set_writer_error(emitter, "write error: "+err.Error())
} }
emitter.buffer_pos = 0 emitter.buffer_pos = 0
return true return true
}
// Recode the buffer into the raw buffer.
var low, high int
if emitter.encoding == yaml_UTF16LE_ENCODING {
low, high = 0, 1
} else {
high, low = 1, 0
}
pos := 0
for pos < emitter.buffer_pos {
// See the "reader.c" code for more details on UTF-8 encoding. Note
// that we assume that the buffer contains a valid UTF-8 sequence.
// Read the next UTF-8 character.
octet := emitter.buffer[pos]
var w int
var value rune
switch {
case octet&0x80 == 0x00:
w, value = 1, rune(octet&0x7F)
case octet&0xE0 == 0xC0:
w, value = 2, rune(octet&0x1F)
case octet&0xF0 == 0xE0:
w, value = 3, rune(octet&0x0F)
case octet&0xF8 == 0xF0:
w, value = 4, rune(octet&0x07)
}
for k := 1; k < w; k++ {
octet = emitter.buffer[pos+k]
value = (value << 6) + (rune(octet) & 0x3F)
}
pos += w
// Write the character.
if value < 0x10000 {
var b [2]byte
b[high] = byte(value >> 8)
b[low] = byte(value & 0xFF)
emitter.raw_buffer = append(emitter.raw_buffer, b[0], b[1])
} else {
// Write the character using a surrogate pair (check "reader.c").
var b [4]byte
value -= 0x10000
b[high] = byte(0xD8 + (value >> 18))
b[low] = byte((value >> 10) & 0xFF)
b[high+2] = byte(0xDC + ((value >> 8) & 0xFF))
b[low+2] = byte(value & 0xFF)
emitter.raw_buffer = append(emitter.raw_buffer, b[0], b[1], b[2], b[3])
}
}
// Write the raw buffer.
if err := emitter.write_handler(emitter, emitter.raw_buffer); err != nil {
return yaml_emitter_set_writer_error(emitter, "write error: "+err.Error())
}
emitter.buffer_pos = 0
emitter.raw_buffer = emitter.raw_buffer[:0]
return true
} }

119
vendor/gopkg.in/yaml.v2/yaml.go generated vendored
View File

@ -9,6 +9,7 @@ package yaml
import ( import (
"errors" "errors"
"fmt" "fmt"
"io"
"reflect" "reflect"
"strings" "strings"
"sync" "sync"
@ -81,12 +82,58 @@ func Unmarshal(in []byte, out interface{}) (err error) {
} }
// UnmarshalStrict is like Unmarshal except that any fields that are found // UnmarshalStrict is like Unmarshal except that any fields that are found
// in the data that do not have corresponding struct members will result in // in the data that do not have corresponding struct members, or mapping
// keys that are duplicates, will result in
// an error. // an error.
func UnmarshalStrict(in []byte, out interface{}) (err error) { func UnmarshalStrict(in []byte, out interface{}) (err error) {
return unmarshal(in, out, true) return unmarshal(in, out, true)
} }
// A Decorder reads and decodes YAML values from an input stream.
type Decoder struct {
strict bool
parser *parser
}
// NewDecoder returns a new decoder that reads from r.
//
// The decoder introduces its own buffering and may read
// data from r beyond the YAML values requested.
func NewDecoder(r io.Reader) *Decoder {
return &Decoder{
parser: newParserFromReader(r),
}
}
// SetStrict sets whether strict decoding behaviour is enabled when
// decoding items in the data (see UnmarshalStrict). By default, decoding is not strict.
func (dec *Decoder) SetStrict(strict bool) {
dec.strict = strict
}
// Decode reads the next YAML-encoded value from its input
// and stores it in the value pointed to by v.
//
// See the documentation for Unmarshal for details about the
// conversion of YAML into a Go value.
func (dec *Decoder) Decode(v interface{}) (err error) {
d := newDecoder(dec.strict)
defer handleErr(&err)
node := dec.parser.parse()
if node == nil {
return io.EOF
}
out := reflect.ValueOf(v)
if out.Kind() == reflect.Ptr && !out.IsNil() {
out = out.Elem()
}
d.unmarshal(node, out)
if len(d.terrors) > 0 {
return &TypeError{d.terrors}
}
return nil
}
func unmarshal(in []byte, out interface{}, strict bool) (err error) { func unmarshal(in []byte, out interface{}, strict bool) (err error) {
defer handleErr(&err) defer handleErr(&err)
d := newDecoder(strict) d := newDecoder(strict)
@ -125,7 +172,10 @@ func unmarshal(in []byte, out interface{}, strict bool) (err error) {
// //
// omitempty Only include the field if it's not set to the zero // omitempty Only include the field if it's not set to the zero
// value for the type or to empty slices or maps. // value for the type or to empty slices or maps.
// Does not apply to zero valued structs. // Zero valued structs will be omitted if all their public
// fields are zero, unless they implement an IsZero
// method (see the IsZeroer interface type), in which
// case the field will be included if that method returns true.
// //
// flow Marshal using a flow style (useful for structs, // flow Marshal using a flow style (useful for structs,
// sequences and maps). // sequences and maps).
@ -150,12 +200,47 @@ func Marshal(in interface{}) (out []byte, err error) {
defer handleErr(&err) defer handleErr(&err)
e := newEncoder() e := newEncoder()
defer e.destroy() defer e.destroy()
e.marshal("", reflect.ValueOf(in)) e.marshalDoc("", reflect.ValueOf(in))
e.finish() e.finish()
out = e.out out = e.out
return return
} }
// An Encoder writes YAML values to an output stream.
type Encoder struct {
encoder *encoder
}
// NewEncoder returns a new encoder that writes to w.
// The Encoder should be closed after use to flush all data
// to w.
func NewEncoder(w io.Writer) *Encoder {
return &Encoder{
encoder: newEncoderWithWriter(w),
}
}
// Encode writes the YAML encoding of v to the stream.
// If multiple items are encoded to the stream, the
// second and subsequent document will be preceded
// with a "---" document separator, but the first will not.
//
// See the documentation for Marshal for details about the conversion of Go
// values to YAML.
func (e *Encoder) Encode(v interface{}) (err error) {
defer handleErr(&err)
e.encoder.marshalDoc("", reflect.ValueOf(v))
return nil
}
// Close closes the encoder by writing any remaining data.
// It does not write a stream terminating string "...".
func (e *Encoder) Close() (err error) {
defer handleErr(&err)
e.encoder.finish()
return nil
}
func handleErr(err *error) { func handleErr(err *error) {
if v := recover(); v != nil { if v := recover(); v != nil {
if e, ok := v.(yamlError); ok { if e, ok := v.(yamlError); ok {
@ -211,6 +296,9 @@ type fieldInfo struct {
Num int Num int
OmitEmpty bool OmitEmpty bool
Flow bool Flow bool
// Id holds the unique field identifier, so we can cheaply
// check for field duplicates without maintaining an extra map.
Id int
// Inline holds the field index if the field is part of an inlined struct. // Inline holds the field index if the field is part of an inlined struct.
Inline []int Inline []int
@ -290,6 +378,7 @@ func getStructInfo(st reflect.Type) (*structInfo, error) {
} else { } else {
finfo.Inline = append([]int{i}, finfo.Inline...) finfo.Inline = append([]int{i}, finfo.Inline...)
} }
finfo.Id = len(fieldsList)
fieldsMap[finfo.Key] = finfo fieldsMap[finfo.Key] = finfo
fieldsList = append(fieldsList, finfo) fieldsList = append(fieldsList, finfo)
} }
@ -311,11 +400,16 @@ func getStructInfo(st reflect.Type) (*structInfo, error) {
return nil, errors.New(msg) return nil, errors.New(msg)
} }
info.Id = len(fieldsList)
fieldsList = append(fieldsList, info) fieldsList = append(fieldsList, info)
fieldsMap[info.Key] = info fieldsMap[info.Key] = info
} }
sinfo = &structInfo{fieldsMap, fieldsList, inlineMap} sinfo = &structInfo{
FieldsMap: fieldsMap,
FieldsList: fieldsList,
InlineMap: inlineMap,
}
fieldMapMutex.Lock() fieldMapMutex.Lock()
structMap[st] = sinfo structMap[st] = sinfo
@ -323,8 +417,23 @@ func getStructInfo(st reflect.Type) (*structInfo, error) {
return sinfo, nil return sinfo, nil
} }
// IsZeroer is used to check whether an object is zero to
// determine whether it should be omitted when marshaling
// with the omitempty flag. One notable implementation
// is time.Time.
type IsZeroer interface {
IsZero() bool
}
func isZero(v reflect.Value) bool { func isZero(v reflect.Value) bool {
switch v.Kind() { kind := v.Kind()
if z, ok := v.Interface().(IsZeroer); ok {
if (kind == reflect.Ptr || kind == reflect.Interface) && v.IsNil() {
return true
}
return z.IsZero()
}
switch kind {
case reflect.String: case reflect.String:
return len(v.String()) == 0 return len(v.String()) == 0
case reflect.Interface, reflect.Ptr: case reflect.Interface, reflect.Ptr:

26
vendor/gopkg.in/yaml.v2/yamlh.go generated vendored
View File

@ -1,6 +1,7 @@
package yaml package yaml
import ( import (
"fmt"
"io" "io"
) )
@ -239,6 +240,27 @@ const (
yaml_MAPPING_END_EVENT // A MAPPING-END event. yaml_MAPPING_END_EVENT // A MAPPING-END event.
) )
var eventStrings = []string{
yaml_NO_EVENT: "none",
yaml_STREAM_START_EVENT: "stream start",
yaml_STREAM_END_EVENT: "stream end",
yaml_DOCUMENT_START_EVENT: "document start",
yaml_DOCUMENT_END_EVENT: "document end",
yaml_ALIAS_EVENT: "alias",
yaml_SCALAR_EVENT: "scalar",
yaml_SEQUENCE_START_EVENT: "sequence start",
yaml_SEQUENCE_END_EVENT: "sequence end",
yaml_MAPPING_START_EVENT: "mapping start",
yaml_MAPPING_END_EVENT: "mapping end",
}
func (e yaml_event_type_t) String() string {
if e < 0 || int(e) >= len(eventStrings) {
return fmt.Sprintf("unknown event %d", e)
}
return eventStrings[e]
}
// The event structure. // The event structure.
type yaml_event_t struct { type yaml_event_t struct {
@ -521,7 +543,7 @@ type yaml_parser_t struct {
read_handler yaml_read_handler_t // Read handler. read_handler yaml_read_handler_t // Read handler.
input_file io.Reader // File input data. input_reader io.Reader // File input data.
input []byte // String input data. input []byte // String input data.
input_pos int input_pos int
@ -632,7 +654,7 @@ type yaml_emitter_t struct {
write_handler yaml_write_handler_t // Write handler. write_handler yaml_write_handler_t // Write handler.
output_buffer *[]byte // String output data. output_buffer *[]byte // String output data.
output_file io.Writer // File output data. output_writer io.Writer // File output data.
buffer []byte // The working buffer. buffer []byte // The working buffer.
buffer_pos int // The current position of the buffer. buffer_pos int // The current position of the buffer.