source: trunk/src/win32k/dev32/d32Win32kIOCtl.c@ 2912

Last change on this file since 2912 was 2799, checked in by bird, 26 years ago

IOCtl exported services.
k32AllocMemEx.

File size: 1.9 KB
Line 
1/* $Id: d32Win32kIOCtl.c,v 1.1 2000-02-15 23:39:19 bird Exp $
2 *
3 * Win32k driver IOCtl handler function.
4 *
5 * Copyright (c) 2000 knut st. osmundsen (knut.stange.osmundsen@pmsc.no)
6 *
7 * Project Odin Software License can be found in LICENSE.TXT
8 *
9 */
10/*******************************************************************************
11* Defined Constants And Macros *
12*******************************************************************************/
13#define INCL_DOSERRORS
14#define INCL_NOPMAPI
15
16
17/*******************************************************************************
18* Header Files *
19*******************************************************************************/
20#include <os2.h>
21
22#include "dev1632.h"
23#include "dev32.h"
24#include "Win32k.h"
25#include "k32.h"
26
27
28
29/**
30 * IOCtl handler for the Win32k part of the driver.
31 * @returns Gen IOCtl return code.
32 * @param pRpIOCtl Pointer to 32-bit request packet. (not to the original packet)
33 * @author knut st. osmundsen (knut.stange.osmundsen@pmsc.no)
34 */
35USHORT _loadds _Far32 _Pascal Win32kIOCtl(PRP32GENIOCTL pRpIOCtl)
36{
37 switch (pRpIOCtl->Category)
38 {
39 case IOCTL_W32K_K32:
40 switch (pRpIOCtl->Function)
41 {
42 case K32_ALLOCMEMEX:
43 {
44 PK32ALLOCMEMEX pParm = (PK32ALLOCMEMEX)pRpIOCtl->ParmPacket;
45 if (pParm == NULL)
46 return STATUS_DONE | STERR | ERROR_I24_INVALID_PARAMETER;
47 pParm->rc = k32AllocMemEx(&pParm->pv, pParm->cb, pParm->flFlags,
48 pParm->ulCS, pParm->ulEIP);
49 return STATUS_DONE;
50 }
51 }
52 break;
53 }
54
55 return STATUS_DONE | STERR | ERROR_I24_INVALID_PARAMETER;
56}
57
Note: See TracBrowser for help on using the repository browser.