//go:build linux package operator import "amadan.net/carlos/platform.git/launchctx/controlname" type schemaCommandConfigV2 struct { commandConfig SchemaProfile string `json:"schema_profile"` SchemaManifestDigest string `json:"schema_manifest_digest"` } func parseSchemaCommandConfigV2(raw []byte) (schemaCommandConfigV2, *schemaVerifierV2, error) { var c schemaCommandConfigV2 if len(raw) == 0 || len(raw) > 8192 || strict(raw, &c) != nil || c.Version != 2 || !controlname.ValidAccount(c.Account) || !controlname.ValidApp(c.App) || !controlname.ValidHostShape(c.Host) { return schemaCommandConfigV2{}, nil, ErrRefused } v, err := newSchemaVerifierV2(Pins{c.Role, c.Origin, c.Installation, c.Registry, c.Device, c.PublicKey, c.Actions}, c.SchemaProfile, c.SchemaManifestDigest) if err != nil || c.KeyID != v.base.kid { return schemaCommandConfigV2{}, nil, ErrRefused } return c, v, nil }