certificate_authority

package
v1.0.0-beta.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 22, 2026 License: MIT Imports: 21 Imported by: 0

Documentation

Overview

Package certificate_authority is a reverse proxy.

It translates gRPC into RESTful JSON APIs.

Index

Constants

This section is empty.

Variables

View Source
var CertificateAuthorityService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "certificate_authority.v1.CertificateAuthorityService",
	HandlerType: (*CertificateAuthorityServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "List",
			Handler:    _CertificateAuthorityService_List_Handler,
		},
		{
			MethodName: "Get",
			Handler:    _CertificateAuthorityService_Get_Handler,
		},
		{
			MethodName: "Create",
			Handler:    _CertificateAuthorityService_Create_Handler,
		},
		{
			MethodName: "Update",
			Handler:    _CertificateAuthorityService_Update_Handler,
		},
		{
			MethodName: "Patch",
			Handler:    _CertificateAuthorityService_Patch_Handler,
		},
		{
			MethodName: "Delete",
			Handler:    _CertificateAuthorityService_Delete_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "ca/v1/ca.proto",
}

CertificateAuthorityService_ServiceDesc is the grpc.ServiceDesc for CertificateAuthorityService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

View Source
var File_ca_v1_ca_proto protoreflect.FileDescriptor

Functions

func RegisterCertificateAuthorityServiceHandler

func RegisterCertificateAuthorityServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error

RegisterCertificateAuthorityServiceHandler registers the http handlers for service CertificateAuthorityService to "mux". The handlers forward requests to the grpc endpoint over "conn".

func RegisterCertificateAuthorityServiceHandlerClient

func RegisterCertificateAuthorityServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client CertificateAuthorityServiceClient) error

RegisterCertificateAuthorityServiceHandlerClient registers the http handlers for service CertificateAuthorityService to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "CertificateAuthorityServiceClient". Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "CertificateAuthorityServiceClient" doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in "CertificateAuthorityServiceClient" to call the correct interceptors.

func RegisterCertificateAuthorityServiceHandlerFromEndpoint

func RegisterCertificateAuthorityServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error)

RegisterCertificateAuthorityServiceHandlerFromEndpoint is same as RegisterCertificateAuthorityServiceHandler but automatically dials to "endpoint" and closes the connection when "ctx" gets done.

func RegisterCertificateAuthorityServiceHandlerServer

func RegisterCertificateAuthorityServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server CertificateAuthorityServiceServer) error

RegisterCertificateAuthorityServiceHandlerServer registers the http handlers for service CertificateAuthorityService to "mux". UnaryRPC :call CertificateAuthorityServiceServer directly. StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterCertificateAuthorityServiceHandlerFromEndpoint instead.

func RegisterCertificateAuthorityServiceServer

func RegisterCertificateAuthorityServiceServer(s grpc.ServiceRegistrar, srv CertificateAuthorityServiceServer)

Types

type CertificateAuthority

type CertificateAuthority struct {
	Version string                      `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	Meta    *v1.Meta                    `protobuf:"bytes,2,opt,name=meta,proto3" json:"meta,omitempty"`
	Config  *CertificateAuthorityConfig `protobuf:"bytes,3,opt,name=config,proto3" json:"config,omitempty"`
	Status  *CertificateAuthorityStatus `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"`
	// contains filtered or unexported fields
}

func (*CertificateAuthority) Descriptor deprecated

func (*CertificateAuthority) Descriptor() ([]byte, []int)

Deprecated: Use CertificateAuthority.ProtoReflect.Descriptor instead.

func (*CertificateAuthority) GetConfig

func (*CertificateAuthority) GetMeta

func (x *CertificateAuthority) GetMeta() *v1.Meta

func (*CertificateAuthority) GetStatus

func (*CertificateAuthority) GetVersion

func (x *CertificateAuthority) GetVersion() string

func (*CertificateAuthority) ProtoMessage

func (*CertificateAuthority) ProtoMessage()

func (*CertificateAuthority) ProtoReflect

func (x *CertificateAuthority) ProtoReflect() protoreflect.Message

func (*CertificateAuthority) Reset

func (x *CertificateAuthority) Reset()

func (*CertificateAuthority) String

func (x *CertificateAuthority) String() string

type CertificateAuthorityConfig

type CertificateAuthorityConfig struct {
	CertificateData string `protobuf:"bytes,1,opt,name=certificate_data,json=certificateData,proto3" json:"certificate_data,omitempty"`
	Enabled         *bool  `protobuf:"varint,2,opt,name=enabled,proto3,oneof" json:"enabled,omitempty"`
	// contains filtered or unexported fields
}

