亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? giveio.c

?? 支持wiggler的sjf2410工具
?? C
字號:
/*********************************************************************

Author:     Dale Roberts
Date:       8/30/95
Program:    GIVEIO.SYS
Compile:    Use DDK BUILD facility

Purpose:    Give direct port I/O access to a user mode process.

*********************************************************************/
#include <ntddk.h>

/*
 *  The name of our device driver.
 */
#define DEVICE_NAME_STRING	L"giveio"

/*
 *  This is the "structure" of the IOPM.  It is just a simple
 * character array of length 0x2000.
 *
 *  This holds 8K * 8 bits -> 64K bits of the IOPM, which maps the
 * entire 64K I/O space of the x86 processor.  Any 0 bits will give
 * access to the corresponding port for user mode processes.  Any 1
 * bits will disallow I/O access to the corresponding port.
 */
#define	IOPM_SIZE	0x2000
typedef UCHAR IOPM[IOPM_SIZE];

/*
 *  This will hold simply an array of 0's which will be copied
 * into our actual IOPM in the TSS by Ke386SetIoAccessMap().
 * The memory is allocated at driver load time.
 */
IOPM *IOPM_local = 0;

/*
 *  These are the two undocumented calls that we will use to give
 * the calling process I/O access.
 *
 *  Ke386IoSetAccessMap() copies the passed map to the TSS.
 *
 *  Ke386IoSetAccessProcess() adjusts the IOPM offset pointer so that
 * the newly copied map is actually used.  Otherwise, the IOPM offset
 * points beyond the end of the TSS segment limit, causing any I/O
 * access by the user mode process to generate an exception.
 */
void Ke386SetIoAccessMap(int, IOPM *);
void Ke386QueryIoAccessMap(int, IOPM *);
void Ke386IoSetAccessProcess(PEPROCESS, int);

/*********************************************************************
  Release any allocated objects.
*********************************************************************/
VOID GiveioUnload(IN PDRIVER_OBJECT DriverObject)
{
	WCHAR DOSNameBuffer[] = L"\\DosDevices\\" DEVICE_NAME_STRING;
	UNICODE_STRING uniDOSString;

	if(IOPM_local)
		MmFreeNonCachedMemory(IOPM_local, sizeof(IOPM));

	RtlInitUnicodeString(&uniDOSString, DOSNameBuffer);
	IoDeleteSymbolicLink (&uniDOSString);
	IoDeleteDevice(DriverObject->DeviceObject);
}

/*********************************************************************
  Set the IOPM (I/O permission map) of the calling process so that it
is given full I/O access.  Our IOPM_local[] array is all zeros, so
the IOPM will be all zeros.  If OnFlag is 1, the process is given I/O
access.  If it is 0, access is removed.
*********************************************************************/
VOID SetIOPermissionMap(int OnFlag)
{
	Ke386IoSetAccessProcess(PsGetCurrentProcess(), OnFlag);
	Ke386SetIoAccessMap(1, IOPM_local);
}

void GiveIO(void)
{
	SetIOPermissionMap(1);
}

/*********************************************************************
  Service handler for a CreateFile() user mode call.

  This routine is entered in the driver object function call table by
the DriverEntry() routine.  When the user mode application calls
CreateFile(), this routine gets called while still in the context of
the user mode application, but with the CPL (the processor's Current
Privelege Level) set to 0.  This allows us to do kernel mode
operations.  GiveIO() is called to give the calling process I/O
access.  All the user mode application needs do to obtain I/O access
is open this device with CreateFile().  No other operations are
required.
*********************************************************************/
NTSTATUS GiveioCreateDispatch(
    IN  PDEVICE_OBJECT  DeviceObject,
    IN  PIRP            Irp
    )
{
	GiveIO();			// give the calling process I/O access

    Irp->IoStatus.Information = 0;
    Irp->IoStatus.Status = STATUS_SUCCESS;
    IoCompleteRequest(Irp, IO_NO_INCREMENT);
    return STATUS_SUCCESS;
}

