SignedCapsulePkg[all]  0.1
 All Data Structures Files Functions Variables Enumerations Enumerator Macros Pages
IniParsingLib.h File Reference

Functions

VOID *EFIAPI OpenIniFile (IN UINT8 *DataBuffer, IN UINTN BufferSize)
 
EFI_STATUS EFIAPI GetStringFromDataFile (IN VOID *Context, IN CHAR8 *SectionName, IN CHAR8 *EntryName, OUT CHAR8 **EntryValue)
 
EFI_STATUS EFIAPI GetGuidFromDataFile (IN VOID *Context, IN CHAR8 *SectionName, IN CHAR8 *EntryName, OUT EFI_GUID *Guid)
 
EFI_STATUS EFIAPI GetDecimalUintnFromDataFile (IN VOID *Context, IN CHAR8 *SectionName, IN CHAR8 *EntryName, OUT UINTN *Data)
 
EFI_STATUS EFIAPI GetHexUintnFromDataFile (IN VOID *Context, IN CHAR8 *SectionName, IN CHAR8 *EntryName, OUT UINTN *Data)
 
EFI_STATUS EFIAPI GetHexUint64FromDataFile (IN VOID *Context, IN CHAR8 *SectionName, IN CHAR8 *EntryName, OUT UINT64 *Data)
 
VOID EFIAPI CloseIniFile (IN VOID *Context)
 

Detailed Description

INI configuration parsing library.

The INI file format is:

[SectionName]

EntryName=EntryValue

Where: 1) SectionName is an ASCII string. The valid format is [A-Za-z0-9_]+ 2) EntryName is an ASCII string. The valid format is [A-Za-z0-9_]+ 3) EntryValue can be: 3.1) an ASCII String. The valid format is [A-Za-z0-9_]+ 3.2) a GUID. The valid format is xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, where x is [A-Fa-f0-9] 3.3) a decimal value. The valid format is [0-9]+ 3.4) a hexadecimal value. The valid format is 0x[A-Fa-f0-9]+ 4) '#' or ';' can be used as comment at anywhere. 5) TAB(0x20) or SPACE(0x9) can be used as separator. 6) LF(
, 0xA) or CR(, 0xD) can be used as line break.

Copyright (c) 2016, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Function Documentation

VOID EFIAPI CloseIniFile ( IN VOID *  Context)

Close an INI config file and free the context.

Parameters
[in]ContextINI Config file context.
EFI_STATUS EFIAPI GetDecimalUintnFromDataFile ( IN VOID *  Context,
IN CHAR8 *  SectionName,
IN CHAR8 *  EntryName,
OUT UINTN *  Data 
)

Get section entry decimal UINTN value.

Parameters
[in]ContextINI Config file context.
[in]SectionNameSection name.
[in]EntryNameSection entry name.
[out]DataPoint to the got decimal UINTN value.
Return values
EFI_SUCCESSSection entry decimal UINTN value is got.
EFI_NOT_FOUNDSection is not found.
EFI_STATUS EFIAPI GetGuidFromDataFile ( IN VOID *  Context,
IN CHAR8 *  SectionName,
IN CHAR8 *  EntryName,
OUT EFI_GUID *  Guid 
)

Get section entry GUID value.

Parameters
[in]ContextINI Config file context.
[in]SectionNameSection name.
[in]EntryNameSection entry name.
[out]GuidPoint to the got GUID value.
Return values
EFI_SUCCESSSection entry GUID value is got.
EFI_NOT_FOUNDSection is not found.
EFI_STATUS EFIAPI GetHexUint64FromDataFile ( IN VOID *  Context,
IN CHAR8 *  SectionName,
IN CHAR8 *  EntryName,
OUT UINT64 *  Data 
)

Get section entry hexadecimal UINT64 value.

Parameters
[in]ContextINI Config file context.
[in]SectionNameSection name.
[in]EntryNameSection entry name.
[out]DataPoint to the got hexadecimal UINT64 value.
Return values
EFI_SUCCESSSection entry hexadecimal UINT64 value is got.
EFI_NOT_FOUNDSection is not found.
EFI_STATUS EFIAPI GetHexUintnFromDataFile ( IN VOID *  Context,
IN CHAR8 *  SectionName,
IN CHAR8 *  EntryName,
OUT UINTN *  Data 
)

Get section entry hexadecimal UINTN value.

Parameters
[in]ContextINI Config file context.
[in]SectionNameSection name.
[in]EntryNameSection entry name.
[out]DataPoint to the got hexadecimal UINTN value.
Return values
EFI_SUCCESSSection entry hexadecimal UINTN value is got.
EFI_NOT_FOUNDSection is not found.
EFI_STATUS EFIAPI GetStringFromDataFile ( IN VOID *  Context,
IN CHAR8 *  SectionName,
IN CHAR8 *  EntryName,
OUT CHAR8 **  EntryValue 
)

Get section entry string value.

Parameters
[in]ContextINI Config file context.
[in]SectionNameSection name.
[in]EntryNameSection entry name.
[out]EntryValuePoint to the got entry string value.
Return values
EFI_SUCCESSSection entry string value is got.
EFI_NOT_FOUNDSection is not found.
VOID* EFIAPI OpenIniFile ( IN UINT8 *  DataBuffer,
IN UINTN  BufferSize 
)

Open an INI config file and return a context.

Parameters
[in]DataBufferConfig raw file buffer.
[in]BufferSizeSize of raw buffer.
Returns
Config data buffer is opened and context is returned.
Return values
NULLNo enough memory is allocated.
NULLConfig data buffer is invalid.