//+------------------------------------------------------------------------- // // Microsoft Windows // // Copyright (C) Microsoft Corporation, 1997 - 1999 // // File: nsicom.idl // //-------------------------------------------------------------------------- /* -------------------------------------------------------------------- Microsoft OS/2 LAN Manager Copyright(c) Microsoft Corp., 1990 RPC locator - Written by Steven Zeck - Modified by Satish Thatte (10/1/95) This file is just a wrapper for MIDL to get a reference to types used in the interface. -------------------------------------------------------------------- */ [ uuid (00000000-0000-0000-0000-000000000000), pointer_default (unique) ] interface NSiTypes { cpp_quote("#ifndef GUID_DEFINED") cpp_quote("#define GUID_DEFINED") typedef struct _GUID { unsigned long Data1; unsigned short Data2; unsigned short Data3; unsigned char Data4[8]; } GUID; cpp_quote("#endif /* GUID_DEFINED */") cpp_quote("#ifndef UUID_DEFINED") cpp_quote("#define UUID_DEFINED") typedef GUID UUID; cpp_quote("#endif") cpp_quote("#ifndef __RPCDCEP_H__") typedef struct _RPC_VERSION { unsigned short MajorVersion; unsigned short MinorVersion; } RPC_VERSION; typedef struct _RPC_SYNTAX_IDENTIFIER { GUID SyntaxGUID; RPC_VERSION SyntaxVersion; } RPC_SYNTAX_IDENTIFIER, * PRPC_SYNTAX_IDENTIFIER; cpp_quote("#endif") /* * Misc commonly used standard types. */ #pragma midl_echo("#pragma warning(disable:4200)") typedef unsigned long UNSIGNED32; typedef unsigned short UNSIGNED16; typedef unsigned char UNSIGNED8; typedef [string, unique] wchar_t *STRING_T; typedef [string] wchar_t *NSI_STRING_BINDING_T; typedef [context_handle] void * NSI_NS_HANDLE_T; typedef GUID NSI_UUID_T; typedef [unique] NSI_UUID_T *NSI_UUID_P_T; typedef struct _NSI_BINDING_T { NSI_STRING_BINDING_T string; UNSIGNED32 entry_name_syntax; STRING_T entry_name; } NSI_BINDING_T; typedef struct _NSI_BINDING_VECTOR_T { UNSIGNED32 count; [size_is(count)] NSI_BINDING_T binding[*]; } NSI_BINDING_VECTOR_T; typedef [unique] NSI_BINDING_VECTOR_T *NSI_BINDING_VECTOR_P_T; typedef struct _NSI_SERVER_BINDING_VECTOR_T { UNSIGNED32 count; [size_is(count)] NSI_STRING_BINDING_T string[*]; } NSI_SERVER_BINDING_VECTOR_T; typedef [unique] NSI_SERVER_BINDING_VECTOR_T *NSI_SERVER_BINDING_VECTOR_P_T; typedef struct _NSI_UUID_VECTOR_T { UNSIGNED32 count; [size_is(count)] NSI_UUID_P_T uuid[*]; } NSI_UUID_VECTOR_T; typedef [unique] NSI_UUID_VECTOR_T *NSI_UUID_VECTOR_P_T; typedef RPC_SYNTAX_IDENTIFIER NSI_SYNTAX_ID_T; typedef [unique] NSI_SYNTAX_ID_T *NSI_IF_ID_P_T; typedef struct _NSI_INTERFACE_ID_T { NSI_SYNTAX_ID_T Interface; NSI_SYNTAX_ID_T TransferSyntax; } NSI_INTERFACE_ID_T; typedef [unique] NSI_INTERFACE_ID_T *NSI_INTERFACE_ID_P_T; typedef struct _NSI_IF_VECTOR_T { UNSIGNED32 count; [size_is(count)] NSI_IF_ID_P_T if_id[*]; } NSI_IF_ID_VECTOR_T; // If you change this table, you must update the status mapping vector // NsiToRpcStatus in client\util.cxx enum { NSI_S_OK, NSI_S_NO_MORE_BINDINGS, NSI_S_INTERFACE_NOT_FOUND, NSI_S_ENTRY_NOT_FOUND, NSI_S_NAME_SERVICE_UNAVAILABLE, NSI_S_NO_NS_PRIVILEGE, NSI_S_UNSUPPORTED_NAME_SYNTAX, NSI_S_NOTHING_TO_UNEXPORT, NSI_S_INVALID_NAME_SYNTAX, NSI_S_INVALID_NS_HANDLE, NSI_S_INVALID_OBJECT, NSI_S_NOT_ALL_OBJS_UNEXPORTED, // Was NSI_S_INVALID_INTERFACE, but this // never could be returned by CSD. NSI_S_INVALID_STRING_BINDING, NSI_S_SOME_OTHER_ERROR, // New error codes added after 4/92 and v 1.0 of CSD deamon. NSI_S_NOTHING_TO_EXPORT, NSI_S_UNIMPLEMENTED_API, NSI_S_NO_INTERFACES_EXPORTED, NSI_S_INCOMPLETE_NAME, NSI_S_INVALID_VERS_OPTION, NSI_S_NO_MORE_MEMBERS, NSI_S_ENTRY_ALREADY_EXISTS, NSI_S_OUT_OF_MEMORY, NSI_S_GROUP_MEMBER_NOT_FOUND, NSI_S_NO_MASTER_LOCATOR, // New error codes added on 10/97 NSI_S_ENTRY_TYPE_MISMATCH, NSI_S_NOT_ALL_OBJS_EXPORTED, NSI_S_INTERFACE_NOT_EXPORTED, NSI_S_PROFILE_NOT_ADDED, NSI_S_PRF_ELT_NOT_ADDED, NSI_S_PRF_ELT_NOT_REMOVED, NSI_S_GRP_ELT_NOT_ADDED, NSI_S_GRP_ELT_NOT_REMOVED, NSI_S_STATUS_MAX, }; #pragma midl_echo("#pragma warning(default:4200)") }