Documentation
¶
Index ¶
- func ForbiddenModeError(mode string) error
- func ForbiddenPathError(path string) error
- func ForbiddenTypeError(typ string) error
- type Arguments
- type Certificate
- type ConnectionState
- type Error
- type EvalCacheIgnore
- type EvalResult
- type Handler
- func (h *Handler) ArgumentsFromRequest(req *http.Request) (args Arguments, err error)
- func (h *Handler) ListenAndServe(addr string, rdTo, wrTo time.Duration, tlsCertFilename, tlsKeyFilename string) (err error)
- func (h *Handler) ServeHTTP(wr http.ResponseWriter, req *http.Request)
- func (h *Handler) Test(testSpecsFilename string, overwriteResults bool) error
- type InspectResult
- type Request
- type TestCase
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ForbiddenModeError ¶
func ForbiddenPathError ¶
func ForbiddenTypeError ¶
Types ¶
type Arguments ¶
type Arguments struct {
// Request
Proto *string `json:"proto,omitempty"`
Method *string `json:"method,omitempty"`
RequestURI *string `json:"uri,omitempty"`
Header *http.Header `json:"headers,omitempty"`
Host *string `json:"host,omitempty"`
Path *string `json:"path,omitempty"`
Query *url.Values `json:"query,omitempty"`
RemoteAddr *string `json:"remoteAddr,omitempty"`
BodyHash *string `json:"bodyHash,omitempty"`
Body *string `json:"body,omitempty"`
TLS *ConnectionState `json:"tls"`
// Environment
Options *options.Options `json:"options,omitempty"`
BasePath *string `json:"basePath,omitempty"`
// Error handling
Error *Error `json:"error"`
Result *EvalResult `json:"result,omitempty"`
}
type Certificate ¶
type Certificate struct {
SerialNumber string `json:"serialNumber"`
Issuer string `json:"issuer"`
Subject string `json:"subject"`
NotBefore int64 `json:"notBefore"`
NotAfter int64 `json:"notAfter"`
KeyUsage string `json:"keyUsage"`
ExtKeyUsage []string `json:"extKeyUsage"`
SignatureAlgorithm string `json:"signatureAlgorithm"`
PublicKeyAlgorithm string `json:"publicKeyAlgorithm"`
Version int `json:"version"`
OCSPServer []string `json:"ocspServer"`
IssuingCertificateURL []string `json:"issuingCertificateURL"`
DNSNames []string `json:"dnsNames"`
EmailAddresses []string `json:"emailAddresses"`
IPAddresses []string `json:"ipAddresses"`
URIs []string `json:"uris"`
PermittedDNSDomainsCritical bool `json:"permittedDNSDomainsCritical"`
PermittedDNSDomains []string `json:"permittedDNSDomains"`
ExcludedDNSDomains []string `json:"excludedDNSDomains"`
PermittedIPRanges []string `json:"permittedIPRanges"`
ExcludedIPRanges []string `json:"excludedIPRanges"`
PermittedEmailAddresses []string `json:"permittedEmailAddresses"`
ExcludedEmailAddresses []string `json:"excludedEmailAddresses"`
PermittedURIDomains []string `json:"permittedURIDomains"`
ExcludedURIDomains []string `json:"excludedURIDomains"`
}
type ConnectionState ¶
type ConnectionState struct {
Version string `json:"version"`
HandshakeComplete bool `json:"handshakeComplete"`
DidResume bool `json:"didResume"`
CipherSuite string `json:"cipherSuite"`
NegotiatedProtocol string `json:"negotiatedProtocol"`
ServerName string `json:"serverName"`
PeerCertificates []*Certificate `json:"peerCertificates"`
VerifiedChains [][]*Certificate `json:"verifiedChains"`
}
type Error ¶
type Error struct {
Error error `json:"error,omitempty"`
Status int `json:"status,omitempty"`
Path string `json:"path,omitempty"`
Args []string `json:"args,omitempty"`
Env []string `json:"env,omitempty"`
Dir string `json:"dir,omitempty"`
Exited bool `json:"exited,omitempty"`
PID int `json:"pid,omitempty"`
Time time.Duration `json:"time,omitempty"`
ExitStatus int `json:"exitStatus,omitempty"`
TermSignal int `json:"termSignal,omitempty"`
StopSignal int `json:"stopSignal,omitempty"`
CoreDump bool `json:"coreDump,omitempty"`
Stdout string `json:"stdout,omitempty"`
Stderr string `json:"stderr,omitempty"`
}
type EvalCacheIgnore ¶
type EvalResult ¶
type EvalResult struct {
Status int `json:"status,omitempty"`
Headers map[string][]string `json:"headers,omitempty"`
Mode string `json:"mode,omitempty"`
Type string `json:"type,omitempty"`
Body string `json:"body,omitempty"`
SubPath string `json:"subPath,omitempty"`
Args []string `json:"args,omitempty"`
Env map[string]string `json:"env,omitempty"`
Output string `json:"output,omitempty"`
Stream bool `json:"stream,omitempty"`
Recursive bool `json:"recursive,omitempty"`
Rebuild bool `json:"rebuild,omitempty"`
PTY bool `json:"pty,omitempty"`
}
type Handler ¶
type Handler struct {
InspectResult InspectResult
Expression string
File string
FlakeAttribute string
FlakeReference string
FlakeStorePath string
// contains filtered or unexported fields
}
func (*Handler) ArgumentsFromRequest ¶
func (*Handler) ListenAndServe ¶
type InspectResult ¶
type InspectResult struct {
Description string `json:"description,omitempty"`
Path string `json:"path,omitempty"`
EvalCacheIgnore EvalCacheIgnore `json:"evalCacheIgnore,omitempty"`
ExpectedArgs map[string]bool `json:"expectedArgs,omitempty"`
Pure bool `json:"pure,omitempty"`
EvalArgs []string `json:"evalArgs,omitempty"`
PTY bool `json:"pty,omitempty"`
}
type TestCase ¶
type TestCase struct {
Name string `json:"name"`
Arguments Arguments `json:"arguments"`
ExpectedResult *EvalResult `json:"results"`
Recorder *httptest.ResponseRecorder `json:"-"`
ActualResult *EvalResult `json:"-"`
}
Click to show internal directories.
Click to hide internal directories.