Merge commit 'd1265fdb161f0a86944a27184fb3923350c9b6d1'
This commit is contained in:
commit
f6ce972034
12 changed files with 193 additions and 159 deletions
|
@ -4,7 +4,8 @@ root = true
|
|||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
charset = utf-8
|
||||
indent_size = 2
|
||||
indent_style = space
|
||||
|
||||
[*.proto]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
indent_size = 2
|
||||
|
|
12
api/.gitlab-ci.yml
Normal file
12
api/.gitlab-ci.yml
Normal file
|
@ -0,0 +1,12 @@
|
|||
image:
|
||||
name: docker.io/bufbuild/buf:latest
|
||||
entrypoint: [""]
|
||||
|
||||
stages:
|
||||
- test
|
||||
|
||||
lint:
|
||||
stage: test
|
||||
script:
|
||||
- buf ls-files
|
||||
- buf lint
|
20
api/buf.yaml
Normal file
20
api/buf.yaml
Normal file
|
@ -0,0 +1,20 @@
|
|||
# Below is not the lint and breaking configuration we recommend!
|
||||
# This just just what googleapis passes.
|
||||
# For lint, we recommend having the single value "DEFAULT" in "use"
|
||||
# with no values in "except".
|
||||
# For breaking, we recommend having the single value "FILE" in use.
|
||||
# See https://docs.buf.build/lint-usage
|
||||
# See https://docs.buf.build/breaking-usage
|
||||
version: v1beta1
|
||||
build:
|
||||
roots:
|
||||
- proto
|
||||
lint:
|
||||
use:
|
||||
- DEFAULT
|
||||
except:
|
||||
- PACKAGE_DIRECTORY_MATCH
|
||||
allow_comment_ignores: true
|
||||
breaking:
|
||||
use:
|
||||
- FILE
|
|
@ -1,43 +0,0 @@
|
|||
syntax = "proto3";
|
||||
|
||||
package inetmock.audit.details;
|
||||
|
||||
option csharp_namespace = "INetMock.Client.Audit.Details";
|
||||
option go_package = "gitlab.com/inetmock/inetmock/pkg/audit/details";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "HandlerEventProto";
|
||||
option java_package = "com.github.baez90.inetmock.audit.details";
|
||||
|
||||
enum DNSOpCode {
|
||||
Query = 0;
|
||||
Status = 2;
|
||||
Notify = 4;
|
||||
Update = 5;
|
||||
}
|
||||
|
||||
enum ResourceRecordType {
|
||||
UnknownRR = 0;
|
||||
A = 1;
|
||||
NS = 2;
|
||||
CNAME = 5;
|
||||
SOA = 6;
|
||||
PTR = 12;
|
||||
HINFO = 13;
|
||||
MINFO = 14;
|
||||
MX = 15;
|
||||
TXT = 16;
|
||||
RP = 17;
|
||||
AAAA = 28;
|
||||
SRV = 33;
|
||||
NAPTR = 35;
|
||||
}
|
||||
|
||||
message DNSQuestionEntity {
|
||||
ResourceRecordType type = 1;
|
||||
string name = 2;
|
||||
}
|
||||
|
||||
message DNSDetailsEntity {
|
||||
DNSOpCode opcode = 1;
|
||||
repeated DNSQuestionEntity questions = 2;
|
||||
}
|
|
@ -1,33 +0,0 @@
|
|||
syntax = "proto3";
|
||||
|
||||
package inetmock.audit.details;
|
||||
|
||||
option csharp_namespace = "INetMock.Client.Audit.Details";
|
||||
option go_package = "gitlab.com/inetmock/inetmock/pkg/audit/details";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "HandlerEventProto";
|
||||
option java_package = "com.github.baez90.inetmock.audit.details";
|
||||
|
||||
enum HTTPMethod {
|
||||
GET = 0;
|
||||
HEAD = 1;
|
||||
POST = 2;
|
||||
PUT = 3;
|
||||
DELETE = 4;
|
||||
CONNECT = 5;
|
||||
OPTIONS = 6;
|
||||
TRACE = 7;
|
||||
PATCH = 8;
|
||||
}
|
||||
|
||||
message HTTPHeaderValue {
|
||||
repeated string values = 1;
|
||||
}
|
||||
|
||||
message HTTPDetailsEntity {
|
||||
HTTPMethod method = 1;
|
||||
string host = 2;
|
||||
string uri = 3;
|
||||
string proto = 4;
|
||||
map<string, HTTPHeaderValue> headers = 5;
|
||||
}
|
44
api/proto/audit/v1/dns_details.proto
Normal file
44
api/proto/audit/v1/dns_details.proto
Normal file
|
@ -0,0 +1,44 @@
|
|||
syntax = "proto3";
|
||||
|
||||
package inetmock.audit.v1;
|
||||
|
||||
option csharp_namespace = "INetMock.Client.Audit";
|
||||
option go_package = "gitlab.com/inetmock/inetmock/pkg/audit";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "HandlerEventProto";
|
||||
option java_package = "com.github.baez90.inetmock.audit";
|
||||
|
||||
enum DNSOpCode {
|
||||
//buf:lint:ignore ENUM_ZERO_VALUE_SUFFIX
|
||||
DNS_OP_CODE_QUERY = 0;
|
||||
DNS_OP_CODE_STATUS = 2;
|
||||
DNS_OP_CODE_NOTIFY = 4;
|
||||
DNS_OP_CODE_UPDATE = 5;
|
||||
}
|
||||
|
||||
enum ResourceRecordType {
|
||||
RESOURCE_RECORD_TYPE_UNSPECIFIED = 0;
|
||||
RESOURCE_RECORD_TYPE_A = 1;
|
||||
RESOURCE_RECORD_TYPE_NS = 2;
|
||||
RESOURCE_RECORD_TYPE_CNAME = 5;
|
||||
RESOURCE_RECORD_TYPE_SOA = 6;
|
||||
RESOURCE_RECORD_TYPE_PTR = 12;
|
||||
RESOURCE_RECORD_TYPE_HINFO = 13;
|
||||
RESOURCE_RECORD_TYPE_MINFO = 14;
|
||||
RESOURCE_RECORD_TYPE_MX = 15;
|
||||
RESOURCE_RECORD_TYPE_TXT = 16;
|
||||
RESOURCE_RECORD_TYPE_RP = 17;
|
||||
RESOURCE_RECORD_TYPE_AAAA = 28;
|
||||
RESOURCE_RECORD_TYPE_SRV = 33;
|
||||
RESOURCE_RECORD_TYPE_NAPTR = 35;
|
||||
}
|
||||
|
||||
message DNSQuestionEntity {
|
||||
ResourceRecordType type = 1;
|
||||
string name = 2;
|
||||
}
|
||||
|
||||
message DNSDetailsEntity {
|
||||
DNSOpCode opcode = 1;
|
||||
repeated DNSQuestionEntity questions = 2;
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
syntax = "proto3";
|
||||
|
||||
package inetmock.audit;
|
||||
package inetmock.audit.v1;
|
||||
|
||||
option csharp_namespace = "INetMock.Client.Audit";
|
||||
option go_package = "gitlab.com/inetmock/inetmock/pkg/audit";
|
||||
|
@ -12,30 +12,30 @@ import "google/protobuf/any.proto";
|
|||
import "google/protobuf/timestamp.proto";
|
||||
|
||||
enum TransportProtocol {
|
||||
UNKNOWN_TRANSPORT = 0;
|
||||
TCP = 1;
|
||||
UDP = 2;
|
||||
TRANSPORT_PROTOCOL_UNSPECIFIED = 0;
|
||||
TRANSPORT_PROTOCOL_TCP = 1;
|
||||
TRANSPORT_PROTOCOL_UDP = 2;
|
||||
}
|
||||
|
||||
enum AppProtocol {
|
||||
UNKNOWN_APPLICATION = 0;
|
||||
DNS = 1;
|
||||
HTTP = 2;
|
||||
HTTP_PROXY = 3;
|
||||
APP_PROTOCOL_UNSPECIFIED = 0;
|
||||
APP_PROTOCOL_DNS = 1;
|
||||
APP_PROTOCOL_HTTP = 2;
|
||||
APP_PROTOCOL_HTTP_PROXY = 3;
|
||||
}
|
||||
|
||||
enum TLSVersion {
|
||||
SSLv30 = 0;
|
||||
TLS10 = 1;
|
||||
TLS11 = 2;
|
||||
TLS12 = 3;
|
||||
TLS13 = 4;
|
||||
TLS_VERSION_UNSPECIFIED = 0;
|
||||
TLS_VERSION_TLS10 = 1;
|
||||
TLS_VERSION_TLS11 = 2;
|
||||
TLS_VERSION_TLS12 = 3;
|
||||
TLS_VERSION_TLS13 = 4;
|
||||
}
|
||||
|
||||
message TLSDetailsEntity {
|
||||
TLSVersion version = 1;
|
||||
string cipherSuite = 2;
|
||||
string serverName = 3;
|
||||
string cipher_suite = 2;
|
||||
string server_name = 3;
|
||||
}
|
||||
|
||||
message EventEntity {
|
||||
|
@ -43,10 +43,10 @@ message EventEntity {
|
|||
google.protobuf.Timestamp timestamp = 2;
|
||||
TransportProtocol transport = 3;
|
||||
AppProtocol application = 4;
|
||||
bytes sourceIP = 5;
|
||||
bytes destinationIP = 6;
|
||||
uint32 sourcePort = 7;
|
||||
uint32 destinationPort = 8;
|
||||
bytes source_ip = 5;
|
||||
bytes destination_ip = 6;
|
||||
uint32 source_port = 7;
|
||||
uint32 destination_port = 8;
|
||||
TLSDetailsEntity tls = 9;
|
||||
google.protobuf.Any protocolDetails = 10;
|
||||
google.protobuf.Any protocol_details = 10;
|
||||
}
|
34
api/proto/audit/v1/http_details.proto
Normal file
34
api/proto/audit/v1/http_details.proto
Normal file
|
@ -0,0 +1,34 @@
|
|||
syntax = "proto3";
|
||||
|
||||
package inetmock.audit.v1;
|
||||
|
||||
option csharp_namespace = "INetMock.Client.Audit";
|
||||
option go_package = "gitlab.com/inetmock/inetmock/pkg/audit";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "HandlerEventProto";
|
||||
option java_package = "com.github.baez90.inetmock.audit";
|
||||
|
||||
enum HTTPMethod {
|
||||
HTTP_METHOD_UNSPECIFIED = 0;
|
||||
HTTP_METHOD_GET = 1;
|
||||
HTTP_METHOD_HEAD = 2;
|
||||
HTTP_METHOD_POST = 3;
|
||||
HTTP_METHOD_PUT = 4;
|
||||
HTTP_METHOD_DELETE = 5;
|
||||
HTTP_METHOD_CONNECT = 6;
|
||||
HTTP_METHOD_OPTIONS = 7;
|
||||
HTTP_METHOD_TRACE = 8;
|
||||
HTTP_METHOD_PATCH = 9;
|
||||
}
|
||||
|
||||
message HTTPHeaderValue {
|
||||
repeated string values = 1;
|
||||
}
|
||||
|
||||
message HTTPDetailsEntity {
|
||||
HTTPMethod method = 1;
|
||||
string host = 2;
|
||||
string uri = 3;
|
||||
string proto = 4;
|
||||
map<string, HTTPHeaderValue> headers = 5;
|
||||
}
|
|
@ -1,34 +0,0 @@
|
|||
syntax = "proto3";
|
||||
|
||||
package inetmock.rpc;
|
||||
|
||||
option csharp_namespace = "INetMock.Client.Rpc";
|
||||
option go_package = "gitlab.com/inetmock/inetmock/internal/rpc";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "HealthProto";
|
||||
option java_package = "com.github.baez90.inetmock.rpc";
|
||||
|
||||
service Health {
|
||||
rpc GetHealth(HealthRequest) returns (HealthResponse);
|
||||
}
|
||||
|
||||
enum HealthState {
|
||||
HEALTHY = 0;
|
||||
INITIALIZING = 1;
|
||||
UNHEALTHY = 2;
|
||||
UNKNOWN = 3;
|
||||
}
|
||||
|
||||
message HealthRequest {
|
||||
repeated string components = 1;
|
||||
}
|
||||
|
||||
message ComponentHealth {
|
||||
HealthState State = 1;
|
||||
string message = 2;
|
||||
}
|
||||
|
||||
message HealthResponse {
|
||||
HealthState overallHealthState = 1;
|
||||
map<string, ComponentHealth> componentsHealth = 2;
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
syntax = "proto3";
|
||||
|
||||
package inetmock.rpc;
|
||||
package inetmock.rpc.v1;
|
||||
|
||||
option csharp_namespace = "INetMock.Client.Rpc";
|
||||
option go_package = "gitlab.com/inetmock/inetmock/pkg/rpc";
|
||||
|
@ -8,31 +8,30 @@ option java_multiple_files = true;
|
|||
option java_outer_classname = "AuditProto";
|
||||
option java_package = "com.github.baez90.inetmock.rpc";
|
||||
|
||||
import "audit/event_entity.proto";
|
||||
|
||||
enum FileOpenMode {
|
||||
TRUNCATE = 0;
|
||||
APPEND = 1;
|
||||
}
|
||||
import "audit/v1/event_entity.proto";
|
||||
|
||||
message WatchEventsRequest {
|
||||
string watcherName = 1;
|
||||
string watcher_name = 1;
|
||||
}
|
||||
|
||||
message WatchEventsResponse {
|
||||
inetmock.audit.v1.EventEntity entity = 1;
|
||||
}
|
||||
|
||||
message RegisterFileSinkRequest {
|
||||
string targetPath = 1;
|
||||
string target_path = 1;
|
||||
}
|
||||
|
||||
message RegisterFileSinkResponse {
|
||||
string resolvedPath = 1;
|
||||
string resolved_path = 1;
|
||||
}
|
||||
|
||||
message RemoveFileSinkRequest {
|
||||
string targetPath = 1;
|
||||
string target_path = 1;
|
||||
}
|
||||
|
||||
message RemoveFileSinkResponse {
|
||||
bool SinkGotRemoved = 1;
|
||||
bool sink_got_removed = 1;
|
||||
}
|
||||
|
||||
message ListSinksRequest {}
|
||||
|
@ -41,8 +40,8 @@ message ListSinksResponse {
|
|||
repeated string sinks = 1;
|
||||
}
|
||||
|
||||
service Audit {
|
||||
rpc WatchEvents(WatchEventsRequest) returns (stream inetmock.audit.EventEntity);
|
||||
service AuditService {
|
||||
rpc WatchEvents(WatchEventsRequest) returns (stream WatchEventsResponse);
|
||||
rpc RegisterFileSink(RegisterFileSinkRequest) returns (RegisterFileSinkResponse);
|
||||
rpc RemoveFileSink(RemoveFileSinkRequest) returns (RemoveFileSinkResponse);
|
||||
rpc ListSinks(ListSinksRequest) returns (ListSinksResponse);
|
34
api/proto/rpc/v1/health.proto
Normal file
34
api/proto/rpc/v1/health.proto
Normal file
|
@ -0,0 +1,34 @@
|
|||
syntax = "proto3";
|
||||
|
||||
package inetmock.rpc.v1;
|
||||
|
||||
option csharp_namespace = "INetMock.Client.Rpc";
|
||||
option go_package = "gitlab.com/inetmock/inetmock/pkg/rpc";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "HealthProto";
|
||||
option java_package = "com.github.baez90.inetmock.rpc";
|
||||
|
||||
enum HealthState {
|
||||
HEALTH_STATE_UNSPECIFIED = 0;
|
||||
HEALTH_STATE_INITIALIZING = 1;
|
||||
HEALTH_STATE_UNHEALTHY = 2;
|
||||
HEALTH_STATE_HEALTHY = 3;
|
||||
}
|
||||
|
||||
message GetHealthRequest {
|
||||
repeated string components = 1;
|
||||
}
|
||||
|
||||
message ComponentHealth {
|
||||
HealthState state = 1;
|
||||
string message = 2;
|
||||
}
|
||||
|
||||
message GetHealthResponse {
|
||||
HealthState overall_health_state = 1;
|
||||
map<string, ComponentHealth> components_health = 2;
|
||||
}
|
||||
|
||||
service HealthService {
|
||||
rpc GetHealth(GetHealthRequest) returns (GetHealthResponse);
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
syntax = "proto3";
|
||||
|
||||
package inetmock.rpc;
|
||||
package inetmock.rpc.v1;
|
||||
|
||||
option csharp_namespace = "INetMock.Client.Rpc";
|
||||
option go_package = "gitlab.com/inetmock/inetmock/pkg/rpc";
|
||||
|
@ -17,37 +17,37 @@ message ListAvailableDevicesResponse {
|
|||
string name = 1;
|
||||
repeated bytes addresses = 2;
|
||||
}
|
||||
repeated PCAPDevice availableDevices = 1;
|
||||
repeated PCAPDevice available_devices = 1;
|
||||
}
|
||||
|
||||
message ListRecordingsRequest {}
|
||||
message ListActiveRecordingsRequest {}
|
||||
|
||||
message ListRecordingsResponse {
|
||||
message ListActiveRecordingsResponse {
|
||||
repeated string subscriptions = 1;
|
||||
}
|
||||
|
||||
message StartPCAPFileRecordRequest {
|
||||
message StartPCAPFileRecordingRequest {
|
||||
string device = 1;
|
||||
string targetPath = 2;
|
||||
string target_path = 2;
|
||||
bool promiscuous = 3;
|
||||
google.protobuf.Duration readTimeout = 4;
|
||||
google.protobuf.Duration read_timeout = 4;
|
||||
}
|
||||
|
||||
message StartPCAPFileRecordResponse {
|
||||
string resolvedPath = 1;
|
||||
message StartPCAPFileRecordingResponse {
|
||||
string resolved_path = 1;
|
||||
}
|
||||
|
||||
message StopPCAPFileRecordRequest {
|
||||
string consumerKey = 1;
|
||||
string consumer_key = 1;
|
||||
}
|
||||
|
||||
message StopPCAPFileRecordResponse {
|
||||
bool removed = 1;
|
||||
}
|
||||
|
||||
service PCAP {
|
||||
service PCAPService {
|
||||
rpc ListAvailableDevices(ListAvailableDevicesRequest) returns (ListAvailableDevicesResponse);
|
||||
rpc ListActiveRecordings(ListRecordingsRequest) returns (ListRecordingsResponse);
|
||||
rpc StartPCAPFileRecording(StartPCAPFileRecordRequest) returns (StartPCAPFileRecordResponse);
|
||||
rpc ListActiveRecordings(ListActiveRecordingsRequest) returns (ListActiveRecordingsResponse);
|
||||
rpc StartPCAPFileRecording(StartPCAPFileRecordingRequest) returns (StartPCAPFileRecordingResponse);
|
||||
rpc StopPCAPFileRecord(StopPCAPFileRecordRequest) returns (StopPCAPFileRecordResponse);
|
||||
}
|
Loading…
Reference in a new issue