2013-03-25 19:01:54 +00:00

112 lines
2.4 KiB
Protocol Buffer

package rsctrl.peers;
import "core.proto";
///////////////////////////////////////////////////////////////
// Access, and Control your Friends / Peers and related Settings.
///////////////////////////////////////////////////////////////
enum RequestMsgIds {
MsgId_RequestPeers = 1;
MsgId_RequestAddPeer = 2;
MsgId_RequestExaminePeer = 3;
MsgId_RequestModifyPeer = 4;
}
enum ResponseMsgIds {
MsgId_ResponsePeerList = 1;
}
///////////////////////////////////////////////////////////////
// REQUEST: RequestPeers
message RequestPeers {
// About Who?
enum SetOption {
OWNID = 1;
LISTED = 2;
CONNECTED = 3;
FRIENDS = 4;
VALID = 5;
SIGNED = 6;
ALL = 7;
}
// What do you want?
enum InfoOption {
NAMEONLY = 1;
BASIC = 2;
LOCATION = 3;
ALLINFO = 4;
}
required SetOption set = 1;
required InfoOption info = 2;
repeated string pgp_ids = 3;
}
// RESPONSE: ResponsePeerList
message ResponsePeerList {
required rsctrl.core.Status status = 1;
repeated rsctrl.core.Person peers = 2;
}
///////////////////////////////////////////////////////////////
// REQUEST: RequestAddPeer
message RequestAddPeer {
enum AddCmd {
ADD = 1; // Add existing from gpg_id.
REMOVE = 2; // Remove existing from gpg_id.
}
required AddCmd cmd = 1;
required string pgp_id = 2;
optional string ssl_id = 3;
}
///////////////////////////////////////////////////////////////
// REQUEST: RequestExaminePeer
message RequestExaminePeer {
enum ExamineCmd {
IMPORT = 3; // Import from cert, with gpg_id.
EXAMINE = 4; // Examine cert, but no action.
}
// Must have GPG ID to import. Proves you've looked at it.
required string pgp_id = 1;
required ExamineCmd cmd = 2;
required string cert = 3;
}
///////////////////////////////////////////////////////////////
// REQUEST: RequestModifyPeer
// THIS IS INCOMPLETE... DON'T USE.
message RequestModifyPeer {
enum ModCmd {
NOOP = 0;
ADDRESS = 1;
DYNDNS = 2;
//SOMETHING_ELSE = 0x0000010;
//SOMETHING_ELSE = 0x0000020;
//SOMETHING_ELSE = 0x0000040;
//SOMETHING_ELSE = 0x0000080;
}
required ModCmd cmd = 1;
//required int64 cmd = 1; // Could we OR the Cmds together?
repeated rsctrl.core.Person peers = 2;
}
///////////////////////////////////////////////////////////////