/********************************************************************************************************************************/ /* Created 28-AUG-1991 15:06:31 by VAX SDL V3.2-12 Source: 7-AUG-1991 08:29:06 $PROJ4:[ACA.SRC]ACASDEF.SDL;22 */ /********************************************************************************************************************************/ /*** MODULE ACASDEF ***/ #ifndef ACASDEF #define ACASDEF 1 /* */ /* Constants */ /* */ #define ACAS_SOFTWARE_VERSION "ACAS V2.0-00" #define ACAS_USER "USER" #define ACAS_GROUP "GROUP" #define ACAS_SYSTEM "SYSTEM" #define ACAS_SCR_CONTEXT_OBJECT "ACAS_SCR_CONTEXT_OBJECT" #define ACAS_DEFAULT_TABLE "ACAS_DEFAULT_TABLE" #define ACAS_SCR_TABLE_NAME "ACAS_SCR_TABLE_NAME" #define ACAS_PREFIX "ACAS_" #define ACAS_CONTEXT_OBJECT "ACAS_CONTEXT_OBJECT" #define ACAS_SYSTEM_REPOSITORY "ACAS_SYSTEM_REPOSITORY" #define ACAS_GLOBAL_REPOSITORY "ACAS_GLOBAL_REPOSITORY" #define ACAS_MAX_STRING_LENGTH 512 #define ACAS_MAX_LOOKUPS 100 #define ACAS_MAX_NAME_LEN 255 #define ACAS_MAX_OBJECT_NAME_LEN 402 #define ACAS_UUID_LEN 36 #define ACAS_MAX_FILENAME_LEN 256 #define ACAS_MAX_ATTR_VALUE_LEN 4000 #define ACAS_CONSTANT_CODE_LEN 4 #define ACAS_SAK_SIZE 8 #define ACAS_LIST_END (ACASStringPtr) -1 #define ACAS_PARAM_LIST_END (ACASStringPtr) -2 /* */ /* Flags indicating database open options. */ /* */ #define ACAS_OPEN_DB 0 #define ACAS_CREATE_DB 1 #define ACAS_CREATE_IF_NO_DB 2 /* */ /* True and FALSE values for ACASBool */ /* */ #define ACAS_FALSE 0 #define ACAS_TRUE 1 /* */ /* Database Mode definitions. */ /* */ #define ACAS_READ 1 #define ACAS_WRITE 2 #define ACAS_READ_OR_WRITE 3 /* */ /* Flags indicating database attribute, method, message operations. */ /* */ #define ACAS_NO_OP 0 #define ACAS_ADD 1 #define ACAS_UPDATE 2 #define ACAS_ADD_VALUE 4 #define ACAS_DELETE 8 #define ACAS_DELETE_VALUE 16 #define ACAS_REPLACE 32 #define ACAS_CREATE 64 #define ACAS_IGNORE 128 #define ACAS_CASE_BLIND 256 /* */ /* Flags indicating the amount of information to retrieve in a database */ /* 'get' operation */ /* */ #define ACAS_ALL_FEATURES 0 #define ACAS_LOCAL_FEATURES 1 #define ACAS_INHERITED_FEATURES 2 #define ACAS_ATTRIBUTES 4 #define ACAS_ARGUMENTS 8 #define ACAS_METHODS 16 /* */ /* Flags indicating database close options. */ /* */ #define ACAS_CLOSE_DB 0 #define ACAS_ROLLBACK_DB 1 #define ACAS_DELETE_DB 2 /* */ /* Flags indicating context object close options. */ /* */ #define ACAS_CLOSE_CTX 0 #define ACAS_ROLLBACK_CTX 1 /* */ /* Flags indicating context object operations. */ /* */ #define ACAS_NO_FAILOVER 1 #define ACAS_NO_EXPAND_VARS 2 /* */ /* Flags indicating list operations */ /* */ #define ACAS_COPY_DATA 1 #define ACAS_MEMBER_LIST 2 #define ACAS_OVERWRITE 4 #define ACAS_INSERT 8 #define ACAS_INSERT_SORTED 16 #define ACAS_NO_DUPLICATES 32 #define ACAS_NO_DUPL_VALUES 64 #define ACAS_MEMBER_HANDLE 128 #define ACAS_INDIRECT 256 #define ACAS_NULL_VALUE 512 /* */ /* Argument Direction Flags */ /* */ #define ACAS_IN 1 #define ACAS_OUT 2 #define ACAS_IN_OUT 4 #define ACAS_DYNAMIC 8 #define ACAS_OPTIONAL 16 #define ACAS_BYVAL 32 /* */ /* Free Instance Handle Flags */ /* */ #define ACAS_KEEP_SESSIONS 1 #define ACAS_END_SESSIONS_ONLY 2 /* */ /* Free Instance Handle Flags */ /* */ #define ACAS_SERVER_SIDE 1 #define ACAS_CLIENT_SIDE 2 /* */ /* Flags for format ACAS errors. */ /* */ #define ACAS_NO_ERR_PREFIX 1 #define ACAS_FORMAT_80 2 #define ACAS_FORMAT_132 4 /* */ /* Flags for RegisterServer */ /* */ #define ACAS_BUILTIN 1 #define ACAS_NO_AUTHORIZE 2 #define ACAS_PROXY_AUTHORIZE 4 #define ACAS_REGISTER_LOCAL 8 #define ACAS_AS_CTRL 16 #define ACAS_REGISTER_GLOBAL 32 /* This registration flag is for internal use only. */ #define ACAS_REGISTER_DEDICATED 64 /* */ /* Flags for transport unregistration (private) */ /* */ #define ACAS_FROM_REGISTRY 1 /* */ /* Dispatcher Flags */ /* */ #define ACAS_DISPATCH_ONE 0 #define ACAS_DISPATCH_MAYBE_ONE 1 #define ACAS_DISPATCH_ALL 2 /* */ /* */ /* Invocation Flags */ /* */ #define ACAS_INVOKE_SYNCH 0 #define ACAS_INVOKE_ASYNCH 1 #define ACAS_CREATE_LONG_LIVED_APPL_HND 2 #define ACAS_NO_NEW_SRV 4 #define ACAS_USE_LONG_LIVED_APPL_HND 8 /* The following two invocation flags are for internal use only. */ #define ACAS_CB_DEDICATED 16 #define ACAS_USE_INT_OVERRIDE 32 /* */ /* The following three are for internal use only. */ /* */ #define ACAS_END_SESSION 32 #define ACAS_NOEXIT_LOOP 64 #define ACAS_NO_SESSION 128 /* */ /* */ /* Method Server List Element Flags */ /* for internal use only. */ /* */ #define ACAS_SEND_END_SESSION 1 #define ACAS_MS_DEDICATED 2 /* */ /* */ /* Process Management Task Flags */ /* */ #define ACAS_TERMINATE_SERVER 1 /* */ /* General Data types */ /* */ /* If the language is C then we want to use 'int' for ACASInt, otherwise */ /* ACASInt will be a longword. */ /* */ typedef int ACASInt; typedef unsigned int ACASUInt; #if (0) typedef long int ACASInt; /* Integer */ typedef unsigned long int ACASUInt; /* Unsigned Integer */ #endif typedef long int ACASLong; /* Longword */ typedef unsigned long int ACASULong; /* Unsigned long int */ typedef unsigned short int ACASUShort; /* Unsigned short int */ typedef short int ACASShort; /* Short int */ typedef unsigned char ACASByte; /* Byte */ typedef float ACASFloat; /* Float */ #ifdef VMS typedef double float ACASDouble; /* Double */ #else typedef double ACASDouble; #endif typedef char ACASChar; typedef char *ACASCharPtr; typedef char ACASBool; typedef char ACASString [512]; typedef char *ACASStringPtr; typedef int *ACASVoidPtr; typedef unsigned long int ACASStatus; typedef ACASStatus (*ACASProcedure)(); typedef unsigned short int ACASVersion; typedef unsigned long int ACASFlags; typedef char ACASUuid [37]; typedef ACASChar *ACASInstanceHandle; typedef ACASInstanceHandle *ACASInstanceHandlePtr; typedef ACASString ACASMessageName; typedef ACASStringPtr ACASContextHandle; typedef char ACASFileName [256]; typedef ACASStringPtr ACASDbHandle; /* */ /* General list element structure */ /* */ typedef struct _ACASListElement { ACASStringPtr Name; /* Name of the item on the list */ ACASUShort Position; /* Position within list */ ACASUShort Reserved0; ACASULong Flags; /* Flags */ ACASULong Reserved1; ACASULong Reserved2; ACASULong Reserved3; ACASULong Reserved4; ACASULong Reserved5; ACASULong Reserved6; ACASULong Reserved7; ACASULong Reserved8; ACASULong Reserved9; } ACASListElement; /* */ /* General list element pointer datatype types */ /* */ typedef ACASListElement *ACASListElementPtr; typedef ACASListElement *ACASList; /*=================================================================================== */ /* The following structures are used in conjunction with the class database */ /*=================================================================================== */ /* */ /* Attribute list element structure */ /* */ typedef struct _ACASAttribute { ACASStringPtr Name; /* Name of the item on the list */ ACASUShort Position; /* Position within list */ ACASUShort ValPosition; /* Value position for multi-value attribute */ ACASFlags Flags; /* Flags */ ACASStringPtr Type; /* Datatype of the item */ ACASStringPtr Value; /* Value of the item */ ACASULong Length; /* Length of the item in bytes */ ACASUShort ValCount; /* Count of values for multi-value attribute */ ACASByte ReservedTS [10]; /* Private ACAS field */ ACASULong Reserved0; ACASULong Reserved1; ACASULong Reserved2; } ACASAttribute; /* */ /* Attribute list element pointer datatype types */ /* */ typedef ACASAttribute *ACASAttributePtr; typedef ACASAttribute *ACASAttributeList; /* */ /* Method list element structure */ /* */ typedef struct _ACASMethod { ACASStringPtr Name; /* Name of the item on the list */ ACASUShort Position; /* Position within list */ ACASUShort Reserved0; ACASFlags Flags; /* Flags */ ACASStringPtr Id; /* Value of the item */ ACASULong Reserved1; ACASULong Reserved2; ACASULong Reserved3; ACASULong Reserved4; ACASULong Reserved5; ACASULong Reserved6; ACASULong Reserved8; ACASULong Reserved9; } ACASMethod; /* */ /* Method list element pointer datatype types */ /* */ typedef ACASMethod *ACASMethodPtr; typedef ACASMethod *ACASMethodList; /* */ /* Formal arg list element structure */ /* */ typedef struct _ACASFormalArg { ACASStringPtr Name; /* Name of the item on the list */ ACASUShort Position; /* Position within list */ ACASUShort Reserved0; ACASFlags Flags; /* Flags */ ACASStringPtr Type; /* Datatype of the item */ ACASULong Reserved1; ACASULong Reserved2; ACASULong Reserved3; ACASULong Reserved4; ACASULong Reserved5; ACASULong Reserved6; ACASULong Reserved8; ACASULong Reserved9; } ACASFormalArg; /* */ /* Formal arg element pointer datatype types */ /* */ typedef ACASFormalArg *ACASFormalArgPtr; typedef ACASFormalArg *ACASFormalArgList; /* */ /* Message List element structure */ /* */ typedef struct _ACASMessage { ACASStringPtr Name; /* Name of the item on the list */ ACASUShort Position; /* Position within list */ ACASUShort ArgCount; /* Number of formal arguments in list */ ACASFlags Flags; /* Flags */ ACASFormalArgList Arguments; /* List of formal arguments */ ACASMethodList Methods; /* List of methods */ ACASAttributeList Attributes; /* List of attributes */ ACASFlags ListFlag; /* Flag associated with the lists */ ACASUShort AttrCount; /* Number of Message attributes in list */ ACASUShort MethodCount; /* Number of methods in list */ ACASULong Reserved0; ACASULong Reserved1; ACASULong Reserved2; ACASULong Reserved3; } ACASMessage; /* */ /* Message element pointer datatype types */ /* */ typedef ACASMessage *ACASMessagePtr; typedef ACASMessage *ACASMessageList; /* */ /* Class list element structure */ /* */ typedef struct _ACASClass { ACASStringPtr Name; /* Name of the item on the list */ ACASUShort Position; /* Position within list */ ACASUShort Reserved0; ACASFlags Flags; /* Flags */ ACASStringPtr Id; /* Value of the item */ ACASULong UserData; /* User data longword */ ACASULong Reserved2; ACASULong Reserved3; ACASULong Reserved4; ACASULong Reserved5; ACASULong Reserved6; ACASULong Reserved8; ACASULong Reserved9; } ACASClass; /* */ /* Class element pointer datatype types */ /* */ typedef ACASClass *ACASClassPtr; typedef ACASClass *ACASClassList; /*=================================================================================== */ /* The following structures are used in conjunction with the invoker */ /*=================================================================================== */ /* */ /* Actual arg list element structure */ /* */ typedef struct _ACASArg { ACASStringPtr Name; /* Name of the item on the list */ ACASUShort Position; /* Position */ ACASUShort Reserved0; ACASFlags Flags; /* Flags */ ACASStringPtr Type; /* Datatype of the item */ ACASStringPtr Value; /* Value of the item */ ACASULong Length; /* Length of the item in bytes */ ACASFlags ValueFlag; /* Flag associated with the value */ ACASULong Reserved1; ACASULong Reserved2; ACASULong Reserved3; ACASULong Reserved4; ACASULong Reserved5; } ACASArg; /* */ /* Actual arg list element pointer datatype types */ /* */ typedef ACASArg *ACASArgPtr; typedef ACASArg *ACASArgList; /* */ /* Item list element structure */ /* */ typedef struct _ACASItem { ACASStringPtr Name; /* Name of the item on the list */ ACASUShort Position; /* Position */ ACASUShort Reserved0; ACASFlags Flags; /* Flags */ ACASStringPtr Type; /* Datatype of the item */ ACASStringPtr Value; /* Value of the item */ ACASULong Length; /* Length of the item in bytes */ ACASFlags ValueFlag; /* Flag associated with the value */ ACASULong Reserved1; ACASULong Reserved2; ACASULong Reserved3; ACASULong Reserved4; ACASULong Reserved5; } ACASItem; /* */ /* Item list element pointer datatype types */ /* */ typedef ACASItem *ACASItemPtr; typedef ACASItem *ACASItemList; /* */ /* Method Server list element structure */ /* */ typedef struct _ACASMethodServer { ACASStringPtr ServerClassId; /* UUID of the server's class */ ACASUShort Position; /* Position within list */ ACASUShort Reserved0; ACASFlags Flags; /* Flags */ ACASStringPtr ServerInstanceId; /* UUID of the running server */ ACASULong SessionId; /* ACAS session id */ ACASStringPtr HostName; /* Name of server host */ ACASStringPtr TransAddr; /* The transport data */ ACASULong TransAddrLen; /* Length of TransAddr */ ACASStringPtr Sak; /* Security authentication key */ ACASULong SakLen; /* Length of Sak */ ACASStringPtr TransHandle; /* Transport client handle */ ACASStringPtr Annotation; /* Annotation */ } ACASMethodServer; /* */ /* Method Server element pointer datatype types */ /* */ typedef ACASMethodServer *ACASMethodServerPtr; typedef ACASMethodServer *ACASMethodServerList; /* */ /* Binding list element structure */ /* */ typedef struct _ACASBinding { ACASAttributeList ScopeClass; /* list of scoping classes */ ACASUShort Position; /* Position within list */ ACASUShort ScopeClassCount; /* count of scoping classes */ ACASFlags Flags; /* Flags */ ACASStringPtr ApplicationClass; /* class name of running application */ ACASMethodServerList MethodServers; /* list of method servers */ ACASUShort MethodServerCount; /* method server count */ ACASUShort Reserved0; ACASFlags ListFlag; /* embedded list flag */ ACASULong Reserved2; ACASULong Reserved3; ACASULong Reserved4; ACASULong Reserved5; ACASULong Reserved6; } ACASBinding; /* */ /* Binding element pointer datatype types */ /* */ typedef ACASBinding *ACASBindingPtr; typedef ACASBinding *ACASBindingList; /*=================================================================================== */ /* The Error structure. */ /*=================================================================================== */ /* */ /* Error list element structure */ /* */ union ACASStatusUnion { ACASStatus LoBitStatus; ACASStringPtr TextStatus; ACASULong IntegerStatus; } ; typedef struct _ACASError { ACASStringPtr FacilityName; /* Name of the facility for the error */ ACASUShort Position; /* Position within list */ ACASUShort ParameterCount; /* Count of parameters */ ACASFlags Flags; /* Flags */ ACASStringPtr FormattedMessage; /* Formatted Message */ ACASArgList Parameters; /* Error Parameters */ ACASFlags ParamFlag; /* Flag associated with params */ union ACASStatusUnion StatusValue; /* The Status - based on type. */ ACASStringPtr Language; /* Language String */ ACASUShort Count; /* Count of remaining errors */ ACASUShort StatusType; /* Style of status. */ ACASUShort Severity; /* Severity */ ACASUShort Reserved0; ACASULong Reserved1; ACASULong Reserved2; } ACASError; /* */ /* Error element pointer datatype types */ /* */ typedef ACASError *ACASErrorPtr; typedef ACASError *ACASErrorList; /* */ /* The severity codes for an error. */ /* */ #define ACAS_WARNING_SEVERITY 0 #define ACAS_SUCCESS_SEVERITY 1 #define ACAS_ERROR_SEVERITY 2 #define ACAS_INFO_SEVERITY 3 #define ACAS_FATAL_SEVERITY 4 /* */ /* Types of statuses. */ /* */ #define ACAS_NOSTATUS_STYLE 0 #define ACAS_LOBIT_STYLE 1 #define ACAS_TEXT_STYLE 2 #define ACAS_INTEGER_STYLE 3 /* */ /* Invocation Context Structure which is passed to all method invocations. */ /* */ typedef struct _ACASInvocationContext { ACASInstanceHandle ApplicationHandle; ACASInstanceHandle InstanceHandle; ACASContextHandle ContextHandle; ACASULong SessionID; ACASStringPtr MethodServerID; ACASStringPtr LocalUser; ACASStringPtr RemoteUser; ACASStringPtr RemoteHost; } ACASInvocationContext; /* */ /*============================================================================== */ /* The following definitions are used for specifying and identifying */ /* builtin attributes, attribute values, and datatypes. */ /*============================================================================== */ /* */ /* */ /* Codes for Unknown built-ins. A Value of 0 is reserved for this */ /* code. The string and integer codes must represent the same value. */ /* */ #define ACAS_UNKNOWN_CODE 85 #define ACAS_UNKNOWN "_U00" /* Ids. */ #define ACAS_UNKNOWN_ID 0 /* */ /* Datatype Definitions as string and integer constants. These constants */ /* must be synchronized. The string constants must be hexadecimal. */ /* */ /* The range of 1 to 255 (decimal) is reserved for datatypes. */ /* */ #define ACAS_DATATYPE_CODE 68 #define ACAS_BOOL "_D00" #define ACAS_BYTE "_D01" #define ACAS_CHAR "_D02" #define ACAS_DOUBLE "_D03" #define ACAS_FLOAT "_D04" #define ACAS_INTEGER "_D05" #define ACAS_LONGINT "_D06" #define ACAS_SHORTINT "_D07" #define ACAS_STRING "_D08" #define ACAS_UINTEGER "_D09" #define ACAS_ULONGINT "_D0A" #define ACAS_USHORTINT "_D0B" #define ACAS_ITEMLIST "_D0C" #define ACAS_OCTETSTRING "_D0D" #define ACAS_STATUS "_D0E" #define ACAS_UUID "_D0F" #define ACAS_TRANSPORT_LIST "_D10" #define ACAS_ARGLIST "_D11" #define ACAS_PROCEDURE "_D12" #define ACAS_INSTANCEHANDLE "_D13" #define ACAS_TRANSARG_LIST "_D14" /* Ids. */ #define ACAS_MIN_DATATYPE_ID 1 #define ACAS_BOOL_ID 1 #define ACAS_BYTE_ID 2 #define ACAS_CHAR_ID 3 #define ACAS_DOUBLE_ID 4 #define ACAS_FLOAT_ID 5 #define ACAS_INTEGER_ID 6 #define ACAS_LONGINT_ID 7 #define ACAS_SHORTINT_ID 8 #define ACAS_STRING_ID 9 #define ACAS_UINTEGER_ID 10 #define ACAS_ULONGINT_ID 11 #define ACAS_USHORTINT_ID 12 #define ACAS_ITEMLIST_ID 13 #define ACAS_OCTETSTRING_ID 14 #define ACAS_STATUS_ID 15 #define ACAS_UUID_ID 16 #define ACAS_TRANSPORT_LIST_ID 17 #define ACAS_ARGLIST_ID 18 #define ACAS_PROCEDURE_ID 19 #define ACAS_INSTANCEHANDLE_ID 20 #define ACAS_TRANSARG_LIST_ID 21 #define ACAS_DATATYPE_ID_CNT 22 #define ACAS_MAX_DATATYPE_ID 21 /* */ /* Attribute Definitions as string and integer constants. These constants */ /* must be synchronized. The string constants must be hexadecimal. */ /* */ /* The range of 256 TO 767 (decimal) is reserved for attribute name definitions. */ /* */ #define ACAS_ATTRIBUTE_CODE 65 #define ACAS_PLATFORM_TYPE "_A00" #define ACAS_SERVER_STARTUP_TYPE "_A01" #define ACAS_METHOD_SERVER_UUID "_A02" #define ACAS_APPLICATION_NAME "_A03" #define ACAS_METHOD_SRV_ATTRS "_A04" #define ACAS_INTERACTION_TYPE "_A05" #define ACAS_SCRIPT_SERVER_CLASS "_A06" #define ACAS_STARTUP_SHELL_COMMAND "_A07" #define ACAS_RESERVED5 "_A08" #define ACAS_INTRODUCER_CHAR "_A09" #define ACAS_METHOD_RTNNAME "_A0A" #define ACAS_SEL_CONTEXT_TABLES "_A0B" #define ACAS_METHOD_SEL_ATTRS "_A0C" #define ACAS_SEL_CONTEXT_SCOPE "_A0D" #define ACAS_DISPATCHER_RTNNAME "_A0E" #define ACAS_SERVER_SEL_ATTRS "_A0F" #define ACAS_SCRIPT_ENV_TYPE "_A10" #define ACAS_RESERVED6 "_A11" #define ACAS_REPOSITORY_LIST "_A12" #define ACAS_MAX_NUM_SESSIONS "_A13" #define ACAS_EVENT_DISPATCHER "_A14" #define ACAS_EVENT_NOTIFICATION "_A15" #define ACAS_SCOPE_CLASSES "_A16" #define ACAS_METHOD_ACCESS_TYPE "_A17" #define ACAS_DYNLIB_NAME "_A18" #define ACAS_METHOD_SHELL_COMMAND "_A19" #define ACAS_CALLBACK_ID "_A1A" #define ACAS_CALLBACK_RTN "_A1B" #define ACAS_TERMINATE_RTN "_A1C" #define ACAS_SHELL_COMMAND_TYPE "_A1D" #define ACAS_COMMAND_NAME "_A1E" #define ACAS_REPOSITORY_CACHE_SIZE "_A1F" #define ACAS_METHOD_SERVER_NAME "_A20" #define ACAS_AUTHENTICATION "_A21" #define ACAS_GLOBAL_LB "_A22" #define ACAS_STARTUP_ENVIRONMENT "_A23" #define ACAS_SERVER_REGISTRY "_A24" #define ACAS_END_SESSION_RTN "_A25" #define ACAS_MAX_SERVERS "_A26" /* Ids. */ #define ACAS_MIN_ATTRIBUTE_ID 256 #define ACAS_PLATFORM_TYPE_ID 256 #define ACAS_SERVER_STARTUP_TYPE_ID 257 #define ACAS_METHOD_SERVER_UUID_ID 258 #define ACAS_APPLICATION_NAME_ID 259 #define ACAS_METHOD_SRV_ATTRS_ID 260 #define ACAS_INTERACTION_TYPE_ID 261 #define ACAS_SCRIPT_SERVER_CLASS_ID 262 #define ACAS_STARTUP_SHELL_COMMAND_ID 263 #define ACAS_RESERVED5_ID 264 #define ACAS_INTRODUCER_CHAR_ID 265 #define ACAS_METHOD_RTNNAME_ID 266 #define ACAS_SEL_CONTEXT_TABLES_ID 267 #define ACAS_METHOD_SEL_ATTRS_ID 268 #define ACAS_SEL_CONTEXT_SCOPE_ID 269 #define ACAS_DISPATCHER_RTNNAME_ID 270 #define ACAS_SERVER_SEL_ATTRS_ID 271 #define ACAS_SCRIPT_ENV_TYPE_ID 272 #define ACAS_RESERVED6_ID 273 #define ACAS_REPOSITORY_LIST_ID 274 #define ACAS_MAX_NUM_SESSIONS_ID 275 #define ACAS_EVENT_DISPATCHER_ID 276 #define ACAS_EVENT_NOTIFICATION_ID 277 #define ACAS_SCOPE_CLASSES_ID 278 #define ACAS_METHOD_ACCESS_TYPE_ID 279 #define ACAS_DYNLIB_NAME_ID 280 #define ACAS_METHOD_SHELL_COMMAND_ID 281 #define ACAS_CALLBACK_ID_ID 282 #define ACAS_CALLBACK_RTN_ID 283 #define ACAS_TERMINATE_RTN_ID 284 #define ACAS_SHELL_COMMAND_TYPE_ID 285 #define ACAS_COMMAND_NAME_ID 286 #define ACAS_REPOSITORY_CACHE_SIZE_ID 287 #define ACAS_METHOD_SERVER_NAME_ID 288 #define ACAS_AUTHENTICATION_ID 289 #define ACAS_GLOBAL_LB_ID 290 #define ACAS_STARTUP_ENVIRONMENT_ID 291 #define ACAS_SERVER_REGISTRY_ID 292 #define ACAS_END_SESSION_RTN_ID 293 #define ACAS_MAX_SERVERS_ID 294 #define ACAS_ATTRIBUTE_ID_CNT 295 #define ACAS_MAX_ATTRIBUTE_ID 294 /* */ /* The Range of 768 to 1535 is open for future use. */ /* ----------------------------------------------- */ /* */ /* */ /* Server startup type attribute value definitions as string and integer */ /* constants. These constants must be synchronized. The string constants */ /* must be hexadecimal. */ /* */ /* The range of 1536 to 1791 (decimal) is reserved for server startup types. */ /* */ #define ACAS_SERVER_START_CODE 83 #define ACAS_NAMED_APPLICATION "_S00" #define ACAS_RESERVED "_S01" #define ACAS_START_SHELL "_S02" /* Ids. */ #define ACAS_MIN_SERVER_START_ID 1536 #define ACAS_NAMED_APPLICATION_ID 1536 #define ACAS_RESERVED_ID 1537 #define ACAS_START_SHELL_ID 1538 #define ACAS_SERVER_START_ID_CNT 1539 #define ACAS_MAX_SERVER_START_ID 1538 /* */ /* Interaction type attribute value definitions as string and integer */ /* constants. These constants must be synchronized. The string constants */ /* must be hexadecimal. */ /* */ /* The range of 1792 to 2047 (decimal) is reserved for interaction types. */ /* */ #define ACAS_INTERACTION_CODE 73 #define ACAS_SYS_BUILTIN "_I00" #define ACAS_INT_BUILTIN "_I01" #define ACAS_INT_TRANSPORT "_I02" #define ACAS_INT_SHELL "_I03" #define ACAS_INT_STARTUP_ONLY "_I04" /* Ids. */ #define ACAS_MIN_INTERACTION_ID 1792 #define ACAS_SYS_BUILTIN_ID 1792 #define ACAS_INT_BUILTIN_ID 1793 #define ACAS_INT_TRANSPORT_ID 1794 #define ACAS_INT_SHELL_ID 1795 #define ACAS_INT_STARTUP_ONLY_ID 1796 #define ACAS_INTERACTION_ID_CNT 1797 #define ACAS_MAX_INTERACTION_ID 1796 /* */ /* Object type definitions as string and integer constants. */ /* These constants must be synchronized. The string constants */ /* must be hexadecimal. */ /* */ /* The range of 2048 to 2303 (decimal) is reserved for object types. */ /* */ #define ACAS_OBJECT_TYPE_CODE 79 #define ACAS_CLASS_TYPE "_O00" #define ACAS_METHOD_TYPE "_O01" #define ACAS_METHOD_SERVER_TYPE "_O02" #define ACAS_STORAGE_CLASS_TYPE "_O03" #define ACAS_MIN_OBJECT_TYPE_ID 2048 #define ACAS_CLASS_TYPE_ID 2048 #define ACAS_METHOD_TYPE_ID 2049 #define ACAS_METHOD_SERVER_TYPE_ID 2050 #define ACAS_STORAGE_CLASS_TYPE_ID 2051 #define ACAS_OBJECT_TYPE_ID_CNT 2052 #define ACAS_MAX_OBJECT_TYPE_ID 2051 /* */ /* Context object attribute value definitions. */ /* The range of 2304 to 2559 (decimal). The string constants must */ /* be in hexadecimal. */ /* */ #define ACAS_CONTEXT_CODE 67 #define ACAS_ENVIRONMENT_VARIABLE "_C00" #define ACAS_MIN_CONTEXT_ID 2304 #define ACAS_ENVIRONMENT_VARIABLE_ID 2304 #define ACAS_CONTEXT_ID_CNT 2305 #define ACAS_MAX_CONTEXT_ID 2304 /* */ /* The range of 2560 to 2561 (decimal) is reserved for future use. */ /* */ /* */ /* Server Policy value definitions as string and integer constants. */ /* These constants must be synchronized. The string constants */ /* must be hexadecimal. */ /* */ /* The range of 2562 to 2817 (decimal) is reserved for communication types. */ /* */ #define ACAS_SERVER_SEL_ATTRS_CODE 82 #define ACAS_LOCAL "_R00" #define ACAS_ANY "_R01" #define ACAS_USE_SERVER_REGISTRY "_R02" #define ACAS_COLOCATE "_R03" #define ACAS_DEFAULT_NODES "_R04" #define ACAS_MIN_SERVER_SEL_ATTRS_ID 2562 #define ACAS_LOCAL_ID 2562 #define ACAS_ANY_ID 2563 #define ACAS_USE_SERVER_REGISTRY_ID 2564 #define ACAS_COLOCATE_ID 2565 #define ACAS_DEFAULT_NODES_ID 2566 #define ACAS_SERVER_SEL_ATTRS_ID_CNT 2567 #define ACAS_MAX_SERVER_SEL_ATTRS_ID 2566 /* */ /* Script invocation style value definitions as string and integer constants. */ /* These constants must be synchronized. The string constants */ /* must be hexadecimal. */ /* */ /* The range of 2818 to 3073 (decimal) is reserved for communication types. */ /* */ #define ACAS_SCRIPT_ENV_TYPE_CODE 69 #define ACAS_RESERVED4 "_E00" #define ACAS_ENV_VARIABLES "_E01" #define ACAS_CONV_COMMANDS "_E02" #define ACAS_MIN_SCRIPT_ENV_TYPE_ID 2818 #define ACAS_RESERVED4_ID 2818 #define ACAS_ENV_VARIABLES_ID 2819 #define ACAS_CONV_COMMANDS_ID 2820 #define ACAS_SCRIPT_ENV_TYPE_ID_CNT 2821 #define ACAS_MAX_SCRIPT_ENV_TYPE_ID 2820 /* */ /* Private Database Attribute Definitions as string and integer constants. */ /* These constants must be synchronized. The string constants must be */ /* hexadecimal. */ /* */ /* The range of 3074 TO 3174 (decimal) is reserved for private database */ /* attribute name definitions. */ /* */ #define ACAS_DB_ATTRIBUTE_CODE 90 #define ACAS_DB_ANCESTOR "_Z00" #define ACAS_DB_ARGUMENT "_Z01" #define ACAS_DB_DESCRIPTION "_Z02" #define ACAS_DB_UUID "_Z03" #define ACAS_DB_INHERITED "_Z04" #define ACAS_DB_LOCAL_SCOPE "_Z05" #define ACAS_DB_OVERRIDE "_Z06" #define ACAS_DB_SUB_CLASS "_Z07" #define ACAS_DB_SUPER_CLASS "_Z08" #define ACAS_DB_TYPE "_Z09" #define ACAS_DB_USED_BY "_Z0A" #define ACAS_DB_VERSION "_Z0B" #define ACAS_MIN_DB_ATTRIBUTE_ID 3074 #define ACAS_DB_ANCESTOR_ID 3074 #define ACAS_DB_ARGUMENT_ID 3075 #define ACAS_DB_DESCRIPTION_ID 3076 #define ACAS_DB_UUID_ID 3077 #define ACAS_DB_INHERITED_ID 3078 #define ACAS_DB_LOCAL_SCOPE_ID 3079 #define ACAS_DB_OVERRIDE_ID 3080 #define ACAS_DB_SUB_CLASS_ID 3081 #define ACAS_DB_SUPER_CLASS_ID 3082 #define ACAS_DB_TYPE_ID 3083 #define ACAS_DB_USED_BY_ID 3084 #define ACAS_DB_VERSION_ID 3085 #define ACAS_DB_ATTRIBUTE_ID_CNT 3086 #define ACAS_MAX_DB_ATTRIBUTE_ID 3085 /* */ /* Call Mechanism attribute value definitions - string and id. */ /* These constants must be synchronized. The string constants must be */ /* hexadecimal. */ /* */ /* The range of 3175 TO 3224 (decimal) is reserved for call mechaniam */ /* attribute name definitions. */ /* */ #define ACAS_METHOD_ACCESS_TYPE_CODE 77 #define ACAS_STATIC "_M00" #define ACAS_DYNAMIC_LOAD "_M01" #define ACAS_MIN_METHOD_ACCESS_TYPE_ID 3175 #define ACAS_STATIC_ID 3175 #define ACAS_DYNAMIC_LOAD_ID 3176 #define ACAS_METHOD_ACCESS_TYPE_ID_CNT 3177 #define ACAS_MAX_METHOD_ACCESS_TYPE_ID 3176 /* */ /* Shell command type value definitions as string and integer constants. */ /* These constants must be synchronized. The string constants */ /* must be hexadecimal. */ /* */ /* The range of 3225 to 3274 (decimal) is reserved for shell command types. */ /* */ #define ACAS_SHELL_COMMAND_TYPE_CODE 72 #define ACAS_NAMED_COMMAND "_H00" #define ACAS_COMMAND "_H01" #define ACAS_MIN_SHELL_COMMAND_TYPE_ID 3225 #define ACAS_NAMED_COMMAND_ID 3225 #define ACAS_COMMAND_ID 3226 #define ACAS_SHELL_COMMAND_TYPE_ID_CNT 3227 #define ACAS_MAX_SHELL_COMMAND_TYPE_ID 3226 /* */ /* */ /* List Type constants defined as integer constants */ /* */ /* */ #define ACAS_MIN_LIST_TYPE 1 #define ACAS_ARG_LIST 1 #define ACAS_ATTRIBUTE_LIST 2 #define ACAS_CLASS_LIST 3 #define ACAS_ERROR_LIST 4 #define ACAS_FORMAL_ARG_LIST 5 #define ACAS_MESSAGE_LIST 6 #define ACAS_METHOD_LIST 7 #define ACAS_METHOD_SERVER_LIST 8 #define ACAS_ITEM_LIST 9 #define ACAS_BINDING_LIST 10 #define ACAS_LIST_TYPE_CNT 11 #define ACAS_LIST_TYPE_COUNT 10 /* */ /* Hash entry definition used by ACAS__MethodHash for generated dispatcher. */ /* */ typedef struct _ACASHashEntry { ACASShort StartId; /* Starting Id for bucket */ ACASUShort BucketIndex; /* Index into bucket table. */ } ACASHashEntry; #endif