func (*CertificateAuthorityConfig) Descriptor deprecated

func (*CertificateAuthorityConfig) Descriptor() ([]byte, []int)

Deprecated: Use CertificateAuthorityConfig.ProtoReflect.Descriptor instead.

func (*CertificateAuthorityConfig) GetCertificateData

func (x *CertificateAuthorityConfig) GetCertificateData() string

func (*CertificateAuthorityConfig) GetEnabled

func (x *CertificateAuthorityConfig) GetEnabled() bool

func (*CertificateAuthorityConfig) ProtoMessage

func (*CertificateAuthorityConfig) ProtoMessage()

func (*CertificateAuthorityConfig) ProtoReflect

func (*CertificateAuthorityConfig) Reset

func (x *CertificateAuthorityConfig) Reset()

func (*CertificateAuthorityConfig) String

func (x *CertificateAuthorityConfig) String() string

type CertificateAuthorityServiceClient

type CertificateAuthorityServiceClient interface {
	List(ctx context.Context, in *ListRequest, opts ...grpc.CallOption) (*ListResponse, error)
	Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*GetResponse, error)
	Create(ctx context.Context, in *CreateRequest, opts ...grpc.CallOption) (*CreateResponse, error)
	Update(ctx context.Context, in *UpdateRequest, opts ...grpc.CallOption) (*UpdateResponse, error)
	Patch(ctx context.Context, in *PatchRequest, opts ...grpc.CallOption) (*PatchResponse, error)
	Delete(ctx context.Context, in *DeleteRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
}

CertificateAuthorityServiceClient is the client API for CertificateAuthorityService service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.

type CertificateAuthorityServiceServer

type CertificateAuthorityServiceServer interface {
	List(context.Context, *ListRequest) (*ListResponse, error)
	Get(context.Context, *GetRequest) (*GetResponse, error)
	Create(context.Context, *CreateRequest) (*CreateResponse, error)
	Update(context.Context, *UpdateRequest) (*UpdateResponse, error)
	Patch(context.Context, *PatchRequest) (*PatchResponse, error)
	Delete(context.Context, *DeleteRequest) (*emptypb.Empty, error)
	// contains filtered or unexported methods
}

CertificateAuthorityServiceServer is the server API for CertificateAuthorityService service. All implementations must embed UnimplementedCertificateAuthorityServiceServer for forward compatibility

type CertificateAuthorityStatus

type CertificateAuthorityStatus struct {
	SubjectCn          string                 `protobuf:"bytes,1,opt,name=subject_cn,json=subjectCn,proto3" json:"subject_cn,omitempty"`
	Issuer             string                 `protobuf:"bytes,2,opt,name=issuer,proto3" json:"issuer,omitempty"`
	NotBefore          *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=not_before,json=notBefore,proto3" json:"not_before,omitempty"`
	NotAfter           *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=not_after,json=notAfter,proto3" json:"not_after,omitempty"`
	SerialNumber       string                 `protobuf:"bytes,5,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"`
	Sans               []string               `protobuf:"bytes,6,rep,name=sans,proto3" json:"sans,omitempty"`
	SignatureAlgorithm string                 `protobuf:"bytes,7,opt,name=signature_algorithm,json=signatureAlgorithm,proto3" json:"signature_algorithm,omitempty"`
	PublicKeyAlgorithm string                 `protobuf:"bytes,8,opt,name=public_key_algorithm,json=publicKeyAlgorithm,proto3" json:"public_key_algorithm,omitempty"`
	IsCa               bool                   `protobuf:"varint,9,opt,name=is_ca,json=isCa,proto3" json:"is_ca,omitempty"`
	IpAddresses        []string               `protobuf:"bytes,10,rep,name=ip_addresses,json=ipAddresses,proto3" json:"ip_addresses,omitempty"`
	Uris               []string               `protobuf:"bytes,11,rep,name=uris,proto3" json:"uris,omitempty"`
	// contains filtered or unexported fields
}

func (*CertificateAuthorityStatus) Descriptor deprecated

func (*CertificateAuthorityStatus) Descriptor() ([]byte, []int)

Deprecated: Use CertificateAuthorityStatus.ProtoReflect.Descriptor instead.

func (*CertificateAuthorityStatus) GetIpAddresses

func (x *CertificateAuthorityStatus) GetIpAddresses() []string

func (*CertificateAuthorityStatus) GetIsCa

