https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Ray Ni <ray.ni@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
		
			
				
	
	
		
			79 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/** @file
 | 
						|
  Provides interface to shell MAN file parser.
 | 
						|
 | 
						|
  Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>
 | 
						|
  SPDX-License-Identifier: BSD-2-Clause-Patent
 | 
						|
 | 
						|
**/
 | 
						|
 | 
						|
#ifndef _SHELL_MAN_FILE_PARSER_HEADER_
 | 
						|
#define _SHELL_MAN_FILE_PARSER_HEADER_
 | 
						|
 | 
						|
/**
 | 
						|
  This function returns the help information for the specified command. The help text
 | 
						|
  will be parsed from a UEFI Shell manual page. (see UEFI Shell 2.0 Appendix B)
 | 
						|
 | 
						|
  If Sections is specified, then each section name listed will be compared in a casesensitive
 | 
						|
  manner, to the section names described in Appendix B. If the section exists,
 | 
						|
  it will be appended to the returned help text. If the section does not exist, no
 | 
						|
  information will be returned. If Sections is NULL, then all help text information
 | 
						|
  available will be returned.
 | 
						|
 | 
						|
  if BriefDesc is NULL, then the breif description will not be savedd seperatly,
 | 
						|
  but placed first in the main HelpText.
 | 
						|
 | 
						|
  @param[in] ManFileName        Points to the NULL-terminated UEFI Shell MAN file name.
 | 
						|
  @param[in] Command            Points to the NULL-terminated UEFI Shell command name.
 | 
						|
  @param[in] Sections           Points to the NULL-terminated comma-delimited
 | 
						|
                                section names to return. If NULL, then all
 | 
						|
                                sections will be returned.
 | 
						|
  @param[out] BriefDesc         On return, points to a callee-allocated buffer
 | 
						|
                                containing brief description text.
 | 
						|
  @param[out] HelpText          On return, points to a callee-allocated buffer
 | 
						|
                                containing all specified help text.
 | 
						|
 | 
						|
  @retval EFI_SUCCESS           The help text was returned.
 | 
						|
  @retval EFI_OUT_OF_RESOURCES  The necessary buffer could not be allocated to hold the
 | 
						|
                                returned help text.
 | 
						|
  @retval EFI_INVALID_PARAMETER HelpText is NULL
 | 
						|
  @retval EFI_NOT_FOUND         There is no help text available for Command.
 | 
						|
**/
 | 
						|
EFI_STATUS
 | 
						|
ProcessManFile(
 | 
						|
  IN CONST CHAR16 *ManFileName,
 | 
						|
  IN CONST CHAR16 *Command,
 | 
						|
  IN CONST CHAR16 *Sections OPTIONAL,
 | 
						|
  OUT CHAR16      **BriefDesc,
 | 
						|
  OUT CHAR16      **HelpText
 | 
						|
  );
 | 
						|
 | 
						|
/**
 | 
						|
  parses through the MAN file specified by SHELL_FILE_HANDLE and returns the
 | 
						|
  detailed help for any sub section specified in the comma seperated list of
 | 
						|
  sections provided.  If the end of the file or a .TH section is found then
 | 
						|
  return.
 | 
						|
 | 
						|
  Upon a sucessful return the caller is responsible to free the memory in *HelpText
 | 
						|
 | 
						|
  @param[in] Handle             FileHandle to read from
 | 
						|
  @param[in] Sections           name of command's sub sections to find
 | 
						|
  @param[out] HelpText          pointer to pointer to string where text goes.
 | 
						|
  @param[out] HelpSize          pointer to size of allocated HelpText (may be updated)
 | 
						|
  @param[in] Ascii              TRUE if the file is ASCII, FALSE otherwise.
 | 
						|
 | 
						|
  @retval EFI_OUT_OF_RESOURCES  a memory allocation failed.
 | 
						|
  @retval EFI_SUCCESS           the section was found and its description sotred in
 | 
						|
                                an alloceted buffer.
 | 
						|
**/
 | 
						|
EFI_STATUS
 | 
						|
ManFileFindSections(
 | 
						|
  IN SHELL_FILE_HANDLE  Handle,
 | 
						|
  IN CONST CHAR16       *Sections,
 | 
						|
  OUT CHAR16            **HelpText,
 | 
						|
  OUT UINTN             *HelpSize,
 | 
						|
  IN BOOLEAN            Ascii
 | 
						|
  );
 | 
						|
 | 
						|
#endif //_SHELL_MAN_FILE_PARSER_HEADER_
 | 
						|
 |