geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From a..@apache.org
Subject svn commit: r126318 - /geronimo/trunk/modules/interop/maven.xml /geronimo/trunk/modules/interop/src/idl/CSI.idl /geronimo/trunk/modules/interop/src/idl/CSIIOP.idl /geronimo/trunk/modules/interop/src/idl/GSSUP.idl
Date Mon, 24 Jan 2005 21:36:07 GMT
Author: adc
Date: Mon Jan 24 13:36:06 2005
New Revision: 126318

URL: http://svn.apache.org/viewcvs?view=rev&rev=126318
Log:
Added CSIv2 IDL files.
Added:
   geronimo/trunk/modules/interop/src/idl/CSI.idl
   geronimo/trunk/modules/interop/src/idl/CSIIOP.idl
   geronimo/trunk/modules/interop/src/idl/GSSUP.idl
Modified:
   geronimo/trunk/modules/interop/maven.xml

Modified: geronimo/trunk/modules/interop/maven.xml
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/interop/maven.xml?view=diff&rev=126318&p1=geronimo/trunk/modules/interop/maven.xml&r1=126317&p2=geronimo/trunk/modules/interop/maven.xml&r2=126318
==============================================================================
--- geronimo/trunk/modules/interop/maven.xml	(original)
+++ geronimo/trunk/modules/interop/maven.xml	Mon Jan 24 13:36:06 2005
@@ -182,10 +182,106 @@
         </ant:exec>
     </goal>
 
-    <goal name="interop:idlj:csiv2">
-        <!-- Are there any CSIv2 IDL files that require generation? -->
-        <ant:echo message="Interop :: idlj :: CSIv2"/>
-    </goal>
+    <goal name="interop:idlj:csi">
+        <ant:echo message="Interop :: idlj :: CSIv2 :: CSI"/>
+        <ant:exec dir="${basedir}" executable="idlj">
+            <ant:arg line="-td"/>
+            <ant:arg line="${maven.build.src}"/>
+            <ant:arg line="-i"/>
+            <ant:arg line="${java.home}/lib"/>
+            <ant:arg line="-i"/>
+            <ant:arg line="${maven.src.dir}/idl"/>
+            <ant:arg line="-verbose"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="IOP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="IIOP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="GIOP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="CosNaming"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="CSI"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="GSSUP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="CSIIOP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="${maven.src.dir}/idl/CSI.idl"/>
+        </ant:exec>
+
+        <ant:echo message="Interop :: idlj :: CSIv2 :: GSSUP"/>
+        <ant:exec dir="${basedir}" executable="idlj">
+            <ant:arg line="-td"/>
+            <ant:arg line="${maven.build.src}"/>
+            <ant:arg line="-i"/>
+            <ant:arg line="${java.home}/lib"/>
+            <ant:arg line="-i"/>
+            <ant:arg line="${maven.src.dir}/idl"/>
+            <ant:arg line="-verbose"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="IOP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="IIOP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="GIOP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="CosNaming"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="CSI"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="GSSUP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="-pkgPrefix"/>
+            <ant:arg line="CSIIOP"/>
+            <ant:arg line="${pkg.prefix}"/>
+            <ant:arg line="${maven.src.dir}/idl/GSSUP.idl"/>
+        </ant:exec>
+        
+	<ant:echo message="Interop :: idlj :: CSIv2 :: CSIIOP"/>
+	<ant:exec dir="${basedir}" executable="idlj">
+	    <ant:arg line="-td"/>
+	    <ant:arg line="${maven.build.src}"/>
+	    <ant:arg line="-i"/>
+	    <ant:arg line="${java.home}/lib"/>
+	    <ant:arg line="-i"/>
+	    <ant:arg line="${maven.src.dir}/idl"/>
+	    <ant:arg line="-verbose"/>
+	    <ant:arg line="-pkgPrefix"/>
+	    <ant:arg line="IOP"/>
+	    <ant:arg line="${pkg.prefix}"/>
+	    <ant:arg line="-pkgPrefix"/>
+	    <ant:arg line="IIOP"/>
+	    <ant:arg line="${pkg.prefix}"/>
+	    <ant:arg line="-pkgPrefix"/>
+	    <ant:arg line="GIOP"/>
+	    <ant:arg line="${pkg.prefix}"/>
+	    <ant:arg line="-pkgPrefix"/>
+	    <ant:arg line="CosNaming"/>
+	    <ant:arg line="${pkg.prefix}"/>
+	    <ant:arg line="-pkgPrefix"/>
+	    <ant:arg line="CSI"/>
+	    <ant:arg line="${pkg.prefix}"/>
+	    <ant:arg line="-pkgPrefix"/>
+	    <ant:arg line="GSSUP"/>
+	    <ant:arg line="${pkg.prefix}"/>
+	    <ant:arg line="-pkgPrefix"/>
+	    <ant:arg line="CSIIOP"/>
+	    <ant:arg line="${pkg.prefix}"/>
+	    <ant:arg line="${maven.src.dir}/idl/CSIIOP.idl"/>
+	</ant:exec>
+</goal>
 
     <goal name="interop:idlj:costxn">
         <!-- Are there any CosTransaction IDL files that require generation? -->
