SysHlp.h revision a5c612799bce18e3c0afc7ca6a111740816a75d9
/* $Revision$ */
/** @file
* VBoxGuestLibR0 - System dependent helpers internal header.
*/
/*
* Copyright (C) 2006-2007 Sun Microsystems, Inc.
*
* This file is part of VirtualBox Open Source Edition (OSE), as
* available from http://www.virtualbox.org. This file is free software;
* General Public License (GPL) as published by the Free Software
* Foundation, in version 2 as it comes in the "COPYING" file of the
* VirtualBox OSE distribution. VirtualBox OSE is distributed in the
* hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
*
* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
* Clara, CA 95054 USA or visit http://www.sun.com if you need
* additional information or have any questions.
*/
#ifndef __VBoxGuestLib_SysHlp_h
#define __VBoxGuestLib_SysHlp_h
#ifdef RT_OS_WINDOWS
# include <ntddk.h>
# pragma warning(default : 4163)
# else
# include <ntddk.h>
# endif
/* XP DDK #defines ExFreePool to ExFreePoolWithTag. The latter does not exist on NT4, so...
* The same for ExAllocatePool.
*/
#endif
typedef struct _VBGLDRIVER
{
#ifdef RT_OS_WINDOWS
#elif defined (RT_OS_LINUX)
void *opaque;
#elif defined (RT_OS_SOLARIS)
void *pvOpaque;
#elif defined (RT_OS_FREEBSD)
void *pvOpaque;
#else
# error "Port me"
#endif
} VBGLDRIVER;
#ifndef VBGL_VBOXGUEST
/**
* Open VBoxGuest driver.
*
* @param pDriver Pointer to the driver structure.
*
* @return VBox error code
*/
/**
* Call VBoxGuest driver.
*
* @param pDriver Pointer to the driver structure.
* @param u32Function Function code.
* @param cbData Size of data buffer.
*
* @return VBox error code
*/
/**
* Close VBoxGuest driver.
*
* @param pDriver Pointer to the driver structure.
*
* @return VBox error code
*/
#endif
#endif /* !__VBoxGuestLib_SysHlp_h */