Documentation
¶
Overview ¶
Package v1 defines the gRPC AdminService for CLI-to-CP communication. This is a separate proto package from the agent v1 package, enforcing the trust boundary between admin operations (CLI) and agent operations (clawkerd).
Index ¶
- Constants
- Variables
- func AdminMethodScopes() map[string]string
- func RegisterAdminServiceServer(s grpc.ServiceRegistrar, srv AdminServiceServer)
- type AdminServiceClient
- type AdminServiceServer
- type Agent
- func (*Agent) Descriptor() ([]byte, []int)deprecated
- func (x *Agent) GetAgentName() string
- func (x *Agent) GetCertThumbprint() string
- func (x *Agent) GetContainerId() string
- func (x *Agent) GetLastSeenUnix() int64
- func (x *Agent) GetProject() string
- func (x *Agent) GetRegisteredAtUnix() int64
- func (*Agent) ProtoMessage()
- func (x *Agent) ProtoReflect() protoreflect.Message
- func (x *Agent) Reset()
- func (x *Agent) String() string
- type EgressRule
- func (*EgressRule) Descriptor() ([]byte, []int)deprecated
- func (x *EgressRule) GetAction() string
- func (x *EgressRule) GetDst() string
- func (x *EgressRule) GetPathDefault() string
- func (x *EgressRule) GetPathRules() []*PathRule
- func (x *EgressRule) GetPort() uint32
- func (x *EgressRule) GetProto() string
- func (*EgressRule) ProtoMessage()
- func (x *EgressRule) ProtoReflect() protoreflect.Message
- func (x *EgressRule) Reset()
- func (x *EgressRule) String() string
- type FirewallAddRulesRequest
- func (*FirewallAddRulesRequest) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallAddRulesRequest) GetRules() []*EgressRule
- func (*FirewallAddRulesRequest) ProtoMessage()
- func (x *FirewallAddRulesRequest) ProtoReflect() protoreflect.Message
- func (x *FirewallAddRulesRequest) Reset()
- func (x *FirewallAddRulesRequest) String() string
- type FirewallAddRulesResult
- func (*FirewallAddRulesResult) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallAddRulesResult) GetAddedCount() int32
- func (x *FirewallAddRulesResult) GetStackRestarted() bool
- func (*FirewallAddRulesResult) ProtoMessage()
- func (x *FirewallAddRulesResult) ProtoReflect() protoreflect.Message
- func (x *FirewallAddRulesResult) Reset()
- func (x *FirewallAddRulesResult) String() string
- type FirewallBypassRequest
- func (*FirewallBypassRequest) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallBypassRequest) GetContainerId() string
- func (x *FirewallBypassRequest) GetTimeoutSeconds() uint32
- func (*FirewallBypassRequest) ProtoMessage()
- func (x *FirewallBypassRequest) ProtoReflect() protoreflect.Message
- func (x *FirewallBypassRequest) Reset()
- func (x *FirewallBypassRequest) String() string
- type FirewallBypassResult
- type FirewallDisableRequest
- func (*FirewallDisableRequest) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallDisableRequest) GetContainerId() string
- func (*FirewallDisableRequest) ProtoMessage()
- func (x *FirewallDisableRequest) ProtoReflect() protoreflect.Message
- func (x *FirewallDisableRequest) Reset()
- func (x *FirewallDisableRequest) String() string
- type FirewallDisableResult
- type FirewallEnableRequest
- func (*FirewallEnableRequest) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallEnableRequest) GetContainerId() string
- func (*FirewallEnableRequest) ProtoMessage()
- func (x *FirewallEnableRequest) ProtoReflect() protoreflect.Message
- func (x *FirewallEnableRequest) Reset()
- func (x *FirewallEnableRequest) String() string
- type FirewallEnableResult
- type FirewallInitRequest
- type FirewallInitResult
- func (*FirewallInitResult) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallInitResult) GetCorednsIp() string
- func (x *FirewallInitResult) GetEnvoyIp() string
- func (x *FirewallInitResult) GetNetworkId() string
- func (*FirewallInitResult) ProtoMessage()
- func (x *FirewallInitResult) ProtoReflect() protoreflect.Message
- func (x *FirewallInitResult) Reset()
- func (x *FirewallInitResult) String() string
- type FirewallListRulesRequest
- type FirewallListRulesResult
- func (*FirewallListRulesResult) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallListRulesResult) GetRules() []*EgressRule
- func (*FirewallListRulesResult) ProtoMessage()
- func (x *FirewallListRulesResult) ProtoReflect() protoreflect.Message
- func (x *FirewallListRulesResult) Reset()
- func (x *FirewallListRulesResult) String() string
- type FirewallReloadRequest
- type FirewallReloadResult
- func (*FirewallReloadResult) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallReloadResult) GetStackRestarted() bool
- func (*FirewallReloadResult) ProtoMessage()
- func (x *FirewallReloadResult) ProtoReflect() protoreflect.Message
- func (x *FirewallReloadResult) Reset()
- func (x *FirewallReloadResult) String() string
- type FirewallRemoveRequest
- type FirewallRemoveResult
- type FirewallRemoveRuleRequest
- func (*FirewallRemoveRuleRequest) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallRemoveRuleRequest) GetDst() string
- func (x *FirewallRemoveRuleRequest) GetPort() uint32
- func (x *FirewallRemoveRuleRequest) GetProto() string
- func (*FirewallRemoveRuleRequest) ProtoMessage()
- func (x *FirewallRemoveRuleRequest) ProtoReflect() protoreflect.Message
- func (x *FirewallRemoveRuleRequest) Reset()
- func (x *FirewallRemoveRuleRequest) String() string
- type FirewallRemoveRuleResult
- func (*FirewallRemoveRuleResult) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallRemoveRuleResult) GetStackRestarted() bool
- func (*FirewallRemoveRuleResult) ProtoMessage()
- func (x *FirewallRemoveRuleResult) ProtoReflect() protoreflect.Message
- func (x *FirewallRemoveRuleResult) Reset()
- func (x *FirewallRemoveRuleResult) String() string
- type FirewallResolveHostnameRequest
- func (*FirewallResolveHostnameRequest) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallResolveHostnameRequest) GetHostname() string
- func (*FirewallResolveHostnameRequest) ProtoMessage()
- func (x *FirewallResolveHostnameRequest) ProtoReflect() protoreflect.Message
- func (x *FirewallResolveHostnameRequest) Reset()
- func (x *FirewallResolveHostnameRequest) String() string
- type FirewallResolveHostnameResult
- func (*FirewallResolveHostnameResult) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallResolveHostnameResult) GetAddresses() []string
- func (*FirewallResolveHostnameResult) ProtoMessage()
- func (x *FirewallResolveHostnameResult) ProtoReflect() protoreflect.Message
- func (x *FirewallResolveHostnameResult) Reset()
- func (x *FirewallResolveHostnameResult) String() string
- type FirewallRotateCARequest
- type FirewallRotateCAResult
- func (*FirewallRotateCAResult) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallRotateCAResult) GetStackRestarted() bool
- func (*FirewallRotateCAResult) ProtoMessage()
- func (x *FirewallRotateCAResult) ProtoReflect() protoreflect.Message
- func (x *FirewallRotateCAResult) Reset()
- func (x *FirewallRotateCAResult) String() string
- type FirewallStatusRequest
- type FirewallStatusResult
- func (*FirewallStatusResult) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallStatusResult) GetCidr() string
- func (x *FirewallStatusResult) GetCorednsHealth() bool
- func (x *FirewallStatusResult) GetCorednsIp() string
- func (x *FirewallStatusResult) GetEnvoyHealth() bool
- func (x *FirewallStatusResult) GetEnvoyIp() string
- func (x *FirewallStatusResult) GetNetworkId() string
- func (x *FirewallStatusResult) GetRuleCount() int32
- func (x *FirewallStatusResult) GetRunning() bool
- func (*FirewallStatusResult) ProtoMessage()
- func (x *FirewallStatusResult) ProtoReflect() protoreflect.Message
- func (x *FirewallStatusResult) Reset()
- func (x *FirewallStatusResult) String() string
- type FirewallSyncRoutesRequest
- func (*FirewallSyncRoutesRequest) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallSyncRoutesRequest) GetRoutes() []*Route
- func (*FirewallSyncRoutesRequest) ProtoMessage()
- func (x *FirewallSyncRoutesRequest) ProtoReflect() protoreflect.Message
- func (x *FirewallSyncRoutesRequest) Reset()
- func (x *FirewallSyncRoutesRequest) String() string
- type FirewallSyncRoutesResult
- func (*FirewallSyncRoutesResult) Descriptor() ([]byte, []int)deprecated
- func (x *FirewallSyncRoutesResult) GetApplied() uint32
- func (*FirewallSyncRoutesResult) ProtoMessage()
- func (x *FirewallSyncRoutesResult) ProtoReflect() protoreflect.Message
- func (x *FirewallSyncRoutesResult) Reset()
- func (x *FirewallSyncRoutesResult) String() string
- type ListAgentsRequest
- type ListAgentsResult
- type PathRule
- type Route
- func (*Route) Descriptor() ([]byte, []int)deprecated
- func (x *Route) GetDomainHash() uint32
- func (x *Route) GetDstPort() uint32
- func (x *Route) GetEnvoyPort() uint32
- func (*Route) ProtoMessage()
- func (x *Route) ProtoReflect() protoreflect.Message
- func (x *Route) Reset()
- func (x *Route) String() string
- type UnimplementedAdminServiceServer
- func (UnimplementedAdminServiceServer) FirewallAddRules(context.Context, *FirewallAddRulesRequest) (*FirewallAddRulesResult, error)
- func (UnimplementedAdminServiceServer) FirewallBypass(context.Context, *FirewallBypassRequest) (*FirewallBypassResult, error)
- func (UnimplementedAdminServiceServer) FirewallDisable(context.Context, *FirewallDisableRequest) (*FirewallDisableResult, error)
- func (UnimplementedAdminServiceServer) FirewallEnable(context.Context, *FirewallEnableRequest) (*FirewallEnableResult, error)
- func (UnimplementedAdminServiceServer) FirewallInit(context.Context, *FirewallInitRequest) (*FirewallInitResult, error)
- func (UnimplementedAdminServiceServer) FirewallListRules(context.Context, *FirewallListRulesRequest) (*FirewallListRulesResult, error)
- func (UnimplementedAdminServiceServer) FirewallReload(context.Context, *FirewallReloadRequest) (*FirewallReloadResult, error)
- func (UnimplementedAdminServiceServer) FirewallRemove(context.Context, *FirewallRemoveRequest) (*FirewallRemoveResult, error)
- func (UnimplementedAdminServiceServer) FirewallRemoveRule(context.Context, *FirewallRemoveRuleRequest) (*FirewallRemoveRuleResult, error)
- func (UnimplementedAdminServiceServer) FirewallResolveHostname(context.Context, *FirewallResolveHostnameRequest) (*FirewallResolveHostnameResult, error)
- func (UnimplementedAdminServiceServer) FirewallRotateCA(context.Context, *FirewallRotateCARequest) (*FirewallRotateCAResult, error)
- func (UnimplementedAdminServiceServer) FirewallStatus(context.Context, *FirewallStatusRequest) (*FirewallStatusResult, error)
- func (UnimplementedAdminServiceServer) FirewallSyncRoutes(context.Context, *FirewallSyncRoutesRequest) (*FirewallSyncRoutesResult, error)
- func (UnimplementedAdminServiceServer) ListAgents(context.Context, *ListAgentsRequest) (*ListAgentsResult, error)
- type UnsafeAdminServiceServer
Constants ¶
const ( AdminService_FirewallInit_FullMethodName = "/clawker.admin.v1.AdminService/FirewallInit" AdminService_FirewallRemove_FullMethodName = "/clawker.admin.v1.AdminService/FirewallRemove" AdminService_FirewallEnable_FullMethodName = "/clawker.admin.v1.AdminService/FirewallEnable" AdminService_FirewallDisable_FullMethodName = "/clawker.admin.v1.AdminService/FirewallDisable" AdminService_FirewallBypass_FullMethodName = "/clawker.admin.v1.AdminService/FirewallBypass" AdminService_FirewallAddRules_FullMethodName = "/clawker.admin.v1.AdminService/FirewallAddRules" AdminService_FirewallRemoveRule_FullMethodName = "/clawker.admin.v1.AdminService/FirewallRemoveRule" AdminService_FirewallListRules_FullMethodName = "/clawker.admin.v1.AdminService/FirewallListRules" AdminService_FirewallReload_FullMethodName = "/clawker.admin.v1.AdminService/FirewallReload" AdminService_FirewallStatus_FullMethodName = "/clawker.admin.v1.AdminService/FirewallStatus" AdminService_FirewallRotateCA_FullMethodName = "/clawker.admin.v1.AdminService/FirewallRotateCA" AdminService_FirewallSyncRoutes_FullMethodName = "/clawker.admin.v1.AdminService/FirewallSyncRoutes" AdminService_FirewallResolveHostname_FullMethodName = "/clawker.admin.v1.AdminService/FirewallResolveHostname" AdminService_ListAgents_FullMethodName = "/clawker.admin.v1.AdminService/ListAgents" )
const ServiceName = "clawker.admin.v1.AdminService"
ServiceName is the fully-qualified gRPC service name for AdminService.
Variables ¶
var AdminService_ServiceDesc = grpc.ServiceDesc{ ServiceName: "clawker.admin.v1.AdminService", HandlerType: (*AdminServiceServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "FirewallInit", Handler: _AdminService_FirewallInit_Handler, }, { MethodName: "FirewallRemove", Handler: _AdminService_FirewallRemove_Handler, }, { MethodName: "FirewallEnable", Handler: _AdminService_FirewallEnable_Handler, }, { MethodName: "FirewallDisable", Handler: _AdminService_FirewallDisable_Handler, }, { MethodName: "FirewallBypass", Handler: _AdminService_FirewallBypass_Handler, }, { MethodName: "FirewallAddRules", Handler: _AdminService_FirewallAddRules_Handler, }, { MethodName: "FirewallRemoveRule", Handler: _AdminService_FirewallRemoveRule_Handler, }, { MethodName: "FirewallListRules", Handler: _AdminService_FirewallListRules_Handler, }, { MethodName: "FirewallReload", Handler: _AdminService_FirewallReload_Handler, }, { MethodName: "FirewallStatus", Handler: _AdminService_FirewallStatus_Handler, }, { MethodName: "FirewallRotateCA", Handler: _AdminService_FirewallRotateCA_Handler, }, { MethodName: "FirewallSyncRoutes", Handler: _AdminService_FirewallSyncRoutes_Handler, }, { MethodName: "FirewallResolveHostname", Handler: _AdminService_FirewallResolveHostname_Handler, }, { MethodName: "ListAgents", Handler: _AdminService_ListAgents_Handler, }, }, Streams: []grpc.StreamDesc{}, Metadata: "admin/v1/admin.proto", }
AdminService_ServiceDesc is the grpc.ServiceDesc for AdminService service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
var File_admin_v1_admin_proto protoreflect.FileDescriptor
Functions ¶
func AdminMethodScopes ¶
AdminMethodScopes returns the method→scope map for every RPC on AdminService. Every method is enforced at the uniform "admin" scope (INV-B2-009); future cross-domain methods follow the same policy.
Kept beside the generated bindings so proto additions fail closed: a new RPC without a scope entry is caught by TestAdminMethodScopes_CoversAllRPCs, which reflects over AdminService_ServiceDesc.
func RegisterAdminServiceServer ¶
func RegisterAdminServiceServer(s grpc.ServiceRegistrar, srv AdminServiceServer)
Types ¶
type AdminServiceClient ¶
type AdminServiceClient interface {
// FirewallInit brings the firewall stack (Envoy + CoreDNS) up. BPF
// programs are loaded once at CP startup; this RPC is the idempotent
// stack-up signal from the CLI. Global — no container_id.
FirewallInit(ctx context.Context, in *FirewallInitRequest, opts ...grpc.CallOption) (*FirewallInitResult, error)
// FirewallRemove is global teardown — stops Envoy + CoreDNS, detaches
// all BPF programs, and flushes all eBPF state plus pending timers.
FirewallRemove(ctx context.Context, in *FirewallRemoveRequest, opts ...grpc.CallOption) (*FirewallRemoveResult, error)
// FirewallEnable enrolls a container into the global container_map
// routing. Idempotent. The CP resolves the container's cgroup path
// internally via Docker API with drift guard (INV-B2-016) — callers
// send only container_id.
FirewallEnable(ctx context.Context, in *FirewallEnableRequest, opts ...grpc.CallOption) (*FirewallEnableResult, error)
// FirewallDisable removes a container from container_map. BPF links
// remain attached so re-enable is cheap. BPF fast path exits to bypass
// on lookup miss.
FirewallDisable(ctx context.Context, in *FirewallDisableRequest, opts ...grpc.CallOption) (*FirewallDisableResult, error)
// FirewallBypass = timed Disable + CP-side dead-man timer that calls
// Enable on expiry. Drift guard inherited from the Enable path.
FirewallBypass(ctx context.Context, in *FirewallBypassRequest, opts ...grpc.CallOption) (*FirewallBypassResult, error)
// FirewallAddRules adds egress rules to the store and hot-reloads the
// stack. Synchronous: returns after the stack is healthy again.
FirewallAddRules(ctx context.Context, in *FirewallAddRulesRequest, opts ...grpc.CallOption) (*FirewallAddRulesResult, error)
// FirewallRemoveRule removes a single egress rule by (dst, proto, port)
// and hot-reloads the stack. Returns NOT_FOUND (sentinel
// RULE_NOT_FOUND) when no rule matches the key — typos and malformed
// hostnames both land here, since anything that can't match an
// existing rule key is a miss.
FirewallRemoveRule(ctx context.Context, in *FirewallRemoveRuleRequest, opts ...grpc.CallOption) (*FirewallRemoveRuleResult, error)
// FirewallListRules returns the current normalized/deduplicated rule
// set from the store. Read-only.
FirewallListRules(ctx context.Context, in *FirewallListRulesRequest, opts ...grpc.CallOption) (*FirewallListRulesResult, error)
// FirewallReload regenerates configs and restarts Envoy + CoreDNS from
// the current rules store state without mutating rules.
FirewallReload(ctx context.Context, in *FirewallReloadRequest, opts ...grpc.CallOption) (*FirewallReloadResult, error)
// FirewallStatus is the firewall-domain health snapshot (stack running,
// Envoy/CoreDNS health, rule count, network topology).
FirewallStatus(ctx context.Context, in *FirewallStatusRequest, opts ...grpc.CallOption) (*FirewallStatusResult, error)
// FirewallRotateCA regenerates the MITM CA + per-domain certs. Restarts
// Envoy so the new chain is picked up.
FirewallRotateCA(ctx context.Context, in *FirewallRotateCARequest, opts ...grpc.CallOption) (*FirewallRotateCAResult, error)
// FirewallSyncRoutes atomically replaces the global route_map.
FirewallSyncRoutes(ctx context.Context, in *FirewallSyncRoutesRequest, opts ...grpc.CallOption) (*FirewallSyncRoutesResult, error)
// FirewallResolveHostname performs a DNS lookup from inside the CP's
// network namespace — used to resolve host.docker.internal during
// per-container enroll.
FirewallResolveHostname(ctx context.Context, in *FirewallResolveHostnameRequest, opts ...grpc.CallOption) (*FirewallResolveHostnameResult, error)
// ListAgents returns a snapshot of every agent currently registered
// with the control plane. Used by `clawker controlplane agents` and
// diagnostic tooling. Read-only; uniform admin scope.
ListAgents(ctx context.Context, in *ListAgentsRequest, opts ...grpc.CallOption) (*ListAgentsResult, error)
}
AdminServiceClient is the client API for AdminService 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.
AdminService is the gRPC surface the clawker CLI calls on the control plane. The CP owns privileged kernel state (BPF programs + pinned maps) and the firewall stack (Envoy + CoreDNS) and handles per-container firewall lifecycle.
Transport: mTLS over TCP (AdminPort, default 7443, configurable via Settings). The CLI presents a client certificate signed by the CLI CA. Authorization: OAuth2 access tokens with the uniform "admin" scope, validated via Hydra token introspection (RFC 7662).
Method naming follows the `<Domain><Action>[<Object>]` convention. Firewall is the only domain today; future domains (Monitor, Hostproxy, Clawkerd, ...) layer additional handlers onto the same AdminService so the CLI sees one unified surface per CP. Every method is registered for "admin" scope enforcement (INV-B2-009).
Response messages are named `Firewall*Result` rather than `Firewall*Response` to match Go's `(Result, error)` convention — the handler returns typed Result structs from queued closures and maps those into the wire messages below.
func NewAdminServiceClient ¶
func NewAdminServiceClient(cc grpc.ClientConnInterface) AdminServiceClient
type AdminServiceServer ¶
type AdminServiceServer interface {
// FirewallInit brings the firewall stack (Envoy + CoreDNS) up. BPF
// programs are loaded once at CP startup; this RPC is the idempotent
// stack-up signal from the CLI. Global — no container_id.
FirewallInit(context.Context, *FirewallInitRequest) (*FirewallInitResult, error)
// FirewallRemove is global teardown — stops Envoy + CoreDNS, detaches
// all BPF programs, and flushes all eBPF state plus pending timers.
FirewallRemove(context.Context, *FirewallRemoveRequest) (*FirewallRemoveResult, error)
// FirewallEnable enrolls a container into the global container_map
// routing. Idempotent. The CP resolves the container's cgroup path
// internally via Docker API with drift guard (INV-B2-016) — callers
// send only container_id.
FirewallEnable(context.Context, *FirewallEnableRequest) (*FirewallEnableResult, error)
// FirewallDisable removes a container from container_map. BPF links
// remain attached so re-enable is cheap. BPF fast path exits to bypass
// on lookup miss.
FirewallDisable(context.Context, *FirewallDisableRequest) (*FirewallDisableResult, error)
// FirewallBypass = timed Disable + CP-side dead-man timer that calls
// Enable on expiry. Drift guard inherited from the Enable path.
FirewallBypass(context.Context, *FirewallBypassRequest) (*FirewallBypassResult, error)
// FirewallAddRules adds egress rules to the store and hot-reloads the
// stack. Synchronous: returns after the stack is healthy again.
FirewallAddRules(context.Context, *FirewallAddRulesRequest) (*FirewallAddRulesResult, error)
// FirewallRemoveRule removes a single egress rule by (dst, proto, port)
// and hot-reloads the stack. Returns NOT_FOUND (sentinel
// RULE_NOT_FOUND) when no rule matches the key — typos and malformed
// hostnames both land here, since anything that can't match an
// existing rule key is a miss.
FirewallRemoveRule(context.Context, *FirewallRemoveRuleRequest) (*FirewallRemoveRuleResult, error)
// FirewallListRules returns the current normalized/deduplicated rule
// set from the store. Read-only.
FirewallListRules(context.Context, *FirewallListRulesRequest) (*FirewallListRulesResult, error)
// FirewallReload regenerates configs and restarts Envoy + CoreDNS from
// the current rules store state without mutating rules.
FirewallReload(context.Context, *FirewallReloadRequest) (*FirewallReloadResult, error)
// FirewallStatus is the firewall-domain health snapshot (stack running,
// Envoy/CoreDNS health, rule count, network topology).
FirewallStatus(context.Context, *FirewallStatusRequest) (*FirewallStatusResult, error)
// FirewallRotateCA regenerates the MITM CA + per-domain certs. Restarts
// Envoy so the new chain is picked up.
FirewallRotateCA(context.Context, *FirewallRotateCARequest) (*FirewallRotateCAResult, error)
// FirewallSyncRoutes atomically replaces the global route_map.
FirewallSyncRoutes(context.Context, *FirewallSyncRoutesRequest) (*FirewallSyncRoutesResult, error)
// FirewallResolveHostname performs a DNS lookup from inside the CP's
// network namespace — used to resolve host.docker.internal during
// per-container enroll.
FirewallResolveHostname(context.Context, *FirewallResolveHostnameRequest) (*FirewallResolveHostnameResult, error)
// ListAgents returns a snapshot of every agent currently registered
// with the control plane. Used by `clawker controlplane agents` and
// diagnostic tooling. Read-only; uniform admin scope.
ListAgents(context.Context, *ListAgentsRequest) (*ListAgentsResult, error)
// contains filtered or unexported methods
}
AdminServiceServer is the server API for AdminService service. All implementations must embed UnimplementedAdminServiceServer for forward compatibility.
AdminService is the gRPC surface the clawker CLI calls on the control plane. The CP owns privileged kernel state (BPF programs + pinned maps) and the firewall stack (Envoy + CoreDNS) and handles per-container firewall lifecycle.
Transport: mTLS over TCP (AdminPort, default 7443, configurable via Settings). The CLI presents a client certificate signed by the CLI CA. Authorization: OAuth2 access tokens with the uniform "admin" scope, validated via Hydra token introspection (RFC 7662).
Method naming follows the `<Domain><Action>[<Object>]` convention. Firewall is the only domain today; future domains (Monitor, Hostproxy, Clawkerd, ...) layer additional handlers onto the same AdminService so the CLI sees one unified surface per CP. Every method is registered for "admin" scope enforcement (INV-B2-009).
Response messages are named `Firewall*Result` rather than `Firewall*Response` to match Go's `(Result, error)` convention — the handler returns typed Result structs from queued closures and maps those into the wire messages below.
type Agent ¶
type Agent struct {
// agent_name is the short agent name as the user types it on the CLI
// (e.g. "dev"). The canonical "clawker.project.agent" form is composed
// CP-side from (NamePrefix, project, agent_name) — kept off the wire to
// avoid duplication and parsing.
AgentName string `protobuf:"bytes,1,opt,name=agent_name,json=agentName,proto3" json:"agent_name,omitempty"`
// container_id is the long Docker container ID the agent runs in.
ContainerId string `protobuf:"bytes,2,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"`
// cert_thumbprint is the lowercase-hex SHA-256 over the agent's mTLS
// cert DER — the channel-bound identity key.
CertThumbprint string `protobuf:"bytes,3,opt,name=cert_thumbprint,json=certThumbprint,proto3" json:"cert_thumbprint,omitempty"`
// registered_at_unix is the wall-clock timestamp at AgentService.Connect.
RegisteredAtUnix int64 `protobuf:"varint,4,opt,name=registered_at_unix,json=registeredAtUnix,proto3" json:"registered_at_unix,omitempty"`
// last_seen_unix is updated on every successful per-agent RPC. Equal
// to registered_at_unix for B4 because Connect is the only per-agent
// RPC.
LastSeenUnix int64 `protobuf:"varint,5,opt,name=last_seen_unix,json=lastSeenUnix,proto3" json:"last_seen_unix,omitempty"`
// project is the clawker project slug the agent registered under (empty
// for 2-segment naming). Composite with agent_name when callers need a
// unique key across projects.
Project string `protobuf:"bytes,6,opt,name=project,proto3" json:"project,omitempty"`
// contains filtered or unexported fields
}
func (*Agent) Descriptor
deprecated
func (*Agent) GetAgentName ¶
func (*Agent) GetCertThumbprint ¶
func (*Agent) GetContainerId ¶
func (*Agent) GetLastSeenUnix ¶
func (*Agent) GetProject ¶
func (*Agent) GetRegisteredAtUnix ¶
func (*Agent) ProtoMessage ¶
func (*Agent) ProtoMessage()
func (*Agent) ProtoReflect ¶
func (x *Agent) ProtoReflect() protoreflect.Message
type EgressRule ¶
type EgressRule struct {
Dst string `protobuf:"bytes,1,opt,name=dst,proto3" json:"dst,omitempty"`
Proto string `protobuf:"bytes,2,opt,name=proto,proto3" json:"proto,omitempty"` // "tls" | "tcp" | "http" | "ssh" | "ip" | "cidr"
Port uint32 `protobuf:"varint,3,opt,name=port,proto3" json:"port,omitempty"`
Action string `protobuf:"bytes,4,opt,name=action,proto3" json:"action,omitempty"` // "allow" | "deny"
PathRules []*PathRule `protobuf:"bytes,5,rep,name=path_rules,json=pathRules,proto3" json:"path_rules,omitempty"`
PathDefault string `protobuf:"bytes,6,opt,name=path_default,json=pathDefault,proto3" json:"path_default,omitempty"`
// contains filtered or unexported fields
}
EgressRule is one egress firewall rule (mirrors config.EgressRule).
func (*EgressRule) Descriptor
deprecated
func (*EgressRule) Descriptor() ([]byte, []int)
Deprecated: Use EgressRule.ProtoReflect.Descriptor instead.
func (*EgressRule) GetAction ¶
func (x *EgressRule) GetAction() string
func (*EgressRule) GetDst ¶
func (x *EgressRule) GetDst() string
func (*EgressRule) GetPathDefault ¶
func (x *EgressRule) GetPathDefault() string
func (*EgressRule) GetPathRules ¶
func (x *EgressRule) GetPathRules() []*PathRule
func (*EgressRule) GetPort ¶
func (x *EgressRule) GetPort() uint32
func (*EgressRule) GetProto ¶
func (x *EgressRule) GetProto() string
func (*EgressRule) ProtoMessage ¶
func (*EgressRule) ProtoMessage()
func (*EgressRule) ProtoReflect ¶
func (x *EgressRule) ProtoReflect() protoreflect.Message
func (*EgressRule) Reset ¶
func (x *EgressRule) Reset()
func (*EgressRule) String ¶
func (x *EgressRule) String() string
type FirewallAddRulesRequest ¶
type FirewallAddRulesRequest struct {
Rules []*EgressRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallAddRulesRequest) Descriptor
deprecated
func (*FirewallAddRulesRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallAddRulesRequest.ProtoReflect.Descriptor instead.
func (*FirewallAddRulesRequest) GetRules ¶
func (x *FirewallAddRulesRequest) GetRules() []*EgressRule
func (*FirewallAddRulesRequest) ProtoMessage ¶
func (*FirewallAddRulesRequest) ProtoMessage()
func (*FirewallAddRulesRequest) ProtoReflect ¶
func (x *FirewallAddRulesRequest) ProtoReflect() protoreflect.Message
func (*FirewallAddRulesRequest) Reset ¶
func (x *FirewallAddRulesRequest) Reset()
func (*FirewallAddRulesRequest) String ¶
func (x *FirewallAddRulesRequest) String() string
type FirewallAddRulesResult ¶
type FirewallAddRulesResult struct {
AddedCount int32 `protobuf:"varint,1,opt,name=added_count,json=addedCount,proto3" json:"added_count,omitempty"`
// stack_restarted is true when the live stack was reloaded; false when
// the stack was down at queue-time and only the on-disk rule change
// applied. In both cases err==nil — the rule is durable.
StackRestarted bool `protobuf:"varint,2,opt,name=stack_restarted,json=stackRestarted,proto3" json:"stack_restarted,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallAddRulesResult) Descriptor
deprecated
func (*FirewallAddRulesResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallAddRulesResult.ProtoReflect.Descriptor instead.
func (*FirewallAddRulesResult) GetAddedCount ¶
func (x *FirewallAddRulesResult) GetAddedCount() int32
func (*FirewallAddRulesResult) GetStackRestarted ¶
func (x *FirewallAddRulesResult) GetStackRestarted() bool
func (*FirewallAddRulesResult) ProtoMessage ¶
func (*FirewallAddRulesResult) ProtoMessage()
func (*FirewallAddRulesResult) ProtoReflect ¶
func (x *FirewallAddRulesResult) ProtoReflect() protoreflect.Message
func (*FirewallAddRulesResult) Reset ¶
func (x *FirewallAddRulesResult) Reset()
func (*FirewallAddRulesResult) String ¶
func (x *FirewallAddRulesResult) String() string
type FirewallBypassRequest ¶
type FirewallBypassRequest struct {
ContainerId string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"`
TimeoutSeconds uint32 `protobuf:"varint,2,opt,name=timeout_seconds,json=timeoutSeconds,proto3" json:"timeout_seconds,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallBypassRequest) Descriptor
deprecated
func (*FirewallBypassRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallBypassRequest.ProtoReflect.Descriptor instead.
func (*FirewallBypassRequest) GetContainerId ¶
func (x *FirewallBypassRequest) GetContainerId() string
func (*FirewallBypassRequest) GetTimeoutSeconds ¶
func (x *FirewallBypassRequest) GetTimeoutSeconds() uint32
func (*FirewallBypassRequest) ProtoMessage ¶
func (*FirewallBypassRequest) ProtoMessage()
func (*FirewallBypassRequest) ProtoReflect ¶
func (x *FirewallBypassRequest) ProtoReflect() protoreflect.Message
func (*FirewallBypassRequest) Reset ¶
func (x *FirewallBypassRequest) Reset()
func (*FirewallBypassRequest) String ¶
func (x *FirewallBypassRequest) String() string
type FirewallBypassResult ¶
type FirewallBypassResult struct {
// contains filtered or unexported fields
}
func (*FirewallBypassResult) Descriptor
deprecated
func (*FirewallBypassResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallBypassResult.ProtoReflect.Descriptor instead.
func (*FirewallBypassResult) ProtoMessage ¶
func (*FirewallBypassResult) ProtoMessage()
func (*FirewallBypassResult) ProtoReflect ¶
func (x *FirewallBypassResult) ProtoReflect() protoreflect.Message
func (*FirewallBypassResult) Reset ¶
func (x *FirewallBypassResult) Reset()
func (*FirewallBypassResult) String ¶
func (x *FirewallBypassResult) String() string
type FirewallDisableRequest ¶
type FirewallDisableRequest struct {
ContainerId string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallDisableRequest) Descriptor
deprecated
func (*FirewallDisableRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallDisableRequest.ProtoReflect.Descriptor instead.
func (*FirewallDisableRequest) GetContainerId ¶
func (x *FirewallDisableRequest) GetContainerId() string
func (*FirewallDisableRequest) ProtoMessage ¶
func (*FirewallDisableRequest) ProtoMessage()
func (*FirewallDisableRequest) ProtoReflect ¶
func (x *FirewallDisableRequest) ProtoReflect() protoreflect.Message
func (*FirewallDisableRequest) Reset ¶
func (x *FirewallDisableRequest) Reset()
func (*FirewallDisableRequest) String ¶
func (x *FirewallDisableRequest) String() string
type FirewallDisableResult ¶
type FirewallDisableResult struct {
// contains filtered or unexported fields
}
func (*FirewallDisableResult) Descriptor
deprecated
func (*FirewallDisableResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallDisableResult.ProtoReflect.Descriptor instead.
func (*FirewallDisableResult) ProtoMessage ¶
func (*FirewallDisableResult) ProtoMessage()
func (*FirewallDisableResult) ProtoReflect ¶
func (x *FirewallDisableResult) ProtoReflect() protoreflect.Message
func (*FirewallDisableResult) Reset ¶
func (x *FirewallDisableResult) Reset()
func (*FirewallDisableResult) String ¶
func (x *FirewallDisableResult) String() string
type FirewallEnableRequest ¶
type FirewallEnableRequest struct {
ContainerId string `protobuf:"bytes,1,opt,name=container_id,json=containerId,proto3" json:"container_id,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallEnableRequest) Descriptor
deprecated
func (*FirewallEnableRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallEnableRequest.ProtoReflect.Descriptor instead.
func (*FirewallEnableRequest) GetContainerId ¶
func (x *FirewallEnableRequest) GetContainerId() string
func (*FirewallEnableRequest) ProtoMessage ¶
func (*FirewallEnableRequest) ProtoMessage()
func (*FirewallEnableRequest) ProtoReflect ¶
func (x *FirewallEnableRequest) ProtoReflect() protoreflect.Message
func (*FirewallEnableRequest) Reset ¶
func (x *FirewallEnableRequest) Reset()
func (*FirewallEnableRequest) String ¶
func (x *FirewallEnableRequest) String() string
type FirewallEnableResult ¶
type FirewallEnableResult struct {
// contains filtered or unexported fields
}
func (*FirewallEnableResult) Descriptor
deprecated
func (*FirewallEnableResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallEnableResult.ProtoReflect.Descriptor instead.
func (*FirewallEnableResult) ProtoMessage ¶
func (*FirewallEnableResult) ProtoMessage()
func (*FirewallEnableResult) ProtoReflect ¶
func (x *FirewallEnableResult) ProtoReflect() protoreflect.Message
func (*FirewallEnableResult) Reset ¶
func (x *FirewallEnableResult) Reset()
func (*FirewallEnableResult) String ¶
func (x *FirewallEnableResult) String() string
type FirewallInitRequest ¶
type FirewallInitRequest struct {
// contains filtered or unexported fields
}
func (*FirewallInitRequest) Descriptor
deprecated
func (*FirewallInitRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallInitRequest.ProtoReflect.Descriptor instead.
func (*FirewallInitRequest) ProtoMessage ¶
func (*FirewallInitRequest) ProtoMessage()
func (*FirewallInitRequest) ProtoReflect ¶
func (x *FirewallInitRequest) ProtoReflect() protoreflect.Message
func (*FirewallInitRequest) Reset ¶
func (x *FirewallInitRequest) Reset()
func (*FirewallInitRequest) String ¶
func (x *FirewallInitRequest) String() string
type FirewallInitResult ¶
type FirewallInitResult struct {
EnvoyIp string `protobuf:"bytes,1,opt,name=envoy_ip,json=envoyIp,proto3" json:"envoy_ip,omitempty"`
CorednsIp string `protobuf:"bytes,2,opt,name=coredns_ip,json=corednsIp,proto3" json:"coredns_ip,omitempty"`
NetworkId string `protobuf:"bytes,3,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallInitResult) Descriptor
deprecated
func (*FirewallInitResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallInitResult.ProtoReflect.Descriptor instead.
func (*FirewallInitResult) GetCorednsIp ¶
func (x *FirewallInitResult) GetCorednsIp() string
func (*FirewallInitResult) GetEnvoyIp ¶
func (x *FirewallInitResult) GetEnvoyIp() string
func (*FirewallInitResult) GetNetworkId ¶
func (x *FirewallInitResult) GetNetworkId() string
func (*FirewallInitResult) ProtoMessage ¶
func (*FirewallInitResult) ProtoMessage()
func (*FirewallInitResult) ProtoReflect ¶
func (x *FirewallInitResult) ProtoReflect() protoreflect.Message
func (*FirewallInitResult) Reset ¶
func (x *FirewallInitResult) Reset()
func (*FirewallInitResult) String ¶
func (x *FirewallInitResult) String() string
type FirewallListRulesRequest ¶
type FirewallListRulesRequest struct {
// contains filtered or unexported fields
}
func (*FirewallListRulesRequest) Descriptor
deprecated
func (*FirewallListRulesRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallListRulesRequest.ProtoReflect.Descriptor instead.
func (*FirewallListRulesRequest) ProtoMessage ¶
func (*FirewallListRulesRequest) ProtoMessage()
func (*FirewallListRulesRequest) ProtoReflect ¶
func (x *FirewallListRulesRequest) ProtoReflect() protoreflect.Message
func (*FirewallListRulesRequest) Reset ¶
func (x *FirewallListRulesRequest) Reset()
func (*FirewallListRulesRequest) String ¶
func (x *FirewallListRulesRequest) String() string
type FirewallListRulesResult ¶
type FirewallListRulesResult struct {
Rules []*EgressRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallListRulesResult) Descriptor
deprecated
func (*FirewallListRulesResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallListRulesResult.ProtoReflect.Descriptor instead.
func (*FirewallListRulesResult) GetRules ¶
func (x *FirewallListRulesResult) GetRules() []*EgressRule
func (*FirewallListRulesResult) ProtoMessage ¶
func (*FirewallListRulesResult) ProtoMessage()
func (*FirewallListRulesResult) ProtoReflect ¶
func (x *FirewallListRulesResult) ProtoReflect() protoreflect.Message
func (*FirewallListRulesResult) Reset ¶
func (x *FirewallListRulesResult) Reset()
func (*FirewallListRulesResult) String ¶
func (x *FirewallListRulesResult) String() string
type FirewallReloadRequest ¶
type FirewallReloadRequest struct {
// contains filtered or unexported fields
}
func (*FirewallReloadRequest) Descriptor
deprecated
func (*FirewallReloadRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallReloadRequest.ProtoReflect.Descriptor instead.
func (*FirewallReloadRequest) ProtoMessage ¶
func (*FirewallReloadRequest) ProtoMessage()
func (*FirewallReloadRequest) ProtoReflect ¶
func (x *FirewallReloadRequest) ProtoReflect() protoreflect.Message
func (*FirewallReloadRequest) Reset ¶
func (x *FirewallReloadRequest) Reset()
func (*FirewallReloadRequest) String ¶
func (x *FirewallReloadRequest) String() string
type FirewallReloadResult ¶
type FirewallReloadResult struct {
StackRestarted bool `protobuf:"varint,1,opt,name=stack_restarted,json=stackRestarted,proto3" json:"stack_restarted,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallReloadResult) Descriptor
deprecated
func (*FirewallReloadResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallReloadResult.ProtoReflect.Descriptor instead.
func (*FirewallReloadResult) GetStackRestarted ¶
func (x *FirewallReloadResult) GetStackRestarted() bool
func (*FirewallReloadResult) ProtoMessage ¶
func (*FirewallReloadResult) ProtoMessage()
func (*FirewallReloadResult) ProtoReflect ¶
func (x *FirewallReloadResult) ProtoReflect() protoreflect.Message
func (*FirewallReloadResult) Reset ¶
func (x *FirewallReloadResult) Reset()
func (*FirewallReloadResult) String ¶
func (x *FirewallReloadResult) String() string
type FirewallRemoveRequest ¶
type FirewallRemoveRequest struct {
// contains filtered or unexported fields
}
func (*FirewallRemoveRequest) Descriptor
deprecated
func (*FirewallRemoveRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallRemoveRequest.ProtoReflect.Descriptor instead.
func (*FirewallRemoveRequest) ProtoMessage ¶
func (*FirewallRemoveRequest) ProtoMessage()
func (*FirewallRemoveRequest) ProtoReflect ¶
func (x *FirewallRemoveRequest) ProtoReflect() protoreflect.Message
func (*FirewallRemoveRequest) Reset ¶
func (x *FirewallRemoveRequest) Reset()
func (*FirewallRemoveRequest) String ¶
func (x *FirewallRemoveRequest) String() string
type FirewallRemoveResult ¶
type FirewallRemoveResult struct {
// contains filtered or unexported fields
}
func (*FirewallRemoveResult) Descriptor
deprecated
func (*FirewallRemoveResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallRemoveResult.ProtoReflect.Descriptor instead.
func (*FirewallRemoveResult) ProtoMessage ¶
func (*FirewallRemoveResult) ProtoMessage()
func (*FirewallRemoveResult) ProtoReflect ¶
func (x *FirewallRemoveResult) ProtoReflect() protoreflect.Message
func (*FirewallRemoveResult) Reset ¶
func (x *FirewallRemoveResult) Reset()
func (*FirewallRemoveResult) String ¶
func (x *FirewallRemoveResult) String() string
type FirewallRemoveRuleRequest ¶
type FirewallRemoveRuleRequest struct {
Dst string `protobuf:"bytes,1,opt,name=dst,proto3" json:"dst,omitempty"`
Proto string `protobuf:"bytes,2,opt,name=proto,proto3" json:"proto,omitempty"` // "tls" | "tcp" | "http" | "ssh" | "ip" | "cidr"
Port uint32 `protobuf:"varint,3,opt,name=port,proto3" json:"port,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallRemoveRuleRequest) Descriptor
deprecated
func (*FirewallRemoveRuleRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallRemoveRuleRequest.ProtoReflect.Descriptor instead.
func (*FirewallRemoveRuleRequest) GetDst ¶
func (x *FirewallRemoveRuleRequest) GetDst() string
func (*FirewallRemoveRuleRequest) GetPort ¶
func (x *FirewallRemoveRuleRequest) GetPort() uint32
func (*FirewallRemoveRuleRequest) GetProto ¶
func (x *FirewallRemoveRuleRequest) GetProto() string
func (*FirewallRemoveRuleRequest) ProtoMessage ¶
func (*FirewallRemoveRuleRequest) ProtoMessage()
func (*FirewallRemoveRuleRequest) ProtoReflect ¶
func (x *FirewallRemoveRuleRequest) ProtoReflect() protoreflect.Message
func (*FirewallRemoveRuleRequest) Reset ¶
func (x *FirewallRemoveRuleRequest) Reset()
func (*FirewallRemoveRuleRequest) String ¶
func (x *FirewallRemoveRuleRequest) String() string
type FirewallRemoveRuleResult ¶
type FirewallRemoveRuleResult struct {
// stack_restarted is true when the live stack was reloaded; false when
// the stack was down at queue-time and only the on-disk rule change
// applied. In both cases err==nil — the rule is durable.
StackRestarted bool `protobuf:"varint,1,opt,name=stack_restarted,json=stackRestarted,proto3" json:"stack_restarted,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallRemoveRuleResult) Descriptor
deprecated
func (*FirewallRemoveRuleResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallRemoveRuleResult.ProtoReflect.Descriptor instead.
func (*FirewallRemoveRuleResult) GetStackRestarted ¶
func (x *FirewallRemoveRuleResult) GetStackRestarted() bool
func (*FirewallRemoveRuleResult) ProtoMessage ¶
func (*FirewallRemoveRuleResult) ProtoMessage()
func (*FirewallRemoveRuleResult) ProtoReflect ¶
func (x *FirewallRemoveRuleResult) ProtoReflect() protoreflect.Message
func (*FirewallRemoveRuleResult) Reset ¶
func (x *FirewallRemoveRuleResult) Reset()
func (*FirewallRemoveRuleResult) String ¶
func (x *FirewallRemoveRuleResult) String() string
type FirewallResolveHostnameRequest ¶
type FirewallResolveHostnameRequest struct {
Hostname string `protobuf:"bytes,1,opt,name=hostname,proto3" json:"hostname,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallResolveHostnameRequest) Descriptor
deprecated
func (*FirewallResolveHostnameRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallResolveHostnameRequest.ProtoReflect.Descriptor instead.
func (*FirewallResolveHostnameRequest) GetHostname ¶
func (x *FirewallResolveHostnameRequest) GetHostname() string
func (*FirewallResolveHostnameRequest) ProtoMessage ¶
func (*FirewallResolveHostnameRequest) ProtoMessage()
func (*FirewallResolveHostnameRequest) ProtoReflect ¶
func (x *FirewallResolveHostnameRequest) ProtoReflect() protoreflect.Message
func (*FirewallResolveHostnameRequest) Reset ¶
func (x *FirewallResolveHostnameRequest) Reset()
func (*FirewallResolveHostnameRequest) String ¶
func (x *FirewallResolveHostnameRequest) String() string
type FirewallResolveHostnameResult ¶
type FirewallResolveHostnameResult struct {
Addresses []string `protobuf:"bytes,1,rep,name=addresses,proto3" json:"addresses,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallResolveHostnameResult) Descriptor
deprecated
func (*FirewallResolveHostnameResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallResolveHostnameResult.ProtoReflect.Descriptor instead.
func (*FirewallResolveHostnameResult) GetAddresses ¶
func (x *FirewallResolveHostnameResult) GetAddresses() []string
func (*FirewallResolveHostnameResult) ProtoMessage ¶
func (*FirewallResolveHostnameResult) ProtoMessage()
func (*FirewallResolveHostnameResult) ProtoReflect ¶
func (x *FirewallResolveHostnameResult) ProtoReflect() protoreflect.Message
func (*FirewallResolveHostnameResult) Reset ¶
func (x *FirewallResolveHostnameResult) Reset()
func (*FirewallResolveHostnameResult) String ¶
func (x *FirewallResolveHostnameResult) String() string
type FirewallRotateCARequest ¶
type FirewallRotateCARequest struct {
// contains filtered or unexported fields
}
func (*FirewallRotateCARequest) Descriptor
deprecated
func (*FirewallRotateCARequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallRotateCARequest.ProtoReflect.Descriptor instead.
func (*FirewallRotateCARequest) ProtoMessage ¶
func (*FirewallRotateCARequest) ProtoMessage()
func (*FirewallRotateCARequest) ProtoReflect ¶
func (x *FirewallRotateCARequest) ProtoReflect() protoreflect.Message
func (*FirewallRotateCARequest) Reset ¶
func (x *FirewallRotateCARequest) Reset()
func (*FirewallRotateCARequest) String ¶
func (x *FirewallRotateCARequest) String() string
type FirewallRotateCAResult ¶
type FirewallRotateCAResult struct {
// stack_restarted mirrors the AddRules/Reload distinction: true when
// the live stack was reloaded with the fresh cert chain; false when
// regen completed but the stack was down so no restart fired.
StackRestarted bool `protobuf:"varint,1,opt,name=stack_restarted,json=stackRestarted,proto3" json:"stack_restarted,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallRotateCAResult) Descriptor
deprecated
func (*FirewallRotateCAResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallRotateCAResult.ProtoReflect.Descriptor instead.
func (*FirewallRotateCAResult) GetStackRestarted ¶
func (x *FirewallRotateCAResult) GetStackRestarted() bool
func (*FirewallRotateCAResult) ProtoMessage ¶
func (*FirewallRotateCAResult) ProtoMessage()
func (*FirewallRotateCAResult) ProtoReflect ¶
func (x *FirewallRotateCAResult) ProtoReflect() protoreflect.Message
func (*FirewallRotateCAResult) Reset ¶
func (x *FirewallRotateCAResult) Reset()
func (*FirewallRotateCAResult) String ¶
func (x *FirewallRotateCAResult) String() string
type FirewallStatusRequest ¶
type FirewallStatusRequest struct {
// contains filtered or unexported fields
}
func (*FirewallStatusRequest) Descriptor
deprecated
func (*FirewallStatusRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallStatusRequest.ProtoReflect.Descriptor instead.
func (*FirewallStatusRequest) ProtoMessage ¶
func (*FirewallStatusRequest) ProtoMessage()
func (*FirewallStatusRequest) ProtoReflect ¶
func (x *FirewallStatusRequest) ProtoReflect() protoreflect.Message
func (*FirewallStatusRequest) Reset ¶
func (x *FirewallStatusRequest) Reset()
func (*FirewallStatusRequest) String ¶
func (x *FirewallStatusRequest) String() string
type FirewallStatusResult ¶
type FirewallStatusResult struct {
Running bool `protobuf:"varint,1,opt,name=running,proto3" json:"running,omitempty"`
EnvoyHealth bool `protobuf:"varint,2,opt,name=envoy_health,json=envoyHealth,proto3" json:"envoy_health,omitempty"`
CorednsHealth bool `protobuf:"varint,3,opt,name=coredns_health,json=corednsHealth,proto3" json:"coredns_health,omitempty"`
RuleCount int32 `protobuf:"varint,4,opt,name=rule_count,json=ruleCount,proto3" json:"rule_count,omitempty"`
EnvoyIp string `protobuf:"bytes,5,opt,name=envoy_ip,json=envoyIp,proto3" json:"envoy_ip,omitempty"`
CorednsIp string `protobuf:"bytes,6,opt,name=coredns_ip,json=corednsIp,proto3" json:"coredns_ip,omitempty"`
NetworkId string `protobuf:"bytes,7,opt,name=network_id,json=networkId,proto3" json:"network_id,omitempty"`
Cidr string `protobuf:"bytes,8,opt,name=cidr,proto3" json:"cidr,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallStatusResult) Descriptor
deprecated
func (*FirewallStatusResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallStatusResult.ProtoReflect.Descriptor instead.
func (*FirewallStatusResult) GetCidr ¶
func (x *FirewallStatusResult) GetCidr() string
func (*FirewallStatusResult) GetCorednsHealth ¶
func (x *FirewallStatusResult) GetCorednsHealth() bool
func (*FirewallStatusResult) GetCorednsIp ¶
func (x *FirewallStatusResult) GetCorednsIp() string
func (*FirewallStatusResult) GetEnvoyHealth ¶
func (x *FirewallStatusResult) GetEnvoyHealth() bool
func (*FirewallStatusResult) GetEnvoyIp ¶
func (x *FirewallStatusResult) GetEnvoyIp() string
func (*FirewallStatusResult) GetNetworkId ¶
func (x *FirewallStatusResult) GetNetworkId() string
func (*FirewallStatusResult) GetRuleCount ¶
func (x *FirewallStatusResult) GetRuleCount() int32
func (*FirewallStatusResult) GetRunning ¶
func (x *FirewallStatusResult) GetRunning() bool
func (*FirewallStatusResult) ProtoMessage ¶
func (*FirewallStatusResult) ProtoMessage()
func (*FirewallStatusResult) ProtoReflect ¶
func (x *FirewallStatusResult) ProtoReflect() protoreflect.Message
func (*FirewallStatusResult) Reset ¶
func (x *FirewallStatusResult) Reset()
func (*FirewallStatusResult) String ¶
func (x *FirewallStatusResult) String() string
type FirewallSyncRoutesRequest ¶
type FirewallSyncRoutesRequest struct {
// routes is retained for wire compatibility but is IGNORED by the
// server. Post-queue the server rebuilds the route_map from the
// current rules store — see
// internal/controlplane/firewall.Handler.FirewallSyncRoutes for the
// rationale (coalescing with concurrent AddRules/Reload would
// silently discard a caller's stale route set).
Routes []*Route `protobuf:"bytes,1,rep,name=routes,proto3" json:"routes,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallSyncRoutesRequest) Descriptor
deprecated
func (*FirewallSyncRoutesRequest) Descriptor() ([]byte, []int)
Deprecated: Use FirewallSyncRoutesRequest.ProtoReflect.Descriptor instead.
func (*FirewallSyncRoutesRequest) GetRoutes ¶
func (x *FirewallSyncRoutesRequest) GetRoutes() []*Route
func (*FirewallSyncRoutesRequest) ProtoMessage ¶
func (*FirewallSyncRoutesRequest) ProtoMessage()
func (*FirewallSyncRoutesRequest) ProtoReflect ¶
func (x *FirewallSyncRoutesRequest) ProtoReflect() protoreflect.Message
func (*FirewallSyncRoutesRequest) Reset ¶
func (x *FirewallSyncRoutesRequest) Reset()
func (*FirewallSyncRoutesRequest) String ¶
func (x *FirewallSyncRoutesRequest) String() string
type FirewallSyncRoutesResult ¶
type FirewallSyncRoutesResult struct {
Applied uint32 `protobuf:"varint,1,opt,name=applied,proto3" json:"applied,omitempty"`
// contains filtered or unexported fields
}
func (*FirewallSyncRoutesResult) Descriptor
deprecated
func (*FirewallSyncRoutesResult) Descriptor() ([]byte, []int)
Deprecated: Use FirewallSyncRoutesResult.ProtoReflect.Descriptor instead.
func (*FirewallSyncRoutesResult) GetApplied ¶
func (x *FirewallSyncRoutesResult) GetApplied() uint32
func (*FirewallSyncRoutesResult) ProtoMessage ¶
func (*FirewallSyncRoutesResult) ProtoMessage()
func (*FirewallSyncRoutesResult) ProtoReflect ¶
func (x *FirewallSyncRoutesResult) ProtoReflect() protoreflect.Message
func (*FirewallSyncRoutesResult) Reset ¶
func (x *FirewallSyncRoutesResult) Reset()
func (*FirewallSyncRoutesResult) String ¶
func (x *FirewallSyncRoutesResult) String() string
type ListAgentsRequest ¶
type ListAgentsRequest struct {
// contains filtered or unexported fields
}
func (*ListAgentsRequest) Descriptor
deprecated
func (*ListAgentsRequest) Descriptor() ([]byte, []int)
Deprecated: Use ListAgentsRequest.ProtoReflect.Descriptor instead.
func (*ListAgentsRequest) ProtoMessage ¶
func (*ListAgentsRequest) ProtoMessage()
func (*ListAgentsRequest) ProtoReflect ¶
func (x *ListAgentsRequest) ProtoReflect() protoreflect.Message
func (*ListAgentsRequest) Reset ¶
func (x *ListAgentsRequest) Reset()
func (*ListAgentsRequest) String ¶
func (x *ListAgentsRequest) String() string
type ListAgentsResult ¶
type ListAgentsResult struct {
Agents []*Agent `protobuf:"bytes,1,rep,name=agents,proto3" json:"agents,omitempty"`
// contains filtered or unexported fields
}
func (*ListAgentsResult) Descriptor
deprecated
func (*ListAgentsResult) Descriptor() ([]byte, []int)
Deprecated: Use ListAgentsResult.ProtoReflect.Descriptor instead.
func (*ListAgentsResult) GetAgents ¶
func (x *ListAgentsResult) GetAgents() []*Agent
func (*ListAgentsResult) ProtoMessage ¶
func (*ListAgentsResult) ProtoMessage()
func (*ListAgentsResult) ProtoReflect ¶
func (x *ListAgentsResult) ProtoReflect() protoreflect.Message
func (*ListAgentsResult) Reset ¶
func (x *ListAgentsResult) Reset()
func (*ListAgentsResult) String ¶
func (x *ListAgentsResult) String() string
type PathRule ¶
type PathRule struct {
Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"`
Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"`
// contains filtered or unexported fields
}
func (*PathRule) Descriptor
deprecated
func (*PathRule) ProtoMessage ¶
func (*PathRule) ProtoMessage()
func (*PathRule) ProtoReflect ¶
func (x *PathRule) ProtoReflect() protoreflect.Message
type Route ¶
type Route struct {
DomainHash uint32 `protobuf:"varint,1,opt,name=domain_hash,json=domainHash,proto3" json:"domain_hash,omitempty"`
DstPort uint32 `protobuf:"varint,2,opt,name=dst_port,json=dstPort,proto3" json:"dst_port,omitempty"`
EnvoyPort uint32 `protobuf:"varint,3,opt,name=envoy_port,json=envoyPort,proto3" json:"envoy_port,omitempty"`
// contains filtered or unexported fields
}
Route is one entry in the global route_map.
func (*Route) Descriptor
deprecated
func (*Route) GetDomainHash ¶
func (*Route) GetDstPort ¶
func (*Route) GetEnvoyPort ¶
func (*Route) ProtoMessage ¶
func (*Route) ProtoMessage()
func (*Route) ProtoReflect ¶
func (x *Route) ProtoReflect() protoreflect.Message
type UnimplementedAdminServiceServer ¶
type UnimplementedAdminServiceServer struct{}
UnimplementedAdminServiceServer must be embedded to have forward compatible implementations.
NOTE: this should be embedded by value instead of pointer to avoid a nil pointer dereference when methods are called.
func (UnimplementedAdminServiceServer) FirewallAddRules ¶
func (UnimplementedAdminServiceServer) FirewallAddRules(context.Context, *FirewallAddRulesRequest) (*FirewallAddRulesResult, error)
func (UnimplementedAdminServiceServer) FirewallBypass ¶
func (UnimplementedAdminServiceServer) FirewallBypass(context.Context, *FirewallBypassRequest) (*FirewallBypassResult, error)
func (UnimplementedAdminServiceServer) FirewallDisable ¶
func (UnimplementedAdminServiceServer) FirewallDisable(context.Context, *FirewallDisableRequest) (*FirewallDisableResult, error)
func (UnimplementedAdminServiceServer) FirewallEnable ¶
func (UnimplementedAdminServiceServer) FirewallEnable(context.Context, *FirewallEnableRequest) (*FirewallEnableResult, error)
func (UnimplementedAdminServiceServer) FirewallInit ¶
func (UnimplementedAdminServiceServer) FirewallInit(context.Context, *FirewallInitRequest) (*FirewallInitResult, error)
func (UnimplementedAdminServiceServer) FirewallListRules ¶
func (UnimplementedAdminServiceServer) FirewallListRules(context.Context, *FirewallListRulesRequest) (*FirewallListRulesResult, error)
func (UnimplementedAdminServiceServer) FirewallReload ¶
func (UnimplementedAdminServiceServer) FirewallReload(context.Context, *FirewallReloadRequest) (*FirewallReloadResult, error)
func (UnimplementedAdminServiceServer) FirewallRemove ¶
func (UnimplementedAdminServiceServer) FirewallRemove(context.Context, *FirewallRemoveRequest) (*FirewallRemoveResult, error)
func (UnimplementedAdminServiceServer) FirewallRemoveRule ¶
func (UnimplementedAdminServiceServer) FirewallRemoveRule(context.Context, *FirewallRemoveRuleRequest) (*FirewallRemoveRuleResult, error)
func (UnimplementedAdminServiceServer) FirewallResolveHostname ¶
func (UnimplementedAdminServiceServer) FirewallResolveHostname(context.Context, *FirewallResolveHostnameRequest) (*FirewallResolveHostnameResult, error)
func (UnimplementedAdminServiceServer) FirewallRotateCA ¶
func (UnimplementedAdminServiceServer) FirewallRotateCA(context.Context, *FirewallRotateCARequest) (*FirewallRotateCAResult, error)
func (UnimplementedAdminServiceServer) FirewallStatus ¶
func (UnimplementedAdminServiceServer) FirewallStatus(context.Context, *FirewallStatusRequest) (*FirewallStatusResult, error)
func (UnimplementedAdminServiceServer) FirewallSyncRoutes ¶
func (UnimplementedAdminServiceServer) FirewallSyncRoutes(context.Context, *FirewallSyncRoutesRequest) (*FirewallSyncRoutesResult, error)
func (UnimplementedAdminServiceServer) ListAgents ¶
func (UnimplementedAdminServiceServer) ListAgents(context.Context, *ListAgentsRequest) (*ListAgentsResult, error)
type UnsafeAdminServiceServer ¶
type UnsafeAdminServiceServer interface {
// contains filtered or unexported methods
}
UnsafeAdminServiceServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to AdminServiceServer will result in compilation errors.