@@ -204,6 +300,7 @@
         <attainGoal name="interop:idlj:iiop"/>
         <attainGoal name="interop:idlj:cosnaming"/>
         <attainGoal name="interop:idlj:interop-rmi-iiop"/>
+        <attainGoal name="interop:idlj:csi"/>
     </goal>
 
     <preGoal name="java:compile">

Added: geronimo/trunk/modules/interop/src/idl/CSI.idl
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/interop/src/idl/CSI.idl?view=auto&rev=126318
==============================================================================
--- (empty file)
+++ geronimo/trunk/modules/interop/src/idl/CSI.idl	Mon Jan 24 13:36:06 2005
@@ -0,0 +1,200 @@
+#ifndef _CSI_IDL_
+#define _CSI_IDL_
+
+#pragma prefix "omg.org"
+
+module CSI {
+
+	// The OMG VMCID; same value as CORBA::OMGVMCID. Do not change ever.
+	const unsigned long OMGVMCID = 0x4F4D0;
+
+	// An X509CertificateChain contains an ASN.1 BER encoded SEQUENCE
+	// [1..MAX] OF X.509 certificates encapsulated in a sequence of octets. The
+	// subjectís certificate shall come first in the list. Each following
+	// certificate shall directly certify the one preceding it. The ASN.1
+	// representation of Certificate is as defined in [IETF RFC 2459].
+
+	typedef sequence <octet> X509CertificateChain;
+
+	// an X.501 type name or Distinguished Name encapsulated in a sequence of
+	// octets containing the ASN.1 encoding.
+
+	typedef sequence <octet> X501DistinguishedName;
+
+	// UTF-8 Encoding of String
+
+	typedef sequence <octet> UTF8String;
+
+	// ASN.1 Encoding of an OBJECT IDENTIFIER
+
+	typedef sequence <octet> OID;
+
+	typedef sequence <OID> OIDList;
+
+	// A sequence of octets containing a GSStoken. Initial context tokens are
+	// ASN.1 encoded as defined in [IETF RFC 2743] Section 3.1,
+	// "Mechanism-Independent token Format", pp. 81-82. Initial context tokens
+	// contain an ASN.1 tag followed by a token length, a mechanism identifier,
+	// and a mechanism-specific token (i.e. a GSSUP::InitialContextToken). The
+	// encoding of all other GSS tokens (e.g. error tokens and final context
+	// tokens) is mechanism dependent.
+
+	typedef sequence <octet> GSSToken;
+
+	// An encoding of a GSS Mechanism-Independent Exported Name Object as
+	// defined in [IETF RFC 2743] Section 3.2, "GSS Mechanism-Independent
+	// Exported Name Object Format," p. 84.
+
+	typedef sequence <octet> GSS_NT_ExportedName;
+
+	typedef sequence <GSS_NT_ExportedName> GSS_NT_ExportedNameList;
+
+	// The MsgType enumeration defines the complete set of service context
+	// message types used by the CSI context management protocols, including
+	// those message types pertaining only to the stateful application of the
+	// protocols (to insure proper alignment of the identifiers between
+	// stateless and stateful implementations). Specifically, the
+	// MTMessageInContext is not sent by stateless clients (although it may
+	// be received by stateless targets).
+
+	typedef short MsgType;
+
+	const MsgType MTEstablishContext = 0;
+	const MsgType MTCompleteEstablishContext = 1;
+	const MsgType MTContextError = 4;
+	const MsgType MTMessageInContext = 5;
+
+	// The ContextId type is used carry session identifiers. A stateless
+	// application of the service context protocol is indicated by a session
+	// identifier value of 0.
+
+	typedef unsigned long long ContextId;
+
+	// The AuthorizationElementType defines the contents and encoding of
+	// the_element field of the AuthorizationElement.
+	// The high order 20-bits of each AuthorizationElementType constant
+	// shall contain the Vendor Minor Codeset ID (VMCID) of the
+	// organization that defined the element type. The low order 12 bits
+	// shall contain the organization-scoped element type identifier. The
+	// high-order 20 bits of all element types defined by the OMG shall
+	// contain the VMCID allocated to the OMG (that is, 0x4F4D0).
+
+	typedef unsigned long AuthorizationElementType;
+
+	// An AuthorizationElementType of X509AttributeCertChain indicates that
+	// the_element field of the AuthorizationElement contains an ASN.1 BER
+	// SEQUENCE composed of an (X.509) AttributeCertificate followed by a
+	// SEQUENCE OF (X.509) Certificate. The two-part SEQUENCE is encapsulated
+	// in an octet stream. The chain of identity certificates is provided
+	// to certify the attribute certificate. Each certificate in the chain
+	// shall directly certify the one preceding it. The first certificate
+	// in the chain shall certify the attribute certificate. The ASN.1
+	// representation of (X.509) Certificate is as defined in [IETF RFC 2459].
+	// The ASN.1 representation of (X.509) AtributeCertificate is as defined
+	// in [IETF ID PKIXAC].
+
+	const AuthorizationElementType X509AttributeCertChain = OMGVMCID | 1;
+
+	typedef sequence <octet> AuthorizationElementContents;
+
+	// The AuthorizationElement contains one element of an authorization token.
+	// Each element of an authorization token is logically a PAC.
+
+	struct AuthorizationElement {
+		AuthorizationElementType the_type;
+		AuthorizationElementContents the_element;
+	};
+
+	// The AuthorizationToken is made up of a sequence of
+	// AuthorizationElements
+
+	typedef sequence <AuthorizationElement> AuthorizationToken;
+
+	typedef unsigned long IdentityTokenType;
+
+	// Additional standard identity token types shall only be defined by the
+	// OMG. All IdentityTokenType constants shall be a power of 2.
+
+	const IdentityTokenType ITTAbsent = 0;
+	const IdentityTokenType ITTAnonymous = 1;
+	const IdentityTokenType ITTPrincipalName = 2;
+	const IdentityTokenType ITTX509CertChain = 4;
+	const IdentityTokenType ITTDistinguishedName = 8;
+
+	typedef sequence <octet> IdentityExtension;
+
+	union IdentityToken switch ( IdentityTokenType ) {
+		case ITTAbsent: boolean absent;
+		case ITTAnonymous: boolean anonymous;
+		case ITTPrincipalName: GSS_NT_ExportedName principal_name;
+		case ITTX509CertChain: X509CertificateChain certificate_chain;
+		case ITTDistinguishedName: X501DistinguishedName dn;
+		default: IdentityExtension id;
+	};
+
+	struct EstablishContext {
+		ContextId client_context_id;
+		AuthorizationToken authorization_token;
+		IdentityToken identity_token;
+		GSSToken client_authentication_token;
+	};
+
+	struct CompleteEstablishContext {
+		ContextId client_context_id;
+		boolean context_stateful;
+		GSSToken final_context_token;
+	};
+
+	struct ContextError {
+		ContextId client_context_id;
+		long major_status;
+		long minor_status;
+		GSSToken error_token;
+	};
+
+	// Not sent by stateless clients. If received by a stateless server, a
+	// ContextError message should be returned, indicating the session does
+	// not exist.
+
+	struct MessageInContext {
+		ContextId client_context_id;
+		boolean discard_context;
+	};
+
+	union SASContextBody switch ( MsgType ) {
+		case MTEstablishContext: EstablishContext establish_msg;
+		case MTCompleteEstablishContext: CompleteEstablishContext complete_msg;
+		case MTContextError: ContextError error_msg;
+		case MTMessageInContext: MessageInContext in_context_msg;
+	};
+
+	// The following type represents the string representation of an ASN.1
+	// OBJECT IDENTIFIER (OID). OIDs are represented by the string "oid:"
+	// followed by the integer base 10 representation of the OID separated
+	// by dots. For example, the OID corresponding to the OMG is represented
+	// as: "oid:2.23.130"
+
+	typedef string StringOID;
+
+	// The GSS Object Identifier for the KRB5 mechanism is:
+	// { iso(1) member-body(2) United States(840) mit(113554) infosys(1)
+	// gssapi(2) krb5(2) }
+
+	const StringOID KRB5MechOID = "oid:1.2.840.113554.1.2.2";
+
+	// The GSS Object Identifier for name objects of the Mechanism-independent
+	// Exported Name Object type is:
+	// { iso(1) org(3) dod(6) internet(1) security(5) nametypes(6)
+	// gss-api-exported-name(4) }
+
+	const StringOID GSS_NT_Export_Name_OID = "oid:1.3.6.1.5.6.4";
+
+	// The GSS Object Identifier for the scoped-username name form is:
+	// { iso-itu-t (2) international-organization (23) omg (130) security (1)
+	// naming (2) scoped-username(1) }
+
+	const StringOID GSS_NT_Scoped_Username_OID = "oid:2.23.130.1.2.1";
+
+}; // CSI
+
+#endif

