2019-02-18 07:41:30 +00:00
|
|
|
syntax = "proto3";
|
|
|
|
|
|
|
|
package core;
|
|
|
|
|
|
|
|
service CoreApi {
|
2019-03-16 19:33:24 +00:00
|
|
|
// session rpc
|
2019-02-24 15:44:41 +00:00
|
|
|
rpc CreateSession (CreateSessionRequest) returns (CreateSessionResponse) {
|
|
|
|
}
|
2019-02-24 16:15:33 +00:00
|
|
|
rpc DeleteSession (DeleteSessionRequest) returns (DeleteSessionResponse) {
|
|
|
|
}
|
2019-03-17 04:40:15 +00:00
|
|
|
rpc GetSessions (GetSessionsRequest) returns (GetSessionsResponse) {
|
2019-02-21 05:19:35 +00:00
|
|
|
}
|
2019-03-17 04:40:15 +00:00
|
|
|
rpc GetSession (GetSessionRequest) returns (GetSessionResponse) {
|
2019-02-21 05:19:35 +00:00
|
|
|
}
|
2019-03-17 04:40:15 +00:00
|
|
|
rpc GetSessionOptions (GetSessionOptionsRequest) returns (GetSessionOptionsResponse) {
|
|
|
|
}
|
|
|
|
rpc SetSessionOptions (SetSessionOptionsRequest) returns (SetSessionOptionsResponse) {
|
2019-02-21 05:19:35 +00:00
|
|
|
}
|
2019-02-24 15:44:41 +00:00
|
|
|
rpc GetSessionLocation (GetSessionLocationRequest) returns (GetSessionLocationResponse) {
|
|
|
|
}
|
|
|
|
rpc SetSessionLocation (SetSessionLocationRequest) returns (SetSessionLocationResponse) {
|
2019-02-24 16:15:33 +00:00
|
|
|
}
|
|
|
|
rpc SetSessionState (SetSessionStateRequest) returns (SetSessionStateResponse) {
|
2019-02-21 05:19:35 +00:00
|
|
|
}
|
2019-03-16 19:33:24 +00:00
|
|
|
|
2019-03-16 20:48:25 +00:00
|
|
|
// event streams
|
|
|
|
rpc NodeEvents (NodeEventsRequest) returns (stream NodeEvent) {
|
|
|
|
}
|
|
|
|
rpc SessionEvents (SessionEventsRequest) returns (stream SessionEvent) {
|
|
|
|
}
|
|
|
|
|
2019-03-16 19:33:24 +00:00
|
|
|
// node rpc
|
2019-02-26 06:45:57 +00:00
|
|
|
rpc CreateNode (CreateNodeRequest) returns (CreateNodeResponse) {
|
|
|
|
}
|
2019-02-26 22:34:52 +00:00
|
|
|
rpc GetNode (GetNodeRequest) returns (GetNodeResponse) {
|
|
|
|
}
|
2019-02-26 06:45:57 +00:00
|
|
|
rpc EditNode (EditNodeRequest) returns (EditNodeResponse) {
|
|
|
|
}
|
2019-02-26 22:34:52 +00:00
|
|
|
rpc DeleteNode (DeleteNodeRequest) returns (DeleteNodeResponse) {
|
|
|
|
}
|
2019-03-16 19:33:24 +00:00
|
|
|
|
|
|
|
// link rpc
|
2019-03-02 06:14:16 +00:00
|
|
|
rpc GetNodeLinks (GetNodeLinksRequest) returns (GetNodeLinksResponse) {
|
|
|
|
}
|
2019-02-26 22:34:52 +00:00
|
|
|
rpc CreateLink (CreateLinkRequest) returns (CreateLinkResponse) {
|
|
|
|
}
|
|
|
|
rpc EditLink (EditLinkRequest) returns (EditLinkResponse) {
|
|
|
|
}
|
|
|
|
rpc DeleteLink (DeleteLinkRequest) returns (DeleteLinkResponse) {
|
|
|
|
}
|
2019-03-16 19:33:24 +00:00
|
|
|
|
|
|
|
// hook rpc
|
|
|
|
rpc GetHooks (GetHooksRequest) returns (GetHooksResponse) {
|
|
|
|
}
|
|
|
|
rpc AddHook (AddHookRequest) returns (AddHookResponse) {
|
|
|
|
}
|
|
|
|
|
|
|
|
// service rpc
|
2019-03-02 06:14:16 +00:00
|
|
|
rpc GetServices (GetServicesRequest) returns (GetServicesResponse) {
|
|
|
|
}
|
2019-03-15 05:33:10 +00:00
|
|
|
rpc GetServiceDefaults (GetServiceDefaultsRequest) returns (GetServiceDefaultsResponse) {
|
|
|
|
}
|
|
|
|
rpc SetServiceDefaults (SetServiceDefaultsRequest) returns (SetServiceDefaultsResponse) {
|
|
|
|
}
|
|
|
|
rpc GetNodeService (GetNodeServiceRequest) returns (GetNodeServiceResponse) {
|
|
|
|
}
|
2019-03-17 03:53:26 +00:00
|
|
|
rpc GetNodeServiceFile (GetNodeServiceFileRequest) returns (GetNodeServiceFileResponse) {
|
|
|
|
}
|
2019-03-17 04:40:15 +00:00
|
|
|
rpc SetNodeService (SetNodeServiceRequest) returns (SetNodeServiceResponse) {
|
|
|
|
}
|
|
|
|
rpc SetNodeServiceFile (SetNodeServiceFileRequest) returns (SetNodeServiceFileResponse) {
|
|
|
|
}
|
2019-03-17 03:53:26 +00:00
|
|
|
rpc ServiceAction (ServiceActionRequest) returns (ServiceActionResponse) {
|
|
|
|
}
|
2019-03-16 19:33:24 +00:00
|
|
|
|
2019-03-16 19:48:37 +00:00
|
|
|
// wlan rpc
|
|
|
|
rpc GetWlanConfig (GetWlanConfigRequest) returns (GetWlanConfigResponse) {
|
|
|
|
}
|
|
|
|
rpc SetWlanConfig (SetWlanConfigRequest) returns (SetWlanConfigResponse) {
|
|
|
|
}
|
|
|
|
|
2019-03-16 19:33:24 +00:00
|
|
|
// emane rpc
|
2019-03-02 06:14:16 +00:00
|
|
|
rpc GetEmaneConfig (GetEmaneConfigRequest) returns (GetEmaneConfigResponse) {
|
|
|
|
}
|
2019-03-16 05:03:37 +00:00
|
|
|
rpc SetEmaneConfig (SetEmaneConfigRequest) returns (SetEmaneConfigResponse) {
|
|
|
|
}
|
2019-03-16 04:38:29 +00:00
|
|
|
rpc GetEmaneModels (GetEmaneModelsRequest) returns (GetEmaneModelsResponse) {
|
|
|
|
}
|
|
|
|
rpc GetEmaneModelConfig (GetEmaneModelConfigRequest) returns (GetEmaneModelConfigResponse) {
|
|
|
|
}
|
2019-03-16 05:03:37 +00:00
|
|
|
rpc SetEmaneModelConfig (SetEmaneModelConfigRequest) returns (SetEmaneModelConfigResponse) {
|
|
|
|
}
|
2019-03-16 04:38:29 +00:00
|
|
|
rpc GetEmaneModelConfigs (GetEmaneModelConfigsRequest) returns (GetEmaneModelConfigsResponse) {
|
|
|
|
}
|
2019-03-16 19:33:24 +00:00
|
|
|
|
|
|
|
// xml rpc
|
2019-03-02 21:44:27 +00:00
|
|
|
rpc SaveXml (SaveXmlRequest) returns (SaveXmlResponse) {
|
|
|
|
}
|
|
|
|
rpc OpenXml (OpenXmlRequest) returns (OpenXmlResponse) {
|
|
|
|
}
|
2019-02-18 07:41:30 +00:00
|
|
|
}
|
|
|
|
|
2019-02-24 15:44:41 +00:00
|
|
|
// rpc request/response messages
|
|
|
|
message CreateSessionRequest {
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
message CreateSessionResponse {
|
|
|
|
int32 id = 1;
|
|
|
|
int32 state = 2;
|
|
|
|
}
|
|
|
|
|
2019-02-24 16:15:33 +00:00
|
|
|
message DeleteSessionRequest {
|
|
|
|
int32 id = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message DeleteSessionResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-17 04:40:15 +00:00
|
|
|
message GetSessionsRequest {
|
2019-02-18 07:41:30 +00:00
|
|
|
}
|
|
|
|
|
2019-03-17 04:40:15 +00:00
|
|
|
message GetSessionsResponse {
|
2019-02-21 05:19:35 +00:00
|
|
|
repeated Session sessions = 1;
|
2019-02-18 07:41:30 +00:00
|
|
|
}
|
|
|
|
|
2019-03-17 04:40:15 +00:00
|
|
|
message GetSessionRequest {
|
2019-02-21 05:19:35 +00:00
|
|
|
int32 id = 1;
|
2019-02-19 06:54:14 +00:00
|
|
|
}
|
|
|
|
|
2019-03-17 04:40:15 +00:00
|
|
|
message GetSessionResponse {
|
2019-02-21 05:19:35 +00:00
|
|
|
int32 state = 1;
|
|
|
|
repeated Node nodes = 2;
|
|
|
|
repeated Link links = 3;
|
|
|
|
}
|
|
|
|
|
2019-03-17 04:40:15 +00:00
|
|
|
message GetSessionOptionsRequest {
|
2019-02-21 05:19:35 +00:00
|
|
|
int32 id = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-17 04:40:15 +00:00
|
|
|
message GetSessionOptionsResponse {
|
2019-02-21 05:19:35 +00:00
|
|
|
repeated ConfigGroup groups = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-17 04:40:15 +00:00
|
|
|
message SetSessionOptionsRequest {
|
|
|
|
int32 id = 1;
|
|
|
|
map<string, string> config = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetSessionOptionsResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-02-24 15:44:41 +00:00
|
|
|
message GetSessionLocationRequest {
|
2019-02-21 05:19:35 +00:00
|
|
|
int32 id = 1;
|
|
|
|
}
|
|
|
|
|
2019-02-24 15:44:41 +00:00
|
|
|
message GetSessionLocationResponse {
|
2019-02-21 05:19:35 +00:00
|
|
|
Position position = 1;
|
|
|
|
float scale = 2;
|
|
|
|
}
|
|
|
|
|
2019-02-24 15:44:41 +00:00
|
|
|
message SetSessionLocationRequest {
|
|
|
|
int32 id = 1;
|
|
|
|
Position position = 2;
|
|
|
|
float scale = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetSessionLocationResponse {
|
2019-03-16 04:38:29 +00:00
|
|
|
bool result = 1;
|
2019-02-24 16:15:33 +00:00
|
|
|
}
|
2019-02-24 15:44:41 +00:00
|
|
|
|
2019-02-24 16:15:33 +00:00
|
|
|
message SetSessionStateRequest {
|
|
|
|
int32 id = 1;
|
|
|
|
SessionState state = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetSessionStateResponse {
|
|
|
|
bool result = 1;
|
2019-02-24 15:44:41 +00:00
|
|
|
}
|
|
|
|
|
2019-03-16 20:48:25 +00:00
|
|
|
message NodeEventsRequest {
|
|
|
|
int32 id = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message NodeEvent {
|
|
|
|
Node node = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SessionEventsRequest {
|
|
|
|
int32 id = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SessionEvent {
|
|
|
|
int32 node = 1;
|
|
|
|
int32 event = 2;
|
|
|
|
string name = 3;
|
|
|
|
bytes data = 4;
|
|
|
|
float time = 5;
|
|
|
|
int32 session = 6;
|
|
|
|
}
|
|
|
|
|
2019-02-26 06:45:57 +00:00
|
|
|
message CreateNodeRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
NodeType type = 3;
|
|
|
|
string name = 4;
|
|
|
|
string model = 5;
|
|
|
|
string icon = 6;
|
|
|
|
repeated string services = 7;
|
|
|
|
Position position = 8;
|
|
|
|
string emane = 9;
|
|
|
|
string opaque = 10;
|
|
|
|
}
|
|
|
|
|
|
|
|
message CreateNodeResponse {
|
|
|
|
int32 id = 1;
|
|
|
|
}
|
|
|
|
|
2019-02-26 22:34:52 +00:00
|
|
|
message GetNodeRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetNodeResponse {
|
|
|
|
Node node = 1;
|
|
|
|
repeated Interface interfaces = 2;
|
|
|
|
}
|
|
|
|
|
2019-02-26 06:45:57 +00:00
|
|
|
message EditNodeRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
Position position = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message EditNodeResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-02-26 22:34:52 +00:00
|
|
|
message DeleteNodeRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message DeleteNodeResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-02 06:14:16 +00:00
|
|
|
message GetNodeLinksRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetNodeLinksResponse {
|
|
|
|
repeated Link links = 1;
|
|
|
|
}
|
|
|
|
|
2019-02-26 22:34:52 +00:00
|
|
|
message CreateLinkRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
Link link = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message CreateLinkResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message EditLinkRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 node_one = 2;
|
|
|
|
int32 node_two = 3;
|
|
|
|
int32 interface_one = 4;
|
|
|
|
int32 interface_two = 5;
|
|
|
|
LinkOptions options = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message EditLinkResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message DeleteLinkRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 node_one = 2;
|
|
|
|
int32 node_two = 3;
|
|
|
|
int32 interface_one = 4;
|
|
|
|
int32 interface_two = 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
message DeleteLinkResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-16 19:33:24 +00:00
|
|
|
message GetHooksRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetHooksResponse {
|
|
|
|
repeated Hook hooks = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message AddHookRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
Hook hook = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message AddHookResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-02 06:14:16 +00:00
|
|
|
message GetServicesRequest {
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetServicesResponse {
|
|
|
|
repeated Service services = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-15 05:33:10 +00:00
|
|
|
message GetServiceDefaultsRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetServiceDefaultsResponse {
|
|
|
|
repeated ServiceDefaults defaults = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetServiceDefaultsRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
repeated ServiceDefaults defaults = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetServiceDefaultsResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetNodeServiceRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
string service = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetNodeServiceResponse {
|
|
|
|
NodeServiceData service = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-17 03:53:26 +00:00
|
|
|
message GetNodeServiceFileRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
string service = 3;
|
|
|
|
string file = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetNodeServiceFileResponse {
|
|
|
|
bytes data = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-17 04:40:15 +00:00
|
|
|
message SetNodeServiceRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
string service = 3;
|
|
|
|
repeated string startup = 4;
|
|
|
|
repeated string validate = 5;
|
|
|
|
repeated string shutdown = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetNodeServiceResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetNodeServiceFileRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
string service = 3;
|
|
|
|
string file = 4;
|
|
|
|
bytes data = 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetNodeServiceFileResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-17 03:53:26 +00:00
|
|
|
message ServiceActionRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
string service = 3;
|
|
|
|
ServiceAction action = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ServiceActionResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-16 19:48:37 +00:00
|
|
|
message GetWlanConfigRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetWlanConfigResponse {
|
|
|
|
repeated ConfigGroup groups = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetWlanConfigRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
map<string, string> config = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetWlanConfigResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-02 06:14:16 +00:00
|
|
|
message GetEmaneConfigRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetEmaneConfigResponse {
|
|
|
|
repeated ConfigGroup groups = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-16 05:03:37 +00:00
|
|
|
message SetEmaneConfigRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
map<string, string> config = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetEmaneConfigResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-16 04:38:29 +00:00
|
|
|
message GetEmaneModelsRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetEmaneModelsResponse {
|
|
|
|
repeated string models = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetEmaneModelConfigRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
string model = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetEmaneModelConfigResponse {
|
|
|
|
repeated ConfigGroup groups = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-16 05:03:37 +00:00
|
|
|
message SetEmaneModelConfigRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
int32 id = 2;
|
|
|
|
string model = 3;
|
|
|
|
map<string, string> config = 4;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SetEmaneModelConfigResponse {
|
|
|
|
bool result = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-16 04:38:29 +00:00
|
|
|
message GetEmaneModelConfigsRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message GetEmaneModelConfigsResponse {
|
|
|
|
message ModelConfig {
|
|
|
|
string model = 1;
|
|
|
|
repeated ConfigGroup groups = 2;
|
|
|
|
}
|
|
|
|
map<int32, ModelConfig> configs = 1;
|
|
|
|
}
|
|
|
|
|
2019-03-02 21:44:27 +00:00
|
|
|
message SaveXmlRequest {
|
|
|
|
int32 session = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SaveXmlResponse {
|
|
|
|
bytes data = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message OpenXmlRequest {
|
|
|
|
bytes data = 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
message OpenXmlResponse {
|
|
|
|
bool result = 1;
|
|
|
|
int32 session = 2;
|
|
|
|
}
|
|
|
|
|
2019-02-24 15:44:41 +00:00
|
|
|
// data structures for messages below
|
2019-02-24 16:15:33 +00:00
|
|
|
enum SessionState {
|
|
|
|
NONE = 0;
|
|
|
|
DEFINITION = 1;
|
|
|
|
CONFIGURATION = 2;
|
|
|
|
INSTANTIATION = 3;
|
|
|
|
RUNTIME = 4;
|
|
|
|
DATACOLLECT = 5;
|
|
|
|
SHUTDOWN = 6;
|
|
|
|
}
|
|
|
|
|
2019-02-26 06:45:57 +00:00
|
|
|
enum NodeType {
|
|
|
|
DEFAULT = 0;
|
|
|
|
PHYSICAL = 1;
|
|
|
|
TBD = 3;
|
|
|
|
SWITCH = 4;
|
|
|
|
HUB = 5;
|
|
|
|
WIRELESS_LAN = 6;
|
|
|
|
RJ45 = 7;
|
|
|
|
TUNNEL = 8;
|
|
|
|
KTUNNEL = 9;
|
|
|
|
EMANE = 10;
|
|
|
|
TAP_BRIDGE = 11;
|
|
|
|
PEER_TO_PEER = 12;
|
|
|
|
CONTROL_NET = 13;
|
|
|
|
EMANE_NET = 14;
|
|
|
|
}
|
|
|
|
|
2019-03-15 05:33:10 +00:00
|
|
|
enum ServiceValidationMode {
|
|
|
|
BLOCKING = 0;
|
|
|
|
NON_BLOCKING = 1;
|
|
|
|
TIMER = 2;
|
|
|
|
}
|
|
|
|
|
2019-03-17 03:53:26 +00:00
|
|
|
enum ServiceAction {
|
|
|
|
START = 0;
|
|
|
|
STOP = 1;
|
|
|
|
RESTART = 2;
|
|
|
|
VALIDATE = 3;
|
|
|
|
}
|
|
|
|
|
2019-03-16 19:33:24 +00:00
|
|
|
message Hook {
|
|
|
|
SessionState state = 1;
|
|
|
|
string file = 2;
|
|
|
|
bytes data = 3;
|
|
|
|
}
|
|
|
|
|
2019-03-15 05:33:10 +00:00
|
|
|
message ServiceDefaults {
|
|
|
|
string node_type = 1;
|
|
|
|
repeated string services = 2;
|
|
|
|
}
|
|
|
|
|
2019-03-02 06:14:16 +00:00
|
|
|
message Service {
|
|
|
|
string group = 1;
|
|
|
|
string name = 2;
|
|
|
|
}
|
|
|
|
|
2019-03-15 05:33:10 +00:00
|
|
|
message NodeServiceData {
|
|
|
|
repeated string executables = 1;
|
|
|
|
repeated string dependencies = 2;
|
|
|
|
repeated string dirs = 3;
|
|
|
|
repeated string configs = 4;
|
|
|
|
repeated string startup = 5;
|
|
|
|
repeated string validate = 6;
|
|
|
|
ServiceValidationMode validation_mode = 7;
|
|
|
|
int32 validation_timer = 8;
|
|
|
|
repeated string shutdown = 9;
|
|
|
|
string meta = 10;
|
|
|
|
}
|
|
|
|
|
2019-02-21 05:19:35 +00:00
|
|
|
message ConfigGroup {
|
|
|
|
string name = 1;
|
|
|
|
repeated ConfigOption options = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ConfigOption {
|
|
|
|
string label = 1;
|
|
|
|
string name = 2;
|
|
|
|
string value = 3;
|
|
|
|
int32 type = 4;
|
|
|
|
repeated string select = 5;
|
2019-02-19 06:54:14 +00:00
|
|
|
}
|
|
|
|
|
2019-02-18 07:41:30 +00:00
|
|
|
message Session {
|
2019-02-21 05:19:35 +00:00
|
|
|
int32 id = 1;
|
|
|
|
int32 state = 2;
|
|
|
|
int32 nodes = 3;
|
2019-02-19 06:54:14 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message Node {
|
2019-02-21 05:19:35 +00:00
|
|
|
int32 id = 1;
|
|
|
|
string name = 2;
|
|
|
|
int32 type = 3;
|
|
|
|
string model = 4;
|
|
|
|
Position position = 5;
|
|
|
|
repeated string services = 6;
|
|
|
|
string emane = 7;
|
2019-02-19 06:54:14 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message Link {
|
2019-02-21 05:19:35 +00:00
|
|
|
int32 node_one = 1;
|
|
|
|
int32 node_two = 2;
|
|
|
|
int32 type = 3;
|
|
|
|
Interface interface_one = 4;
|
|
|
|
Interface interface_two = 5;
|
|
|
|
LinkOptions options = 6;
|
2019-02-20 07:32:04 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message LinkOptions {
|
2019-02-21 05:19:35 +00:00
|
|
|
string opaque = 1;
|
|
|
|
float jitter = 2;
|
|
|
|
string key = 3;
|
|
|
|
float mburst = 4;
|
|
|
|
float mer = 5;
|
|
|
|
float per = 6;
|
|
|
|
float bandwidth = 7;
|
|
|
|
float burst = 8;
|
|
|
|
float delay = 9;
|
|
|
|
float dup = 10;
|
|
|
|
bool unidirectional = 11;
|
2019-02-20 07:32:04 +00:00
|
|
|
}
|
2019-02-19 06:54:14 +00:00
|
|
|
|
2019-02-20 07:32:04 +00:00
|
|
|
message Interface {
|
2019-02-21 05:19:35 +00:00
|
|
|
int32 id = 1;
|
|
|
|
string name = 2;
|
|
|
|
string mac = 3;
|
|
|
|
string ip4 = 4;
|
|
|
|
int32 ip4mask = 5;
|
|
|
|
string ip6 = 6;
|
|
|
|
int32 ip6mask = 7;
|
2019-02-26 22:34:52 +00:00
|
|
|
int32 netid = 8;
|
|
|
|
int32 flowid = 9;
|
|
|
|
int32 mtu = 10;
|
2019-02-19 06:54:14 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message Position {
|
2019-02-21 05:19:35 +00:00
|
|
|
float x = 1;
|
|
|
|
float y = 2;
|
|
|
|
float z = 3;
|
|
|
|
float lat = 4;
|
|
|
|
float lon = 5;
|
|
|
|
float alt = 6;
|
2019-02-18 07:41:30 +00:00
|
|
|
}
|