3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/*
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * RPC interface
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync *
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Copyright (C) the Wine project
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync *
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is free software; you can redistribute it and/or
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * modify it under the terms of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License as published by the Free Software Foundation; either
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * version 2.1 of the License, or (at your option) any later version.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync *
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * This library is distributed in the hope that it will be useful,
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * but WITHOUT ANY WARRANTY; without even the implied warranty of
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Lesser General Public License for more details.
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync *
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * You should have received a copy of the GNU Lesser General Public
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * License along with this library; if not, write to the Free Software
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync/*
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * Oracle LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * other than GPL or LGPL is available it will apply instead, Oracle elects to use only
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * a choice of LGPL license versions is made available with the language indicating
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * that LGPLv2 or any later version may be used, or where a choice of which version
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync * of the LGPL is applied is otherwise unspecified.
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync */
930b5f872e89407f445d4000d4e4aaecaa6a0998vboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#ifndef RPC_NO_WINDOWS_H
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync# include <windows.h>
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#ifndef __WINE_RPC_H
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define __WINE_RPC_H
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#if defined(__powerpc__) || defined(_MAC) /* ? */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync# define __RPC_MAC__
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync /* Also define __RPC_WIN32__ to ensure compatibility */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync# define __RPC_WIN32__
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#elif defined(_WIN64)
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync# define __RPC_WIN64__
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#else
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync# define __RPC_WIN32__
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#include <basetsd.h>
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define __RPC_FAR
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define __RPC_API __stdcall
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define __RPC_USER __stdcall
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define __RPC_STUB __stdcall
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RPC_ENTRY __stdcall
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RPCRTAPI
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef LONG RPC_STATUS;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsynctypedef void* I_RPC_HANDLE;
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#include <rpcdce.h>
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* #include <rpcnsi.h> */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#include <rpcnterr.h>
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#include <excpt.h>
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#include <winerror.h>
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#ifndef RPC_NO_WINDOWS_H
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#include <rpcasync.h>
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#ifdef USE_COMPILER_EXCEPTIONS
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcTryExcept __try {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcExcept(expr) } __except (expr) {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcEndExcept }
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcTryFinally __try {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcFinally } __finally {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcEndFinally }
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcExceptionCode() GetExceptionCode()
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcAbnormalTermination() AbnormalTermination()
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#else /* USE_COMPILER_EXCEPTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* ignore exception handling for now */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcTryExcept if (1) {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcExcept(expr) } else {
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcEndExcept }
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcTryFinally
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcFinally
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcEndFinally
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#define RpcExceptionCode() 0
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync/* #define RpcAbnormalTermination() abort() */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif /* USE_COMPILER_EXCEPTIONS */
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync
3194da424708abdd288b28d96892b3a5f3f7df0bvboxsync#endif /*__WINE_RPC_H */