func (x *CertificateAuthorityStatus) GetIsCa() bool

func (*CertificateAuthorityStatus) GetIssuer

func (x *CertificateAuthorityStatus) GetIssuer() string

func (*CertificateAuthorityStatus) GetNotAfter

func (*CertificateAuthorityStatus) GetNotBefore

func (*CertificateAuthorityStatus) GetPublicKeyAlgorithm

func (x *CertificateAuthorityStatus) GetPublicKeyAlgorithm() string

func (*CertificateAuthorityStatus) GetSans

func (x *CertificateAuthorityStatus) GetSans() []string

func (*CertificateAuthorityStatus) GetSerialNumber

func (x *CertificateAuthorityStatus) GetSerialNumber() string

func (*CertificateAuthorityStatus) GetSignatureAlgorithm

func (x *CertificateAuthorityStatus) GetSignatureAlgorithm() string

func (*CertificateAuthorityStatus) GetSubjectCn

func (x *CertificateAuthorityStatus) GetSubjectCn() string

func (*CertificateAuthorityStatus) GetUris

func (x *CertificateAuthorityStatus) GetUris() []string

func (*CertificateAuthorityStatus) ProtoMessage

func (*CertificateAuthorityStatus) ProtoMessage()

func (*CertificateAuthorityStatus) ProtoReflect

func (*CertificateAuthorityStatus) Reset

func (x *CertificateAuthorityStatus) Reset()

func (*CertificateAuthorityStatus) String

func (x *CertificateAuthorityStatus) String() string

type CreateRequest

