syntax = "proto3";

import "sec0.proto";
import "sec1.proto";

/* Allowed values for the type of security
 * being used in a protocomm session */
enum SecSchemeVersion {
    SecScheme0 = 0; /*!< Unsecured - plaintext communication */
    SecScheme1 = 1; /*!< Security scheme 1 - Curve25519 + AES-256-CTR*/
}

/* Data structure exchanged when establishing
 * secure session between Host and Client */
message SessionData {
    SecSchemeVersion sec_ver = 2;   /*!< Type of security */
    oneof proto {
        Sec0Payload sec0 = 10;      /*!< Payload data in case of security 0 */
        Sec1Payload sec1 = 11;      /*!< Payload data in case of security 1 */
    }
}