const unsigned short AgreedDefault = 5;
const unsigned short DES_CBC = 22;
const unsigned short DES_CBC_DES_MAC = 10;
const unsigned short DES_CBC_MD5 = 11;
const unsigned short DES_CBC_SOURCE = 24;
const unsigned short DES_MAC = 12;
const unsigned short FullSecurity = 1;
const unsigned short LowGradeConfidentiality = 3;
const unsigned short MD5 = 13;
const unsigned short MD5_DES_CBC = 21;
const unsigned short MD5_DES_CBC_SOURCE = 23;
const unsigned short MD5_RSA = 20;
const unsigned short NoDataConfidentiality = 2;
const unsigned long TAG_ASSOCIATION_OPTIONS = 13;
const unsigned long TAG_CSI_ECMA_Hybrid_SEC_MECH = 19;
const unsigned long TAG_CSI_ECMA_Public_SEC_MECH = 21;
const unsigned long TAG_CSI_ECMA_Secret_SEC_MECH = 18;
const unsigned long TAG_GENERIC_SEC_MECH = 22;
const unsigned long TAG_KerberosV5_SEC_MECH = 17;
const unsigned long TAG_SEC_NAME = 14;
const unsigned long TAG_SECIOP_SEC_TRANS = 35;
const unsigned long TAG_SPKM_1_SEC_MECH = 15;
const unsigned long TAG_SPKM_2_SEC_MECH = 16;
struct CompleteEstablishContext
{
SECIOP::ContextId client_context_id;
boolean target_context_id_valid;
SECIOP::ContextId target_context_id;
final_context_token; };
typedef unsigned long long ContextId;
enum ContextIdDefn
{
CIDClient,
CIDPeer,
CIDSender
};
enum ContextTokenType
{
SecTokenTypeWrap,
SecTokenTypeMIC
};
struct ContinueEstablishContext
{
SECIOP::ContextId client_context_id;
continuation_context_token; };
typedef unsigned short CryptographicProfile;
typedef sequence < SECIOP::CryptographicProfile > CryptographicProfileList;
struct CSI_ECMA_Hybrid
{
Security::AssociationOptions target_supports;
Security::AssociationOptions target_requires;
SECIOP::CryptographicProfileList crypto_profile;
SECIOP::SecurityName security_name;
};
struct CSI_ECMA_Public
{
Security::AssociationOptions target_supports;
Security::AssociationOptions target_requires;
SECIOP::CryptographicProfileList crypto_profile;
SECIOP::SecurityName security_name;
};
struct CSI_ECMA_Secret
{
Security::AssociationOptions target_supports;
Security::AssociationOptions target_requires;
SECIOP::CryptographicProfileList crypto_profile;
SECIOP::SecurityName security_name;
};
struct DiscardContext
{
SECIOP::ContextIdDefn message_context_id_defn;
SECIOP::ContextId message_context_id;
discard_context_token; };
struct EstablishContext
{
SECIOP::ContextId client_context_id;
initial_context_token; };
struct GenericMechanismInfo
{
security_mechanism_type;
mech_specific_data;
components; };
struct KerberosV5
{
Security::AssociationOptions target_supports;
Security::AssociationOptions target_requires;
SECIOP::CryptographicProfileList crypto_profile;
SECIOP::SecurityName security_name;
};
struct MessageError
{
SECIOP::ContextIdDefn message_context_id_defn;
SECIOP::ContextId message_context_id;
long major_status;
long minor_status;
};
struct MessageInContext
{
SECIOP::ContextIdDefn message_context_id_defn;
SECIOP::ContextId message_context_id;
SECIOP::ContextTokenType message_context_type;
message_protection_token; };
enum MsgType
{
MTEstablishContext,
MTCompleteEstablishContext,
MTContinueEstablishContext,
MTDiscardContext,
MTMessageError,
MTMessageInContext
};
struct SECIOP_SEC_TRANS
{
Security::AssociationOptions target_supports;
Security::AssociationOptions target_requires;
Security::OID mech_oid;
Security::GSS_NT_ExportedName target_name;
unsigned short port;
};
typedef sequence < octet > SecurityName;
struct SequencingHeader
{
octet control_state;
unsigned long direct_sequence_number;
unsigned long reverse_sequence_number;
unsigned long reverse_window;
};
struct SPKM_1
{
Security::AssociationOptions target_supports;
Security::AssociationOptions target_requires;
SECIOP::CryptographicProfileList crypto_profile;
SECIOP::SecurityName security_name;
};
struct SPKM_2
{
Security::AssociationOptions target_supports;
Security::AssociationOptions target_requires;
SECIOP::CryptographicProfileList crypto_profile;
SECIOP::SecurityName security_name;
};
struct TargetAssociationOptions
{
Security::AssociationOptions target_supports;
Security::AssociationOptions target_requires;
};