mirror of https://github.com/acidanthera/audk.git
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
|
||||
|
||||
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 the terms and conditions of the BSD License that
|
||||
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.
|
||||
Traditionally, the remainder of the flags are specified in Octal
|
||||
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_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_IFBLK 0x00006000 ///< block special
|
||||
#define _S_IFBLK 0x00006000 ///< block special device
|
||||
#define _S_IFREG 0x00008000 ///< regular
|
||||
#define _S_IFSOCK 0x0000C000 ///< socket
|
||||
#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
|
||||
|
||||
/* UEFI specific (FAT file system) File attributes.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/** @file
|
||||
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
|
||||
the terms and conditions of the BSD License that accompanies this distribution.
|
||||
The full text of the license may be found at
|
||||
|
@ -50,6 +50,7 @@
|
|||
#define ARGC_MAX (64) ///< Maximum value for argc.
|
||||
|
||||
#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.
|
||||
#ifndef OPEN_MAX
|
||||
#define OPEN_MAX 20 ///< Maximum open files per process.
|
||||
|
|
|
@ -150,7 +150,7 @@
|
|||
- WEOF might not be negative.
|
||||
- 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
|
||||
the terms and conditions of the BSD License that accompanies this distribution.
|
||||
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[in] Limit The maximum number of characters to put into Buff,
|
||||
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
|
||||
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);
|
||||
|
||||
/**
|
||||
/** Restartable Multibyte to Wide character conversion.
|
||||
If S is a null pointer, the mbrtowc function is equivalent to the call:<BR>
|
||||
@verbatim
|
||||
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);
|
||||
|
||||
/**
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
place as if by a call to the mbrtowc function.
|
||||
/** 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
|
||||
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
|
||||
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.
|
||||
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
|
||||
characters have been stored into the array pointed to by dst. Each conversion takes
|
||||
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
|
||||
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
|
||||
reaching a terminating null character and if dst is not a null pointer, the resulting state
|
||||
described is the initial conversion state.
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
does not correspond to a valid multibyte character, an
|
||||
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
|
||||
under the terms and conditions of the BSD License that accompanies this
|
||||
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
|
||||
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 <sys/EfiCdefs.h>
|
||||
|
||||
|
@ -93,28 +90,23 @@ __srefill(FILE *fp)
|
|||
if (!__sdidinit)
|
||||
__sinit();
|
||||
|
||||
//Print(L"%a( %d)\n", __func__, fp->_file);
|
||||
fp->_r = 0; /* largely a convenience for callers */
|
||||
|
||||
/* SysV does not make this test; take it out for compatibility */
|
||||
if (fp->_flags & __SEOF) {
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
return (EOF);
|
||||
}
|
||||
|
||||
/* if not already reading, have to be reading and writing */
|
||||
if ((fp->_flags & __SRD) == 0) {
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
if ((fp->_flags & __SRW) == 0) {
|
||||
errno = EBADF;
|
||||
fp->_flags |= __SERR; //<dvm> Allows differentiation between errors and EOF
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
return (EOF);
|
||||
}
|
||||
/* switch to reading */
|
||||
if (fp->_flags & __SWR) {
|
||||
if (__sflush(fp)) {
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
return (EOF);
|
||||
}
|
||||
fp->_flags &= ~__SWR;
|
||||
|
@ -123,7 +115,6 @@ __srefill(FILE *fp)
|
|||
}
|
||||
fp->_flags |= __SRD;
|
||||
} else {
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
/*
|
||||
* We were reading. If there is an ungetc buffer,
|
||||
* we must have been reading from that. Drop it,
|
||||
|
@ -134,7 +125,6 @@ __srefill(FILE *fp)
|
|||
FREEUB(fp);
|
||||
if ((fp->_r = fp->_ur) != 0) {
|
||||
fp->_p = fp->_up;
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
return (0);
|
||||
}
|
||||
}
|
||||
|
@ -143,7 +133,6 @@ __srefill(FILE *fp)
|
|||
if (fp->_bf._base == NULL)
|
||||
__smakebuf(fp);
|
||||
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
/*
|
||||
* Before reading from a line buffered or unbuffered file,
|
||||
* flush all line buffered output files, per the ANSI C
|
||||
|
@ -153,7 +142,6 @@ __srefill(FILE *fp)
|
|||
rwlock_rdlock(&__sfp_lock);
|
||||
(void) _fwalk(lflush);
|
||||
rwlock_unlock(&__sfp_lock);
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
}
|
||||
fp->_p = fp->_bf._base;
|
||||
fp->_r = (*fp->_read)(fp->_cookie, (char *)fp->_p, fp->_bf._size);
|
||||
|
@ -165,9 +153,7 @@ __srefill(FILE *fp)
|
|||
fp->_r = 0;
|
||||
fp->_flags |= __SERR;
|
||||
}
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
return (EOF);
|
||||
}
|
||||
//Print(L"%a: %d\n", __func__, __LINE__);
|
||||
return (0);
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/** @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
|
||||
under the terms and conditions of the BSD License which accompanies this
|
||||
distribution. The full text of the license may be found at
|
||||
|
@ -82,8 +82,16 @@ struct _Device_Node;
|
|||
struct __filedes {
|
||||
off_t f_offset; /* current position in file */
|
||||
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 */
|
||||
int Oflags; // From the open call
|
||||
int Oflags; // From the open call, see fcntl.h
|
||||
int Omode; // From the open call
|
||||
int RefCount; // Reference count of opens
|
||||
UINT32 f_flag; /* see fcntl.h */
|
||||
|
|
Loading…
Reference in New Issue