bgpwtf/cccampix: draw the rest of the fucking owl
Change-Id: I49fd5906e69512e8f2d414f406edc0179522f225
diff --git a/bgpwtf/cccampix/proto/ix.proto b/bgpwtf/cccampix/proto/ix.proto
index ce84b48..cb9cb30 100644
--- a/bgpwtf/cccampix/proto/ix.proto
+++ b/bgpwtf/cccampix/proto/ix.proto
@@ -20,19 +20,8 @@
repeated Router routers = 3;
}
-
message GetIXMembersResponse {
- message Member {
- int64 asn = 1;
- // Per PeeringDB, at least one of the following two address families
- // will be set.
- string ipv4 = 2;
- string ipv6 = 3;
- // AS/network name.
- string name = 4;
- };
-
- repeated Member members = 1;
+ repeated PeeringDBMember members = 1;
}
service PeeringDBProxy {
@@ -66,7 +55,7 @@
ImportExport export = 3;
}
}
-
+
message IRRQueryResponse {
enum Source {
SOURCE_INVALID = 0;
@@ -82,6 +71,71 @@
rpc Query(IRRQueryRequest) returns (IRRQueryResponse);
}
+message ProcessorStatusRequest {
+}
+
+message ProcessorStatusResponse {
+ message Processor {
+ enum Status {
+ STATUS_INVALID = 0;
+ STATUS_OK = 1;
+ STATUS_ERROR = 2;
+ }
+ string name = 1;
+ Status status = 2;
+ int64 last_run = 3;
+ int64 next_run = 4;
+ }
+ repeated Processor processors = 1;
+}
+
+message PeerSummaryRequest {
+}
+
+message PeerSummaryResponse {
+ PeeringDBMember peeringdb_info = 1;
+ enum Status {
+ STATUS_INVALID = 0;
+ STATUS_OK = 1;
+ STATUS_FAILED = 2;
+ STATUS_UNKNOWN = 3;
+ }
+ Status check_status = 2;
+}
+
+message PeerDetailsRequest {
+ int64 asn = 1;
+}
+
+message PeerDetailsResponse {
+ message Check {
+ enum Status {
+ STATUS_INVALID = 0;
+ STATUS_OK = 1;
+ STATUS_FAILED = 2;
+ };
+ string name = 1;
+ Status status = 2;
+ int64 time = 3;
+ string msg = 4;
+ };
+ repeated Check checks = 1;
+
+ message AllowedPrefix {
+ string prefix = 1;
+ int64 max_length = 2;
+ string ta = 3;
+ };
+ repeated AllowedPrefix allowed_prefixes = 2;
+ PeeringDBMember peeringdb_info = 3;
+}
+
+service Verifier {
+ rpc ProcessorStatus(ProcessorStatusRequest) returns (ProcessorStatusResponse);
+ rpc PeerSummary(PeerSummaryRequest) returns (stream PeerSummaryResponse);
+ rpc PeerDetails(PeerDetailsRequest) returns (PeerDetailsResponse);
+}
+
message KeyInfoRequest {
// Public key fingerprint. 20 bytes.
bytes fingerprint = 1;
@@ -137,4 +191,3 @@
// Encrypt encrypts a given data blob with a given key from public keyserver infrastructure.
// If key doesn't exist, error (NotFound).
rpc Encrypt(stream EncryptRequest) returns (stream EncryptResponse);
-}