Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

79 lines
1.7 KiB

title "User Callback Return"
;++
;
; Copyright (c) 1985 - 1999, Microsoft Corporation
;
; Module Name:
;
; callret.asm
;
; Abstract:
;
; This module implements the fastpath callback return.
;
; Author:
;
; David N. Cutler (davec) 21-Dec-95
;
; Environment:
;
; User mode.
;
; Revision History:
;
;--
.386p
.xlist
include callconv.inc ; calling convention macros
.list
_TEXT SEGMENT DWORD PUBLIC 'CODE'
ASSUME DS:FLAT, ES:FLAT, SS:NOTHING, FS:NOTHING, GS:NOTHING
page ,132
subttl "Return from User Mode Callback"
ifndef BUILD_WOW6432
;++
;
; NTSTATUS
; FASTCALL
; XyCallbackReturn (
; IN PVOID OutputBuffer OPTIONAL,
; IN ULONG OutputLength,
; IN NTSTATUS Status
; )
;
; Routine Description:
;
; This function returns from a user mode callout to the kernel mode
; caller of the user mode callback function.
;
; Arguments:
;
; OutputBuffer (ecx) - Supplies an optional pointer to an output buffer.
;
; OutputLength (edx) - Supplies the length of the output buffer.
;
; Status (esp + 4) - Supplies the status value returned to the caller of the
; callback function.
;
; Return Value:
;
; Normally there is no return from this function. If a callbac is not active,
; then the error status is returned to the caller.
;
;--
cPublicFastCall XyCallbackReturn, 3
mov eax,[esp] + 4 ; get return status value
int 02bH ; call fast path system service
fstRET XyCallbackReturn ; return status to caller
fstENDP XyCallbackReturn
endif
_TEXT ends
end