Versions in this module Expand all Collapse all v0 v0.1.0 Oct 15, 2023 v0.0.1 Oct 15, 2023 Changes in this version + type EdgeRuntime interface + CreateBackendRequest func() vintage.RawHeader + CreateClientResponse func() (vintage.RawHeader, error) + CreateObjectResponse func(int, string) (vintage.RawHeader, error) + Execute func(context.Context) error + Proxy func(ctx context.Context, backendName string) (vintage.RawHeader, error) + WriteResponse func() ([3]int64, error) + type Header struct + MH textproto.MIMEHeader + func NewHeader(h map[string][]string) *Header + func (h *Header) Add(key, value string) + func (h *Header) DeleteSetCookie(name string) bool + func (h *Header) Get(key string) string + func (h *Header) GetSetCookie(name string) string + func (h *Header) Set(key, value string) + func (h *Header) Unset(key string) + type Resource func(c *Runtime[T]) + func AclResource(name string, v *vintage.Acl) Resource[T] + func BackendResource(name string, v *vintage.Backend) Resource[T] + func LoggingResource(name string, v *vintage.LoggingEndpoint) Resource[T] + func SubroutineResource(name string, v Subroutine[T]) Resource[T] + func TableResource(name string, v *vintage.Table) Resource[T] + type Runtime struct + Acls map[string]*vintage.Acl + Backend *vintage.Backend + BackendRequestHeader *Header + BackendResponseBrotli bool + BackendResponseCachable bool + BackendResponseDoESI bool + BackendResponseDoStream bool + BackendResponseGrace bool + BackendResponseGzip bool + BackendResponseHeader *Header + BackendResponseHipaa bool + BackendResponsePCI bool + BackendResponseStaleIfError time.Duration + BackendResponseStaleWhileRevalidate time.Duration + BackendResponseTTL time.Duration + Backends map[string]*vintage.Backend + ClientIdentity string + ClientIp net.IP + ClientSocketCWND int64 + ClientSocketCongestionAlgorithm string + ClientSocketPace int64 + DisableCompressionHeaders []string + ESILevel int64 + EnableESI bool + EnableRangeOnPass bool + EnableSegmentedCaching bool + EsiAllowInsideData bool + FastlyError string + GeoIpOverride string + GeoIpUseXForwardedFor bool + H3AltSvc bool + HashAlwaysMiss bool + HashIgnoreBusy bool + IsLocallyGenerated bool + LoggingEndpoints map[string]*vintage.LoggingEndpoint + MaxStaleIfError time.Duration + MaxStaleWhileRevalidate time.Duration + ObjectResponse string + ObjectStaleIfError time.Duration + ObjectStaleWhileRevalidate time.Duration + ObjectStatus int64 + ObjectTTL time.Duration + OriginalHost string + PushResources []string + RequestEndTime time.Time + RequestHash string + RequestHeader *Header + RequestHeaderBytes int64 + RequestStartTime time.Time + ResponseBodyBytesWritten int64 + ResponseBytesWritten int64 + ResponseCompleted bool + ResponseHeader *Header + ResponseHeaderBytesWritten int64 + ResponseStale bool + ResponseStaleIsError bool + ResponseStaleIsRevalidating bool + Restarts int + SaintMode bool + SegmentedCachingBlockSize int64 + Subroutines map[string]Subroutine[T] + Tables map[string]*vintage.Table + TimeToFirstByte time.Duration + UserAgent *UserAgent + Waf *Waf + func NewRuntime(r map[string][]string, resources ...Resource[T]) *Runtime[T] + func (c *Runtime[T]) Cleanup() + func (c *Runtime[T]) GetClientIdentity() string + func (c *Runtime[T]) Lifecycle(ctx context.Context, r T) error + func (c *Runtime[T]) RegexpMatch(src, dst string) (bool, error) + func (c *Runtime[T]) Register(resources ...Resource[T]) + func (c *Runtime[T]) RequestDigest() string + func (c *Runtime[T]) RequestRangeHeader(mode string) (int64, error) + type SameSite int + const SameSiteDefaultMode + const SameSiteLaxMode + const SameSiteNoneMode + const SameSiteStrictMode + type Subroutine func(ctx T) (vintage.State, error) + type UserAgent struct + func NewUserAgent(ua string) *UserAgent + func (u *UserAgent) BotName() string + func (u *UserAgent) BrowserName() string + func (u *UserAgent) BrowserVersion() string + func (u *UserAgent) IsBot() bool + func (u *UserAgent) IsBrowser() bool + func (u *UserAgent) IsEReader() bool + func (u *UserAgent) IsGameConsole() bool + func (u *UserAgent) IsMobile() bool + func (u *UserAgent) IsSmartTV() bool + func (u *UserAgent) IsTablet() bool + func (u *UserAgent) IsTouchScreen() bool + func (u *UserAgent) IsTvPlayer() bool + func (u *UserAgent) OSName() string + func (u *UserAgent) OSVersion() string + type Waf struct + AnomalyScore int64 + Blocked bool + Counter int64 + Executed bool + Failures int64 + HttpViolationScore int64 + InboundAnomalyScore int64 + LFIScore int64 + Logdata string + Logged bool + Message string + PHPInjectionScore int64 + Passed bool + RCEScore int64 + RFIScore int64 + RuleId int64 + SQLInjectionScore int64 + SessionFixationScore int64 + Severity int64 + XSSScore int64