blob: c1001a9c862f89cb83d66a2fe374868e0ed1d3b0 [file] [log] [blame]
Alexandre Julliard0799c1a2002-03-09 23:29:33 +00001/*
Huw D M Davies10b1b232000-07-15 19:53:50 +00002 * RPC interface
3 *
Alexandre Julliard0799c1a2002-03-09 23:29:33 +00004 * Copyright (C) the Wine project
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Huw D M Davies10b1b232000-07-15 19:53:50 +000019 */
Alexandre Julliard0799c1a2002-03-09 23:29:33 +000020
Dimitrie O. Paun8b366812003-01-04 00:52:18 +000021#if !defined(RPC_NO_WINDOWS_H) && !defined(__WINESRC__)
Dimitrie O. Paun53f9c212003-08-28 21:43:34 +000022#include <windows.h>
Patrik Stridvall1ed55772000-11-30 01:31:28 +000023#endif
24
Francois Gougetd2cb1d12001-07-18 20:04:08 +000025#ifndef __WINE_RPC_H
26#define __WINE_RPC_H
27
Pierre d'Herbemont7f3074d2003-07-15 20:46:40 +000028#if defined(__powerpc__) || defined(_MAC) /* ? */
Peter Berg Larsen08dbbeb2004-12-20 16:53:12 +000029# define __RPC_MAC__
Pierre d'Herbemont7f3074d2003-07-15 20:46:40 +000030 /* Also define __RPC_WIN32__ to ensure compatibility */
Peter Berg Larsen08dbbeb2004-12-20 16:53:12 +000031# define __RPC_WIN32__
Greg Turner733b88b2002-10-31 22:04:33 +000032#elif defined(_WIN64)
Peter Berg Larsen08dbbeb2004-12-20 16:53:12 +000033# define __RPC_WIN64__
Greg Turner733b88b2002-10-31 22:04:33 +000034#else
Peter Berg Larsen08dbbeb2004-12-20 16:53:12 +000035# define __RPC_WIN32__
Greg Turner733b88b2002-10-31 22:04:33 +000036#endif
Ove Kaaven29b30612002-08-09 01:11:39 +000037
Alexandre Julliarde37c6e12003-09-05 23:08:26 +000038#include <basetsd.h>
39
Francois Gouget552fddc2000-11-08 05:06:10 +000040#define __RPC_FAR
Mike McCormackcdf631f2004-09-02 20:09:10 +000041#define __RPC_API __stdcall
42#define __RPC_USER __stdcall
43#define __RPC_STUB __stdcall
44#define RPC_ENTRY __stdcall
Peter Hunnisett8cec3cff2001-07-11 20:19:06 +000045#define RPCRTAPI
Huw D M Davies10b1b232000-07-15 19:53:50 +000046typedef long RPC_STATUS;
47
Francois Gouget552fddc2000-11-08 05:06:10 +000048typedef void* I_RPC_HANDLE;
Huw D M Davies10b1b232000-07-15 19:53:50 +000049
Dimitrie O. Paun53f9c212003-08-28 21:43:34 +000050#include <rpcdce.h>
51/* #include <rpcnsi.h> */
52#include <rpcnterr.h>
Dimitrie O. Paun53f9c212003-08-28 21:43:34 +000053#include <winerror.h>
Francois Gouget552fddc2000-11-08 05:06:10 +000054
Ove Kaaven381e6472003-04-19 20:06:58 +000055/* ignore exception handling for now */
56#define RpcTryExcept if (1) {
57#define RpcExcept(expr) } else {
58#define RpcEndExcept }
59#define RpcTryFinally
60#define RpcFinally
61#define RpcEndFinally
62#define RpcExceptionCode() 0
63/* #define RpcAbnormalTermination() abort() */
64
Huw D M Davies10b1b232000-07-15 19:53:50 +000065#endif /*__WINE_RPC_H */