Process Hacker
db.c File Reference
#include <phdk.h>
#include <mxml.h>
#include <shlobj.h>
#include "db.h"

Go to the source code of this file.

Functions

BOOLEAN NTAPI ObjectDbCompareFunction (_In_ PVOID Entry1, _In_ PVOID Entry2)
 
ULONG NTAPI ObjectDbHashFunction (_In_ PVOID Entry)
 
VOID InitializeDb (VOID)
 
ULONG GetNumberOfDbObjects (VOID)
 
VOID LockDb (VOID)
 
VOID UnlockDb (VOID)
 
PDB_OBJECT FindDbObject (_In_ ULONG Tag, _In_ PPH_STRINGREF Name)
 
PDB_OBJECT CreateDbObject (_In_ ULONG Tag, _In_ PPH_STRINGREF Name, _In_opt_ PPH_STRING Comment)
 
VOID DeleteDbObject (_In_ PDB_OBJECT Object)
 
VOID SetDbPath (_In_ PPH_STRING Path)
 
mxml_type_t MxmlLoadCallback (_In_ mxml_node_t *node)
 
PPH_STRING GetOpaqueXmlNodeText (_In_ mxml_node_t *node)
 
NTSTATUS LoadDb (VOID)
 
char * MxmlSaveCallback (_In_ mxml_node_t *node, _In_ int position)
 
mxml_node_tCreateObjectElement (_Inout_ mxml_node_t *ParentNode, _In_ PPH_STRINGREF Tag, _In_ PPH_STRINGREF Name, _In_ PPH_STRINGREF PriorityClass, _In_ PPH_STRINGREF IoPriorityPlusOne, _In_ PPH_STRINGREF Comment)
 
NTSTATUS SaveDb (VOID)
 

Variables

PPH_HASHTABLE ObjectDb
 
PH_QUEUED_LOCK ObjectDbLock = PH_QUEUED_LOCK_INIT
 
PPH_STRING ObjectDbPath
 

Function Documentation

PDB_OBJECT CreateDbObject ( _In_ ULONG  Tag,
_In_ PPH_STRINGREF  Name,
_In_opt_ PPH_STRING  Comment 
)

Definition at line 115 of file db.c.

mxml_node_t* CreateObjectElement ( _Inout_ mxml_node_t ParentNode,
_In_ PPH_STRINGREF  Tag,
_In_ PPH_STRINGREF  Name,
_In_ PPH_STRINGREF  PriorityClass,
_In_ PPH_STRINGREF  IoPriorityPlusOne,
_In_ PPH_STRINGREF  Comment 
)

Definition at line 323 of file db.c.

VOID DeleteDbObject ( _In_ PDB_OBJECT  Object)

Definition at line 154 of file db.c.

PDB_OBJECT FindDbObject ( _In_ ULONG  Tag,
_In_ PPH_STRINGREF  Name 
)

Definition at line 94 of file db.c.

ULONG GetNumberOfDbObjects ( VOID  )

Definition at line 73 of file db.c.

PPH_STRING GetOpaqueXmlNodeText ( _In_ mxml_node_t node)

Definition at line 179 of file db.c.

VOID InitializeDb ( VOID  )

Definition at line 41 of file db.c.

NTSTATUS LoadDb ( VOID  )

Definition at line 193 of file db.c.

VOID LockDb ( VOID  )

Definition at line 80 of file db.c.

mxml_type_t MxmlLoadCallback ( _In_ mxml_node_t node)

Definition at line 172 of file db.c.

char* MxmlSaveCallback ( _In_ mxml_node_t node,
_In_ int  position 
)

Definition at line 302 of file db.c.

BOOLEAN NTAPI ObjectDbCompareFunction ( _In_ PVOID  Entry1,
_In_ PVOID  Entry2 
)

Definition at line 53 of file db.c.

ULONG NTAPI ObjectDbHashFunction ( _In_ PVOID  Entry)

Definition at line 64 of file db.c.

NTSTATUS SaveDb ( VOID  )

Definition at line 369 of file db.c.

VOID SetDbPath ( _In_ PPH_STRING  Path)

Definition at line 165 of file db.c.

VOID UnlockDb ( VOID  )

Definition at line 87 of file db.c.

Variable Documentation

PPH_HASHTABLE ObjectDb

Definition at line 37 of file db.c.

Definition at line 38 of file db.c.

PPH_STRING ObjectDbPath

Definition at line 39 of file db.c.