From 5c5163107cb31d83eb6cd05427e818182c1f6112 Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Tue, 2 Oct 2018 13:34:58 -0400 Subject: Temporary commit to swap branches Signed-off-by: Matthew Heon --- libpod/pod_easyjson.go | 747 ------------------------------------------------- 1 file changed, 747 deletions(-) delete mode 100644 libpod/pod_easyjson.go (limited to 'libpod/pod_easyjson.go') diff --git a/libpod/pod_easyjson.go b/libpod/pod_easyjson.go deleted file mode 100644 index 2891e51f2..000000000 --- a/libpod/pod_easyjson.go +++ /dev/null @@ -1,747 +0,0 @@ -// Code generated by easyjson for marshaling/unmarshaling. DO NOT EDIT. - -package libpod - -import ( - json "encoding/json" - easyjson "github.com/mailru/easyjson" - jlexer "github.com/mailru/easyjson/jlexer" - jwriter "github.com/mailru/easyjson/jwriter" -) - -// suppress unused package warning -var ( - _ *json.RawMessage - _ *jlexer.Lexer - _ *jwriter.Writer - _ easyjson.Marshaler -) - -func easyjsonBe091417DecodeGithubComContainersLibpodLibpod(in *jlexer.Lexer, out *podState) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeString() - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "cgroupPath": - out.CgroupPath = string(in.String()) - case "InfraContainerID": - out.InfraContainerID = string(in.String()) - default: - in.SkipRecursive() - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} -func easyjsonBe091417EncodeGithubComContainersLibpodLibpod(out *jwriter.Writer, in podState) { - out.RawByte('{') - first := true - _ = first - { - const prefix string = ",\"cgroupPath\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.CgroupPath)) - } - { - const prefix string = ",\"InfraContainerID\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.InfraContainerID)) - } - out.RawByte('}') -} - -// MarshalJSON supports json.Marshaler interface -func (v podState) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - easyjsonBe091417EncodeGithubComContainersLibpodLibpod(&w, v) - return w.Buffer.BuildBytes(), w.Error -} - -// MarshalEasyJSON supports easyjson.Marshaler interface -func (v podState) MarshalEasyJSON(w *jwriter.Writer) { - easyjsonBe091417EncodeGithubComContainersLibpodLibpod(w, v) -} - -// UnmarshalJSON supports json.Unmarshaler interface -func (v *podState) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - easyjsonBe091417DecodeGithubComContainersLibpodLibpod(&r, v) - return r.Error() -} - -// UnmarshalEasyJSON supports easyjson.Unmarshaler interface -func (v *podState) UnmarshalEasyJSON(l *jlexer.Lexer) { - easyjsonBe091417DecodeGithubComContainersLibpodLibpod(l, v) -} -func easyjsonBe091417DecodeGithubComContainersLibpodLibpod1(in *jlexer.Lexer, out *PodInspectState) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeString() - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "cgroupPath": - out.CgroupPath = string(in.String()) - case "infraContainerID": - out.InfraContainerID = string(in.String()) - default: - in.SkipRecursive() - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} -func easyjsonBe091417EncodeGithubComContainersLibpodLibpod1(out *jwriter.Writer, in PodInspectState) { - out.RawByte('{') - first := true - _ = first - { - const prefix string = ",\"cgroupPath\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.CgroupPath)) - } - { - const prefix string = ",\"infraContainerID\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.InfraContainerID)) - } - out.RawByte('}') -} - -// MarshalJSON supports json.Marshaler interface -func (v PodInspectState) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - easyjsonBe091417EncodeGithubComContainersLibpodLibpod1(&w, v) - return w.Buffer.BuildBytes(), w.Error -} - -// MarshalEasyJSON supports easyjson.Marshaler interface -func (v PodInspectState) MarshalEasyJSON(w *jwriter.Writer) { - easyjsonBe091417EncodeGithubComContainersLibpodLibpod1(w, v) -} - -// UnmarshalJSON supports json.Unmarshaler interface -func (v *PodInspectState) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - easyjsonBe091417DecodeGithubComContainersLibpodLibpod1(&r, v) - return r.Error() -} - -// UnmarshalEasyJSON supports easyjson.Unmarshaler interface -func (v *PodInspectState) UnmarshalEasyJSON(l *jlexer.Lexer) { - easyjsonBe091417DecodeGithubComContainersLibpodLibpod1(l, v) -} -func easyjsonBe091417DecodeGithubComContainersLibpodLibpod2(in *jlexer.Lexer, out *PodInspect) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeString() - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "Config": - if in.IsNull() { - in.Skip() - out.Config = nil - } else { - if out.Config == nil { - out.Config = new(PodConfig) - } - if data := in.Raw(); in.Ok() { - in.AddError((*out.Config).UnmarshalJSON(data)) - } - } - case "State": - if in.IsNull() { - in.Skip() - out.State = nil - } else { - if out.State == nil { - out.State = new(PodInspectState) - } - if data := in.Raw(); in.Ok() { - in.AddError((*out.State).UnmarshalJSON(data)) - } - } - case "Containers": - if in.IsNull() { - in.Skip() - out.Containers = nil - } else { - in.Delim('[') - if out.Containers == nil { - if !in.IsDelim(']') { - out.Containers = make([]PodContainerInfo, 0, 2) - } else { - out.Containers = []PodContainerInfo{} - } - } else { - out.Containers = (out.Containers)[:0] - } - for !in.IsDelim(']') { - var v1 PodContainerInfo - if data := in.Raw(); in.Ok() { - in.AddError((v1).UnmarshalJSON(data)) - } - out.Containers = append(out.Containers, v1) - in.WantComma() - } - in.Delim(']') - } - default: - in.SkipRecursive() - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} -func easyjsonBe091417EncodeGithubComContainersLibpodLibpod2(out *jwriter.Writer, in PodInspect) { - out.RawByte('{') - first := true - _ = first - { - const prefix string = ",\"Config\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - if in.Config == nil { - out.RawString("null") - } else { - out.Raw((*in.Config).MarshalJSON()) - } - } - { - const prefix string = ",\"State\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - if in.State == nil { - out.RawString("null") - } else { - out.Raw((*in.State).MarshalJSON()) - } - } - { - const prefix string = ",\"Containers\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - if in.Containers == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { - out.RawString("null") - } else { - out.RawByte('[') - for v2, v3 := range in.Containers { - if v2 > 0 { - out.RawByte(',') - } - out.Raw((v3).MarshalJSON()) - } - out.RawByte(']') - } - } - out.RawByte('}') -} - -// MarshalJSON supports json.Marshaler interface -func (v PodInspect) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - easyjsonBe091417EncodeGithubComContainersLibpodLibpod2(&w, v) - return w.Buffer.BuildBytes(), w.Error -} - -// MarshalEasyJSON supports easyjson.Marshaler interface -func (v PodInspect) MarshalEasyJSON(w *jwriter.Writer) { - easyjsonBe091417EncodeGithubComContainersLibpodLibpod2(w, v) -} - -// UnmarshalJSON supports json.Unmarshaler interface -func (v *PodInspect) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - easyjsonBe091417DecodeGithubComContainersLibpodLibpod2(&r, v) - return r.Error() -} - -// UnmarshalEasyJSON supports easyjson.Unmarshaler interface -func (v *PodInspect) UnmarshalEasyJSON(l *jlexer.Lexer) { - easyjsonBe091417DecodeGithubComContainersLibpodLibpod2(l, v) -} -func easyjsonBe091417DecodeGithubComContainersLibpodLibpod3(in *jlexer.Lexer, out *PodContainerInfo) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeString() - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "id": - out.ID = string(in.String()) - case "state": - out.State = string(in.String()) - default: - in.SkipRecursive() - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} -func easyjsonBe091417EncodeGithubComContainersLibpodLibpod3(out *jwriter.Writer, in PodContainerInfo) { - out.RawByte('{') - first := true - _ = first - { - const prefix string = ",\"id\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.ID)) - } - { - const prefix string = ",\"state\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.State)) - } - out.RawByte('}') -} - -// MarshalJSON supports json.Marshaler interface -func (v PodContainerInfo) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - easyjsonBe091417EncodeGithubComContainersLibpodLibpod3(&w, v) - return w.Buffer.BuildBytes(), w.Error -} - -// MarshalEasyJSON supports easyjson.Marshaler interface -func (v PodContainerInfo) MarshalEasyJSON(w *jwriter.Writer) { - easyjsonBe091417EncodeGithubComContainersLibpodLibpod3(w, v) -} - -// UnmarshalJSON supports json.Unmarshaler interface -func (v *PodContainerInfo) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - easyjsonBe091417DecodeGithubComContainersLibpodLibpod3(&r, v) - return r.Error() -} - -// UnmarshalEasyJSON supports easyjson.Unmarshaler interface -func (v *PodContainerInfo) UnmarshalEasyJSON(l *jlexer.Lexer) { - easyjsonBe091417DecodeGithubComContainersLibpodLibpod3(l, v) -} -func easyjsonBe091417DecodeGithubComContainersLibpodLibpod4(in *jlexer.Lexer, out *PodConfig) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeString() - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "id": - out.ID = string(in.String()) - case "name": - out.Name = string(in.String()) - case "namespace": - out.Namespace = string(in.String()) - case "labels": - if in.IsNull() { - in.Skip() - } else { - in.Delim('{') - if !in.IsDelim('}') { - out.Labels = make(map[string]string) - } else { - out.Labels = nil - } - for !in.IsDelim('}') { - key := string(in.String()) - in.WantColon() - var v4 string - v4 = string(in.String()) - (out.Labels)[key] = v4 - in.WantComma() - } - in.Delim('}') - } - case "cgroupParent": - out.CgroupParent = string(in.String()) - case "sharesCgroup": - out.UsePodCgroup = bool(in.Bool()) - case "sharesPid": - out.UsePodPID = bool(in.Bool()) - case "sharesIpc": - out.UsePodIPC = bool(in.Bool()) - case "sharesNet": - out.UsePodNet = bool(in.Bool()) - case "sharesMnt": - out.UsePodMount = bool(in.Bool()) - case "sharesUser": - out.UsePodUser = bool(in.Bool()) - case "sharesUts": - out.UsePodUTS = bool(in.Bool()) - case "infraConfig": - if in.IsNull() { - in.Skip() - out.InfraContainer = nil - } else { - if out.InfraContainer == nil { - out.InfraContainer = new(InfraContainerConfig) - } - easyjsonBe091417DecodeGithubComContainersLibpodLibpod5(in, &*out.InfraContainer) - } - case "created": - if data := in.Raw(); in.Ok() { - in.AddError((out.CreatedTime).UnmarshalJSON(data)) - } - default: - in.SkipRecursive() - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} -func easyjsonBe091417EncodeGithubComContainersLibpodLibpod4(out *jwriter.Writer, in PodConfig) { - out.RawByte('{') - first := true - _ = first - { - const prefix string = ",\"id\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.ID)) - } - { - const prefix string = ",\"name\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.Name)) - } - if in.Namespace != "" { - const prefix string = ",\"namespace\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.Namespace)) - } - { - const prefix string = ",\"labels\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - if in.Labels == nil && (out.Flags&jwriter.NilMapAsEmpty) == 0 { - out.RawString(`null`) - } else { - out.RawByte('{') - v5First := true - for v5Name, v5Value := range in.Labels { - if v5First { - v5First = false - } else { - out.RawByte(',') - } - out.String(string(v5Name)) - out.RawByte(':') - out.String(string(v5Value)) - } - out.RawByte('}') - } - } - { - const prefix string = ",\"cgroupParent\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.String(string(in.CgroupParent)) - } - if in.UsePodCgroup { - const prefix string = ",\"sharesCgroup\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.Bool(bool(in.UsePodCgroup)) - } - if in.UsePodPID { - const prefix string = ",\"sharesPid\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.Bool(bool(in.UsePodPID)) - } - if in.UsePodIPC { - const prefix string = ",\"sharesIpc\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.Bool(bool(in.UsePodIPC)) - } - if in.UsePodNet { - const prefix string = ",\"sharesNet\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.Bool(bool(in.UsePodNet)) - } - if in.UsePodMount { - const prefix string = ",\"sharesMnt\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.Bool(bool(in.UsePodMount)) - } - if in.UsePodUser { - const prefix string = ",\"sharesUser\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.Bool(bool(in.UsePodUser)) - } - if in.UsePodUTS { - const prefix string = ",\"sharesUts\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.Bool(bool(in.UsePodUTS)) - } - { - const prefix string = ",\"infraConfig\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - if in.InfraContainer == nil { - out.RawString("null") - } else { - easyjsonBe091417EncodeGithubComContainersLibpodLibpod5(out, *in.InfraContainer) - } - } - { - const prefix string = ",\"created\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.Raw((in.CreatedTime).MarshalJSON()) - } - out.RawByte('}') -} - -// MarshalJSON supports json.Marshaler interface -func (v PodConfig) MarshalJSON() ([]byte, error) { - w := jwriter.Writer{} - easyjsonBe091417EncodeGithubComContainersLibpodLibpod4(&w, v) - return w.Buffer.BuildBytes(), w.Error -} - -// MarshalEasyJSON supports easyjson.Marshaler interface -func (v PodConfig) MarshalEasyJSON(w *jwriter.Writer) { - easyjsonBe091417EncodeGithubComContainersLibpodLibpod4(w, v) -} - -// UnmarshalJSON supports json.Unmarshaler interface -func (v *PodConfig) UnmarshalJSON(data []byte) error { - r := jlexer.Lexer{Data: data} - easyjsonBe091417DecodeGithubComContainersLibpodLibpod4(&r, v) - return r.Error() -} - -// UnmarshalEasyJSON supports easyjson.Unmarshaler interface -func (v *PodConfig) UnmarshalEasyJSON(l *jlexer.Lexer) { - easyjsonBe091417DecodeGithubComContainersLibpodLibpod4(l, v) -} -func easyjsonBe091417DecodeGithubComContainersLibpodLibpod5(in *jlexer.Lexer, out *InfraContainerConfig) { - isTopLevel := in.IsStart() - if in.IsNull() { - if isTopLevel { - in.Consumed() - } - in.Skip() - return - } - in.Delim('{') - for !in.IsDelim('}') { - key := in.UnsafeString() - in.WantColon() - if in.IsNull() { - in.Skip() - in.WantComma() - continue - } - switch key { - case "makeInfraContainer": - out.HasInfraContainer = bool(in.Bool()) - default: - in.SkipRecursive() - } - in.WantComma() - } - in.Delim('}') - if isTopLevel { - in.Consumed() - } -} -func easyjsonBe091417EncodeGithubComContainersLibpodLibpod5(out *jwriter.Writer, in InfraContainerConfig) { - out.RawByte('{') - first := true - _ = first - { - const prefix string = ",\"makeInfraContainer\":" - if first { - first = false - out.RawString(prefix[1:]) - } else { - out.RawString(prefix) - } - out.Bool(bool(in.HasInfraContainer)) - } - out.RawByte('}') -} -- cgit v1.2.3-54-g00ecf From 4882a6dd9dc8ee5475ce8a00c52a522e661dd387 Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Wed, 10 Oct 2018 14:04:17 -0400 Subject: Add --ip flag and plumbing into libpod Add the --ip flag back with bash completions. Manpages still missing. Add plumbing to pass appropriate the appropriate option down to libpod to connect the flag to backend logic added in the previous commits. Signed-off-by: Matthew Heon --- cmd/podman/common.go | 4 + completions/bash/podman | 1 + libpod/container_easyjson.go | 8132 +++++++++++++++++++++++++++++++++++++++++- libpod/pod_easyjson.go | 749 ++++ pkg/spec/createconfig.go | 13 +- 5 files changed, 8876 insertions(+), 23 deletions(-) create mode 100644 libpod/pod_easyjson.go (limited to 'libpod/pod_easyjson.go') diff --git a/cmd/podman/common.go b/cmd/podman/common.go index 9ab0e57e5..c1e15e2fb 100644 --- a/cmd/podman/common.go +++ b/cmd/podman/common.go @@ -248,6 +248,10 @@ var createFlags = []cli.Flag{ Name: "interactive, i", Usage: "Keep STDIN open even if not attached", }, + cli.StringFlag{ + Name: "ip", + Usage: "Specify a static IPv4 address for the container", + }, cli.StringFlag{ Name: "ipc", Usage: "IPC namespace to use", diff --git a/completions/bash/podman b/completions/bash/podman index 604a25f5d..5cfed348f 100644 --- a/completions/bash/podman +++ b/completions/bash/podman @@ -1512,6 +1512,7 @@ _podman_container_run() { --hostname -h --image-volume --init-path + --ip --ipc --kernel-memory --label-file diff --git a/libpod/container_easyjson.go b/libpod/container_easyjson.go index 61fa33a30..f78366065 100644 --- a/libpod/container_easyjson.go +++ b/libpod/container_easyjson.go @@ -1,32 +1,8124 @@ // +build seccomp ostree selinux varlink exclude_graphdriver_devicemapper -// TEMPORARY AUTOGENERATED FILE: easyjson stub code to make the package -// compilable during generation. +// Code generated by easyjson for marshaling/unmarshaling. DO NOT EDIT. -package libpod +package libpod import ( - "github.com/mailru/easyjson/jwriter" - "github.com/mailru/easyjson/jlexer" + json "encoding/json" + types "github.com/containernetworking/cni/pkg/types" + current "github.com/containernetworking/cni/pkg/types/current" + storage "github.com/containers/storage" + idtools "github.com/containers/storage/pkg/idtools" + ocicni "github.com/cri-o/ocicni/pkg/ocicni" + easyjson "github.com/mailru/easyjson" + jlexer "github.com/mailru/easyjson/jlexer" + jwriter "github.com/mailru/easyjson/jwriter" + specs_go "github.com/opencontainers/runtime-spec/specs-go" + net "net" + os "os" ) -func ( ContainerConfig ) MarshalJSON() ([]byte, error) { return nil, nil } -func (* ContainerConfig ) UnmarshalJSON([]byte) error { return nil } -func ( ContainerConfig ) MarshalEasyJSON(w *jwriter.Writer) {} -func (* ContainerConfig ) UnmarshalEasyJSON(l *jlexer.Lexer) {} +// suppress unused package warning +var ( + _ *json.RawMessage + _ *jlexer.Lexer + _ *jwriter.Writer + _ easyjson.Marshaler +) + +func easyjson1dbef17bDecodeGithubComContainersLibpodLibpod(in *jlexer.Lexer, out *containerState) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "state": + out.State = ContainerStatus(in.Int()) + case "configPath": + out.ConfigPath = string(in.String()) + case "runDir": + out.RunDir = string(in.String()) + case "destinationRunDir": + out.DestinationRunDir = string(in.String()) + case "mounted": + out.Mounted = bool(in.Bool()) + case "mountPoint": + out.Mountpoint = string(in.String()) + case "realMountPoint": + out.RealMountpoint = string(in.String()) + case "startedTime": + if data := in.Raw(); in.Ok() { + in.AddError((out.StartedTime).UnmarshalJSON(data)) + } + case "finishedTime": + if data := in.Raw(); in.Ok() { + in.AddError((out.FinishedTime).UnmarshalJSON(data)) + } + case "exitCode": + out.ExitCode = int32(in.Int32()) + case "exited": + out.Exited = bool(in.Bool()) + case "oomKilled": + out.OOMKilled = bool(in.Bool()) + case "pid": + out.PID = int(in.Int()) + case "execSessions": + if in.IsNull() { + in.Skip() + } else { + in.Delim('{') + if !in.IsDelim('}') { + out.ExecSessions = make(map[string]*ExecSession) + } else { + out.ExecSessions = nil + } + for !in.IsDelim('}') { + key := string(in.String()) + in.WantColon() + var v1 *ExecSession + if in.IsNull() { + in.Skip() + v1 = nil + } else { + if v1 == nil { + v1 = new(ExecSession) + } + if data := in.Raw(); in.Ok() { + in.AddError((*v1).UnmarshalJSON(data)) + } + } + (out.ExecSessions)[key] = v1 + in.WantComma() + } + in.Delim('}') + } + case "networkResults": + if in.IsNull() { + in.Skip() + out.NetworkStatus = nil + } else { + in.Delim('[') + if out.NetworkStatus == nil { + if !in.IsDelim(']') { + out.NetworkStatus = make([]*current.Result, 0, 8) + } else { + out.NetworkStatus = []*current.Result{} + } + } else { + out.NetworkStatus = (out.NetworkStatus)[:0] + } + for !in.IsDelim(']') { + var v2 *current.Result + if in.IsNull() { + in.Skip() + v2 = nil + } else { + if v2 == nil { + v2 = new(current.Result) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypesCurrent(in, &*v2) + } + out.NetworkStatus = append(out.NetworkStatus, v2) + in.WantComma() + } + in.Delim(']') + } + case "bindMounts": + if in.IsNull() { + in.Skip() + } else { + in.Delim('{') + if !in.IsDelim('}') { + out.BindMounts = make(map[string]string) + } else { + out.BindMounts = nil + } + for !in.IsDelim('}') { + key := string(in.String()) + in.WantColon() + var v3 string + v3 = string(in.String()) + (out.BindMounts)[key] = v3 + in.WantComma() + } + in.Delim('}') + } + case "userNSRoot": + out.UserNSRoot = string(in.String()) + case "extensionStageHooks": + if in.IsNull() { + in.Skip() + } else { + in.Delim('{') + if !in.IsDelim('}') { + out.ExtensionStageHooks = make(map[string][]specs_go.Hook) + } else { + out.ExtensionStageHooks = nil + } + for !in.IsDelim('}') { + key := string(in.String()) + in.WantColon() + var v4 []specs_go.Hook + if in.IsNull() { + in.Skip() + v4 = nil + } else { + in.Delim('[') + if v4 == nil { + if !in.IsDelim(']') { + v4 = make([]specs_go.Hook, 0, 1) + } else { + v4 = []specs_go.Hook{} + } + } else { + v4 = (v4)[:0] + } + for !in.IsDelim(']') { + var v5 specs_go.Hook + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(in, &v5) + v4 = append(v4, v5) + in.WantComma() + } + in.Delim(']') + } + (out.ExtensionStageHooks)[key] = v4 + in.WantComma() + } + in.Delim('}') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodLibpod(out *jwriter.Writer, in containerState) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"state\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int(int(in.State)) + } + if in.ConfigPath != "" { + const prefix string = ",\"configPath\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ConfigPath)) + } + if in.RunDir != "" { + const prefix string = ",\"runDir\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.RunDir)) + } + if in.DestinationRunDir != "" { + const prefix string = ",\"destinationRunDir\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.DestinationRunDir)) + } + if in.Mounted { + const prefix string = ",\"mounted\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.Mounted)) + } + if in.Mountpoint != "" { + const prefix string = ",\"mountPoint\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Mountpoint)) + } + if in.RealMountpoint != "" { + const prefix string = ",\"realMountPoint\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.RealMountpoint)) + } + if true { + const prefix string = ",\"startedTime\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Raw((in.StartedTime).MarshalJSON()) + } + if true { + const prefix string = ",\"finishedTime\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Raw((in.FinishedTime).MarshalJSON()) + } + if in.ExitCode != 0 { + const prefix string = ",\"exitCode\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int32(int32(in.ExitCode)) + } + if in.Exited { + const prefix string = ",\"exited\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.Exited)) + } + if in.OOMKilled { + const prefix string = ",\"oomKilled\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.OOMKilled)) + } + if in.PID != 0 { + const prefix string = ",\"pid\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int(int(in.PID)) + } + if len(in.ExecSessions) != 0 { + const prefix string = ",\"execSessions\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('{') + v6First := true + for v6Name, v6Value := range in.ExecSessions { + if v6First { + v6First = false + } else { + out.RawByte(',') + } + out.String(string(v6Name)) + out.RawByte(':') + if v6Value == nil { + out.RawString("null") + } else { + out.Raw((*v6Value).MarshalJSON()) + } + } + out.RawByte('}') + } + } + if len(in.NetworkStatus) != 0 { + const prefix string = ",\"networkResults\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v7, v8 := range in.NetworkStatus { + if v7 > 0 { + out.RawByte(',') + } + if v8 == nil { + out.RawString("null") + } else { + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypesCurrent(out, *v8) + } + } + out.RawByte(']') + } + } + if len(in.BindMounts) != 0 { + const prefix string = ",\"bindMounts\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('{') + v9First := true + for v9Name, v9Value := range in.BindMounts { + if v9First { + v9First = false + } else { + out.RawByte(',') + } + out.String(string(v9Name)) + out.RawByte(':') + out.String(string(v9Value)) + } + out.RawByte('}') + } + } + if in.UserNSRoot != "" { + const prefix string = ",\"userNSRoot\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.UserNSRoot)) + } + if len(in.ExtensionStageHooks) != 0 { + const prefix string = ",\"extensionStageHooks\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('{') + v10First := true + for v10Name, v10Value := range in.ExtensionStageHooks { + if v10First { + v10First = false + } else { + out.RawByte(',') + } + out.String(string(v10Name)) + out.RawByte(':') + if v10Value == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v11, v12 := range v10Value { + if v11 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(out, v12) + } + out.RawByte(']') + } + } + out.RawByte('}') + } + } + out.RawByte('}') +} + +// MarshalJSON supports json.Marshaler interface +func (v containerState) MarshalJSON() ([]byte, error) { + w := jwriter.Writer{} + easyjson1dbef17bEncodeGithubComContainersLibpodLibpod(&w, v) + return w.Buffer.BuildBytes(), w.Error +} + +// MarshalEasyJSON supports easyjson.Marshaler interface +func (v containerState) MarshalEasyJSON(w *jwriter.Writer) { + easyjson1dbef17bEncodeGithubComContainersLibpodLibpod(w, v) +} + +// UnmarshalJSON supports json.Unmarshaler interface +func (v *containerState) UnmarshalJSON(data []byte) error { + r := jlexer.Lexer{Data: data} + easyjson1dbef17bDecodeGithubComContainersLibpodLibpod(&r, v) + return r.Error() +} + +// UnmarshalEasyJSON supports easyjson.Unmarshaler interface +func (v *containerState) UnmarshalEasyJSON(l *jlexer.Lexer) { + easyjson1dbef17bDecodeGithubComContainersLibpodLibpod(l, v) +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(in *jlexer.Lexer, out *specs_go.Hook) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "path": + out.Path = string(in.String()) + case "args": + if in.IsNull() { + in.Skip() + out.Args = nil + } else { + in.Delim('[') + if out.Args == nil { + if !in.IsDelim(']') { + out.Args = make([]string, 0, 4) + } else { + out.Args = []string{} + } + } else { + out.Args = (out.Args)[:0] + } + for !in.IsDelim(']') { + var v13 string + v13 = string(in.String()) + out.Args = append(out.Args, v13) + in.WantComma() + } + in.Delim(']') + } + case "env": + if in.IsNull() { + in.Skip() + out.Env = nil + } else { + in.Delim('[') + if out.Env == nil { + if !in.IsDelim(']') { + out.Env = make([]string, 0, 4) + } else { + out.Env = []string{} + } + } else { + out.Env = (out.Env)[:0] + } + for !in.IsDelim(']') { + var v14 string + v14 = string(in.String()) + out.Env = append(out.Env, v14) + in.WantComma() + } + in.Delim(']') + } + case "timeout": + if in.IsNull() { + in.Skip() + out.Timeout = nil + } else { + if out.Timeout == nil { + out.Timeout = new(int) + } + *out.Timeout = int(in.Int()) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(out *jwriter.Writer, in specs_go.Hook) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"path\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Path)) + } + if len(in.Args) != 0 { + const prefix string = ",\"args\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v15, v16 := range in.Args { + if v15 > 0 { + out.RawByte(',') + } + out.String(string(v16)) + } + out.RawByte(']') + } + } + if len(in.Env) != 0 { + const prefix string = ",\"env\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v17, v18 := range in.Env { + if v17 > 0 { + out.RawByte(',') + } + out.String(string(v18)) + } + out.RawByte(']') + } + } + if in.Timeout != nil { + const prefix string = ",\"timeout\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int(int(*in.Timeout)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypesCurrent(in *jlexer.Lexer, out *current.Result) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "cniVersion": + out.CNIVersion = string(in.String()) + case "interfaces": + if in.IsNull() { + in.Skip() + out.Interfaces = nil + } else { + in.Delim('[') + if out.Interfaces == nil { + if !in.IsDelim(']') { + out.Interfaces = make([]*current.Interface, 0, 8) + } else { + out.Interfaces = []*current.Interface{} + } + } else { + out.Interfaces = (out.Interfaces)[:0] + } + for !in.IsDelim(']') { + var v19 *current.Interface + if in.IsNull() { + in.Skip() + v19 = nil + } else { + if v19 == nil { + v19 = new(current.Interface) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypesCurrent1(in, &*v19) + } + out.Interfaces = append(out.Interfaces, v19) + in.WantComma() + } + in.Delim(']') + } + case "ips": + if in.IsNull() { + in.Skip() + out.IPs = nil + } else { + in.Delim('[') + if out.IPs == nil { + if !in.IsDelim(']') { + out.IPs = make([]*current.IPConfig, 0, 8) + } else { + out.IPs = []*current.IPConfig{} + } + } else { + out.IPs = (out.IPs)[:0] + } + for !in.IsDelim(']') { + var v20 *current.IPConfig + if in.IsNull() { + in.Skip() + v20 = nil + } else { + if v20 == nil { + v20 = new(current.IPConfig) + } + if data := in.Raw(); in.Ok() { + in.AddError((*v20).UnmarshalJSON(data)) + } + } + out.IPs = append(out.IPs, v20) + in.WantComma() + } + in.Delim(']') + } + case "routes": + if in.IsNull() { + in.Skip() + out.Routes = nil + } else { + in.Delim('[') + if out.Routes == nil { + if !in.IsDelim(']') { + out.Routes = make([]*types.Route, 0, 8) + } else { + out.Routes = []*types.Route{} + } + } else { + out.Routes = (out.Routes)[:0] + } + for !in.IsDelim(']') { + var v21 *types.Route + if in.IsNull() { + in.Skip() + v21 = nil + } else { + if v21 == nil { + v21 = new(types.Route) + } + if data := in.Raw(); in.Ok() { + in.AddError((*v21).UnmarshalJSON(data)) + } + } + out.Routes = append(out.Routes, v21) + in.WantComma() + } + in.Delim(']') + } + case "dns": + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypes(in, &out.DNS) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypesCurrent(out *jwriter.Writer, in current.Result) { + out.RawByte('{') + first := true + _ = first + if in.CNIVersion != "" { + const prefix string = ",\"cniVersion\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.CNIVersion)) + } + if len(in.Interfaces) != 0 { + const prefix string = ",\"interfaces\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v22, v23 := range in.Interfaces { + if v22 > 0 { + out.RawByte(',') + } + if v23 == nil { + out.RawString("null") + } else { + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypesCurrent1(out, *v23) + } + } + out.RawByte(']') + } + } + if len(in.IPs) != 0 { + const prefix string = ",\"ips\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v24, v25 := range in.IPs { + if v24 > 0 { + out.RawByte(',') + } + if v25 == nil { + out.RawString("null") + } else { + out.Raw((*v25).MarshalJSON()) + } + } + out.RawByte(']') + } + } + if len(in.Routes) != 0 { + const prefix string = ",\"routes\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v26, v27 := range in.Routes { + if v26 > 0 { + out.RawByte(',') + } + if v27 == nil { + out.RawString("null") + } else { + out.Raw((*v27).MarshalJSON()) + } + } + out.RawByte(']') + } + } + if true { + const prefix string = ",\"dns\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypes(out, in.DNS) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypes(in *jlexer.Lexer, out *types.DNS) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "nameservers": + if in.IsNull() { + in.Skip() + out.Nameservers = nil + } else { + in.Delim('[') + if out.Nameservers == nil { + if !in.IsDelim(']') { + out.Nameservers = make([]string, 0, 4) + } else { + out.Nameservers = []string{} + } + } else { + out.Nameservers = (out.Nameservers)[:0] + } + for !in.IsDelim(']') { + var v28 string + v28 = string(in.String()) + out.Nameservers = append(out.Nameservers, v28) + in.WantComma() + } + in.Delim(']') + } + case "domain": + out.Domain = string(in.String()) + case "search": + if in.IsNull() { + in.Skip() + out.Search = nil + } else { + in.Delim('[') + if out.Search == nil { + if !in.IsDelim(']') { + out.Search = make([]string, 0, 4) + } else { + out.Search = []string{} + } + } else { + out.Search = (out.Search)[:0] + } + for !in.IsDelim(']') { + var v29 string + v29 = string(in.String()) + out.Search = append(out.Search, v29) + in.WantComma() + } + in.Delim(']') + } + case "options": + if in.IsNull() { + in.Skip() + out.Options = nil + } else { + in.Delim('[') + if out.Options == nil { + if !in.IsDelim(']') { + out.Options = make([]string, 0, 4) + } else { + out.Options = []string{} + } + } else { + out.Options = (out.Options)[:0] + } + for !in.IsDelim(']') { + var v30 string + v30 = string(in.String()) + out.Options = append(out.Options, v30) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypes(out *jwriter.Writer, in types.DNS) { + out.RawByte('{') + first := true + _ = first + if len(in.Nameservers) != 0 { + const prefix string = ",\"nameservers\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v31, v32 := range in.Nameservers { + if v31 > 0 { + out.RawByte(',') + } + out.String(string(v32)) + } + out.RawByte(']') + } + } + if in.Domain != "" { + const prefix string = ",\"domain\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Domain)) + } + if len(in.Search) != 0 { + const prefix string = ",\"search\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v33, v34 := range in.Search { + if v33 > 0 { + out.RawByte(',') + } + out.String(string(v34)) + } + out.RawByte(']') + } + } + if len(in.Options) != 0 { + const prefix string = ",\"options\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v35, v36 := range in.Options { + if v35 > 0 { + out.RawByte(',') + } + out.String(string(v36)) + } + out.RawByte(']') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypesCurrent1(in *jlexer.Lexer, out *current.Interface) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "name": + out.Name = string(in.String()) + case "mac": + out.Mac = string(in.String()) + case "sandbox": + out.Sandbox = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainernetworkingCniPkgTypesCurrent1(out *jwriter.Writer, in current.Interface) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"name\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Name)) + } + if in.Mac != "" { + const prefix string = ",\"mac\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Mac)) + } + if in.Sandbox != "" { + const prefix string = ",\"sandbox\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Sandbox)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodLibpod1(in *jlexer.Lexer, out *ExecSession) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "id": + out.ID = string(in.String()) + case "command": + if in.IsNull() { + in.Skip() + out.Command = nil + } else { + in.Delim('[') + if out.Command == nil { + if !in.IsDelim(']') { + out.Command = make([]string, 0, 4) + } else { + out.Command = []string{} + } + } else { + out.Command = (out.Command)[:0] + } + for !in.IsDelim(']') { + var v37 string + v37 = string(in.String()) + out.Command = append(out.Command, v37) + in.WantComma() + } + in.Delim(']') + } + case "pid": + out.PID = int(in.Int()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodLibpod1(out *jwriter.Writer, in ExecSession) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"id\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ID)) + } + { + const prefix string = ",\"command\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.Command == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v38, v39 := range in.Command { + if v38 > 0 { + out.RawByte(',') + } + out.String(string(v39)) + } + out.RawByte(']') + } + } + { + const prefix string = ",\"pid\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int(int(in.PID)) + } + out.RawByte('}') +} + +// MarshalJSON supports json.Marshaler interface +func (v ExecSession) MarshalJSON() ([]byte, error) { + w := jwriter.Writer{} + easyjson1dbef17bEncodeGithubComContainersLibpodLibpod1(&w, v) + return w.Buffer.BuildBytes(), w.Error +} + +// MarshalEasyJSON supports easyjson.Marshaler interface +func (v ExecSession) MarshalEasyJSON(w *jwriter.Writer) { + easyjson1dbef17bEncodeGithubComContainersLibpodLibpod1(w, v) +} + +// UnmarshalJSON supports json.Unmarshaler interface +func (v *ExecSession) UnmarshalJSON(data []byte) error { + r := jlexer.Lexer{Data: data} + easyjson1dbef17bDecodeGithubComContainersLibpodLibpod1(&r, v) + return r.Error() +} -type EasyJSON_exporter_ContainerConfig *ContainerConfig +// UnmarshalEasyJSON supports easyjson.Unmarshaler interface +func (v *ExecSession) UnmarshalEasyJSON(l *jlexer.Lexer) { + easyjson1dbef17bDecodeGithubComContainersLibpodLibpod1(l, v) +} +func easyjson1dbef17bDecodeGithubComContainersLibpodLibpod2(in *jlexer.Lexer, out *ContainerConfig) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "spec": + if in.IsNull() { + in.Skip() + out.Spec = nil + } else { + if out.Spec == nil { + out.Spec = new(specs_go.Spec) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo1(in, &*out.Spec) + } + case "id": + out.ID = string(in.String()) + case "name": + out.Name = string(in.String()) + case "pod": + out.Pod = string(in.String()) + case "namespace": + out.Namespace = string(in.String()) + case "idMappingsOptions": + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainersStorage(in, &out.IDMappings) + case "rootfsImageID": + out.RootfsImageID = string(in.String()) + case "rootfsImageName": + out.RootfsImageName = string(in.String()) + case "rootfs": + out.Rootfs = string(in.String()) + case "imageVolumes": + out.ImageVolumes = bool(in.Bool()) + case "ShmDir": + out.ShmDir = string(in.String()) + case "shmSize": + out.ShmSize = int64(in.Int64()) + case "staticDir": + out.StaticDir = string(in.String()) + case "mounts": + if in.IsNull() { + in.Skip() + out.Mounts = nil + } else { + in.Delim('[') + if out.Mounts == nil { + if !in.IsDelim(']') { + out.Mounts = make([]string, 0, 4) + } else { + out.Mounts = []string{} + } + } else { + out.Mounts = (out.Mounts)[:0] + } + for !in.IsDelim(']') { + var v40 string + v40 = string(in.String()) + out.Mounts = append(out.Mounts, v40) + in.WantComma() + } + in.Delim(']') + } + case "privileged": + out.Privileged = bool(in.Bool()) + case "ProcessLabel": + out.ProcessLabel = string(in.String()) + case "MountLabel": + out.MountLabel = string(in.String()) + case "user": + out.User = string(in.String()) + case "groups": + if in.IsNull() { + in.Skip() + out.Groups = nil + } else { + in.Delim('[') + if out.Groups == nil { + if !in.IsDelim(']') { + out.Groups = make([]string, 0, 4) + } else { + out.Groups = []string{} + } + } else { + out.Groups = (out.Groups)[:0] + } + for !in.IsDelim(']') { + var v41 string + v41 = string(in.String()) + out.Groups = append(out.Groups, v41) + in.WantComma() + } + in.Delim(']') + } + case "ipcNsCtr": + out.IPCNsCtr = string(in.String()) + case "mountNsCtr": + out.MountNsCtr = string(in.String()) + case "netNsCtr": + out.NetNsCtr = string(in.String()) + case "pidNsCtr": + out.PIDNsCtr = string(in.String()) + case "userNsCtr": + out.UserNsCtr = string(in.String()) + case "utsNsCtr": + out.UTSNsCtr = string(in.String()) + case "cgroupNsCtr": + out.CgroupNsCtr = string(in.String()) + case "Dependencies": + if in.IsNull() { + in.Skip() + out.Dependencies = nil + } else { + in.Delim('[') + if out.Dependencies == nil { + if !in.IsDelim(']') { + out.Dependencies = make([]string, 0, 4) + } else { + out.Dependencies = []string{} + } + } else { + out.Dependencies = (out.Dependencies)[:0] + } + for !in.IsDelim(']') { + var v42 string + v42 = string(in.String()) + out.Dependencies = append(out.Dependencies, v42) + in.WantComma() + } + in.Delim(']') + } + case "createNetNS": + out.CreateNetNS = bool(in.Bool()) + case "staticIP": + if data := in.UnsafeBytes(); in.Ok() { + in.AddError((out.StaticIP).UnmarshalText(data)) + } + case "portMappings": + if in.IsNull() { + in.Skip() + out.PortMappings = nil + } else { + in.Delim('[') + if out.PortMappings == nil { + if !in.IsDelim(']') { + out.PortMappings = make([]ocicni.PortMapping, 0, 1) + } else { + out.PortMappings = []ocicni.PortMapping{} + } + } else { + out.PortMappings = (out.PortMappings)[:0] + } + for !in.IsDelim(']') { + var v43 ocicni.PortMapping + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComCriOOcicniPkgOcicni(in, &v43) + out.PortMappings = append(out.PortMappings, v43) + in.WantComma() + } + in.Delim(']') + } + case "dnsServer": + if in.IsNull() { + in.Skip() + out.DNSServer = nil + } else { + in.Delim('[') + if out.DNSServer == nil { + if !in.IsDelim(']') { + out.DNSServer = make([]net.IP, 0, 2) + } else { + out.DNSServer = []net.IP{} + } + } else { + out.DNSServer = (out.DNSServer)[:0] + } + for !in.IsDelim(']') { + var v44 net.IP + if data := in.UnsafeBytes(); in.Ok() { + in.AddError((v44).UnmarshalText(data)) + } + out.DNSServer = append(out.DNSServer, v44) + in.WantComma() + } + in.Delim(']') + } + case "dnsSearch": + if in.IsNull() { + in.Skip() + out.DNSSearch = nil + } else { + in.Delim('[') + if out.DNSSearch == nil { + if !in.IsDelim(']') { + out.DNSSearch = make([]string, 0, 4) + } else { + out.DNSSearch = []string{} + } + } else { + out.DNSSearch = (out.DNSSearch)[:0] + } + for !in.IsDelim(']') { + var v45 string + v45 = string(in.String()) + out.DNSSearch = append(out.DNSSearch, v45) + in.WantComma() + } + in.Delim(']') + } + case "dnsOption": + if in.IsNull() { + in.Skip() + out.DNSOption = nil + } else { + in.Delim('[') + if out.DNSOption == nil { + if !in.IsDelim(']') { + out.DNSOption = make([]string, 0, 4) + } else { + out.DNSOption = []string{} + } + } else { + out.DNSOption = (out.DNSOption)[:0] + } + for !in.IsDelim(']') { + var v46 string + v46 = string(in.String()) + out.DNSOption = append(out.DNSOption, v46) + in.WantComma() + } + in.Delim(']') + } + case "hostsAdd": + if in.IsNull() { + in.Skip() + out.HostAdd = nil + } else { + in.Delim('[') + if out.HostAdd == nil { + if !in.IsDelim(']') { + out.HostAdd = make([]string, 0, 4) + } else { + out.HostAdd = []string{} + } + } else { + out.HostAdd = (out.HostAdd)[:0] + } + for !in.IsDelim(']') { + var v47 string + v47 = string(in.String()) + out.HostAdd = append(out.HostAdd, v47) + in.WantComma() + } + in.Delim(']') + } + case "networks": + if in.IsNull() { + in.Skip() + out.Networks = nil + } else { + in.Delim('[') + if out.Networks == nil { + if !in.IsDelim(']') { + out.Networks = make([]string, 0, 4) + } else { + out.Networks = []string{} + } + } else { + out.Networks = (out.Networks)[:0] + } + for !in.IsDelim(']') { + var v48 string + v48 = string(in.String()) + out.Networks = append(out.Networks, v48) + in.WantComma() + } + in.Delim(']') + } + case "userVolumes": + if in.IsNull() { + in.Skip() + out.UserVolumes = nil + } else { + in.Delim('[') + if out.UserVolumes == nil { + if !in.IsDelim(']') { + out.UserVolumes = make([]string, 0, 4) + } else { + out.UserVolumes = []string{} + } + } else { + out.UserVolumes = (out.UserVolumes)[:0] + } + for !in.IsDelim(']') { + var v49 string + v49 = string(in.String()) + out.UserVolumes = append(out.UserVolumes, v49) + in.WantComma() + } + in.Delim(']') + } + case "entrypoint": + if in.IsNull() { + in.Skip() + out.Entrypoint = nil + } else { + in.Delim('[') + if out.Entrypoint == nil { + if !in.IsDelim(']') { + out.Entrypoint = make([]string, 0, 4) + } else { + out.Entrypoint = []string{} + } + } else { + out.Entrypoint = (out.Entrypoint)[:0] + } + for !in.IsDelim(']') { + var v50 string + v50 = string(in.String()) + out.Entrypoint = append(out.Entrypoint, v50) + in.WantComma() + } + in.Delim(']') + } + case "command": + if in.IsNull() { + in.Skip() + out.Command = nil + } else { + in.Delim('[') + if out.Command == nil { + if !in.IsDelim(']') { + out.Command = make([]string, 0, 4) + } else { + out.Command = []string{} + } + } else { + out.Command = (out.Command)[:0] + } + for !in.IsDelim(']') { + var v51 string + v51 = string(in.String()) + out.Command = append(out.Command, v51) + in.WantComma() + } + in.Delim(']') + } + case "stdin": + out.Stdin = bool(in.Bool()) + case "labels": + if in.IsNull() { + in.Skip() + } else { + in.Delim('{') + if !in.IsDelim('}') { + out.Labels = make(map[string]string) + } else { + out.Labels = nil + } + for !in.IsDelim('}') { + key := string(in.String()) + in.WantColon() + var v52 string + v52 = string(in.String()) + (out.Labels)[key] = v52 + in.WantComma() + } + in.Delim('}') + } + case "stopSignal": + out.StopSignal = uint(in.Uint()) + case "stopTimeout": + out.StopTimeout = uint(in.Uint()) + case "createdTime": + if data := in.Raw(); in.Ok() { + in.AddError((out.CreatedTime).UnmarshalJSON(data)) + } + case "cgroupParent": + out.CgroupParent = string(in.String()) + case "logPath": + out.LogPath = string(in.String()) + case "conmonPidFile": + out.ConmonPidFile = string(in.String()) + case "postConfigureNetNS": + out.PostConfigureNetNS = bool(in.Bool()) + case "exitCommand": + if in.IsNull() { + in.Skip() + out.ExitCommand = nil + } else { + in.Delim('[') + if out.ExitCommand == nil { + if !in.IsDelim(']') { + out.ExitCommand = make([]string, 0, 4) + } else { + out.ExitCommand = []string{} + } + } else { + out.ExitCommand = (out.ExitCommand)[:0] + } + for !in.IsDelim(']') { + var v53 string + v53 = string(in.String()) + out.ExitCommand = append(out.ExitCommand, v53) + in.WantComma() + } + in.Delim(']') + } + case "LocalVolumes": + if in.IsNull() { + in.Skip() + out.LocalVolumes = nil + } else { + in.Delim('[') + if out.LocalVolumes == nil { + if !in.IsDelim(']') { + out.LocalVolumes = make([]string, 0, 4) + } else { + out.LocalVolumes = []string{} + } + } else { + out.LocalVolumes = (out.LocalVolumes)[:0] + } + for !in.IsDelim(']') { + var v54 string + v54 = string(in.String()) + out.LocalVolumes = append(out.LocalVolumes, v54) + in.WantComma() + } + in.Delim(']') + } + case "pause": + out.IsInfra = bool(in.Bool()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodLibpod2(out *jwriter.Writer, in ContainerConfig) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"spec\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.Spec == nil { + out.RawString("null") + } else { + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo1(out, *in.Spec) + } + } + { + const prefix string = ",\"id\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ID)) + } + { + const prefix string = ",\"name\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Name)) + } + if in.Pod != "" { + const prefix string = ",\"pod\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Pod)) + } + if in.Namespace != "" { + const prefix string = ",\"namespace\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Namespace)) + } + if true { + const prefix string = ",\"idMappingsOptions\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainersStorage(out, in.IDMappings) + } + if in.RootfsImageID != "" { + const prefix string = ",\"rootfsImageID\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.RootfsImageID)) + } + if in.RootfsImageName != "" { + const prefix string = ",\"rootfsImageName\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.RootfsImageName)) + } + if in.Rootfs != "" { + const prefix string = ",\"rootfs\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Rootfs)) + } + { + const prefix string = ",\"imageVolumes\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.ImageVolumes)) + } + if in.ShmDir != "" { + const prefix string = ",\"ShmDir\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ShmDir)) + } + { + const prefix string = ",\"shmSize\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(in.ShmSize)) + } + { + const prefix string = ",\"staticDir\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.StaticDir)) + } + if len(in.Mounts) != 0 { + const prefix string = ",\"mounts\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v55, v56 := range in.Mounts { + if v55 > 0 { + out.RawByte(',') + } + out.String(string(v56)) + } + out.RawByte(']') + } + } + { + const prefix string = ",\"privileged\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.Privileged)) + } + if in.ProcessLabel != "" { + const prefix string = ",\"ProcessLabel\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ProcessLabel)) + } + if in.MountLabel != "" { + const prefix string = ",\"MountLabel\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.MountLabel)) + } + if in.User != "" { + const prefix string = ",\"user\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.User)) + } + if len(in.Groups) != 0 { + const prefix string = ",\"groups\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v57, v58 := range in.Groups { + if v57 > 0 { + out.RawByte(',') + } + out.String(string(v58)) + } + out.RawByte(']') + } + } + if in.IPCNsCtr != "" { + const prefix string = ",\"ipcNsCtr\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.IPCNsCtr)) + } + if in.MountNsCtr != "" { + const prefix string = ",\"mountNsCtr\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.MountNsCtr)) + } + if in.NetNsCtr != "" { + const prefix string = ",\"netNsCtr\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.NetNsCtr)) + } + if in.PIDNsCtr != "" { + const prefix string = ",\"pidNsCtr\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.PIDNsCtr)) + } + if in.UserNsCtr != "" { + const prefix string = ",\"userNsCtr\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.UserNsCtr)) + } + if in.UTSNsCtr != "" { + const prefix string = ",\"utsNsCtr\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.UTSNsCtr)) + } + if in.CgroupNsCtr != "" { + const prefix string = ",\"cgroupNsCtr\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.CgroupNsCtr)) + } + { + const prefix string = ",\"Dependencies\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.Dependencies == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v59, v60 := range in.Dependencies { + if v59 > 0 { + out.RawByte(',') + } + out.String(string(v60)) + } + out.RawByte(']') + } + } + { + const prefix string = ",\"createNetNS\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.CreateNetNS)) + } + { + const prefix string = ",\"staticIP\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.RawText((in.StaticIP).MarshalText()) + } + if len(in.PortMappings) != 0 { + const prefix string = ",\"portMappings\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v61, v62 := range in.PortMappings { + if v61 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComCriOOcicniPkgOcicni(out, v62) + } + out.RawByte(']') + } + } + if len(in.DNSServer) != 0 { + const prefix string = ",\"dnsServer\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v63, v64 := range in.DNSServer { + if v63 > 0 { + out.RawByte(',') + } + out.RawText((v64).MarshalText()) + } + out.RawByte(']') + } + } + if len(in.DNSSearch) != 0 { + const prefix string = ",\"dnsSearch\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v65, v66 := range in.DNSSearch { + if v65 > 0 { + out.RawByte(',') + } + out.String(string(v66)) + } + out.RawByte(']') + } + } + if len(in.DNSOption) != 0 { + const prefix string = ",\"dnsOption\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v67, v68 := range in.DNSOption { + if v67 > 0 { + out.RawByte(',') + } + out.String(string(v68)) + } + out.RawByte(']') + } + } + if len(in.HostAdd) != 0 { + const prefix string = ",\"hostsAdd\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v69, v70 := range in.HostAdd { + if v69 > 0 { + out.RawByte(',') + } + out.String(string(v70)) + } + out.RawByte(']') + } + } + if len(in.Networks) != 0 { + const prefix string = ",\"networks\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v71, v72 := range in.Networks { + if v71 > 0 { + out.RawByte(',') + } + out.String(string(v72)) + } + out.RawByte(']') + } + } + if len(in.UserVolumes) != 0 { + const prefix string = ",\"userVolumes\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v73, v74 := range in.UserVolumes { + if v73 > 0 { + out.RawByte(',') + } + out.String(string(v74)) + } + out.RawByte(']') + } + } + if len(in.Entrypoint) != 0 { + const prefix string = ",\"entrypoint\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v75, v76 := range in.Entrypoint { + if v75 > 0 { + out.RawByte(',') + } + out.String(string(v76)) + } + out.RawByte(']') + } + } + if len(in.Command) != 0 { + const prefix string = ",\"command\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v77, v78 := range in.Command { + if v77 > 0 { + out.RawByte(',') + } + out.String(string(v78)) + } + out.RawByte(']') + } + } + if in.Stdin { + const prefix string = ",\"stdin\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.Stdin)) + } + if len(in.Labels) != 0 { + const prefix string = ",\"labels\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('{') + v79First := true + for v79Name, v79Value := range in.Labels { + if v79First { + v79First = false + } else { + out.RawByte(',') + } + out.String(string(v79Name)) + out.RawByte(':') + out.String(string(v79Value)) + } + out.RawByte('}') + } + } + if in.StopSignal != 0 { + const prefix string = ",\"stopSignal\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint(uint(in.StopSignal)) + } + if in.StopTimeout != 0 { + const prefix string = ",\"stopTimeout\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint(uint(in.StopTimeout)) + } + { + const prefix string = ",\"createdTime\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Raw((in.CreatedTime).MarshalJSON()) + } + { + const prefix string = ",\"cgroupParent\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.CgroupParent)) + } + { + const prefix string = ",\"logPath\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.LogPath)) + } + if in.ConmonPidFile != "" { + const prefix string = ",\"conmonPidFile\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ConmonPidFile)) + } + { + const prefix string = ",\"postConfigureNetNS\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.PostConfigureNetNS)) + } + if len(in.ExitCommand) != 0 { + const prefix string = ",\"exitCommand\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v80, v81 := range in.ExitCommand { + if v80 > 0 { + out.RawByte(',') + } + out.String(string(v81)) + } + out.RawByte(']') + } + } + { + const prefix string = ",\"LocalVolumes\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.LocalVolumes == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v82, v83 := range in.LocalVolumes { + if v82 > 0 { + out.RawByte(',') + } + out.String(string(v83)) + } + out.RawByte(']') + } + } + { + const prefix string = ",\"pause\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.IsInfra)) + } + out.RawByte('}') +} -func ( ExecSession ) MarshalJSON() ([]byte, error) { return nil, nil } -func (* ExecSession ) UnmarshalJSON([]byte) error { return nil } -func ( ExecSession ) MarshalEasyJSON(w *jwriter.Writer) {} -func (* ExecSession ) UnmarshalEasyJSON(l *jlexer.Lexer) {} +// MarshalJSON supports json.Marshaler interface +func (v ContainerConfig) MarshalJSON() ([]byte, error) { + w := jwriter.Writer{} + easyjson1dbef17bEncodeGithubComContainersLibpodLibpod2(&w, v) + return w.Buffer.BuildBytes(), w.Error +} -type EasyJSON_exporter_ExecSession *ExecSession +// MarshalEasyJSON supports easyjson.Marshaler interface +func (v ContainerConfig) MarshalEasyJSON(w *jwriter.Writer) { + easyjson1dbef17bEncodeGithubComContainersLibpodLibpod2(w, v) +} -func ( containerState ) MarshalJSON() ([]byte, error) { return nil, nil } -func (* containerState ) UnmarshalJSON([]byte) error { return nil } -func ( containerState ) MarshalEasyJSON(w *jwriter.Writer) {} -func (* containerState ) UnmarshalEasyJSON(l *jlexer.Lexer) {} +// UnmarshalJSON supports json.Unmarshaler interface +func (v *ContainerConfig) UnmarshalJSON(data []byte) error { + r := jlexer.Lexer{Data: data} + easyjson1dbef17bDecodeGithubComContainersLibpodLibpod2(&r, v) + return r.Error() +} -type EasyJSON_exporter_containerState *containerState +// UnmarshalEasyJSON supports easyjson.Unmarshaler interface +func (v *ContainerConfig) UnmarshalEasyJSON(l *jlexer.Lexer) { + easyjson1dbef17bDecodeGithubComContainersLibpodLibpod2(l, v) +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComCriOOcicniPkgOcicni(in *jlexer.Lexer, out *ocicni.PortMapping) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "hostPort": + out.HostPort = int32(in.Int32()) + case "containerPort": + out.ContainerPort = int32(in.Int32()) + case "protocol": + out.Protocol = string(in.String()) + case "hostIP": + out.HostIP = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComCriOOcicniPkgOcicni(out *jwriter.Writer, in ocicni.PortMapping) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"hostPort\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int32(int32(in.HostPort)) + } + { + const prefix string = ",\"containerPort\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int32(int32(in.ContainerPort)) + } + { + const prefix string = ",\"protocol\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Protocol)) + } + { + const prefix string = ",\"hostIP\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.HostIP)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainersStorage(in *jlexer.Lexer, out *storage.IDMappingOptions) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "HostUIDMapping": + out.HostUIDMapping = bool(in.Bool()) + case "HostGIDMapping": + out.HostGIDMapping = bool(in.Bool()) + case "UIDMap": + if in.IsNull() { + in.Skip() + out.UIDMap = nil + } else { + in.Delim('[') + if out.UIDMap == nil { + if !in.IsDelim(']') { + out.UIDMap = make([]idtools.IDMap, 0, 2) + } else { + out.UIDMap = []idtools.IDMap{} + } + } else { + out.UIDMap = (out.UIDMap)[:0] + } + for !in.IsDelim(']') { + var v84 idtools.IDMap + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainersStoragePkgIdtools(in, &v84) + out.UIDMap = append(out.UIDMap, v84) + in.WantComma() + } + in.Delim(']') + } + case "GIDMap": + if in.IsNull() { + in.Skip() + out.GIDMap = nil + } else { + in.Delim('[') + if out.GIDMap == nil { + if !in.IsDelim(']') { + out.GIDMap = make([]idtools.IDMap, 0, 2) + } else { + out.GIDMap = []idtools.IDMap{} + } + } else { + out.GIDMap = (out.GIDMap)[:0] + } + for !in.IsDelim(']') { + var v85 idtools.IDMap + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainersStoragePkgIdtools(in, &v85) + out.GIDMap = append(out.GIDMap, v85) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainersStorage(out *jwriter.Writer, in storage.IDMappingOptions) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"HostUIDMapping\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.HostUIDMapping)) + } + { + const prefix string = ",\"HostGIDMapping\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.HostGIDMapping)) + } + { + const prefix string = ",\"UIDMap\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.UIDMap == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v86, v87 := range in.UIDMap { + if v86 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainersStoragePkgIdtools(out, v87) + } + out.RawByte(']') + } + } + { + const prefix string = ",\"GIDMap\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.GIDMap == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v88, v89 := range in.GIDMap { + if v88 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainersStoragePkgIdtools(out, v89) + } + out.RawByte(']') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComContainersStoragePkgIdtools(in *jlexer.Lexer, out *idtools.IDMap) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "container_id": + out.ContainerID = int(in.Int()) + case "host_id": + out.HostID = int(in.Int()) + case "size": + out.Size = int(in.Int()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComContainersStoragePkgIdtools(out *jwriter.Writer, in idtools.IDMap) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"container_id\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int(int(in.ContainerID)) + } + { + const prefix string = ",\"host_id\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int(int(in.HostID)) + } + { + const prefix string = ",\"size\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int(int(in.Size)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo1(in *jlexer.Lexer, out *specs_go.Spec) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "ociVersion": + out.Version = string(in.String()) + case "process": + if in.IsNull() { + in.Skip() + out.Process = nil + } else { + if out.Process == nil { + out.Process = new(specs_go.Process) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo2(in, &*out.Process) + } + case "root": + if in.IsNull() { + in.Skip() + out.Root = nil + } else { + if out.Root == nil { + out.Root = new(specs_go.Root) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo3(in, &*out.Root) + } + case "hostname": + out.Hostname = string(in.String()) + case "mounts": + if in.IsNull() { + in.Skip() + out.Mounts = nil + } else { + in.Delim('[') + if out.Mounts == nil { + if !in.IsDelim(']') { + out.Mounts = make([]specs_go.Mount, 0, 1) + } else { + out.Mounts = []specs_go.Mount{} + } + } else { + out.Mounts = (out.Mounts)[:0] + } + for !in.IsDelim(']') { + var v90 specs_go.Mount + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo4(in, &v90) + out.Mounts = append(out.Mounts, v90) + in.WantComma() + } + in.Delim(']') + } + case "hooks": + if in.IsNull() { + in.Skip() + out.Hooks = nil + } else { + if out.Hooks == nil { + out.Hooks = new(specs_go.Hooks) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo5(in, &*out.Hooks) + } + case "annotations": + if in.IsNull() { + in.Skip() + } else { + in.Delim('{') + if !in.IsDelim('}') { + out.Annotations = make(map[string]string) + } else { + out.Annotations = nil + } + for !in.IsDelim('}') { + key := string(in.String()) + in.WantColon() + var v91 string + v91 = string(in.String()) + (out.Annotations)[key] = v91 + in.WantComma() + } + in.Delim('}') + } + case "linux": + if in.IsNull() { + in.Skip() + out.Linux = nil + } else { + if out.Linux == nil { + out.Linux = new(specs_go.Linux) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo6(in, &*out.Linux) + } + case "solaris": + if in.IsNull() { + in.Skip() + out.Solaris = nil + } else { + if out.Solaris == nil { + out.Solaris = new(specs_go.Solaris) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo7(in, &*out.Solaris) + } + case "windows": + if in.IsNull() { + in.Skip() + out.Windows = nil + } else { + if out.Windows == nil { + out.Windows = new(specs_go.Windows) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo8(in, &*out.Windows) + } + case "vm": + if in.IsNull() { + in.Skip() + out.VM = nil + } else { + if out.VM == nil { + out.VM = new(specs_go.VM) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo9(in, &*out.VM) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo1(out *jwriter.Writer, in specs_go.Spec) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"ociVersion\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Version)) + } + if in.Process != nil { + const prefix string = ",\"process\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo2(out, *in.Process) + } + if in.Root != nil { + const prefix string = ",\"root\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo3(out, *in.Root) + } + if in.Hostname != "" { + const prefix string = ",\"hostname\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Hostname)) + } + if len(in.Mounts) != 0 { + const prefix string = ",\"mounts\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v92, v93 := range in.Mounts { + if v92 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo4(out, v93) + } + out.RawByte(']') + } + } + if in.Hooks != nil { + const prefix string = ",\"hooks\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo5(out, *in.Hooks) + } + if len(in.Annotations) != 0 { + const prefix string = ",\"annotations\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('{') + v94First := true + for v94Name, v94Value := range in.Annotations { + if v94First { + v94First = false + } else { + out.RawByte(',') + } + out.String(string(v94Name)) + out.RawByte(':') + out.String(string(v94Value)) + } + out.RawByte('}') + } + } + if in.Linux != nil { + const prefix string = ",\"linux\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo6(out, *in.Linux) + } + if in.Solaris != nil { + const prefix string = ",\"solaris\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo7(out, *in.Solaris) + } + if in.Windows != nil { + const prefix string = ",\"windows\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo8(out, *in.Windows) + } + if in.VM != nil { + const prefix string = ",\"vm\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo9(out, *in.VM) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo9(in *jlexer.Lexer, out *specs_go.VM) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "hypervisor": + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo10(in, &out.Hypervisor) + case "kernel": + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo11(in, &out.Kernel) + case "image": + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo12(in, &out.Image) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo9(out *jwriter.Writer, in specs_go.VM) { + out.RawByte('{') + first := true + _ = first + if true { + const prefix string = ",\"hypervisor\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo10(out, in.Hypervisor) + } + { + const prefix string = ",\"kernel\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo11(out, in.Kernel) + } + if true { + const prefix string = ",\"image\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo12(out, in.Image) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo12(in *jlexer.Lexer, out *specs_go.VMImage) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "path": + out.Path = string(in.String()) + case "format": + out.Format = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo12(out *jwriter.Writer, in specs_go.VMImage) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"path\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Path)) + } + { + const prefix string = ",\"format\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Format)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo11(in *jlexer.Lexer, out *specs_go.VMKernel) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "path": + out.Path = string(in.String()) + case "parameters": + out.Parameters = string(in.String()) + case "initrd": + out.InitRD = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo11(out *jwriter.Writer, in specs_go.VMKernel) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"path\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Path)) + } + if in.Parameters != "" { + const prefix string = ",\"parameters\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Parameters)) + } + if in.InitRD != "" { + const prefix string = ",\"initrd\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.InitRD)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo10(in *jlexer.Lexer, out *specs_go.VMHypervisor) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "path": + out.Path = string(in.String()) + case "parameters": + out.Parameters = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo10(out *jwriter.Writer, in specs_go.VMHypervisor) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"path\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Path)) + } + if in.Parameters != "" { + const prefix string = ",\"parameters\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Parameters)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo8(in *jlexer.Lexer, out *specs_go.Windows) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "layerFolders": + if in.IsNull() { + in.Skip() + out.LayerFolders = nil + } else { + in.Delim('[') + if out.LayerFolders == nil { + if !in.IsDelim(']') { + out.LayerFolders = make([]string, 0, 4) + } else { + out.LayerFolders = []string{} + } + } else { + out.LayerFolders = (out.LayerFolders)[:0] + } + for !in.IsDelim(']') { + var v95 string + v95 = string(in.String()) + out.LayerFolders = append(out.LayerFolders, v95) + in.WantComma() + } + in.Delim(']') + } + case "devices": + if in.IsNull() { + in.Skip() + out.Devices = nil + } else { + in.Delim('[') + if out.Devices == nil { + if !in.IsDelim(']') { + out.Devices = make([]specs_go.WindowsDevice, 0, 2) + } else { + out.Devices = []specs_go.WindowsDevice{} + } + } else { + out.Devices = (out.Devices)[:0] + } + for !in.IsDelim(']') { + var v96 specs_go.WindowsDevice + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo13(in, &v96) + out.Devices = append(out.Devices, v96) + in.WantComma() + } + in.Delim(']') + } + case "resources": + if in.IsNull() { + in.Skip() + out.Resources = nil + } else { + if out.Resources == nil { + out.Resources = new(specs_go.WindowsResources) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo14(in, &*out.Resources) + } + case "credentialSpec": + if m, ok := out.CredentialSpec.(easyjson.Unmarshaler); ok { + m.UnmarshalEasyJSON(in) + } else if m, ok := out.CredentialSpec.(json.Unmarshaler); ok { + _ = m.UnmarshalJSON(in.Raw()) + } else { + out.CredentialSpec = in.Interface() + } + case "servicing": + out.Servicing = bool(in.Bool()) + case "ignoreFlushesDuringBoot": + out.IgnoreFlushesDuringBoot = bool(in.Bool()) + case "hyperv": + if in.IsNull() { + in.Skip() + out.HyperV = nil + } else { + if out.HyperV == nil { + out.HyperV = new(specs_go.WindowsHyperV) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo15(in, &*out.HyperV) + } + case "network": + if in.IsNull() { + in.Skip() + out.Network = nil + } else { + if out.Network == nil { + out.Network = new(specs_go.WindowsNetwork) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo16(in, &*out.Network) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo8(out *jwriter.Writer, in specs_go.Windows) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"layerFolders\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.LayerFolders == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v97, v98 := range in.LayerFolders { + if v97 > 0 { + out.RawByte(',') + } + out.String(string(v98)) + } + out.RawByte(']') + } + } + if len(in.Devices) != 0 { + const prefix string = ",\"devices\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v99, v100 := range in.Devices { + if v99 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo13(out, v100) + } + out.RawByte(']') + } + } + if in.Resources != nil { + const prefix string = ",\"resources\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo14(out, *in.Resources) + } + if in.CredentialSpec != nil { + const prefix string = ",\"credentialSpec\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if m, ok := in.CredentialSpec.(easyjson.Marshaler); ok { + m.MarshalEasyJSON(out) + } else if m, ok := in.CredentialSpec.(json.Marshaler); ok { + out.Raw(m.MarshalJSON()) + } else { + out.Raw(json.Marshal(in.CredentialSpec)) + } + } + if in.Servicing { + const prefix string = ",\"servicing\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.Servicing)) + } + if in.IgnoreFlushesDuringBoot { + const prefix string = ",\"ignoreFlushesDuringBoot\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.IgnoreFlushesDuringBoot)) + } + if in.HyperV != nil { + const prefix string = ",\"hyperv\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo15(out, *in.HyperV) + } + if in.Network != nil { + const prefix string = ",\"network\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo16(out, *in.Network) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo16(in *jlexer.Lexer, out *specs_go.WindowsNetwork) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "endpointList": + if in.IsNull() { + in.Skip() + out.EndpointList = nil + } else { + in.Delim('[') + if out.EndpointList == nil { + if !in.IsDelim(']') { + out.EndpointList = make([]string, 0, 4) + } else { + out.EndpointList = []string{} + } + } else { + out.EndpointList = (out.EndpointList)[:0] + } + for !in.IsDelim(']') { + var v101 string + v101 = string(in.String()) + out.EndpointList = append(out.EndpointList, v101) + in.WantComma() + } + in.Delim(']') + } + case "allowUnqualifiedDNSQuery": + out.AllowUnqualifiedDNSQuery = bool(in.Bool()) + case "DNSSearchList": + if in.IsNull() { + in.Skip() + out.DNSSearchList = nil + } else { + in.Delim('[') + if out.DNSSearchList == nil { + if !in.IsDelim(']') { + out.DNSSearchList = make([]string, 0, 4) + } else { + out.DNSSearchList = []string{} + } + } else { + out.DNSSearchList = (out.DNSSearchList)[:0] + } + for !in.IsDelim(']') { + var v102 string + v102 = string(in.String()) + out.DNSSearchList = append(out.DNSSearchList, v102) + in.WantComma() + } + in.Delim(']') + } + case "networkSharedContainerName": + out.NetworkSharedContainerName = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo16(out *jwriter.Writer, in specs_go.WindowsNetwork) { + out.RawByte('{') + first := true + _ = first + if len(in.EndpointList) != 0 { + const prefix string = ",\"endpointList\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v103, v104 := range in.EndpointList { + if v103 > 0 { + out.RawByte(',') + } + out.String(string(v104)) + } + out.RawByte(']') + } + } + if in.AllowUnqualifiedDNSQuery { + const prefix string = ",\"allowUnqualifiedDNSQuery\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.AllowUnqualifiedDNSQuery)) + } + if len(in.DNSSearchList) != 0 { + const prefix string = ",\"DNSSearchList\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v105, v106 := range in.DNSSearchList { + if v105 > 0 { + out.RawByte(',') + } + out.String(string(v106)) + } + out.RawByte(']') + } + } + if in.NetworkSharedContainerName != "" { + const prefix string = ",\"networkSharedContainerName\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.NetworkSharedContainerName)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo15(in *jlexer.Lexer, out *specs_go.WindowsHyperV) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "utilityVMPath": + out.UtilityVMPath = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo15(out *jwriter.Writer, in specs_go.WindowsHyperV) { + out.RawByte('{') + first := true + _ = first + if in.UtilityVMPath != "" { + const prefix string = ",\"utilityVMPath\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.UtilityVMPath)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo14(in *jlexer.Lexer, out *specs_go.WindowsResources) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "memory": + if in.IsNull() { + in.Skip() + out.Memory = nil + } else { + if out.Memory == nil { + out.Memory = new(specs_go.WindowsMemoryResources) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo17(in, &*out.Memory) + } + case "cpu": + if in.IsNull() { + in.Skip() + out.CPU = nil + } else { + if out.CPU == nil { + out.CPU = new(specs_go.WindowsCPUResources) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo18(in, &*out.CPU) + } + case "storage": + if in.IsNull() { + in.Skip() + out.Storage = nil + } else { + if out.Storage == nil { + out.Storage = new(specs_go.WindowsStorageResources) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo19(in, &*out.Storage) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo14(out *jwriter.Writer, in specs_go.WindowsResources) { + out.RawByte('{') + first := true + _ = first + if in.Memory != nil { + const prefix string = ",\"memory\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo17(out, *in.Memory) + } + if in.CPU != nil { + const prefix string = ",\"cpu\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo18(out, *in.CPU) + } + if in.Storage != nil { + const prefix string = ",\"storage\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo19(out, *in.Storage) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo19(in *jlexer.Lexer, out *specs_go.WindowsStorageResources) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "iops": + if in.IsNull() { + in.Skip() + out.Iops = nil + } else { + if out.Iops == nil { + out.Iops = new(uint64) + } + *out.Iops = uint64(in.Uint64()) + } + case "bps": + if in.IsNull() { + in.Skip() + out.Bps = nil + } else { + if out.Bps == nil { + out.Bps = new(uint64) + } + *out.Bps = uint64(in.Uint64()) + } + case "sandboxSize": + if in.IsNull() { + in.Skip() + out.SandboxSize = nil + } else { + if out.SandboxSize == nil { + out.SandboxSize = new(uint64) + } + *out.SandboxSize = uint64(in.Uint64()) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo19(out *jwriter.Writer, in specs_go.WindowsStorageResources) { + out.RawByte('{') + first := true + _ = first + if in.Iops != nil { + const prefix string = ",\"iops\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(*in.Iops)) + } + if in.Bps != nil { + const prefix string = ",\"bps\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(*in.Bps)) + } + if in.SandboxSize != nil { + const prefix string = ",\"sandboxSize\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(*in.SandboxSize)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo18(in *jlexer.Lexer, out *specs_go.WindowsCPUResources) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "count": + if in.IsNull() { + in.Skip() + out.Count = nil + } else { + if out.Count == nil { + out.Count = new(uint64) + } + *out.Count = uint64(in.Uint64()) + } + case "shares": + if in.IsNull() { + in.Skip() + out.Shares = nil + } else { + if out.Shares == nil { + out.Shares = new(uint16) + } + *out.Shares = uint16(in.Uint16()) + } + case "maximum": + if in.IsNull() { + in.Skip() + out.Maximum = nil + } else { + if out.Maximum == nil { + out.Maximum = new(uint16) + } + *out.Maximum = uint16(in.Uint16()) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo18(out *jwriter.Writer, in specs_go.WindowsCPUResources) { + out.RawByte('{') + first := true + _ = first + if in.Count != nil { + const prefix string = ",\"count\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(*in.Count)) + } + if in.Shares != nil { + const prefix string = ",\"shares\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint16(uint16(*in.Shares)) + } + if in.Maximum != nil { + const prefix string = ",\"maximum\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint16(uint16(*in.Maximum)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo17(in *jlexer.Lexer, out *specs_go.WindowsMemoryResources) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "limit": + if in.IsNull() { + in.Skip() + out.Limit = nil + } else { + if out.Limit == nil { + out.Limit = new(uint64) + } + *out.Limit = uint64(in.Uint64()) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo17(out *jwriter.Writer, in specs_go.WindowsMemoryResources) { + out.RawByte('{') + first := true + _ = first + if in.Limit != nil { + const prefix string = ",\"limit\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(*in.Limit)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo13(in *jlexer.Lexer, out *specs_go.WindowsDevice) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "id": + out.ID = string(in.String()) + case "idType": + out.IDType = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo13(out *jwriter.Writer, in specs_go.WindowsDevice) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"id\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ID)) + } + { + const prefix string = ",\"idType\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.IDType)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo7(in *jlexer.Lexer, out *specs_go.Solaris) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "milestone": + out.Milestone = string(in.String()) + case "limitpriv": + out.LimitPriv = string(in.String()) + case "maxShmMemory": + out.MaxShmMemory = string(in.String()) + case "anet": + if in.IsNull() { + in.Skip() + out.Anet = nil + } else { + in.Delim('[') + if out.Anet == nil { + if !in.IsDelim(']') { + out.Anet = make([]specs_go.SolarisAnet, 0, 1) + } else { + out.Anet = []specs_go.SolarisAnet{} + } + } else { + out.Anet = (out.Anet)[:0] + } + for !in.IsDelim(']') { + var v107 specs_go.SolarisAnet + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo20(in, &v107) + out.Anet = append(out.Anet, v107) + in.WantComma() + } + in.Delim(']') + } + case "cappedCPU": + if in.IsNull() { + in.Skip() + out.CappedCPU = nil + } else { + if out.CappedCPU == nil { + out.CappedCPU = new(specs_go.SolarisCappedCPU) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo21(in, &*out.CappedCPU) + } + case "cappedMemory": + if in.IsNull() { + in.Skip() + out.CappedMemory = nil + } else { + if out.CappedMemory == nil { + out.CappedMemory = new(specs_go.SolarisCappedMemory) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo22(in, &*out.CappedMemory) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo7(out *jwriter.Writer, in specs_go.Solaris) { + out.RawByte('{') + first := true + _ = first + if in.Milestone != "" { + const prefix string = ",\"milestone\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Milestone)) + } + if in.LimitPriv != "" { + const prefix string = ",\"limitpriv\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.LimitPriv)) + } + if in.MaxShmMemory != "" { + const prefix string = ",\"maxShmMemory\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.MaxShmMemory)) + } + if len(in.Anet) != 0 { + const prefix string = ",\"anet\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v108, v109 := range in.Anet { + if v108 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo20(out, v109) + } + out.RawByte(']') + } + } + if in.CappedCPU != nil { + const prefix string = ",\"cappedCPU\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo21(out, *in.CappedCPU) + } + if in.CappedMemory != nil { + const prefix string = ",\"cappedMemory\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo22(out, *in.CappedMemory) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo22(in *jlexer.Lexer, out *specs_go.SolarisCappedMemory) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "physical": + out.Physical = string(in.String()) + case "swap": + out.Swap = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo22(out *jwriter.Writer, in specs_go.SolarisCappedMemory) { + out.RawByte('{') + first := true + _ = first + if in.Physical != "" { + const prefix string = ",\"physical\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Physical)) + } + if in.Swap != "" { + const prefix string = ",\"swap\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Swap)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo21(in *jlexer.Lexer, out *specs_go.SolarisCappedCPU) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "ncpus": + out.Ncpus = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo21(out *jwriter.Writer, in specs_go.SolarisCappedCPU) { + out.RawByte('{') + first := true + _ = first + if in.Ncpus != "" { + const prefix string = ",\"ncpus\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Ncpus)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo20(in *jlexer.Lexer, out *specs_go.SolarisAnet) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "linkname": + out.Linkname = string(in.String()) + case "lowerLink": + out.Lowerlink = string(in.String()) + case "allowedAddress": + out.Allowedaddr = string(in.String()) + case "configureAllowedAddress": + out.Configallowedaddr = string(in.String()) + case "defrouter": + out.Defrouter = string(in.String()) + case "linkProtection": + out.Linkprotection = string(in.String()) + case "macAddress": + out.Macaddress = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo20(out *jwriter.Writer, in specs_go.SolarisAnet) { + out.RawByte('{') + first := true + _ = first + if in.Linkname != "" { + const prefix string = ",\"linkname\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Linkname)) + } + if in.Lowerlink != "" { + const prefix string = ",\"lowerLink\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Lowerlink)) + } + if in.Allowedaddr != "" { + const prefix string = ",\"allowedAddress\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Allowedaddr)) + } + if in.Configallowedaddr != "" { + const prefix string = ",\"configureAllowedAddress\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Configallowedaddr)) + } + if in.Defrouter != "" { + const prefix string = ",\"defrouter\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Defrouter)) + } + if in.Linkprotection != "" { + const prefix string = ",\"linkProtection\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Linkprotection)) + } + if in.Macaddress != "" { + const prefix string = ",\"macAddress\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Macaddress)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo6(in *jlexer.Lexer, out *specs_go.Linux) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "uidMappings": + if in.IsNull() { + in.Skip() + out.UIDMappings = nil + } else { + in.Delim('[') + if out.UIDMappings == nil { + if !in.IsDelim(']') { + out.UIDMappings = make([]specs_go.LinuxIDMapping, 0, 5) + } else { + out.UIDMappings = []specs_go.LinuxIDMapping{} + } + } else { + out.UIDMappings = (out.UIDMappings)[:0] + } + for !in.IsDelim(']') { + var v110 specs_go.LinuxIDMapping + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo23(in, &v110) + out.UIDMappings = append(out.UIDMappings, v110) + in.WantComma() + } + in.Delim(']') + } + case "gidMappings": + if in.IsNull() { + in.Skip() + out.GIDMappings = nil + } else { + in.Delim('[') + if out.GIDMappings == nil { + if !in.IsDelim(']') { + out.GIDMappings = make([]specs_go.LinuxIDMapping, 0, 5) + } else { + out.GIDMappings = []specs_go.LinuxIDMapping{} + } + } else { + out.GIDMappings = (out.GIDMappings)[:0] + } + for !in.IsDelim(']') { + var v111 specs_go.LinuxIDMapping + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo23(in, &v111) + out.GIDMappings = append(out.GIDMappings, v111) + in.WantComma() + } + in.Delim(']') + } + case "sysctl": + if in.IsNull() { + in.Skip() + } else { + in.Delim('{') + if !in.IsDelim('}') { + out.Sysctl = make(map[string]string) + } else { + out.Sysctl = nil + } + for !in.IsDelim('}') { + key := string(in.String()) + in.WantColon() + var v112 string + v112 = string(in.String()) + (out.Sysctl)[key] = v112 + in.WantComma() + } + in.Delim('}') + } + case "resources": + if in.IsNull() { + in.Skip() + out.Resources = nil + } else { + if out.Resources == nil { + out.Resources = new(specs_go.LinuxResources) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo24(in, &*out.Resources) + } + case "cgroupsPath": + out.CgroupsPath = string(in.String()) + case "namespaces": + if in.IsNull() { + in.Skip() + out.Namespaces = nil + } else { + in.Delim('[') + if out.Namespaces == nil { + if !in.IsDelim(']') { + out.Namespaces = make([]specs_go.LinuxNamespace, 0, 2) + } else { + out.Namespaces = []specs_go.LinuxNamespace{} + } + } else { + out.Namespaces = (out.Namespaces)[:0] + } + for !in.IsDelim(']') { + var v113 specs_go.LinuxNamespace + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo25(in, &v113) + out.Namespaces = append(out.Namespaces, v113) + in.WantComma() + } + in.Delim(']') + } + case "devices": + if in.IsNull() { + in.Skip() + out.Devices = nil + } else { + in.Delim('[') + if out.Devices == nil { + if !in.IsDelim(']') { + out.Devices = make([]specs_go.LinuxDevice, 0, 1) + } else { + out.Devices = []specs_go.LinuxDevice{} + } + } else { + out.Devices = (out.Devices)[:0] + } + for !in.IsDelim(']') { + var v114 specs_go.LinuxDevice + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo26(in, &v114) + out.Devices = append(out.Devices, v114) + in.WantComma() + } + in.Delim(']') + } + case "seccomp": + if in.IsNull() { + in.Skip() + out.Seccomp = nil + } else { + if out.Seccomp == nil { + out.Seccomp = new(specs_go.LinuxSeccomp) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo27(in, &*out.Seccomp) + } + case "rootfsPropagation": + out.RootfsPropagation = string(in.String()) + case "maskedPaths": + if in.IsNull() { + in.Skip() + out.MaskedPaths = nil + } else { + in.Delim('[') + if out.MaskedPaths == nil { + if !in.IsDelim(']') { + out.MaskedPaths = make([]string, 0, 4) + } else { + out.MaskedPaths = []string{} + } + } else { + out.MaskedPaths = (out.MaskedPaths)[:0] + } + for !in.IsDelim(']') { + var v115 string + v115 = string(in.String()) + out.MaskedPaths = append(out.MaskedPaths, v115) + in.WantComma() + } + in.Delim(']') + } + case "readonlyPaths": + if in.IsNull() { + in.Skip() + out.ReadonlyPaths = nil + } else { + in.Delim('[') + if out.ReadonlyPaths == nil { + if !in.IsDelim(']') { + out.ReadonlyPaths = make([]string, 0, 4) + } else { + out.ReadonlyPaths = []string{} + } + } else { + out.ReadonlyPaths = (out.ReadonlyPaths)[:0] + } + for !in.IsDelim(']') { + var v116 string + v116 = string(in.String()) + out.ReadonlyPaths = append(out.ReadonlyPaths, v116) + in.WantComma() + } + in.Delim(']') + } + case "mountLabel": + out.MountLabel = string(in.String()) + case "intelRdt": + if in.IsNull() { + in.Skip() + out.IntelRdt = nil + } else { + if out.IntelRdt == nil { + out.IntelRdt = new(specs_go.LinuxIntelRdt) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo28(in, &*out.IntelRdt) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo6(out *jwriter.Writer, in specs_go.Linux) { + out.RawByte('{') + first := true + _ = first + if len(in.UIDMappings) != 0 { + const prefix string = ",\"uidMappings\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v117, v118 := range in.UIDMappings { + if v117 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo23(out, v118) + } + out.RawByte(']') + } + } + if len(in.GIDMappings) != 0 { + const prefix string = ",\"gidMappings\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v119, v120 := range in.GIDMappings { + if v119 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo23(out, v120) + } + out.RawByte(']') + } + } + if len(in.Sysctl) != 0 { + const prefix string = ",\"sysctl\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('{') + v121First := true + for v121Name, v121Value := range in.Sysctl { + if v121First { + v121First = false + } else { + out.RawByte(',') + } + out.String(string(v121Name)) + out.RawByte(':') + out.String(string(v121Value)) + } + out.RawByte('}') + } + } + if in.Resources != nil { + const prefix string = ",\"resources\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo24(out, *in.Resources) + } + if in.CgroupsPath != "" { + const prefix string = ",\"cgroupsPath\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.CgroupsPath)) + } + if len(in.Namespaces) != 0 { + const prefix string = ",\"namespaces\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v122, v123 := range in.Namespaces { + if v122 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo25(out, v123) + } + out.RawByte(']') + } + } + if len(in.Devices) != 0 { + const prefix string = ",\"devices\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v124, v125 := range in.Devices { + if v124 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo26(out, v125) + } + out.RawByte(']') + } + } + if in.Seccomp != nil { + const prefix string = ",\"seccomp\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo27(out, *in.Seccomp) + } + if in.RootfsPropagation != "" { + const prefix string = ",\"rootfsPropagation\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.RootfsPropagation)) + } + if len(in.MaskedPaths) != 0 { + const prefix string = ",\"maskedPaths\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v126, v127 := range in.MaskedPaths { + if v126 > 0 { + out.RawByte(',') + } + out.String(string(v127)) + } + out.RawByte(']') + } + } + if len(in.ReadonlyPaths) != 0 { + const prefix string = ",\"readonlyPaths\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v128, v129 := range in.ReadonlyPaths { + if v128 > 0 { + out.RawByte(',') + } + out.String(string(v129)) + } + out.RawByte(']') + } + } + if in.MountLabel != "" { + const prefix string = ",\"mountLabel\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.MountLabel)) + } + if in.IntelRdt != nil { + const prefix string = ",\"intelRdt\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo28(out, *in.IntelRdt) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo28(in *jlexer.Lexer, out *specs_go.LinuxIntelRdt) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "l3CacheSchema": + out.L3CacheSchema = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo28(out *jwriter.Writer, in specs_go.LinuxIntelRdt) { + out.RawByte('{') + first := true + _ = first + if in.L3CacheSchema != "" { + const prefix string = ",\"l3CacheSchema\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.L3CacheSchema)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo27(in *jlexer.Lexer, out *specs_go.LinuxSeccomp) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "defaultAction": + out.DefaultAction = specs_go.LinuxSeccompAction(in.String()) + case "architectures": + if in.IsNull() { + in.Skip() + out.Architectures = nil + } else { + in.Delim('[') + if out.Architectures == nil { + if !in.IsDelim(']') { + out.Architectures = make([]specs_go.Arch, 0, 4) + } else { + out.Architectures = []specs_go.Arch{} + } + } else { + out.Architectures = (out.Architectures)[:0] + } + for !in.IsDelim(']') { + var v130 specs_go.Arch + v130 = specs_go.Arch(in.String()) + out.Architectures = append(out.Architectures, v130) + in.WantComma() + } + in.Delim(']') + } + case "syscalls": + if in.IsNull() { + in.Skip() + out.Syscalls = nil + } else { + in.Delim('[') + if out.Syscalls == nil { + if !in.IsDelim(']') { + out.Syscalls = make([]specs_go.LinuxSyscall, 0, 1) + } else { + out.Syscalls = []specs_go.LinuxSyscall{} + } + } else { + out.Syscalls = (out.Syscalls)[:0] + } + for !in.IsDelim(']') { + var v131 specs_go.LinuxSyscall + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo29(in, &v131) + out.Syscalls = append(out.Syscalls, v131) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo27(out *jwriter.Writer, in specs_go.LinuxSeccomp) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"defaultAction\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.DefaultAction)) + } + if len(in.Architectures) != 0 { + const prefix string = ",\"architectures\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v132, v133 := range in.Architectures { + if v132 > 0 { + out.RawByte(',') + } + out.String(string(v133)) + } + out.RawByte(']') + } + } + if len(in.Syscalls) != 0 { + const prefix string = ",\"syscalls\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v134, v135 := range in.Syscalls { + if v134 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo29(out, v135) + } + out.RawByte(']') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo29(in *jlexer.Lexer, out *specs_go.LinuxSyscall) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "names": + if in.IsNull() { + in.Skip() + out.Names = nil + } else { + in.Delim('[') + if out.Names == nil { + if !in.IsDelim(']') { + out.Names = make([]string, 0, 4) + } else { + out.Names = []string{} + } + } else { + out.Names = (out.Names)[:0] + } + for !in.IsDelim(']') { + var v136 string + v136 = string(in.String()) + out.Names = append(out.Names, v136) + in.WantComma() + } + in.Delim(']') + } + case "action": + out.Action = specs_go.LinuxSeccompAction(in.String()) + case "args": + if in.IsNull() { + in.Skip() + out.Args = nil + } else { + in.Delim('[') + if out.Args == nil { + if !in.IsDelim(']') { + out.Args = make([]specs_go.LinuxSeccompArg, 0, 1) + } else { + out.Args = []specs_go.LinuxSeccompArg{} + } + } else { + out.Args = (out.Args)[:0] + } + for !in.IsDelim(']') { + var v137 specs_go.LinuxSeccompArg + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo30(in, &v137) + out.Args = append(out.Args, v137) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo29(out *jwriter.Writer, in specs_go.LinuxSyscall) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"names\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.Names == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v138, v139 := range in.Names { + if v138 > 0 { + out.RawByte(',') + } + out.String(string(v139)) + } + out.RawByte(']') + } + } + { + const prefix string = ",\"action\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Action)) + } + if len(in.Args) != 0 { + const prefix string = ",\"args\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v140, v141 := range in.Args { + if v140 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo30(out, v141) + } + out.RawByte(']') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo30(in *jlexer.Lexer, out *specs_go.LinuxSeccompArg) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "index": + out.Index = uint(in.Uint()) + case "value": + out.Value = uint64(in.Uint64()) + case "valueTwo": + out.ValueTwo = uint64(in.Uint64()) + case "op": + out.Op = specs_go.LinuxSeccompOperator(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo30(out *jwriter.Writer, in specs_go.LinuxSeccompArg) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"index\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint(uint(in.Index)) + } + { + const prefix string = ",\"value\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(in.Value)) + } + if in.ValueTwo != 0 { + const prefix string = ",\"valueTwo\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(in.ValueTwo)) + } + { + const prefix string = ",\"op\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Op)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo26(in *jlexer.Lexer, out *specs_go.LinuxDevice) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "path": + out.Path = string(in.String()) + case "type": + out.Type = string(in.String()) + case "major": + out.Major = int64(in.Int64()) + case "minor": + out.Minor = int64(in.Int64()) + case "fileMode": + if in.IsNull() { + in.Skip() + out.FileMode = nil + } else { + if out.FileMode == nil { + out.FileMode = new(os.FileMode) + } + *out.FileMode = os.FileMode(in.Uint32()) + } + case "uid": + if in.IsNull() { + in.Skip() + out.UID = nil + } else { + if out.UID == nil { + out.UID = new(uint32) + } + *out.UID = uint32(in.Uint32()) + } + case "gid": + if in.IsNull() { + in.Skip() + out.GID = nil + } else { + if out.GID == nil { + out.GID = new(uint32) + } + *out.GID = uint32(in.Uint32()) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo26(out *jwriter.Writer, in specs_go.LinuxDevice) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"path\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Path)) + } + { + const prefix string = ",\"type\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Type)) + } + { + const prefix string = ",\"major\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(in.Major)) + } + { + const prefix string = ",\"minor\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(in.Minor)) + } + if in.FileMode != nil { + const prefix string = ",\"fileMode\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(*in.FileMode)) + } + if in.UID != nil { + const prefix string = ",\"uid\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(*in.UID)) + } + if in.GID != nil { + const prefix string = ",\"gid\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(*in.GID)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo25(in *jlexer.Lexer, out *specs_go.LinuxNamespace) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "type": + out.Type = specs_go.LinuxNamespaceType(in.String()) + case "path": + out.Path = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo25(out *jwriter.Writer, in specs_go.LinuxNamespace) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"type\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Type)) + } + if in.Path != "" { + const prefix string = ",\"path\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Path)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo24(in *jlexer.Lexer, out *specs_go.LinuxResources) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "devices": + if in.IsNull() { + in.Skip() + out.Devices = nil + } else { + in.Delim('[') + if out.Devices == nil { + if !in.IsDelim(']') { + out.Devices = make([]specs_go.LinuxDeviceCgroup, 0, 1) + } else { + out.Devices = []specs_go.LinuxDeviceCgroup{} + } + } else { + out.Devices = (out.Devices)[:0] + } + for !in.IsDelim(']') { + var v142 specs_go.LinuxDeviceCgroup + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo31(in, &v142) + out.Devices = append(out.Devices, v142) + in.WantComma() + } + in.Delim(']') + } + case "memory": + if in.IsNull() { + in.Skip() + out.Memory = nil + } else { + if out.Memory == nil { + out.Memory = new(specs_go.LinuxMemory) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo32(in, &*out.Memory) + } + case "cpu": + if in.IsNull() { + in.Skip() + out.CPU = nil + } else { + if out.CPU == nil { + out.CPU = new(specs_go.LinuxCPU) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo33(in, &*out.CPU) + } + case "pids": + if in.IsNull() { + in.Skip() + out.Pids = nil + } else { + if out.Pids == nil { + out.Pids = new(specs_go.LinuxPids) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo34(in, &*out.Pids) + } + case "blockIO": + if in.IsNull() { + in.Skip() + out.BlockIO = nil + } else { + if out.BlockIO == nil { + out.BlockIO = new(specs_go.LinuxBlockIO) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo35(in, &*out.BlockIO) + } + case "hugepageLimits": + if in.IsNull() { + in.Skip() + out.HugepageLimits = nil + } else { + in.Delim('[') + if out.HugepageLimits == nil { + if !in.IsDelim(']') { + out.HugepageLimits = make([]specs_go.LinuxHugepageLimit, 0, 2) + } else { + out.HugepageLimits = []specs_go.LinuxHugepageLimit{} + } + } else { + out.HugepageLimits = (out.HugepageLimits)[:0] + } + for !in.IsDelim(']') { + var v143 specs_go.LinuxHugepageLimit + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo36(in, &v143) + out.HugepageLimits = append(out.HugepageLimits, v143) + in.WantComma() + } + in.Delim(']') + } + case "network": + if in.IsNull() { + in.Skip() + out.Network = nil + } else { + if out.Network == nil { + out.Network = new(specs_go.LinuxNetwork) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo37(in, &*out.Network) + } + case "rdma": + if in.IsNull() { + in.Skip() + } else { + in.Delim('{') + if !in.IsDelim('}') { + out.Rdma = make(map[string]specs_go.LinuxRdma) + } else { + out.Rdma = nil + } + for !in.IsDelim('}') { + key := string(in.String()) + in.WantColon() + var v144 specs_go.LinuxRdma + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo38(in, &v144) + (out.Rdma)[key] = v144 + in.WantComma() + } + in.Delim('}') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo24(out *jwriter.Writer, in specs_go.LinuxResources) { + out.RawByte('{') + first := true + _ = first + if len(in.Devices) != 0 { + const prefix string = ",\"devices\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v145, v146 := range in.Devices { + if v145 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo31(out, v146) + } + out.RawByte(']') + } + } + if in.Memory != nil { + const prefix string = ",\"memory\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo32(out, *in.Memory) + } + if in.CPU != nil { + const prefix string = ",\"cpu\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo33(out, *in.CPU) + } + if in.Pids != nil { + const prefix string = ",\"pids\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo34(out, *in.Pids) + } + if in.BlockIO != nil { + const prefix string = ",\"blockIO\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo35(out, *in.BlockIO) + } + if len(in.HugepageLimits) != 0 { + const prefix string = ",\"hugepageLimits\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v147, v148 := range in.HugepageLimits { + if v147 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo36(out, v148) + } + out.RawByte(']') + } + } + if in.Network != nil { + const prefix string = ",\"network\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo37(out, *in.Network) + } + if len(in.Rdma) != 0 { + const prefix string = ",\"rdma\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('{') + v149First := true + for v149Name, v149Value := range in.Rdma { + if v149First { + v149First = false + } else { + out.RawByte(',') + } + out.String(string(v149Name)) + out.RawByte(':') + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo38(out, v149Value) + } + out.RawByte('}') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo38(in *jlexer.Lexer, out *specs_go.LinuxRdma) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "hcaHandles": + if in.IsNull() { + in.Skip() + out.HcaHandles = nil + } else { + if out.HcaHandles == nil { + out.HcaHandles = new(uint32) + } + *out.HcaHandles = uint32(in.Uint32()) + } + case "hcaObjects": + if in.IsNull() { + in.Skip() + out.HcaObjects = nil + } else { + if out.HcaObjects == nil { + out.HcaObjects = new(uint32) + } + *out.HcaObjects = uint32(in.Uint32()) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo38(out *jwriter.Writer, in specs_go.LinuxRdma) { + out.RawByte('{') + first := true + _ = first + if in.HcaHandles != nil { + const prefix string = ",\"hcaHandles\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(*in.HcaHandles)) + } + if in.HcaObjects != nil { + const prefix string = ",\"hcaObjects\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(*in.HcaObjects)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo37(in *jlexer.Lexer, out *specs_go.LinuxNetwork) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "classID": + if in.IsNull() { + in.Skip() + out.ClassID = nil + } else { + if out.ClassID == nil { + out.ClassID = new(uint32) + } + *out.ClassID = uint32(in.Uint32()) + } + case "priorities": + if in.IsNull() { + in.Skip() + out.Priorities = nil + } else { + in.Delim('[') + if out.Priorities == nil { + if !in.IsDelim(']') { + out.Priorities = make([]specs_go.LinuxInterfacePriority, 0, 2) + } else { + out.Priorities = []specs_go.LinuxInterfacePriority{} + } + } else { + out.Priorities = (out.Priorities)[:0] + } + for !in.IsDelim(']') { + var v150 specs_go.LinuxInterfacePriority + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo39(in, &v150) + out.Priorities = append(out.Priorities, v150) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo37(out *jwriter.Writer, in specs_go.LinuxNetwork) { + out.RawByte('{') + first := true + _ = first + if in.ClassID != nil { + const prefix string = ",\"classID\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(*in.ClassID)) + } + if len(in.Priorities) != 0 { + const prefix string = ",\"priorities\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v151, v152 := range in.Priorities { + if v151 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo39(out, v152) + } + out.RawByte(']') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo39(in *jlexer.Lexer, out *specs_go.LinuxInterfacePriority) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "name": + out.Name = string(in.String()) + case "priority": + out.Priority = uint32(in.Uint32()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo39(out *jwriter.Writer, in specs_go.LinuxInterfacePriority) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"name\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Name)) + } + { + const prefix string = ",\"priority\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(in.Priority)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo36(in *jlexer.Lexer, out *specs_go.LinuxHugepageLimit) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "pageSize": + out.Pagesize = string(in.String()) + case "limit": + out.Limit = uint64(in.Uint64()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo36(out *jwriter.Writer, in specs_go.LinuxHugepageLimit) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"pageSize\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Pagesize)) + } + { + const prefix string = ",\"limit\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(in.Limit)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo35(in *jlexer.Lexer, out *specs_go.LinuxBlockIO) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "weight": + if in.IsNull() { + in.Skip() + out.Weight = nil + } else { + if out.Weight == nil { + out.Weight = new(uint16) + } + *out.Weight = uint16(in.Uint16()) + } + case "leafWeight": + if in.IsNull() { + in.Skip() + out.LeafWeight = nil + } else { + if out.LeafWeight == nil { + out.LeafWeight = new(uint16) + } + *out.LeafWeight = uint16(in.Uint16()) + } + case "weightDevice": + if in.IsNull() { + in.Skip() + out.WeightDevice = nil + } else { + in.Delim('[') + if out.WeightDevice == nil { + if !in.IsDelim(']') { + out.WeightDevice = make([]specs_go.LinuxWeightDevice, 0, 2) + } else { + out.WeightDevice = []specs_go.LinuxWeightDevice{} + } + } else { + out.WeightDevice = (out.WeightDevice)[:0] + } + for !in.IsDelim(']') { + var v153 specs_go.LinuxWeightDevice + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo40(in, &v153) + out.WeightDevice = append(out.WeightDevice, v153) + in.WantComma() + } + in.Delim(']') + } + case "throttleReadBpsDevice": + if in.IsNull() { + in.Skip() + out.ThrottleReadBpsDevice = nil + } else { + in.Delim('[') + if out.ThrottleReadBpsDevice == nil { + if !in.IsDelim(']') { + out.ThrottleReadBpsDevice = make([]specs_go.LinuxThrottleDevice, 0, 2) + } else { + out.ThrottleReadBpsDevice = []specs_go.LinuxThrottleDevice{} + } + } else { + out.ThrottleReadBpsDevice = (out.ThrottleReadBpsDevice)[:0] + } + for !in.IsDelim(']') { + var v154 specs_go.LinuxThrottleDevice + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(in, &v154) + out.ThrottleReadBpsDevice = append(out.ThrottleReadBpsDevice, v154) + in.WantComma() + } + in.Delim(']') + } + case "throttleWriteBpsDevice": + if in.IsNull() { + in.Skip() + out.ThrottleWriteBpsDevice = nil + } else { + in.Delim('[') + if out.ThrottleWriteBpsDevice == nil { + if !in.IsDelim(']') { + out.ThrottleWriteBpsDevice = make([]specs_go.LinuxThrottleDevice, 0, 2) + } else { + out.ThrottleWriteBpsDevice = []specs_go.LinuxThrottleDevice{} + } + } else { + out.ThrottleWriteBpsDevice = (out.ThrottleWriteBpsDevice)[:0] + } + for !in.IsDelim(']') { + var v155 specs_go.LinuxThrottleDevice + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(in, &v155) + out.ThrottleWriteBpsDevice = append(out.ThrottleWriteBpsDevice, v155) + in.WantComma() + } + in.Delim(']') + } + case "throttleReadIOPSDevice": + if in.IsNull() { + in.Skip() + out.ThrottleReadIOPSDevice = nil + } else { + in.Delim('[') + if out.ThrottleReadIOPSDevice == nil { + if !in.IsDelim(']') { + out.ThrottleReadIOPSDevice = make([]specs_go.LinuxThrottleDevice, 0, 2) + } else { + out.ThrottleReadIOPSDevice = []specs_go.LinuxThrottleDevice{} + } + } else { + out.ThrottleReadIOPSDevice = (out.ThrottleReadIOPSDevice)[:0] + } + for !in.IsDelim(']') { + var v156 specs_go.LinuxThrottleDevice + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(in, &v156) + out.ThrottleReadIOPSDevice = append(out.ThrottleReadIOPSDevice, v156) + in.WantComma() + } + in.Delim(']') + } + case "throttleWriteIOPSDevice": + if in.IsNull() { + in.Skip() + out.ThrottleWriteIOPSDevice = nil + } else { + in.Delim('[') + if out.ThrottleWriteIOPSDevice == nil { + if !in.IsDelim(']') { + out.ThrottleWriteIOPSDevice = make([]specs_go.LinuxThrottleDevice, 0, 2) + } else { + out.ThrottleWriteIOPSDevice = []specs_go.LinuxThrottleDevice{} + } + } else { + out.ThrottleWriteIOPSDevice = (out.ThrottleWriteIOPSDevice)[:0] + } + for !in.IsDelim(']') { + var v157 specs_go.LinuxThrottleDevice + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(in, &v157) + out.ThrottleWriteIOPSDevice = append(out.ThrottleWriteIOPSDevice, v157) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo35(out *jwriter.Writer, in specs_go.LinuxBlockIO) { + out.RawByte('{') + first := true + _ = first + if in.Weight != nil { + const prefix string = ",\"weight\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint16(uint16(*in.Weight)) + } + if in.LeafWeight != nil { + const prefix string = ",\"leafWeight\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint16(uint16(*in.LeafWeight)) + } + if len(in.WeightDevice) != 0 { + const prefix string = ",\"weightDevice\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v158, v159 := range in.WeightDevice { + if v158 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo40(out, v159) + } + out.RawByte(']') + } + } + if len(in.ThrottleReadBpsDevice) != 0 { + const prefix string = ",\"throttleReadBpsDevice\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v160, v161 := range in.ThrottleReadBpsDevice { + if v160 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(out, v161) + } + out.RawByte(']') + } + } + if len(in.ThrottleWriteBpsDevice) != 0 { + const prefix string = ",\"throttleWriteBpsDevice\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v162, v163 := range in.ThrottleWriteBpsDevice { + if v162 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(out, v163) + } + out.RawByte(']') + } + } + if len(in.ThrottleReadIOPSDevice) != 0 { + const prefix string = ",\"throttleReadIOPSDevice\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v164, v165 := range in.ThrottleReadIOPSDevice { + if v164 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(out, v165) + } + out.RawByte(']') + } + } + if len(in.ThrottleWriteIOPSDevice) != 0 { + const prefix string = ",\"throttleWriteIOPSDevice\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v166, v167 := range in.ThrottleWriteIOPSDevice { + if v166 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(out, v167) + } + out.RawByte(']') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(in *jlexer.Lexer, out *specs_go.LinuxThrottleDevice) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "rate": + out.Rate = uint64(in.Uint64()) + case "major": + out.Major = int64(in.Int64()) + case "minor": + out.Minor = int64(in.Int64()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo41(out *jwriter.Writer, in specs_go.LinuxThrottleDevice) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"rate\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(in.Rate)) + } + { + const prefix string = ",\"major\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(in.Major)) + } + { + const prefix string = ",\"minor\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(in.Minor)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo40(in *jlexer.Lexer, out *specs_go.LinuxWeightDevice) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "weight": + if in.IsNull() { + in.Skip() + out.Weight = nil + } else { + if out.Weight == nil { + out.Weight = new(uint16) + } + *out.Weight = uint16(in.Uint16()) + } + case "leafWeight": + if in.IsNull() { + in.Skip() + out.LeafWeight = nil + } else { + if out.LeafWeight == nil { + out.LeafWeight = new(uint16) + } + *out.LeafWeight = uint16(in.Uint16()) + } + case "major": + out.Major = int64(in.Int64()) + case "minor": + out.Minor = int64(in.Int64()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo40(out *jwriter.Writer, in specs_go.LinuxWeightDevice) { + out.RawByte('{') + first := true + _ = first + if in.Weight != nil { + const prefix string = ",\"weight\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint16(uint16(*in.Weight)) + } + if in.LeafWeight != nil { + const prefix string = ",\"leafWeight\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint16(uint16(*in.LeafWeight)) + } + { + const prefix string = ",\"major\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(in.Major)) + } + { + const prefix string = ",\"minor\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(in.Minor)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo34(in *jlexer.Lexer, out *specs_go.LinuxPids) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "limit": + out.Limit = int64(in.Int64()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo34(out *jwriter.Writer, in specs_go.LinuxPids) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"limit\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(in.Limit)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo33(in *jlexer.Lexer, out *specs_go.LinuxCPU) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "shares": + if in.IsNull() { + in.Skip() + out.Shares = nil + } else { + if out.Shares == nil { + out.Shares = new(uint64) + } + *out.Shares = uint64(in.Uint64()) + } + case "quota": + if in.IsNull() { + in.Skip() + out.Quota = nil + } else { + if out.Quota == nil { + out.Quota = new(int64) + } + *out.Quota = int64(in.Int64()) + } + case "period": + if in.IsNull() { + in.Skip() + out.Period = nil + } else { + if out.Period == nil { + out.Period = new(uint64) + } + *out.Period = uint64(in.Uint64()) + } + case "realtimeRuntime": + if in.IsNull() { + in.Skip() + out.RealtimeRuntime = nil + } else { + if out.RealtimeRuntime == nil { + out.RealtimeRuntime = new(int64) + } + *out.RealtimeRuntime = int64(in.Int64()) + } + case "realtimePeriod": + if in.IsNull() { + in.Skip() + out.RealtimePeriod = nil + } else { + if out.RealtimePeriod == nil { + out.RealtimePeriod = new(uint64) + } + *out.RealtimePeriod = uint64(in.Uint64()) + } + case "cpus": + out.Cpus = string(in.String()) + case "mems": + out.Mems = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo33(out *jwriter.Writer, in specs_go.LinuxCPU) { + out.RawByte('{') + first := true + _ = first + if in.Shares != nil { + const prefix string = ",\"shares\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(*in.Shares)) + } + if in.Quota != nil { + const prefix string = ",\"quota\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(*in.Quota)) + } + if in.Period != nil { + const prefix string = ",\"period\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(*in.Period)) + } + if in.RealtimeRuntime != nil { + const prefix string = ",\"realtimeRuntime\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(*in.RealtimeRuntime)) + } + if in.RealtimePeriod != nil { + const prefix string = ",\"realtimePeriod\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(*in.RealtimePeriod)) + } + if in.Cpus != "" { + const prefix string = ",\"cpus\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Cpus)) + } + if in.Mems != "" { + const prefix string = ",\"mems\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Mems)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo32(in *jlexer.Lexer, out *specs_go.LinuxMemory) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "limit": + if in.IsNull() { + in.Skip() + out.Limit = nil + } else { + if out.Limit == nil { + out.Limit = new(int64) + } + *out.Limit = int64(in.Int64()) + } + case "reservation": + if in.IsNull() { + in.Skip() + out.Reservation = nil + } else { + if out.Reservation == nil { + out.Reservation = new(int64) + } + *out.Reservation = int64(in.Int64()) + } + case "swap": + if in.IsNull() { + in.Skip() + out.Swap = nil + } else { + if out.Swap == nil { + out.Swap = new(int64) + } + *out.Swap = int64(in.Int64()) + } + case "kernel": + if in.IsNull() { + in.Skip() + out.Kernel = nil + } else { + if out.Kernel == nil { + out.Kernel = new(int64) + } + *out.Kernel = int64(in.Int64()) + } + case "kernelTCP": + if in.IsNull() { + in.Skip() + out.KernelTCP = nil + } else { + if out.KernelTCP == nil { + out.KernelTCP = new(int64) + } + *out.KernelTCP = int64(in.Int64()) + } + case "swappiness": + if in.IsNull() { + in.Skip() + out.Swappiness = nil + } else { + if out.Swappiness == nil { + out.Swappiness = new(uint64) + } + *out.Swappiness = uint64(in.Uint64()) + } + case "disableOOMKiller": + if in.IsNull() { + in.Skip() + out.DisableOOMKiller = nil + } else { + if out.DisableOOMKiller == nil { + out.DisableOOMKiller = new(bool) + } + *out.DisableOOMKiller = bool(in.Bool()) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo32(out *jwriter.Writer, in specs_go.LinuxMemory) { + out.RawByte('{') + first := true + _ = first + if in.Limit != nil { + const prefix string = ",\"limit\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(*in.Limit)) + } + if in.Reservation != nil { + const prefix string = ",\"reservation\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(*in.Reservation)) + } + if in.Swap != nil { + const prefix string = ",\"swap\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(*in.Swap)) + } + if in.Kernel != nil { + const prefix string = ",\"kernel\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(*in.Kernel)) + } + if in.KernelTCP != nil { + const prefix string = ",\"kernelTCP\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(*in.KernelTCP)) + } + if in.Swappiness != nil { + const prefix string = ",\"swappiness\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(*in.Swappiness)) + } + if in.DisableOOMKiller != nil { + const prefix string = ",\"disableOOMKiller\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(*in.DisableOOMKiller)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo31(in *jlexer.Lexer, out *specs_go.LinuxDeviceCgroup) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "allow": + out.Allow = bool(in.Bool()) + case "type": + out.Type = string(in.String()) + case "major": + if in.IsNull() { + in.Skip() + out.Major = nil + } else { + if out.Major == nil { + out.Major = new(int64) + } + *out.Major = int64(in.Int64()) + } + case "minor": + if in.IsNull() { + in.Skip() + out.Minor = nil + } else { + if out.Minor == nil { + out.Minor = new(int64) + } + *out.Minor = int64(in.Int64()) + } + case "access": + out.Access = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo31(out *jwriter.Writer, in specs_go.LinuxDeviceCgroup) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"allow\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.Allow)) + } + if in.Type != "" { + const prefix string = ",\"type\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Type)) + } + if in.Major != nil { + const prefix string = ",\"major\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(*in.Major)) + } + if in.Minor != nil { + const prefix string = ",\"minor\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int64(int64(*in.Minor)) + } + if in.Access != "" { + const prefix string = ",\"access\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Access)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo23(in *jlexer.Lexer, out *specs_go.LinuxIDMapping) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "containerID": + out.ContainerID = uint32(in.Uint32()) + case "hostID": + out.HostID = uint32(in.Uint32()) + case "size": + out.Size = uint32(in.Uint32()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo23(out *jwriter.Writer, in specs_go.LinuxIDMapping) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"containerID\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(in.ContainerID)) + } + { + const prefix string = ",\"hostID\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(in.HostID)) + } + { + const prefix string = ",\"size\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(in.Size)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo5(in *jlexer.Lexer, out *specs_go.Hooks) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "prestart": + if in.IsNull() { + in.Skip() + out.Prestart = nil + } else { + in.Delim('[') + if out.Prestart == nil { + if !in.IsDelim(']') { + out.Prestart = make([]specs_go.Hook, 0, 1) + } else { + out.Prestart = []specs_go.Hook{} + } + } else { + out.Prestart = (out.Prestart)[:0] + } + for !in.IsDelim(']') { + var v168 specs_go.Hook + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(in, &v168) + out.Prestart = append(out.Prestart, v168) + in.WantComma() + } + in.Delim(']') + } + case "poststart": + if in.IsNull() { + in.Skip() + out.Poststart = nil + } else { + in.Delim('[') + if out.Poststart == nil { + if !in.IsDelim(']') { + out.Poststart = make([]specs_go.Hook, 0, 1) + } else { + out.Poststart = []specs_go.Hook{} + } + } else { + out.Poststart = (out.Poststart)[:0] + } + for !in.IsDelim(']') { + var v169 specs_go.Hook + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(in, &v169) + out.Poststart = append(out.Poststart, v169) + in.WantComma() + } + in.Delim(']') + } + case "poststop": + if in.IsNull() { + in.Skip() + out.Poststop = nil + } else { + in.Delim('[') + if out.Poststop == nil { + if !in.IsDelim(']') { + out.Poststop = make([]specs_go.Hook, 0, 1) + } else { + out.Poststop = []specs_go.Hook{} + } + } else { + out.Poststop = (out.Poststop)[:0] + } + for !in.IsDelim(']') { + var v170 specs_go.Hook + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(in, &v170) + out.Poststop = append(out.Poststop, v170) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo5(out *jwriter.Writer, in specs_go.Hooks) { + out.RawByte('{') + first := true + _ = first + if len(in.Prestart) != 0 { + const prefix string = ",\"prestart\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v171, v172 := range in.Prestart { + if v171 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(out, v172) + } + out.RawByte(']') + } + } + if len(in.Poststart) != 0 { + const prefix string = ",\"poststart\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v173, v174 := range in.Poststart { + if v173 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(out, v174) + } + out.RawByte(']') + } + } + if len(in.Poststop) != 0 { + const prefix string = ",\"poststop\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v175, v176 := range in.Poststop { + if v175 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo(out, v176) + } + out.RawByte(']') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo4(in *jlexer.Lexer, out *specs_go.Mount) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "destination": + out.Destination = string(in.String()) + case "type": + out.Type = string(in.String()) + case "source": + out.Source = string(in.String()) + case "options": + if in.IsNull() { + in.Skip() + out.Options = nil + } else { + in.Delim('[') + if out.Options == nil { + if !in.IsDelim(']') { + out.Options = make([]string, 0, 4) + } else { + out.Options = []string{} + } + } else { + out.Options = (out.Options)[:0] + } + for !in.IsDelim(']') { + var v177 string + v177 = string(in.String()) + out.Options = append(out.Options, v177) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo4(out *jwriter.Writer, in specs_go.Mount) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"destination\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Destination)) + } + if in.Type != "" { + const prefix string = ",\"type\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Type)) + } + if in.Source != "" { + const prefix string = ",\"source\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Source)) + } + if len(in.Options) != 0 { + const prefix string = ",\"options\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v178, v179 := range in.Options { + if v178 > 0 { + out.RawByte(',') + } + out.String(string(v179)) + } + out.RawByte(']') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo3(in *jlexer.Lexer, out *specs_go.Root) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "path": + out.Path = string(in.String()) + case "readonly": + out.Readonly = bool(in.Bool()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo3(out *jwriter.Writer, in specs_go.Root) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"path\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Path)) + } + if in.Readonly { + const prefix string = ",\"readonly\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.Readonly)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo2(in *jlexer.Lexer, out *specs_go.Process) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "terminal": + out.Terminal = bool(in.Bool()) + case "consoleSize": + if in.IsNull() { + in.Skip() + out.ConsoleSize = nil + } else { + if out.ConsoleSize == nil { + out.ConsoleSize = new(specs_go.Box) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo42(in, &*out.ConsoleSize) + } + case "user": + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo43(in, &out.User) + case "args": + if in.IsNull() { + in.Skip() + out.Args = nil + } else { + in.Delim('[') + if out.Args == nil { + if !in.IsDelim(']') { + out.Args = make([]string, 0, 4) + } else { + out.Args = []string{} + } + } else { + out.Args = (out.Args)[:0] + } + for !in.IsDelim(']') { + var v180 string + v180 = string(in.String()) + out.Args = append(out.Args, v180) + in.WantComma() + } + in.Delim(']') + } + case "env": + if in.IsNull() { + in.Skip() + out.Env = nil + } else { + in.Delim('[') + if out.Env == nil { + if !in.IsDelim(']') { + out.Env = make([]string, 0, 4) + } else { + out.Env = []string{} + } + } else { + out.Env = (out.Env)[:0] + } + for !in.IsDelim(']') { + var v181 string + v181 = string(in.String()) + out.Env = append(out.Env, v181) + in.WantComma() + } + in.Delim(']') + } + case "cwd": + out.Cwd = string(in.String()) + case "capabilities": + if in.IsNull() { + in.Skip() + out.Capabilities = nil + } else { + if out.Capabilities == nil { + out.Capabilities = new(specs_go.LinuxCapabilities) + } + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo44(in, &*out.Capabilities) + } + case "rlimits": + if in.IsNull() { + in.Skip() + out.Rlimits = nil + } else { + in.Delim('[') + if out.Rlimits == nil { + if !in.IsDelim(']') { + out.Rlimits = make([]specs_go.POSIXRlimit, 0, 2) + } else { + out.Rlimits = []specs_go.POSIXRlimit{} + } + } else { + out.Rlimits = (out.Rlimits)[:0] + } + for !in.IsDelim(']') { + var v182 specs_go.POSIXRlimit + easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo45(in, &v182) + out.Rlimits = append(out.Rlimits, v182) + in.WantComma() + } + in.Delim(']') + } + case "noNewPrivileges": + out.NoNewPrivileges = bool(in.Bool()) + case "apparmorProfile": + out.ApparmorProfile = string(in.String()) + case "oomScoreAdj": + if in.IsNull() { + in.Skip() + out.OOMScoreAdj = nil + } else { + if out.OOMScoreAdj == nil { + out.OOMScoreAdj = new(int) + } + *out.OOMScoreAdj = int(in.Int()) + } + case "selinuxLabel": + out.SelinuxLabel = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo2(out *jwriter.Writer, in specs_go.Process) { + out.RawByte('{') + first := true + _ = first + if in.Terminal { + const prefix string = ",\"terminal\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.Terminal)) + } + if in.ConsoleSize != nil { + const prefix string = ",\"consoleSize\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo42(out, *in.ConsoleSize) + } + { + const prefix string = ",\"user\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo43(out, in.User) + } + { + const prefix string = ",\"args\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.Args == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v183, v184 := range in.Args { + if v183 > 0 { + out.RawByte(',') + } + out.String(string(v184)) + } + out.RawByte(']') + } + } + if len(in.Env) != 0 { + const prefix string = ",\"env\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v185, v186 := range in.Env { + if v185 > 0 { + out.RawByte(',') + } + out.String(string(v186)) + } + out.RawByte(']') + } + } + { + const prefix string = ",\"cwd\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Cwd)) + } + if in.Capabilities != nil { + const prefix string = ",\"capabilities\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo44(out, *in.Capabilities) + } + if len(in.Rlimits) != 0 { + const prefix string = ",\"rlimits\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v187, v188 := range in.Rlimits { + if v187 > 0 { + out.RawByte(',') + } + easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo45(out, v188) + } + out.RawByte(']') + } + } + if in.NoNewPrivileges { + const prefix string = ",\"noNewPrivileges\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.NoNewPrivileges)) + } + if in.ApparmorProfile != "" { + const prefix string = ",\"apparmorProfile\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ApparmorProfile)) + } + if in.OOMScoreAdj != nil { + const prefix string = ",\"oomScoreAdj\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Int(int(*in.OOMScoreAdj)) + } + if in.SelinuxLabel != "" { + const prefix string = ",\"selinuxLabel\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.SelinuxLabel)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo45(in *jlexer.Lexer, out *specs_go.POSIXRlimit) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "type": + out.Type = string(in.String()) + case "hard": + out.Hard = uint64(in.Uint64()) + case "soft": + out.Soft = uint64(in.Uint64()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo45(out *jwriter.Writer, in specs_go.POSIXRlimit) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"type\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Type)) + } + { + const prefix string = ",\"hard\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(in.Hard)) + } + { + const prefix string = ",\"soft\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint64(uint64(in.Soft)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo44(in *jlexer.Lexer, out *specs_go.LinuxCapabilities) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "bounding": + if in.IsNull() { + in.Skip() + out.Bounding = nil + } else { + in.Delim('[') + if out.Bounding == nil { + if !in.IsDelim(']') { + out.Bounding = make([]string, 0, 4) + } else { + out.Bounding = []string{} + } + } else { + out.Bounding = (out.Bounding)[:0] + } + for !in.IsDelim(']') { + var v189 string + v189 = string(in.String()) + out.Bounding = append(out.Bounding, v189) + in.WantComma() + } + in.Delim(']') + } + case "effective": + if in.IsNull() { + in.Skip() + out.Effective = nil + } else { + in.Delim('[') + if out.Effective == nil { + if !in.IsDelim(']') { + out.Effective = make([]string, 0, 4) + } else { + out.Effective = []string{} + } + } else { + out.Effective = (out.Effective)[:0] + } + for !in.IsDelim(']') { + var v190 string + v190 = string(in.String()) + out.Effective = append(out.Effective, v190) + in.WantComma() + } + in.Delim(']') + } + case "inheritable": + if in.IsNull() { + in.Skip() + out.Inheritable = nil + } else { + in.Delim('[') + if out.Inheritable == nil { + if !in.IsDelim(']') { + out.Inheritable = make([]string, 0, 4) + } else { + out.Inheritable = []string{} + } + } else { + out.Inheritable = (out.Inheritable)[:0] + } + for !in.IsDelim(']') { + var v191 string + v191 = string(in.String()) + out.Inheritable = append(out.Inheritable, v191) + in.WantComma() + } + in.Delim(']') + } + case "permitted": + if in.IsNull() { + in.Skip() + out.Permitted = nil + } else { + in.Delim('[') + if out.Permitted == nil { + if !in.IsDelim(']') { + out.Permitted = make([]string, 0, 4) + } else { + out.Permitted = []string{} + } + } else { + out.Permitted = (out.Permitted)[:0] + } + for !in.IsDelim(']') { + var v192 string + v192 = string(in.String()) + out.Permitted = append(out.Permitted, v192) + in.WantComma() + } + in.Delim(']') + } + case "ambient": + if in.IsNull() { + in.Skip() + out.Ambient = nil + } else { + in.Delim('[') + if out.Ambient == nil { + if !in.IsDelim(']') { + out.Ambient = make([]string, 0, 4) + } else { + out.Ambient = []string{} + } + } else { + out.Ambient = (out.Ambient)[:0] + } + for !in.IsDelim(']') { + var v193 string + v193 = string(in.String()) + out.Ambient = append(out.Ambient, v193) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo44(out *jwriter.Writer, in specs_go.LinuxCapabilities) { + out.RawByte('{') + first := true + _ = first + if len(in.Bounding) != 0 { + const prefix string = ",\"bounding\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v194, v195 := range in.Bounding { + if v194 > 0 { + out.RawByte(',') + } + out.String(string(v195)) + } + out.RawByte(']') + } + } + if len(in.Effective) != 0 { + const prefix string = ",\"effective\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v196, v197 := range in.Effective { + if v196 > 0 { + out.RawByte(',') + } + out.String(string(v197)) + } + out.RawByte(']') + } + } + if len(in.Inheritable) != 0 { + const prefix string = ",\"inheritable\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v198, v199 := range in.Inheritable { + if v198 > 0 { + out.RawByte(',') + } + out.String(string(v199)) + } + out.RawByte(']') + } + } + if len(in.Permitted) != 0 { + const prefix string = ",\"permitted\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v200, v201 := range in.Permitted { + if v200 > 0 { + out.RawByte(',') + } + out.String(string(v201)) + } + out.RawByte(']') + } + } + if len(in.Ambient) != 0 { + const prefix string = ",\"ambient\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v202, v203 := range in.Ambient { + if v202 > 0 { + out.RawByte(',') + } + out.String(string(v203)) + } + out.RawByte(']') + } + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo43(in *jlexer.Lexer, out *specs_go.User) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "uid": + out.UID = uint32(in.Uint32()) + case "gid": + out.GID = uint32(in.Uint32()) + case "additionalGids": + if in.IsNull() { + in.Skip() + out.AdditionalGids = nil + } else { + in.Delim('[') + if out.AdditionalGids == nil { + if !in.IsDelim(']') { + out.AdditionalGids = make([]uint32, 0, 16) + } else { + out.AdditionalGids = []uint32{} + } + } else { + out.AdditionalGids = (out.AdditionalGids)[:0] + } + for !in.IsDelim(']') { + var v204 uint32 + v204 = uint32(in.Uint32()) + out.AdditionalGids = append(out.AdditionalGids, v204) + in.WantComma() + } + in.Delim(']') + } + case "username": + out.Username = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo43(out *jwriter.Writer, in specs_go.User) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"uid\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(in.UID)) + } + { + const prefix string = ",\"gid\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint32(uint32(in.GID)) + } + if len(in.AdditionalGids) != 0 { + const prefix string = ",\"additionalGids\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + { + out.RawByte('[') + for v205, v206 := range in.AdditionalGids { + if v205 > 0 { + out.RawByte(',') + } + out.Uint32(uint32(v206)) + } + out.RawByte(']') + } + } + if in.Username != "" { + const prefix string = ",\"username\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Username)) + } + out.RawByte('}') +} +func easyjson1dbef17bDecodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo42(in *jlexer.Lexer, out *specs_go.Box) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "height": + out.Height = uint(in.Uint()) + case "width": + out.Width = uint(in.Uint()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjson1dbef17bEncodeGithubComContainersLibpodVendorGithubComOpencontainersRuntimeSpecSpecsGo42(out *jwriter.Writer, in specs_go.Box) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"height\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint(uint(in.Height)) + } + { + const prefix string = ",\"width\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Uint(uint(in.Width)) + } + out.RawByte('}') +} diff --git a/libpod/pod_easyjson.go b/libpod/pod_easyjson.go new file mode 100644 index 000000000..6c1c939f3 --- /dev/null +++ b/libpod/pod_easyjson.go @@ -0,0 +1,749 @@ +// +build seccomp ostree selinux varlink exclude_graphdriver_devicemapper + +// Code generated by easyjson for marshaling/unmarshaling. DO NOT EDIT. + +package libpod + +import ( + json "encoding/json" + easyjson "github.com/mailru/easyjson" + jlexer "github.com/mailru/easyjson/jlexer" + jwriter "github.com/mailru/easyjson/jwriter" +) + +// suppress unused package warning +var ( + _ *json.RawMessage + _ *jlexer.Lexer + _ *jwriter.Writer + _ easyjson.Marshaler +) + +func easyjsonBe091417DecodeGithubComContainersLibpodLibpod(in *jlexer.Lexer, out *podState) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "cgroupPath": + out.CgroupPath = string(in.String()) + case "InfraContainerID": + out.InfraContainerID = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjsonBe091417EncodeGithubComContainersLibpodLibpod(out *jwriter.Writer, in podState) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"cgroupPath\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.CgroupPath)) + } + { + const prefix string = ",\"InfraContainerID\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.InfraContainerID)) + } + out.RawByte('}') +} + +// MarshalJSON supports json.Marshaler interface +func (v podState) MarshalJSON() ([]byte, error) { + w := jwriter.Writer{} + easyjsonBe091417EncodeGithubComContainersLibpodLibpod(&w, v) + return w.Buffer.BuildBytes(), w.Error +} + +// MarshalEasyJSON supports easyjson.Marshaler interface +func (v podState) MarshalEasyJSON(w *jwriter.Writer) { + easyjsonBe091417EncodeGithubComContainersLibpodLibpod(w, v) +} + +// UnmarshalJSON supports json.Unmarshaler interface +func (v *podState) UnmarshalJSON(data []byte) error { + r := jlexer.Lexer{Data: data} + easyjsonBe091417DecodeGithubComContainersLibpodLibpod(&r, v) + return r.Error() +} + +// UnmarshalEasyJSON supports easyjson.Unmarshaler interface +func (v *podState) UnmarshalEasyJSON(l *jlexer.Lexer) { + easyjsonBe091417DecodeGithubComContainersLibpodLibpod(l, v) +} +func easyjsonBe091417DecodeGithubComContainersLibpodLibpod1(in *jlexer.Lexer, out *PodInspectState) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "cgroupPath": + out.CgroupPath = string(in.String()) + case "infraContainerID": + out.InfraContainerID = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjsonBe091417EncodeGithubComContainersLibpodLibpod1(out *jwriter.Writer, in PodInspectState) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"cgroupPath\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.CgroupPath)) + } + { + const prefix string = ",\"infraContainerID\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.InfraContainerID)) + } + out.RawByte('}') +} + +// MarshalJSON supports json.Marshaler interface +func (v PodInspectState) MarshalJSON() ([]byte, error) { + w := jwriter.Writer{} + easyjsonBe091417EncodeGithubComContainersLibpodLibpod1(&w, v) + return w.Buffer.BuildBytes(), w.Error +} + +// MarshalEasyJSON supports easyjson.Marshaler interface +func (v PodInspectState) MarshalEasyJSON(w *jwriter.Writer) { + easyjsonBe091417EncodeGithubComContainersLibpodLibpod1(w, v) +} + +// UnmarshalJSON supports json.Unmarshaler interface +func (v *PodInspectState) UnmarshalJSON(data []byte) error { + r := jlexer.Lexer{Data: data} + easyjsonBe091417DecodeGithubComContainersLibpodLibpod1(&r, v) + return r.Error() +} + +// UnmarshalEasyJSON supports easyjson.Unmarshaler interface +func (v *PodInspectState) UnmarshalEasyJSON(l *jlexer.Lexer) { + easyjsonBe091417DecodeGithubComContainersLibpodLibpod1(l, v) +} +func easyjsonBe091417DecodeGithubComContainersLibpodLibpod2(in *jlexer.Lexer, out *PodInspect) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "Config": + if in.IsNull() { + in.Skip() + out.Config = nil + } else { + if out.Config == nil { + out.Config = new(PodConfig) + } + if data := in.Raw(); in.Ok() { + in.AddError((*out.Config).UnmarshalJSON(data)) + } + } + case "State": + if in.IsNull() { + in.Skip() + out.State = nil + } else { + if out.State == nil { + out.State = new(PodInspectState) + } + if data := in.Raw(); in.Ok() { + in.AddError((*out.State).UnmarshalJSON(data)) + } + } + case "Containers": + if in.IsNull() { + in.Skip() + out.Containers = nil + } else { + in.Delim('[') + if out.Containers == nil { + if !in.IsDelim(']') { + out.Containers = make([]PodContainerInfo, 0, 2) + } else { + out.Containers = []PodContainerInfo{} + } + } else { + out.Containers = (out.Containers)[:0] + } + for !in.IsDelim(']') { + var v1 PodContainerInfo + if data := in.Raw(); in.Ok() { + in.AddError((v1).UnmarshalJSON(data)) + } + out.Containers = append(out.Containers, v1) + in.WantComma() + } + in.Delim(']') + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjsonBe091417EncodeGithubComContainersLibpodLibpod2(out *jwriter.Writer, in PodInspect) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"Config\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.Config == nil { + out.RawString("null") + } else { + out.Raw((*in.Config).MarshalJSON()) + } + } + { + const prefix string = ",\"State\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.State == nil { + out.RawString("null") + } else { + out.Raw((*in.State).MarshalJSON()) + } + } + { + const prefix string = ",\"Containers\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.Containers == nil && (out.Flags&jwriter.NilSliceAsEmpty) == 0 { + out.RawString("null") + } else { + out.RawByte('[') + for v2, v3 := range in.Containers { + if v2 > 0 { + out.RawByte(',') + } + out.Raw((v3).MarshalJSON()) + } + out.RawByte(']') + } + } + out.RawByte('}') +} + +// MarshalJSON supports json.Marshaler interface +func (v PodInspect) MarshalJSON() ([]byte, error) { + w := jwriter.Writer{} + easyjsonBe091417EncodeGithubComContainersLibpodLibpod2(&w, v) + return w.Buffer.BuildBytes(), w.Error +} + +// MarshalEasyJSON supports easyjson.Marshaler interface +func (v PodInspect) MarshalEasyJSON(w *jwriter.Writer) { + easyjsonBe091417EncodeGithubComContainersLibpodLibpod2(w, v) +} + +// UnmarshalJSON supports json.Unmarshaler interface +func (v *PodInspect) UnmarshalJSON(data []byte) error { + r := jlexer.Lexer{Data: data} + easyjsonBe091417DecodeGithubComContainersLibpodLibpod2(&r, v) + return r.Error() +} + +// UnmarshalEasyJSON supports easyjson.Unmarshaler interface +func (v *PodInspect) UnmarshalEasyJSON(l *jlexer.Lexer) { + easyjsonBe091417DecodeGithubComContainersLibpodLibpod2(l, v) +} +func easyjsonBe091417DecodeGithubComContainersLibpodLibpod3(in *jlexer.Lexer, out *PodContainerInfo) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "id": + out.ID = string(in.String()) + case "state": + out.State = string(in.String()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjsonBe091417EncodeGithubComContainersLibpodLibpod3(out *jwriter.Writer, in PodContainerInfo) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"id\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ID)) + } + { + const prefix string = ",\"state\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.State)) + } + out.RawByte('}') +} + +// MarshalJSON supports json.Marshaler interface +func (v PodContainerInfo) MarshalJSON() ([]byte, error) { + w := jwriter.Writer{} + easyjsonBe091417EncodeGithubComContainersLibpodLibpod3(&w, v) + return w.Buffer.BuildBytes(), w.Error +} + +// MarshalEasyJSON supports easyjson.Marshaler interface +func (v PodContainerInfo) MarshalEasyJSON(w *jwriter.Writer) { + easyjsonBe091417EncodeGithubComContainersLibpodLibpod3(w, v) +} + +// UnmarshalJSON supports json.Unmarshaler interface +func (v *PodContainerInfo) UnmarshalJSON(data []byte) error { + r := jlexer.Lexer{Data: data} + easyjsonBe091417DecodeGithubComContainersLibpodLibpod3(&r, v) + return r.Error() +} + +// UnmarshalEasyJSON supports easyjson.Unmarshaler interface +func (v *PodContainerInfo) UnmarshalEasyJSON(l *jlexer.Lexer) { + easyjsonBe091417DecodeGithubComContainersLibpodLibpod3(l, v) +} +func easyjsonBe091417DecodeGithubComContainersLibpodLibpod4(in *jlexer.Lexer, out *PodConfig) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "id": + out.ID = string(in.String()) + case "name": + out.Name = string(in.String()) + case "namespace": + out.Namespace = string(in.String()) + case "labels": + if in.IsNull() { + in.Skip() + } else { + in.Delim('{') + if !in.IsDelim('}') { + out.Labels = make(map[string]string) + } else { + out.Labels = nil + } + for !in.IsDelim('}') { + key := string(in.String()) + in.WantColon() + var v4 string + v4 = string(in.String()) + (out.Labels)[key] = v4 + in.WantComma() + } + in.Delim('}') + } + case "cgroupParent": + out.CgroupParent = string(in.String()) + case "sharesCgroup": + out.UsePodCgroup = bool(in.Bool()) + case "sharesPid": + out.UsePodPID = bool(in.Bool()) + case "sharesIpc": + out.UsePodIPC = bool(in.Bool()) + case "sharesNet": + out.UsePodNet = bool(in.Bool()) + case "sharesMnt": + out.UsePodMount = bool(in.Bool()) + case "sharesUser": + out.UsePodUser = bool(in.Bool()) + case "sharesUts": + out.UsePodUTS = bool(in.Bool()) + case "infraConfig": + if in.IsNull() { + in.Skip() + out.InfraContainer = nil + } else { + if out.InfraContainer == nil { + out.InfraContainer = new(InfraContainerConfig) + } + easyjsonBe091417DecodeGithubComContainersLibpodLibpod5(in, &*out.InfraContainer) + } + case "created": + if data := in.Raw(); in.Ok() { + in.AddError((out.CreatedTime).UnmarshalJSON(data)) + } + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjsonBe091417EncodeGithubComContainersLibpodLibpod4(out *jwriter.Writer, in PodConfig) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"id\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.ID)) + } + { + const prefix string = ",\"name\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Name)) + } + if in.Namespace != "" { + const prefix string = ",\"namespace\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.Namespace)) + } + { + const prefix string = ",\"labels\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.Labels == nil && (out.Flags&jwriter.NilMapAsEmpty) == 0 { + out.RawString(`null`) + } else { + out.RawByte('{') + v5First := true + for v5Name, v5Value := range in.Labels { + if v5First { + v5First = false + } else { + out.RawByte(',') + } + out.String(string(v5Name)) + out.RawByte(':') + out.String(string(v5Value)) + } + out.RawByte('}') + } + } + { + const prefix string = ",\"cgroupParent\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.String(string(in.CgroupParent)) + } + if in.UsePodCgroup { + const prefix string = ",\"sharesCgroup\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.UsePodCgroup)) + } + if in.UsePodPID { + const prefix string = ",\"sharesPid\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.UsePodPID)) + } + if in.UsePodIPC { + const prefix string = ",\"sharesIpc\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.UsePodIPC)) + } + if in.UsePodNet { + const prefix string = ",\"sharesNet\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.UsePodNet)) + } + if in.UsePodMount { + const prefix string = ",\"sharesMnt\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.UsePodMount)) + } + if in.UsePodUser { + const prefix string = ",\"sharesUser\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.UsePodUser)) + } + if in.UsePodUTS { + const prefix string = ",\"sharesUts\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.UsePodUTS)) + } + { + const prefix string = ",\"infraConfig\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + if in.InfraContainer == nil { + out.RawString("null") + } else { + easyjsonBe091417EncodeGithubComContainersLibpodLibpod5(out, *in.InfraContainer) + } + } + { + const prefix string = ",\"created\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Raw((in.CreatedTime).MarshalJSON()) + } + out.RawByte('}') +} + +// MarshalJSON supports json.Marshaler interface +func (v PodConfig) MarshalJSON() ([]byte, error) { + w := jwriter.Writer{} + easyjsonBe091417EncodeGithubComContainersLibpodLibpod4(&w, v) + return w.Buffer.BuildBytes(), w.Error +} + +// MarshalEasyJSON supports easyjson.Marshaler interface +func (v PodConfig) MarshalEasyJSON(w *jwriter.Writer) { + easyjsonBe091417EncodeGithubComContainersLibpodLibpod4(w, v) +} + +// UnmarshalJSON supports json.Unmarshaler interface +func (v *PodConfig) UnmarshalJSON(data []byte) error { + r := jlexer.Lexer{Data: data} + easyjsonBe091417DecodeGithubComContainersLibpodLibpod4(&r, v) + return r.Error() +} + +// UnmarshalEasyJSON supports easyjson.Unmarshaler interface +func (v *PodConfig) UnmarshalEasyJSON(l *jlexer.Lexer) { + easyjsonBe091417DecodeGithubComContainersLibpodLibpod4(l, v) +} +func easyjsonBe091417DecodeGithubComContainersLibpodLibpod5(in *jlexer.Lexer, out *InfraContainerConfig) { + isTopLevel := in.IsStart() + if in.IsNull() { + if isTopLevel { + in.Consumed() + } + in.Skip() + return + } + in.Delim('{') + for !in.IsDelim('}') { + key := in.UnsafeString() + in.WantColon() + if in.IsNull() { + in.Skip() + in.WantComma() + continue + } + switch key { + case "makeInfraContainer": + out.HasInfraContainer = bool(in.Bool()) + default: + in.SkipRecursive() + } + in.WantComma() + } + in.Delim('}') + if isTopLevel { + in.Consumed() + } +} +func easyjsonBe091417EncodeGithubComContainersLibpodLibpod5(out *jwriter.Writer, in InfraContainerConfig) { + out.RawByte('{') + first := true + _ = first + { + const prefix string = ",\"makeInfraContainer\":" + if first { + first = false + out.RawString(prefix[1:]) + } else { + out.RawString(prefix) + } + out.Bool(bool(in.HasInfraContainer)) + } + out.RawByte('}') +} diff --git a/pkg/spec/createconfig.go b/pkg/spec/createconfig.go index 887ef8e95..e9a5dc9dc 100644 --- a/pkg/spec/createconfig.go +++ b/pkg/spec/createconfig.go @@ -2,6 +2,7 @@ package createconfig import ( "encoding/json" + "net" "os" "strconv" "strings" @@ -311,9 +312,6 @@ func (c *CreateConfig) GetContainerCreateOptions(runtime *libpod.Runtime) ([]lib var pod *libpod.Pod var err error - // Uncomment after talking to mheon about unimplemented funcs - // options = append(options, libpod.WithLabels(c.labels)) - if c.Interactive { options = append(options, libpod.WithStdin()) } @@ -442,6 +440,15 @@ func (c *CreateConfig) GetContainerCreateOptions(runtime *libpod.Runtime) ([]lib if logPath != "" { options = append(options, libpod.WithLogPath(logPath)) } + if c.IPAddress != "" { + ip := net.ParseIP(c.IPAddress) + if ip == nil { + return nil, errors.Wrapf(libpod.ErrInvalidArg, "cannot parse %s as IP address", c.IPAddress) + } else if ip.To4() == nil { + return nil, errors.Wrapf(libpod.ErrInvalidArg, "%s is not an IPv4 address", c.IPAddress) + } + options = append(options, libpod.WithStaticIP(ip)) + } options = append(options, libpod.WithPrivileged(c.Privileged)) -- cgit v1.2.3-54-g00ecf