Added: geronimo/trunk/modules/interop/src/idl/CSIIOP.idl
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/interop/src/idl/CSIIOP.idl?view=auto&rev=126318
==============================================================================
--- (empty file)
+++ geronimo/trunk/modules/interop/src/idl/CSIIOP.idl	Mon Jan 24 13:36:06 2005
@@ -0,0 +1,134 @@
+#ifndef _CSIIOP_IDL_
+#define _CSIIOP_IDL_
+#include <IOP.idl>
+#include <CSI.idl>
+
+#pragma prefix "omg.org"
+
+module CSIIOP {
+
+	const IOP::ComponentId TAG_NULL_TAG = 34;
+	const IOP::ComponentId TAG_CSI_SEC_MECH_LIST = 33;
+
+	// Association options
+
+	typedef unsigned short AssociationOptions;
+
+	const AssociationOptions NoProtection = 1;
+	const AssociationOptions Integrity = 2;
+	const AssociationOptions Confidentiality = 4;
+	const AssociationOptions DetectReplay = 8;
+	const AssociationOptions DetectMisordering = 16;
+	const AssociationOptions EstablishTrustInTarget = 32;
+	const AssociationOptions EstablishTrustInClient = 64;
+	const AssociationOptions NoDelegation = 128;
+	const AssociationOptions SimpleDelegation = 256;
+	const AssociationOptions CompositeDelegation = 512;
+	const AssociationOptions IdentityAssertion = 1024;
+	const AssociationOptions DelegationByClient = 2048;
+
+	// The high order 20-bits of each ServiceConfigurationSyntax constant
+	// shall contain the Vendor Minor Codeset ID (VMCID) of the
+	// organization that defined the syntax. The low order 12 bits shall
+	// contain the organization-scoped syntax identifier. The high-order 20
+	// bits of all syntaxes defined by the OMG shall contain the VMCID
+	// allocated to the OMG (that is, 0x4F4D0).
+
+	typedef unsigned long ServiceConfigurationSyntax;
+
+	const ServiceConfigurationSyntax SCS_GeneralNames = CSI::OMGVMCID | 0;
+	const ServiceConfigurationSyntax SCS_GSSExportedName = CSI::OMGVMCID | 1;
+
+	typedef sequence <octet> ServiceSpecificName;
+
+	// The name field of the ServiceConfiguration structure identifies a
+	// privilege authority in the format identified in the syntax field. If the
+	// syntax is SCS_GeneralNames, the name field contains an ASN.1 (BER)
+	// SEQUENCE [1..MAX] OF GeneralName, as defined by the type GeneralNames in
+	// [IETF RFC 2459]. If the syntax is SCS_GSSExportedName, the name field
+	// contains a GSS exported name encoded according to the rules in
+	// [IETF RFC 2743] Section 3.2, "Mechanism-Independent Exported Name
+	// Object Format," p. 84.
+
+	struct ServiceConfiguration {
+		ServiceConfigurationSyntax syntax;
+		ServiceSpecificName name;
+	};
+
+	typedef sequence <ServiceConfiguration> ServiceConfigurationList;
+
+	// The body of the TAG_NULL_TAG component is a sequence of octets of
+	// length 0.
+	// type used to define AS layer functionality within a compound mechanism
+	// definition
+
+	struct AS_ContextSec {
+		AssociationOptions target_supports;
+		AssociationOptions target_requires;
+		CSI::OID client_authentication_mech;
+		CSI::GSS_NT_ExportedName target_name;
+	};
+
+	// type used to define SAS layer functionality within a compound mechanism
+	// definition
+
+	struct SAS_ContextSec {
+		AssociationOptions target_supports;
+		AssociationOptions target_requires;
+		ServiceConfigurationList privilege_authorities;
+		CSI::OIDList supported_naming_mechanisms;
+		CSI::IdentityTokenType supported_identity_types;
+	};
+
+	// type used in the body of a TAG_CSI_SEC_MECH_LIST component to
+	// describe a compound mechanism
+
+	struct CompoundSecMech {
+		AssociationOptions target_requires;
+		IOP::TaggedComponent transport_mech;
+		AS_ContextSec as_context_mech;
+		SAS_ContextSec sas_context_mech;
+	};
+
+	typedef sequence <CompoundSecMech> CompoundSecMechanisms;
+
+	// type corresponding to the body of a TAG_CSI_SEC_MECH_LIST
+	// component
+
+	struct CompoundSecMechList {
+		boolean stateful;
+		CompoundSecMechanisms mechanism_list;
+	};
+
+	struct TransportAddress {
+		string host_name;
+		unsigned short port;
+	};
+
+	typedef sequence <TransportAddress> TransportAddressList;
+
+	// Tagged component for configuring SECIOP as a CSIv2 transport mechanism
+
+	const IOP::ComponentId TAG_SECIOP_SEC_TRANS = 35;
+
+	struct SECIOP_SEC_TRANS {
+		AssociationOptions target_supports;
+		AssociationOptions target_requires;
+		CSI::OID mech_oid;
+		CSI::GSS_NT_ExportedName target_name;
+		TransportAddressList addresses;
+	};
+
+	// tagged component for configuring TLS/SSL as a CSIv2 transport mechanism
+
+	const IOP::ComponentId TAG_TLS_SEC_TRANS = 36;
+
+	struct TLS_SEC_TRANS {
+		AssociationOptions target_supports;
+		AssociationOptions target_requires;
+		TransportAddressList addresses;
+	};
+
+}; //CSIIOP
+
+#endif