type CreateRequest struct {
	CertificateAuthority *CertificateAuthority `protobuf:"bytes,1,opt,name=certificate_authority,json=certificateAuthority,proto3" json:"certificate_authority,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateRequest) Descriptor deprecated

func (*CreateRequest) Descriptor() ([]byte, []int)

Deprecated: Use CreateRequest.ProtoReflect.Descriptor instead.

func (*CreateRequest) GetCertificateAuthority

func (x *CreateRequest) GetCertificateAuthority() *CertificateAuthority

func (*CreateRequest) ProtoMessage

func (*CreateRequest) ProtoMessage()

func (*CreateRequest) ProtoReflect

func (x *CreateRequest) ProtoReflect() protoreflect.Message

func (*CreateRequest) Reset

func (x *CreateRequest) Reset()

func (*CreateRequest) String

func (x *CreateRequest) String() string

type CreateResponse

type CreateResponse struct {
	CertificateAuthority *CertificateAuthority `protobuf:"bytes,1,opt,name=certificate_authority,json=certificateAuthority,proto3" json:"certificate_authority,omitempty"`
	// contains filtered or unexported fields
}

func (*CreateResponse) Descriptor deprecated

func (*CreateResponse) Descriptor() ([]byte, []int)

Deprecated: Use CreateResponse.ProtoReflect.Descriptor instead.

func (*CreateResponse) GetCertificateAuthority

func (x *CreateResponse) GetCertificateAuthority() *CertificateAuthority

func (*CreateResponse) ProtoMessage

func (*CreateResponse) ProtoMessage()

func (*CreateResponse) ProtoReflect

func (x *CreateResponse) ProtoReflect() protoreflect.Message

func (*CreateResponse) Reset

func (x *CreateResponse) Reset()

func (*CreateResponse) String

func (x *CreateResponse) String() string

type DeleteRequest

type DeleteRequest struct {
	Uid   string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"`
	Name  string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Purge bool   `protobuf:"varint,3,opt,name=purge,proto3" json:"purge,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteRequest) Descriptor deprecated

func (*DeleteRequest) Descriptor() ([]byte, []int)

Deprecated: Use DeleteRequest.ProtoReflect.Descriptor instead.

func (*DeleteRequest) GetName

func (x *DeleteRequest) GetName() string

func (*DeleteRequest) GetPurge

func (x *DeleteRequest) GetPurge() bool

func (*DeleteRequest) GetUid

func (x *DeleteRequest) GetUid() string

func (*DeleteRequest) ProtoMessage

func (*DeleteRequest) ProtoMessage()

func (*DeleteRequest) ProtoReflect

func (x *DeleteRequest) ProtoReflect() protoreflect.Message

func (*DeleteRequest) Reset

func (x *DeleteRequest) Reset()

func (*DeleteRequest) String

func (x *DeleteRequest) String() string

type GetRequest

type GetRequest struct {
	Uid  string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"`
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

func (*GetRequest) Descriptor deprecated

func (*GetRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetRequest.ProtoReflect.Descriptor instead.

func (*GetRequest) GetName

func (x *GetRequest) GetName() string

func (*GetRequest) GetUid

func (x *GetRequest) GetUid() string

func (*GetRequest) ProtoMessage

func (*GetRequest) ProtoMessage()

func (*GetRequest) ProtoReflect

func (x *GetRequest) ProtoReflect() protoreflect.Message

func (*GetRequest) Reset

func (x *GetRequest) Reset()

func (*GetRequest) String

func (x *GetRequest) String() string

type GetResponse

type GetResponse struct {
	CertificateAuthority *CertificateAuthority `protobuf:"bytes,1,opt,name=certificate_authority,json=certificateAuthority,proto3" json:"certificate_authority,omitempty"`
	// contains filtered or unexported fields
}

func (*GetResponse) Descriptor deprecated

func (*GetResponse) Descriptor() ([]byte, []int)

Deprecated: Use GetResponse.ProtoReflect.Descriptor instead.

func (*GetResponse) GetCertificateAuthority

func (x *GetResponse) GetCertificateAuthority() *CertificateAuthority

func (*GetResponse) ProtoMessage

func (*GetResponse) ProtoMessage()

func (*GetResponse) ProtoReflect

func (x *GetResponse) ProtoReflect() protoreflect.Message

func (*GetResponse) Reset

func (x *GetResponse) Reset()

func (*GetResponse) String

func (x *GetResponse) String() string

type ListRequest

type ListRequest struct {
	Limit    int32             `protobuf:"varint,1,opt,name=limit,proto3" json:"limit,omitempty"`
	Selector map[string]string `` /* 157-byte string literal not displayed */
	// contains filtered or unexported fields
}

func (*ListRequest) Descriptor deprecated

func (*ListRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListRequest.ProtoReflect.Descriptor instead.

func (*ListRequest) GetLimit

func (x *ListRequest) GetLimit() int32

func (*ListRequest) GetSelector

func (x *ListRequest) GetSelector() map[string]string

func (*ListRequest) ProtoMessage

func (*ListRequest) ProtoMessage()

func (*ListRequest) ProtoReflect

func (x *ListRequest) ProtoReflect() protoreflect.Message

func (*ListRequest) Reset

func (x *ListRequest) Reset()

func (*ListRequest) String

func (x *ListRequest) String() string

type ListResponse

type ListResponse struct {
	CertificateAuthoritys []*CertificateAuthority `protobuf:"bytes,1,rep,name=certificate_authoritys,json=certificateAuthoritys,proto3" json:"certificate_authoritys,omitempty"`
	// contains filtered or unexported fields
}

func (*ListResponse) Descriptor deprecated

func (*ListResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListResponse.ProtoReflect.Descriptor instead.

func (*ListResponse) GetCertificateAuthoritys

func (x *ListResponse) GetCertificateAuthoritys() []*CertificateAuthority

func (*ListResponse) ProtoMessage

func (*ListResponse) ProtoMessage()

func (*ListResponse) ProtoReflect

func (x *ListResponse) ProtoReflect() protoreflect.Message

func (*ListResponse) Reset

func (x *ListResponse) Reset()

func (*ListResponse) String

func (x *ListResponse) String() string

type PatchRequest

type PatchRequest struct {
	Uid                  string                 `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"`
	Name                 string                 `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	CertificateAuthority *CertificateAuthority  `protobuf:"bytes,3,opt,name=certificate_authority,json=certificateAuthority,proto3" json:"certificate_authority,omitempty"`
	UpdateMask           *fieldmaskpb.FieldMask `protobuf:"bytes,4,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	// contains filtered or unexported fields
}

func (*PatchRequest) Descriptor deprecated

func (*PatchRequest) Descriptor() ([]byte, []int)

Deprecated: Use PatchRequest.ProtoReflect.Descriptor instead.

func (*PatchRequest) GetCertificateAuthority

func (x *PatchRequest) GetCertificateAuthority() *CertificateAuthority

func (*PatchRequest) GetName

func (x *PatchRequest) GetName() string

func (*PatchRequest) GetUid

func (x *PatchRequest) GetUid() string

func (*PatchRequest) GetUpdateMask

func (x *PatchRequest) GetUpdateMask() *fieldmaskpb.FieldMask

func (*PatchRequest) ProtoMessage

func (*PatchRequest) ProtoMessage()

func (*PatchRequest) ProtoReflect

func (x *PatchRequest) ProtoReflect() protoreflect.Message

func (*PatchRequest) Reset

func (x *PatchRequest) Reset()

func (*PatchRequest) String

func (x *PatchRequest) String() string

type PatchResponse

type PatchResponse struct {
	CertificateAuthority *CertificateAuthority `protobuf:"bytes,1,opt,name=certificate_authority,json=certificateAuthority,proto3" json:"certificate_authority,omitempty"`
	// contains filtered or unexported fields
}

func (*PatchResponse) Descriptor deprecated

func (*PatchResponse) Descriptor() ([]byte, []int)

Deprecated: Use PatchResponse.ProtoReflect.Descriptor instead.

func (*PatchResponse) GetCertificateAuthority

func (x *PatchResponse) GetCertificateAuthority() *CertificateAuthority

func (*PatchResponse) ProtoMessage

func (*PatchResponse) ProtoMessage()

func (*PatchResponse) ProtoReflect

func (x *PatchResponse) ProtoReflect() protoreflect.Message

func (*PatchResponse) Reset

func (x *PatchResponse) Reset()

func (*PatchResponse) String

func (x *PatchResponse) String() string

type UnimplementedCertificateAuthorityServiceServer

type UnimplementedCertificateAuthorityServiceServer struct {
}

UnimplementedCertificateAuthorityServiceServer must be embedded to have forward compatible implementations.

func (UnimplementedCertificateAuthorityServiceServer) Create

func (UnimplementedCertificateAuthorityServiceServer) Delete

func (UnimplementedCertificateAuthorityServiceServer) Get

func (UnimplementedCertificateAuthorityServiceServer) List

func (UnimplementedCertificateAuthorityServiceServer) Patch

func (UnimplementedCertificateAuthorityServiceServer) Update

type UnsafeCertificateAuthorityServiceServer

type UnsafeCertificateAuthorityServiceServer interface {
	// contains filtered or unexported methods
}

UnsafeCertificateAuthorityServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to CertificateAuthorityServiceServer will result in compilation errors.

type UpdateRequest

type UpdateRequest struct {
	Uid                  string                 `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid,omitempty"`
	Name                 string                 `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	CertificateAuthority *CertificateAuthority  `protobuf:"bytes,3,opt,name=certificate_authority,json=certificateAuthority,proto3" json:"certificate_authority,omitempty"`
	UpdateMask           *fieldmaskpb.FieldMask `protobuf:"bytes,4,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	// contains filtered or unexported fields
}

func (*UpdateRequest) Descriptor deprecated

func (*UpdateRequest) Descriptor() ([]byte, []int)

Deprecated: Use UpdateRequest.ProtoReflect.Descriptor instead.

func (*UpdateRequest) GetCertificateAuthority

func (x *UpdateRequest) GetCertificateAuthority() *CertificateAuthority

func (*UpdateRequest) GetName

func (x *UpdateRequest) GetName() string

func (*UpdateRequest) GetUid

func (x *UpdateRequest) GetUid() string

func (*UpdateRequest) GetUpdateMask

func (x *UpdateRequest) GetUpdateMask() *fieldmaskpb.FieldMask

func (*UpdateRequest) ProtoMessage

func (*UpdateRequest) ProtoMessage()

func (*UpdateRequest) ProtoReflect

func (x *UpdateRequest) ProtoReflect() protoreflect.Message

func (*UpdateRequest) Reset

func (x *UpdateRequest) Reset()

func (*UpdateRequest) String

func (x *UpdateRequest) String() string

type UpdateResponse

type UpdateResponse struct {
	CertificateAuthority *CertificateAuthority `protobuf:"bytes,1,opt,name=certificate_authority,json=certificateAuthority,proto3" json:"certificate_authority,omitempty"`
	// contains filtered or unexported fields
}

func (*UpdateResponse) Descriptor deprecated

func (*UpdateResponse) Descriptor() ([]byte, []int)

Deprecated: Use UpdateResponse.ProtoReflect.Descriptor instead.

func (*UpdateResponse) GetCertificateAuthority

func (x *UpdateResponse) GetCertificateAuthority() *CertificateAuthority

func (*UpdateResponse) ProtoMessage

func (*UpdateResponse) ProtoMessage()

func (*UpdateResponse) ProtoReflect

func (x *UpdateResponse) ProtoReflect() protoreflect.Message

func (*UpdateResponse) Reset

func (x *UpdateResponse) Reset()

func (*UpdateResponse) String

func (x *UpdateResponse) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL