1/* 2 * Copyright (c) 2010 Apple Inc. All rights reserved. 3 * 4 * @APPLE_LICENSE_HEADER_START@ 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: 9 * 10 * 1. Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * 2. Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 3. Neither the name of Apple Inc. ("Apple") nor the names of its 16 * contributors may be used to endorse or promote products derived from 17 * this software without specific prior written permission. 18 * 19 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY 20 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 21 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 22 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY 23 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 24 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 26 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 * 30 * Portions of this software have been released under the following terms: 31 * 32 * (c) Copyright 1989-1993 OPEN SOFTWARE FOUNDATION, INC. 33 * (c) Copyright 1989-1993 HEWLETT-PACKARD COMPANY 34 * (c) Copyright 1989-1993 DIGITAL EQUIPMENT CORPORATION 35 * 36 * To anyone who acknowledges that this file is provided "AS IS" 37 * without any express or implied warranty: 38 * permission to use, copy, modify, and distribute this file for any 39 * purpose is hereby granted without fee, provided that the above 40 * copyright notices and this notice appears in all source code copies, 41 * and that none of the names of Open Software Foundation, Inc., Hewlett- 42 * Packard Company or Digital Equipment Corporation be used 43 * in advertising or publicity pertaining to distribution of the software 44 * without specific, written prior permission. Neither Open Software 45 * Foundation, Inc., Hewlett-Packard Company nor Digital 46 * Equipment Corporation makes any representations about the suitability 47 * of this software for any purpose. 48 * 49 * Copyright (c) 2007, Novell, Inc. All rights reserved. 50 * Redistribution and use in source and binary forms, with or without 51 * modification, are permitted provided that the following conditions 52 * are met: 53 * 54 * 1. Redistributions of source code must retain the above copyright 55 * notice, this list of conditions and the following disclaimer. 56 * 2. Redistributions in binary form must reproduce the above copyright 57 * notice, this list of conditions and the following disclaimer in the 58 * documentation and/or other materials provided with the distribution. 59 * 3. Neither the name of Novell Inc. nor the names of its contributors 60 * may be used to endorse or promote products derived from this 61 * this software without specific prior written permission. 62 * 63 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 64 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 65 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 66 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY 67 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 68 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 69 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 70 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 71 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 72 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 73 * 74 * @APPLE_LICENSE_HEADER_END@ 75 */ 76 77/* 78** 79** NAME 80** 81** cncall.h 82** 83** FACILITY: 84** 85** Remote Procedure Call (RPC) 86** 87** ABSTRACT: 88** 89** Interface to the NCA Connection Protocol Service's Call Service. 90** 91** 92*/ 93 94#ifndef _CNCALL_H 95#define _CNCALL_H 1 96 97/* 98 * R P C _ _ C N _ C A L L _ S T A R T 99 */ 100 101PRIVATE rpc_call_rep_t *rpc__cn_call_start ( 102 rpc_binding_rep_p_t /* binding_rep */, 103 unsigned32 /* call_options */, 104 rpc_if_rep_p_t /* ifspec_r */, 105 unsigned32 /* opnum */, 106 rpc_transfer_syntax_t * /* xfer_syntax */, 107 unsigned32 * /* st */); 108 109/* 110 * R P C _ _ C N _ C A L L _ T R A N S M I T 111 */ 112 113PRIVATE void rpc__cn_call_transmit ( 114 rpc_call_rep_p_t /* call_r */, 115 rpc_iovector_p_t /* call_args */, 116 unsigned32 * /* st */); 117 118/* 119 * R P C _ _ C N _ C A L L _ T R A N S C E I V E 120 */ 121 122PRIVATE void rpc__cn_call_transceive ( 123 rpc_call_rep_p_t /* call_r */, 124 rpc_iovector_p_t /* in_call_args */, 125 rpc_iovector_elt_t * /* out_call_args */, 126 ndr_format_t * /* remote_ndr_format */, 127 unsigned32 * /* st */); 128 129/* 130 * R P C _ _ C N _ C A L L _ R E C E I V E 131 */ 132 133PRIVATE void rpc__cn_call_receive ( 134 rpc_call_rep_p_t /* call_r */, 135 rpc_iovector_elt_t * /* call_args */, 136 unsigned32 * /* st */); 137 138/* 139 * R P C _ _ C N _ C A L L _ B L O C K _ U N T I L _ F R E E 140 */ 141 142PRIVATE void rpc__cn_call_block_until_free ( 143 rpc_call_rep_p_t /* call_r */, 144 unsigned32 * /* st */); 145 146/* 147 * R P C _ _ C N _ C A L L _ A L E R T 148 */ 149 150PRIVATE void rpc__cn_call_alert ( 151 rpc_call_rep_p_t /* call_r */, 152 unsigned32 * /* st */); 153 154/* 155 * R P C _ _ C N _ C A L L _ E N D 156 */ 157 158PRIVATE void rpc__cn_call_end ( 159 rpc_call_rep_p_t * /* call_r */, 160 unsigned32 * /* st */); 161 162/* 163 * R P C _ _ C N _ C A L L _ T R A N S M I T _ F A U L T 164 */ 165 166PRIVATE void rpc__cn_call_transmit_fault ( 167 rpc_call_rep_p_t /* call_r */, 168 rpc_iovector_p_t /* call_fault_info */, 169 unsigned32 * /* st */); 170 171/* 172 * R P C _ _ C N _ C A L L _ R E J E C T 173 */ 174 175PRIVATE void rpc__cn_call_reject ( 176 rpc_call_rep_p_t /* call_r */, 177 unsigned32 /* l_st */); 178 179/* 180 * R P C _ _ C N _ C A L L _ R E C E I V E _ F A U L T 181 */ 182 183PRIVATE void rpc__cn_call_receive_fault ( 184 rpc_call_rep_p_t /* call_r */, 185 rpc_iovector_elt_t * /* call_fault_info */, 186 ndr_format_t * /* remote_ndr_format */, 187 unsigned32 * /* st */); 188 189/* 190 * R P C _ _ C N _ C A L L _ D I D _ M G R _ E X E C U T E 191 */ 192 193PRIVATE boolean32 rpc__cn_call_did_mgr_execute ( 194 rpc_call_rep_p_t /* call_r */, 195 unsigned32 * /* st */); 196 197/* 198 * R P C _ C N _ C A L L _ N O _ C O N N _ I N D 199 */ 200 201PRIVATE void rpc__cn_call_no_conn_ind ( 202 rpc_cn_call_rep_p_t /* call_r */); 203 204/* 205 * R P C _ _ C N _ C A L L _ C C B _ C R E A T E 206 */ 207 208PRIVATE void rpc__cn_call_ccb_create ( 209 rpc_cn_call_rep_p_t /* call_r */); 210 211/* 212 * R P C _ _ C N _ C A L L _ C C B _ F R E E 213 */ 214 215PRIVATE void rpc__cn_call_ccb_free ( 216 rpc_cn_call_rep_p_t /* call_r */); 217 218/* 219 * R P C _ _ C N _ C A L L _ L O C A L _ C A N C E L 220 */ 221 222PRIVATE void rpc__cn_call_local_cancel ( 223 rpc_cn_call_rep_p_t /* call_rep */, 224 volatile boolean32 * /* retry_op */, 225 unsigned32 * /* st */ 226 ); 227 228/* 229 * R P C _ _ C N _ C A L L _ S T A R T _ C A N C E L _ T I M E R 230 */ 231 232PRIVATE void rpc__cn_call_start_cancel_timer ( 233 rpc_cn_call_rep_p_t /* call_r */, 234 unsigned32 * /* st */ 235 ); 236 237/* 238 * R P C _ _ C N _ C A L L _ S T O P _ C A N C E L _ T I M E R 239 */ 240 241PRIVATE void rpc__cn_call_stop_cancel_timer ( 242 rpc_cn_call_rep_p_t /* call_r */ 243 ); 244 245#endif /* _CNCALL_H */ 246