ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

win32csr.h
Go to the documentation of this file.
00001 /* $Id: win32csr.h 55699 2012-02-19 06:44:09Z ion $
00002  *
00003  * COPYRIGHT:       See COPYING in the top level directory
00004  * PROJECT:         ReactOS system libraries
00005  * FILE:            subsys/csrss/win32csr/win32csr.h
00006  * PURPOSE:         Interface to win32csr.dll
00007  */
00008 
00009 #pragma once
00010 
00011 #include <windows.h>
00012 #include <commctrl.h>
00013 
00014 extern HANDLE Win32CsrApiHeap;
00015 extern HINSTANCE Win32CsrDllHandle;
00016 
00017 typedef struct Object_tt
00018 {
00019   LONG Type;
00020   struct tagCSRSS_CONSOLE *Console;
00021   LONG AccessRead, AccessWrite;
00022   LONG ExclusiveRead, ExclusiveWrite;
00023   LONG HandleCount;
00024 } Object_t;
00025 
00026 typedef struct _CSRSS_HANDLE
00027 {
00028   Object_t *Object;
00029   DWORD Access;
00030   BOOL Inheritable;
00031   DWORD ShareMode;
00032 } CSRSS_HANDLE, *PCSRSS_HANDLE;
00033 
00034 typedef VOID (WINAPI *CSR_CLEANUP_OBJECT_PROC)(Object_t *Object);
00035 
00036 typedef struct tagCSRSS_OBJECT_DEFINITION
00037 {
00038   LONG Type;
00039   CSR_CLEANUP_OBJECT_PROC CsrCleanupObjectProc;
00040 } CSRSS_OBJECT_DEFINITION, *PCSRSS_OBJECT_DEFINITION;
00041 
00042 /* handle.c */
00043 NTSTATUS FASTCALL Win32CsrInsertObject(PCSR_PROCESS ProcessData,
00044                                        PHANDLE Handle,
00045                                        Object_t *Object,
00046                                        DWORD Access,
00047                                        BOOL Inheritable,
00048                                        DWORD ShareMode);
00049 NTSTATUS FASTCALL Win32CsrLockObject(PCSR_PROCESS ProcessData,
00050                                      HANDLE Handle,
00051                                      Object_t **Object,
00052                                      DWORD Access,
00053                                      long Type);
00054 VOID FASTCALL Win32CsrUnlockObject(Object_t *Object);
00055 NTSTATUS FASTCALL Win32CsrReleaseObject(PCSR_PROCESS ProcessData,
00056                                         HANDLE Object);
00057 VOID WINAPI Win32CsrReleaseConsole(PCSR_PROCESS ProcessData);
00058 NTSTATUS WINAPI Win32CsrDuplicateHandleTable(PCSR_PROCESS SourceProcessData,
00059                                              PCSR_PROCESS TargetProcessData);
00060 CSR_API(CsrGetHandle);
00061 CSR_API(CsrCloseHandle);
00062 CSR_API(CsrVerifyHandle);
00063 CSR_API(CsrDuplicateHandle);
00064 CSR_API(CsrGetInputWaitHandle);
00065 
00066 BOOL FASTCALL Win32CsrValidateBuffer(PCSR_PROCESS ProcessData,
00067                                      PVOID Buffer,
00068                                      SIZE_T NumElements,
00069                                      SIZE_T ElementSize);
00070 NTSTATUS FASTCALL Win32CsrEnumProcesses(CSRSS_ENUM_PROCESS_PROC EnumProc,
00071                                         PVOID Context);
00072 
00073 /* exitros.c */
00074 CSR_API(CsrExitReactos);
00075 CSR_API(CsrSetLogonNotifyWindow);
00076 CSR_API(CsrRegisterLogonProcess);
00077 
00078 CSR_API(CsrSoundSentry);
00079 
00080 /* EOF */

Generated on Sat May 26 2012 04:37:34 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.