proto/proto/sgx/dtpm.proto
2025-06-19 20:47:25 +03:00

61 lines
1.1 KiB
Protocol Buffer

// SPDX-License-Identifier: Apache-2.0
syntax = "proto3";
package dtpm_proto;
import "shared/common.proto";
message DtpmConfigData {
repeated EnvironmentEntry environments = 1;
repeated ChildProcess child_processes = 2;
}
message FileEntry {
string path = 1;
oneof content {
bytes data = 2;
bytes archive = 3;
}
}
message EnvironmentEntry {
string name = 1;
string value = 2;
}
message ChildProcess {
string path = 1;
repeated string arguments = 2;
RestartPolicy restart= 3;
}
message RestartPolicy {
uint32 max_retries = 1;
uint32 delay_seconds = 2;
oneof policy_type {
bool Always = 3;
bool OnNonZeroExit = 4;
}
}
message DtpmSetConfigReq {
DtpmConfigData config_data = 1;
string metadata = 2;
}
message DtpmSetConfigRes {
string status = 1;
string error = 2;
}
message DtpmGetConfigRes {
DtpmConfigData config_data = 1;
}
service DtpmConfigManager {
rpc UploadFiles(stream FileEntry) returns (common_proto.Empty) {}
rpc SetConfig(DtpmSetConfigReq) returns (DtpmSetConfigRes) {}
rpc GetConfig(common_proto.Empty) returns (DtpmGetConfigRes) {}
}