//
// File: GSSUP.idl
// CORBA 3.0 Chapter 24

#ifndef _GSSUP_IDL_
#define _GSSUP_IDL_

#ifdef _PRE_3_0_COMPILER_
#include <CSI.idl>

#pragma prefix "omg.org"
#else
//PolyORB:NI:import ::CSI;
#endif // _PRE_3_0_COMPILER_

//PolyORB:NI:module GSSUP {
//PolyORB:NI:
//PolyORB:NI:#ifndef _PRE_3_0_COMPILER_ 
//PolyORB:NI:    typeprefix GSSUP "omg.org";
//PolyORB:NI:#endif // _PRE_3_0_COMPILER_
//PolyORB:NI:
//PolyORB:NI:    // The GSS Object Identifier allocated for the 
//PolyORB:NI:    // username/password mechanism is defined below.
//PolyORB:NI:    //
//PolyORB:NI:    // { iso-itu-t (2) international-organization (23) omg (130)
//PolyORB:NI:    //	security (1) authentication (1) gssup-mechanism (1) }
//PolyORB:NI:
//PolyORB:NI:    const CSI::StringOID GSSUPMechOID = "oid:2.23.130.1.1.1";
//PolyORB:NI:
//PolyORB:NI:    // The following structure defines the inner contents of the
//PolyORB:NI:    // username password initial context token. This structure is
//PolyORB:NI:    // CDR encapsulated and appended at the end of the
//PolyORB:NI:    // username/password GSS (initial context) Token.
//PolyORB:NI:
//PolyORB:NI:    struct InitialContextToken {
//PolyORB:NI:	CSI::UTF8String username;
//PolyORB:NI:	CSI::UTF8String password;
//PolyORB:NI:	CSI::GSS_NT_ExportedName target_name;
//PolyORB:NI:    };
//PolyORB:NI:
//PolyORB:NI:    typedef unsigned long ErrorCode;
//PolyORB:NI:
//PolyORB:NI:    // GSSUP Mechanism-Specific Error Token
//PolyORB:NI:    struct ErrorToken {
//PolyORB:NI:	ErrorCode error_code;
//PolyORB:NI:    };
//PolyORB:NI:
//PolyORB:NI:    // The context validator has chosen not to reveal the GSSUP
//PolyORB:NI:    // specific cause of the failure.
//PolyORB:NI:    const ErrorCode GSS_UP_S_G_UNSPECIFIED = 1;
//PolyORB:NI:
//PolyORB:NI:    // The user identified in the username field of the
//PolyORB:NI:    // GSSUP::InitialContextToken is unknown to the target.
//PolyORB:NI:    const ErrorCode GSS_UP_S_G_NOUSER = 2;
//PolyORB:NI:
//PolyORB:NI:    // The password supplied in the GSSUP::InitialContextToken was
//PolyORB:NI:    // incorrect.
//PolyORB:NI:    const ErrorCode GSS_UP_S_G_BAD_PASSWORD = 3;
//PolyORB:NI:
//PolyORB:NI:    // The target_name supplied in the GSSUP::InitialContextToken does
//PolyORB:NI:    // not match a target_name in a mechanism definition of the target.
//PolyORB:NI:    const ErrorCode GSS_UP_S_G_BAD_TARGET = 4;
//PolyORB:NI:
//PolyORB:NI:}; // GSSUP

#endif