Added: geronimo/trunk/modules/interop/src/idl/GSSUP.idl
Url: http://svn.apache.org/viewcvs/geronimo/trunk/modules/interop/src/idl/GSSUP.idl?view=auto&rev=126318
==============================================================================
--- (empty file)
+++ geronimo/trunk/modules/interop/src/idl/GSSUP.idl	Mon Jan 24 13:36:06 2005
@@ -0,0 +1,53 @@
+#ifndef _GSSUP_IDL_
+#define _GSSUP_IDL_
+#include <CSI.idl>
+
+#pragma prefix "omg.org"
+
+module GSSUP {
+
+	// The GSS Object Identifier allocated for the
+	// username/password mechanism is defined below.
+	//
+	// { iso-itu-t (2) international-organization (23) omg (130)
+	// security (1) authentication (1) gssup-mechanism (1) }
+
+	const CSI::StringOID GSSUPMechOID = "oid:2.23.130.1.1.1";
+
+	// The following structure defines the inner contents of the
+	// username password initial context token. This structure is
+	// CDR encapsulated and appended at the end of the
+	// username/password GSS (initial context) Token.
+
+	struct InitialContextToken {
+		CSI::UTF8String username;
+		CSI::UTF8String password;
+		CSI::GSS_NT_ExportedName target_name;
+	};
+	
+	typedef unsigned long ErrorCode;
+
+	// GSSUP Mechanism-Specific Error Token
+	struct ErrorToken {
+		ErrorCode error_code;
+	};
+
+	// The context validator has chosen not to reveal the GSSUP
+	// specific cause of the failure.
+	const ErrorCode GSS_UP_S_G_UNSPECIFIED = 1;
+
+	// The user identified in the username field of the
+	// GSSUP::InitialContextToken is unknown to the target.
+	const ErrorCode GSS_UP_S_G_NOUSER = 2;
+
+	// The password supplied in the GSSUP::InitialContextToken was
+	// incorrect.
+	const ErrorCode GSS_UP_S_G_BAD_PASSWORD = 3;
+
+	// The target_name supplied in the GSSUP::InitialContextToken does
+	// not match a target_name in a mechanism definition of the target.
+	const ErrorCode GSS_UP_S_G_BAD_TARGET = 4;
+
+}; // GSSUP
+
+#endif

Mime
View raw message