mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-22 21:24:35 +02:00
StdLib, StdLibPrivateInternalFiles: Clean up comments, Remove debugging code, Define MAX_OUTPUT, the Maximum number of bytes in a single terminal output operation.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Daryl McDaniel <daryl.mcdaniel@intel.com> Reviewed-by: Jaben Carsey <jcarsey@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13735 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
2ca8548911
commit
a9c12422ff
@ -1,6 +1,6 @@
|
|||||||
/** @file
|
/** @file
|
||||||
|
|
||||||
Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials are licensed and made
|
This program and the accompanying materials are licensed and made
|
||||||
available under the terms and conditions of the BSD License that
|
available under the terms and conditions of the BSD License that
|
||||||
accompanies this distribution. The full text of the license may be found at
|
accompanies this distribution. The full text of the license may be found at
|
||||||
@ -90,16 +90,18 @@ struct stat {
|
|||||||
/* The Octal access modes, above, fall into the Hex mask 0x00000FFF.
|
/* The Octal access modes, above, fall into the Hex mask 0x00000FFF.
|
||||||
Traditionally, the remainder of the flags are specified in Octal
|
Traditionally, the remainder of the flags are specified in Octal
|
||||||
but they are expressed in Hex here for modern clarity.
|
but they are expressed in Hex here for modern clarity.
|
||||||
|
|
||||||
|
The basic file types, specified within 0x0000F000, are mutually exclusive.
|
||||||
*/
|
*/
|
||||||
#define _S_IFMT 0x000FF000 ///< type-of-file mask
|
#define _S_IFMT 0x000FF000 ///< type-of-file mask
|
||||||
#define _S_IFIFO 0x00001000 ///< named pipe (fifo)
|
#define _S_IFIFO 0x00001000 ///< named pipe (fifo)
|
||||||
#define _S_IFCHR 0x00002000 ///< character special
|
#define _S_IFCHR 0x00002000 ///< character special device
|
||||||
#define _S_IFDIR 0x00004000 ///< directory
|
#define _S_IFDIR 0x00004000 ///< directory
|
||||||
#define _S_IFBLK 0x00006000 ///< block special
|
#define _S_IFBLK 0x00006000 ///< block special device
|
||||||
#define _S_IFREG 0x00008000 ///< regular
|
#define _S_IFREG 0x00008000 ///< regular
|
||||||
#define _S_IFSOCK 0x0000C000 ///< socket
|
#define _S_IFSOCK 0x0000C000 ///< socket
|
||||||
#define _S_ITTY 0x00010000 ///< File connects to a TTY device
|
#define _S_ITTY 0x00010000 ///< File connects to a TTY device
|
||||||
#define _S_IWTTY 0x00020000 ///< TTY receives Wide characters
|
#define _S_IWTTY 0x00020000 ///< TTY sends and receives Wide characters
|
||||||
#define _S_ICONSOLE 0x00030000 ///< UEFI Console Device
|
#define _S_ICONSOLE 0x00030000 ///< UEFI Console Device
|
||||||
|
|
||||||
/* UEFI specific (FAT file system) File attributes.
|
/* UEFI specific (FAT file system) File attributes.
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
Platform specific values for <limits.h>.
|
Platform specific values for <limits.h>.
|
||||||
|
|
||||||
Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials are licensed and made available under
|
This program and the accompanying materials are licensed and made available under
|
||||||
the terms and conditions of the BSD License that accompanies this distribution.
|
the terms and conditions of the BSD License that accompanies this distribution.
|
||||||
The full text of the license may be found at
|
The full text of the license may be found at
|
||||||
@ -50,6 +50,7 @@
|
|||||||
#define ARGC_MAX (64) ///< Maximum value for argc.
|
#define ARGC_MAX (64) ///< Maximum value for argc.
|
||||||
|
|
||||||
#define MAX_INPUT 255 ///< Maximum bytes in terminal input.
|
#define MAX_INPUT 255 ///< Maximum bytes in terminal input.
|
||||||
|
#define MAX_OUTPUT 255 ///< Maximum bytes in terminal output.
|
||||||
#define NAME_MAX 255 ///< Maximum bytes in a file name.
|
#define NAME_MAX 255 ///< Maximum bytes in a file name.
|
||||||
#ifndef OPEN_MAX
|
#ifndef OPEN_MAX
|
||||||
#define OPEN_MAX 20 ///< Maximum open files per process.
|
#define OPEN_MAX 20 ///< Maximum open files per process.
|
||||||
|
@ -150,7 +150,7 @@
|
|||||||
- WEOF might not be negative.
|
- WEOF might not be negative.
|
||||||
- mbstate_t objects are not intended to be inspected by programs.
|
- mbstate_t objects are not intended to be inspected by programs.
|
||||||
|
|
||||||
Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials are licensed and made available under
|
This program and the accompanying materials are licensed and made available under
|
||||||
the terms and conditions of the BSD License that accompanies this distribution.
|
the terms and conditions of the BSD License that accompanies this distribution.
|
||||||
The full text of the license may be found at
|
The full text of the license may be found at
|
||||||
@ -913,7 +913,7 @@ wint_t fgetwc(FILE *Stream);
|
|||||||
@param[out] S A pointer to the array to receive the input string.
|
@param[out] S A pointer to the array to receive the input string.
|
||||||
@param[in] Limit The maximum number of characters to put into Buff,
|
@param[in] Limit The maximum number of characters to put into Buff,
|
||||||
including the terminating null character.
|
including the terminating null character.
|
||||||
@param[in] Stream An input stream from which to obtain a character.
|
@param[in] Stream An input stream from which to obtain the string.
|
||||||
|
|
||||||
@return The fgetws function returns S if successful. If end-of-file is
|
@return The fgetws function returns S if successful. If end-of-file is
|
||||||
encountered and no characters have been read into the array, the
|
encountered and no characters have been read into the array, the
|
||||||
@ -1420,7 +1420,7 @@ int mbsinit(const mbstate_t *ps);
|
|||||||
**/
|
**/
|
||||||
size_t mbrlen(const char * __restrict S, size_t n, mbstate_t * __restrict ps);
|
size_t mbrlen(const char * __restrict S, size_t n, mbstate_t * __restrict ps);
|
||||||
|
|
||||||
/**
|
/** Restartable Multibyte to Wide character conversion.
|
||||||
If S is a null pointer, the mbrtowc function is equivalent to the call:<BR>
|
If S is a null pointer, the mbrtowc function is equivalent to the call:<BR>
|
||||||
@verbatim
|
@verbatim
|
||||||
mbrtowc(NULL, "", 1, ps)
|
mbrtowc(NULL, "", 1, ps)
|
||||||
@ -1476,22 +1476,27 @@ to restore the initial shift state; the resulting state described is the initial
|
|||||||
**/
|
**/
|
||||||
size_t wcrtomb(char * __restrict S, wchar_t wc, mbstate_t * __restrict ps);
|
size_t wcrtomb(char * __restrict S, wchar_t wc, mbstate_t * __restrict ps);
|
||||||
|
|
||||||
/**
|
/** Convert a sequence of multibyte characters into a sequence of wide characters.
|
||||||
The mbsrtowcs function converts a sequence of multibyte characters that begins in the
|
The mbsrtowcs function converts a sequence of multibyte characters that begins in the
|
||||||
conversion state described by the object pointed to by ps, from the array indirectly
|
conversion state described by the object pointed to by ps, from the array indirectly
|
||||||
pointed to by src into a sequence of corresponding wide characters. If dst is not a null
|
pointed to by src into a sequence of corresponding wide characters. If dst is not a null
|
||||||
pointer, the converted characters are stored into the array pointed to by dst. Conversion
|
pointer, the converted characters are stored into the array pointed to by dst. Conversion
|
||||||
continues up to and including a terminating null character, which is also stored.
|
continues up to and including a terminating null character, which is also stored.
|
||||||
Conversion stops earlier in two cases: when a sequence of bytes is encountered that does
|
Conversion stops earlier in two cases: when a sequence of bytes is encountered that does
|
||||||
not form a valid multibyte character, or (if dst is not a null pointer) when len wide
|
not form a valid multibyte character, or (if dst is not a null pointer) when len wide
|
||||||
characters have been stored into the array pointed to by dst. Each conversion takes
|
characters have been stored into the array pointed to by dst. Each conversion takes
|
||||||
place as if by a call to the mbrtowc function.
|
place as if by a call to the mbrtowc function.
|
||||||
|
|
||||||
If dst is not a null pointer, the pointer object pointed to by src is assigned either a null
|
If dst is not a null pointer, the pointer object pointed to by src is assigned either a null
|
||||||
pointer (if conversion stopped due to reaching a terminating null character) or the address
|
pointer (if conversion stopped due to reaching a terminating null character) or the address
|
||||||
just past the last multibyte character converted (if any). If conversion stopped due to
|
just past the last multibyte character converted (if any). If conversion stopped due to
|
||||||
reaching a terminating null character and if dst is not a null pointer, the resulting state
|
reaching a terminating null character and if dst is not a null pointer, the resulting state
|
||||||
described is the initial conversion state.
|
described is the initial conversion state.
|
||||||
|
|
||||||
|
@param[in] dst Destination for the Wide character sequence.
|
||||||
|
@param[in] src Pointer to Pointer to MBCS char. sequence to convert.
|
||||||
|
@param[in] len Length of dest, in WIDE characters.
|
||||||
|
@param[in] ps Pointer to the conversion state object to be used for this conversion.
|
||||||
|
|
||||||
@return If the input conversion encounters a sequence of bytes that do
|
@return If the input conversion encounters a sequence of bytes that do
|
||||||
not form a valid multibyte character, an encoding error occurs:
|
not form a valid multibyte character, an encoding error occurs:
|
||||||
@ -1523,6 +1528,11 @@ size_t mbsrtowcs(wchar_t * __restrict dst, const char ** __restrict src, size_t
|
|||||||
terminating null wide character, the resulting state described is the
|
terminating null wide character, the resulting state described is the
|
||||||
initial conversion state.
|
initial conversion state.
|
||||||
|
|
||||||
|
@param[in] dst Destination for the MBCS sequence.
|
||||||
|
@param[in] src Pointer to Pointer to wide char. sequence to convert.
|
||||||
|
@param[in] len Length of dest, in bytes.
|
||||||
|
@param[in] ps Pointer to the conversion state object to be used for this conversion.
|
||||||
|
|
||||||
@return If conversion stops because a wide character is reached that
|
@return If conversion stops because a wide character is reached that
|
||||||
does not correspond to a valid multibyte character, an
|
does not correspond to a valid multibyte character, an
|
||||||
encoding error occurs: the wcsrtombs function stores the
|
encoding error occurs: the wcsrtombs function stores the
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials are licensed and made available
|
This program and the accompanying materials are licensed and made available
|
||||||
under the terms and conditions of the BSD License that accompanies this
|
under the terms and conditions of the BSD License that accompanies this
|
||||||
distribution. The full text of the license may be found at
|
distribution. The full text of the license may be found at
|
||||||
@ -41,9 +41,6 @@
|
|||||||
NetBSD: refill.c,v 1.13 2003/08/07 16:43:30 agc Exp
|
NetBSD: refill.c,v 1.13 2003/08/07 16:43:30 agc Exp
|
||||||
refill.c 8.1 (Berkeley) 6/4/93
|
refill.c 8.1 (Berkeley) 6/4/93
|
||||||
*/
|
*/
|
||||||
#include <Uefi.h> // REMOVE, For DEBUG only
|
|
||||||
#include <Library/UefiLib.h> // REMOVE, For DEBUG only
|
|
||||||
|
|
||||||
#include <LibConfig.h>
|
#include <LibConfig.h>
|
||||||
#include <sys/EfiCdefs.h>
|
#include <sys/EfiCdefs.h>
|
||||||
|
|
||||||
@ -93,28 +90,23 @@ __srefill(FILE *fp)
|
|||||||
if (!__sdidinit)
|
if (!__sdidinit)
|
||||||
__sinit();
|
__sinit();
|
||||||
|
|
||||||
//Print(L"%a( %d)\n", __func__, fp->_file);
|
|
||||||
fp->_r = 0; /* largely a convenience for callers */
|
fp->_r = 0; /* largely a convenience for callers */
|
||||||
|
|
||||||
/* SysV does not make this test; take it out for compatibility */
|
/* SysV does not make this test; take it out for compatibility */
|
||||||
if (fp->_flags & __SEOF) {
|
if (fp->_flags & __SEOF) {
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
return (EOF);
|
return (EOF);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* if not already reading, have to be reading and writing */
|
/* if not already reading, have to be reading and writing */
|
||||||
if ((fp->_flags & __SRD) == 0) {
|
if ((fp->_flags & __SRD) == 0) {
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
if ((fp->_flags & __SRW) == 0) {
|
if ((fp->_flags & __SRW) == 0) {
|
||||||
errno = EBADF;
|
errno = EBADF;
|
||||||
fp->_flags |= __SERR; //<dvm> Allows differentiation between errors and EOF
|
fp->_flags |= __SERR; //<dvm> Allows differentiation between errors and EOF
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
return (EOF);
|
return (EOF);
|
||||||
}
|
}
|
||||||
/* switch to reading */
|
/* switch to reading */
|
||||||
if (fp->_flags & __SWR) {
|
if (fp->_flags & __SWR) {
|
||||||
if (__sflush(fp)) {
|
if (__sflush(fp)) {
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
return (EOF);
|
return (EOF);
|
||||||
}
|
}
|
||||||
fp->_flags &= ~__SWR;
|
fp->_flags &= ~__SWR;
|
||||||
@ -123,7 +115,6 @@ __srefill(FILE *fp)
|
|||||||
}
|
}
|
||||||
fp->_flags |= __SRD;
|
fp->_flags |= __SRD;
|
||||||
} else {
|
} else {
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
/*
|
/*
|
||||||
* We were reading. If there is an ungetc buffer,
|
* We were reading. If there is an ungetc buffer,
|
||||||
* we must have been reading from that. Drop it,
|
* we must have been reading from that. Drop it,
|
||||||
@ -134,7 +125,6 @@ __srefill(FILE *fp)
|
|||||||
FREEUB(fp);
|
FREEUB(fp);
|
||||||
if ((fp->_r = fp->_ur) != 0) {
|
if ((fp->_r = fp->_ur) != 0) {
|
||||||
fp->_p = fp->_up;
|
fp->_p = fp->_up;
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -143,7 +133,6 @@ __srefill(FILE *fp)
|
|||||||
if (fp->_bf._base == NULL)
|
if (fp->_bf._base == NULL)
|
||||||
__smakebuf(fp);
|
__smakebuf(fp);
|
||||||
|
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
/*
|
/*
|
||||||
* Before reading from a line buffered or unbuffered file,
|
* Before reading from a line buffered or unbuffered file,
|
||||||
* flush all line buffered output files, per the ANSI C
|
* flush all line buffered output files, per the ANSI C
|
||||||
@ -153,7 +142,6 @@ __srefill(FILE *fp)
|
|||||||
rwlock_rdlock(&__sfp_lock);
|
rwlock_rdlock(&__sfp_lock);
|
||||||
(void) _fwalk(lflush);
|
(void) _fwalk(lflush);
|
||||||
rwlock_unlock(&__sfp_lock);
|
rwlock_unlock(&__sfp_lock);
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
}
|
}
|
||||||
fp->_p = fp->_bf._base;
|
fp->_p = fp->_bf._base;
|
||||||
fp->_r = (*fp->_read)(fp->_cookie, (char *)fp->_p, fp->_bf._size);
|
fp->_r = (*fp->_read)(fp->_cookie, (char *)fp->_p, fp->_bf._size);
|
||||||
@ -165,9 +153,7 @@ __srefill(FILE *fp)
|
|||||||
fp->_r = 0;
|
fp->_r = 0;
|
||||||
fp->_flags |= __SERR;
|
fp->_flags |= __SERR;
|
||||||
}
|
}
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
return (EOF);
|
return (EOF);
|
||||||
}
|
}
|
||||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
/** @file
|
/** @file
|
||||||
The EFI kernel's interpretation of a "file".
|
The EFI kernel's interpretation of a "file".
|
||||||
|
|
||||||
Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
|
Copyright (c) 2012, Intel Corporation. All rights reserved.<BR>
|
||||||
This program and the accompanying materials are licensed and made available
|
This program and the accompanying materials are licensed and made available
|
||||||
under the terms and conditions of the BSD License which accompanies this
|
under the terms and conditions of the BSD License which accompanies this
|
||||||
distribution. The full text of the license may be found at
|
distribution. The full text of the license may be found at
|
||||||
@ -82,8 +82,16 @@ struct _Device_Node;
|
|||||||
struct __filedes {
|
struct __filedes {
|
||||||
off_t f_offset; /* current position in file */
|
off_t f_offset; /* current position in file */
|
||||||
const struct fileops *f_ops;
|
const struct fileops *f_ops;
|
||||||
|
|
||||||
|
/* The devdata member has different meanings depending upon whether
|
||||||
|
a block oriented or character oriented device is being accessed.
|
||||||
|
For block devices, devdata holds an EFI handle to the open file or directory.
|
||||||
|
For character devices, devdata points to the device's IIO structure,
|
||||||
|
if it has one. It may be NULL indicating a non-interactive character
|
||||||
|
device.
|
||||||
|
*/
|
||||||
void *devdata; /* Device-specific data */
|
void *devdata; /* Device-specific data */
|
||||||
int Oflags; // From the open call
|
int Oflags; // From the open call, see fcntl.h
|
||||||
int Omode; // From the open call
|
int Omode; // From the open call
|
||||||
int RefCount; // Reference count of opens
|
int RefCount; // Reference count of opens
|
||||||
UINT32 f_flag; /* see fcntl.h */
|
UINT32 f_flag; /* see fcntl.h */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user