/*********************************************************************
  Driver Entry routine.

  This routine is called only once after the driver is initially
loaded into memory.  It allocates everything necessary for the
driver's operation.  In our case, it allocates memory for our IOPM
array, and creates a device which user mode applications can open.
It also creates a symbolic link to the device driver.  This allows
a user mode application to access our driver using the \\.\giveio
notation.
*********************************************************************/
NTSTATUS DriverEntry(
    IN PDRIVER_OBJECT DriverObject,
    IN PUNICODE_STRING RegistryPath
    )
{
	PDEVICE_OBJECT deviceObject;
	NTSTATUS status;
	WCHAR NameBuffer[] = L"\\Device\\" DEVICE_NAME_STRING;
	WCHAR DOSNameBuffer[] = L"\\DosDevices\\" DEVICE_NAME_STRING;
	UNICODE_STRING uniNameString, uniDOSString;

	//
	//  Allocate a buffer for the local IOPM and zero it.
	//
	IOPM_local = MmAllocateNonCachedMemory(sizeof(IOPM));
	if(IOPM_local == 0)
		return STATUS_INSUFFICIENT_RESOURCES;
	RtlZeroMemory(IOPM_local, sizeof(IOPM));

	//
	//  Set up device driver name and device object.
	//
	RtlInitUnicodeString(&uniNameString, NameBuffer);
	RtlInitUnicodeString(&uniDOSString, DOSNameBuffer);

	status = IoCreateDevice(DriverObject, 0,
					&uniNameString,
					FILE_DEVICE_UNKNOWN,
					0, FALSE, &deviceObject);

	if(!NT_SUCCESS(status))
		return status;

	status = IoCreateSymbolicLink (&uniDOSString, &uniNameString);

	if (!NT_SUCCESS(status))
		return status;

    //
    //  Initialize the Driver Object with driver's entry points.
	// All we require are the Create and Unload operations.
    //
    DriverObject->MajorFunction[IRP_MJ_CREATE] = GiveioCreateDispatch;
	DriverObject->DriverUnload = GiveioUnload;
    return STATUS_SUCCESS;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
韩国女主播一区二区三区| 亚洲成人777| www久久精品| 日韩欧美在线1卡| 91精品黄色片免费大全| 欧美理论电影在线| 91精品国产免费久久综合| 欧美群妇大交群的观看方式| 91精品免费在线观看| 欧美一区二区三区四区在线观看| 欧美日韩免费观看一区二区三区| 欧美午夜精品理论片a级按摩| 欧美日韩亚洲不卡| 精品国产一区二区在线观看| 久久视频一区二区| 国产精品理伦片| 亚洲综合在线视频| 日产国产欧美视频一区精品| 极品美女销魂一区二区三区| 国产成人免费av在线| bt欧美亚洲午夜电影天堂| 色美美综合视频| 91精品国产品国语在线不卡| 久久一夜天堂av一区二区三区| 国产精品欧美极品| 亚洲午夜av在线| 激情综合色综合久久综合| 国产凹凸在线观看一区二区| 91丨国产丨九色丨pron| 51精品秘密在线观看| 精品国产a毛片| 伊人色综合久久天天| 日韩高清一区在线| 高清在线观看日韩| 欧美日韩免费一区二区三区视频| 国产精品三级久久久久三级| 一区二区三区中文字幕精品精品| 久久精品国产精品亚洲精品| 99久久精品99国产精品| 日韩欧美国产一区二区在线播放 | 国产丝袜在线精品| 亚洲精品中文字幕乱码三区 | 日韩精品影音先锋| 国产精品久久国产精麻豆99网站| 亚洲大尺度视频在线观看| 懂色av中文一区二区三区| 欧美日韩午夜精品| 国产精品久久久久一区二区三区共| 亚洲国产一区二区在线播放| 岛国精品在线播放| 日韩一级片网站| 亚洲一区二区在线免费观看视频 | 亚洲品质自拍视频网站| 久久国产精品色婷婷| 欧美综合一区二区| 国产精品乱码人人做人人爱 | 欧美国产精品一区二区三区| 日韩精品亚洲一区| 色先锋aa成人| 国产精品不卡在线观看| 国产九九视频一区二区三区| 91精品久久久久久蜜臀| 亚洲成人在线免费| 91国产精品成人| 亚洲人快播电影网| aaa欧美大片| 亚洲色欲色欲www| 成人激情开心网| 国产精品久久久久久久久果冻传媒 | 国产成人精品一区二区三区四区| 日韩一级二级三级| 蜜桃一区二区三区在线| 91精品国产福利在线观看| 亚洲一区二区三区激情| 在线亚洲精品福利网址导航| 亚洲黄色免费网站| 在线欧美日韩国产| 亚洲成人动漫在线免费观看| 欧美性欧美巨大黑白大战| 一区二区三区视频在线观看| 91蜜桃网址入口| 亚洲一区二区在线观看视频| 欧美色视频在线| 奇米影视一区二区三区| 日韩一区二区麻豆国产| 黄一区二区三区| 国产欧美一区二区精品性色| 成人免费av网站| 一区二区三区久久| 7777精品伊人久久久大香线蕉| 日韩成人午夜电影| 337p日本欧洲亚洲大胆精品| 国产成人av影院| 亚洲精品国产精华液| 欧美日韩美女一区二区| 91蝌蚪porny九色| 亚洲女同ⅹxx女同tv| 欧美日韩一区二区三区免费看| 视频一区视频二区中文字幕| 精品国产123| 成人av午夜电影| 亚洲大片精品永久免费| 欧美成人一区二区三区| fc2成人免费人成在线观看播放 | 日韩欧美一区二区免费| 国产精品系列在线观看| 一区二区三区日韩欧美| 欧美sm极限捆绑bd| 91小视频在线免费看| 日本中文字幕一区二区视频| 国产精品午夜电影| 欧美二区三区91| 成人a级免费电影| 午夜av区久久| 国产精品二三区| 欧美一区二区视频免费观看| 成人av免费在线观看| 日韩电影在线免费看| 日韩美女啊v在线免费观看| 日韩一区二区免费在线电影| 91视频在线观看免费| 紧缚捆绑精品一区二区| 洋洋成人永久网站入口| 日本一区二区三区四区| 3atv在线一区二区三区| 91麻豆高清视频| 国产精品18久久久| 日韩国产精品91| 一区二区三区欧美日| 中文久久乱码一区二区| 精品国产免费久久| 欧美日韩成人高清| 91麻豆6部合集magnet| 成人影视亚洲图片在线| 精品一区二区三区视频| 婷婷丁香激情综合| 一级特黄大欧美久久久| 一区在线观看免费| 欧美韩日一区二区三区| 久久综合九色综合97婷婷女人| 欧美日韩精品欧美日韩精品一综合| 99久久精品久久久久久清纯| 国产一区亚洲一区| 久久99深爱久久99精品| 男女性色大片免费观看一区二区 | 久久精品国产一区二区三| 亚洲va在线va天堂| 亚洲h动漫在线| 亚洲综合激情另类小说区| 亚洲视频每日更新| 亚洲欧美另类小说视频| 亚洲欧美国产三级| 亚洲久本草在线中文字幕| 亚洲男人电影天堂| 一区二区三区在线观看视频| 亚洲乱码中文字幕| 一区二区三区四区激情| 亚洲丰满少妇videoshd| 一二三四社区欧美黄| 亚洲线精品一区二区三区八戒| 亚洲最色的网站| 亚洲.国产.中文慕字在线| 丝袜亚洲另类丝袜在线| 美脚の诱脚舐め脚责91| 国内久久精品视频| 成人18精品视频| 91国产免费观看| 日韩午夜精品视频| 国产区在线观看成人精品| 亚洲国产精品黑人久久久| 自拍视频在线观看一区二区| 一区二区三区四区在线免费观看 | 亚洲黄色录像片| 天天操天天色综合| 久久成人久久鬼色| 成人一区二区三区视频 | 日韩一区二区高清| 久久久久久久久久久电影| 中文字幕二三区不卡| 一区二区三区四区精品在线视频| 亚洲18影院在线观看| 国产高清不卡二三区| 一本色道亚洲精品aⅴ| 91精品国产综合久久久久久漫画 | 欧美影院一区二区| 日韩欧美www| 中文字幕一区二区不卡 | 九九视频精品免费| 一本一道综合狠狠老| 精品欧美一区二区在线观看| 1024成人网| 久久99国内精品| 91女厕偷拍女厕偷拍高清| 日韩欧美黄色影院| 一区二区在线观看免费| 国模冰冰炮一区二区| 欧美午夜电影网| 国产精品网站在线| 另类人妖一区二区av| 欧美网站一区二区|