ReactOS  0.4.14-dev-998-g623dd26
io.c
Go to the documentation of this file.
1 /*
2  * COPYRIGHT: See COPYING.ARM in the top level directory
3  * PROJECT: ReactOS UEFI Boot Library
4  * FILE: boot/environ/lib/io/io.c
5  * PURPOSE: Boot Library I/O Management Routines
6  * PROGRAMMER: Alex Ionescu (alex.ionescu@reactos.org)
7  */
8 
9 /* INCLUDES ******************************************************************/
10 
11 #include "bl.h"
12 
13 /* DATA VARIABLES ************************************************************/
14 
17 
18 /* FUNCTIONS *****************************************************************/
19 
22  _In_ PBL_IO_DESTROY_ROUTINE DestroyRoutine
23  )
24 {
25  ULONG Id;
26 
29  DestroyRoutine,
30  &Id,
32 }
33 
36  VOID
37  )
38 {
40  ULONG Size;
41 
42  /* Allocate the I/O table */
44  Size = IoMgrRoutineEntries * sizeof(PVOID);
47  {
48  /* Zero it out */
50 
51  /* Initialize the device manager */
53 
54  /* Initialize the file manager */
55  if (NT_SUCCESS(Status))
56  {
58  }
59  }
60  else
61  {
62  /* No memory */
64  }
65 
66  /* Return initialization status */
67  return Status;
68 }
69 
70 
NTSTATUS BlpIoInitialize(VOID)
Definition: io.c:35
NTSTATUS TblDoNotPurgeEntry(_In_ PVOID Entry)
Definition: util.c:495
LONG NTSTATUS
Definition: precomp.h:26
PVOID * IoMgrDestroyRoutineTable
Definition: io.c:16
DWORD Id
NTSTATUS BlpDeviceInitialize(VOID)
Definition: device.c:2309
PVOID BlMmAllocateHeap(_In_ SIZE_T Size)
Definition: heapalloc.c:569
void * PVOID
Definition: retypes.h:9
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:32
NTSTATUS BlpIoRegisterDestroyRoutine(_In_ PBL_IO_DESTROY_ROUTINE DestroyRoutine)
Definition: io.c:21
NTSTATUS BlpFileInitialize(VOID)
Definition: file.c:908
IN PVOID IN PVOID IN USHORT IN USHORT Size
Definition: pci.h:359
Status
Definition: gdiplustypes.h:24
#define _In_
Definition: no_sal2.h:204
ULONG IoMgrRoutineEntries
Definition: io.c:15
#define STATUS_NO_MEMORY
Definition: ntstatus.h:246
NTSTATUS BlTblSetEntry(_Inout_ PVOID **Table, _Inout_ PULONG Count, _In_ PVOID Entry, _Out_ PULONG EntryIndex, _In_ PBL_TBL_SET_ROUTINE Callback)
Definition: util.c:321
unsigned int ULONG
Definition: retypes.h:1
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:262
NTSTATUS(* PBL_IO_DESTROY_ROUTINE)(VOID)
Definition: bl.h:589