/* * Copyright (c) 2010 Apple Inc. All rights reserved. * * @APPLE_LICENSE_HEADER_START@ * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of Apple Inc. ("Apple") nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * Portions of this software have been released under the following terms: * * (c) Copyright 1989-1993 OPEN SOFTWARE FOUNDATION, INC. * (c) Copyright 1989-1993 HEWLETT-PACKARD COMPANY * (c) Copyright 1989-1993 DIGITAL EQUIPMENT CORPORATION * * To anyone who acknowledges that this file is provided "AS IS" * without any express or implied warranty: * permission to use, copy, modify, and distribute this file for any * purpose is hereby granted without fee, provided that the above * copyright notices and this notice appears in all source code copies, * and that none of the names of Open Software Foundation, Inc., Hewlett- * Packard Company or Digital Equipment Corporation be used * in advertising or publicity pertaining to distribution of the software * without specific, written prior permission. Neither Open Software * Foundation, Inc., Hewlett-Packard Company nor Digital * Equipment Corporation makes any representations about the suitability * of this software for any purpose. * * Copyright (c) 2007, Novell, Inc. All rights reserved. * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of Novell Inc. nor the names of its contributors * may be used to endorse or promote products derived from this * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * @APPLE_LICENSE_HEADER_END@ */ /* ** ** NAME: ** ** nbase.idl ** ** FACILITY: ** ** Network Computing Architecture (NCA) ** ** ABSTRACT: ** ** Definitions of NCA architecturally defined types and constants. ** ** */ [pointer_default(ptr)] interface nbase { /* * Type definitions for specific size integers. */ typedef unsigned small unsigned8; /* positive 8 bit integer */ typedef unsigned short unsigned16; /* positive 16 bit integer */ typedef unsigned long unsigned32; /* positive 32 bit integer */ typedef small signed8; /* signed 8 bit integer */ typedef short signed16; /* signed 16 bit integer */ typedef long signed32; /* signed 32 bit integer */ /* * Type definition for 32-bit wide booleans. */ typedef unsigned32 boolean32; /* * Canonical types for expressing procedure return status. */ typedef unsigned long error_status_t; const long error_status_ok = 0; /* * Universal Unique Identifier (UUID) types. */ typedef struct { unsigned32 time_low; unsigned16 time_mid; unsigned16 time_hi_and_version; unsigned8 clock_seq_hi_and_reserved; unsigned8 clock_seq_low; byte node[6]; } idl_uuid_t, *uuid_p_t; /* * Old UUID type. */ typedef [v1_struct] struct { unsigned long time_high; unsigned short time_low; unsigned short reserved; byte family; byte host[7]; } uuid_old_t; /* * Protocol Tower. The network representation of network addressing information * (e.g., RPC bindings). */ typedef struct { [range(0,2000)] unsigned32 tower_length; [size_is(tower_length)] byte tower_octet_string[]; } twr_t, *twr_p_t; /* * NDR format flag type definition and values. */ const long ndr_c_int_big_endian = 0; const long ndr_c_int_little_endian = 1; const long ndr_c_float_ieee = 0; const long ndr_c_float_vax = 1; const long ndr_c_float_cray = 2; const long ndr_c_float_ibm = 3; const long ndr_c_char_ascii = 0; const long ndr_c_char_ebcdic = 1; typedef struct { unsigned8 int_rep; unsigned8 char_rep; unsigned8 float_rep; byte reserved; } ndr_format_t, *ndr_format_p_t; /* * Network representation of a NIDL context handle. */ typedef struct ndr_context_handle { unsigned32 context_handle_attributes; idl_uuid_t context_handle_uuid; } ndr_context_handle; /* * International character types. */ typedef byte ISO_LATIN_1; typedef struct { byte row; byte column; } ISO_MULTI_LINGUAL; typedef struct { byte group; byte plane; byte row; byte column; } ISO_UCS; /* * Authentication protocol IDs. These are architectural values that * are carried in RPC protocol messages. */ const long dce_c_rpc_authn_protocol_none = 0; /* No authentication */ const long dce_c_rpc_authn_protocol_krb5 = 1; /* Kerberos v5 authentication */ const long dce_c_rpc_authn_protocol_dummy = 2; /* Non-crypto authentication */ const long dce_c_rpc_authn_protocol_dssa = 3; /* DEC DSSA authentication */ const long dce_c_rpc_authn_protocol_gss_negotiate = 9; /* GSS-API, SPNEGO mech */ const long dce_c_rpc_authn_protocol_winnt = 10; /* NTLMSSP authentication */ const long dce_c_rpc_authn_protocol_gss_tls = 14; /* SSL/TLS */ const long dce_c_rpc_authn_protocol_gss_mskrb = 16; /* GSS-API, Kerberos mech */ const long dce_c_rpc_authn_protocol_msn = 17; /* MSN proprietary */ const long dce_c_rpc_authn_protocol_dpa = 18; /* DPA proprietary */ const long dce_c_rpc_authn_protocol_netlogon = 68; /* Netlogon secure channel */ const long dce_c_rpc_authn_protocol_schannel = 68; /* Netlogon secure channel */ typedef unsigned8 dce_rpc_authn_protocol_id_t; }