pin to v1.0.0 of github action parser
This commit is contained in:
parent
3e04312912
commit
4b61fb3bc3
119 changed files with 9482 additions and 3609 deletions
2
Makefile
2
Makefile
|
@ -50,6 +50,6 @@ endif
|
||||||
git push origin $(NEW_VERSION)
|
git push origin $(NEW_VERSION)
|
||||||
|
|
||||||
vendor:
|
vendor:
|
||||||
go run main.go -ra vendor
|
go mod vendor
|
||||||
|
|
||||||
.PHONY: vendor
|
.PHONY: vendor
|
|
@ -21,28 +21,35 @@ func (runner *runnerImpl) newActionExecutor(actionName string) common.Executor {
|
||||||
return common.NewErrorExecutor(fmt.Errorf("Unable to find action named '%s'", actionName))
|
return common.NewErrorExecutor(fmt.Errorf("Unable to find action named '%s'", actionName))
|
||||||
}
|
}
|
||||||
|
|
||||||
env := make(map[string]string)
|
executors := make([]common.Executor, 0)
|
||||||
for _, applier := range []environmentApplier{newActionEnvironmentApplier(action), runner} {
|
image, err := runner.addImageExecutor(action, &executors)
|
||||||
applier.applyEnvironment(env)
|
if err != nil {
|
||||||
|
return common.NewErrorExecutor(err)
|
||||||
}
|
}
|
||||||
env["GITHUB_ACTION"] = actionName
|
|
||||||
|
|
||||||
logger := newActionLogger(actionName, runner.config.Dryrun)
|
err = runner.addRunExecutor(action, image, &executors)
|
||||||
log.Debugf("Using '%s' for action '%s'", action.Uses, actionName)
|
if err != nil {
|
||||||
|
return common.NewErrorExecutor(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
return common.NewPipelineExecutor(executors...)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (runner *runnerImpl) addImageExecutor(action *model.Action, executors *[]common.Executor) (string, error) {
|
||||||
|
var image string
|
||||||
|
logger := newActionLogger(action.Identifier, runner.config.Dryrun)
|
||||||
|
log.Debugf("Using '%s' for action '%s'", action.Uses, action.Identifier)
|
||||||
|
|
||||||
in := container.DockerExecutorInput{
|
in := container.DockerExecutorInput{
|
||||||
Ctx: runner.config.Ctx,
|
Ctx: runner.config.Ctx,
|
||||||
Logger: logger,
|
Logger: logger,
|
||||||
Dryrun: runner.config.Dryrun,
|
Dryrun: runner.config.Dryrun,
|
||||||
}
|
}
|
||||||
|
|
||||||
var image string
|
|
||||||
executors := make([]common.Executor, 0)
|
|
||||||
switch uses := action.Uses.(type) {
|
switch uses := action.Uses.(type) {
|
||||||
|
|
||||||
case *model.UsesDockerImage:
|
case *model.UsesDockerImage:
|
||||||
image = uses.Image
|
image = uses.Image
|
||||||
executors = append(executors, container.NewDockerPullExecutor(container.NewDockerPullExecutorInput{
|
*executors = append(*executors, container.NewDockerPullExecutor(container.NewDockerPullExecutorInput{
|
||||||
DockerExecutorInput: in,
|
DockerExecutorInput: in,
|
||||||
Image: image,
|
Image: image,
|
||||||
}))
|
}))
|
||||||
|
@ -56,7 +63,7 @@ func (runner *runnerImpl) newActionExecutor(actionName string) common.Executor {
|
||||||
}
|
}
|
||||||
image = fmt.Sprintf("%s:%s", filepath.Base(contextDir), sha)
|
image = fmt.Sprintf("%s:%s", filepath.Base(contextDir), sha)
|
||||||
|
|
||||||
executors = append(executors, container.NewDockerBuildExecutor(container.NewDockerBuildExecutorInput{
|
*executors = append(*executors, container.NewDockerBuildExecutor(container.NewDockerBuildExecutorInput{
|
||||||
DockerExecutorInput: in,
|
DockerExecutorInput: in,
|
||||||
ContextDir: contextDir,
|
ContextDir: contextDir,
|
||||||
ImageTag: image,
|
ImageTag: image,
|
||||||
|
@ -67,7 +74,7 @@ func (runner *runnerImpl) newActionExecutor(actionName string) common.Executor {
|
||||||
cloneURL := fmt.Sprintf("https://github.com/%s", uses.Repository)
|
cloneURL := fmt.Sprintf("https://github.com/%s", uses.Repository)
|
||||||
|
|
||||||
cloneDir := filepath.Join(os.TempDir(), "act", action.Uses.String())
|
cloneDir := filepath.Join(os.TempDir(), "act", action.Uses.String())
|
||||||
executors = append(executors, common.NewGitCloneExecutor(common.NewGitCloneExecutorInput{
|
*executors = append(*executors, common.NewGitCloneExecutor(common.NewGitCloneExecutorInput{
|
||||||
URL: cloneURL,
|
URL: cloneURL,
|
||||||
Ref: uses.Ref,
|
Ref: uses.Ref,
|
||||||
Dir: cloneDir,
|
Dir: cloneDir,
|
||||||
|
@ -76,19 +83,38 @@ func (runner *runnerImpl) newActionExecutor(actionName string) common.Executor {
|
||||||
}))
|
}))
|
||||||
|
|
||||||
contextDir := filepath.Join(cloneDir, uses.Path)
|
contextDir := filepath.Join(cloneDir, uses.Path)
|
||||||
executors = append(executors, container.NewDockerBuildExecutor(container.NewDockerBuildExecutorInput{
|
*executors = append(*executors, container.NewDockerBuildExecutor(container.NewDockerBuildExecutorInput{
|
||||||
DockerExecutorInput: in,
|
DockerExecutorInput: in,
|
||||||
ContextDir: contextDir,
|
ContextDir: contextDir,
|
||||||
ImageTag: image,
|
ImageTag: image,
|
||||||
}))
|
}))
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return common.NewErrorExecutor(fmt.Errorf("unable to determine executor type for image '%s'", action.Uses))
|
return "", fmt.Errorf("unable to determine executor type for image '%s'", action.Uses)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return image, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (runner *runnerImpl) addRunExecutor(action *model.Action, image string, executors *[]common.Executor) error {
|
||||||
|
logger := newActionLogger(action.Identifier, runner.config.Dryrun)
|
||||||
|
log.Debugf("Using '%s' for action '%s'", action.Uses, action.Identifier)
|
||||||
|
|
||||||
|
in := container.DockerExecutorInput{
|
||||||
|
Ctx: runner.config.Ctx,
|
||||||
|
Logger: logger,
|
||||||
|
Dryrun: runner.config.Dryrun,
|
||||||
|
}
|
||||||
|
|
||||||
|
env := make(map[string]string)
|
||||||
|
for _, applier := range []environmentApplier{newActionEnvironmentApplier(action), runner} {
|
||||||
|
applier.applyEnvironment(env)
|
||||||
|
}
|
||||||
|
env["GITHUB_ACTION"] = action.Identifier
|
||||||
|
|
||||||
ghReader, err := runner.createGithubTarball()
|
ghReader, err := runner.createGithubTarball()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return common.NewErrorExecutor(err)
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
envList := make([]string, 0)
|
envList := make([]string, 0)
|
||||||
|
@ -103,14 +129,14 @@ func (runner *runnerImpl) newActionExecutor(actionName string) common.Executor {
|
||||||
if action.Runs != nil {
|
if action.Runs != nil {
|
||||||
entrypoint = action.Runs.Split()
|
entrypoint = action.Runs.Split()
|
||||||
}
|
}
|
||||||
executors = append(executors, container.NewDockerRunExecutor(container.NewDockerRunExecutorInput{
|
*executors = append(*executors, container.NewDockerRunExecutor(container.NewDockerRunExecutorInput{
|
||||||
DockerExecutorInput: in,
|
DockerExecutorInput: in,
|
||||||
Cmd: cmd,
|
Cmd: cmd,
|
||||||
Entrypoint: entrypoint,
|
Entrypoint: entrypoint,
|
||||||
Image: image,
|
Image: image,
|
||||||
WorkingDir: "/github/workspace",
|
WorkingDir: "/github/workspace",
|
||||||
Env: envList,
|
Env: envList,
|
||||||
Name: runner.createContainerName(actionName),
|
Name: runner.createContainerName(action.Identifier),
|
||||||
Binds: []string{
|
Binds: []string{
|
||||||
fmt.Sprintf("%s:%s", runner.config.WorkingDir, "/github/workspace"),
|
fmt.Sprintf("%s:%s", runner.config.WorkingDir, "/github/workspace"),
|
||||||
fmt.Sprintf("%s:%s", runner.tempDir, "/github/home"),
|
fmt.Sprintf("%s:%s", runner.tempDir, "/github/home"),
|
||||||
|
@ -120,7 +146,7 @@ func (runner *runnerImpl) newActionExecutor(actionName string) common.Executor {
|
||||||
ReuseContainers: runner.config.ReuseContainers,
|
ReuseContainers: runner.config.ReuseContainers,
|
||||||
}))
|
}))
|
||||||
|
|
||||||
return common.NewPipelineExecutor(executors...)
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (runner *runnerImpl) applyEnvironment(env map[string]string) {
|
func (runner *runnerImpl) applyEnvironment(env map[string]string) {
|
||||||
|
|
25
go.mod
25
go.mod
|
@ -4,40 +4,45 @@ require (
|
||||||
github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78 // indirect
|
github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78 // indirect
|
||||||
github.com/Microsoft/go-winio v0.4.11 // indirect
|
github.com/Microsoft/go-winio v0.4.11 // indirect
|
||||||
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect
|
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 // indirect
|
||||||
github.com/actions/workflow-parser v0.0.0-20190131180005-9cb71d183680
|
github.com/actions/workflow-parser v1.0.0
|
||||||
github.com/containerd/continuity v0.0.0-20181203112020-004b46473808 // indirect
|
github.com/containerd/continuity v0.0.0-20181203112020-004b46473808 // indirect
|
||||||
github.com/docker/distribution v2.7.0+incompatible // indirect
|
github.com/docker/distribution v2.7.1+incompatible // indirect
|
||||||
github.com/docker/docker v1.13.1
|
github.com/docker/docker v1.13.1
|
||||||
github.com/docker/go-connections v0.4.0 // indirect
|
github.com/docker/go-connections v0.4.0 // indirect
|
||||||
github.com/docker/go-units v0.3.3 // indirect
|
github.com/docker/go-units v0.3.3 // indirect
|
||||||
|
github.com/emirpasic/gods v1.12.0 // indirect
|
||||||
github.com/go-ini/ini v1.41.0
|
github.com/go-ini/ini v1.41.0
|
||||||
github.com/gogo/protobuf v1.2.0 // indirect
|
github.com/gogo/protobuf v1.2.0 // indirect
|
||||||
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e // indirect
|
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e // indirect
|
||||||
github.com/gorilla/context v1.1.1 // indirect
|
github.com/gorilla/mux v1.7.0 // indirect
|
||||||
github.com/gorilla/mux v1.6.2 // indirect
|
|
||||||
github.com/hashicorp/hcl v1.0.0 // indirect
|
github.com/hashicorp/hcl v1.0.0 // indirect
|
||||||
github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c
|
github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c
|
||||||
github.com/inconshreveable/mousetrap v1.0.0 // indirect
|
github.com/inconshreveable/mousetrap v1.0.0 // indirect
|
||||||
github.com/jtolds/gls v4.2.1+incompatible // indirect
|
github.com/jtolds/gls v4.2.1+incompatible // indirect
|
||||||
|
github.com/mitchellh/go-homedir v1.1.0 // indirect
|
||||||
github.com/opencontainers/go-digest v1.0.0-rc1 // indirect
|
github.com/opencontainers/go-digest v1.0.0-rc1 // indirect
|
||||||
github.com/opencontainers/image-spec v1.0.1 // indirect
|
github.com/opencontainers/image-spec v1.0.1 // indirect
|
||||||
github.com/opencontainers/runc v0.1.1 // indirect
|
github.com/opencontainers/runc v0.1.1 // indirect
|
||||||
github.com/pkg/errors v0.8.1 // indirect
|
github.com/pkg/errors v0.8.1 // indirect
|
||||||
github.com/sirupsen/logrus v1.3.0
|
github.com/sirupsen/logrus v1.3.0
|
||||||
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d // indirect
|
github.com/smartystreets/assertions v0.0.0-20190116191733-b6c0e53d7304 // indirect
|
||||||
github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c // indirect
|
github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c // indirect
|
||||||
github.com/soniakeys/graph v0.0.0 // indirect
|
github.com/soniakeys/graph v0.0.0 // indirect
|
||||||
github.com/spf13/cobra v0.0.3
|
github.com/spf13/cobra v0.0.3
|
||||||
github.com/spf13/pflag v1.0.3 // indirect
|
github.com/spf13/pflag v1.0.3 // indirect
|
||||||
github.com/stretchr/testify v1.3.0
|
github.com/stretchr/testify v1.3.0
|
||||||
golang.org/x/crypto v0.0.0-20190103213133-ff983b9c42bc
|
golang.org/x/crypto v0.0.0-20190131182504-b8fe1690c613
|
||||||
golang.org/x/net v0.0.0-20181220203305-927f97764cc3 // indirect
|
golang.org/x/net v0.0.0-20190125091013-d26f9f9a57f3 // indirect
|
||||||
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4 // indirect
|
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4 // indirect
|
||||||
golang.org/x/sys v0.0.0-20190102155601-82a175fd1598 // indirect
|
golang.org/x/sys v0.0.0-20190201152629-afcc84fd7533 // indirect
|
||||||
|
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2 // indirect
|
||||||
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c // indirect
|
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c // indirect
|
||||||
google.golang.org/grpc v1.17.0 // indirect
|
google.golang.org/genproto v0.0.0-20190128161407-8ac453e89fca // indirect
|
||||||
|
google.golang.org/grpc v1.18.0 // indirect
|
||||||
gopkg.in/ini.v1 v1.41.0 // indirect
|
gopkg.in/ini.v1 v1.41.0 // indirect
|
||||||
gopkg.in/src-d/go-git.v4 v4.8.1
|
gopkg.in/src-d/go-billy.v4 v4.3.0 // indirect
|
||||||
|
gopkg.in/src-d/go-git-fixtures.v3 v3.3.0 // indirect
|
||||||
|
gopkg.in/src-d/go-git.v4 v4.9.1
|
||||||
gopkg.in/yaml.v2 v2.2.2
|
gopkg.in/yaml.v2 v2.2.2
|
||||||
gotest.tools v2.2.0+incompatible
|
gotest.tools v2.2.0+incompatible
|
||||||
)
|
)
|
||||||
|
|
57
go.sum
57
go.sum
|
@ -5,10 +5,8 @@ github.com/Microsoft/go-winio v0.4.11 h1:zoIOcVf0xPN1tnMVbTtEdI+P8OofVk3NObnwOQ6
|
||||||
github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA=
|
github.com/Microsoft/go-winio v0.4.11/go.mod h1:VhR8bwka0BXejwEJY73c50VrPtXAaKcyvVC4A4RozmA=
|
||||||
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 h1:TngWCqHvy9oXAN6lEVMRuU21PR1EtLVZJmdB18Gu3Rw=
|
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5 h1:TngWCqHvy9oXAN6lEVMRuU21PR1EtLVZJmdB18Gu3Rw=
|
||||||
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk=
|
github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8D7ML55dXQrVaamCz2vxCfdQBasLZfHKk=
|
||||||
github.com/actions/workflow-parser v0.0.0-20190131170132-f9c507444936 h1:n7QhjGKV6TSvqiSJdRx2yZ7go8FihDG7ksqi/M1RUF8=
|
github.com/actions/workflow-parser v1.0.0 h1:Zz2Ke31f3OMYCSzU2pqZSsk/Oz+lWXfEiXMisjxgGcc=
|
||||||
github.com/actions/workflow-parser v0.0.0-20190131170132-f9c507444936/go.mod h1:jz9ZVl8zUIcjMfDQearQjvUHIBhx9l1ys4keDd6be34=
|
github.com/actions/workflow-parser v1.0.0/go.mod h1:jz9ZVl8zUIcjMfDQearQjvUHIBhx9l1ys4keDd6be34=
|
||||||
github.com/actions/workflow-parser v0.0.0-20190131180005-9cb71d183680 h1:MIHTh+XAfOwshi2enD7FwYkGgFpNWYx2mSzYG9LJQeg=
|
|
||||||
github.com/actions/workflow-parser v0.0.0-20190131180005-9cb71d183680/go.mod h1:jz9ZVl8zUIcjMfDQearQjvUHIBhx9l1ys4keDd6be34=
|
|
||||||
github.com/alcortesm/tgz v0.0.0-20161220082320-9c5fe88206d7 h1:uSoVVbwJiQipAclBbw+8quDsfcvFjOpI5iCf4p/cqCs=
|
github.com/alcortesm/tgz v0.0.0-20161220082320-9c5fe88206d7 h1:uSoVVbwJiQipAclBbw+8quDsfcvFjOpI5iCf4p/cqCs=
|
||||||
github.com/alcortesm/tgz v0.0.0-20161220082320-9c5fe88206d7/go.mod h1:6zEj6s6u/ghQa61ZWa/C2Aw3RkjiTBOix7dkqa1VLIs=
|
github.com/alcortesm/tgz v0.0.0-20161220082320-9c5fe88206d7/go.mod h1:6zEj6s6u/ghQa61ZWa/C2Aw3RkjiTBOix7dkqa1VLIs=
|
||||||
github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239 h1:kFOfPq6dUM1hTo4JG6LR5AXSUEsOjtdm0kw0FtQtMJA=
|
github.com/anmitsu/go-shlex v0.0.0-20161002113705-648efa622239 h1:kFOfPq6dUM1hTo4JG6LR5AXSUEsOjtdm0kw0FtQtMJA=
|
||||||
|
@ -19,8 +17,8 @@ github.com/containerd/continuity v0.0.0-20181203112020-004b46473808/go.mod h1:GL
|
||||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
github.com/docker/distribution v2.7.0+incompatible h1:neUDAlf3wX6Ml4HdqTrbcOHXtfRN0TFIwt6YFL7N9RU=
|
github.com/docker/distribution v2.7.1+incompatible h1:a5mlkVzth6W5A4fOsS3D2EO5BUmsJpcB+cRlLU7cSug=
|
||||||
github.com/docker/distribution v2.7.0+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
|
github.com/docker/distribution v2.7.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w=
|
||||||
github.com/docker/docker v1.13.1 h1:IkZjBSIc8hBjLpqeAbeE5mca5mNgeatLHBy3GO78BWo=
|
github.com/docker/docker v1.13.1 h1:IkZjBSIc8hBjLpqeAbeE5mca5mNgeatLHBy3GO78BWo=
|
||||||
github.com/docker/docker v1.13.1/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
|
github.com/docker/docker v1.13.1/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
|
||||||
github.com/docker/engine v0.0.0-20181106193140-f5749085e9cb h1:PyjxRdW1mqCmSoxy/6uP01P7CGbsD+woX+oOWbaUPwQ=
|
github.com/docker/engine v0.0.0-20181106193140-f5749085e9cb h1:PyjxRdW1mqCmSoxy/6uP01P7CGbsD+woX+oOWbaUPwQ=
|
||||||
|
@ -31,6 +29,8 @@ github.com/docker/go-units v0.3.3 h1:Xk8S3Xj5sLGlG5g67hJmYMmUgXv5N4PhkjJHHqrwnTk
|
||||||
github.com/docker/go-units v0.3.3/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
|
github.com/docker/go-units v0.3.3/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
|
||||||
github.com/emirpasic/gods v1.9.0 h1:rUF4PuzEjMChMiNsVjdI+SyLu7rEqpQ5reNFnhC7oFo=
|
github.com/emirpasic/gods v1.9.0 h1:rUF4PuzEjMChMiNsVjdI+SyLu7rEqpQ5reNFnhC7oFo=
|
||||||
github.com/emirpasic/gods v1.9.0/go.mod h1:YfzfFFoVP/catgzJb4IKIqXjX78Ha8FMSDh3ymbK86o=
|
github.com/emirpasic/gods v1.9.0/go.mod h1:YfzfFFoVP/catgzJb4IKIqXjX78Ha8FMSDh3ymbK86o=
|
||||||
|
github.com/emirpasic/gods v1.12.0 h1:QAUIPSaCu4G+POclxeqb3F+WPpdKqFGlw36+yOzGlrg=
|
||||||
|
github.com/emirpasic/gods v1.12.0/go.mod h1:YfzfFFoVP/catgzJb4IKIqXjX78Ha8FMSDh3ymbK86o=
|
||||||
github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568 h1:BHsljHzVlRcyQhjrss6TZTdY2VfCqZPbv5k3iBFa2ZQ=
|
github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568 h1:BHsljHzVlRcyQhjrss6TZTdY2VfCqZPbv5k3iBFa2ZQ=
|
||||||
github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc=
|
github.com/flynn/go-shlex v0.0.0-20150515145356-3f9db97f8568/go.mod h1:xEzjJPgXI435gkrCt3MPfRiAkVrwSbHsst4LCFVfpJc=
|
||||||
github.com/gliderlabs/ssh v0.1.1 h1:j3L6gSLQalDETeEg/Jg0mGY0/y/N6zI2xX1978P0Uqw=
|
github.com/gliderlabs/ssh v0.1.1 h1:j3L6gSLQalDETeEg/Jg0mGY0/y/N6zI2xX1978P0Uqw=
|
||||||
|
@ -41,6 +41,7 @@ github.com/gogo/protobuf v1.2.0 h1:xU6/SpYbvkNYiptHJYEDRseDLvYE7wSqhYYNy0QSUzI=
|
||||||
github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
||||||
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58=
|
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58=
|
||||||
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
|
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
|
||||||
|
github.com/golang/lint v0.0.0-20180702182130-06c8688daad7/go.mod h1:tluoj9z5200jBnyusfRPU2LqT6J+DAorxEvtC7LHB+E=
|
||||||
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
|
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
|
||||||
github.com/golang/protobuf v1.2.0 h1:P3YflyNX/ehuJFLhxviNdFxQPkGK5cDcApsge1SqnvM=
|
github.com/golang/protobuf v1.2.0 h1:P3YflyNX/ehuJFLhxviNdFxQPkGK5cDcApsge1SqnvM=
|
||||||
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||||
|
@ -48,10 +49,8 @@ github.com/google/go-cmp v0.2.0 h1:+dTQ8DZQJz0Mb/HjFlkptS1FeQ4cWSnN941F8aEG4SQ=
|
||||||
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
|
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
|
||||||
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e h1:JKmoR8x90Iww1ks85zJ1lfDGgIiMDuIptTOhJq+zKyg=
|
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e h1:JKmoR8x90Iww1ks85zJ1lfDGgIiMDuIptTOhJq+zKyg=
|
||||||
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
|
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
|
||||||
github.com/gorilla/context v1.1.1 h1:AWwleXJkX/nhcU9bZSnZoi3h/qGYqQAGhq6zZe/aQW8=
|
github.com/gorilla/mux v1.7.0 h1:tOSd0UKHQd6urX6ApfOn4XdBMY6Sh1MfxV3kmaazO+U=
|
||||||
github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg=
|
github.com/gorilla/mux v1.7.0/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
|
||||||
github.com/gorilla/mux v1.6.2 h1:Pgr17XVTNXAk3q/r4CpKzC5xBM/qW1uVLV+IhRZpIIk=
|
|
||||||
github.com/gorilla/mux v1.6.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs=
|
|
||||||
github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4=
|
github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4=
|
||||||
github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=
|
github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=
|
||||||
github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c h1:kQWxfPIHVLbgLzphqk3QUflDy9QdksZR4ygR807bpy0=
|
github.com/howeyc/gopass v0.0.0-20170109162249-bf9dde6d0d2c h1:kQWxfPIHVLbgLzphqk3QUflDy9QdksZR4ygR807bpy0=
|
||||||
|
@ -76,6 +75,8 @@ github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
|
||||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||||
github.com/mitchellh/go-homedir v1.0.0 h1:vKb8ShqSby24Yrqr/yDYkuFz8d0WUjys40rvnGC8aR0=
|
github.com/mitchellh/go-homedir v1.0.0 h1:vKb8ShqSby24Yrqr/yDYkuFz8d0WUjys40rvnGC8aR0=
|
||||||
github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
|
github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
|
||||||
|
github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=
|
||||||
|
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
|
||||||
github.com/opencontainers/go-digest v1.0.0-rc1 h1:WzifXhOVOEOuFYOJAW6aQqW0TooG2iki3E3Ii+WN7gQ=
|
github.com/opencontainers/go-digest v1.0.0-rc1 h1:WzifXhOVOEOuFYOJAW6aQqW0TooG2iki3E3Ii+WN7gQ=
|
||||||
github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
|
github.com/opencontainers/go-digest v1.0.0-rc1/go.mod h1:cMLVZDEM3+U2I4VmLI6N8jQYUd2OVphdqWwCJHrFt2s=
|
||||||
github.com/opencontainers/image-spec v1.0.1 h1:JMemWkRwHx4Zj+fVxWoMCFm/8sYGGrUVojFA6h/TRcI=
|
github.com/opencontainers/image-spec v1.0.1 h1:JMemWkRwHx4Zj+fVxWoMCFm/8sYGGrUVojFA6h/TRcI=
|
||||||
|
@ -94,8 +95,8 @@ github.com/sergi/go-diff v1.0.0 h1:Kpca3qRNrduNnOQeazBd0ysaKrUJiIuISHxogkT9RPQ=
|
||||||
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
|
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
|
||||||
github.com/sirupsen/logrus v1.3.0 h1:hI/7Q+DtNZ2kINb6qt/lS+IyXnHQe9e90POfeewL/ME=
|
github.com/sirupsen/logrus v1.3.0 h1:hI/7Q+DtNZ2kINb6qt/lS+IyXnHQe9e90POfeewL/ME=
|
||||||
github.com/sirupsen/logrus v1.3.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
|
github.com/sirupsen/logrus v1.3.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
|
||||||
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d h1:zE9ykElWQ6/NYmHa3jpm/yHnI4xSofP+UP6SpjHcSeM=
|
github.com/smartystreets/assertions v0.0.0-20190116191733-b6c0e53d7304 h1:Jpy1PXuP99tXNrhbq2BaPz9B+jNAvH1JPQQpG/9GCXY=
|
||||||
github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
|
github.com/smartystreets/assertions v0.0.0-20190116191733-b6c0e53d7304/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
|
||||||
github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c h1:Ho+uVpkel/udgjbwB5Lktg9BtvJSh2DT0Hi6LPSyI2w=
|
github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c h1:Ho+uVpkel/udgjbwB5Lktg9BtvJSh2DT0Hi6LPSyI2w=
|
||||||
github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c/go.mod h1:XDJAKZRPZ1CvBcN2aX5YOUTYGHki24fSF0Iv48Ibg0s=
|
github.com/smartystreets/goconvey v0.0.0-20181108003508-044398e4856c/go.mod h1:XDJAKZRPZ1CvBcN2aX5YOUTYGHki24fSF0Iv48Ibg0s=
|
||||||
github.com/soniakeys/bits v1.0.0 h1:Rune9VFefdJvLE0Q5iRCVGiKdSu2iDihs2I6SCm7evw=
|
github.com/soniakeys/bits v1.0.0 h1:Rune9VFefdJvLE0Q5iRCVGiKdSu2iDihs2I6SCm7evw=
|
||||||
|
@ -119,13 +120,16 @@ github.com/xanzy/ssh-agent v0.2.0 h1:Adglfbi5p9Z0BmK2oKU9nTG+zKfniSfnaMYB+ULd+Ro
|
||||||
github.com/xanzy/ssh-agent v0.2.0/go.mod h1:0NyE30eGUDliuLEHJgYte/zncp2zdTStcOnWhgSqHD8=
|
github.com/xanzy/ssh-agent v0.2.0/go.mod h1:0NyE30eGUDliuLEHJgYte/zncp2zdTStcOnWhgSqHD8=
|
||||||
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793 h1:u+LnwYTOOW7Ukr/fppxEb1Nwz0AtPflrblfvUudpo+I=
|
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793 h1:u+LnwYTOOW7Ukr/fppxEb1Nwz0AtPflrblfvUudpo+I=
|
||||||
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
||||||
golang.org/x/crypto v0.0.0-20190103213133-ff983b9c42bc h1:F5tKCVGp+MUAHhKp5MZtGqAlGX3+oCsiL1Q629FL90M=
|
golang.org/x/crypto v0.0.0-20190131182504-b8fe1690c613 h1:MQ/ZZiDsUapFFiMS+vzwXkCTeEKaum+Do5rINYJDmxc=
|
||||||
golang.org/x/crypto v0.0.0-20190103213133-ff983b9c42bc/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
golang.org/x/crypto v0.0.0-20190131182504-b8fe1690c613/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
|
||||||
|
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||||
|
golang.org/x/lint v0.0.0-20180702182130-06c8688daad7/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
|
||||||
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
|
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
|
||||||
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||||
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||||
golang.org/x/net v0.0.0-20181220203305-927f97764cc3 h1:eH6Eip3UpmR+yM/qI9Ijluzb1bNv/cAU/n+6l8tRSis=
|
golang.org/x/net v0.0.0-20181106065722-10aee1819953/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||||
golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
golang.org/x/net v0.0.0-20190125091013-d26f9f9a57f3 h1:ulvT7fqt0yHWzpJwI57MezWnYDVpCAYBVuYst/L+fAY=
|
||||||
|
golang.org/x/net v0.0.0-20190125091013-d26f9f9a57f3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
|
||||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f h1:wMNYb4v58l5UBM7MYRLPG6ZhfOqbKu7X5eyFl8ZhKvA=
|
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f h1:wMNYb4v58l5UBM7MYRLPG6ZhfOqbKu7X5eyFl8ZhKvA=
|
||||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||||
|
@ -135,10 +139,12 @@ golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5h
|
||||||
golang.org/x/sys v0.0.0-20180903190138-2b024373dcd9/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20180903190138-2b024373dcd9/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33 h1:I6FyU15t786LL7oL/hn43zqTuEGr4PN7F4XJ1p4E3Y8=
|
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33 h1:I6FyU15t786LL7oL/hn43zqTuEGr4PN7F4XJ1p4E3Y8=
|
||||||
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/sys v0.0.0-20190102155601-82a175fd1598 h1:S8GOgffXV1X3fpVG442QRfWOt0iFl79eHJ7OPt725bo=
|
golang.org/x/sys v0.0.0-20190201152629-afcc84fd7533 h1:bLfqnzrpeG4usq5OvMCrwTdmMJ6aTmlCuo1eKl0mhkI=
|
||||||
golang.org/x/sys v0.0.0-20190102155601-82a175fd1598/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
golang.org/x/sys v0.0.0-20190201152629-afcc84fd7533/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||||
golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=
|
golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=
|
||||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||||
|
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2 h1:z99zHgr7hKfrUcX/KsoJk5FJfjTceCKIp96+biqP4To=
|
||||||
|
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||||
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c h1:fqgJT0MGcGpPgpWU7VRdRjuArfcOvC4AoJmILihzhDg=
|
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c h1:fqgJT0MGcGpPgpWU7VRdRjuArfcOvC4AoJmILihzhDg=
|
||||||
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
|
||||||
golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52 h1:JG/0uqcGdTNgq7FdU+61l5Pdmb8putNZlXb65bJBROs=
|
golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52 h1:JG/0uqcGdTNgq7FdU+61l5Pdmb8putNZlXb65bJBROs=
|
||||||
|
@ -146,8 +152,11 @@ golang.org/x/tools v0.0.0-20180828015842-6cd1fcedba52/go.mod h1:n7NCudcB/nEzxVGm
|
||||||
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
|
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
|
||||||
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8 h1:Nw54tB0rB7hY/N0NQvRW8DG4Yk3Q6T9cu9RcFQDu1tc=
|
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8 h1:Nw54tB0rB7hY/N0NQvRW8DG4Yk3Q6T9cu9RcFQDu1tc=
|
||||||
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
|
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
|
||||||
google.golang.org/grpc v1.17.0 h1:TRJYBgMclJvGYn2rIMjj+h9KtMt5r1Ij7ODVRIZkwhk=
|
google.golang.org/genproto v0.0.0-20190128161407-8ac453e89fca h1:L1odPN6KVjhk0Lbg41BKcjGjP7ELTvh/qDcyh6hEfv0=
|
||||||
google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs=
|
google.golang.org/genproto v0.0.0-20190128161407-8ac453e89fca/go.mod h1:L3J43x8/uS+qIUoksaLKe6OS3nUKxOKuIFz1sl2/jx4=
|
||||||
|
google.golang.org/grpc v1.16.0/go.mod h1:0JHn/cJsOMiMfNA9+DeHDlAU7KAAB5GDlYFpa9MZMio=
|
||||||
|
google.golang.org/grpc v1.18.0 h1:IZl7mfBGfbhYx2p2rKRtYgDFw6SBz+kclmxYrCksPPA=
|
||||||
|
google.golang.org/grpc v1.18.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY=
|
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY=
|
||||||
|
@ -156,10 +165,14 @@ gopkg.in/ini.v1 v1.41.0 h1:Ka3ViY6gNYSKiVy71zXBEqKplnV35ImDLVG+8uoIklE=
|
||||||
gopkg.in/ini.v1 v1.41.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
|
gopkg.in/ini.v1 v1.41.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k=
|
||||||
gopkg.in/src-d/go-billy.v4 v4.2.1 h1:omN5CrMrMcQ+4I8bJ0wEhOBPanIRWzFC953IiXKdYzo=
|
gopkg.in/src-d/go-billy.v4 v4.2.1 h1:omN5CrMrMcQ+4I8bJ0wEhOBPanIRWzFC953IiXKdYzo=
|
||||||
gopkg.in/src-d/go-billy.v4 v4.2.1/go.mod h1:tm33zBoOwxjYHZIE+OV8bxTWFMJLrconzFMd38aARFk=
|
gopkg.in/src-d/go-billy.v4 v4.2.1/go.mod h1:tm33zBoOwxjYHZIE+OV8bxTWFMJLrconzFMd38aARFk=
|
||||||
|
gopkg.in/src-d/go-billy.v4 v4.3.0 h1:KtlZ4c1OWbIs4jCv5ZXrTqG8EQocr0g/d4DjNg70aek=
|
||||||
|
gopkg.in/src-d/go-billy.v4 v4.3.0/go.mod h1:tm33zBoOwxjYHZIE+OV8bxTWFMJLrconzFMd38aARFk=
|
||||||
gopkg.in/src-d/go-git-fixtures.v3 v3.1.1 h1:XWW/s5W18RaJpmo1l0IYGqXKuJITWRFuA45iOf1dKJs=
|
gopkg.in/src-d/go-git-fixtures.v3 v3.1.1 h1:XWW/s5W18RaJpmo1l0IYGqXKuJITWRFuA45iOf1dKJs=
|
||||||
gopkg.in/src-d/go-git-fixtures.v3 v3.1.1/go.mod h1:dLBcvytrw/TYZsNTWCnkNF2DSIlzWYqTe3rJR56Ac7g=
|
gopkg.in/src-d/go-git-fixtures.v3 v3.1.1/go.mod h1:dLBcvytrw/TYZsNTWCnkNF2DSIlzWYqTe3rJR56Ac7g=
|
||||||
gopkg.in/src-d/go-git.v4 v4.8.1 h1:aAyBmkdE1QUUEHcP4YFCGKmsMQRAuRmUcPEQR7lOAa0=
|
gopkg.in/src-d/go-git-fixtures.v3 v3.3.0 h1:AxUOwLW3at53ysFqs0Lg+H+8KSQXl7AEHBvWj8wEsT8=
|
||||||
gopkg.in/src-d/go-git.v4 v4.8.1/go.mod h1:Vtut8izDyrM8BUVQnzJ+YvmNcem2J89EmfZYCkLokZk=
|
gopkg.in/src-d/go-git-fixtures.v3 v3.3.0/go.mod h1:dLBcvytrw/TYZsNTWCnkNF2DSIlzWYqTe3rJR56Ac7g=
|
||||||
|
gopkg.in/src-d/go-git.v4 v4.9.1 h1:0oKHJZY8tM7B71378cfTg2c5jmWyNlXvestTT6WfY+4=
|
||||||
|
gopkg.in/src-d/go-git.v4 v4.9.1/go.mod h1:Vtut8izDyrM8BUVQnzJ+YvmNcem2J89EmfZYCkLokZk=
|
||||||
gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME=
|
gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME=
|
||||||
gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI=
|
gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI=
|
||||||
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
|
gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw=
|
||||||
|
|
6
vendor/github.com/actions/workflow-parser/model/configuration.go
generated
vendored
6
vendor/github.com/actions/workflow-parser/model/configuration.go
generated
vendored
|
@ -1,5 +1,9 @@
|
||||||
package model
|
package model
|
||||||
|
|
||||||
|
import (
|
||||||
|
"strings"
|
||||||
|
)
|
||||||
|
|
||||||
// Configuration is a parsed main.workflow file
|
// Configuration is a parsed main.workflow file
|
||||||
type Configuration struct {
|
type Configuration struct {
|
||||||
Actions []*Action
|
Actions []*Action
|
||||||
|
@ -52,7 +56,7 @@ func (c *Configuration) GetWorkflow(id string) *Workflow {
|
||||||
func (c *Configuration) GetWorkflows(eventType string) []*Workflow {
|
func (c *Configuration) GetWorkflows(eventType string) []*Workflow {
|
||||||
var ret []*Workflow
|
var ret []*Workflow
|
||||||
for _, workflow := range c.Workflows {
|
for _, workflow := range c.Workflows {
|
||||||
if IsMatchingEventType(workflow.On, eventType) {
|
if strings.EqualFold(workflow.On, eventType) {
|
||||||
ret = append(ret, workflow)
|
ret = append(ret, workflow)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
70
vendor/github.com/actions/workflow-parser/parser/errors.go
generated
vendored
70
vendor/github.com/actions/workflow-parser/parser/errors.go
generated
vendored
|
@ -10,29 +10,44 @@ import (
|
||||||
"github.com/actions/workflow-parser/model"
|
"github.com/actions/workflow-parser/model"
|
||||||
)
|
)
|
||||||
|
|
||||||
type ParserError struct {
|
type Error struct {
|
||||||
message string
|
message string
|
||||||
Errors ErrorList
|
Errors []*ParseError
|
||||||
Actions []*model.Action
|
Actions []*model.Action
|
||||||
Workflows []*model.Workflow
|
Workflows []*model.Workflow
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *ParserError) Error() string {
|
func (e *Error) Error() string {
|
||||||
buffer := bytes.NewBuffer(nil)
|
buffer := bytes.NewBuffer(nil)
|
||||||
buffer.WriteString(p.message)
|
buffer.WriteString(e.message)
|
||||||
for _, e := range p.Errors {
|
for _, pe := range e.Errors {
|
||||||
buffer.WriteString("\n ")
|
buffer.WriteString("\n ")
|
||||||
buffer.WriteString(e.Error())
|
buffer.WriteString(pe.Error())
|
||||||
}
|
}
|
||||||
return buffer.String()
|
return buffer.String()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Error represents an error identified by the parser, either syntactic
|
// FirstError searches a Configuration for the first error at or above a
|
||||||
|
// given severity level. Checking the return value against nil is a good
|
||||||
|
// way to see if the file has any errors at or above the given severity.
|
||||||
|
// A caller intending to execute the file might check for
|
||||||
|
// `errors.FirstError(parser.WARNING)`, while a caller intending to
|
||||||
|
// display the file might check for `errors.FirstError(parser.FATAL)`.
|
||||||
|
func (e *Error) FirstError(severity Severity) error {
|
||||||
|
for _, pe := range e.Errors {
|
||||||
|
if pe.Severity >= severity {
|
||||||
|
return pe
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// ParseError represents an error identified by the parser, either syntactic
|
||||||
// (HCL) or semantic (.workflow) in nature. There are fields for location
|
// (HCL) or semantic (.workflow) in nature. There are fields for location
|
||||||
// (File, Line, Column), severity, and base error string. The `Error()`
|
// (File, Line, Column), severity, and base error string. The `Error()`
|
||||||
// function on this type concatenates whatever bits of the location are
|
// function on this type concatenates whatever bits of the location are
|
||||||
// available with the message. The severity is only used for filtering.
|
// available with the message. The severity is only used for filtering.
|
||||||
type Error struct {
|
type ParseError struct {
|
||||||
message string
|
message string
|
||||||
Pos ErrorPos
|
Pos ErrorPos
|
||||||
Severity Severity
|
Severity Severity
|
||||||
|
@ -48,8 +63,8 @@ type ErrorPos struct {
|
||||||
|
|
||||||
// newFatal creates a new error at the FATAL level, indicating that the
|
// newFatal creates a new error at the FATAL level, indicating that the
|
||||||
// file is so broken it should not be displayed.
|
// file is so broken it should not be displayed.
|
||||||
func newFatal(pos ErrorPos, format string, a ...interface{}) *Error {
|
func newFatal(pos ErrorPos, format string, a ...interface{}) *ParseError {
|
||||||
return &Error{
|
return &ParseError{
|
||||||
message: fmt.Sprintf(format, a...),
|
message: fmt.Sprintf(format, a...),
|
||||||
Pos: pos,
|
Pos: pos,
|
||||||
Severity: FATAL,
|
Severity: FATAL,
|
||||||
|
@ -58,8 +73,8 @@ func newFatal(pos ErrorPos, format string, a ...interface{}) *Error {
|
||||||
|
|
||||||
// newError creates a new error at the ERROR level, indicating that the
|
// newError creates a new error at the ERROR level, indicating that the
|
||||||
// file can be displayed but cannot be run.
|
// file can be displayed but cannot be run.
|
||||||
func newError(pos ErrorPos, format string, a ...interface{}) *Error {
|
func newError(pos ErrorPos, format string, a ...interface{}) *ParseError {
|
||||||
return &Error{
|
return &ParseError{
|
||||||
message: fmt.Sprintf(format, a...),
|
message: fmt.Sprintf(format, a...),
|
||||||
Pos: pos,
|
Pos: pos,
|
||||||
Severity: ERROR,
|
Severity: ERROR,
|
||||||
|
@ -68,15 +83,15 @@ func newError(pos ErrorPos, format string, a ...interface{}) *Error {
|
||||||
|
|
||||||
// newWarning creates a new error at the WARNING level, indicating that
|
// newWarning creates a new error at the WARNING level, indicating that
|
||||||
// the file might be runnable but might not execute as intended.
|
// the file might be runnable but might not execute as intended.
|
||||||
func newWarning(pos ErrorPos, format string, a ...interface{}) *Error {
|
func newWarning(pos ErrorPos, format string, a ...interface{}) *ParseError {
|
||||||
return &Error{
|
return &ParseError{
|
||||||
message: fmt.Sprintf(format, a...),
|
message: fmt.Sprintf(format, a...),
|
||||||
Pos: pos,
|
Pos: pos,
|
||||||
Severity: WARNING,
|
Severity: WARNING,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Error) Error() string {
|
func (e *ParseError) Error() string {
|
||||||
var sb strings.Builder
|
var sb strings.Builder
|
||||||
if e.Pos.Line != 0 {
|
if e.Pos.Line != 0 {
|
||||||
sb.WriteString("Line ") // nolint: errcheck
|
sb.WriteString("Line ") // nolint: errcheck
|
||||||
|
@ -107,30 +122,15 @@ const (
|
||||||
// workflow file. See the comments for WARNING, ERROR, and FATAL, above.
|
// workflow file. See the comments for WARNING, ERROR, and FATAL, above.
|
||||||
type Severity int
|
type Severity int
|
||||||
|
|
||||||
// FirstError searches a Configuration for the first error at or above a
|
type errorList []*ParseError
|
||||||
// given severity level. Checking the return value against nil is a good
|
|
||||||
// way to see if the file has any errors at or above the given severity.
|
|
||||||
// A caller intending to execute the file might check for
|
|
||||||
// `errors.FirstError(parser.WARNING)`, while a caller intending to
|
|
||||||
// display the file might check for `errors.FirstError(parser.FATAL)`.
|
|
||||||
func (errors ErrorList) FirstError(severity Severity) error {
|
|
||||||
for _, e := range errors {
|
|
||||||
if e.Severity >= severity {
|
|
||||||
return e
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type ErrorList []*Error
|
func (a errorList) Len() int { return len(a) }
|
||||||
|
func (a errorList) Swap(i, j int) { a[i], a[j] = a[j], a[i] }
|
||||||
func (a ErrorList) Len() int { return len(a) }
|
func (a errorList) Less(i, j int) bool { return a[i].Pos.Line < a[j].Pos.Line }
|
||||||
func (a ErrorList) Swap(i, j int) { a[i], a[j] = a[j], a[i] }
|
|
||||||
func (a ErrorList) Less(i, j int) bool { return a[i].Pos.Line < a[j].Pos.Line }
|
|
||||||
|
|
||||||
// sortErrors sorts the errors reported by the parser. Do this after
|
// sortErrors sorts the errors reported by the parser. Do this after
|
||||||
// parsing is complete. The sort is stable, so order is preserved within
|
// parsing is complete. The sort is stable, so order is preserved within
|
||||||
// a single line: left to right, syntax errors before validation errors.
|
// a single line: left to right, syntax errors before validation errors.
|
||||||
func (errors ErrorList) sort() {
|
func (errors errorList) sort() {
|
||||||
sort.Stable(errors)
|
sort.Stable(errors)
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,20 +1,15 @@
|
||||||
package model
|
package parser
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"strings"
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
// IsAllowedEventType returns true if the event type is supported.
|
// isAllowedEventType returns true if the event type is supported.
|
||||||
func IsAllowedEventType(eventType string) bool {
|
func isAllowedEventType(eventType string) bool {
|
||||||
_, ok := eventTypeWhitelist[strings.ToLower(eventType)]
|
_, ok := eventTypeWhitelist[strings.ToLower(eventType)]
|
||||||
return ok
|
return ok
|
||||||
}
|
}
|
||||||
|
|
||||||
// IsMatchingEventType checks to see if the "flowOn" string from a flow's on attribute matches the incoming webhook of type eventType.
|
|
||||||
func IsMatchingEventType(flowOn, eventType string) bool {
|
|
||||||
return strings.EqualFold(flowOn, eventType)
|
|
||||||
}
|
|
||||||
|
|
||||||
// https://developer.github.com/actions/creating-workflows/workflow-configuration-options/#events-supported-in-workflow-files
|
// https://developer.github.com/actions/creating-workflows/workflow-configuration-options/#events-supported-in-workflow-files
|
||||||
var eventTypeWhitelist = map[string]struct{}{
|
var eventTypeWhitelist = map[string]struct{}{
|
||||||
"check_run": {},
|
"check_run": {},
|
||||||
|
@ -45,11 +40,3 @@ var eventTypeWhitelist = map[string]struct{}{
|
||||||
"status": {},
|
"status": {},
|
||||||
"watch": {},
|
"watch": {},
|
||||||
}
|
}
|
||||||
|
|
||||||
func AddAllowedEventType(s string) {
|
|
||||||
eventTypeWhitelist[s] = struct{}{}
|
|
||||||
}
|
|
||||||
|
|
||||||
func RemoveAllowedEventType(s string) {
|
|
||||||
delete(eventTypeWhitelist, s)
|
|
||||||
}
|
|
6
vendor/github.com/actions/workflow-parser/parser/opts.go
generated
vendored
6
vendor/github.com/actions/workflow-parser/parser/opts.go
generated
vendored
|
@ -1,15 +1,15 @@
|
||||||
package parser
|
package parser
|
||||||
|
|
||||||
type OptionFunc func(*parseState)
|
type OptionFunc func(*Parser)
|
||||||
|
|
||||||
func WithSuppressWarnings() OptionFunc {
|
func WithSuppressWarnings() OptionFunc {
|
||||||
return func(ps *parseState) {
|
return func(ps *Parser) {
|
||||||
ps.suppressSeverity = WARNING
|
ps.suppressSeverity = WARNING
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func WithSuppressErrors() OptionFunc {
|
func WithSuppressErrors() OptionFunc {
|
||||||
return func(ps *parseState) {
|
return func(ps *Parser) {
|
||||||
ps.suppressSeverity = ERROR
|
ps.suppressSeverity = ERROR
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
350
vendor/github.com/actions/workflow-parser/parser/parser.go
generated
vendored
350
vendor/github.com/actions/workflow-parser/parser/parser.go
generated
vendored
|
@ -19,11 +19,11 @@ const minVersion = 0
|
||||||
const maxVersion = 0
|
const maxVersion = 0
|
||||||
const maxSecrets = 100
|
const maxSecrets = 100
|
||||||
|
|
||||||
type parseState struct {
|
type Parser struct {
|
||||||
Version int
|
version int
|
||||||
Actions []*model.Action
|
actions []*model.Action
|
||||||
Workflows []*model.Workflow
|
workflows []*model.Workflow
|
||||||
Errors ErrorList
|
errors errorList
|
||||||
|
|
||||||
posMap map[interface{}]ast.Node
|
posMap map[interface{}]ast.Node
|
||||||
suppressSeverity Severity
|
suppressSeverity Severity
|
||||||
|
@ -41,8 +41,8 @@ func Parse(reader io.Reader, options ...OptionFunc) (*model.Configuration, error
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if pe, ok := err.(*hclparser.PosError); ok {
|
if pe, ok := err.(*hclparser.PosError); ok {
|
||||||
pos := ErrorPos{File: pe.Pos.Filename, Line: pe.Pos.Line, Column: pe.Pos.Column}
|
pos := ErrorPos{File: pe.Pos.Filename, Line: pe.Pos.Line, Column: pe.Pos.Column}
|
||||||
errors := ErrorList{newFatal(pos, pe.Err.Error())}
|
errors := errorList{newFatal(pos, pe.Err.Error())}
|
||||||
return nil, &ParserError{
|
return nil, &Error{
|
||||||
message: "unable to parse",
|
message: "unable to parse",
|
||||||
Errors: errors,
|
Errors: errors,
|
||||||
}
|
}
|
||||||
|
@ -50,49 +50,49 @@ func Parse(reader io.Reader, options ...OptionFunc) (*model.Configuration, error
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
ps := parseAndValidate(root.Node, options...)
|
p := parseAndValidate(root.Node, options...)
|
||||||
if len(ps.Errors) > 0 {
|
if len(p.errors) > 0 {
|
||||||
return nil, &ParserError{
|
return nil, &Error{
|
||||||
message: "unable to parse and validate",
|
message: "unable to parse and validate",
|
||||||
Errors: ps.Errors,
|
Errors: p.errors,
|
||||||
Actions: ps.Actions,
|
Actions: p.actions,
|
||||||
Workflows: ps.Workflows,
|
Workflows: p.workflows,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return &model.Configuration{
|
return &model.Configuration{
|
||||||
Actions: ps.Actions,
|
Actions: p.actions,
|
||||||
Workflows: ps.Workflows,
|
Workflows: p.workflows,
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// parseAndValidate converts a HCL AST into a parseState and validates
|
// parseAndValidate converts a HCL AST into a Parser and validates
|
||||||
// high-level structure.
|
// high-level structure.
|
||||||
// Parameters:
|
// Parameters:
|
||||||
// - root - the contents of a .workflow file, as AST
|
// - root - the contents of a .workflow file, as AST
|
||||||
// Returns:
|
// Returns:
|
||||||
// - a parseState structure containing actions and workflow definitions
|
// - a Parser structure containing actions and workflow definitions
|
||||||
func parseAndValidate(root ast.Node, options ...OptionFunc) *parseState {
|
func parseAndValidate(root ast.Node, options ...OptionFunc) *Parser {
|
||||||
ps := &parseState{
|
p := &Parser{
|
||||||
posMap: make(map[interface{}]ast.Node),
|
posMap: make(map[interface{}]ast.Node),
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, option := range options {
|
for _, option := range options {
|
||||||
option(ps)
|
option(p)
|
||||||
}
|
}
|
||||||
|
|
||||||
ps.parseRoot(root)
|
p.parseRoot(root)
|
||||||
ps.validate()
|
p.validate()
|
||||||
ps.Errors.sort()
|
p.errors.sort()
|
||||||
|
|
||||||
return ps
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ps *parseState) validate() {
|
func (p *Parser) validate() {
|
||||||
ps.analyzeDependencies()
|
p.analyzeDependencies()
|
||||||
ps.checkCircularDependencies()
|
p.checkCircularDependencies()
|
||||||
ps.checkActions()
|
p.checkActions()
|
||||||
ps.checkFlows()
|
p.checkFlows()
|
||||||
}
|
}
|
||||||
|
|
||||||
func uniqStrings(items []string) []string {
|
func uniqStrings(items []string) []string {
|
||||||
|
@ -110,17 +110,17 @@ func uniqStrings(items []string) []string {
|
||||||
// checkCircularDependencies finds loops in the action graph.
|
// checkCircularDependencies finds loops in the action graph.
|
||||||
// It emits a fatal error for each cycle it finds, in the order (top to
|
// It emits a fatal error for each cycle it finds, in the order (top to
|
||||||
// bottom, left to right) they appear in the .workflow file.
|
// bottom, left to right) they appear in the .workflow file.
|
||||||
func (ps *parseState) checkCircularDependencies() {
|
func (p *Parser) checkCircularDependencies() {
|
||||||
// make a map from action name to node ID, which is the index in the ps.Actions array
|
// make a map from action name to node ID, which is the index in the p.actions array
|
||||||
// That is, ps.Actions[actionmap[X]].Identifier == X
|
// That is, p.actions[actionmap[X]].Identifier == X
|
||||||
actionmap := make(map[string]graph.NI)
|
actionmap := make(map[string]graph.NI)
|
||||||
for i, action := range ps.Actions {
|
for i, action := range p.actions {
|
||||||
actionmap[action.Identifier] = graph.NI(i)
|
actionmap[action.Identifier] = graph.NI(i)
|
||||||
}
|
}
|
||||||
|
|
||||||
// make an adjacency list representation of the action dependency graph
|
// make an adjacency list representation of the action dependency graph
|
||||||
adjList := make(graph.AdjacencyList, len(ps.Actions))
|
adjList := make(graph.AdjacencyList, len(p.actions))
|
||||||
for i, action := range ps.Actions {
|
for i, action := range p.actions {
|
||||||
adjList[i] = make([]graph.NI, 0, len(action.Needs))
|
adjList[i] = make([]graph.NI, 0, len(action.Needs))
|
||||||
for _, depName := range action.Needs {
|
for _, depName := range action.Needs {
|
||||||
if depIdx, ok := actionmap[depName]; ok {
|
if depIdx, ok := actionmap[depName]; ok {
|
||||||
|
@ -132,20 +132,20 @@ func (ps *parseState) checkCircularDependencies() {
|
||||||
// find cycles, and print a fatal error for each one
|
// find cycles, and print a fatal error for each one
|
||||||
g := graph.Directed{AdjacencyList: adjList}
|
g := graph.Directed{AdjacencyList: adjList}
|
||||||
g.Cycles(func(cycle []graph.NI) bool {
|
g.Cycles(func(cycle []graph.NI) bool {
|
||||||
node := ps.posMap[&ps.Actions[cycle[len(cycle)-1]].Needs]
|
node := p.posMap[&p.actions[cycle[len(cycle)-1]].Needs]
|
||||||
ps.addFatal(node, "Circular dependency on `%s'", ps.Actions[cycle[0]].Identifier)
|
p.addFatal(node, "Circular dependency on `%s'", p.actions[cycle[0]].Identifier)
|
||||||
return true
|
return true
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// checkActions returns error if any actions are syntactically correct but
|
// checkActions returns error if any actions are syntactically correct but
|
||||||
// have structural errors
|
// have structural errors
|
||||||
func (ps *parseState) checkActions() {
|
func (p *Parser) checkActions() {
|
||||||
secrets := make(map[string]bool)
|
secrets := make(map[string]bool)
|
||||||
for _, t := range ps.Actions {
|
for _, t := range p.actions {
|
||||||
// Ensure the Action has a `uses` attribute
|
// Ensure the Action has a `uses` attribute
|
||||||
if t.Uses == nil {
|
if t.Uses == nil {
|
||||||
ps.addError(ps.posMap[t], "Action `%s' must have a `uses' attribute", t.Identifier)
|
p.addError(p.posMap[t], "Action `%s' must have a `uses' attribute", t.Identifier)
|
||||||
// continue, checking other actions
|
// continue, checking other actions
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -154,7 +154,7 @@ func (ps *parseState) checkActions() {
|
||||||
if !secrets[str] {
|
if !secrets[str] {
|
||||||
secrets[str] = true
|
secrets[str] = true
|
||||||
if len(secrets) == maxSecrets+1 {
|
if len(secrets) == maxSecrets+1 {
|
||||||
ps.addError(ps.posMap[&t.Secrets], "All actions combined must not have more than %d unique secrets", maxSecrets)
|
p.addError(p.posMap[&t.Secrets], "All actions combined must not have more than %d unique secrets", maxSecrets)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -166,16 +166,16 @@ func (ps *parseState) checkActions() {
|
||||||
// Finally, ensure that the same key name isn't used more than once
|
// Finally, ensure that the same key name isn't used more than once
|
||||||
// between env and secrets, combined.
|
// between env and secrets, combined.
|
||||||
for k := range t.Env {
|
for k := range t.Env {
|
||||||
ps.checkEnvironmentVariable(k, ps.posMap[&t.Env])
|
p.checkEnvironmentVariable(k, p.posMap[&t.Env])
|
||||||
}
|
}
|
||||||
secretVars := make(map[string]bool)
|
secretVars := make(map[string]bool)
|
||||||
for _, k := range t.Secrets {
|
for _, k := range t.Secrets {
|
||||||
ps.checkEnvironmentVariable(k, ps.posMap[&t.Secrets])
|
p.checkEnvironmentVariable(k, p.posMap[&t.Secrets])
|
||||||
if _, found := t.Env[k]; found {
|
if _, found := t.Env[k]; found {
|
||||||
ps.addError(ps.posMap[&t.Secrets], "Secret `%s' conflicts with an environment variable with the same name", k)
|
p.addError(p.posMap[&t.Secrets], "Secret `%s' conflicts with an environment variable with the same name", k)
|
||||||
}
|
}
|
||||||
if secretVars[k] {
|
if secretVars[k] {
|
||||||
ps.addWarning(ps.posMap[&t.Secrets], "Secret `%s' redefined", k)
|
p.addWarning(p.posMap[&t.Secrets], "Secret `%s' redefined", k)
|
||||||
}
|
}
|
||||||
secretVars[k] = true
|
secretVars[k] = true
|
||||||
}
|
}
|
||||||
|
@ -184,26 +184,26 @@ func (ps *parseState) checkActions() {
|
||||||
|
|
||||||
var envVarChecker = regexp.MustCompile(`\A[A-Za-z_][A-Za-z_0-9]*\z`)
|
var envVarChecker = regexp.MustCompile(`\A[A-Za-z_][A-Za-z_0-9]*\z`)
|
||||||
|
|
||||||
func (ps *parseState) checkEnvironmentVariable(key string, node ast.Node) {
|
func (p *Parser) checkEnvironmentVariable(key string, node ast.Node) {
|
||||||
if key != "GITHUB_TOKEN" && strings.HasPrefix(key, "GITHUB_") {
|
if key != "GITHUB_TOKEN" && strings.HasPrefix(key, "GITHUB_") {
|
||||||
ps.addWarning(node, "Environment variables and secrets beginning with `GITHUB_' are reserved")
|
p.addWarning(node, "Environment variables and secrets beginning with `GITHUB_' are reserved")
|
||||||
}
|
}
|
||||||
if !envVarChecker.MatchString(key) {
|
if !envVarChecker.MatchString(key) {
|
||||||
ps.addWarning(node, "Environment variables and secrets must contain only A-Z, a-z, 0-9, and _ characters, got `%s'", key)
|
p.addWarning(node, "Environment variables and secrets must contain only A-Z, a-z, 0-9, and _ characters, got `%s'", key)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// checkFlows appends an error if any workflows are syntactically correct but
|
// checkFlows appends an error if any workflows are syntactically correct but
|
||||||
// have structural errors
|
// have structural errors
|
||||||
func (ps *parseState) checkFlows() {
|
func (p *Parser) checkFlows() {
|
||||||
actionmap := makeActionMap(ps.Actions)
|
actionmap := makeActionMap(p.actions)
|
||||||
for _, f := range ps.Workflows {
|
for _, f := range p.workflows {
|
||||||
// make sure there's an `on` attribute
|
// make sure there's an `on` attribute
|
||||||
if f.On == "" {
|
if f.On == "" {
|
||||||
ps.addError(ps.posMap[f], "Workflow `%s' must have an `on' attribute", f.Identifier)
|
p.addError(p.posMap[f], "Workflow `%s' must have an `on' attribute", f.Identifier)
|
||||||
// continue, checking other workflows
|
// continue, checking other workflows
|
||||||
} else if !model.IsAllowedEventType(f.On) {
|
} else if !isAllowedEventType(f.On) {
|
||||||
ps.addError(ps.posMap[&f.On], "Workflow `%s' has unknown `on' value `%s'", f.Identifier, f.On)
|
p.addError(p.posMap[&f.On], "Workflow `%s' has unknown `on' value `%s'", f.Identifier, f.On)
|
||||||
// continue, checking other workflows
|
// continue, checking other workflows
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -211,7 +211,7 @@ func (ps *parseState) checkFlows() {
|
||||||
for _, actionID := range f.Resolves {
|
for _, actionID := range f.Resolves {
|
||||||
_, ok := actionmap[actionID]
|
_, ok := actionmap[actionID]
|
||||||
if !ok {
|
if !ok {
|
||||||
ps.addError(ps.posMap[&f.Resolves], "Workflow `%s' resolves unknown action `%s'", f.Identifier, actionID)
|
p.addError(p.posMap[&f.Resolves], "Workflow `%s' resolves unknown action `%s'", f.Identifier, actionID)
|
||||||
// continue, checking other workflows
|
// continue, checking other workflows
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -229,28 +229,28 @@ func makeActionMap(actions []*model.Action) map[string]*model.Action {
|
||||||
// Fill in Action dependencies for all actions based on explicit dependencies
|
// Fill in Action dependencies for all actions based on explicit dependencies
|
||||||
// declarations.
|
// declarations.
|
||||||
//
|
//
|
||||||
// ps.Actions is an array of Action objects, as parsed. The Action objects in
|
// p.actions is an array of Action objects, as parsed. The Action objects in
|
||||||
// this array are mutated, by setting Action.dependencies for each.
|
// this array are mutated, by setting Action.dependencies for each.
|
||||||
func (ps *parseState) analyzeDependencies() {
|
func (p *Parser) analyzeDependencies() {
|
||||||
actionmap := makeActionMap(ps.Actions)
|
actionmap := makeActionMap(p.actions)
|
||||||
for _, action := range ps.Actions {
|
for _, action := range p.actions {
|
||||||
// analyze explicit dependencies for each "needs" keyword
|
// analyze explicit dependencies for each "needs" keyword
|
||||||
ps.analyzeNeeds(action, actionmap)
|
p.analyzeNeeds(action, actionmap)
|
||||||
}
|
}
|
||||||
|
|
||||||
// uniq all the dependencies lists
|
// uniq all the dependencies lists
|
||||||
for _, action := range ps.Actions {
|
for _, action := range p.actions {
|
||||||
if len(action.Needs) >= 2 {
|
if len(action.Needs) >= 2 {
|
||||||
action.Needs = uniqStrings(action.Needs)
|
action.Needs = uniqStrings(action.Needs)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ps *parseState) analyzeNeeds(action *model.Action, actionmap map[string]*model.Action) {
|
func (p *Parser) analyzeNeeds(action *model.Action, actionmap map[string]*model.Action) {
|
||||||
for _, need := range action.Needs {
|
for _, need := range action.Needs {
|
||||||
_, ok := actionmap[need]
|
_, ok := actionmap[need]
|
||||||
if !ok {
|
if !ok {
|
||||||
ps.addError(ps.posMap[&action.Needs], "Action `%s' needs nonexistent action `%s'", action.Identifier, need)
|
p.addError(p.posMap[&action.Needs], "Action `%s' needs nonexistent action `%s'", action.Identifier, need)
|
||||||
// continue, checking other actions
|
// continue, checking other actions
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -263,27 +263,27 @@ func (ps *parseState) analyzeNeeds(action *model.Action, actionmap map[string]*m
|
||||||
// if it's not an object, or it has non-assignment attributes, or if any
|
// if it's not an object, or it has non-assignment attributes, or if any
|
||||||
// of its values are anything other than a string, the function appends an
|
// of its values are anything other than a string, the function appends an
|
||||||
// appropriate error.
|
// appropriate error.
|
||||||
func (ps *parseState) literalToStringMap(node ast.Node) map[string]string {
|
func (p *Parser) literalToStringMap(node ast.Node) map[string]string {
|
||||||
obj, ok := node.(*ast.ObjectType)
|
obj, ok := node.(*ast.ObjectType)
|
||||||
|
|
||||||
if !ok {
|
if !ok {
|
||||||
ps.addError(node, "Expected object, got %s", typename(node))
|
p.addError(node, "Expected object, got %s", typename(node))
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
ps.checkAssignmentsOnly(obj.List, "")
|
p.checkAssignmentsOnly(obj.List, "")
|
||||||
|
|
||||||
ret := make(map[string]string)
|
ret := make(map[string]string)
|
||||||
for _, item := range obj.List.Items {
|
for _, item := range obj.List.Items {
|
||||||
if !isAssignment(item) {
|
if !isAssignment(item) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
str, ok := ps.literalToString(item.Val)
|
str, ok := p.literalToString(item.Val)
|
||||||
if ok {
|
if ok {
|
||||||
key := ps.identString(item.Keys[0].Token)
|
key := p.identString(item.Keys[0].Token)
|
||||||
if key != "" {
|
if key != "" {
|
||||||
if _, found := ret[key]; found {
|
if _, found := ret[key]; found {
|
||||||
ps.addWarning(node, "Environment variable `%s' redefined", key)
|
p.addWarning(node, "Environment variable `%s' redefined", key)
|
||||||
}
|
}
|
||||||
ret[key] = str
|
ret[key] = str
|
||||||
}
|
}
|
||||||
|
@ -293,14 +293,14 @@ func (ps *parseState) literalToStringMap(node ast.Node) map[string]string {
|
||||||
return ret
|
return ret
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ps *parseState) identString(t token.Token) string {
|
func (p *Parser) identString(t token.Token) string {
|
||||||
switch t.Type {
|
switch t.Type {
|
||||||
case token.STRING:
|
case token.STRING:
|
||||||
return t.Value().(string)
|
return t.Value().(string)
|
||||||
case token.IDENT:
|
case token.IDENT:
|
||||||
return t.Text
|
return t.Text
|
||||||
default:
|
default:
|
||||||
ps.addErrorFromToken(t,
|
p.addErrorFromToken(t,
|
||||||
"Each identifier should be a string, got %s",
|
"Each identifier should be a string, got %s",
|
||||||
strings.ToLower(t.Type.String()))
|
strings.ToLower(t.Type.String()))
|
||||||
return ""
|
return ""
|
||||||
|
@ -316,25 +316,25 @@ func (ps *parseState) identString(t token.Token) string {
|
||||||
// If promoteScalars is true, then values that are scalar strings are
|
// If promoteScalars is true, then values that are scalar strings are
|
||||||
// promoted to a single-entry string array. E.g., "foo" becomes the Go
|
// promoted to a single-entry string array. E.g., "foo" becomes the Go
|
||||||
// expression []string{ "foo" }.
|
// expression []string{ "foo" }.
|
||||||
func (ps *parseState) literalToStringArray(node ast.Node, promoteScalars bool) ([]string, bool) {
|
func (p *Parser) literalToStringArray(node ast.Node, promoteScalars bool) ([]string, bool) {
|
||||||
literal, ok := node.(*ast.LiteralType)
|
literal, ok := node.(*ast.LiteralType)
|
||||||
if ok {
|
if ok {
|
||||||
if promoteScalars && literal.Token.Type == token.STRING {
|
if promoteScalars && literal.Token.Type == token.STRING {
|
||||||
return []string{literal.Token.Value().(string)}, true
|
return []string{literal.Token.Value().(string)}, true
|
||||||
}
|
}
|
||||||
ps.addError(node, "Expected list, got %s", typename(node))
|
p.addError(node, "Expected list, got %s", typename(node))
|
||||||
return nil, false
|
return nil, false
|
||||||
}
|
}
|
||||||
|
|
||||||
list, ok := node.(*ast.ListType)
|
list, ok := node.(*ast.ListType)
|
||||||
if !ok {
|
if !ok {
|
||||||
ps.addError(node, "Expected list, got %s", typename(node))
|
p.addError(node, "Expected list, got %s", typename(node))
|
||||||
return nil, false
|
return nil, false
|
||||||
}
|
}
|
||||||
|
|
||||||
ret := make([]string, 0, len(list.List))
|
ret := make([]string, 0, len(list.List))
|
||||||
for _, literal := range list.List {
|
for _, literal := range list.List {
|
||||||
str, ok := ps.literalToString(literal)
|
str, ok := p.literalToString(literal)
|
||||||
if ok {
|
if ok {
|
||||||
ret = append(ret, str)
|
ret = append(ret, str)
|
||||||
}
|
}
|
||||||
|
@ -346,8 +346,8 @@ func (ps *parseState) literalToStringArray(node ast.Node, promoteScalars bool) (
|
||||||
// literalToString converts a literal value from the AST into a string.
|
// literalToString converts a literal value from the AST into a string.
|
||||||
// If the value isn't a scalar or isn't a string, the function appends an
|
// If the value isn't a scalar or isn't a string, the function appends an
|
||||||
// appropriate error and returns "", false.
|
// appropriate error and returns "", false.
|
||||||
func (ps *parseState) literalToString(node ast.Node) (string, bool) {
|
func (p *Parser) literalToString(node ast.Node) (string, bool) {
|
||||||
val := ps.literalCast(node, token.STRING)
|
val := p.literalCast(node, token.STRING)
|
||||||
if val == nil {
|
if val == nil {
|
||||||
return "", false
|
return "", false
|
||||||
}
|
}
|
||||||
|
@ -359,117 +359,117 @@ func (ps *parseState) literalToString(node ast.Node) (string, bool) {
|
||||||
// Exponents (1e6) and floats (123.456) generate errors.
|
// Exponents (1e6) and floats (123.456) generate errors.
|
||||||
// If the value isn't a scalar or isn't a number, the function appends an
|
// If the value isn't a scalar or isn't a number, the function appends an
|
||||||
// appropriate error and returns 0, false.
|
// appropriate error and returns 0, false.
|
||||||
func (ps *parseState) literalToInt(node ast.Node) (int64, bool) {
|
func (p *Parser) literalToInt(node ast.Node) (int64, bool) {
|
||||||
val := ps.literalCast(node, token.NUMBER)
|
val := p.literalCast(node, token.NUMBER)
|
||||||
if val == nil {
|
if val == nil {
|
||||||
return 0, false
|
return 0, false
|
||||||
}
|
}
|
||||||
return val.(int64), true
|
return val.(int64), true
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ps *parseState) literalCast(node ast.Node, t token.Type) interface{} {
|
func (p *Parser) literalCast(node ast.Node, t token.Type) interface{} {
|
||||||
literal, ok := node.(*ast.LiteralType)
|
literal, ok := node.(*ast.LiteralType)
|
||||||
if !ok {
|
if !ok {
|
||||||
ps.addError(node, "Expected %s, got %s", strings.ToLower(t.String()), typename(node))
|
p.addError(node, "Expected %s, got %s", strings.ToLower(t.String()), typename(node))
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
if literal.Token.Type != t {
|
if literal.Token.Type != t {
|
||||||
ps.addError(node, "Expected %s, got %s", strings.ToLower(t.String()), typename(node))
|
p.addError(node, "Expected %s, got %s", strings.ToLower(t.String()), typename(node))
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return literal.Token.Value()
|
return literal.Token.Value()
|
||||||
}
|
}
|
||||||
|
|
||||||
// parseRoot parses the root of the AST, filling in ps.Version, ps.Actions,
|
// parseRoot parses the root of the AST, filling in p.version, p.actions,
|
||||||
// and ps.Workflows.
|
// and p.workflows.
|
||||||
func (ps *parseState) parseRoot(node ast.Node) {
|
func (p *Parser) parseRoot(node ast.Node) {
|
||||||
objectList, ok := node.(*ast.ObjectList)
|
objectList, ok := node.(*ast.ObjectList)
|
||||||
if !ok {
|
if !ok {
|
||||||
// It should be impossible for HCL to return anything other than an
|
// It should be impossible for HCL to return anything other than an
|
||||||
// ObjectList as the root node. This error should never happen.
|
// ObjectList as the root node. This error should never happen.
|
||||||
ps.addError(node, "Internal error: root node must be an ObjectList")
|
p.addError(node, "Internal error: root node must be an ObjectList")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
ps.Actions = make([]*model.Action, 0, len(objectList.Items))
|
p.actions = make([]*model.Action, 0, len(objectList.Items))
|
||||||
ps.Workflows = make([]*model.Workflow, 0, len(objectList.Items))
|
p.workflows = make([]*model.Workflow, 0, len(objectList.Items))
|
||||||
identifiers := make(map[string]bool)
|
identifiers := make(map[string]bool)
|
||||||
for idx, item := range objectList.Items {
|
for idx, item := range objectList.Items {
|
||||||
if item.Assign.IsValid() {
|
if item.Assign.IsValid() {
|
||||||
ps.parseVersion(idx, item)
|
p.parseVersion(idx, item)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
ps.parseBlock(item, identifiers)
|
p.parseBlock(item, identifiers)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// parseBlock parses a single, top-level "action" or "workflow" block,
|
// parseBlock parses a single, top-level "action" or "workflow" block,
|
||||||
// appending it to ps.Actions or ps.Workflows as appropriate.
|
// appending it to p.actions or p.workflows as appropriate.
|
||||||
func (ps *parseState) parseBlock(item *ast.ObjectItem, identifiers map[string]bool) {
|
func (p *Parser) parseBlock(item *ast.ObjectItem, identifiers map[string]bool) {
|
||||||
if len(item.Keys) != 2 {
|
if len(item.Keys) != 2 {
|
||||||
ps.addError(item, "Invalid toplevel declaration")
|
p.addError(item, "Invalid toplevel declaration")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
cmd := ps.identString(item.Keys[0].Token)
|
cmd := p.identString(item.Keys[0].Token)
|
||||||
var id string
|
var id string
|
||||||
|
|
||||||
switch cmd {
|
switch cmd {
|
||||||
case "action":
|
case "action":
|
||||||
action := ps.actionifyItem(item)
|
action := p.actionifyItem(item)
|
||||||
if action != nil {
|
if action != nil {
|
||||||
id = action.Identifier
|
id = action.Identifier
|
||||||
ps.Actions = append(ps.Actions, action)
|
p.actions = append(p.actions, action)
|
||||||
}
|
}
|
||||||
case "workflow":
|
case "workflow":
|
||||||
workflow := ps.workflowifyItem(item)
|
workflow := p.workflowifyItem(item)
|
||||||
if workflow != nil {
|
if workflow != nil {
|
||||||
id = workflow.Identifier
|
id = workflow.Identifier
|
||||||
ps.Workflows = append(ps.Workflows, workflow)
|
p.workflows = append(p.workflows, workflow)
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
ps.addError(item, "Invalid toplevel keyword, `%s'", cmd)
|
p.addError(item, "Invalid toplevel keyword, `%s'", cmd)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if identifiers[id] {
|
if identifiers[id] {
|
||||||
ps.addError(item, "Identifier `%s' redefined", id)
|
p.addError(item, "Identifier `%s' redefined", id)
|
||||||
}
|
}
|
||||||
|
|
||||||
identifiers[id] = true
|
identifiers[id] = true
|
||||||
}
|
}
|
||||||
|
|
||||||
// parseVersion parses a top-level `version=N` statement, filling in
|
// parseVersion parses a top-level `version=N` statement, filling in
|
||||||
// ps.Version.
|
// p.version.
|
||||||
func (ps *parseState) parseVersion(idx int, item *ast.ObjectItem) {
|
func (p *Parser) parseVersion(idx int, item *ast.ObjectItem) {
|
||||||
if len(item.Keys) != 1 || ps.identString(item.Keys[0].Token) != "version" {
|
if len(item.Keys) != 1 || p.identString(item.Keys[0].Token) != "version" {
|
||||||
// not a valid `version` declaration
|
// not a valid `version` declaration
|
||||||
ps.addError(item.Val, "Toplevel declarations cannot be assignments")
|
p.addError(item.Val, "Toplevel declarations cannot be assignments")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if idx != 0 {
|
if idx != 0 {
|
||||||
ps.addError(item.Val, "`version` must be the first declaration")
|
p.addError(item.Val, "`version` must be the first declaration")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
version, ok := ps.literalToInt(item.Val)
|
version, ok := p.literalToInt(item.Val)
|
||||||
if !ok {
|
if !ok {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if version < minVersion || version > maxVersion {
|
if version < minVersion || version > maxVersion {
|
||||||
ps.addError(item.Val, "`version = %d` is not supported", version)
|
p.addError(item.Val, "`version = %d` is not supported", version)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
ps.Version = int(version)
|
p.version = int(version)
|
||||||
}
|
}
|
||||||
|
|
||||||
// parseIdentifier parses the double-quoted identifier (name) for a
|
// parseIdentifier parses the double-quoted identifier (name) for a
|
||||||
// "workflow" or "action" block.
|
// "workflow" or "action" block.
|
||||||
func (ps *parseState) parseIdentifier(key *ast.ObjectKey) string {
|
func (p *Parser) parseIdentifier(key *ast.ObjectKey) string {
|
||||||
id := key.Token.Text
|
id := key.Token.Text
|
||||||
if len(id) < 3 || id[0] != '"' || id[len(id)-1] != '"' {
|
if len(id) < 3 || id[0] != '"' || id[len(id)-1] != '"' {
|
||||||
ps.addError(key, "Invalid format for identifier `%s'", id)
|
p.addError(key, "Invalid format for identifier `%s'", id)
|
||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
return id[1 : len(id)-1]
|
return id[1 : len(id)-1]
|
||||||
|
@ -477,20 +477,20 @@ func (ps *parseState) parseIdentifier(key *ast.ObjectKey) string {
|
||||||
|
|
||||||
// parseRequiredString parses a string value, setting its value into the
|
// parseRequiredString parses a string value, setting its value into the
|
||||||
// out-parameter `value` and returning true if successful.
|
// out-parameter `value` and returning true if successful.
|
||||||
func (ps *parseState) parseRequiredString(value *string, val ast.Node, nodeType, name, id string) bool {
|
func (p *Parser) parseRequiredString(value *string, val ast.Node, nodeType, name, id string) bool {
|
||||||
if *value != "" {
|
if *value != "" {
|
||||||
ps.addWarning(val, "`%s' redefined in %s `%s'", name, nodeType, id)
|
p.addWarning(val, "`%s' redefined in %s `%s'", name, nodeType, id)
|
||||||
// continue, allowing the redefinition
|
// continue, allowing the redefinition
|
||||||
}
|
}
|
||||||
|
|
||||||
newVal, ok := ps.literalToString(val)
|
newVal, ok := p.literalToString(val)
|
||||||
if !ok {
|
if !ok {
|
||||||
ps.addError(val, "Invalid format for `%s' in %s `%s', expected string", name, nodeType, id)
|
p.addError(val, "Invalid format for `%s' in %s `%s', expected string", name, nodeType, id)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
if newVal == "" {
|
if newVal == "" {
|
||||||
ps.addError(val, "`%s' value in %s `%s' cannot be blank", name, nodeType, id)
|
p.addError(val, "`%s' value in %s `%s' cannot be blank", name, nodeType, id)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -500,8 +500,8 @@ func (ps *parseState) parseRequiredString(value *string, val ast.Node, nodeType,
|
||||||
|
|
||||||
// parseBlockPreamble parses the beginning of a "workflow" or "action"
|
// parseBlockPreamble parses the beginning of a "workflow" or "action"
|
||||||
// block.
|
// block.
|
||||||
func (ps *parseState) parseBlockPreamble(item *ast.ObjectItem, nodeType string) (string, *ast.ObjectType) {
|
func (p *Parser) parseBlockPreamble(item *ast.ObjectItem, nodeType string) (string, *ast.ObjectType) {
|
||||||
id := ps.parseIdentifier(item.Keys[1])
|
id := p.parseIdentifier(item.Keys[1])
|
||||||
if id == "" {
|
if id == "" {
|
||||||
return "", nil
|
return "", nil
|
||||||
}
|
}
|
||||||
|
@ -509,18 +509,18 @@ func (ps *parseState) parseBlockPreamble(item *ast.ObjectItem, nodeType string)
|
||||||
node := item.Val
|
node := item.Val
|
||||||
obj, ok := node.(*ast.ObjectType)
|
obj, ok := node.(*ast.ObjectType)
|
||||||
if !ok {
|
if !ok {
|
||||||
ps.addError(node, "Each %s must have an { ... } block", nodeType)
|
p.addError(node, "Each %s must have an { ... } block", nodeType)
|
||||||
return "", nil
|
return "", nil
|
||||||
}
|
}
|
||||||
|
|
||||||
ps.checkAssignmentsOnly(obj.List, id)
|
p.checkAssignmentsOnly(obj.List, id)
|
||||||
|
|
||||||
return id, obj
|
return id, obj
|
||||||
}
|
}
|
||||||
|
|
||||||
// actionifyItem converts an AST block to an Action object.
|
// actionifyItem converts an AST block to an Action object.
|
||||||
func (ps *parseState) actionifyItem(item *ast.ObjectItem) *model.Action {
|
func (p *Parser) actionifyItem(item *ast.ObjectItem) *model.Action {
|
||||||
id, obj := ps.parseBlockPreamble(item, "action")
|
id, obj := p.parseBlockPreamble(item, "action")
|
||||||
if obj == nil {
|
if obj == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
@ -528,10 +528,10 @@ func (ps *parseState) actionifyItem(item *ast.ObjectItem) *model.Action {
|
||||||
action := &model.Action{
|
action := &model.Action{
|
||||||
Identifier: id,
|
Identifier: id,
|
||||||
}
|
}
|
||||||
ps.posMap[action] = item
|
p.posMap[action] = item
|
||||||
|
|
||||||
for _, item := range obj.List.Items {
|
for _, item := range obj.List.Items {
|
||||||
ps.parseActionAttribute(ps.identString(item.Keys[0].Token), action, item.Val)
|
p.parseActionAttribute(p.identString(item.Keys[0].Token), action, item.Val)
|
||||||
}
|
}
|
||||||
|
|
||||||
return action
|
return action
|
||||||
|
@ -543,53 +543,53 @@ func (ps *parseState) actionifyItem(item *ast.ObjectItem) *model.Action {
|
||||||
// It also has higher-than-normal cyclomatic complexity, so we ask the
|
// It also has higher-than-normal cyclomatic complexity, so we ask the
|
||||||
// gocyclo linter to ignore it.
|
// gocyclo linter to ignore it.
|
||||||
// nolint: gocyclo
|
// nolint: gocyclo
|
||||||
func (ps *parseState) parseActionAttribute(name string, action *model.Action, val ast.Node) {
|
func (p *Parser) parseActionAttribute(name string, action *model.Action, val ast.Node) {
|
||||||
switch name {
|
switch name {
|
||||||
case "uses":
|
case "uses":
|
||||||
ps.parseUses(action, val)
|
p.parseUses(action, val)
|
||||||
case "needs":
|
case "needs":
|
||||||
if needs, ok := ps.literalToStringArray(val, true); ok {
|
if needs, ok := p.literalToStringArray(val, true); ok {
|
||||||
action.Needs = needs
|
action.Needs = needs
|
||||||
ps.posMap[&action.Needs] = val
|
p.posMap[&action.Needs] = val
|
||||||
}
|
}
|
||||||
case "runs":
|
case "runs":
|
||||||
if runs := ps.parseCommand(action, action.Runs, name, val, false); runs != nil {
|
if runs := p.parseCommand(action, action.Runs, name, val, false); runs != nil {
|
||||||
action.Runs = runs
|
action.Runs = runs
|
||||||
}
|
}
|
||||||
case "args":
|
case "args":
|
||||||
if args := ps.parseCommand(action, action.Args, name, val, true); args != nil {
|
if args := p.parseCommand(action, action.Args, name, val, true); args != nil {
|
||||||
action.Args = args
|
action.Args = args
|
||||||
}
|
}
|
||||||
case "env":
|
case "env":
|
||||||
if env := ps.literalToStringMap(val); env != nil {
|
if env := p.literalToStringMap(val); env != nil {
|
||||||
action.Env = env
|
action.Env = env
|
||||||
}
|
}
|
||||||
ps.posMap[&action.Env] = val
|
p.posMap[&action.Env] = val
|
||||||
case "secrets":
|
case "secrets":
|
||||||
if secrets, ok := ps.literalToStringArray(val, false); ok {
|
if secrets, ok := p.literalToStringArray(val, false); ok {
|
||||||
action.Secrets = secrets
|
action.Secrets = secrets
|
||||||
ps.posMap[&action.Secrets] = val
|
p.posMap[&action.Secrets] = val
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
ps.addWarning(val, "Unknown action attribute `%s'", name)
|
p.addWarning(val, "Unknown action attribute `%s'", name)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// parseUses sets the action.Uses value based on the contents of the AST
|
// parseUses sets the action.Uses value based on the contents of the AST
|
||||||
// node. This function enforces formatting requirements on the value.
|
// node. This function enforces formatting requirements on the value.
|
||||||
func (ps *parseState) parseUses(action *model.Action, node ast.Node) {
|
func (p *Parser) parseUses(action *model.Action, node ast.Node) {
|
||||||
if action.Uses != nil {
|
if action.Uses != nil {
|
||||||
ps.addWarning(node, "`uses' redefined in action `%s'", action.Identifier)
|
p.addWarning(node, "`uses' redefined in action `%s'", action.Identifier)
|
||||||
// continue, allowing the redefinition
|
// continue, allowing the redefinition
|
||||||
}
|
}
|
||||||
strVal, ok := ps.literalToString(node)
|
strVal, ok := p.literalToString(node)
|
||||||
if !ok {
|
if !ok {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if strVal == "" {
|
if strVal == "" {
|
||||||
action.Uses = &model.UsesInvalid{}
|
action.Uses = &model.UsesInvalid{}
|
||||||
ps.addError(node, "`uses' value in action `%s' cannot be blank", action.Identifier)
|
p.addError(node, "`uses' value in action `%s' cannot be blank", action.Identifier)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if strings.HasPrefix(strVal, "./") {
|
if strings.HasPrefix(strVal, "./") {
|
||||||
|
@ -605,14 +605,14 @@ func (ps *parseState) parseUses(action *model.Action, node ast.Node) {
|
||||||
tok := strings.Split(strVal, "@")
|
tok := strings.Split(strVal, "@")
|
||||||
if len(tok) != 2 {
|
if len(tok) != 2 {
|
||||||
action.Uses = &model.UsesInvalid{Raw: strVal}
|
action.Uses = &model.UsesInvalid{Raw: strVal}
|
||||||
ps.addError(node, "The `uses' attribute must be a path, a Docker image, or owner/repo@ref")
|
p.addError(node, "The `uses' attribute must be a path, a Docker image, or owner/repo@ref")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
ref := tok[1]
|
ref := tok[1]
|
||||||
tok = strings.SplitN(tok[0], "/", 3)
|
tok = strings.SplitN(tok[0], "/", 3)
|
||||||
if len(tok) < 2 {
|
if len(tok) < 2 {
|
||||||
action.Uses = &model.UsesInvalid{Raw: strVal}
|
action.Uses = &model.UsesInvalid{Raw: strVal}
|
||||||
ps.addError(node, "The `uses' attribute must be a path, a Docker image, or owner/repo@ref")
|
p.addError(node, "The `uses' attribute must be a path, a Docker image, or owner/repo@ref")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
usesRepo := &model.UsesRepository{Repository: tok[0] + "/" + tok[1], Ref: ref}
|
usesRepo := &model.UsesRepository{Repository: tok[0] + "/" + tok[1], Ref: ref}
|
||||||
|
@ -625,15 +625,15 @@ func (ps *parseState) parseUses(action *model.Action, node ast.Node) {
|
||||||
// parseUses sets the action.Runs or action.Args value based on the
|
// parseUses sets the action.Runs or action.Args value based on the
|
||||||
// contents of the AST node. This function enforces formatting
|
// contents of the AST node. This function enforces formatting
|
||||||
// requirements on the value.
|
// requirements on the value.
|
||||||
func (ps *parseState) parseCommand(action *model.Action, cmd model.Command, name string, node ast.Node, allowBlank bool) model.Command {
|
func (p *Parser) parseCommand(action *model.Action, cmd model.Command, name string, node ast.Node, allowBlank bool) model.Command {
|
||||||
if cmd != nil {
|
if cmd != nil {
|
||||||
ps.addWarning(node, "`%s' redefined in action `%s'", name, action.Identifier)
|
p.addWarning(node, "`%s' redefined in action `%s'", name, action.Identifier)
|
||||||
// continue, allowing the redefinition
|
// continue, allowing the redefinition
|
||||||
}
|
}
|
||||||
|
|
||||||
// Is it a list?
|
// Is it a list?
|
||||||
if _, ok := node.(*ast.ListType); ok {
|
if _, ok := node.(*ast.ListType); ok {
|
||||||
if parsed, ok := ps.literalToStringArray(node, false); ok {
|
if parsed, ok := p.literalToStringArray(node, false); ok {
|
||||||
return &model.ListCommand{Values: parsed}
|
return &model.ListCommand{Values: parsed}
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
|
@ -642,12 +642,12 @@ func (ps *parseState) parseCommand(action *model.Action, cmd model.Command, name
|
||||||
// If not, parse a whitespace-separated string into a list.
|
// If not, parse a whitespace-separated string into a list.
|
||||||
var raw string
|
var raw string
|
||||||
var ok bool
|
var ok bool
|
||||||
if raw, ok = ps.literalToString(node); !ok {
|
if raw, ok = p.literalToString(node); !ok {
|
||||||
ps.addError(node, "The `%s' attribute must be a string or a list", name)
|
p.addError(node, "The `%s' attribute must be a string or a list", name)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
if raw == "" && !allowBlank {
|
if raw == "" && !allowBlank {
|
||||||
ps.addError(node, "`%s' value in action `%s' cannot be blank", name, action.Identifier)
|
p.addError(node, "`%s' value in action `%s' cannot be blank", name, action.Identifier)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
return &model.StringCommand{Value: raw}
|
return &model.StringCommand{Value: raw}
|
||||||
|
@ -667,8 +667,8 @@ func typename(val interface{}) string {
|
||||||
}
|
}
|
||||||
|
|
||||||
// workflowifyItem converts an AST block to a Workflow object.
|
// workflowifyItem converts an AST block to a Workflow object.
|
||||||
func (ps *parseState) workflowifyItem(item *ast.ObjectItem) *model.Workflow {
|
func (p *Parser) workflowifyItem(item *ast.ObjectItem) *model.Workflow {
|
||||||
id, obj := ps.parseBlockPreamble(item, "workflow")
|
id, obj := p.parseBlockPreamble(item, "workflow")
|
||||||
if obj == nil {
|
if obj == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
@ -676,32 +676,32 @@ func (ps *parseState) workflowifyItem(item *ast.ObjectItem) *model.Workflow {
|
||||||
var ok bool
|
var ok bool
|
||||||
workflow := &model.Workflow{Identifier: id}
|
workflow := &model.Workflow{Identifier: id}
|
||||||
for _, item := range obj.List.Items {
|
for _, item := range obj.List.Items {
|
||||||
name := ps.identString(item.Keys[0].Token)
|
name := p.identString(item.Keys[0].Token)
|
||||||
|
|
||||||
switch name {
|
switch name {
|
||||||
case "on":
|
case "on":
|
||||||
ok = ps.parseRequiredString(&workflow.On, item.Val, "workflow", name, id)
|
ok = p.parseRequiredString(&workflow.On, item.Val, "workflow", name, id)
|
||||||
if ok {
|
if ok {
|
||||||
ps.posMap[&workflow.On] = item
|
p.posMap[&workflow.On] = item
|
||||||
}
|
}
|
||||||
case "resolves":
|
case "resolves":
|
||||||
if workflow.Resolves != nil {
|
if workflow.Resolves != nil {
|
||||||
ps.addWarning(item.Val, "`resolves' redefined in workflow `%s'", id)
|
p.addWarning(item.Val, "`resolves' redefined in workflow `%s'", id)
|
||||||
// continue, allowing the redefinition
|
// continue, allowing the redefinition
|
||||||
}
|
}
|
||||||
workflow.Resolves, ok = ps.literalToStringArray(item.Val, true)
|
workflow.Resolves, ok = p.literalToStringArray(item.Val, true)
|
||||||
ps.posMap[&workflow.Resolves] = item
|
p.posMap[&workflow.Resolves] = item
|
||||||
if !ok {
|
if !ok {
|
||||||
ps.addError(item.Val, "Invalid format for `resolves' in workflow `%s', expected list of strings", id)
|
p.addError(item.Val, "Invalid format for `resolves' in workflow `%s', expected list of strings", id)
|
||||||
// continue, allowing workflow with no `resolves`
|
// continue, allowing workflow with no `resolves`
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
ps.addWarning(item.Val, "Unknown workflow attribute `%s'", name)
|
p.addWarning(item.Val, "Unknown workflow attribute `%s'", name)
|
||||||
// continue, treat as no-op
|
// continue, treat as no-op
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ps.posMap[workflow] = item
|
p.posMap[workflow] = item
|
||||||
return workflow
|
return workflow
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -711,7 +711,7 @@ func isAssignment(item *ast.ObjectItem) bool {
|
||||||
|
|
||||||
// checkAssignmentsOnly ensures that all elements in the object are "key =
|
// checkAssignmentsOnly ensures that all elements in the object are "key =
|
||||||
// value" pairs.
|
// value" pairs.
|
||||||
func (ps *parseState) checkAssignmentsOnly(objectList *ast.ObjectList, actionID string) {
|
func (p *Parser) checkAssignmentsOnly(objectList *ast.ObjectList, actionID string) {
|
||||||
for _, item := range objectList.Items {
|
for _, item := range objectList.Items {
|
||||||
if !isAssignment(item) {
|
if !isAssignment(item) {
|
||||||
var desc string
|
var desc string
|
||||||
|
@ -720,44 +720,44 @@ func (ps *parseState) checkAssignmentsOnly(objectList *ast.ObjectList, actionID
|
||||||
} else {
|
} else {
|
||||||
desc = fmt.Sprintf("action `%s'", actionID)
|
desc = fmt.Sprintf("action `%s'", actionID)
|
||||||
}
|
}
|
||||||
ps.addErrorFromObjectItem(item, "Each attribute of %s must be an assignment", desc)
|
p.addErrorFromObjectItem(item, "Each attribute of %s must be an assignment", desc)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
child, ok := item.Val.(*ast.ObjectType)
|
child, ok := item.Val.(*ast.ObjectType)
|
||||||
if ok {
|
if ok {
|
||||||
ps.checkAssignmentsOnly(child.List, actionID)
|
p.checkAssignmentsOnly(child.List, actionID)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ps *parseState) addWarning(node ast.Node, format string, a ...interface{}) {
|
func (p *Parser) addWarning(node ast.Node, format string, a ...interface{}) {
|
||||||
if ps.suppressSeverity < WARNING {
|
if p.suppressSeverity < WARNING {
|
||||||
ps.Errors = append(ps.Errors, newWarning(posFromNode(node), format, a...))
|
p.errors = append(p.errors, newWarning(posFromNode(node), format, a...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ps *parseState) addError(node ast.Node, format string, a ...interface{}) {
|
func (p *Parser) addError(node ast.Node, format string, a ...interface{}) {
|
||||||
if ps.suppressSeverity < ERROR {
|
if p.suppressSeverity < ERROR {
|
||||||
ps.Errors = append(ps.Errors, newError(posFromNode(node), format, a...))
|
p.errors = append(p.errors, newError(posFromNode(node), format, a...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ps *parseState) addErrorFromToken(t token.Token, format string, a ...interface{}) {
|
func (p *Parser) addErrorFromToken(t token.Token, format string, a ...interface{}) {
|
||||||
if ps.suppressSeverity < ERROR {
|
if p.suppressSeverity < ERROR {
|
||||||
ps.Errors = append(ps.Errors, newError(posFromToken(t), format, a...))
|
p.errors = append(p.errors, newError(posFromToken(t), format, a...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ps *parseState) addErrorFromObjectItem(objectItem *ast.ObjectItem, format string, a ...interface{}) {
|
func (p *Parser) addErrorFromObjectItem(objectItem *ast.ObjectItem, format string, a ...interface{}) {
|
||||||
if ps.suppressSeverity < ERROR {
|
if p.suppressSeverity < ERROR {
|
||||||
ps.Errors = append(ps.Errors, newError(posFromObjectItem(objectItem), format, a...))
|
p.errors = append(p.errors, newError(posFromObjectItem(objectItem), format, a...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ps *parseState) addFatal(node ast.Node, format string, a ...interface{}) {
|
func (p *Parser) addFatal(node ast.Node, format string, a ...interface{}) {
|
||||||
if ps.suppressSeverity < FATAL {
|
if p.suppressSeverity < FATAL {
|
||||||
ps.Errors = append(ps.Errors, newFatal(posFromNode(node), format, a...))
|
p.errors = append(p.errors, newFatal(posFromNode(node), format, a...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
2
vendor/github.com/emirpasic/gods/containers/enumerable.go
generated
vendored
2
vendor/github.com/emirpasic/gods/containers/enumerable.go
generated
vendored
|
@ -11,7 +11,7 @@ type EnumerableWithIndex interface {
|
||||||
|
|
||||||
// Map invokes the given function once for each element and returns a
|
// Map invokes the given function once for each element and returns a
|
||||||
// container containing the values returned by the given function.
|
// container containing the values returned by the given function.
|
||||||
// TODO need help on how to enforce this in containers (don't want to type assert when chaining)
|
// TODO would appreciate help on how to enforce this in containers (don't want to type assert when chaining)
|
||||||
// Map(func(index int, value interface{}) interface{}) Container
|
// Map(func(index int, value interface{}) interface{}) Container
|
||||||
|
|
||||||
// Select returns a new container containing all elements for which the given function returns a true value.
|
// Select returns a new container containing all elements for which the given function returns a true value.
|
||||||
|
|
52
vendor/github.com/emirpasic/gods/lists/arraylist/arraylist.go
generated
vendored
52
vendor/github.com/emirpasic/gods/lists/arraylist/arraylist.go
generated
vendored
|
@ -11,9 +11,10 @@ package arraylist
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"strings"
|
||||||
|
|
||||||
"github.com/emirpasic/gods/lists"
|
"github.com/emirpasic/gods/lists"
|
||||||
"github.com/emirpasic/gods/utils"
|
"github.com/emirpasic/gods/utils"
|
||||||
"strings"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func assertListImplementation() {
|
func assertListImplementation() {
|
||||||
|
@ -31,9 +32,13 @@ const (
|
||||||
shrinkFactor = float32(0.25) // shrink when size is 25% of capacity (0 means never shrink)
|
shrinkFactor = float32(0.25) // shrink when size is 25% of capacity (0 means never shrink)
|
||||||
)
|
)
|
||||||
|
|
||||||
// New instantiates a new empty list
|
// New instantiates a new list and adds the passed values, if any, to the list
|
||||||
func New() *List {
|
func New(values ...interface{}) *List {
|
||||||
return &List{}
|
list := &List{}
|
||||||
|
if len(values) > 0 {
|
||||||
|
list.Add(values...)
|
||||||
|
}
|
||||||
|
return list
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add appends a value at the end of the list
|
// Add appends a value at the end of the list
|
||||||
|
@ -56,7 +61,7 @@ func (list *List) Get(index int) (interface{}, bool) {
|
||||||
return list.elements[index], true
|
return list.elements[index], true
|
||||||
}
|
}
|
||||||
|
|
||||||
// Remove removes one or more elements from the list with the supplied indices.
|
// Remove removes the element at the given index from the list.
|
||||||
func (list *List) Remove(index int) {
|
func (list *List) Remove(index int) {
|
||||||
|
|
||||||
if !list.withinRange(index) {
|
if !list.withinRange(index) {
|
||||||
|
@ -98,6 +103,19 @@ func (list *List) Values() []interface{} {
|
||||||
return newElements
|
return newElements
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//IndexOf returns index of provided element
|
||||||
|
func (list *List) IndexOf(value interface{}) int {
|
||||||
|
if list.size == 0 {
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
for index, element := range list.elements {
|
||||||
|
if element == value {
|
||||||
|
return index
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
|
||||||
// Empty returns true if list does not contain any elements.
|
// Empty returns true if list does not contain any elements.
|
||||||
func (list *List) Empty() bool {
|
func (list *List) Empty() bool {
|
||||||
return list.size == 0
|
return list.size == 0
|
||||||
|
@ -145,14 +163,24 @@ func (list *List) Insert(index int, values ...interface{}) {
|
||||||
l := len(values)
|
l := len(values)
|
||||||
list.growBy(l)
|
list.growBy(l)
|
||||||
list.size += l
|
list.size += l
|
||||||
// Shift old to right
|
copy(list.elements[index+l:], list.elements[index:list.size-l])
|
||||||
for i := list.size - 1; i >= index+l; i-- {
|
copy(list.elements[index:], values)
|
||||||
list.elements[i] = list.elements[i-l]
|
}
|
||||||
}
|
|
||||||
// Insert new
|
// Set the value at specified index
|
||||||
for i, value := range values {
|
// Does not do anything if position is negative or bigger than list's size
|
||||||
list.elements[index+i] = value
|
// Note: position equal to list's size is valid, i.e. append.
|
||||||
|
func (list *List) Set(index int, value interface{}) {
|
||||||
|
|
||||||
|
if !list.withinRange(index) {
|
||||||
|
// Append
|
||||||
|
if index == list.size {
|
||||||
|
list.Add(value)
|
||||||
|
}
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
list.elements[index] = value
|
||||||
}
|
}
|
||||||
|
|
||||||
// String returns a string representation of container
|
// String returns a string representation of container
|
||||||
|
|
1
vendor/github.com/emirpasic/gods/lists/lists.go
generated
vendored
1
vendor/github.com/emirpasic/gods/lists/lists.go
generated
vendored
|
@ -23,6 +23,7 @@ type List interface {
|
||||||
Sort(comparator utils.Comparator)
|
Sort(comparator utils.Comparator)
|
||||||
Swap(index1, index2 int)
|
Swap(index1, index2 int)
|
||||||
Insert(index int, values ...interface{})
|
Insert(index int, values ...interface{})
|
||||||
|
Set(index int, value interface{})
|
||||||
|
|
||||||
containers.Container
|
containers.Container
|
||||||
// Empty() bool
|
// Empty() bool
|
||||||
|
|
4
vendor/github.com/emirpasic/gods/trees/binaryheap/serialization.go
generated
vendored
4
vendor/github.com/emirpasic/gods/trees/binaryheap/serialization.go
generated
vendored
|
@ -11,12 +11,12 @@ func assertSerializationImplementation() {
|
||||||
var _ containers.JSONDeserializer = (*Heap)(nil)
|
var _ containers.JSONDeserializer = (*Heap)(nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ToJSON outputs the JSON representation of list's elements.
|
// ToJSON outputs the JSON representation of the heap.
|
||||||
func (heap *Heap) ToJSON() ([]byte, error) {
|
func (heap *Heap) ToJSON() ([]byte, error) {
|
||||||
return heap.list.ToJSON()
|
return heap.list.ToJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
// FromJSON populates list's elements from the input JSON representation.
|
// FromJSON populates the heap from the input JSON representation.
|
||||||
func (heap *Heap) FromJSON(data []byte) error {
|
func (heap *Heap) FromJSON(data []byte) error {
|
||||||
return heap.list.FromJSON(data)
|
return heap.list.FromJSON(data)
|
||||||
}
|
}
|
||||||
|
|
10
vendor/github.com/mitchellh/go-homedir/homedir.go
generated
vendored
10
vendor/github.com/mitchellh/go-homedir/homedir.go
generated
vendored
|
@ -76,6 +76,16 @@ func Expand(path string) (string, error) {
|
||||||
return filepath.Join(dir, path[1:]), nil
|
return filepath.Join(dir, path[1:]), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Reset clears the cache, forcing the next call to Dir to re-detect
|
||||||
|
// the home directory. This generally never has to be called, but can be
|
||||||
|
// useful in tests if you're modifying the home directory via the HOME
|
||||||
|
// env var or something.
|
||||||
|
func Reset() {
|
||||||
|
cacheLock.Lock()
|
||||||
|
defer cacheLock.Unlock()
|
||||||
|
homedirCache = ""
|
||||||
|
}
|
||||||
|
|
||||||
func dirUnix() (string, error) {
|
func dirUnix() (string, error) {
|
||||||
homeEnv := "HOME"
|
homeEnv := "HOME"
|
||||||
if runtime.GOOS == "plan9" {
|
if runtime.GOOS == "plan9" {
|
||||||
|
|
4
vendor/golang.org/x/crypto/ssh/knownhosts/knownhosts.go
generated
vendored
4
vendor/golang.org/x/crypto/ssh/knownhosts/knownhosts.go
generated
vendored
|
@ -350,8 +350,8 @@ func (db *hostKeyDB) check(address string, remote net.Addr, remoteKey ssh.Public
|
||||||
return db.checkAddr(hostToCheck, remoteKey)
|
return db.checkAddr(hostToCheck, remoteKey)
|
||||||
}
|
}
|
||||||
|
|
||||||
// checkAddrs checks if we can find the given public key for any of
|
// checkAddr checks if we can find the given public key for the
|
||||||
// the given addresses. If we only find an entry for the IP address,
|
// given address. If we only find an entry for the IP address,
|
||||||
// or only the hostname, then this still succeeds.
|
// or only the hostname, then this still succeeds.
|
||||||
func (db *hostKeyDB) checkAddr(a addr, remoteKey ssh.PublicKey) error {
|
func (db *hostKeyDB) checkAddr(a addr, remoteKey ssh.PublicKey) error {
|
||||||
// TODO(hanwen): are these the right semantics? What if there
|
// TODO(hanwen): are these the right semantics? What if there
|
||||||
|
|
4
vendor/golang.org/x/crypto/ssh/terminal/terminal.go
generated
vendored
4
vendor/golang.org/x/crypto/ssh/terminal/terminal.go
generated
vendored
|
@ -159,6 +159,10 @@ func bytesToKey(b []byte, pasteActive bool) (rune, []byte) {
|
||||||
return keyClearScreen, b[1:]
|
return keyClearScreen, b[1:]
|
||||||
case 23: // ^W
|
case 23: // ^W
|
||||||
return keyDeleteWord, b[1:]
|
return keyDeleteWord, b[1:]
|
||||||
|
case 14: // ^N
|
||||||
|
return keyDown, b[1:]
|
||||||
|
case 16: // ^P
|
||||||
|
return keyUp, b[1:]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
9
vendor/golang.org/x/net/proxy/proxy.go
generated
vendored
9
vendor/golang.org/x/net/proxy/proxy.go
generated
vendored
|
@ -79,8 +79,13 @@ func FromURL(u *url.URL, forward Dialer) (Dialer, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
switch u.Scheme {
|
switch u.Scheme {
|
||||||
case "socks5":
|
case "socks5", "socks5h":
|
||||||
return SOCKS5("tcp", u.Host, auth, forward)
|
addr := u.Hostname()
|
||||||
|
port := u.Port()
|
||||||
|
if port == "" {
|
||||||
|
port = "1080"
|
||||||
|
}
|
||||||
|
return SOCKS5("tcp", net.JoinHostPort(addr, port), auth, forward)
|
||||||
}
|
}
|
||||||
|
|
||||||
// If the scheme doesn't match any of the built-in schemes, see if it
|
// If the scheme doesn't match any of the built-in schemes, see if it
|
||||||
|
|
29
vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
generated
vendored
Normal file
29
vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s
generated
vendored
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
// Copyright 2019 The Go Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
// +build !gccgo
|
||||||
|
|
||||||
|
#include "textflag.h"
|
||||||
|
|
||||||
|
//
|
||||||
|
// System call support for ARM64, NetBSD
|
||||||
|
//
|
||||||
|
|
||||||
|
// Just jump to package syscall's implementation for all these functions.
|
||||||
|
// The runtime may know about them.
|
||||||
|
|
||||||
|
TEXT ·Syscall(SB),NOSPLIT,$0-56
|
||||||
|
B syscall·Syscall(SB)
|
||||||
|
|
||||||
|
TEXT ·Syscall6(SB),NOSPLIT,$0-80
|
||||||
|
B syscall·Syscall6(SB)
|
||||||
|
|
||||||
|
TEXT ·Syscall9(SB),NOSPLIT,$0-104
|
||||||
|
B syscall·Syscall9(SB)
|
||||||
|
|
||||||
|
TEXT ·RawSyscall(SB),NOSPLIT,$0-56
|
||||||
|
B syscall·RawSyscall(SB)
|
||||||
|
|
||||||
|
TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
|
||||||
|
B syscall·RawSyscall6(SB)
|
2
vendor/golang.org/x/sys/unix/fcntl.go
generated
vendored
2
vendor/golang.org/x/sys/unix/fcntl.go
generated
vendored
|
@ -2,7 +2,7 @@
|
||||||
// Use of this source code is governed by a BSD-style
|
// Use of this source code is governed by a BSD-style
|
||||||
// license that can be found in the LICENSE file.
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
// +build darwin dragonfly freebsd linux netbsd openbsd
|
// +build dragonfly freebsd linux netbsd openbsd
|
||||||
|
|
||||||
package unix
|
package unix
|
||||||
|
|
||||||
|
|
18
vendor/golang.org/x/sys/unix/fcntl_darwin.go
generated
vendored
Normal file
18
vendor/golang.org/x/sys/unix/fcntl_darwin.go
generated
vendored
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
// Copyright 2019 The Go Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
package unix
|
||||||
|
|
||||||
|
import "unsafe"
|
||||||
|
|
||||||
|
// FcntlInt performs a fcntl syscall on fd with the provided command and argument.
|
||||||
|
func FcntlInt(fd uintptr, cmd, arg int) (int, error) {
|
||||||
|
return fcntl(int(fd), cmd, arg)
|
||||||
|
}
|
||||||
|
|
||||||
|
// FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command.
|
||||||
|
func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error {
|
||||||
|
_, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(lk))))
|
||||||
|
return err
|
||||||
|
}
|
20
vendor/golang.org/x/sys/unix/mkall.sh
generated
vendored
20
vendor/golang.org/x/sys/unix/mkall.sh
generated
vendored
|
@ -62,12 +62,12 @@ _* | *_ | _)
|
||||||
;;
|
;;
|
||||||
aix_ppc)
|
aix_ppc)
|
||||||
mkerrors="$mkerrors -maix32"
|
mkerrors="$mkerrors -maix32"
|
||||||
mksyscall="./mksyscall_aix_ppc.pl -aix"
|
mksyscall="go run mksyscall_aix_ppc.go -aix"
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
||||||
;;
|
;;
|
||||||
aix_ppc64)
|
aix_ppc64)
|
||||||
mkerrors="$mkerrors -maix64"
|
mkerrors="$mkerrors -maix64"
|
||||||
mksyscall="./mksyscall_aix_ppc64.pl -aix"
|
mksyscall="go run mksyscall_aix_ppc64.go -aix"
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
||||||
;;
|
;;
|
||||||
darwin_386)
|
darwin_386)
|
||||||
|
@ -99,31 +99,31 @@ darwin_arm64)
|
||||||
dragonfly_amd64)
|
dragonfly_amd64)
|
||||||
mkerrors="$mkerrors -m64"
|
mkerrors="$mkerrors -m64"
|
||||||
mksyscall="go run mksyscall.go -dragonfly"
|
mksyscall="go run mksyscall.go -dragonfly"
|
||||||
mksysnum="go run mksysnum.go 'http://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/sys/kern/syscalls.master'"
|
mksysnum="go run mksysnum.go 'https://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/sys/kern/syscalls.master'"
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
||||||
;;
|
;;
|
||||||
freebsd_386)
|
freebsd_386)
|
||||||
mkerrors="$mkerrors -m32"
|
mkerrors="$mkerrors -m32"
|
||||||
mksyscall="go run mksyscall.go -l32"
|
mksyscall="go run mksyscall.go -l32"
|
||||||
mksysnum="go run mksysnum.go 'http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'"
|
mksysnum="go run mksysnum.go 'https://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'"
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
||||||
;;
|
;;
|
||||||
freebsd_amd64)
|
freebsd_amd64)
|
||||||
mkerrors="$mkerrors -m64"
|
mkerrors="$mkerrors -m64"
|
||||||
mksysnum="go run mksysnum.go 'http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'"
|
mksysnum="go run mksysnum.go 'https://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'"
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
||||||
;;
|
;;
|
||||||
freebsd_arm)
|
freebsd_arm)
|
||||||
mkerrors="$mkerrors"
|
mkerrors="$mkerrors"
|
||||||
mksyscall="go run mksyscall.go -l32 -arm"
|
mksyscall="go run mksyscall.go -l32 -arm"
|
||||||
mksysnum="go run mksysnum.go 'http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'"
|
mksysnum="go run mksysnum.go 'https://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'"
|
||||||
# Let the type of C char be signed for making the bare syscall
|
# Let the type of C char be signed for making the bare syscall
|
||||||
# API consistent across platforms.
|
# API consistent across platforms.
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char"
|
||||||
;;
|
;;
|
||||||
freebsd_arm64)
|
freebsd_arm64)
|
||||||
mkerrors="$mkerrors -m64"
|
mkerrors="$mkerrors -m64"
|
||||||
mksysnum="go run mksysnum.go 'http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'"
|
mksysnum="go run mksysnum.go 'https://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master'"
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
||||||
;;
|
;;
|
||||||
netbsd_386)
|
netbsd_386)
|
||||||
|
@ -150,21 +150,21 @@ openbsd_386)
|
||||||
mkerrors="$mkerrors -m32"
|
mkerrors="$mkerrors -m32"
|
||||||
mksyscall="go run mksyscall.go -l32 -openbsd"
|
mksyscall="go run mksyscall.go -l32 -openbsd"
|
||||||
mksysctl="./mksysctl_openbsd.pl"
|
mksysctl="./mksysctl_openbsd.pl"
|
||||||
mksysnum="go run mksysnum.go 'http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'"
|
mksysnum="go run mksysnum.go 'https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'"
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
||||||
;;
|
;;
|
||||||
openbsd_amd64)
|
openbsd_amd64)
|
||||||
mkerrors="$mkerrors -m64"
|
mkerrors="$mkerrors -m64"
|
||||||
mksyscall="go run mksyscall.go -openbsd"
|
mksyscall="go run mksyscall.go -openbsd"
|
||||||
mksysctl="./mksysctl_openbsd.pl"
|
mksysctl="./mksysctl_openbsd.pl"
|
||||||
mksysnum="go run mksysnum.go 'http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'"
|
mksysnum="go run mksysnum.go 'https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'"
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs"
|
||||||
;;
|
;;
|
||||||
openbsd_arm)
|
openbsd_arm)
|
||||||
mkerrors="$mkerrors"
|
mkerrors="$mkerrors"
|
||||||
mksyscall="go run mksyscall.go -l32 -openbsd -arm"
|
mksyscall="go run mksyscall.go -l32 -openbsd -arm"
|
||||||
mksysctl="./mksysctl_openbsd.pl"
|
mksysctl="./mksysctl_openbsd.pl"
|
||||||
mksysnum="go run mksysnum.go 'http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'"
|
mksysnum="go run mksysnum.go 'https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'"
|
||||||
# Let the type of C char be signed for making the bare syscall
|
# Let the type of C char be signed for making the bare syscall
|
||||||
# API consistent across platforms.
|
# API consistent across platforms.
|
||||||
mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char"
|
mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char"
|
||||||
|
|
7
vendor/golang.org/x/sys/unix/mkerrors.sh
generated
vendored
7
vendor/golang.org/x/sys/unix/mkerrors.sh
generated
vendored
|
@ -179,8 +179,10 @@ struct ltchars {
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
|
#include <sys/signalfd.h>
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#include <sys/xattr.h>
|
#include <sys/xattr.h>
|
||||||
|
#include <linux/errqueue.h>
|
||||||
#include <linux/if.h>
|
#include <linux/if.h>
|
||||||
#include <linux/if_alg.h>
|
#include <linux/if_alg.h>
|
||||||
#include <linux/if_arp.h>
|
#include <linux/if_arp.h>
|
||||||
|
@ -453,7 +455,7 @@ ccflags="$@"
|
||||||
$2 !~ "MNT_BITS" &&
|
$2 !~ "MNT_BITS" &&
|
||||||
$2 ~ /^(MS|MNT|UMOUNT)_/ ||
|
$2 ~ /^(MS|MNT|UMOUNT)_/ ||
|
||||||
$2 ~ /^TUN(SET|GET|ATTACH|DETACH)/ ||
|
$2 ~ /^TUN(SET|GET|ATTACH|DETACH)/ ||
|
||||||
$2 ~ /^(O|F|E?FD|NAME|S|PTRACE|PT)_/ ||
|
$2 ~ /^(O|F|[ES]?FD|NAME|S|PTRACE|PT)_/ ||
|
||||||
$2 ~ /^KEXEC_/ ||
|
$2 ~ /^KEXEC_/ ||
|
||||||
$2 ~ /^LINUX_REBOOT_CMD_/ ||
|
$2 ~ /^LINUX_REBOOT_CMD_/ ||
|
||||||
$2 ~ /^LINUX_REBOOT_MAGIC[12]$/ ||
|
$2 ~ /^LINUX_REBOOT_MAGIC[12]$/ ||
|
||||||
|
@ -474,12 +476,13 @@ ccflags="$@"
|
||||||
$2 ~ /^CLONE_[A-Z_]+/ ||
|
$2 ~ /^CLONE_[A-Z_]+/ ||
|
||||||
$2 !~ /^(BPF_TIMEVAL)$/ &&
|
$2 !~ /^(BPF_TIMEVAL)$/ &&
|
||||||
$2 ~ /^(BPF|DLT)_/ ||
|
$2 ~ /^(BPF|DLT)_/ ||
|
||||||
$2 ~ /^CLOCK_/ ||
|
$2 ~ /^(CLOCK|TIMER)_/ ||
|
||||||
$2 ~ /^CAN_/ ||
|
$2 ~ /^CAN_/ ||
|
||||||
$2 ~ /^CAP_/ ||
|
$2 ~ /^CAP_/ ||
|
||||||
$2 ~ /^ALG_/ ||
|
$2 ~ /^ALG_/ ||
|
||||||
$2 ~ /^FS_(POLICY_FLAGS|KEY_DESC|ENCRYPTION_MODE|[A-Z0-9_]+_KEY_SIZE|IOC_(GET|SET)_ENCRYPTION)/ ||
|
$2 ~ /^FS_(POLICY_FLAGS|KEY_DESC|ENCRYPTION_MODE|[A-Z0-9_]+_KEY_SIZE|IOC_(GET|SET)_ENCRYPTION)/ ||
|
||||||
$2 ~ /^GRND_/ ||
|
$2 ~ /^GRND_/ ||
|
||||||
|
$2 ~ /^RND/ ||
|
||||||
$2 ~ /^KEY_(SPEC|REQKEY_DEFL)_/ ||
|
$2 ~ /^KEY_(SPEC|REQKEY_DEFL)_/ ||
|
||||||
$2 ~ /^KEYCTL_/ ||
|
$2 ~ /^KEYCTL_/ ||
|
||||||
$2 ~ /^PERF_EVENT_IOC_/ ||
|
$2 ~ /^PERF_EVENT_IOC_/ ||
|
||||||
|
|
404
vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go
generated
vendored
Normal file
404
vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.go
generated
vendored
Normal file
|
@ -0,0 +1,404 @@
|
||||||
|
// Copyright 2019 The Go Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
// +build ignore
|
||||||
|
|
||||||
|
/*
|
||||||
|
This program reads a file containing function prototypes
|
||||||
|
(like syscall_aix.go) and generates system call bodies.
|
||||||
|
The prototypes are marked by lines beginning with "//sys"
|
||||||
|
and read like func declarations if //sys is replaced by func, but:
|
||||||
|
* The parameter lists must give a name for each argument.
|
||||||
|
This includes return parameters.
|
||||||
|
* The parameter lists must give a type for each argument:
|
||||||
|
the (x, y, z int) shorthand is not allowed.
|
||||||
|
* If the return parameter is an error number, it must be named err.
|
||||||
|
* If go func name needs to be different than its libc name,
|
||||||
|
* or the function is not in libc, name could be specified
|
||||||
|
* at the end, after "=" sign, like
|
||||||
|
//sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
|
||||||
|
*/
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"bufio"
|
||||||
|
"flag"
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
|
"regexp"
|
||||||
|
"strings"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
b32 = flag.Bool("b32", false, "32bit big-endian")
|
||||||
|
l32 = flag.Bool("l32", false, "32bit little-endian")
|
||||||
|
aix = flag.Bool("aix", false, "aix")
|
||||||
|
tags = flag.String("tags", "", "build tags")
|
||||||
|
)
|
||||||
|
|
||||||
|
// cmdLine returns this programs's commandline arguments
|
||||||
|
func cmdLine() string {
|
||||||
|
return "go run mksyscall_aix_ppc.go " + strings.Join(os.Args[1:], " ")
|
||||||
|
}
|
||||||
|
|
||||||
|
// buildTags returns build tags
|
||||||
|
func buildTags() string {
|
||||||
|
return *tags
|
||||||
|
}
|
||||||
|
|
||||||
|
// Param is function parameter
|
||||||
|
type Param struct {
|
||||||
|
Name string
|
||||||
|
Type string
|
||||||
|
}
|
||||||
|
|
||||||
|
// usage prints the program usage
|
||||||
|
func usage() {
|
||||||
|
fmt.Fprintf(os.Stderr, "usage: go run mksyscall_aix_ppc.go [-b32 | -l32] [-tags x,y] [file ...]\n")
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
// parseParamList parses parameter list and returns a slice of parameters
|
||||||
|
func parseParamList(list string) []string {
|
||||||
|
list = strings.TrimSpace(list)
|
||||||
|
if list == "" {
|
||||||
|
return []string{}
|
||||||
|
}
|
||||||
|
return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
|
||||||
|
}
|
||||||
|
|
||||||
|
// parseParam splits a parameter into name and type
|
||||||
|
func parseParam(p string) Param {
|
||||||
|
ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
|
||||||
|
if ps == nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
return Param{ps[1], ps[2]}
|
||||||
|
}
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
flag.Usage = usage
|
||||||
|
flag.Parse()
|
||||||
|
if len(flag.Args()) <= 0 {
|
||||||
|
fmt.Fprintf(os.Stderr, "no files to parse provided\n")
|
||||||
|
usage()
|
||||||
|
}
|
||||||
|
|
||||||
|
endianness := ""
|
||||||
|
if *b32 {
|
||||||
|
endianness = "big-endian"
|
||||||
|
} else if *l32 {
|
||||||
|
endianness = "little-endian"
|
||||||
|
}
|
||||||
|
|
||||||
|
pack := ""
|
||||||
|
text := ""
|
||||||
|
cExtern := "/*\n#include <stdint.h>\n#include <stddef.h>\n"
|
||||||
|
for _, path := range flag.Args() {
|
||||||
|
file, err := os.Open(path)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
s := bufio.NewScanner(file)
|
||||||
|
for s.Scan() {
|
||||||
|
t := s.Text()
|
||||||
|
t = strings.TrimSpace(t)
|
||||||
|
t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
|
||||||
|
if p := regexp.MustCompile(`^package (\S+)$`).FindStringSubmatch(t); p != nil && pack == "" {
|
||||||
|
pack = p[1]
|
||||||
|
}
|
||||||
|
nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
|
||||||
|
if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
// Line must be of the form
|
||||||
|
// func Open(path string, mode int, perm int) (fd int, err error)
|
||||||
|
// Split into name, in params, out params.
|
||||||
|
f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$`).FindStringSubmatch(t)
|
||||||
|
if f == nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
funct, inps, outps, modname, sysname := f[2], f[3], f[4], f[5], f[6]
|
||||||
|
|
||||||
|
// Split argument lists on comma.
|
||||||
|
in := parseParamList(inps)
|
||||||
|
out := parseParamList(outps)
|
||||||
|
|
||||||
|
inps = strings.Join(in, ", ")
|
||||||
|
outps = strings.Join(out, ", ")
|
||||||
|
|
||||||
|
// Try in vain to keep people from editing this file.
|
||||||
|
// The theory is that they jump into the middle of the file
|
||||||
|
// without reading the header.
|
||||||
|
text += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
|
||||||
|
|
||||||
|
// Check if value return, err return available
|
||||||
|
errvar := ""
|
||||||
|
retvar := ""
|
||||||
|
rettype := ""
|
||||||
|
for _, param := range out {
|
||||||
|
p := parseParam(param)
|
||||||
|
if p.Type == "error" {
|
||||||
|
errvar = p.Name
|
||||||
|
} else {
|
||||||
|
retvar = p.Name
|
||||||
|
rettype = p.Type
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// System call name.
|
||||||
|
if sysname == "" {
|
||||||
|
sysname = funct
|
||||||
|
}
|
||||||
|
sysname = regexp.MustCompile(`([a-z])([A-Z])`).ReplaceAllString(sysname, `${1}_$2`)
|
||||||
|
sysname = strings.ToLower(sysname) // All libc functions are lowercase.
|
||||||
|
|
||||||
|
cRettype := ""
|
||||||
|
if rettype == "unsafe.Pointer" {
|
||||||
|
cRettype = "uintptr_t"
|
||||||
|
} else if rettype == "uintptr" {
|
||||||
|
cRettype = "uintptr_t"
|
||||||
|
} else if regexp.MustCompile(`^_`).FindStringSubmatch(rettype) != nil {
|
||||||
|
cRettype = "uintptr_t"
|
||||||
|
} else if rettype == "int" {
|
||||||
|
cRettype = "int"
|
||||||
|
} else if rettype == "int32" {
|
||||||
|
cRettype = "int"
|
||||||
|
} else if rettype == "int64" {
|
||||||
|
cRettype = "long long"
|
||||||
|
} else if rettype == "uint32" {
|
||||||
|
cRettype = "unsigned int"
|
||||||
|
} else if rettype == "uint64" {
|
||||||
|
cRettype = "unsigned long long"
|
||||||
|
} else {
|
||||||
|
cRettype = "int"
|
||||||
|
}
|
||||||
|
if sysname == "exit" {
|
||||||
|
cRettype = "void"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Change p.Types to c
|
||||||
|
var cIn []string
|
||||||
|
for _, param := range in {
|
||||||
|
p := parseParam(param)
|
||||||
|
if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if p.Type == "string" {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type) != nil {
|
||||||
|
cIn = append(cIn, "uintptr_t", "size_t")
|
||||||
|
} else if p.Type == "unsafe.Pointer" {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if p.Type == "uintptr" {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if p.Type == "int" {
|
||||||
|
cIn = append(cIn, "int")
|
||||||
|
} else if p.Type == "int32" {
|
||||||
|
cIn = append(cIn, "int")
|
||||||
|
} else if p.Type == "int64" {
|
||||||
|
cIn = append(cIn, "long long")
|
||||||
|
} else if p.Type == "uint32" {
|
||||||
|
cIn = append(cIn, "unsigned int")
|
||||||
|
} else if p.Type == "uint64" {
|
||||||
|
cIn = append(cIn, "unsigned long long")
|
||||||
|
} else {
|
||||||
|
cIn = append(cIn, "int")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if funct != "fcntl" && funct != "FcntlInt" && funct != "readlen" && funct != "writelen" {
|
||||||
|
// Imports of system calls from libc
|
||||||
|
cExtern += fmt.Sprintf("%s %s", cRettype, sysname)
|
||||||
|
cIn := strings.Join(cIn, ", ")
|
||||||
|
cExtern += fmt.Sprintf("(%s);\n", cIn)
|
||||||
|
}
|
||||||
|
|
||||||
|
// So file name.
|
||||||
|
if *aix {
|
||||||
|
if modname == "" {
|
||||||
|
modname = "libc.a/shr_64.o"
|
||||||
|
} else {
|
||||||
|
fmt.Fprintf(os.Stderr, "%s: only syscall using libc are available\n", funct)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
strconvfunc := "C.CString"
|
||||||
|
|
||||||
|
// Go function header.
|
||||||
|
if outps != "" {
|
||||||
|
outps = fmt.Sprintf(" (%s)", outps)
|
||||||
|
}
|
||||||
|
if text != "" {
|
||||||
|
text += "\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
text += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outps)
|
||||||
|
|
||||||
|
// Prepare arguments to Syscall.
|
||||||
|
var args []string
|
||||||
|
n := 0
|
||||||
|
argN := 0
|
||||||
|
for _, param := range in {
|
||||||
|
p := parseParam(param)
|
||||||
|
if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
|
||||||
|
args = append(args, "C.uintptr_t(uintptr(unsafe.Pointer("+p.Name+")))")
|
||||||
|
} else if p.Type == "string" && errvar != "" {
|
||||||
|
text += fmt.Sprintf("\t_p%d := uintptr(unsafe.Pointer(%s(%s)))\n", n, strconvfunc, p.Name)
|
||||||
|
args = append(args, fmt.Sprintf("C.uintptr_t(_p%d)", n))
|
||||||
|
n++
|
||||||
|
} else if p.Type == "string" {
|
||||||
|
fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
|
||||||
|
text += fmt.Sprintf("\t_p%d := uintptr(unsafe.Pointer(%s(%s)))\n", n, strconvfunc, p.Name)
|
||||||
|
args = append(args, fmt.Sprintf("C.uintptr_t(_p%d)", n))
|
||||||
|
n++
|
||||||
|
} else if m := regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type); m != nil {
|
||||||
|
// Convert slice into pointer, length.
|
||||||
|
// Have to be careful not to take address of &a[0] if len == 0:
|
||||||
|
// pass nil in that case.
|
||||||
|
text += fmt.Sprintf("\tvar _p%d *%s\n", n, m[1])
|
||||||
|
text += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = &%s[0]\n\t}\n", p.Name, n, p.Name)
|
||||||
|
args = append(args, fmt.Sprintf("C.uintptr_t(uintptr(unsafe.Pointer(_p%d)))", n))
|
||||||
|
n++
|
||||||
|
text += fmt.Sprintf("\tvar _p%d int\n", n)
|
||||||
|
text += fmt.Sprintf("\t_p%d = len(%s)\n", n, p.Name)
|
||||||
|
args = append(args, fmt.Sprintf("C.size_t(_p%d)", n))
|
||||||
|
n++
|
||||||
|
} else if p.Type == "int64" && endianness != "" {
|
||||||
|
if endianness == "big-endian" {
|
||||||
|
args = append(args, fmt.Sprintf("uintptr(%s>>32)", p.Name), fmt.Sprintf("uintptr(%s)", p.Name))
|
||||||
|
} else {
|
||||||
|
args = append(args, fmt.Sprintf("uintptr(%s)", p.Name), fmt.Sprintf("uintptr(%s>>32)", p.Name))
|
||||||
|
}
|
||||||
|
n++
|
||||||
|
} else if p.Type == "bool" {
|
||||||
|
text += fmt.Sprintf("\tvar _p%d uint32\n", n)
|
||||||
|
text += fmt.Sprintf("\tif %s {\n\t\t_p%d = 1\n\t} else {\n\t\t_p%d = 0\n\t}\n", p.Name, n, n)
|
||||||
|
args = append(args, fmt.Sprintf("_p%d", n))
|
||||||
|
} else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil {
|
||||||
|
args = append(args, fmt.Sprintf("C.uintptr_t(uintptr(%s))", p.Name))
|
||||||
|
} else if p.Type == "unsafe.Pointer" {
|
||||||
|
args = append(args, fmt.Sprintf("C.uintptr_t(uintptr(%s))", p.Name))
|
||||||
|
} else if p.Type == "int" {
|
||||||
|
if (argN == 2) && ((funct == "readlen") || (funct == "writelen")) {
|
||||||
|
args = append(args, fmt.Sprintf("C.size_t(%s)", p.Name))
|
||||||
|
} else if argN == 0 && funct == "fcntl" {
|
||||||
|
args = append(args, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
|
||||||
|
} else if (argN == 2) && ((funct == "fcntl") || (funct == "FcntlInt")) {
|
||||||
|
args = append(args, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
|
||||||
|
} else {
|
||||||
|
args = append(args, fmt.Sprintf("C.int(%s)", p.Name))
|
||||||
|
}
|
||||||
|
} else if p.Type == "int32" {
|
||||||
|
args = append(args, fmt.Sprintf("C.int(%s)", p.Name))
|
||||||
|
} else if p.Type == "int64" {
|
||||||
|
args = append(args, fmt.Sprintf("C.longlong(%s)", p.Name))
|
||||||
|
} else if p.Type == "uint32" {
|
||||||
|
args = append(args, fmt.Sprintf("C.uint(%s)", p.Name))
|
||||||
|
} else if p.Type == "uint64" {
|
||||||
|
args = append(args, fmt.Sprintf("C.ulonglong(%s)", p.Name))
|
||||||
|
} else if p.Type == "uintptr" {
|
||||||
|
args = append(args, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
|
||||||
|
} else {
|
||||||
|
args = append(args, fmt.Sprintf("C.int(%s)", p.Name))
|
||||||
|
}
|
||||||
|
argN++
|
||||||
|
}
|
||||||
|
|
||||||
|
// Actual call.
|
||||||
|
arglist := strings.Join(args, ", ")
|
||||||
|
call := ""
|
||||||
|
if sysname == "exit" {
|
||||||
|
if errvar != "" {
|
||||||
|
call += "er :="
|
||||||
|
} else {
|
||||||
|
call += ""
|
||||||
|
}
|
||||||
|
} else if errvar != "" {
|
||||||
|
call += "r0,er :="
|
||||||
|
} else if retvar != "" {
|
||||||
|
call += "r0,_ :="
|
||||||
|
} else {
|
||||||
|
call += ""
|
||||||
|
}
|
||||||
|
call += fmt.Sprintf("C.%s(%s)", sysname, arglist)
|
||||||
|
|
||||||
|
// Assign return values.
|
||||||
|
body := ""
|
||||||
|
for i := 0; i < len(out); i++ {
|
||||||
|
p := parseParam(out[i])
|
||||||
|
reg := ""
|
||||||
|
if p.Name == "err" {
|
||||||
|
reg = "e1"
|
||||||
|
} else {
|
||||||
|
reg = "r0"
|
||||||
|
}
|
||||||
|
if reg != "e1" {
|
||||||
|
body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// verify return
|
||||||
|
if sysname != "exit" && errvar != "" {
|
||||||
|
if regexp.MustCompile(`^uintptr`).FindStringSubmatch(cRettype) != nil {
|
||||||
|
body += "\tif (uintptr(r0) ==^uintptr(0) && er != nil) {\n"
|
||||||
|
body += fmt.Sprintf("\t\t%s = er\n", errvar)
|
||||||
|
body += "\t}\n"
|
||||||
|
} else {
|
||||||
|
body += "\tif (r0 ==-1 && er != nil) {\n"
|
||||||
|
body += fmt.Sprintf("\t\t%s = er\n", errvar)
|
||||||
|
body += "\t}\n"
|
||||||
|
}
|
||||||
|
} else if errvar != "" {
|
||||||
|
body += "\tif (er != nil) {\n"
|
||||||
|
body += fmt.Sprintf("\t\t%s = er\n", errvar)
|
||||||
|
body += "\t}\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
text += fmt.Sprintf("\t%s\n", call)
|
||||||
|
text += body
|
||||||
|
|
||||||
|
text += "\treturn\n"
|
||||||
|
text += "}\n"
|
||||||
|
}
|
||||||
|
if err := s.Err(); err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
file.Close()
|
||||||
|
}
|
||||||
|
imp := ""
|
||||||
|
if pack != "unix" {
|
||||||
|
imp = "import \"golang.org/x/sys/unix\"\n"
|
||||||
|
|
||||||
|
}
|
||||||
|
fmt.Printf(srcTemplate, cmdLine(), buildTags(), pack, cExtern, imp, text)
|
||||||
|
}
|
||||||
|
|
||||||
|
const srcTemplate = `// %s
|
||||||
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
|
// +build %s
|
||||||
|
|
||||||
|
package %s
|
||||||
|
|
||||||
|
|
||||||
|
%s
|
||||||
|
*/
|
||||||
|
import "C"
|
||||||
|
import (
|
||||||
|
"unsafe"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
%s
|
||||||
|
|
||||||
|
%s
|
||||||
|
`
|
384
vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.pl
generated
vendored
384
vendor/golang.org/x/sys/unix/mksyscall_aix_ppc.pl
generated
vendored
|
@ -1,384 +0,0 @@
|
||||||
#!/usr/bin/env perl
|
|
||||||
# Copyright 2018 The Go Authors. All rights reserved.
|
|
||||||
# Use of this source code is governed by a BSD-style
|
|
||||||
# license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
# This program reads a file containing function prototypes
|
|
||||||
# (like syscall_aix.go) and generates system call bodies.
|
|
||||||
# The prototypes are marked by lines beginning with "//sys"
|
|
||||||
# and read like func declarations if //sys is replaced by func, but:
|
|
||||||
# * The parameter lists must give a name for each argument.
|
|
||||||
# This includes return parameters.
|
|
||||||
# * The parameter lists must give a type for each argument:
|
|
||||||
# the (x, y, z int) shorthand is not allowed.
|
|
||||||
# * If the return parameter is an error number, it must be named err.
|
|
||||||
# * If go func name needs to be different than its libc name,
|
|
||||||
# * or the function is not in libc, name could be specified
|
|
||||||
# * at the end, after "=" sign, like
|
|
||||||
# //sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
|
|
||||||
|
|
||||||
use strict;
|
|
||||||
|
|
||||||
my $cmdline = "mksyscall_aix_ppc.pl " . join(' ', @ARGV);
|
|
||||||
my $errors = 0;
|
|
||||||
my $_32bit = "";
|
|
||||||
my $tags = ""; # build tags
|
|
||||||
my $aix = 0;
|
|
||||||
my $solaris = 0;
|
|
||||||
|
|
||||||
binmode STDOUT;
|
|
||||||
|
|
||||||
if($ARGV[0] eq "-b32") {
|
|
||||||
$_32bit = "big-endian";
|
|
||||||
shift;
|
|
||||||
} elsif($ARGV[0] eq "-l32") {
|
|
||||||
$_32bit = "little-endian";
|
|
||||||
shift;
|
|
||||||
}
|
|
||||||
if($ARGV[0] eq "-aix") {
|
|
||||||
$aix = 1;
|
|
||||||
shift;
|
|
||||||
}
|
|
||||||
if($ARGV[0] eq "-tags") {
|
|
||||||
shift;
|
|
||||||
$tags = $ARGV[0];
|
|
||||||
shift;
|
|
||||||
}
|
|
||||||
|
|
||||||
if($ARGV[0] =~ /^-/) {
|
|
||||||
print STDERR "usage: mksyscall_aix.pl [-b32 | -l32] [-tags x,y] [file ...]\n";
|
|
||||||
exit 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
sub parseparamlist($) {
|
|
||||||
my ($list) = @_;
|
|
||||||
$list =~ s/^\s*//;
|
|
||||||
$list =~ s/\s*$//;
|
|
||||||
if($list eq "") {
|
|
||||||
return ();
|
|
||||||
}
|
|
||||||
return split(/\s*,\s*/, $list);
|
|
||||||
}
|
|
||||||
|
|
||||||
sub parseparam($) {
|
|
||||||
my ($p) = @_;
|
|
||||||
if($p !~ /^(\S*) (\S*)$/) {
|
|
||||||
print STDERR "$ARGV:$.: malformed parameter: $p\n";
|
|
||||||
$errors = 1;
|
|
||||||
return ("xx", "int");
|
|
||||||
}
|
|
||||||
return ($1, $2);
|
|
||||||
}
|
|
||||||
|
|
||||||
my $package = "";
|
|
||||||
my $text = "";
|
|
||||||
my $c_extern = "/*\n#include <stdint.h>\n#include <stddef.h>\n";
|
|
||||||
my @vars = ();
|
|
||||||
while(<>) {
|
|
||||||
chomp;
|
|
||||||
s/\s+/ /g;
|
|
||||||
s/^\s+//;
|
|
||||||
s/\s+$//;
|
|
||||||
$package = $1 if !$package && /^package (\S+)$/;
|
|
||||||
my $nonblock = /^\/\/sysnb /;
|
|
||||||
next if !/^\/\/sys / && !$nonblock;
|
|
||||||
|
|
||||||
# Line must be of the form
|
|
||||||
# func Open(path string, mode int, perm int) (fd int, err error)
|
|
||||||
# Split into name, in params, out params.
|
|
||||||
if(!/^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$/) {
|
|
||||||
print STDERR "$ARGV:$.: malformed //sys declaration\n";
|
|
||||||
$errors = 1;
|
|
||||||
next;
|
|
||||||
}
|
|
||||||
my ($nb, $func, $in, $out, $modname, $sysname) = ($1, $2, $3, $4, $5, $6);
|
|
||||||
|
|
||||||
# Split argument lists on comma.
|
|
||||||
my @in = parseparamlist($in);
|
|
||||||
my @out = parseparamlist($out);
|
|
||||||
|
|
||||||
$in = join(', ', @in);
|
|
||||||
$out = join(', ', @out);
|
|
||||||
|
|
||||||
# Try in vain to keep people from editing this file.
|
|
||||||
# The theory is that they jump into the middle of the file
|
|
||||||
# without reading the header.
|
|
||||||
$text .= "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n";
|
|
||||||
|
|
||||||
# Check if value return, err return available
|
|
||||||
my $errvar = "";
|
|
||||||
my $retvar = "";
|
|
||||||
my $rettype = "";
|
|
||||||
foreach my $p (@out) {
|
|
||||||
my ($name, $type) = parseparam($p);
|
|
||||||
if($type eq "error") {
|
|
||||||
$errvar = $name;
|
|
||||||
} else {
|
|
||||||
$retvar = $name;
|
|
||||||
$rettype = $type;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# System call name.
|
|
||||||
#if($func ne "fcntl") {
|
|
||||||
|
|
||||||
if($sysname eq "") {
|
|
||||||
$sysname = "$func";
|
|
||||||
}
|
|
||||||
|
|
||||||
$sysname =~ s/([a-z])([A-Z])/${1}_$2/g;
|
|
||||||
$sysname =~ y/A-Z/a-z/; # All libc functions are lowercase.
|
|
||||||
|
|
||||||
my $C_rettype = "";
|
|
||||||
if($rettype eq "unsafe.Pointer") {
|
|
||||||
$C_rettype = "uintptr_t";
|
|
||||||
} elsif($rettype eq "uintptr") {
|
|
||||||
$C_rettype = "uintptr_t";
|
|
||||||
} elsif($rettype =~ /^_/) {
|
|
||||||
$C_rettype = "uintptr_t";
|
|
||||||
} elsif($rettype eq "int") {
|
|
||||||
$C_rettype = "int";
|
|
||||||
} elsif($rettype eq "int32") {
|
|
||||||
$C_rettype = "int";
|
|
||||||
} elsif($rettype eq "int64") {
|
|
||||||
$C_rettype = "long long";
|
|
||||||
} elsif($rettype eq "uint32") {
|
|
||||||
$C_rettype = "unsigned int";
|
|
||||||
} elsif($rettype eq "uint64") {
|
|
||||||
$C_rettype = "unsigned long long";
|
|
||||||
} else {
|
|
||||||
$C_rettype = "int";
|
|
||||||
}
|
|
||||||
if($sysname eq "exit") {
|
|
||||||
$C_rettype = "void";
|
|
||||||
}
|
|
||||||
|
|
||||||
# Change types to c
|
|
||||||
my @c_in = ();
|
|
||||||
foreach my $p (@in) {
|
|
||||||
my ($name, $type) = parseparam($p);
|
|
||||||
if($type =~ /^\*/) {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type eq "string") {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type =~ /^\[\](.*)/) {
|
|
||||||
push @c_in, "uintptr_t", "size_t";
|
|
||||||
} elsif($type eq "unsafe.Pointer") {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type eq "uintptr") {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type =~ /^_/) {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type eq "int") {
|
|
||||||
push @c_in, "int";
|
|
||||||
} elsif($type eq "int32") {
|
|
||||||
push @c_in, "int";
|
|
||||||
} elsif($type eq "int64") {
|
|
||||||
push @c_in, "long long";
|
|
||||||
} elsif($type eq "uint32") {
|
|
||||||
push @c_in, "unsigned int";
|
|
||||||
} elsif($type eq "uint64") {
|
|
||||||
push @c_in, "unsigned long long";
|
|
||||||
} else {
|
|
||||||
push @c_in, "int";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($func ne "fcntl" && $func ne "FcntlInt" && $func ne "readlen" && $func ne "writelen") {
|
|
||||||
# Imports of system calls from libc
|
|
||||||
$c_extern .= "$C_rettype $sysname";
|
|
||||||
my $c_in = join(', ', @c_in);
|
|
||||||
$c_extern .= "($c_in);\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
# So file name.
|
|
||||||
if($aix) {
|
|
||||||
if($modname eq "") {
|
|
||||||
$modname = "libc.a/shr_64.o";
|
|
||||||
} else {
|
|
||||||
print STDERR "$func: only syscall using libc are available\n";
|
|
||||||
$errors = 1;
|
|
||||||
next;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
my $strconvfunc = "C.CString";
|
|
||||||
my $strconvtype = "*byte";
|
|
||||||
|
|
||||||
# Go function header.
|
|
||||||
if($out ne "") {
|
|
||||||
$out = " ($out)";
|
|
||||||
}
|
|
||||||
if($text ne "") {
|
|
||||||
$text .= "\n"
|
|
||||||
}
|
|
||||||
|
|
||||||
$text .= sprintf "func %s(%s)%s {\n", $func, join(', ', @in), $out ;
|
|
||||||
|
|
||||||
# Prepare arguments to call.
|
|
||||||
my @args = ();
|
|
||||||
my $n = 0;
|
|
||||||
my $arg_n = 0;
|
|
||||||
foreach my $p (@in) {
|
|
||||||
my ($name, $type) = parseparam($p);
|
|
||||||
if($type =~ /^\*/) {
|
|
||||||
push @args, "C.uintptr_t(uintptr(unsafe.Pointer($name)))";
|
|
||||||
} elsif($type eq "string" && $errvar ne "") {
|
|
||||||
$text .= "\t_p$n := uintptr(unsafe.Pointer($strconvfunc($name)))\n";
|
|
||||||
push @args, "C.uintptr_t(_p$n)";
|
|
||||||
$n++;
|
|
||||||
} elsif($type eq "string") {
|
|
||||||
print STDERR "$ARGV:$.: $func uses string arguments, but has no error return\n";
|
|
||||||
$text .= "\t_p$n := uintptr(unsafe.Pointer($strconvfunc($name)))\n";
|
|
||||||
push @args, "C.uintptr_t(_p$n)";
|
|
||||||
$n++;
|
|
||||||
} elsif($type =~ /^\[\](.*)/) {
|
|
||||||
# Convert slice into pointer, length.
|
|
||||||
# Have to be careful not to take address of &a[0] if len == 0:
|
|
||||||
# pass nil in that case.
|
|
||||||
$text .= "\tvar _p$n *$1\n";
|
|
||||||
$text .= "\tif len($name) > 0 {\n\t\t_p$n = \&$name\[0]\n\t}\n";
|
|
||||||
push @args, "C.uintptr_t(uintptr(unsafe.Pointer(_p$n)))";
|
|
||||||
$n++;
|
|
||||||
$text .= "\tvar _p$n int\n";
|
|
||||||
$text .= "\t_p$n = len($name)\n";
|
|
||||||
push @args, "C.size_t(_p$n)";
|
|
||||||
$n++;
|
|
||||||
} elsif($type eq "int64" && $_32bit ne "") {
|
|
||||||
if($_32bit eq "big-endian") {
|
|
||||||
push @args, "uintptr($name >> 32)", "uintptr($name)";
|
|
||||||
} else {
|
|
||||||
push @args, "uintptr($name)", "uintptr($name >> 32)";
|
|
||||||
}
|
|
||||||
$n++;
|
|
||||||
} elsif($type eq "bool") {
|
|
||||||
$text .= "\tvar _p$n uint32\n";
|
|
||||||
$text .= "\tif $name {\n\t\t_p$n = 1\n\t} else {\n\t\t_p$n = 0\n\t}\n";
|
|
||||||
push @args, "_p$n";
|
|
||||||
$n++;
|
|
||||||
} elsif($type =~ /^_/) {
|
|
||||||
push @args, "C.uintptr_t(uintptr($name))";
|
|
||||||
} elsif($type eq "unsafe.Pointer") {
|
|
||||||
push @args, "C.uintptr_t(uintptr($name))";
|
|
||||||
} elsif($type eq "int") {
|
|
||||||
if (($arg_n == 2) && (($func eq "readlen") || ($func eq "writelen"))) {
|
|
||||||
push @args, "C.size_t($name)";
|
|
||||||
} elsif ($arg_n == 0 && $func eq "fcntl") {
|
|
||||||
push @args, "C.uintptr_t($name)";
|
|
||||||
} elsif (($arg_n == 2) && (($func eq "fcntl") || ($func eq "FcntlInt"))) {
|
|
||||||
push @args, "C.uintptr_t($name)";
|
|
||||||
} else {
|
|
||||||
push @args, "C.int($name)";
|
|
||||||
}
|
|
||||||
} elsif($type eq "int32") {
|
|
||||||
push @args, "C.int($name)";
|
|
||||||
} elsif($type eq "int64") {
|
|
||||||
push @args, "C.longlong($name)";
|
|
||||||
} elsif($type eq "uint32") {
|
|
||||||
push @args, "C.uint($name)";
|
|
||||||
} elsif($type eq "uint64") {
|
|
||||||
push @args, "C.ulonglong($name)";
|
|
||||||
} elsif($type eq "uintptr") {
|
|
||||||
push @args, "C.uintptr_t($name)";
|
|
||||||
} else {
|
|
||||||
push @args, "C.int($name)";
|
|
||||||
}
|
|
||||||
$arg_n++;
|
|
||||||
}
|
|
||||||
my $nargs = @args;
|
|
||||||
|
|
||||||
|
|
||||||
# Determine which form to use; pad args with zeros.
|
|
||||||
if ($nonblock) {
|
|
||||||
}
|
|
||||||
|
|
||||||
my $args = join(', ', @args);
|
|
||||||
my $call = "";
|
|
||||||
if ($sysname eq "exit") {
|
|
||||||
if ($errvar ne "") {
|
|
||||||
$call .= "er :=";
|
|
||||||
} else {
|
|
||||||
$call .= "";
|
|
||||||
}
|
|
||||||
} elsif ($errvar ne "") {
|
|
||||||
$call .= "r0,er :=";
|
|
||||||
} elsif ($retvar ne "") {
|
|
||||||
$call .= "r0,_ :=";
|
|
||||||
} else {
|
|
||||||
$call .= ""
|
|
||||||
}
|
|
||||||
$call .= "C.$sysname($args)";
|
|
||||||
|
|
||||||
# Assign return values.
|
|
||||||
my $body = "";
|
|
||||||
my $failexpr = "";
|
|
||||||
|
|
||||||
for(my $i=0; $i<@out; $i++) {
|
|
||||||
my $p = $out[$i];
|
|
||||||
my ($name, $type) = parseparam($p);
|
|
||||||
my $reg = "";
|
|
||||||
if($name eq "err") {
|
|
||||||
$reg = "e1";
|
|
||||||
} else {
|
|
||||||
$reg = "r0";
|
|
||||||
}
|
|
||||||
if($reg ne "e1" ) {
|
|
||||||
$body .= "\t$name = $type($reg)\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# verify return
|
|
||||||
if ($sysname ne "exit" && $errvar ne "") {
|
|
||||||
if ($C_rettype =~ /^uintptr/) {
|
|
||||||
$body .= "\tif \(uintptr\(r0\) ==\^uintptr\(0\) && er != nil\) {\n";
|
|
||||||
$body .= "\t\t$errvar = er\n";
|
|
||||||
$body .= "\t}\n";
|
|
||||||
} else {
|
|
||||||
$body .= "\tif \(r0 ==-1 && er != nil\) {\n";
|
|
||||||
$body .= "\t\t$errvar = er\n";
|
|
||||||
$body .= "\t}\n";
|
|
||||||
}
|
|
||||||
} elsif ($errvar ne "") {
|
|
||||||
$body .= "\tif \(er != nil\) {\n";
|
|
||||||
$body .= "\t\t$errvar = er\n";
|
|
||||||
$body .= "\t}\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
$text .= "\t$call\n";
|
|
||||||
$text .= $body;
|
|
||||||
|
|
||||||
$text .= "\treturn\n";
|
|
||||||
$text .= "}\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
if($errors) {
|
|
||||||
exit 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
print <<EOF;
|
|
||||||
// $cmdline
|
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
|
||||||
|
|
||||||
// +build $tags
|
|
||||||
|
|
||||||
package $package
|
|
||||||
|
|
||||||
|
|
||||||
$c_extern
|
|
||||||
*/
|
|
||||||
import "C"
|
|
||||||
import (
|
|
||||||
"unsafe"
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
EOF
|
|
||||||
|
|
||||||
print "import \"golang.org/x/sys/unix\"\n" if $package ne "unix";
|
|
||||||
|
|
||||||
chomp($_=<<EOF);
|
|
||||||
|
|
||||||
$text
|
|
||||||
EOF
|
|
||||||
print $_;
|
|
||||||
exit 0;
|
|
602
vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go
generated
vendored
Normal file
602
vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.go
generated
vendored
Normal file
|
@ -0,0 +1,602 @@
|
||||||
|
// Copyright 2019 The Go Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
// +build ignore
|
||||||
|
|
||||||
|
/*
|
||||||
|
This program reads a file containing function prototypes
|
||||||
|
(like syscall_aix.go) and generates system call bodies.
|
||||||
|
The prototypes are marked by lines beginning with "//sys"
|
||||||
|
and read like func declarations if //sys is replaced by func, but:
|
||||||
|
* The parameter lists must give a name for each argument.
|
||||||
|
This includes return parameters.
|
||||||
|
* The parameter lists must give a type for each argument:
|
||||||
|
the (x, y, z int) shorthand is not allowed.
|
||||||
|
* If the return parameter is an error number, it must be named err.
|
||||||
|
* If go func name needs to be different than its libc name,
|
||||||
|
* or the function is not in libc, name could be specified
|
||||||
|
* at the end, after "=" sign, like
|
||||||
|
//sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
|
||||||
|
|
||||||
|
|
||||||
|
This program will generate three files and handle both gc and gccgo implementation:
|
||||||
|
- zsyscall_aix_ppc64.go: the common part of each implementation (error handler, pointer creation)
|
||||||
|
- zsyscall_aix_ppc64_gc.go: gc part with //go_cgo_import_dynamic and a call to syscall6
|
||||||
|
- zsyscall_aix_ppc64_gccgo.go: gccgo part with C function and conversion to C type.
|
||||||
|
|
||||||
|
The generated code looks like this
|
||||||
|
|
||||||
|
zsyscall_aix_ppc64.go
|
||||||
|
func asyscall(...) (n int, err error) {
|
||||||
|
// Pointer Creation
|
||||||
|
r1, e1 := callasyscall(...)
|
||||||
|
// Type Conversion
|
||||||
|
// Error Handler
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
zsyscall_aix_ppc64_gc.go
|
||||||
|
//go:cgo_import_dynamic libc_asyscall asyscall "libc.a/shr_64.o"
|
||||||
|
//go:linkname libc_asyscall libc_asyscall
|
||||||
|
var asyscall syscallFunc
|
||||||
|
|
||||||
|
func callasyscall(...) (r1 uintptr, e1 Errno) {
|
||||||
|
r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_asyscall)), "nb_args", ... )
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
zsyscall_aix_ppc64_ggcgo.go
|
||||||
|
|
||||||
|
// int asyscall(...)
|
||||||
|
|
||||||
|
import "C"
|
||||||
|
|
||||||
|
func callasyscall(...) (r1 uintptr, e1 Errno) {
|
||||||
|
r1 = uintptr(C.asyscall(...))
|
||||||
|
e1 = syscall.GetErrno()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"bufio"
|
||||||
|
"flag"
|
||||||
|
"fmt"
|
||||||
|
"io/ioutil"
|
||||||
|
"os"
|
||||||
|
"regexp"
|
||||||
|
"strings"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
b32 = flag.Bool("b32", false, "32bit big-endian")
|
||||||
|
l32 = flag.Bool("l32", false, "32bit little-endian")
|
||||||
|
aix = flag.Bool("aix", false, "aix")
|
||||||
|
tags = flag.String("tags", "", "build tags")
|
||||||
|
)
|
||||||
|
|
||||||
|
// cmdLine returns this programs's commandline arguments
|
||||||
|
func cmdLine() string {
|
||||||
|
return "go run mksyscall_aix_ppc64.go " + strings.Join(os.Args[1:], " ")
|
||||||
|
}
|
||||||
|
|
||||||
|
// buildTags returns build tags
|
||||||
|
func buildTags() string {
|
||||||
|
return *tags
|
||||||
|
}
|
||||||
|
|
||||||
|
// Param is function parameter
|
||||||
|
type Param struct {
|
||||||
|
Name string
|
||||||
|
Type string
|
||||||
|
}
|
||||||
|
|
||||||
|
// usage prints the program usage
|
||||||
|
func usage() {
|
||||||
|
fmt.Fprintf(os.Stderr, "usage: go run mksyscall_aix_ppc64.go [-b32 | -l32] [-tags x,y] [file ...]\n")
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
// parseParamList parses parameter list and returns a slice of parameters
|
||||||
|
func parseParamList(list string) []string {
|
||||||
|
list = strings.TrimSpace(list)
|
||||||
|
if list == "" {
|
||||||
|
return []string{}
|
||||||
|
}
|
||||||
|
return regexp.MustCompile(`\s*,\s*`).Split(list, -1)
|
||||||
|
}
|
||||||
|
|
||||||
|
// parseParam splits a parameter into name and type
|
||||||
|
func parseParam(p string) Param {
|
||||||
|
ps := regexp.MustCompile(`^(\S*) (\S*)$`).FindStringSubmatch(p)
|
||||||
|
if ps == nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "malformed parameter: %s\n", p)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
return Param{ps[1], ps[2]}
|
||||||
|
}
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
flag.Usage = usage
|
||||||
|
flag.Parse()
|
||||||
|
if len(flag.Args()) <= 0 {
|
||||||
|
fmt.Fprintf(os.Stderr, "no files to parse provided\n")
|
||||||
|
usage()
|
||||||
|
}
|
||||||
|
|
||||||
|
endianness := ""
|
||||||
|
if *b32 {
|
||||||
|
endianness = "big-endian"
|
||||||
|
} else if *l32 {
|
||||||
|
endianness = "little-endian"
|
||||||
|
}
|
||||||
|
|
||||||
|
pack := ""
|
||||||
|
// GCCGO
|
||||||
|
textgccgo := ""
|
||||||
|
cExtern := "/*\n#include <stdint.h>\n"
|
||||||
|
// GC
|
||||||
|
textgc := ""
|
||||||
|
dynimports := ""
|
||||||
|
linknames := ""
|
||||||
|
var vars []string
|
||||||
|
// COMMON
|
||||||
|
textcommon := ""
|
||||||
|
for _, path := range flag.Args() {
|
||||||
|
file, err := os.Open(path)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
s := bufio.NewScanner(file)
|
||||||
|
for s.Scan() {
|
||||||
|
t := s.Text()
|
||||||
|
t = strings.TrimSpace(t)
|
||||||
|
t = regexp.MustCompile(`\s+`).ReplaceAllString(t, ` `)
|
||||||
|
if p := regexp.MustCompile(`^package (\S+)$`).FindStringSubmatch(t); p != nil && pack == "" {
|
||||||
|
pack = p[1]
|
||||||
|
}
|
||||||
|
nonblock := regexp.MustCompile(`^\/\/sysnb `).FindStringSubmatch(t)
|
||||||
|
if regexp.MustCompile(`^\/\/sys `).FindStringSubmatch(t) == nil && nonblock == nil {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
// Line must be of the form
|
||||||
|
// func Open(path string, mode int, perm int) (fd int, err error)
|
||||||
|
// Split into name, in params, out params.
|
||||||
|
f := regexp.MustCompile(`^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$`).FindStringSubmatch(t)
|
||||||
|
if f == nil {
|
||||||
|
fmt.Fprintf(os.Stderr, "%s:%s\nmalformed //sys declaration\n", path, t)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
funct, inps, outps, modname, sysname := f[2], f[3], f[4], f[5], f[6]
|
||||||
|
|
||||||
|
// Split argument lists on comma.
|
||||||
|
in := parseParamList(inps)
|
||||||
|
out := parseParamList(outps)
|
||||||
|
|
||||||
|
inps = strings.Join(in, ", ")
|
||||||
|
outps = strings.Join(out, ", ")
|
||||||
|
|
||||||
|
if sysname == "" {
|
||||||
|
sysname = funct
|
||||||
|
}
|
||||||
|
|
||||||
|
onlyCommon := false
|
||||||
|
if funct == "readlen" || funct == "writelen" || funct == "FcntlInt" || funct == "FcntlFlock" {
|
||||||
|
// This function call another syscall which is already implemented.
|
||||||
|
// Therefore, the gc and gccgo part must not be generated.
|
||||||
|
onlyCommon = true
|
||||||
|
}
|
||||||
|
|
||||||
|
// Try in vain to keep people from editing this file.
|
||||||
|
// The theory is that they jump into the middle of the file
|
||||||
|
// without reading the header.
|
||||||
|
|
||||||
|
textcommon += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
|
||||||
|
if !onlyCommon {
|
||||||
|
textgccgo += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
|
||||||
|
textgc += "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check if value return, err return available
|
||||||
|
errvar := ""
|
||||||
|
rettype := ""
|
||||||
|
for _, param := range out {
|
||||||
|
p := parseParam(param)
|
||||||
|
if p.Type == "error" {
|
||||||
|
errvar = p.Name
|
||||||
|
} else {
|
||||||
|
rettype = p.Type
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sysname = regexp.MustCompile(`([a-z])([A-Z])`).ReplaceAllString(sysname, `${1}_$2`)
|
||||||
|
sysname = strings.ToLower(sysname) // All libc functions are lowercase.
|
||||||
|
|
||||||
|
// GCCGO Prototype return type
|
||||||
|
cRettype := ""
|
||||||
|
if rettype == "unsafe.Pointer" {
|
||||||
|
cRettype = "uintptr_t"
|
||||||
|
} else if rettype == "uintptr" {
|
||||||
|
cRettype = "uintptr_t"
|
||||||
|
} else if regexp.MustCompile(`^_`).FindStringSubmatch(rettype) != nil {
|
||||||
|
cRettype = "uintptr_t"
|
||||||
|
} else if rettype == "int" {
|
||||||
|
cRettype = "int"
|
||||||
|
} else if rettype == "int32" {
|
||||||
|
cRettype = "int"
|
||||||
|
} else if rettype == "int64" {
|
||||||
|
cRettype = "long long"
|
||||||
|
} else if rettype == "uint32" {
|
||||||
|
cRettype = "unsigned int"
|
||||||
|
} else if rettype == "uint64" {
|
||||||
|
cRettype = "unsigned long long"
|
||||||
|
} else {
|
||||||
|
cRettype = "int"
|
||||||
|
}
|
||||||
|
if sysname == "exit" {
|
||||||
|
cRettype = "void"
|
||||||
|
}
|
||||||
|
|
||||||
|
// GCCGO Prototype arguments type
|
||||||
|
var cIn []string
|
||||||
|
for i, param := range in {
|
||||||
|
p := parseParam(param)
|
||||||
|
if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if p.Type == "string" {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type) != nil {
|
||||||
|
cIn = append(cIn, "uintptr_t", "size_t")
|
||||||
|
} else if p.Type == "unsafe.Pointer" {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if p.Type == "uintptr" {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil {
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else if p.Type == "int" {
|
||||||
|
if (i == 0 || i == 2) && funct == "fcntl" {
|
||||||
|
// These fcntl arguments needs to be uintptr to be able to call FcntlInt and FcntlFlock
|
||||||
|
cIn = append(cIn, "uintptr_t")
|
||||||
|
} else {
|
||||||
|
cIn = append(cIn, "int")
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if p.Type == "int32" {
|
||||||
|
cIn = append(cIn, "int")
|
||||||
|
} else if p.Type == "int64" {
|
||||||
|
cIn = append(cIn, "long long")
|
||||||
|
} else if p.Type == "uint32" {
|
||||||
|
cIn = append(cIn, "unsigned int")
|
||||||
|
} else if p.Type == "uint64" {
|
||||||
|
cIn = append(cIn, "unsigned long long")
|
||||||
|
} else {
|
||||||
|
cIn = append(cIn, "int")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if !onlyCommon {
|
||||||
|
// GCCGO Prototype Generation
|
||||||
|
// Imports of system calls from libc
|
||||||
|
cExtern += fmt.Sprintf("%s %s", cRettype, sysname)
|
||||||
|
cIn := strings.Join(cIn, ", ")
|
||||||
|
cExtern += fmt.Sprintf("(%s);\n", cIn)
|
||||||
|
}
|
||||||
|
// GC Library name
|
||||||
|
if modname == "" {
|
||||||
|
modname = "libc.a/shr_64.o"
|
||||||
|
} else {
|
||||||
|
fmt.Fprintf(os.Stderr, "%s: only syscall using libc are available\n", funct)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
sysvarname := fmt.Sprintf("libc_%s", sysname)
|
||||||
|
|
||||||
|
if !onlyCommon {
|
||||||
|
// GC Runtime import of function to allow cross-platform builds.
|
||||||
|
dynimports += fmt.Sprintf("//go:cgo_import_dynamic %s %s \"%s\"\n", sysvarname, sysname, modname)
|
||||||
|
// GC Link symbol to proc address variable.
|
||||||
|
linknames += fmt.Sprintf("//go:linkname %s %s\n", sysvarname, sysvarname)
|
||||||
|
// GC Library proc address variable.
|
||||||
|
vars = append(vars, sysvarname)
|
||||||
|
}
|
||||||
|
|
||||||
|
strconvfunc := "BytePtrFromString"
|
||||||
|
strconvtype := "*byte"
|
||||||
|
|
||||||
|
// Go function header.
|
||||||
|
if outps != "" {
|
||||||
|
outps = fmt.Sprintf(" (%s)", outps)
|
||||||
|
}
|
||||||
|
if textcommon != "" {
|
||||||
|
textcommon += "\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
textcommon += fmt.Sprintf("func %s(%s)%s {\n", funct, strings.Join(in, ", "), outps)
|
||||||
|
|
||||||
|
// Prepare arguments tocall.
|
||||||
|
var argscommon []string // Arguments in the common part
|
||||||
|
var argscall []string // Arguments for call prototype
|
||||||
|
var argsgc []string // Arguments for gc call (with syscall6)
|
||||||
|
var argsgccgo []string // Arguments for gccgo call (with C.name_of_syscall)
|
||||||
|
n := 0
|
||||||
|
argN := 0
|
||||||
|
for _, param := range in {
|
||||||
|
p := parseParam(param)
|
||||||
|
if regexp.MustCompile(`^\*`).FindStringSubmatch(p.Type) != nil {
|
||||||
|
argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(%s))", p.Name))
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
|
||||||
|
argsgc = append(argsgc, p.Name)
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
|
||||||
|
} else if p.Type == "string" && errvar != "" {
|
||||||
|
textcommon += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
|
||||||
|
textcommon += fmt.Sprintf("\t_p%d, %s = %s(%s)\n", n, errvar, strconvfunc, p.Name)
|
||||||
|
textcommon += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
|
||||||
|
|
||||||
|
argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
|
||||||
|
argscall = append(argscall, fmt.Sprintf("_p%d uintptr ", n))
|
||||||
|
argsgc = append(argsgc, fmt.Sprintf("_p%d", n))
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(_p%d)", n))
|
||||||
|
n++
|
||||||
|
} else if p.Type == "string" {
|
||||||
|
fmt.Fprintf(os.Stderr, path+":"+funct+" uses string arguments, but has no error return\n")
|
||||||
|
textcommon += fmt.Sprintf("\tvar _p%d %s\n", n, strconvtype)
|
||||||
|
textcommon += fmt.Sprintf("\t_p%d, %s = %s(%s)\n", n, errvar, strconvfunc, p.Name)
|
||||||
|
textcommon += fmt.Sprintf("\tif %s != nil {\n\t\treturn\n\t}\n", errvar)
|
||||||
|
|
||||||
|
argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n))
|
||||||
|
argscall = append(argscall, fmt.Sprintf("_p%d uintptr", n))
|
||||||
|
argsgc = append(argsgc, fmt.Sprintf("_p%d", n))
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(_p%d)", n))
|
||||||
|
n++
|
||||||
|
} else if m := regexp.MustCompile(`^\[\](.*)`).FindStringSubmatch(p.Type); m != nil {
|
||||||
|
// Convert slice into pointer, length.
|
||||||
|
// Have to be careful not to take address of &a[0] if len == 0:
|
||||||
|
// pass nil in that case.
|
||||||
|
textcommon += fmt.Sprintf("\tvar _p%d *%s\n", n, m[1])
|
||||||
|
textcommon += fmt.Sprintf("\tif len(%s) > 0 {\n\t\t_p%d = &%s[0]\n\t}\n", p.Name, n, p.Name)
|
||||||
|
argscommon = append(argscommon, fmt.Sprintf("uintptr(unsafe.Pointer(_p%d))", n), fmt.Sprintf("len(%s)", p.Name))
|
||||||
|
argscall = append(argscall, fmt.Sprintf("_p%d uintptr", n), fmt.Sprintf("_lenp%d int", n))
|
||||||
|
argsgc = append(argsgc, fmt.Sprintf("_p%d", n), fmt.Sprintf("uintptr(_lenp%d)", n))
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(_p%d)", n), fmt.Sprintf("C.size_t(_lenp%d)", n))
|
||||||
|
n++
|
||||||
|
} else if p.Type == "int64" && endianness != "" {
|
||||||
|
fmt.Fprintf(os.Stderr, path+":"+funct+" uses int64 with 32 bits mode. Case not yet implemented\n")
|
||||||
|
} else if p.Type == "bool" {
|
||||||
|
fmt.Fprintf(os.Stderr, path+":"+funct+" uses bool. Case not yet implemented\n")
|
||||||
|
} else if regexp.MustCompile(`^_`).FindStringSubmatch(p.Type) != nil || p.Type == "unsafe.Pointer" {
|
||||||
|
argscommon = append(argscommon, fmt.Sprintf("uintptr(%s)", p.Name))
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
|
||||||
|
argsgc = append(argsgc, p.Name)
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
|
||||||
|
} else if p.Type == "int" {
|
||||||
|
if (argN == 0 || argN == 2) && ((funct == "fcntl") || (funct == "FcntlInt") || (funct == "FcntlFlock")) {
|
||||||
|
// These fcntl arguments need to be uintptr to be able to call FcntlInt and FcntlFlock
|
||||||
|
argscommon = append(argscommon, fmt.Sprintf("uintptr(%s)", p.Name))
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
|
||||||
|
argsgc = append(argsgc, p.Name)
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
|
||||||
|
|
||||||
|
} else {
|
||||||
|
argscommon = append(argscommon, p.Name)
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s int", p.Name))
|
||||||
|
argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.int(%s)", p.Name))
|
||||||
|
}
|
||||||
|
} else if p.Type == "int32" {
|
||||||
|
argscommon = append(argscommon, p.Name)
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s int32", p.Name))
|
||||||
|
argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.int(%s)", p.Name))
|
||||||
|
} else if p.Type == "int64" {
|
||||||
|
argscommon = append(argscommon, p.Name)
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s int64", p.Name))
|
||||||
|
argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.longlong(%s)", p.Name))
|
||||||
|
} else if p.Type == "uint32" {
|
||||||
|
argscommon = append(argscommon, p.Name)
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s uint32", p.Name))
|
||||||
|
argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.uint(%s)", p.Name))
|
||||||
|
} else if p.Type == "uint64" {
|
||||||
|
argscommon = append(argscommon, p.Name)
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s uint64", p.Name))
|
||||||
|
argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.ulonglong(%s)", p.Name))
|
||||||
|
} else if p.Type == "uintptr" {
|
||||||
|
argscommon = append(argscommon, p.Name)
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s uintptr", p.Name))
|
||||||
|
argsgc = append(argsgc, p.Name)
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.uintptr_t(%s)", p.Name))
|
||||||
|
} else {
|
||||||
|
argscommon = append(argscommon, fmt.Sprintf("int(%s)", p.Name))
|
||||||
|
argscall = append(argscall, fmt.Sprintf("%s int", p.Name))
|
||||||
|
argsgc = append(argsgc, fmt.Sprintf("uintptr(%s)", p.Name))
|
||||||
|
argsgccgo = append(argsgccgo, fmt.Sprintf("C.int(%s)", p.Name))
|
||||||
|
}
|
||||||
|
argN++
|
||||||
|
}
|
||||||
|
nargs := len(argsgc)
|
||||||
|
|
||||||
|
// COMMON function generation
|
||||||
|
argscommonlist := strings.Join(argscommon, ", ")
|
||||||
|
callcommon := fmt.Sprintf("call%s(%s)", sysname, argscommonlist)
|
||||||
|
ret := []string{"_", "_"}
|
||||||
|
body := ""
|
||||||
|
doErrno := false
|
||||||
|
for i := 0; i < len(out); i++ {
|
||||||
|
p := parseParam(out[i])
|
||||||
|
reg := ""
|
||||||
|
if p.Name == "err" {
|
||||||
|
reg = "e1"
|
||||||
|
ret[1] = reg
|
||||||
|
doErrno = true
|
||||||
|
} else {
|
||||||
|
reg = "r0"
|
||||||
|
ret[0] = reg
|
||||||
|
}
|
||||||
|
if p.Type == "bool" {
|
||||||
|
reg = fmt.Sprintf("%s != 0", reg)
|
||||||
|
}
|
||||||
|
if reg != "e1" {
|
||||||
|
body += fmt.Sprintf("\t%s = %s(%s)\n", p.Name, p.Type, reg)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ret[0] == "_" && ret[1] == "_" {
|
||||||
|
textcommon += fmt.Sprintf("\t%s\n", callcommon)
|
||||||
|
} else {
|
||||||
|
textcommon += fmt.Sprintf("\t%s, %s := %s\n", ret[0], ret[1], callcommon)
|
||||||
|
}
|
||||||
|
textcommon += body
|
||||||
|
|
||||||
|
if doErrno {
|
||||||
|
textcommon += "\tif e1 != 0 {\n"
|
||||||
|
textcommon += "\t\terr = errnoErr(e1)\n"
|
||||||
|
textcommon += "\t}\n"
|
||||||
|
}
|
||||||
|
textcommon += "\treturn\n"
|
||||||
|
textcommon += "}\n"
|
||||||
|
|
||||||
|
if onlyCommon {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
// CALL Prototype
|
||||||
|
callProto := fmt.Sprintf("func call%s(%s) (r1 uintptr, e1 Errno) {\n", sysname, strings.Join(argscall, ", "))
|
||||||
|
|
||||||
|
// GC function generation
|
||||||
|
asm := "syscall6"
|
||||||
|
if nonblock != nil {
|
||||||
|
asm = "rawSyscall6"
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(argsgc) <= 6 {
|
||||||
|
for len(argsgc) < 6 {
|
||||||
|
argsgc = append(argsgc, "0")
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
fmt.Fprintf(os.Stderr, "%s: too many arguments to system call", funct)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
argsgclist := strings.Join(argsgc, ", ")
|
||||||
|
callgc := fmt.Sprintf("%s(uintptr(unsafe.Pointer(&%s)), %d, %s)", asm, sysvarname, nargs, argsgclist)
|
||||||
|
|
||||||
|
textgc += callProto
|
||||||
|
textgc += fmt.Sprintf("\tr1, _, e1 = %s\n", callgc)
|
||||||
|
textgc += "\treturn\n}\n"
|
||||||
|
|
||||||
|
// GCCGO function generation
|
||||||
|
argsgccgolist := strings.Join(argsgccgo, ", ")
|
||||||
|
callgccgo := fmt.Sprintf("C.%s(%s)", sysname, argsgccgolist)
|
||||||
|
textgccgo += callProto
|
||||||
|
textgccgo += fmt.Sprintf("\tr1 = uintptr(%s)\n", callgccgo)
|
||||||
|
textgccgo += "\te1 = syscall.GetErrno()\n"
|
||||||
|
textgccgo += "\treturn\n}\n"
|
||||||
|
}
|
||||||
|
if err := s.Err(); err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
file.Close()
|
||||||
|
}
|
||||||
|
imp := ""
|
||||||
|
if pack != "unix" {
|
||||||
|
imp = "import \"golang.org/x/sys/unix\"\n"
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// Print zsyscall_aix_ppc64.go
|
||||||
|
err := ioutil.WriteFile("zsyscall_aix_ppc64.go",
|
||||||
|
[]byte(fmt.Sprintf(srcTemplate1, cmdLine(), buildTags(), pack, imp, textcommon)),
|
||||||
|
0644)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Print zsyscall_aix_ppc64_gc.go
|
||||||
|
vardecls := "\t" + strings.Join(vars, ",\n\t")
|
||||||
|
vardecls += " syscallFunc"
|
||||||
|
err = ioutil.WriteFile("zsyscall_aix_ppc64_gc.go",
|
||||||
|
[]byte(fmt.Sprintf(srcTemplate2, cmdLine(), buildTags(), pack, imp, dynimports, linknames, vardecls, textgc)),
|
||||||
|
0644)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Print zsyscall_aix_ppc64_gccgo.go
|
||||||
|
err = ioutil.WriteFile("zsyscall_aix_ppc64_gccgo.go",
|
||||||
|
[]byte(fmt.Sprintf(srcTemplate3, cmdLine(), buildTags(), pack, cExtern, imp, textgccgo)),
|
||||||
|
0644)
|
||||||
|
if err != nil {
|
||||||
|
fmt.Fprintf(os.Stderr, err.Error())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const srcTemplate1 = `// %s
|
||||||
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
|
// +build %s
|
||||||
|
|
||||||
|
package %s
|
||||||
|
|
||||||
|
import (
|
||||||
|
"unsafe"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
%s
|
||||||
|
|
||||||
|
%s
|
||||||
|
`
|
||||||
|
const srcTemplate2 = `// %s
|
||||||
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
|
// +build %s
|
||||||
|
// +build !gccgo
|
||||||
|
|
||||||
|
package %s
|
||||||
|
|
||||||
|
import (
|
||||||
|
"unsafe"
|
||||||
|
)
|
||||||
|
%s
|
||||||
|
%s
|
||||||
|
%s
|
||||||
|
type syscallFunc uintptr
|
||||||
|
|
||||||
|
var (
|
||||||
|
%s
|
||||||
|
)
|
||||||
|
|
||||||
|
// Implemented in runtime/syscall_aix.go.
|
||||||
|
func rawSyscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
|
||||||
|
func syscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
|
||||||
|
|
||||||
|
%s
|
||||||
|
`
|
||||||
|
const srcTemplate3 = `// %s
|
||||||
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
|
// +build %s
|
||||||
|
// +build gccgo
|
||||||
|
|
||||||
|
package %s
|
||||||
|
|
||||||
|
%s
|
||||||
|
*/
|
||||||
|
import "C"
|
||||||
|
import (
|
||||||
|
"syscall"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
%s
|
||||||
|
|
||||||
|
%s
|
||||||
|
`
|
579
vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.pl
generated
vendored
579
vendor/golang.org/x/sys/unix/mksyscall_aix_ppc64.pl
generated
vendored
|
@ -1,579 +0,0 @@
|
||||||
#!/usr/bin/env perl
|
|
||||||
# Copyright 2018 The Go Authors. All rights reserved.
|
|
||||||
# Use of this source code is governed by a BSD-style
|
|
||||||
# license that can be found in the LICENSE file.
|
|
||||||
|
|
||||||
# This program reads a file containing function prototypes
|
|
||||||
# (like syscall_aix.go) and generates system call bodies.
|
|
||||||
# The prototypes are marked by lines beginning with "//sys"
|
|
||||||
# and read like func declarations if //sys is replaced by func, but:
|
|
||||||
# * The parameter lists must give a name for each argument.
|
|
||||||
# This includes return parameters.
|
|
||||||
# * The parameter lists must give a type for each argument:
|
|
||||||
# the (x, y, z int) shorthand is not allowed.
|
|
||||||
# * If the return parameter is an error number, it must be named err.
|
|
||||||
# * If go func name needs to be different than its libc name,
|
|
||||||
# * or the function is not in libc, name could be specified
|
|
||||||
# * at the end, after "=" sign, like
|
|
||||||
# //sys getsockopt(s int, level int, name int, val uintptr, vallen *_Socklen) (err error) = libsocket.getsockopt
|
|
||||||
|
|
||||||
# This program will generate three files and handle both gc and gccgo implementation:
|
|
||||||
# - zsyscall_aix_ppc64.go: the common part of each implementation (error handler, pointer creation)
|
|
||||||
# - zsyscall_aix_ppc64_gc.go: gc part with //go_cgo_import_dynamic and a call to syscall6
|
|
||||||
# - zsyscall_aix_ppc64_gccgo.go: gccgo part with C function and conversion to C type.
|
|
||||||
|
|
||||||
# The generated code looks like this
|
|
||||||
#
|
|
||||||
# zsyscall_aix_ppc64.go
|
|
||||||
# func asyscall(...) (n int, err error) {
|
|
||||||
# // Pointer Creation
|
|
||||||
# r1, e1 := callasyscall(...)
|
|
||||||
# // Type Conversion
|
|
||||||
# // Error Handler
|
|
||||||
# return
|
|
||||||
# }
|
|
||||||
#
|
|
||||||
# zsyscall_aix_ppc64_gc.go
|
|
||||||
# //go:cgo_import_dynamic libc_asyscall asyscall "libc.a/shr_64.o"
|
|
||||||
# //go:linkname libc_asyscall libc_asyscall
|
|
||||||
# var asyscall syscallFunc
|
|
||||||
#
|
|
||||||
# func callasyscall(...) (r1 uintptr, e1 Errno) {
|
|
||||||
# r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_asyscall)), "nb_args", ... )
|
|
||||||
# return
|
|
||||||
# }
|
|
||||||
#
|
|
||||||
# zsyscall_aix_ppc64_ggcgo.go
|
|
||||||
# /*
|
|
||||||
# int asyscall(...)
|
|
||||||
#
|
|
||||||
# */
|
|
||||||
# import "C"
|
|
||||||
#
|
|
||||||
# func callasyscall(...) (r1 uintptr, e1 Errno) {
|
|
||||||
# r1 = uintptr(C.asyscall(...))
|
|
||||||
# e1 = syscall.GetErrno()
|
|
||||||
# return
|
|
||||||
# }
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
use strict;
|
|
||||||
|
|
||||||
my $cmdline = "mksyscall_aix_ppc64.pl " . join(' ', @ARGV);
|
|
||||||
my $errors = 0;
|
|
||||||
my $_32bit = "";
|
|
||||||
my $tags = ""; # build tags
|
|
||||||
my $aix = 0;
|
|
||||||
my $solaris = 0;
|
|
||||||
|
|
||||||
binmode STDOUT;
|
|
||||||
|
|
||||||
if($ARGV[0] eq "-b32") {
|
|
||||||
$_32bit = "big-endian";
|
|
||||||
shift;
|
|
||||||
} elsif($ARGV[0] eq "-l32") {
|
|
||||||
$_32bit = "little-endian";
|
|
||||||
shift;
|
|
||||||
}
|
|
||||||
if($ARGV[0] eq "-aix") {
|
|
||||||
$aix = 1;
|
|
||||||
shift;
|
|
||||||
}
|
|
||||||
if($ARGV[0] eq "-tags") {
|
|
||||||
shift;
|
|
||||||
$tags = $ARGV[0];
|
|
||||||
shift;
|
|
||||||
}
|
|
||||||
|
|
||||||
if($ARGV[0] =~ /^-/) {
|
|
||||||
print STDERR "usage: mksyscall_aix.pl [-b32 | -l32] [-tags x,y] [file ...]\n";
|
|
||||||
exit 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
sub parseparamlist($) {
|
|
||||||
my ($list) = @_;
|
|
||||||
$list =~ s/^\s*//;
|
|
||||||
$list =~ s/\s*$//;
|
|
||||||
if($list eq "") {
|
|
||||||
return ();
|
|
||||||
}
|
|
||||||
return split(/\s*,\s*/, $list);
|
|
||||||
}
|
|
||||||
|
|
||||||
sub parseparam($) {
|
|
||||||
my ($p) = @_;
|
|
||||||
if($p !~ /^(\S*) (\S*)$/) {
|
|
||||||
print STDERR "$ARGV:$.: malformed parameter: $p\n";
|
|
||||||
$errors = 1;
|
|
||||||
return ("xx", "int");
|
|
||||||
}
|
|
||||||
return ($1, $2);
|
|
||||||
}
|
|
||||||
|
|
||||||
my $package = "";
|
|
||||||
# GCCGO
|
|
||||||
my $textgccgo = "";
|
|
||||||
my $c_extern = "/*\n#include <stdint.h>\n";
|
|
||||||
# GC
|
|
||||||
my $textgc = "";
|
|
||||||
my $dynimports = "";
|
|
||||||
my $linknames = "";
|
|
||||||
my @vars = ();
|
|
||||||
# COMMUN
|
|
||||||
my $textcommon = "";
|
|
||||||
|
|
||||||
while(<>) {
|
|
||||||
chomp;
|
|
||||||
s/\s+/ /g;
|
|
||||||
s/^\s+//;
|
|
||||||
s/\s+$//;
|
|
||||||
$package = $1 if !$package && /^package (\S+)$/;
|
|
||||||
my $nonblock = /^\/\/sysnb /;
|
|
||||||
next if !/^\/\/sys / && !$nonblock;
|
|
||||||
|
|
||||||
# Line must be of the form
|
|
||||||
# func Open(path string, mode int, perm int) (fd int, err error)
|
|
||||||
# Split into name, in params, out params.
|
|
||||||
if(!/^\/\/sys(nb)? (\w+)\(([^()]*)\)\s*(?:\(([^()]+)\))?\s*(?:=\s*(?:(\w*)\.)?(\w*))?$/) {
|
|
||||||
print STDERR "$ARGV:$.: malformed //sys declaration\n";
|
|
||||||
$errors = 1;
|
|
||||||
next;
|
|
||||||
}
|
|
||||||
my ($nb, $func, $in, $out, $modname, $sysname) = ($1, $2, $3, $4, $5, $6);
|
|
||||||
|
|
||||||
# Split argument lists on comma.
|
|
||||||
my @in = parseparamlist($in);
|
|
||||||
my @out = parseparamlist($out);
|
|
||||||
|
|
||||||
$in = join(', ', @in);
|
|
||||||
$out = join(', ', @out);
|
|
||||||
|
|
||||||
if($sysname eq "") {
|
|
||||||
$sysname = "$func";
|
|
||||||
}
|
|
||||||
|
|
||||||
my $onlyCommon = 0;
|
|
||||||
if ($func eq "readlen" || $func eq "writelen" || $func eq "FcntlInt" || $func eq "FcntlFlock") {
|
|
||||||
# This function call another syscall which is already implemented.
|
|
||||||
# Therefore, the gc and gccgo part must not be generated.
|
|
||||||
$onlyCommon = 1
|
|
||||||
}
|
|
||||||
|
|
||||||
# Try in vain to keep people from editing this file.
|
|
||||||
# The theory is that they jump into the middle of the file
|
|
||||||
# without reading the header.
|
|
||||||
|
|
||||||
$textcommon .= "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n";
|
|
||||||
if (!$onlyCommon) {
|
|
||||||
$textgccgo .= "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n";
|
|
||||||
$textgc .= "// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT\n\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Check if value return, err return available
|
|
||||||
my $errvar = "";
|
|
||||||
my $retvar = "";
|
|
||||||
my $rettype = "";
|
|
||||||
foreach my $p (@out) {
|
|
||||||
my ($name, $type) = parseparam($p);
|
|
||||||
if($type eq "error") {
|
|
||||||
$errvar = $name;
|
|
||||||
} else {
|
|
||||||
$retvar = $name;
|
|
||||||
$rettype = $type;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
$sysname =~ s/([a-z])([A-Z])/${1}_$2/g;
|
|
||||||
$sysname =~ y/A-Z/a-z/; # All libc functions are lowercase.
|
|
||||||
|
|
||||||
# GCCGO Prototype return type
|
|
||||||
my $C_rettype = "";
|
|
||||||
if($rettype eq "unsafe.Pointer") {
|
|
||||||
$C_rettype = "uintptr_t";
|
|
||||||
} elsif($rettype eq "uintptr") {
|
|
||||||
$C_rettype = "uintptr_t";
|
|
||||||
} elsif($rettype =~ /^_/) {
|
|
||||||
$C_rettype = "uintptr_t";
|
|
||||||
} elsif($rettype eq "int") {
|
|
||||||
$C_rettype = "int";
|
|
||||||
} elsif($rettype eq "int32") {
|
|
||||||
$C_rettype = "int";
|
|
||||||
} elsif($rettype eq "int64") {
|
|
||||||
$C_rettype = "long long";
|
|
||||||
} elsif($rettype eq "uint32") {
|
|
||||||
$C_rettype = "unsigned int";
|
|
||||||
} elsif($rettype eq "uint64") {
|
|
||||||
$C_rettype = "unsigned long long";
|
|
||||||
} else {
|
|
||||||
$C_rettype = "int";
|
|
||||||
}
|
|
||||||
if($sysname eq "exit") {
|
|
||||||
$C_rettype = "void";
|
|
||||||
}
|
|
||||||
|
|
||||||
# GCCGO Prototype arguments type
|
|
||||||
my @c_in = ();
|
|
||||||
foreach my $i (0 .. $#in) {
|
|
||||||
my ($name, $type) = parseparam($in[$i]);
|
|
||||||
if($type =~ /^\*/) {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type eq "string") {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type =~ /^\[\](.*)/) {
|
|
||||||
push @c_in, "uintptr_t", "size_t";
|
|
||||||
} elsif($type eq "unsafe.Pointer") {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type eq "uintptr") {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type =~ /^_/) {
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} elsif($type eq "int") {
|
|
||||||
if (($i == 0 || $i == 2) && $func eq "fcntl"){
|
|
||||||
# These fcntl arguments needs to be uintptr to be able to call FcntlInt and FcntlFlock
|
|
||||||
push @c_in, "uintptr_t";
|
|
||||||
} else {
|
|
||||||
push @c_in, "int";
|
|
||||||
}
|
|
||||||
} elsif($type eq "int32") {
|
|
||||||
push @c_in, "int";
|
|
||||||
} elsif($type eq "int64") {
|
|
||||||
push @c_in, "long long";
|
|
||||||
} elsif($type eq "uint32") {
|
|
||||||
push @c_in, "unsigned int";
|
|
||||||
} elsif($type eq "uint64") {
|
|
||||||
push @c_in, "unsigned long long";
|
|
||||||
} else {
|
|
||||||
push @c_in, "int";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!$onlyCommon){
|
|
||||||
# GCCGO Prototype Generation
|
|
||||||
# Imports of system calls from libc
|
|
||||||
$c_extern .= "$C_rettype $sysname";
|
|
||||||
my $c_in = join(', ', @c_in);
|
|
||||||
$c_extern .= "($c_in);\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
# GC Library name
|
|
||||||
if($modname eq "") {
|
|
||||||
$modname = "libc.a/shr_64.o";
|
|
||||||
} else {
|
|
||||||
print STDERR "$func: only syscall using libc are available\n";
|
|
||||||
$errors = 1;
|
|
||||||
next;
|
|
||||||
}
|
|
||||||
my $sysvarname = "libc_${sysname}";
|
|
||||||
|
|
||||||
if (!$onlyCommon){
|
|
||||||
# GC Runtime import of function to allow cross-platform builds.
|
|
||||||
$dynimports .= "//go:cgo_import_dynamic ${sysvarname} ${sysname} \"$modname\"\n";
|
|
||||||
# GC Link symbol to proc address variable.
|
|
||||||
$linknames .= "//go:linkname ${sysvarname} ${sysvarname}\n";
|
|
||||||
# GC Library proc address variable.
|
|
||||||
push @vars, $sysvarname;
|
|
||||||
}
|
|
||||||
|
|
||||||
my $strconvfunc ="BytePtrFromString";
|
|
||||||
my $strconvtype = "*byte";
|
|
||||||
|
|
||||||
# Go function header.
|
|
||||||
if($out ne "") {
|
|
||||||
$out = " ($out)";
|
|
||||||
}
|
|
||||||
if($textcommon ne "") {
|
|
||||||
$textcommon .= "\n"
|
|
||||||
}
|
|
||||||
|
|
||||||
$textcommon .= sprintf "func %s(%s)%s {\n", $func, join(', ', @in), $out ;
|
|
||||||
|
|
||||||
# Prepare arguments to call.
|
|
||||||
my @argscommun = (); # Arguments in the commun part
|
|
||||||
my @argscall = (); # Arguments for call prototype
|
|
||||||
my @argsgc = (); # Arguments for gc call (with syscall6)
|
|
||||||
my @argsgccgo = (); # Arguments for gccgo call (with C.name_of_syscall)
|
|
||||||
my $n = 0;
|
|
||||||
my $arg_n = 0;
|
|
||||||
foreach my $p (@in) {
|
|
||||||
my ($name, $type) = parseparam($p);
|
|
||||||
if($type =~ /^\*/) {
|
|
||||||
push @argscommun, "uintptr(unsafe.Pointer($name))";
|
|
||||||
push @argscall, "$name uintptr";
|
|
||||||
push @argsgc, "$name";
|
|
||||||
push @argsgccgo, "C.uintptr_t($name)";
|
|
||||||
} elsif($type eq "string" && $errvar ne "") {
|
|
||||||
$textcommon .= "\tvar _p$n $strconvtype\n";
|
|
||||||
$textcommon .= "\t_p$n, $errvar = $strconvfunc($name)\n";
|
|
||||||
$textcommon .= "\tif $errvar != nil {\n\t\treturn\n\t}\n";
|
|
||||||
|
|
||||||
push @argscommun, "uintptr(unsafe.Pointer(_p$n))";
|
|
||||||
push @argscall, "_p$n uintptr ";
|
|
||||||
push @argsgc, "_p$n";
|
|
||||||
push @argsgccgo, "C.uintptr_t(_p$n)";
|
|
||||||
$n++;
|
|
||||||
} elsif($type eq "string") {
|
|
||||||
print STDERR "$ARGV:$.: $func uses string arguments, but has no error return\n";
|
|
||||||
$textcommon .= "\tvar _p$n $strconvtype\n";
|
|
||||||
$textcommon .= "\t_p$n, $errvar = $strconvfunc($name)\n";
|
|
||||||
$textcommon .= "\tif $errvar != nil {\n\t\treturn\n\t}\n";
|
|
||||||
|
|
||||||
push @argscommun, "uintptr(unsafe.Pointer(_p$n))";
|
|
||||||
push @argscall, "_p$n uintptr";
|
|
||||||
push @argsgc, "_p$n";
|
|
||||||
push @argsgccgo, "C.uintptr_t(_p$n)";
|
|
||||||
$n++;
|
|
||||||
} elsif($type =~ /^\[\](.*)/) {
|
|
||||||
# Convert slice into pointer, length.
|
|
||||||
# Have to be careful not to take address of &a[0] if len == 0:
|
|
||||||
# pass nil in that case.
|
|
||||||
$textcommon .= "\tvar _p$n *$1\n";
|
|
||||||
$textcommon .= "\tif len($name) > 0 {\n\t\t_p$n = \&$name\[0]\n\t}\n";
|
|
||||||
push @argscommun, "uintptr(unsafe.Pointer(_p$n))", "len($name)";
|
|
||||||
push @argscall, "_p$n uintptr", "_lenp$n int";
|
|
||||||
push @argsgc, "_p$n", "uintptr(_lenp$n)";
|
|
||||||
push @argsgccgo, "C.uintptr_t(_p$n)", "C.size_t(_lenp$n)";
|
|
||||||
$n++;
|
|
||||||
} elsif($type eq "int64" && $_32bit ne "") {
|
|
||||||
print STDERR "$ARGV:$.: $func uses int64 with 32 bits mode. Case not yet implemented\n";
|
|
||||||
# if($_32bit eq "big-endian") {
|
|
||||||
# push @args, "uintptr($name >> 32)", "uintptr($name)";
|
|
||||||
# } else {
|
|
||||||
# push @args, "uintptr($name)", "uintptr($name >> 32)";
|
|
||||||
# }
|
|
||||||
# $n++;
|
|
||||||
} elsif($type eq "bool") {
|
|
||||||
print STDERR "$ARGV:$.: $func uses bool. Case not yet implemented\n";
|
|
||||||
# $text .= "\tvar _p$n uint32\n";
|
|
||||||
# $text .= "\tif $name {\n\t\t_p$n = 1\n\t} else {\n\t\t_p$n = 0\n\t}\n";
|
|
||||||
# push @args, "_p$n";
|
|
||||||
# $n++;
|
|
||||||
} elsif($type =~ /^_/ ||$type eq "unsafe.Pointer") {
|
|
||||||
push @argscommun, "uintptr($name)";
|
|
||||||
push @argscall, "$name uintptr";
|
|
||||||
push @argsgc, "$name";
|
|
||||||
push @argsgccgo, "C.uintptr_t($name)";
|
|
||||||
} elsif($type eq "int") {
|
|
||||||
if (($arg_n == 0 || $arg_n == 2) && ($func eq "fcntl" || $func eq "FcntlInt" || $func eq "FcntlFlock")) {
|
|
||||||
# These fcntl arguments need to be uintptr to be able to call FcntlInt and FcntlFlock
|
|
||||||
push @argscommun, "uintptr($name)";
|
|
||||||
push @argscall, "$name uintptr";
|
|
||||||
push @argsgc, "$name";
|
|
||||||
push @argsgccgo, "C.uintptr_t($name)";
|
|
||||||
} else {
|
|
||||||
push @argscommun, "$name";
|
|
||||||
push @argscall, "$name int";
|
|
||||||
push @argsgc, "uintptr($name)";
|
|
||||||
push @argsgccgo, "C.int($name)";
|
|
||||||
}
|
|
||||||
} elsif($type eq "int32") {
|
|
||||||
push @argscommun, "$name";
|
|
||||||
push @argscall, "$name int32";
|
|
||||||
push @argsgc, "uintptr($name)";
|
|
||||||
push @argsgccgo, "C.int($name)";
|
|
||||||
} elsif($type eq "int64") {
|
|
||||||
push @argscommun, "$name";
|
|
||||||
push @argscall, "$name int64";
|
|
||||||
push @argsgc, "uintptr($name)";
|
|
||||||
push @argsgccgo, "C.longlong($name)";
|
|
||||||
} elsif($type eq "uint32") {
|
|
||||||
push @argscommun, "$name";
|
|
||||||
push @argscall, "$name uint32";
|
|
||||||
push @argsgc, "uintptr($name)";
|
|
||||||
push @argsgccgo, "C.uint($name)";
|
|
||||||
} elsif($type eq "uint64") {
|
|
||||||
push @argscommun, "$name";
|
|
||||||
push @argscall, "$name uint64";
|
|
||||||
push @argsgc, "uintptr($name)";
|
|
||||||
push @argsgccgo, "C.ulonglong($name)";
|
|
||||||
} elsif($type eq "uintptr") {
|
|
||||||
push @argscommun, "$name";
|
|
||||||
push @argscall, "$name uintptr";
|
|
||||||
push @argsgc, "$name";
|
|
||||||
push @argsgccgo, "C.uintptr_t($name)";
|
|
||||||
} else {
|
|
||||||
push @argscommun, "int($name)";
|
|
||||||
push @argscall, "$name int";
|
|
||||||
push @argsgc, "uintptr($name)";
|
|
||||||
push @argsgccgo, "C.int($name)";
|
|
||||||
}
|
|
||||||
$arg_n++;
|
|
||||||
}
|
|
||||||
my $nargs = @argsgc;
|
|
||||||
|
|
||||||
# COMMUN function generation
|
|
||||||
my $argscommun = join(', ', @argscommun);
|
|
||||||
my $callcommun = "call$sysname($argscommun)";
|
|
||||||
my @ret = ("_", "_");
|
|
||||||
my $body = "";
|
|
||||||
my $do_errno = 0;
|
|
||||||
for(my $i=0; $i<@out; $i++) {
|
|
||||||
my $p = $out[$i];
|
|
||||||
my ($name, $type) = parseparam($p);
|
|
||||||
my $reg = "";
|
|
||||||
if($name eq "err") {
|
|
||||||
$reg = "e1";
|
|
||||||
$ret[1] = $reg;
|
|
||||||
$do_errno = 1;
|
|
||||||
} else {
|
|
||||||
$reg = "r0";
|
|
||||||
$ret[0] = $reg;
|
|
||||||
}
|
|
||||||
if($type eq "bool") {
|
|
||||||
$reg = "$reg != 0";
|
|
||||||
}
|
|
||||||
if($reg ne "e1") {
|
|
||||||
$body .= "\t$name = $type($reg)\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ($ret[0] eq "_" && $ret[1] eq "_") {
|
|
||||||
$textcommon .= "\t$callcommun\n";
|
|
||||||
} else {
|
|
||||||
$textcommon .= "\t$ret[0], $ret[1] := $callcommun\n";
|
|
||||||
}
|
|
||||||
$textcommon .= $body;
|
|
||||||
|
|
||||||
if ($do_errno) {
|
|
||||||
$textcommon .= "\tif e1 != 0 {\n";
|
|
||||||
$textcommon .= "\t\terr = errnoErr(e1)\n";
|
|
||||||
$textcommon .= "\t}\n";
|
|
||||||
}
|
|
||||||
$textcommon .= "\treturn\n";
|
|
||||||
$textcommon .= "}\n";
|
|
||||||
|
|
||||||
if ($onlyCommon){
|
|
||||||
next
|
|
||||||
}
|
|
||||||
# CALL Prototype
|
|
||||||
my $callProto = sprintf "func call%s(%s) (r1 uintptr, e1 Errno) {\n", $sysname, join(', ', @argscall);
|
|
||||||
|
|
||||||
# GC function generation
|
|
||||||
my $asm = "syscall6";
|
|
||||||
if ($nonblock) {
|
|
||||||
$asm = "rawSyscall6";
|
|
||||||
}
|
|
||||||
|
|
||||||
if(@argsgc <= 6) {
|
|
||||||
while(@argsgc < 6) {
|
|
||||||
push @argsgc, "0";
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
print STDERR "$ARGV:$.: too many arguments to system call\n";
|
|
||||||
}
|
|
||||||
my $argsgc = join(', ', @argsgc);
|
|
||||||
my $callgc = "$asm(uintptr(unsafe.Pointer(&$sysvarname)), $nargs, $argsgc)";
|
|
||||||
|
|
||||||
$textgc .= $callProto;
|
|
||||||
$textgc .= "\tr1, _, e1 = $callgc\n";
|
|
||||||
$textgc .= "\treturn\n}\n";
|
|
||||||
|
|
||||||
# GCCGO function generation
|
|
||||||
my $argsgccgo = join(', ', @argsgccgo);
|
|
||||||
my $callgccgo = "C.$sysname($argsgccgo)";
|
|
||||||
$textgccgo .= $callProto;
|
|
||||||
$textgccgo .= "\tr1 = uintptr($callgccgo)\n";
|
|
||||||
$textgccgo .= "\te1 = syscall.GetErrno()\n";
|
|
||||||
$textgccgo .= "\treturn\n}\n";
|
|
||||||
}
|
|
||||||
|
|
||||||
if($errors) {
|
|
||||||
exit 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
# Print zsyscall_aix_ppc64.go
|
|
||||||
open(my $fcommun, '>', 'zsyscall_aix_ppc64.go');
|
|
||||||
my $tofcommun = <<EOF;
|
|
||||||
// $cmdline
|
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
|
||||||
|
|
||||||
// +build $tags
|
|
||||||
|
|
||||||
package $package
|
|
||||||
|
|
||||||
import (
|
|
||||||
"unsafe"
|
|
||||||
)
|
|
||||||
|
|
||||||
EOF
|
|
||||||
|
|
||||||
$tofcommun .= "import \"golang.org/x/sys/unix\"\n" if $package ne "unix";
|
|
||||||
|
|
||||||
$tofcommun .=<<EOF;
|
|
||||||
|
|
||||||
$textcommon
|
|
||||||
EOF
|
|
||||||
print $fcommun $tofcommun;
|
|
||||||
|
|
||||||
|
|
||||||
# Print zsyscall_aix_ppc64_gc.go
|
|
||||||
open(my $fgc, '>', 'zsyscall_aix_ppc64_gc.go');
|
|
||||||
my $tofgc = <<EOF;
|
|
||||||
// $cmdline
|
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
|
||||||
|
|
||||||
// +build $tags
|
|
||||||
// +build !gccgo
|
|
||||||
|
|
||||||
package $package
|
|
||||||
|
|
||||||
import (
|
|
||||||
"unsafe"
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
EOF
|
|
||||||
|
|
||||||
$tofgc .= "import \"golang.org/x/sys/unix\"\n" if $package ne "unix";
|
|
||||||
|
|
||||||
my $vardecls = "\t" . join(",\n\t", @vars);
|
|
||||||
$vardecls .= " syscallFunc";
|
|
||||||
|
|
||||||
$tofgc .=<<EOF;
|
|
||||||
$dynimports
|
|
||||||
$linknames
|
|
||||||
type syscallFunc uintptr
|
|
||||||
|
|
||||||
var (
|
|
||||||
$vardecls
|
|
||||||
)
|
|
||||||
|
|
||||||
// Implemented in runtime/syscall_aix.go.
|
|
||||||
func rawSyscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
|
|
||||||
func syscall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno)
|
|
||||||
|
|
||||||
$textgc
|
|
||||||
EOF
|
|
||||||
print $fgc $tofgc;
|
|
||||||
|
|
||||||
# Print zsyscall_aix_ppc64_gc.go
|
|
||||||
open(my $fgccgo, '>', 'zsyscall_aix_ppc64_gccgo.go');
|
|
||||||
my $tofgccgo = <<EOF;
|
|
||||||
// $cmdline
|
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
|
||||||
|
|
||||||
// +build $tags
|
|
||||||
// +build gccgo
|
|
||||||
|
|
||||||
package $package
|
|
||||||
|
|
||||||
|
|
||||||
$c_extern
|
|
||||||
*/
|
|
||||||
import "C"
|
|
||||||
import (
|
|
||||||
"syscall"
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
EOF
|
|
||||||
|
|
||||||
$tofgccgo .= "import \"golang.org/x/sys/unix\"\n" if $package ne "unix";
|
|
||||||
|
|
||||||
$tofgccgo .=<<EOF;
|
|
||||||
|
|
||||||
$textgccgo
|
|
||||||
EOF
|
|
||||||
print $fgccgo $tofgccgo;
|
|
||||||
exit 0;
|
|
2
vendor/golang.org/x/sys/unix/mksysnum.go
generated
vendored
2
vendor/golang.org/x/sys/unix/mksysnum.go
generated
vendored
|
@ -106,7 +106,7 @@ func main() {
|
||||||
|
|
||||||
file := strings.TrimSpace(os.Args[1])
|
file := strings.TrimSpace(os.Args[1])
|
||||||
var syscalls io.Reader
|
var syscalls io.Reader
|
||||||
if strings.HasPrefix(file, "http://") {
|
if strings.HasPrefix(file, "https://") || strings.HasPrefix(file, "http://") {
|
||||||
// Download syscalls.master file
|
// Download syscalls.master file
|
||||||
syscalls = fetchFile(file)
|
syscalls = fetchFile(file)
|
||||||
} else {
|
} else {
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/syscall_aix.go
generated
vendored
2
vendor/golang.org/x/sys/unix/syscall_aix.go
generated
vendored
|
@ -227,7 +227,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) {
|
||||||
|
|
||||||
// Some versions of AIX have a bug in getsockname (see IV78655).
|
// Some versions of AIX have a bug in getsockname (see IV78655).
|
||||||
// We can't rely on sa.Len being set correctly.
|
// We can't rely on sa.Len being set correctly.
|
||||||
n := SizeofSockaddrUnix - 3 // substract leading Family, Len, terminating NUL.
|
n := SizeofSockaddrUnix - 3 // subtract leading Family, Len, terminating NUL.
|
||||||
for i := 0; i < n; i++ {
|
for i := 0; i < n; i++ {
|
||||||
if pp.Path[i] == 0 {
|
if pp.Path[i] == 0 {
|
||||||
n = i
|
n = i
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_dragonfly.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_dragonfly.go
generated
vendored
|
@ -304,6 +304,7 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
|
||||||
//sys read(fd int, p []byte) (n int, err error)
|
//sys read(fd int, p []byte) (n int, err error)
|
||||||
//sys Readlink(path string, buf []byte) (n int, err error)
|
//sys Readlink(path string, buf []byte) (n int, err error)
|
||||||
//sys Rename(from string, to string) (err error)
|
//sys Rename(from string, to string) (err error)
|
||||||
|
//sys Renameat(fromfd int, from string, tofd int, to string) (err error)
|
||||||
//sys Revoke(path string) (err error)
|
//sys Revoke(path string) (err error)
|
||||||
//sys Rmdir(path string) (err error)
|
//sys Rmdir(path string) (err error)
|
||||||
//sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
|
//sys Seek(fd int, offset int64, whence int) (newoffset int64, err error) = SYS_LSEEK
|
||||||
|
|
17
vendor/golang.org/x/sys/unix/syscall_linux.go
generated
vendored
17
vendor/golang.org/x/sys/unix/syscall_linux.go
generated
vendored
|
@ -14,6 +14,7 @@ package unix
|
||||||
import (
|
import (
|
||||||
"encoding/binary"
|
"encoding/binary"
|
||||||
"net"
|
"net"
|
||||||
|
"runtime"
|
||||||
"syscall"
|
"syscall"
|
||||||
"unsafe"
|
"unsafe"
|
||||||
)
|
)
|
||||||
|
@ -80,6 +81,12 @@ func ioctlSetTermios(fd int, req uint, value *Termios) error {
|
||||||
return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
|
return ioctl(fd, req, uintptr(unsafe.Pointer(value)))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func IoctlSetRTCTime(fd int, value *RTCTime) error {
|
||||||
|
err := ioctl(fd, RTC_SET_TIME, uintptr(unsafe.Pointer(value)))
|
||||||
|
runtime.KeepAlive(value)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
// IoctlGetInt performs an ioctl operation which gets an integer value
|
// IoctlGetInt performs an ioctl operation which gets an integer value
|
||||||
// from fd, using the specified request number.
|
// from fd, using the specified request number.
|
||||||
func IoctlGetInt(fd int, req uint) (int, error) {
|
func IoctlGetInt(fd int, req uint) (int, error) {
|
||||||
|
@ -100,6 +107,12 @@ func IoctlGetTermios(fd int, req uint) (*Termios, error) {
|
||||||
return &value, err
|
return &value, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func IoctlGetRTCTime(fd int) (*RTCTime, error) {
|
||||||
|
var value RTCTime
|
||||||
|
err := ioctl(fd, RTC_RD_TIME, uintptr(unsafe.Pointer(&value)))
|
||||||
|
return &value, err
|
||||||
|
}
|
||||||
|
|
||||||
//sys Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error)
|
//sys Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error)
|
||||||
|
|
||||||
func Link(oldpath string, newpath string) (err error) {
|
func Link(oldpath string, newpath string) (err error) {
|
||||||
|
@ -1381,6 +1394,7 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e
|
||||||
//sys Chroot(path string) (err error)
|
//sys Chroot(path string) (err error)
|
||||||
//sys ClockGetres(clockid int32, res *Timespec) (err error)
|
//sys ClockGetres(clockid int32, res *Timespec) (err error)
|
||||||
//sys ClockGettime(clockid int32, time *Timespec) (err error)
|
//sys ClockGettime(clockid int32, time *Timespec) (err error)
|
||||||
|
//sys ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error)
|
||||||
//sys Close(fd int) (err error)
|
//sys Close(fd int) (err error)
|
||||||
//sys CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
|
//sys CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error)
|
||||||
//sys DeleteModule(name string, flags int) (err error)
|
//sys DeleteModule(name string, flags int) (err error)
|
||||||
|
@ -1441,7 +1455,6 @@ func Getpgrp() (pid int) {
|
||||||
//sys Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) = SYS_PSELECT6
|
//sys Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) = SYS_PSELECT6
|
||||||
//sys read(fd int, p []byte) (n int, err error)
|
//sys read(fd int, p []byte) (n int, err error)
|
||||||
//sys Removexattr(path string, attr string) (err error)
|
//sys Removexattr(path string, attr string) (err error)
|
||||||
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
|
||||||
//sys Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error)
|
//sys Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error)
|
||||||
//sys RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error)
|
//sys RequestKey(keyType string, description string, callback string, destRingid int) (id int, err error)
|
||||||
//sys Setdomainname(p []byte) (err error)
|
//sys Setdomainname(p []byte) (err error)
|
||||||
|
@ -1466,6 +1479,7 @@ func Setgid(uid int) (err error) {
|
||||||
|
|
||||||
//sys Setpriority(which int, who int, prio int) (err error)
|
//sys Setpriority(which int, who int, prio int) (err error)
|
||||||
//sys Setxattr(path string, attr string, data []byte, flags int) (err error)
|
//sys Setxattr(path string, attr string, data []byte, flags int) (err error)
|
||||||
|
//sys Signalfd(fd int, mask *Sigset_t, flags int) = SYS_SIGNALFD4
|
||||||
//sys Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error)
|
//sys Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error)
|
||||||
//sys Sync()
|
//sys Sync()
|
||||||
//sys Syncfs(fd int) (err error)
|
//sys Syncfs(fd int) (err error)
|
||||||
|
@ -1682,7 +1696,6 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) {
|
||||||
// Shmdt
|
// Shmdt
|
||||||
// Shmget
|
// Shmget
|
||||||
// Sigaltstack
|
// Sigaltstack
|
||||||
// Signalfd
|
|
||||||
// Swapoff
|
// Swapoff
|
||||||
// Swapon
|
// Swapon
|
||||||
// Sysfs
|
// Sysfs
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_linux_386.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_linux_386.go
generated
vendored
|
@ -68,6 +68,7 @@ func Pipe2(p []int, flags int) (err error) {
|
||||||
//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
|
//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
|
||||||
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
||||||
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
||||||
|
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
||||||
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
|
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
|
||||||
//sys Setfsgid(gid int) (err error) = SYS_SETFSGID32
|
//sys Setfsgid(gid int) (err error) = SYS_SETFSGID32
|
||||||
//sys Setfsuid(uid int) (err error) = SYS_SETFSUID32
|
//sys Setfsuid(uid int) (err error) = SYS_SETFSUID32
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_linux_amd64.go
generated
vendored
|
@ -43,6 +43,7 @@ func Lstat(path string, stat *Stat_t) (err error) {
|
||||||
//sys Pause() (err error)
|
//sys Pause() (err error)
|
||||||
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
||||||
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
||||||
|
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
||||||
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
||||||
|
|
||||||
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_linux_arm.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_linux_arm.go
generated
vendored
|
@ -89,6 +89,7 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) {
|
||||||
//sys Listen(s int, n int) (err error)
|
//sys Listen(s int, n int) (err error)
|
||||||
//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
|
//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64
|
||||||
//sys Pause() (err error)
|
//sys Pause() (err error)
|
||||||
|
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
||||||
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
|
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
|
||||||
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
|
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
|
||||||
//sys Setfsgid(gid int) (err error) = SYS_SETFSGID32
|
//sys Setfsgid(gid int) (err error) = SYS_SETFSGID32
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_linux_arm64.go
generated
vendored
|
@ -30,6 +30,7 @@ func EpollCreate(size int) (fd int, err error) {
|
||||||
//sys Listen(s int, n int) (err error)
|
//sys Listen(s int, n int) (err error)
|
||||||
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
||||||
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
||||||
|
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
||||||
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
||||||
|
|
||||||
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go
generated
vendored
|
@ -24,6 +24,7 @@ package unix
|
||||||
//sys Pause() (err error)
|
//sys Pause() (err error)
|
||||||
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
||||||
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
||||||
|
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
||||||
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
||||||
|
|
||||||
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go
generated
vendored
|
@ -28,6 +28,7 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr,
|
||||||
//sys Listen(s int, n int) (err error)
|
//sys Listen(s int, n int) (err error)
|
||||||
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
||||||
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
||||||
|
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
||||||
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
|
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
|
||||||
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
|
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64
|
||||||
//sys Setfsgid(gid int) (err error)
|
//sys Setfsgid(gid int) (err error)
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go
generated
vendored
|
@ -30,6 +30,7 @@ package unix
|
||||||
//sys Pause() (err error)
|
//sys Pause() (err error)
|
||||||
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
||||||
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
||||||
|
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
||||||
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
||||||
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
|
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT
|
||||||
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
|
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
|
||||||
|
|
4
vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
generated
vendored
4
vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go
generated
vendored
|
@ -207,3 +207,7 @@ func Poll(fds []PollFd, timeout int) (n int, err error) {
|
||||||
}
|
}
|
||||||
return ppoll(&fds[0], len(fds), ts, nil)
|
return ppoll(&fds[0], len(fds), ts, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
return Renameat2(olddirfd, oldpath, newdirfd, newpath, 0)
|
||||||
|
}
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_linux_s390x.go
generated
vendored
|
@ -30,6 +30,7 @@ import (
|
||||||
//sys Pause() (err error)
|
//sys Pause() (err error)
|
||||||
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
||||||
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
||||||
|
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
||||||
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
||||||
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
|
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
|
||||||
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
|
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
|
||||||
|
|
1
vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
generated
vendored
1
vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go
generated
vendored
|
@ -26,6 +26,7 @@ package unix
|
||||||
//sys Pause() (err error)
|
//sys Pause() (err error)
|
||||||
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64
|
||||||
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64
|
||||||
|
//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error)
|
||||||
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK
|
||||||
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
|
//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error)
|
||||||
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
|
//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error)
|
||||||
|
|
33
vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
generated
vendored
Normal file
33
vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go
generated
vendored
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
// Copyright 2019 The Go Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
// +build arm64,netbsd
|
||||||
|
|
||||||
|
package unix
|
||||||
|
|
||||||
|
func setTimespec(sec, nsec int64) Timespec {
|
||||||
|
return Timespec{Sec: sec, Nsec: nsec}
|
||||||
|
}
|
||||||
|
|
||||||
|
func setTimeval(sec, usec int64) Timeval {
|
||||||
|
return Timeval{Sec: sec, Usec: int32(usec)}
|
||||||
|
}
|
||||||
|
|
||||||
|
func SetKevent(k *Kevent_t, fd, mode, flags int) {
|
||||||
|
k.Ident = uint64(fd)
|
||||||
|
k.Filter = uint32(mode)
|
||||||
|
k.Flags = uint32(flags)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (iov *Iovec) SetLen(length int) {
|
||||||
|
iov.Len = uint64(length)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (msghdr *Msghdr) SetControllen(length int) {
|
||||||
|
msghdr.Controllen = uint32(length)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cmsg *Cmsghdr) SetLen(length int) {
|
||||||
|
cmsg.Len = uint32(length)
|
||||||
|
}
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_386.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_386.go
generated
vendored
|
@ -1537,6 +1537,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x40085203
|
||||||
|
RNDADDTOENTCNT = 0x40045201
|
||||||
|
RNDCLEARPOOL = 0x5206
|
||||||
|
RNDGETENTCNT = 0x80045200
|
||||||
|
RNDGETPOOL = 0x80085202
|
||||||
|
RNDRESEEDCRNG = 0x5207
|
||||||
|
RNDZAPENTCNT = 0x5204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1744,6 +1751,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x800
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1905,6 +1914,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x27
|
SO_DOMAIN = 0x27
|
||||||
SO_DONTROUTE = 0x5
|
SO_DONTROUTE = 0x5
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x4
|
SO_ERROR = 0x4
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2101,6 +2121,7 @@ const (
|
||||||
TCSETXF = 0x5434
|
TCSETXF = 0x5434
|
||||||
TCSETXW = 0x5435
|
TCSETXW = 0x5435
|
||||||
TCXONC = 0x540a
|
TCXONC = 0x540a
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x541d
|
TIOCCONS = 0x541d
|
||||||
TIOCEXCL = 0x540c
|
TIOCEXCL = 0x540c
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go
generated
vendored
|
@ -1538,6 +1538,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x40085203
|
||||||
|
RNDADDTOENTCNT = 0x40045201
|
||||||
|
RNDCLEARPOOL = 0x5206
|
||||||
|
RNDGETENTCNT = 0x80045200
|
||||||
|
RNDGETPOOL = 0x80085202
|
||||||
|
RNDRESEEDCRNG = 0x5207
|
||||||
|
RNDZAPENTCNT = 0x5204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1745,6 +1752,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x800
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1906,6 +1915,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x27
|
SO_DOMAIN = 0x27
|
||||||
SO_DONTROUTE = 0x5
|
SO_DONTROUTE = 0x5
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x4
|
SO_ERROR = 0x4
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2102,6 +2122,7 @@ const (
|
||||||
TCSETXF = 0x5434
|
TCSETXF = 0x5434
|
||||||
TCSETXW = 0x5435
|
TCSETXW = 0x5435
|
||||||
TCXONC = 0x540a
|
TCXONC = 0x540a
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x541d
|
TIOCCONS = 0x541d
|
||||||
TIOCEXCL = 0x540c
|
TIOCEXCL = 0x540c
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_arm.go
generated
vendored
|
@ -1544,6 +1544,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x40085203
|
||||||
|
RNDADDTOENTCNT = 0x40045201
|
||||||
|
RNDCLEARPOOL = 0x5206
|
||||||
|
RNDGETENTCNT = 0x80045200
|
||||||
|
RNDGETPOOL = 0x80085202
|
||||||
|
RNDRESEEDCRNG = 0x5207
|
||||||
|
RNDZAPENTCNT = 0x5204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1751,6 +1758,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x800
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1912,6 +1921,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x27
|
SO_DOMAIN = 0x27
|
||||||
SO_DONTROUTE = 0x5
|
SO_DONTROUTE = 0x5
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x4
|
SO_ERROR = 0x4
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2108,6 +2128,7 @@ const (
|
||||||
TCSETXF = 0x5434
|
TCSETXF = 0x5434
|
||||||
TCSETXW = 0x5435
|
TCSETXW = 0x5435
|
||||||
TCXONC = 0x540a
|
TCXONC = 0x540a
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x541d
|
TIOCCONS = 0x541d
|
||||||
TIOCEXCL = 0x540c
|
TIOCEXCL = 0x540c
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go
generated
vendored
|
@ -1528,6 +1528,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x40085203
|
||||||
|
RNDADDTOENTCNT = 0x40045201
|
||||||
|
RNDCLEARPOOL = 0x5206
|
||||||
|
RNDGETENTCNT = 0x80045200
|
||||||
|
RNDGETPOOL = 0x80085202
|
||||||
|
RNDRESEEDCRNG = 0x5207
|
||||||
|
RNDZAPENTCNT = 0x5204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1735,6 +1742,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x800
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1896,6 +1905,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x27
|
SO_DOMAIN = 0x27
|
||||||
SO_DONTROUTE = 0x5
|
SO_DONTROUTE = 0x5
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x4
|
SO_ERROR = 0x4
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2093,6 +2113,7 @@ const (
|
||||||
TCSETXF = 0x5434
|
TCSETXF = 0x5434
|
||||||
TCSETXW = 0x5435
|
TCSETXW = 0x5435
|
||||||
TCXONC = 0x540a
|
TCXONC = 0x540a
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x541d
|
TIOCCONS = 0x541d
|
||||||
TIOCEXCL = 0x540c
|
TIOCEXCL = 0x540c
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_mips.go
generated
vendored
|
@ -1537,6 +1537,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x80085203
|
||||||
|
RNDADDTOENTCNT = 0x80045201
|
||||||
|
RNDCLEARPOOL = 0x20005206
|
||||||
|
RNDGETENTCNT = 0x40045200
|
||||||
|
RNDGETPOOL = 0x40085202
|
||||||
|
RNDRESEEDCRNG = 0x20005207
|
||||||
|
RNDZAPENTCNT = 0x20005204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1744,6 +1751,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x80
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1905,6 +1914,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x1029
|
SO_DOMAIN = 0x1029
|
||||||
SO_DONTROUTE = 0x10
|
SO_DONTROUTE = 0x10
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x1007
|
SO_ERROR = 0x1007
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2098,6 +2118,7 @@ const (
|
||||||
TCSETSW = 0x540f
|
TCSETSW = 0x540f
|
||||||
TCSETSW2 = 0x8030542c
|
TCSETSW2 = 0x8030542c
|
||||||
TCXONC = 0x5406
|
TCXONC = 0x5406
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x80047478
|
TIOCCONS = 0x80047478
|
||||||
TIOCEXCL = 0x740d
|
TIOCEXCL = 0x740d
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go
generated
vendored
|
@ -1537,6 +1537,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x80085203
|
||||||
|
RNDADDTOENTCNT = 0x80045201
|
||||||
|
RNDCLEARPOOL = 0x20005206
|
||||||
|
RNDGETENTCNT = 0x40045200
|
||||||
|
RNDGETPOOL = 0x40085202
|
||||||
|
RNDRESEEDCRNG = 0x20005207
|
||||||
|
RNDZAPENTCNT = 0x20005204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1744,6 +1751,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x80
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1905,6 +1914,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x1029
|
SO_DOMAIN = 0x1029
|
||||||
SO_DONTROUTE = 0x10
|
SO_DONTROUTE = 0x10
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x1007
|
SO_ERROR = 0x1007
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2098,6 +2118,7 @@ const (
|
||||||
TCSETSW = 0x540f
|
TCSETSW = 0x540f
|
||||||
TCSETSW2 = 0x8030542c
|
TCSETSW2 = 0x8030542c
|
||||||
TCXONC = 0x5406
|
TCXONC = 0x5406
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x80047478
|
TIOCCONS = 0x80047478
|
||||||
TIOCEXCL = 0x740d
|
TIOCEXCL = 0x740d
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go
generated
vendored
|
@ -1537,6 +1537,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x80085203
|
||||||
|
RNDADDTOENTCNT = 0x80045201
|
||||||
|
RNDCLEARPOOL = 0x20005206
|
||||||
|
RNDGETENTCNT = 0x40045200
|
||||||
|
RNDGETPOOL = 0x40085202
|
||||||
|
RNDRESEEDCRNG = 0x20005207
|
||||||
|
RNDZAPENTCNT = 0x20005204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1744,6 +1751,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x80
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1905,6 +1914,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x1029
|
SO_DOMAIN = 0x1029
|
||||||
SO_DONTROUTE = 0x10
|
SO_DONTROUTE = 0x10
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x1007
|
SO_ERROR = 0x1007
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2098,6 +2118,7 @@ const (
|
||||||
TCSETSW = 0x540f
|
TCSETSW = 0x540f
|
||||||
TCSETSW2 = 0x8030542c
|
TCSETSW2 = 0x8030542c
|
||||||
TCXONC = 0x5406
|
TCXONC = 0x5406
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x80047478
|
TIOCCONS = 0x80047478
|
||||||
TIOCEXCL = 0x740d
|
TIOCEXCL = 0x740d
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go
generated
vendored
|
@ -1537,6 +1537,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x80085203
|
||||||
|
RNDADDTOENTCNT = 0x80045201
|
||||||
|
RNDCLEARPOOL = 0x20005206
|
||||||
|
RNDGETENTCNT = 0x40045200
|
||||||
|
RNDGETPOOL = 0x40085202
|
||||||
|
RNDRESEEDCRNG = 0x20005207
|
||||||
|
RNDZAPENTCNT = 0x20005204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1744,6 +1751,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x80
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1905,6 +1914,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x1029
|
SO_DOMAIN = 0x1029
|
||||||
SO_DONTROUTE = 0x10
|
SO_DONTROUTE = 0x10
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x1007
|
SO_ERROR = 0x1007
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2098,6 +2118,7 @@ const (
|
||||||
TCSETSW = 0x540f
|
TCSETSW = 0x540f
|
||||||
TCSETSW2 = 0x8030542c
|
TCSETSW2 = 0x8030542c
|
||||||
TCXONC = 0x5406
|
TCXONC = 0x5406
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x80047478
|
TIOCCONS = 0x80047478
|
||||||
TIOCEXCL = 0x740d
|
TIOCEXCL = 0x740d
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go
generated
vendored
|
@ -1595,6 +1595,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x80085203
|
||||||
|
RNDADDTOENTCNT = 0x80045201
|
||||||
|
RNDCLEARPOOL = 0x20005206
|
||||||
|
RNDGETENTCNT = 0x40045200
|
||||||
|
RNDGETPOOL = 0x40085202
|
||||||
|
RNDRESEEDCRNG = 0x20005207
|
||||||
|
RNDZAPENTCNT = 0x20005204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1802,6 +1809,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x800
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1963,6 +1972,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x27
|
SO_DOMAIN = 0x27
|
||||||
SO_DONTROUTE = 0x5
|
SO_DONTROUTE = 0x5
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x4
|
SO_ERROR = 0x4
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2151,6 +2171,7 @@ const (
|
||||||
TCSETSF = 0x802c7416
|
TCSETSF = 0x802c7416
|
||||||
TCSETSW = 0x802c7415
|
TCSETSW = 0x802c7415
|
||||||
TCXONC = 0x2000741e
|
TCXONC = 0x2000741e
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x541d
|
TIOCCONS = 0x541d
|
||||||
TIOCEXCL = 0x540c
|
TIOCEXCL = 0x540c
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go
generated
vendored
|
@ -1595,6 +1595,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x80085203
|
||||||
|
RNDADDTOENTCNT = 0x80045201
|
||||||
|
RNDCLEARPOOL = 0x20005206
|
||||||
|
RNDGETENTCNT = 0x40045200
|
||||||
|
RNDGETPOOL = 0x40085202
|
||||||
|
RNDRESEEDCRNG = 0x20005207
|
||||||
|
RNDZAPENTCNT = 0x20005204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1802,6 +1809,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x800
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1963,6 +1972,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x27
|
SO_DOMAIN = 0x27
|
||||||
SO_DONTROUTE = 0x5
|
SO_DONTROUTE = 0x5
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x4
|
SO_ERROR = 0x4
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2151,6 +2171,7 @@ const (
|
||||||
TCSETSF = 0x802c7416
|
TCSETSF = 0x802c7416
|
||||||
TCSETSW = 0x802c7415
|
TCSETSW = 0x802c7415
|
||||||
TCXONC = 0x2000741e
|
TCXONC = 0x2000741e
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x541d
|
TIOCCONS = 0x541d
|
||||||
TIOCEXCL = 0x540c
|
TIOCEXCL = 0x540c
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go
generated
vendored
|
@ -1525,6 +1525,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x40085203
|
||||||
|
RNDADDTOENTCNT = 0x40045201
|
||||||
|
RNDCLEARPOOL = 0x5206
|
||||||
|
RNDGETENTCNT = 0x80045200
|
||||||
|
RNDGETPOOL = 0x80085202
|
||||||
|
RNDRESEEDCRNG = 0x5207
|
||||||
|
RNDZAPENTCNT = 0x5204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1732,6 +1739,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x800
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1893,6 +1902,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x27
|
SO_DOMAIN = 0x27
|
||||||
SO_DONTROUTE = 0x5
|
SO_DONTROUTE = 0x5
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x4
|
SO_ERROR = 0x4
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2089,6 +2109,7 @@ const (
|
||||||
TCSETXF = 0x5434
|
TCSETXF = 0x5434
|
||||||
TCSETXW = 0x5435
|
TCSETXW = 0x5435
|
||||||
TCXONC = 0x540a
|
TCXONC = 0x540a
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x541d
|
TIOCCONS = 0x541d
|
||||||
TIOCEXCL = 0x540c
|
TIOCEXCL = 0x540c
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go
generated
vendored
|
@ -1598,6 +1598,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x40085203
|
||||||
|
RNDADDTOENTCNT = 0x40045201
|
||||||
|
RNDCLEARPOOL = 0x5206
|
||||||
|
RNDGETENTCNT = 0x80045200
|
||||||
|
RNDGETPOOL = 0x80085202
|
||||||
|
RNDRESEEDCRNG = 0x5207
|
||||||
|
RNDZAPENTCNT = 0x5204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1805,6 +1812,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x80000
|
||||||
|
SFD_NONBLOCK = 0x800
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1966,6 +1975,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x27
|
SO_DOMAIN = 0x27
|
||||||
SO_DONTROUTE = 0x5
|
SO_DONTROUTE = 0x5
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x4
|
SO_ERROR = 0x4
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x31
|
SO_INCOMING_CPU = 0x31
|
||||||
|
@ -2162,6 +2182,7 @@ const (
|
||||||
TCSETXF = 0x5434
|
TCSETXF = 0x5434
|
||||||
TCSETXW = 0x5435
|
TCSETXW = 0x5435
|
||||||
TCXONC = 0x540a
|
TCXONC = 0x540a
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x5428
|
TIOCCBRK = 0x5428
|
||||||
TIOCCONS = 0x541d
|
TIOCCONS = 0x541d
|
||||||
TIOCEXCL = 0x540c
|
TIOCEXCL = 0x540c
|
||||||
|
|
21
vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
generated
vendored
21
vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go
generated
vendored
|
@ -1590,6 +1590,13 @@ const (
|
||||||
RLIMIT_SIGPENDING = 0xb
|
RLIMIT_SIGPENDING = 0xb
|
||||||
RLIMIT_STACK = 0x3
|
RLIMIT_STACK = 0x3
|
||||||
RLIM_INFINITY = 0xffffffffffffffff
|
RLIM_INFINITY = 0xffffffffffffffff
|
||||||
|
RNDADDENTROPY = 0x80085203
|
||||||
|
RNDADDTOENTCNT = 0x80045201
|
||||||
|
RNDCLEARPOOL = 0x20005206
|
||||||
|
RNDGETENTCNT = 0x40045200
|
||||||
|
RNDGETPOOL = 0x40085202
|
||||||
|
RNDRESEEDCRNG = 0x20005207
|
||||||
|
RNDZAPENTCNT = 0x20005204
|
||||||
RTAX_ADVMSS = 0x8
|
RTAX_ADVMSS = 0x8
|
||||||
RTAX_CC_ALGO = 0x10
|
RTAX_CC_ALGO = 0x10
|
||||||
RTAX_CWND = 0x7
|
RTAX_CWND = 0x7
|
||||||
|
@ -1797,6 +1804,8 @@ const (
|
||||||
SECCOMP_MODE_STRICT = 0x1
|
SECCOMP_MODE_STRICT = 0x1
|
||||||
SECURITYFS_MAGIC = 0x73636673
|
SECURITYFS_MAGIC = 0x73636673
|
||||||
SELINUX_MAGIC = 0xf97cff8c
|
SELINUX_MAGIC = 0xf97cff8c
|
||||||
|
SFD_CLOEXEC = 0x400000
|
||||||
|
SFD_NONBLOCK = 0x4000
|
||||||
SHUT_RD = 0x0
|
SHUT_RD = 0x0
|
||||||
SHUT_RDWR = 0x2
|
SHUT_RDWR = 0x2
|
||||||
SHUT_WR = 0x1
|
SHUT_WR = 0x1
|
||||||
|
@ -1958,6 +1967,17 @@ const (
|
||||||
SO_DETACH_FILTER = 0x1b
|
SO_DETACH_FILTER = 0x1b
|
||||||
SO_DOMAIN = 0x1029
|
SO_DOMAIN = 0x1029
|
||||||
SO_DONTROUTE = 0x10
|
SO_DONTROUTE = 0x10
|
||||||
|
SO_EE_CODE_TXTIME_INVALID_PARAM = 0x1
|
||||||
|
SO_EE_CODE_TXTIME_MISSED = 0x2
|
||||||
|
SO_EE_CODE_ZEROCOPY_COPIED = 0x1
|
||||||
|
SO_EE_ORIGIN_ICMP = 0x2
|
||||||
|
SO_EE_ORIGIN_ICMP6 = 0x3
|
||||||
|
SO_EE_ORIGIN_LOCAL = 0x1
|
||||||
|
SO_EE_ORIGIN_NONE = 0x0
|
||||||
|
SO_EE_ORIGIN_TIMESTAMPING = 0x4
|
||||||
|
SO_EE_ORIGIN_TXSTATUS = 0x4
|
||||||
|
SO_EE_ORIGIN_TXTIME = 0x6
|
||||||
|
SO_EE_ORIGIN_ZEROCOPY = 0x5
|
||||||
SO_ERROR = 0x1007
|
SO_ERROR = 0x1007
|
||||||
SO_GET_FILTER = 0x1a
|
SO_GET_FILTER = 0x1a
|
||||||
SO_INCOMING_CPU = 0x33
|
SO_INCOMING_CPU = 0x33
|
||||||
|
@ -2150,6 +2170,7 @@ const (
|
||||||
TCSETSW = 0x8024540a
|
TCSETSW = 0x8024540a
|
||||||
TCSETSW2 = 0x802c540e
|
TCSETSW2 = 0x802c540e
|
||||||
TCXONC = 0x20005406
|
TCXONC = 0x20005406
|
||||||
|
TIMER_ABSTIME = 0x1
|
||||||
TIOCCBRK = 0x2000747a
|
TIOCCBRK = 0x2000747a
|
||||||
TIOCCONS = 0x20007424
|
TIOCCONS = 0x20007424
|
||||||
TIOCEXCL = 0x2000740d
|
TIOCEXCL = 0x2000740d
|
||||||
|
|
1762
vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
generated
vendored
Normal file
1762
vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
2
vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// mksyscall_aix_ppc.pl -aix -tags aix,ppc syscall_aix.go syscall_aix_ppc.go
|
// go run mksyscall_aix_ppc.go -aix -tags aix,ppc syscall_aix.go syscall_aix_ppc.go
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build aix,ppc
|
// +build aix,ppc
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// mksyscall_aix_ppc64.pl -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
|
// go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build aix,ppc64
|
// +build aix,ppc64
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// mksyscall_aix_ppc64.pl -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
|
// go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build aix,ppc64
|
// +build aix,ppc64
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// mksyscall_aix_ppc64.pl -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
|
// go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build aix,ppc64
|
// +build aix,ppc64
|
||||||
|
|
20
vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
generated
vendored
20
vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go
generated
vendored
|
@ -1194,6 +1194,26 @@ func Rename(from string, to string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(fromfd int, from string, tofd int, to string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(from)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(to)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Revoke(path string) (err error) {
|
func Revoke(path string) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_386.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1901,6 +1898,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
|
func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
|
||||||
r0, _, e1 := Syscall6(SYS_SENDFILE64, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
|
r0, _, e1 := Syscall6(SYS_SENDFILE64, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
|
||||||
written = int(r0)
|
written = int(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1906,6 +1903,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
||||||
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
||||||
off = int64(r0)
|
off = int64(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -2016,6 +2013,26 @@ func Pause() (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
|
func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) {
|
||||||
r0, _, e1 := Syscall6(SYS_SENDFILE64, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
|
r0, _, e1 := Syscall6(SYS_SENDFILE64, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0)
|
||||||
written = int(r0)
|
written = int(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1829,6 +1826,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
||||||
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
||||||
off = int64(r0)
|
off = int64(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1820,6 +1817,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
||||||
r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
|
r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
|
||||||
n = int(r0)
|
n = int(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1850,6 +1847,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
||||||
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
||||||
off = int64(r0)
|
off = int64(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1850,6 +1847,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
||||||
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
||||||
off = int64(r0)
|
off = int64(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1820,6 +1817,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) {
|
||||||
r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
|
r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0)
|
||||||
n = int(r0)
|
n = int(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1921,6 +1918,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
||||||
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
||||||
off = int64(r0)
|
off = int64(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1921,6 +1918,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
||||||
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
||||||
off = int64(r0)
|
off = int64(r0)
|
||||||
|
|
37
vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
generated
vendored
37
vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1891,6 +1888,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
||||||
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
||||||
off = int64(r0)
|
off = int64(r0)
|
||||||
|
|
57
vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
generated
vendored
57
vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go
generated
vendored
|
@ -437,6 +437,16 @@ func ClockGettime(clockid int32, time *Timespec) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) {
|
||||||
|
_, _, e1 := Syscall6(SYS_CLOCK_NANOSLEEP, uintptr(clockid), uintptr(flags), uintptr(unsafe.Pointer(request)), uintptr(unsafe.Pointer(remain)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Close(fd int) (err error) {
|
func Close(fd int) (err error) {
|
||||||
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
_, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0)
|
||||||
if e1 != 0 {
|
if e1 != 0 {
|
||||||
|
@ -1195,26 +1205,6 @@ func Removexattr(path string, attr string) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
|
||||||
var _p0 *byte
|
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
var _p1 *byte
|
|
||||||
_p1, err = BytePtrFromString(newpath)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
|
||||||
if e1 != 0 {
|
|
||||||
err = errnoErr(e1)
|
|
||||||
}
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
|
||||||
|
|
||||||
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
func Renameat2(olddirfd int, oldpath string, newdirfd int, newpath string, flags uint) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(oldpath)
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
@ -1370,6 +1360,13 @@ func Setxattr(path string, attr string, data []byte, flags int) (err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Signalfd(fd int, mask *Sigset_t, flags int) {
|
||||||
|
SyscallNoError(SYS_SIGNALFD4, uintptr(fd), uintptr(unsafe.Pointer(mask)), uintptr(flags))
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
func Statx(dirfd int, path string, flags int, mask int, stat *Statx_t) (err error) {
|
||||||
var _p0 *byte
|
var _p0 *byte
|
||||||
_p0, err = BytePtrFromString(path)
|
_p0, err = BytePtrFromString(path)
|
||||||
|
@ -1890,6 +1887,26 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) {
|
||||||
|
|
||||||
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
|
func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) {
|
||||||
|
var _p0 *byte
|
||||||
|
_p0, err = BytePtrFromString(oldpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var _p1 *byte
|
||||||
|
_p1, err = BytePtrFromString(newpath)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
_, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0)
|
||||||
|
if e1 != 0 {
|
||||||
|
err = errnoErr(e1)
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
|
||||||
|
|
||||||
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
func Seek(fd int, offset int64, whence int) (off int64, err error) {
|
||||||
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence))
|
||||||
off = int64(r0)
|
off = int64(r0)
|
||||||
|
|
1826
vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
generated
vendored
Normal file
1826
vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go
generated
vendored
Normal file
File diff suppressed because it is too large
Load diff
2
vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// go run mksysnum.go http://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/sys/kern/syscalls.master
|
// go run mksysnum.go https://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/sys/kern/syscalls.master
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build amd64,dragonfly
|
// +build amd64,dragonfly
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// go run mksysnum.go http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master
|
// go run mksysnum.go https://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build 386,freebsd
|
// +build 386,freebsd
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// go run mksysnum.go http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master
|
// go run mksysnum.go https://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build amd64,freebsd
|
// +build amd64,freebsd
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// go run mksysnum.go http://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master
|
// go run mksysnum.go https://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build arm,freebsd
|
// +build arm,freebsd
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// mksysnum_freebsd.pl
|
// go run mksysnum.go https://svn.freebsd.org/base/stable/10/sys/kern/syscalls.master
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build arm64,freebsd
|
// +build arm64,freebsd
|
||||||
|
|
274
vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
generated
vendored
Normal file
274
vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go
generated
vendored
Normal file
|
@ -0,0 +1,274 @@
|
||||||
|
// go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master
|
||||||
|
// Code generated by the command above; DO NOT EDIT.
|
||||||
|
|
||||||
|
// +build arm64,netbsd
|
||||||
|
|
||||||
|
package unix
|
||||||
|
|
||||||
|
const (
|
||||||
|
SYS_EXIT = 1 // { void|sys||exit(int rval); }
|
||||||
|
SYS_FORK = 2 // { int|sys||fork(void); }
|
||||||
|
SYS_READ = 3 // { ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
|
||||||
|
SYS_WRITE = 4 // { ssize_t|sys||write(int fd, const void *buf, size_t nbyte); }
|
||||||
|
SYS_OPEN = 5 // { int|sys||open(const char *path, int flags, ... mode_t mode); }
|
||||||
|
SYS_CLOSE = 6 // { int|sys||close(int fd); }
|
||||||
|
SYS_LINK = 9 // { int|sys||link(const char *path, const char *link); }
|
||||||
|
SYS_UNLINK = 10 // { int|sys||unlink(const char *path); }
|
||||||
|
SYS_CHDIR = 12 // { int|sys||chdir(const char *path); }
|
||||||
|
SYS_FCHDIR = 13 // { int|sys||fchdir(int fd); }
|
||||||
|
SYS_CHMOD = 15 // { int|sys||chmod(const char *path, mode_t mode); }
|
||||||
|
SYS_CHOWN = 16 // { int|sys||chown(const char *path, uid_t uid, gid_t gid); }
|
||||||
|
SYS_BREAK = 17 // { int|sys||obreak(char *nsize); }
|
||||||
|
SYS_GETPID = 20 // { pid_t|sys||getpid_with_ppid(void); }
|
||||||
|
SYS_UNMOUNT = 22 // { int|sys||unmount(const char *path, int flags); }
|
||||||
|
SYS_SETUID = 23 // { int|sys||setuid(uid_t uid); }
|
||||||
|
SYS_GETUID = 24 // { uid_t|sys||getuid_with_euid(void); }
|
||||||
|
SYS_GETEUID = 25 // { uid_t|sys||geteuid(void); }
|
||||||
|
SYS_PTRACE = 26 // { int|sys||ptrace(int req, pid_t pid, void *addr, int data); }
|
||||||
|
SYS_RECVMSG = 27 // { ssize_t|sys||recvmsg(int s, struct msghdr *msg, int flags); }
|
||||||
|
SYS_SENDMSG = 28 // { ssize_t|sys||sendmsg(int s, const struct msghdr *msg, int flags); }
|
||||||
|
SYS_RECVFROM = 29 // { ssize_t|sys||recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); }
|
||||||
|
SYS_ACCEPT = 30 // { int|sys||accept(int s, struct sockaddr *name, socklen_t *anamelen); }
|
||||||
|
SYS_GETPEERNAME = 31 // { int|sys||getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); }
|
||||||
|
SYS_GETSOCKNAME = 32 // { int|sys||getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); }
|
||||||
|
SYS_ACCESS = 33 // { int|sys||access(const char *path, int flags); }
|
||||||
|
SYS_CHFLAGS = 34 // { int|sys||chflags(const char *path, u_long flags); }
|
||||||
|
SYS_FCHFLAGS = 35 // { int|sys||fchflags(int fd, u_long flags); }
|
||||||
|
SYS_SYNC = 36 // { void|sys||sync(void); }
|
||||||
|
SYS_KILL = 37 // { int|sys||kill(pid_t pid, int signum); }
|
||||||
|
SYS_GETPPID = 39 // { pid_t|sys||getppid(void); }
|
||||||
|
SYS_DUP = 41 // { int|sys||dup(int fd); }
|
||||||
|
SYS_PIPE = 42 // { int|sys||pipe(void); }
|
||||||
|
SYS_GETEGID = 43 // { gid_t|sys||getegid(void); }
|
||||||
|
SYS_PROFIL = 44 // { int|sys||profil(char *samples, size_t size, u_long offset, u_int scale); }
|
||||||
|
SYS_KTRACE = 45 // { int|sys||ktrace(const char *fname, int ops, int facs, pid_t pid); }
|
||||||
|
SYS_GETGID = 47 // { gid_t|sys||getgid_with_egid(void); }
|
||||||
|
SYS___GETLOGIN = 49 // { int|sys||__getlogin(char *namebuf, size_t namelen); }
|
||||||
|
SYS___SETLOGIN = 50 // { int|sys||__setlogin(const char *namebuf); }
|
||||||
|
SYS_ACCT = 51 // { int|sys||acct(const char *path); }
|
||||||
|
SYS_IOCTL = 54 // { int|sys||ioctl(int fd, u_long com, ... void *data); }
|
||||||
|
SYS_REVOKE = 56 // { int|sys||revoke(const char *path); }
|
||||||
|
SYS_SYMLINK = 57 // { int|sys||symlink(const char *path, const char *link); }
|
||||||
|
SYS_READLINK = 58 // { ssize_t|sys||readlink(const char *path, char *buf, size_t count); }
|
||||||
|
SYS_EXECVE = 59 // { int|sys||execve(const char *path, char * const *argp, char * const *envp); }
|
||||||
|
SYS_UMASK = 60 // { mode_t|sys||umask(mode_t newmask); }
|
||||||
|
SYS_CHROOT = 61 // { int|sys||chroot(const char *path); }
|
||||||
|
SYS_VFORK = 66 // { int|sys||vfork(void); }
|
||||||
|
SYS_SBRK = 69 // { int|sys||sbrk(intptr_t incr); }
|
||||||
|
SYS_SSTK = 70 // { int|sys||sstk(int incr); }
|
||||||
|
SYS_VADVISE = 72 // { int|sys||ovadvise(int anom); }
|
||||||
|
SYS_MUNMAP = 73 // { int|sys||munmap(void *addr, size_t len); }
|
||||||
|
SYS_MPROTECT = 74 // { int|sys||mprotect(void *addr, size_t len, int prot); }
|
||||||
|
SYS_MADVISE = 75 // { int|sys||madvise(void *addr, size_t len, int behav); }
|
||||||
|
SYS_MINCORE = 78 // { int|sys||mincore(void *addr, size_t len, char *vec); }
|
||||||
|
SYS_GETGROUPS = 79 // { int|sys||getgroups(int gidsetsize, gid_t *gidset); }
|
||||||
|
SYS_SETGROUPS = 80 // { int|sys||setgroups(int gidsetsize, const gid_t *gidset); }
|
||||||
|
SYS_GETPGRP = 81 // { int|sys||getpgrp(void); }
|
||||||
|
SYS_SETPGID = 82 // { int|sys||setpgid(pid_t pid, pid_t pgid); }
|
||||||
|
SYS_DUP2 = 90 // { int|sys||dup2(int from, int to); }
|
||||||
|
SYS_FCNTL = 92 // { int|sys||fcntl(int fd, int cmd, ... void *arg); }
|
||||||
|
SYS_FSYNC = 95 // { int|sys||fsync(int fd); }
|
||||||
|
SYS_SETPRIORITY = 96 // { int|sys||setpriority(int which, id_t who, int prio); }
|
||||||
|
SYS_CONNECT = 98 // { int|sys||connect(int s, const struct sockaddr *name, socklen_t namelen); }
|
||||||
|
SYS_GETPRIORITY = 100 // { int|sys||getpriority(int which, id_t who); }
|
||||||
|
SYS_BIND = 104 // { int|sys||bind(int s, const struct sockaddr *name, socklen_t namelen); }
|
||||||
|
SYS_SETSOCKOPT = 105 // { int|sys||setsockopt(int s, int level, int name, const void *val, socklen_t valsize); }
|
||||||
|
SYS_LISTEN = 106 // { int|sys||listen(int s, int backlog); }
|
||||||
|
SYS_GETSOCKOPT = 118 // { int|sys||getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); }
|
||||||
|
SYS_READV = 120 // { ssize_t|sys||readv(int fd, const struct iovec *iovp, int iovcnt); }
|
||||||
|
SYS_WRITEV = 121 // { ssize_t|sys||writev(int fd, const struct iovec *iovp, int iovcnt); }
|
||||||
|
SYS_FCHOWN = 123 // { int|sys||fchown(int fd, uid_t uid, gid_t gid); }
|
||||||
|
SYS_FCHMOD = 124 // { int|sys||fchmod(int fd, mode_t mode); }
|
||||||
|
SYS_SETREUID = 126 // { int|sys||setreuid(uid_t ruid, uid_t euid); }
|
||||||
|
SYS_SETREGID = 127 // { int|sys||setregid(gid_t rgid, gid_t egid); }
|
||||||
|
SYS_RENAME = 128 // { int|sys||rename(const char *from, const char *to); }
|
||||||
|
SYS_FLOCK = 131 // { int|sys||flock(int fd, int how); }
|
||||||
|
SYS_MKFIFO = 132 // { int|sys||mkfifo(const char *path, mode_t mode); }
|
||||||
|
SYS_SENDTO = 133 // { ssize_t|sys||sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); }
|
||||||
|
SYS_SHUTDOWN = 134 // { int|sys||shutdown(int s, int how); }
|
||||||
|
SYS_SOCKETPAIR = 135 // { int|sys||socketpair(int domain, int type, int protocol, int *rsv); }
|
||||||
|
SYS_MKDIR = 136 // { int|sys||mkdir(const char *path, mode_t mode); }
|
||||||
|
SYS_RMDIR = 137 // { int|sys||rmdir(const char *path); }
|
||||||
|
SYS_SETSID = 147 // { int|sys||setsid(void); }
|
||||||
|
SYS_SYSARCH = 165 // { int|sys||sysarch(int op, void *parms); }
|
||||||
|
SYS_PREAD = 173 // { ssize_t|sys||pread(int fd, void *buf, size_t nbyte, int PAD, off_t offset); }
|
||||||
|
SYS_PWRITE = 174 // { ssize_t|sys||pwrite(int fd, const void *buf, size_t nbyte, int PAD, off_t offset); }
|
||||||
|
SYS_NTP_ADJTIME = 176 // { int|sys||ntp_adjtime(struct timex *tp); }
|
||||||
|
SYS_SETGID = 181 // { int|sys||setgid(gid_t gid); }
|
||||||
|
SYS_SETEGID = 182 // { int|sys||setegid(gid_t egid); }
|
||||||
|
SYS_SETEUID = 183 // { int|sys||seteuid(uid_t euid); }
|
||||||
|
SYS_PATHCONF = 191 // { long|sys||pathconf(const char *path, int name); }
|
||||||
|
SYS_FPATHCONF = 192 // { long|sys||fpathconf(int fd, int name); }
|
||||||
|
SYS_GETRLIMIT = 194 // { int|sys||getrlimit(int which, struct rlimit *rlp); }
|
||||||
|
SYS_SETRLIMIT = 195 // { int|sys||setrlimit(int which, const struct rlimit *rlp); }
|
||||||
|
SYS_MMAP = 197 // { void *|sys||mmap(void *addr, size_t len, int prot, int flags, int fd, long PAD, off_t pos); }
|
||||||
|
SYS_LSEEK = 199 // { off_t|sys||lseek(int fd, int PAD, off_t offset, int whence); }
|
||||||
|
SYS_TRUNCATE = 200 // { int|sys||truncate(const char *path, int PAD, off_t length); }
|
||||||
|
SYS_FTRUNCATE = 201 // { int|sys||ftruncate(int fd, int PAD, off_t length); }
|
||||||
|
SYS___SYSCTL = 202 // { int|sys||__sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, const void *new, size_t newlen); }
|
||||||
|
SYS_MLOCK = 203 // { int|sys||mlock(const void *addr, size_t len); }
|
||||||
|
SYS_MUNLOCK = 204 // { int|sys||munlock(const void *addr, size_t len); }
|
||||||
|
SYS_UNDELETE = 205 // { int|sys||undelete(const char *path); }
|
||||||
|
SYS_GETPGID = 207 // { pid_t|sys||getpgid(pid_t pid); }
|
||||||
|
SYS_REBOOT = 208 // { int|sys||reboot(int opt, char *bootstr); }
|
||||||
|
SYS_POLL = 209 // { int|sys||poll(struct pollfd *fds, u_int nfds, int timeout); }
|
||||||
|
SYS_SEMGET = 221 // { int|sys||semget(key_t key, int nsems, int semflg); }
|
||||||
|
SYS_SEMOP = 222 // { int|sys||semop(int semid, struct sembuf *sops, size_t nsops); }
|
||||||
|
SYS_SEMCONFIG = 223 // { int|sys||semconfig(int flag); }
|
||||||
|
SYS_MSGGET = 225 // { int|sys||msgget(key_t key, int msgflg); }
|
||||||
|
SYS_MSGSND = 226 // { int|sys||msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); }
|
||||||
|
SYS_MSGRCV = 227 // { ssize_t|sys||msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); }
|
||||||
|
SYS_SHMAT = 228 // { void *|sys||shmat(int shmid, const void *shmaddr, int shmflg); }
|
||||||
|
SYS_SHMDT = 230 // { int|sys||shmdt(const void *shmaddr); }
|
||||||
|
SYS_SHMGET = 231 // { int|sys||shmget(key_t key, size_t size, int shmflg); }
|
||||||
|
SYS_TIMER_CREATE = 235 // { int|sys||timer_create(clockid_t clock_id, struct sigevent *evp, timer_t *timerid); }
|
||||||
|
SYS_TIMER_DELETE = 236 // { int|sys||timer_delete(timer_t timerid); }
|
||||||
|
SYS_TIMER_GETOVERRUN = 239 // { int|sys||timer_getoverrun(timer_t timerid); }
|
||||||
|
SYS_FDATASYNC = 241 // { int|sys||fdatasync(int fd); }
|
||||||
|
SYS_MLOCKALL = 242 // { int|sys||mlockall(int flags); }
|
||||||
|
SYS_MUNLOCKALL = 243 // { int|sys||munlockall(void); }
|
||||||
|
SYS_SIGQUEUEINFO = 245 // { int|sys||sigqueueinfo(pid_t pid, const siginfo_t *info); }
|
||||||
|
SYS_MODCTL = 246 // { int|sys||modctl(int cmd, void *arg); }
|
||||||
|
SYS___POSIX_RENAME = 270 // { int|sys||__posix_rename(const char *from, const char *to); }
|
||||||
|
SYS_SWAPCTL = 271 // { int|sys||swapctl(int cmd, void *arg, int misc); }
|
||||||
|
SYS_MINHERIT = 273 // { int|sys||minherit(void *addr, size_t len, int inherit); }
|
||||||
|
SYS_LCHMOD = 274 // { int|sys||lchmod(const char *path, mode_t mode); }
|
||||||
|
SYS_LCHOWN = 275 // { int|sys||lchown(const char *path, uid_t uid, gid_t gid); }
|
||||||
|
SYS_MSYNC = 277 // { int|sys|13|msync(void *addr, size_t len, int flags); }
|
||||||
|
SYS___POSIX_CHOWN = 283 // { int|sys||__posix_chown(const char *path, uid_t uid, gid_t gid); }
|
||||||
|
SYS___POSIX_FCHOWN = 284 // { int|sys||__posix_fchown(int fd, uid_t uid, gid_t gid); }
|
||||||
|
SYS___POSIX_LCHOWN = 285 // { int|sys||__posix_lchown(const char *path, uid_t uid, gid_t gid); }
|
||||||
|
SYS_GETSID = 286 // { pid_t|sys||getsid(pid_t pid); }
|
||||||
|
SYS___CLONE = 287 // { pid_t|sys||__clone(int flags, void *stack); }
|
||||||
|
SYS_FKTRACE = 288 // { int|sys||fktrace(int fd, int ops, int facs, pid_t pid); }
|
||||||
|
SYS_PREADV = 289 // { ssize_t|sys||preadv(int fd, const struct iovec *iovp, int iovcnt, int PAD, off_t offset); }
|
||||||
|
SYS_PWRITEV = 290 // { ssize_t|sys||pwritev(int fd, const struct iovec *iovp, int iovcnt, int PAD, off_t offset); }
|
||||||
|
SYS___GETCWD = 296 // { int|sys||__getcwd(char *bufp, size_t length); }
|
||||||
|
SYS_FCHROOT = 297 // { int|sys||fchroot(int fd); }
|
||||||
|
SYS_LCHFLAGS = 304 // { int|sys||lchflags(const char *path, u_long flags); }
|
||||||
|
SYS_ISSETUGID = 305 // { int|sys||issetugid(void); }
|
||||||
|
SYS_UTRACE = 306 // { int|sys||utrace(const char *label, void *addr, size_t len); }
|
||||||
|
SYS_GETCONTEXT = 307 // { int|sys||getcontext(struct __ucontext *ucp); }
|
||||||
|
SYS_SETCONTEXT = 308 // { int|sys||setcontext(const struct __ucontext *ucp); }
|
||||||
|
SYS__LWP_CREATE = 309 // { int|sys||_lwp_create(const struct __ucontext *ucp, u_long flags, lwpid_t *new_lwp); }
|
||||||
|
SYS__LWP_EXIT = 310 // { int|sys||_lwp_exit(void); }
|
||||||
|
SYS__LWP_SELF = 311 // { lwpid_t|sys||_lwp_self(void); }
|
||||||
|
SYS__LWP_WAIT = 312 // { int|sys||_lwp_wait(lwpid_t wait_for, lwpid_t *departed); }
|
||||||
|
SYS__LWP_SUSPEND = 313 // { int|sys||_lwp_suspend(lwpid_t target); }
|
||||||
|
SYS__LWP_CONTINUE = 314 // { int|sys||_lwp_continue(lwpid_t target); }
|
||||||
|
SYS__LWP_WAKEUP = 315 // { int|sys||_lwp_wakeup(lwpid_t target); }
|
||||||
|
SYS__LWP_GETPRIVATE = 316 // { void *|sys||_lwp_getprivate(void); }
|
||||||
|
SYS__LWP_SETPRIVATE = 317 // { void|sys||_lwp_setprivate(void *ptr); }
|
||||||
|
SYS__LWP_KILL = 318 // { int|sys||_lwp_kill(lwpid_t target, int signo); }
|
||||||
|
SYS__LWP_DETACH = 319 // { int|sys||_lwp_detach(lwpid_t target); }
|
||||||
|
SYS__LWP_UNPARK = 321 // { int|sys||_lwp_unpark(lwpid_t target, const void *hint); }
|
||||||
|
SYS__LWP_UNPARK_ALL = 322 // { ssize_t|sys||_lwp_unpark_all(const lwpid_t *targets, size_t ntargets, const void *hint); }
|
||||||
|
SYS__LWP_SETNAME = 323 // { int|sys||_lwp_setname(lwpid_t target, const char *name); }
|
||||||
|
SYS__LWP_GETNAME = 324 // { int|sys||_lwp_getname(lwpid_t target, char *name, size_t len); }
|
||||||
|
SYS__LWP_CTL = 325 // { int|sys||_lwp_ctl(int features, struct lwpctl **address); }
|
||||||
|
SYS___SIGACTION_SIGTRAMP = 340 // { int|sys||__sigaction_sigtramp(int signum, const struct sigaction *nsa, struct sigaction *osa, const void *tramp, int vers); }
|
||||||
|
SYS_PMC_GET_INFO = 341 // { int|sys||pmc_get_info(int ctr, int op, void *args); }
|
||||||
|
SYS_PMC_CONTROL = 342 // { int|sys||pmc_control(int ctr, int op, void *args); }
|
||||||
|
SYS_RASCTL = 343 // { int|sys||rasctl(void *addr, size_t len, int op); }
|
||||||
|
SYS_KQUEUE = 344 // { int|sys||kqueue(void); }
|
||||||
|
SYS__SCHED_SETPARAM = 346 // { int|sys||_sched_setparam(pid_t pid, lwpid_t lid, int policy, const struct sched_param *params); }
|
||||||
|
SYS__SCHED_GETPARAM = 347 // { int|sys||_sched_getparam(pid_t pid, lwpid_t lid, int *policy, struct sched_param *params); }
|
||||||
|
SYS__SCHED_SETAFFINITY = 348 // { int|sys||_sched_setaffinity(pid_t pid, lwpid_t lid, size_t size, const cpuset_t *cpuset); }
|
||||||
|
SYS__SCHED_GETAFFINITY = 349 // { int|sys||_sched_getaffinity(pid_t pid, lwpid_t lid, size_t size, cpuset_t *cpuset); }
|
||||||
|
SYS_SCHED_YIELD = 350 // { int|sys||sched_yield(void); }
|
||||||
|
SYS_FSYNC_RANGE = 354 // { int|sys||fsync_range(int fd, int flags, off_t start, off_t length); }
|
||||||
|
SYS_UUIDGEN = 355 // { int|sys||uuidgen(struct uuid *store, int count); }
|
||||||
|
SYS_GETVFSSTAT = 356 // { int|sys||getvfsstat(struct statvfs *buf, size_t bufsize, int flags); }
|
||||||
|
SYS_STATVFS1 = 357 // { int|sys||statvfs1(const char *path, struct statvfs *buf, int flags); }
|
||||||
|
SYS_FSTATVFS1 = 358 // { int|sys||fstatvfs1(int fd, struct statvfs *buf, int flags); }
|
||||||
|
SYS_EXTATTRCTL = 360 // { int|sys||extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); }
|
||||||
|
SYS_EXTATTR_SET_FILE = 361 // { int|sys||extattr_set_file(const char *path, int attrnamespace, const char *attrname, const void *data, size_t nbytes); }
|
||||||
|
SYS_EXTATTR_GET_FILE = 362 // { ssize_t|sys||extattr_get_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
|
||||||
|
SYS_EXTATTR_DELETE_FILE = 363 // { int|sys||extattr_delete_file(const char *path, int attrnamespace, const char *attrname); }
|
||||||
|
SYS_EXTATTR_SET_FD = 364 // { int|sys||extattr_set_fd(int fd, int attrnamespace, const char *attrname, const void *data, size_t nbytes); }
|
||||||
|
SYS_EXTATTR_GET_FD = 365 // { ssize_t|sys||extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
|
||||||
|
SYS_EXTATTR_DELETE_FD = 366 // { int|sys||extattr_delete_fd(int fd, int attrnamespace, const char *attrname); }
|
||||||
|
SYS_EXTATTR_SET_LINK = 367 // { int|sys||extattr_set_link(const char *path, int attrnamespace, const char *attrname, const void *data, size_t nbytes); }
|
||||||
|
SYS_EXTATTR_GET_LINK = 368 // { ssize_t|sys||extattr_get_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); }
|
||||||
|
SYS_EXTATTR_DELETE_LINK = 369 // { int|sys||extattr_delete_link(const char *path, int attrnamespace, const char *attrname); }
|
||||||
|
SYS_EXTATTR_LIST_FD = 370 // { ssize_t|sys||extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); }
|
||||||
|
SYS_EXTATTR_LIST_FILE = 371 // { ssize_t|sys||extattr_list_file(const char *path, int attrnamespace, void *data, size_t nbytes); }
|
||||||
|
SYS_EXTATTR_LIST_LINK = 372 // { ssize_t|sys||extattr_list_link(const char *path, int attrnamespace, void *data, size_t nbytes); }
|
||||||
|
SYS_SETXATTR = 375 // { int|sys||setxattr(const char *path, const char *name, const void *value, size_t size, int flags); }
|
||||||
|
SYS_LSETXATTR = 376 // { int|sys||lsetxattr(const char *path, const char *name, const void *value, size_t size, int flags); }
|
||||||
|
SYS_FSETXATTR = 377 // { int|sys||fsetxattr(int fd, const char *name, const void *value, size_t size, int flags); }
|
||||||
|
SYS_GETXATTR = 378 // { int|sys||getxattr(const char *path, const char *name, void *value, size_t size); }
|
||||||
|
SYS_LGETXATTR = 379 // { int|sys||lgetxattr(const char *path, const char *name, void *value, size_t size); }
|
||||||
|
SYS_FGETXATTR = 380 // { int|sys||fgetxattr(int fd, const char *name, void *value, size_t size); }
|
||||||
|
SYS_LISTXATTR = 381 // { int|sys||listxattr(const char *path, char *list, size_t size); }
|
||||||
|
SYS_LLISTXATTR = 382 // { int|sys||llistxattr(const char *path, char *list, size_t size); }
|
||||||
|
SYS_FLISTXATTR = 383 // { int|sys||flistxattr(int fd, char *list, size_t size); }
|
||||||
|
SYS_REMOVEXATTR = 384 // { int|sys||removexattr(const char *path, const char *name); }
|
||||||
|
SYS_LREMOVEXATTR = 385 // { int|sys||lremovexattr(const char *path, const char *name); }
|
||||||
|
SYS_FREMOVEXATTR = 386 // { int|sys||fremovexattr(int fd, const char *name); }
|
||||||
|
SYS_GETDENTS = 390 // { int|sys|30|getdents(int fd, char *buf, size_t count); }
|
||||||
|
SYS_SOCKET = 394 // { int|sys|30|socket(int domain, int type, int protocol); }
|
||||||
|
SYS_GETFH = 395 // { int|sys|30|getfh(const char *fname, void *fhp, size_t *fh_size); }
|
||||||
|
SYS_MOUNT = 410 // { int|sys|50|mount(const char *type, const char *path, int flags, void *data, size_t data_len); }
|
||||||
|
SYS_MREMAP = 411 // { void *|sys||mremap(void *old_address, size_t old_size, void *new_address, size_t new_size, int flags); }
|
||||||
|
SYS_PSET_CREATE = 412 // { int|sys||pset_create(psetid_t *psid); }
|
||||||
|
SYS_PSET_DESTROY = 413 // { int|sys||pset_destroy(psetid_t psid); }
|
||||||
|
SYS_PSET_ASSIGN = 414 // { int|sys||pset_assign(psetid_t psid, cpuid_t cpuid, psetid_t *opsid); }
|
||||||
|
SYS__PSET_BIND = 415 // { int|sys||_pset_bind(idtype_t idtype, id_t first_id, id_t second_id, psetid_t psid, psetid_t *opsid); }
|
||||||
|
SYS_POSIX_FADVISE = 416 // { int|sys|50|posix_fadvise(int fd, int PAD, off_t offset, off_t len, int advice); }
|
||||||
|
SYS_SELECT = 417 // { int|sys|50|select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); }
|
||||||
|
SYS_GETTIMEOFDAY = 418 // { int|sys|50|gettimeofday(struct timeval *tp, void *tzp); }
|
||||||
|
SYS_SETTIMEOFDAY = 419 // { int|sys|50|settimeofday(const struct timeval *tv, const void *tzp); }
|
||||||
|
SYS_UTIMES = 420 // { int|sys|50|utimes(const char *path, const struct timeval *tptr); }
|
||||||
|
SYS_ADJTIME = 421 // { int|sys|50|adjtime(const struct timeval *delta, struct timeval *olddelta); }
|
||||||
|
SYS_FUTIMES = 423 // { int|sys|50|futimes(int fd, const struct timeval *tptr); }
|
||||||
|
SYS_LUTIMES = 424 // { int|sys|50|lutimes(const char *path, const struct timeval *tptr); }
|
||||||
|
SYS_SETITIMER = 425 // { int|sys|50|setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); }
|
||||||
|
SYS_GETITIMER = 426 // { int|sys|50|getitimer(int which, struct itimerval *itv); }
|
||||||
|
SYS_CLOCK_GETTIME = 427 // { int|sys|50|clock_gettime(clockid_t clock_id, struct timespec *tp); }
|
||||||
|
SYS_CLOCK_SETTIME = 428 // { int|sys|50|clock_settime(clockid_t clock_id, const struct timespec *tp); }
|
||||||
|
SYS_CLOCK_GETRES = 429 // { int|sys|50|clock_getres(clockid_t clock_id, struct timespec *tp); }
|
||||||
|
SYS_NANOSLEEP = 430 // { int|sys|50|nanosleep(const struct timespec *rqtp, struct timespec *rmtp); }
|
||||||
|
SYS___SIGTIMEDWAIT = 431 // { int|sys|50|__sigtimedwait(const sigset_t *set, siginfo_t *info, struct timespec *timeout); }
|
||||||
|
SYS__LWP_PARK = 434 // { int|sys|50|_lwp_park(const struct timespec *ts, lwpid_t unpark, const void *hint, const void *unparkhint); }
|
||||||
|
SYS_KEVENT = 435 // { int|sys|50|kevent(int fd, const struct kevent *changelist, size_t nchanges, struct kevent *eventlist, size_t nevents, const struct timespec *timeout); }
|
||||||
|
SYS_PSELECT = 436 // { int|sys|50|pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); }
|
||||||
|
SYS_POLLTS = 437 // { int|sys|50|pollts(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); }
|
||||||
|
SYS_STAT = 439 // { int|sys|50|stat(const char *path, struct stat *ub); }
|
||||||
|
SYS_FSTAT = 440 // { int|sys|50|fstat(int fd, struct stat *sb); }
|
||||||
|
SYS_LSTAT = 441 // { int|sys|50|lstat(const char *path, struct stat *ub); }
|
||||||
|
SYS___SEMCTL = 442 // { int|sys|50|__semctl(int semid, int semnum, int cmd, ... union __semun *arg); }
|
||||||
|
SYS_SHMCTL = 443 // { int|sys|50|shmctl(int shmid, int cmd, struct shmid_ds *buf); }
|
||||||
|
SYS_MSGCTL = 444 // { int|sys|50|msgctl(int msqid, int cmd, struct msqid_ds *buf); }
|
||||||
|
SYS_GETRUSAGE = 445 // { int|sys|50|getrusage(int who, struct rusage *rusage); }
|
||||||
|
SYS_TIMER_SETTIME = 446 // { int|sys|50|timer_settime(timer_t timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); }
|
||||||
|
SYS_TIMER_GETTIME = 447 // { int|sys|50|timer_gettime(timer_t timerid, struct itimerspec *value); }
|
||||||
|
SYS_NTP_GETTIME = 448 // { int|sys|50|ntp_gettime(struct ntptimeval *ntvp); }
|
||||||
|
SYS_WAIT4 = 449 // { int|sys|50|wait4(pid_t pid, int *status, int options, struct rusage *rusage); }
|
||||||
|
SYS_MKNOD = 450 // { int|sys|50|mknod(const char *path, mode_t mode, dev_t dev); }
|
||||||
|
SYS_FHSTAT = 451 // { int|sys|50|fhstat(const void *fhp, size_t fh_size, struct stat *sb); }
|
||||||
|
SYS_PIPE2 = 453 // { int|sys||pipe2(int *fildes, int flags); }
|
||||||
|
SYS_DUP3 = 454 // { int|sys||dup3(int from, int to, int flags); }
|
||||||
|
SYS_KQUEUE1 = 455 // { int|sys||kqueue1(int flags); }
|
||||||
|
SYS_PACCEPT = 456 // { int|sys||paccept(int s, struct sockaddr *name, socklen_t *anamelen, const sigset_t *mask, int flags); }
|
||||||
|
SYS_LINKAT = 457 // { int|sys||linkat(int fd1, const char *name1, int fd2, const char *name2, int flags); }
|
||||||
|
SYS_RENAMEAT = 458 // { int|sys||renameat(int fromfd, const char *from, int tofd, const char *to); }
|
||||||
|
SYS_MKFIFOAT = 459 // { int|sys||mkfifoat(int fd, const char *path, mode_t mode); }
|
||||||
|
SYS_MKNODAT = 460 // { int|sys||mknodat(int fd, const char *path, mode_t mode, uint32_t dev); }
|
||||||
|
SYS_MKDIRAT = 461 // { int|sys||mkdirat(int fd, const char *path, mode_t mode); }
|
||||||
|
SYS_FACCESSAT = 462 // { int|sys||faccessat(int fd, const char *path, int amode, int flag); }
|
||||||
|
SYS_FCHMODAT = 463 // { int|sys||fchmodat(int fd, const char *path, mode_t mode, int flag); }
|
||||||
|
SYS_FCHOWNAT = 464 // { int|sys||fchownat(int fd, const char *path, uid_t owner, gid_t group, int flag); }
|
||||||
|
SYS_FEXECVE = 465 // { int|sys||fexecve(int fd, char * const *argp, char * const *envp); }
|
||||||
|
SYS_FSTATAT = 466 // { int|sys||fstatat(int fd, const char *path, struct stat *buf, int flag); }
|
||||||
|
SYS_UTIMENSAT = 467 // { int|sys||utimensat(int fd, const char *path, const struct timespec *tptr, int flag); }
|
||||||
|
SYS_OPENAT = 468 // { int|sys||openat(int fd, const char *path, int oflags, ... mode_t mode); }
|
||||||
|
SYS_READLINKAT = 469 // { int|sys||readlinkat(int fd, const char *path, char *buf, size_t bufsize); }
|
||||||
|
SYS_SYMLINKAT = 470 // { int|sys||symlinkat(const char *path1, int fd, const char *path2); }
|
||||||
|
SYS_UNLINKAT = 471 // { int|sys||unlinkat(int fd, const char *path, int flag); }
|
||||||
|
SYS_FUTIMENS = 472 // { int|sys||futimens(int fd, const struct timespec *tptr); }
|
||||||
|
SYS___QUOTACTL = 473 // { int|sys||__quotactl(const char *path, struct quotactl_args *args); }
|
||||||
|
SYS_POSIX_SPAWN = 474 // { int|sys||posix_spawn(pid_t *pid, const char *path, const struct posix_spawn_file_actions *file_actions, const struct posix_spawnattr *attrp, char *const *argv, char *const *envp); }
|
||||||
|
SYS_RECVMMSG = 475 // { int|sys||recvmmsg(int s, struct mmsghdr *mmsg, unsigned int vlen, unsigned int flags, struct timespec *timeout); }
|
||||||
|
SYS_SENDMMSG = 476 // { int|sys||sendmmsg(int s, struct mmsghdr *mmsg, unsigned int vlen, unsigned int flags); }
|
||||||
|
)
|
2
vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// go run mksysnum.go http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
|
// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build 386,openbsd
|
// +build 386,openbsd
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// go run mksysnum.go http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
|
// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build amd64,openbsd
|
// +build amd64,openbsd
|
||||||
|
|
2
vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
generated
vendored
2
vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go
generated
vendored
|
@ -1,4 +1,4 @@
|
||||||
// go run mksysnum.go http://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
|
// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master
|
||||||
// Code generated by the command above; see README.md. DO NOT EDIT.
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
// +build arm,openbsd
|
// +build arm,openbsd
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_386.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_386.go
generated
vendored
|
@ -759,7 +759,25 @@ type Sigset_t struct {
|
||||||
Val [32]uint32
|
Val [32]uint32
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x80045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1964,6 +1982,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1983,4 +2005,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go
generated
vendored
|
@ -772,7 +772,25 @@ type Sigset_t struct {
|
||||||
Val [16]uint64
|
Val [16]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x80045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1977,6 +1995,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1996,4 +2018,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_arm.go
generated
vendored
|
@ -748,7 +748,25 @@ type Sigset_t struct {
|
||||||
Val [32]uint32
|
Val [32]uint32
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x80045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1955,6 +1973,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1974,4 +1996,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go
generated
vendored
|
@ -751,7 +751,25 @@ type Sigset_t struct {
|
||||||
Val [16]uint64
|
Val [16]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x80045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1956,6 +1974,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1975,4 +1997,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_mips.go
generated
vendored
|
@ -753,7 +753,25 @@ type Sigset_t struct {
|
||||||
Val [32]uint32
|
Val [32]uint32
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x40045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1961,6 +1979,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1980,4 +2002,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go
generated
vendored
|
@ -753,7 +753,25 @@ type Sigset_t struct {
|
||||||
Val [16]uint64
|
Val [16]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x40045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1958,6 +1976,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1977,4 +1999,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go
generated
vendored
|
@ -753,7 +753,25 @@ type Sigset_t struct {
|
||||||
Val [16]uint64
|
Val [16]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x40045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1958,6 +1976,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1977,4 +1999,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go
generated
vendored
|
@ -753,7 +753,25 @@ type Sigset_t struct {
|
||||||
Val [32]uint32
|
Val [32]uint32
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x40045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1961,6 +1979,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1980,4 +2002,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go
generated
vendored
|
@ -761,7 +761,25 @@ type Sigset_t struct {
|
||||||
Val [16]uint64
|
Val [16]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x40045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1966,6 +1984,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1985,4 +2007,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go
generated
vendored
|
@ -761,7 +761,25 @@ type Sigset_t struct {
|
||||||
Val [16]uint64
|
Val [16]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x40045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1966,6 +1984,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1985,4 +2007,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
40
vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
generated
vendored
40
vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go
generated
vendored
|
@ -212,7 +212,7 @@ type RawSockaddrInet6 struct {
|
||||||
|
|
||||||
type RawSockaddrUnix struct {
|
type RawSockaddrUnix struct {
|
||||||
Family uint16
|
Family uint16
|
||||||
Path [108]uint8
|
Path [108]int8
|
||||||
}
|
}
|
||||||
|
|
||||||
type RawSockaddrLinklayer struct {
|
type RawSockaddrLinklayer struct {
|
||||||
|
@ -778,7 +778,25 @@ type Sigset_t struct {
|
||||||
Val [16]uint64
|
Val [16]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x80045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1983,6 +2001,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -2002,4 +2024,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go
generated
vendored
|
@ -774,7 +774,25 @@ type Sigset_t struct {
|
||||||
Val [16]uint64
|
Val [16]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x80045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1980,6 +1998,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1999,4 +2021,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
38
vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
generated
vendored
38
vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go
generated
vendored
|
@ -756,7 +756,25 @@ type Sigset_t struct {
|
||||||
Val [16]uint64
|
Val [16]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
const RNDGETENTCNT = 0x40045200
|
type SignalfdSiginfo struct {
|
||||||
|
Signo uint32
|
||||||
|
Errno int32
|
||||||
|
Code int32
|
||||||
|
Pid uint32
|
||||||
|
Uid uint32
|
||||||
|
Fd int32
|
||||||
|
Tid uint32
|
||||||
|
Band uint32
|
||||||
|
Overrun uint32
|
||||||
|
Trapno uint32
|
||||||
|
Status int32
|
||||||
|
Int int32
|
||||||
|
Ptr uint64
|
||||||
|
Utime uint64
|
||||||
|
Stime uint64
|
||||||
|
Addr uint64
|
||||||
|
_ [48]uint8
|
||||||
|
}
|
||||||
|
|
||||||
const PERF_IOC_FLAG_GROUP = 0x1
|
const PERF_IOC_FLAG_GROUP = 0x1
|
||||||
|
|
||||||
|
@ -1961,6 +1979,10 @@ const (
|
||||||
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type ScmTimestamping struct {
|
||||||
|
Ts [3]Timespec
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
SOF_TIMESTAMPING_TX_HARDWARE = 0x1
|
||||||
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
|
||||||
|
@ -1980,4 +2002,18 @@ const (
|
||||||
|
|
||||||
SOF_TIMESTAMPING_LAST = 0x4000
|
SOF_TIMESTAMPING_LAST = 0x4000
|
||||||
SOF_TIMESTAMPING_MASK = 0x7fff
|
SOF_TIMESTAMPING_MASK = 0x7fff
|
||||||
|
|
||||||
|
SCM_TSTAMP_SND = 0x0
|
||||||
|
SCM_TSTAMP_SCHED = 0x1
|
||||||
|
SCM_TSTAMP_ACK = 0x2
|
||||||
)
|
)
|
||||||
|
|
||||||
|
type SockExtendedErr struct {
|
||||||
|
Errno uint32
|
||||||
|
Origin uint8
|
||||||
|
Type uint8
|
||||||
|
Code uint8
|
||||||
|
Pad uint8
|
||||||
|
Info uint32
|
||||||
|
Data uint32
|
||||||
|
}
|
||||||
|
|
472
vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
generated
vendored
Normal file
472
vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go
generated
vendored
Normal file
|
@ -0,0 +1,472 @@
|
||||||
|
// cgo -godefs types_netbsd.go | go run mkpost.go
|
||||||
|
// Code generated by the command above; see README.md. DO NOT EDIT.
|
||||||
|
|
||||||
|
// +build arm64,netbsd
|
||||||
|
|
||||||
|
package unix
|
||||||
|
|
||||||
|
const (
|
||||||
|
SizeofPtr = 0x8
|
||||||
|
SizeofShort = 0x2
|
||||||
|
SizeofInt = 0x4
|
||||||
|
SizeofLong = 0x8
|
||||||
|
SizeofLongLong = 0x8
|
||||||
|
)
|
||||||
|
|
||||||
|
type (
|
||||||
|
_C_short int16
|
||||||
|
_C_int int32
|
||||||
|
_C_long int64
|
||||||
|
_C_long_long int64
|
||||||
|
)
|
||||||
|
|
||||||
|
type Timespec struct {
|
||||||
|
Sec int64
|
||||||
|
Nsec int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type Timeval struct {
|
||||||
|
Sec int64
|
||||||
|
Usec int32
|
||||||
|
Pad_cgo_0 [4]byte
|
||||||
|
}
|
||||||
|
|
||||||
|
type Rusage struct {
|
||||||
|
Utime Timeval
|
||||||
|
Stime Timeval
|
||||||
|
Maxrss int64
|
||||||
|
Ixrss int64
|
||||||
|
Idrss int64
|
||||||
|
Isrss int64
|
||||||
|
Minflt int64
|
||||||
|
Majflt int64
|
||||||
|
Nswap int64
|
||||||
|
Inblock int64
|
||||||
|
Oublock int64
|
||||||
|
Msgsnd int64
|
||||||
|
Msgrcv int64
|
||||||
|
Nsignals int64
|
||||||
|
Nvcsw int64
|
||||||
|
Nivcsw int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type Rlimit struct {
|
||||||
|
Cur uint64
|
||||||
|
Max uint64
|
||||||
|
}
|
||||||
|
|
||||||
|
type _Gid_t uint32
|
||||||
|
|
||||||
|
type Stat_t struct {
|
||||||
|
Dev uint64
|
||||||
|
Mode uint32
|
||||||
|
Pad_cgo_0 [4]byte
|
||||||
|
Ino uint64
|
||||||
|
Nlink uint32
|
||||||
|
Uid uint32
|
||||||
|
Gid uint32
|
||||||
|
Pad_cgo_1 [4]byte
|
||||||
|
Rdev uint64
|
||||||
|
Atimespec Timespec
|
||||||
|
Mtimespec Timespec
|
||||||
|
Ctimespec Timespec
|
||||||
|
Birthtimespec Timespec
|
||||||
|
Size int64
|
||||||
|
Blocks int64
|
||||||
|
Blksize uint32
|
||||||
|
Flags uint32
|
||||||
|
Gen uint32
|
||||||
|
Spare [2]uint32
|
||||||
|
Pad_cgo_2 [4]byte
|
||||||
|
}
|
||||||
|
|
||||||
|
type Statfs_t [0]byte
|
||||||
|
|
||||||
|
type Flock_t struct {
|
||||||
|
Start int64
|
||||||
|
Len int64
|
||||||
|
Pid int32
|
||||||
|
Type int16
|
||||||
|
Whence int16
|
||||||
|
}
|
||||||
|
|
||||||
|
type Dirent struct {
|
||||||
|
Fileno uint64
|
||||||
|
Reclen uint16
|
||||||
|
Namlen uint16
|
||||||
|
Type uint8
|
||||||
|
Name [512]int8
|
||||||
|
Pad_cgo_0 [3]byte
|
||||||
|
}
|
||||||
|
|
||||||
|
type Fsid struct {
|
||||||
|
X__fsid_val [2]int32
|
||||||
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
PathMax = 0x400
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
FADV_NORMAL = 0x0
|
||||||
|
FADV_RANDOM = 0x1
|
||||||
|
FADV_SEQUENTIAL = 0x2
|
||||||
|
FADV_WILLNEED = 0x3
|
||||||
|
FADV_DONTNEED = 0x4
|
||||||
|
FADV_NOREUSE = 0x5
|
||||||
|
)
|
||||||
|
|
||||||
|
type RawSockaddrInet4 struct {
|
||||||
|
Len uint8
|
||||||
|
Family uint8
|
||||||
|
Port uint16
|
||||||
|
Addr [4]byte /* in_addr */
|
||||||
|
Zero [8]int8
|
||||||
|
}
|
||||||
|
|
||||||
|
type RawSockaddrInet6 struct {
|
||||||
|
Len uint8
|
||||||
|
Family uint8
|
||||||
|
Port uint16
|
||||||
|
Flowinfo uint32
|
||||||
|
Addr [16]byte /* in6_addr */
|
||||||
|
Scope_id uint32
|
||||||
|
}
|
||||||
|
|
||||||
|
type RawSockaddrUnix struct {
|
||||||
|
Len uint8
|
||||||
|
Family uint8
|
||||||
|
Path [104]int8
|
||||||
|
}
|
||||||
|
|
||||||
|
type RawSockaddrDatalink struct {
|
||||||
|
Len uint8
|
||||||
|
Family uint8
|
||||||
|
Index uint16
|
||||||
|
Type uint8
|
||||||
|
Nlen uint8
|
||||||
|
Alen uint8
|
||||||
|
Slen uint8
|
||||||
|
Data [12]int8
|
||||||
|
}
|
||||||
|
|
||||||
|
type RawSockaddr struct {
|
||||||
|
Len uint8
|
||||||
|
Family uint8
|
||||||
|
Data [14]int8
|
||||||
|
}
|
||||||
|
|
||||||
|
type RawSockaddrAny struct {
|
||||||
|
Addr RawSockaddr
|
||||||
|
Pad [92]int8
|
||||||
|
}
|
||||||
|
|
||||||
|
type _Socklen uint32
|
||||||
|
|
||||||
|
type Linger struct {
|
||||||
|
Onoff int32
|
||||||
|
Linger int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type Iovec struct {
|
||||||
|
Base *byte
|
||||||
|
Len uint64
|
||||||
|
}
|
||||||
|
|
||||||
|
type IPMreq struct {
|
||||||
|
Multiaddr [4]byte /* in_addr */
|
||||||
|
Interface [4]byte /* in_addr */
|
||||||
|
}
|
||||||
|
|
||||||
|
type IPv6Mreq struct {
|
||||||
|
Multiaddr [16]byte /* in6_addr */
|
||||||
|
Interface uint32
|
||||||
|
}
|
||||||
|
|
||||||
|
type Msghdr struct {
|
||||||
|
Name *byte
|
||||||
|
Namelen uint32
|
||||||
|
Pad_cgo_0 [4]byte
|
||||||
|
Iov *Iovec
|
||||||
|
Iovlen int32
|
||||||
|
Pad_cgo_1 [4]byte
|
||||||
|
Control *byte
|
||||||
|
Controllen uint32
|
||||||
|
Flags int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type Cmsghdr struct {
|
||||||
|
Len uint32
|
||||||
|
Level int32
|
||||||
|
Type int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type Inet6Pktinfo struct {
|
||||||
|
Addr [16]byte /* in6_addr */
|
||||||
|
Ifindex uint32
|
||||||
|
}
|
||||||
|
|
||||||
|
type IPv6MTUInfo struct {
|
||||||
|
Addr RawSockaddrInet6
|
||||||
|
Mtu uint32
|
||||||
|
}
|
||||||
|
|
||||||
|
type ICMPv6Filter struct {
|
||||||
|
Filt [8]uint32
|
||||||
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
SizeofSockaddrInet4 = 0x10
|
||||||
|
SizeofSockaddrInet6 = 0x1c
|
||||||
|
SizeofSockaddrAny = 0x6c
|
||||||
|
SizeofSockaddrUnix = 0x6a
|
||||||
|
SizeofSockaddrDatalink = 0x14
|
||||||
|
SizeofLinger = 0x8
|
||||||
|
SizeofIPMreq = 0x8
|
||||||
|
SizeofIPv6Mreq = 0x14
|
||||||
|
SizeofMsghdr = 0x30
|
||||||
|
SizeofCmsghdr = 0xc
|
||||||
|
SizeofInet6Pktinfo = 0x14
|
||||||
|
SizeofIPv6MTUInfo = 0x20
|
||||||
|
SizeofICMPv6Filter = 0x20
|
||||||
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
PTRACE_TRACEME = 0x0
|
||||||
|
PTRACE_CONT = 0x7
|
||||||
|
PTRACE_KILL = 0x8
|
||||||
|
)
|
||||||
|
|
||||||
|
type Kevent_t struct {
|
||||||
|
Ident uint64
|
||||||
|
Filter uint32
|
||||||
|
Flags uint32
|
||||||
|
Fflags uint32
|
||||||
|
Pad_cgo_0 [4]byte
|
||||||
|
Data int64
|
||||||
|
Udata int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type FdSet struct {
|
||||||
|
Bits [8]uint32
|
||||||
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
SizeofIfMsghdr = 0x98
|
||||||
|
SizeofIfData = 0x88
|
||||||
|
SizeofIfaMsghdr = 0x18
|
||||||
|
SizeofIfAnnounceMsghdr = 0x18
|
||||||
|
SizeofRtMsghdr = 0x78
|
||||||
|
SizeofRtMetrics = 0x50
|
||||||
|
)
|
||||||
|
|
||||||
|
type IfMsghdr struct {
|
||||||
|
Msglen uint16
|
||||||
|
Version uint8
|
||||||
|
Type uint8
|
||||||
|
Addrs int32
|
||||||
|
Flags int32
|
||||||
|
Index uint16
|
||||||
|
Pad_cgo_0 [2]byte
|
||||||
|
Data IfData
|
||||||
|
}
|
||||||
|
|
||||||
|
type IfData struct {
|
||||||
|
Type uint8
|
||||||
|
Addrlen uint8
|
||||||
|
Hdrlen uint8
|
||||||
|
Pad_cgo_0 [1]byte
|
||||||
|
Link_state int32
|
||||||
|
Mtu uint64
|
||||||
|
Metric uint64
|
||||||
|
Baudrate uint64
|
||||||
|
Ipackets uint64
|
||||||
|
Ierrors uint64
|
||||||
|
Opackets uint64
|
||||||
|
Oerrors uint64
|
||||||
|
Collisions uint64
|
||||||
|
Ibytes uint64
|
||||||
|
Obytes uint64
|
||||||
|
Imcasts uint64
|
||||||
|
Omcasts uint64
|
||||||
|
Iqdrops uint64
|
||||||
|
Noproto uint64
|
||||||
|
Lastchange Timespec
|
||||||
|
}
|
||||||
|
|
||||||
|
type IfaMsghdr struct {
|
||||||
|
Msglen uint16
|
||||||
|
Version uint8
|
||||||
|
Type uint8
|
||||||
|
Addrs int32
|
||||||
|
Flags int32
|
||||||
|
Metric int32
|
||||||
|
Index uint16
|
||||||
|
Pad_cgo_0 [6]byte
|
||||||
|
}
|
||||||
|
|
||||||
|
type IfAnnounceMsghdr struct {
|
||||||
|
Msglen uint16
|
||||||
|
Version uint8
|
||||||
|
Type uint8
|
||||||
|
Index uint16
|
||||||
|
Name [16]int8
|
||||||
|
What uint16
|
||||||
|
}
|
||||||
|
|
||||||
|
type RtMsghdr struct {
|
||||||
|
Msglen uint16
|
||||||
|
Version uint8
|
||||||
|
Type uint8
|
||||||
|
Index uint16
|
||||||
|
Pad_cgo_0 [2]byte
|
||||||
|
Flags int32
|
||||||
|
Addrs int32
|
||||||
|
Pid int32
|
||||||
|
Seq int32
|
||||||
|
Errno int32
|
||||||
|
Use int32
|
||||||
|
Inits int32
|
||||||
|
Pad_cgo_1 [4]byte
|
||||||
|
Rmx RtMetrics
|
||||||
|
}
|
||||||
|
|
||||||
|
type RtMetrics struct {
|
||||||
|
Locks uint64
|
||||||
|
Mtu uint64
|
||||||
|
Hopcount uint64
|
||||||
|
Recvpipe uint64
|
||||||
|
Sendpipe uint64
|
||||||
|
Ssthresh uint64
|
||||||
|
Rtt uint64
|
||||||
|
Rttvar uint64
|
||||||
|
Expire int64
|
||||||
|
Pksent int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type Mclpool [0]byte
|
||||||
|
|
||||||
|
const (
|
||||||
|
SizeofBpfVersion = 0x4
|
||||||
|
SizeofBpfStat = 0x80
|
||||||
|
SizeofBpfProgram = 0x10
|
||||||
|
SizeofBpfInsn = 0x8
|
||||||
|
SizeofBpfHdr = 0x20
|
||||||
|
)
|
||||||
|
|
||||||
|
type BpfVersion struct {
|
||||||
|
Major uint16
|
||||||
|
Minor uint16
|
||||||
|
}
|
||||||
|
|
||||||
|
type BpfStat struct {
|
||||||
|
Recv uint64
|
||||||
|
Drop uint64
|
||||||
|
Capt uint64
|
||||||
|
Padding [13]uint64
|
||||||
|
}
|
||||||
|
|
||||||
|
type BpfProgram struct {
|
||||||
|
Len uint32
|
||||||
|
Pad_cgo_0 [4]byte
|
||||||
|
Insns *BpfInsn
|
||||||
|
}
|
||||||
|
|
||||||
|
type BpfInsn struct {
|
||||||
|
Code uint16
|
||||||
|
Jt uint8
|
||||||
|
Jf uint8
|
||||||
|
K uint32
|
||||||
|
}
|
||||||
|
|
||||||
|
type BpfHdr struct {
|
||||||
|
Tstamp BpfTimeval
|
||||||
|
Caplen uint32
|
||||||
|
Datalen uint32
|
||||||
|
Hdrlen uint16
|
||||||
|
Pad_cgo_0 [6]byte
|
||||||
|
}
|
||||||
|
|
||||||
|
type BpfTimeval struct {
|
||||||
|
Sec int64
|
||||||
|
Usec int64
|
||||||
|
}
|
||||||
|
|
||||||
|
type Termios struct {
|
||||||
|
Iflag uint32
|
||||||
|
Oflag uint32
|
||||||
|
Cflag uint32
|
||||||
|
Lflag uint32
|
||||||
|
Cc [20]uint8
|
||||||
|
Ispeed int32
|
||||||
|
Ospeed int32
|
||||||
|
}
|
||||||
|
|
||||||
|
type Winsize struct {
|
||||||
|
Row uint16
|
||||||
|
Col uint16
|
||||||
|
Xpixel uint16
|
||||||
|
Ypixel uint16
|
||||||
|
}
|
||||||
|
|
||||||
|
type Ptmget struct {
|
||||||
|
Cfd int32
|
||||||
|
Sfd int32
|
||||||
|
Cn [1024]byte
|
||||||
|
Sn [1024]byte
|
||||||
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
AT_FDCWD = -0x64
|
||||||
|
AT_SYMLINK_NOFOLLOW = 0x200
|
||||||
|
)
|
||||||
|
|
||||||
|
type PollFd struct {
|
||||||
|
Fd int32
|
||||||
|
Events int16
|
||||||
|
Revents int16
|
||||||
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
POLLERR = 0x8
|
||||||
|
POLLHUP = 0x10
|
||||||
|
POLLIN = 0x1
|
||||||
|
POLLNVAL = 0x20
|
||||||
|
POLLOUT = 0x4
|
||||||
|
POLLPRI = 0x2
|
||||||
|
POLLRDBAND = 0x80
|
||||||
|
POLLRDNORM = 0x40
|
||||||
|
POLLWRBAND = 0x100
|
||||||
|
POLLWRNORM = 0x4
|
||||||
|
)
|
||||||
|
|
||||||
|
type Sysctlnode struct {
|
||||||
|
Flags uint32
|
||||||
|
Num int32
|
||||||
|
Name [32]int8
|
||||||
|
Ver uint32
|
||||||
|
X__rsvd uint32
|
||||||
|
Un [16]byte
|
||||||
|
X_sysctl_size [8]byte
|
||||||
|
X_sysctl_func [8]byte
|
||||||
|
X_sysctl_parent [8]byte
|
||||||
|
X_sysctl_desc [8]byte
|
||||||
|
}
|
||||||
|
|
||||||
|
type Utsname struct {
|
||||||
|
Sysname [256]byte
|
||||||
|
Nodename [256]byte
|
||||||
|
Release [256]byte
|
||||||
|
Version [256]byte
|
||||||
|
Machine [256]byte
|
||||||
|
}
|
||||||
|
|
||||||
|
const SizeofClockinfo = 0x14
|
||||||
|
|
||||||
|
type Clockinfo struct {
|
||||||
|
Hz int32
|
||||||
|
Tick int32
|
||||||
|
Tickadj int32
|
||||||
|
Stathz int32
|
||||||
|
Profhz int32
|
||||||
|
}
|
4
vendor/golang.org/x/text/unicode/norm/composition.go
generated
vendored
4
vendor/golang.org/x/text/unicode/norm/composition.go
generated
vendored
|
@ -407,7 +407,7 @@ func decomposeHangul(buf []byte, r rune) int {
|
||||||
|
|
||||||
// decomposeHangul algorithmically decomposes a Hangul rune into
|
// decomposeHangul algorithmically decomposes a Hangul rune into
|
||||||
// its Jamo components.
|
// its Jamo components.
|
||||||
// See http://unicode.org/reports/tr15/#Hangul for details on decomposing Hangul.
|
// See https://unicode.org/reports/tr15/#Hangul for details on decomposing Hangul.
|
||||||
func (rb *reorderBuffer) decomposeHangul(r rune) {
|
func (rb *reorderBuffer) decomposeHangul(r rune) {
|
||||||
r -= hangulBase
|
r -= hangulBase
|
||||||
x := r % jamoTCount
|
x := r % jamoTCount
|
||||||
|
@ -420,7 +420,7 @@ func (rb *reorderBuffer) decomposeHangul(r rune) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// combineHangul algorithmically combines Jamo character components into Hangul.
|
// combineHangul algorithmically combines Jamo character components into Hangul.
|
||||||
// See http://unicode.org/reports/tr15/#Hangul for details on combining Hangul.
|
// See https://unicode.org/reports/tr15/#Hangul for details on combining Hangul.
|
||||||
func (rb *reorderBuffer) combineHangul(s, i, k int) {
|
func (rb *reorderBuffer) combineHangul(s, i, k int) {
|
||||||
b := rb.rune[:]
|
b := rb.rune[:]
|
||||||
bn := rb.nrune
|
bn := rb.nrune
|
||||||
|
|
14
vendor/golang.org/x/text/unicode/norm/forminfo.go
generated
vendored
14
vendor/golang.org/x/text/unicode/norm/forminfo.go
generated
vendored
|
@ -4,6 +4,8 @@
|
||||||
|
|
||||||
package norm
|
package norm
|
||||||
|
|
||||||
|
import "encoding/binary"
|
||||||
|
|
||||||
// This file contains Form-specific logic and wrappers for data in tables.go.
|
// This file contains Form-specific logic and wrappers for data in tables.go.
|
||||||
|
|
||||||
// Rune info is stored in a separate trie per composing form. A composing form
|
// Rune info is stored in a separate trie per composing form. A composing form
|
||||||
|
@ -178,6 +180,17 @@ func (p Properties) TrailCCC() uint8 {
|
||||||
return ccc[p.tccc]
|
return ccc[p.tccc]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func buildRecompMap() {
|
||||||
|
recompMap = make(map[uint32]rune, len(recompMapPacked)/8)
|
||||||
|
var buf [8]byte
|
||||||
|
for i := 0; i < len(recompMapPacked); i += 8 {
|
||||||
|
copy(buf[:], recompMapPacked[i:i+8])
|
||||||
|
key := binary.BigEndian.Uint32(buf[:4])
|
||||||
|
val := binary.BigEndian.Uint32(buf[4:])
|
||||||
|
recompMap[key] = rune(val)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Recomposition
|
// Recomposition
|
||||||
// We use 32-bit keys instead of 64-bit for the two codepoint keys.
|
// We use 32-bit keys instead of 64-bit for the two codepoint keys.
|
||||||
// This clips off the bits of three entries, but we know this will not
|
// This clips off the bits of three entries, but we know this will not
|
||||||
|
@ -188,6 +201,7 @@ func (p Properties) TrailCCC() uint8 {
|
||||||
// combine returns the combined rune or 0 if it doesn't exist.
|
// combine returns the combined rune or 0 if it doesn't exist.
|
||||||
func combine(a, b rune) rune {
|
func combine(a, b rune) rune {
|
||||||
key := uint32(uint16(a))<<16 + uint32(uint16(b))
|
key := uint32(uint16(a))<<16 + uint32(uint16(b))
|
||||||
|
recompMapOnce.Do(buildRecompMap)
|
||||||
return recompMap[key]
|
return recompMap[key]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
20
vendor/golang.org/x/text/unicode/norm/maketables.go
generated
vendored
20
vendor/golang.org/x/text/unicode/norm/maketables.go
generated
vendored
|
@ -12,6 +12,7 @@ package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
|
"encoding/binary"
|
||||||
"flag"
|
"flag"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
|
@ -261,7 +262,7 @@ func compactCCC() {
|
||||||
|
|
||||||
// CompositionExclusions.txt has form:
|
// CompositionExclusions.txt has form:
|
||||||
// 0958 # ...
|
// 0958 # ...
|
||||||
// See http://unicode.org/reports/tr44/ for full explanation
|
// See https://unicode.org/reports/tr44/ for full explanation
|
||||||
func loadCompositionExclusions() {
|
func loadCompositionExclusions() {
|
||||||
f := gen.OpenUCDFile("CompositionExclusions.txt")
|
f := gen.OpenUCDFile("CompositionExclusions.txt")
|
||||||
defer f.Close()
|
defer f.Close()
|
||||||
|
@ -735,6 +736,8 @@ func makeTables() {
|
||||||
max = n
|
max = n
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
fmt.Fprintln(w, `import "sync"`)
|
||||||
|
fmt.Fprintln(w)
|
||||||
|
|
||||||
fmt.Fprintln(w, "const (")
|
fmt.Fprintln(w, "const (")
|
||||||
fmt.Fprintln(w, "\t// Version is the Unicode edition from which the tables are derived.")
|
fmt.Fprintln(w, "\t// Version is the Unicode edition from which the tables are derived.")
|
||||||
|
@ -782,16 +785,23 @@ func makeTables() {
|
||||||
sz := nrentries * 8
|
sz := nrentries * 8
|
||||||
size += sz
|
size += sz
|
||||||
fmt.Fprintf(w, "// recompMap: %d bytes (entries only)\n", sz)
|
fmt.Fprintf(w, "// recompMap: %d bytes (entries only)\n", sz)
|
||||||
fmt.Fprintln(w, "var recompMap = map[uint32]rune{")
|
fmt.Fprintln(w, "var recompMap map[uint32]rune")
|
||||||
|
fmt.Fprintln(w, "var recompMapOnce sync.Once\n")
|
||||||
|
fmt.Fprintln(w, `const recompMapPacked = "" +`)
|
||||||
|
var buf [8]byte
|
||||||
for i, c := range chars {
|
for i, c := range chars {
|
||||||
f := c.forms[FCanonical]
|
f := c.forms[FCanonical]
|
||||||
d := f.decomp
|
d := f.decomp
|
||||||
if !f.isOneWay && len(d) > 0 {
|
if !f.isOneWay && len(d) > 0 {
|
||||||
key := uint32(uint16(d[0]))<<16 + uint32(uint16(d[1]))
|
key := uint32(uint16(d[0]))<<16 + uint32(uint16(d[1]))
|
||||||
fmt.Fprintf(w, "0x%.8X: 0x%.4X,\n", key, i)
|
binary.BigEndian.PutUint32(buf[:4], key)
|
||||||
|
binary.BigEndian.PutUint32(buf[4:], uint32(i))
|
||||||
|
fmt.Fprintf(w, "\t\t%q + // 0x%.8X: 0x%.8X\n", string(buf[:]), key, uint32(i))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
fmt.Fprintf(w, "}\n\n")
|
// hack so we don't have to special case the trailing plus sign
|
||||||
|
fmt.Fprintf(w, ` ""`)
|
||||||
|
fmt.Fprintln(w)
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Fprintf(w, "// Total size of tables: %dKB (%d bytes)\n", (size+512)/1024, size)
|
fmt.Fprintf(w, "// Total size of tables: %dKB (%d bytes)\n", (size+512)/1024, size)
|
||||||
|
@ -857,7 +867,7 @@ func verifyComputed() {
|
||||||
// DerivedNormalizationProps.txt has form:
|
// DerivedNormalizationProps.txt has form:
|
||||||
// 00C0..00C5 ; NFD_QC; N # ...
|
// 00C0..00C5 ; NFD_QC; N # ...
|
||||||
// 0374 ; NFD_QC; N # ...
|
// 0374 ; NFD_QC; N # ...
|
||||||
// See http://unicode.org/reports/tr44/ for full explanation
|
// See https://unicode.org/reports/tr44/ for full explanation
|
||||||
func testDerived() {
|
func testDerived() {
|
||||||
f := gen.OpenUCDFile("DerivedNormalizationProps.txt")
|
f := gen.OpenUCDFile("DerivedNormalizationProps.txt")
|
||||||
defer f.Close()
|
defer f.Close()
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue