45 lines
1.0 KiB
C
45 lines
1.0 KiB
C
/* $NetBSD: efence.h,v 1.2 2003/12/04 16:23:34 drochner Exp $ */
|
|
|
|
#include <sys/types.h>
|
|
#include <sys/param.h>
|
|
|
|
/*
|
|
* ef_number is the largest unsigned integer we'll need. On systems that
|
|
* support 64-bit pointers, this may be "unsigned long long".
|
|
*/
|
|
#if defined(USE_LONG_LONG)
|
|
typedef unsigned long long ef_number;
|
|
#else
|
|
typedef unsigned long ef_number;
|
|
#endif
|
|
|
|
/*
|
|
* NBBY is the number of bits per byte. Some systems define it in
|
|
* <sys/param.h> .
|
|
*/
|
|
#ifndef NBBY
|
|
#define NBBY 8
|
|
#endif
|
|
|
|
/*
|
|
* This is used to declare functions with "C" linkage if we are compiling
|
|
* with C++ .
|
|
*/
|
|
#ifdef __cplusplus
|
|
#define C_LINKAGE "C"
|
|
#else
|
|
#define C_LINKAGE
|
|
#endif
|
|
|
|
void Page_AllowAccess(void * address, size_t size);
|
|
void * Page_Create(size_t size);
|
|
void Page_Delete(void * address, size_t size);
|
|
void Page_DenyAccess(void * address, size_t size);
|
|
size_t Page_Size(void);
|
|
|
|
void EF_Abort(const char * message, ...);
|
|
void EF_Exit(const char * message, ...);
|
|
void EF_Print(const char * message, ...);
|
|
void EF_Lock();
|
|
void EF_UnLock();
|