summaryrefslogtreecommitdiff
path: root/StdLib/LibC/Stdio
diff options
context:
space:
mode:
authordarylm503 <darylm503@6f19259b-4bc3-4df7-8a09-765794883524>2011-11-30 00:52:45 +0000
committerdarylm503 <darylm503@6f19259b-4bc3-4df7-8a09-765794883524>2011-11-30 00:52:45 +0000
commit0c1992fbccd139e9d3bb730c19a79847c6a5a246 (patch)
tree39ea4e848572274ead5dddc7095c14ca1898b9f2 /StdLib/LibC/Stdio
parent8f04ca1a8f3828da0041f96c5cb9f597b3d3e614 (diff)
downloadedk2-platforms-0c1992fbccd139e9d3bb730c19a79847c6a5a246.tar.xz
StdLib: Add isDirSep character classification macro and function. Implement several Posix functions and clean up EfiSysCall.h. Align file mode handling with UEFI file protocol flags.
Include/ctype.h: Function declaration and Macro definition of isDirSep Include/unistd.h: Declarations added from EfiSysCall.h Include/utime.h: New file. For the Posix utime() function. Include/sys/_ctype.h: Update character class bit maps. Include/sys/EfiSysCall.h: Move declarations to unistd.h Include/sys/fcntl.h: Improve comments. Add UEFI-specific macros. Include/sys/filio.h: Remove declarations for unsupported file ioctls. Include/sys/stat.h: Fix flags. Add macros and declarations. Include/sys/time.h: Add declarations for new functions Tm2Efi() and Time2Efi(). Include/sys/types.h: Use EFI-specific instead of BSD-specific definitions for typedefs. Include/sys/unistd.h: Delete inappropriate content. Guard macro definitions. LibC/Locale/setlocale.c LibC/Stdio/{fdopen.c, findfp.c, fopen.c, freopen.c, gettemp.c, makebuf.c, mktemp.c, remove.c, stdio.c, tempnam.c, tmpfile.c, tmpnam.c} LibC/Time/{itimer.c, ZoneProc.c} LibC/Uefi/SysCalls.c LibC/Uefi/Devices/Console/daConsole.c LibC/Uefi/Devices/UefiShell/daShell.c PosixLib/Gen/readdir.c Include unistd.h instead of EfiSysCall.h LibC/Ctype/CClass.c: Character classification function implementation for isDirSep. LibC/Ctype/iCtype.c: Update character classification and case conversion tables. LibC/Time/TimeEfi.c: Improve comments. Implement new functions Tm2Efi() and Time2Efi(). LibC/Uefi/StubFunctions.c: Add missing include. Cosmetic changes to declarations. LibC/Uefi/SysCalls.c: Add support function for utime(). LibC/Uefi/Uefi.inf: Add LibGen library class dependency. LibC/Uefi/Xform.c: Enhance Omode2EFI(). LibC/Uefi/Devices/UefiShell/daShell.c: Enhance da_ShellMkdir. Implement da_ShellIoctl to set file times. PosixLib/Gen/access.c: New file. Implement the access() function. PosixLib/Gen/dirname.c: Enhance to use isDirSep and differentiate between the device, path, and filename components of UEFI Shell-style paths. PosixLib/Gen/utime.c: New file. Implement the utime() function. PosixLib/Gen/LibGen.inf: Change MODULE_TYPE. Add new files. Signed-off-by: darylm503 Reviewed-by: geekboy15a Reviewed-by: jljusten Reviewed-by: Rahul Khana Reviewed-by: leegrosenbaum git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12800 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'StdLib/LibC/Stdio')
-rw-r--r--StdLib/LibC/Stdio/fdopen.c26
-rw-r--r--StdLib/LibC/Stdio/findfp.c26
-rw-r--r--StdLib/LibC/Stdio/fopen.c4
-rw-r--r--StdLib/LibC/Stdio/freopen.c2
-rw-r--r--StdLib/LibC/Stdio/gettemp.c12
-rw-r--r--StdLib/LibC/Stdio/makebuf.c2
-rw-r--r--StdLib/LibC/Stdio/mktemp.c4
-rw-r--r--StdLib/LibC/Stdio/remove.c26
-rw-r--r--StdLib/LibC/Stdio/stdio.c2
-rw-r--r--StdLib/LibC/Stdio/tempnam.c26
-rw-r--r--StdLib/LibC/Stdio/tmpfile.c26
-rw-r--r--StdLib/LibC/Stdio/tmpnam.c6
12 files changed, 88 insertions, 74 deletions
diff --git a/StdLib/LibC/Stdio/fdopen.c b/StdLib/LibC/Stdio/fdopen.c
index 3a728951f6..4c6902396e 100644
--- a/StdLib/LibC/Stdio/fdopen.c
+++ b/StdLib/LibC/Stdio/fdopen.c
@@ -1,6 +1,14 @@
-/* $NetBSD: fdopen.c,v 1.14 2003/08/07 16:43:22 agc Exp $ */
+/** @file
+
+ Copyright (c) 2011, 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
+ http://opensource.org/licenses/bsd-license.
+
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
@@ -30,16 +38,12 @@
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
- */
+
+ NetBSD: fdopen.c,v 1.14 2003/08/07 16:43:22 agc Exp
+ fdopen.c 8.1 (Berkeley) 6/4/93
+**/
#include <LibConfig.h>
#include <sys/EfiCdefs.h>
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)fdopen.c 8.1 (Berkeley) 6/4/93";
-#else
-__RCSID("$NetBSD: fdopen.c,v 1.14 2003/08/07 16:43:22 agc Exp $");
-#endif
-#endif /* LIBC_SCCS and not lint */
#include "namespace.h"
#include <sys/types.h>
@@ -47,8 +51,8 @@ __RCSID("$NetBSD: fdopen.c,v 1.14 2003/08/07 16:43:22 agc Exp $");
#include <assert.h>
#include <errno.h>
#include <fcntl.h>
-#include <sys/EfiSysCall.h>
#include <stdio.h>
+#include <unistd.h>
#include "reentrant.h"
#include "local.h"
diff --git a/StdLib/LibC/Stdio/findfp.c b/StdLib/LibC/Stdio/findfp.c
index b6495c3bcb..bc8bfe3d29 100644
--- a/StdLib/LibC/Stdio/findfp.c
+++ b/StdLib/LibC/Stdio/findfp.c
@@ -1,6 +1,14 @@
-/* $NetBSD: findfp.c,v 1.23 2006/10/07 21:40:46 thorpej Exp $ */
+/** @file
+
+ Copyright (c) 2011, 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
+ http://opensource.org/licenses/bsd-license.
+
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
@@ -30,24 +38,20 @@
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
- */
+
+ NetBSD: findfp.c,v 1.23 2006/10/07 21:40:46 thorpej Exp
+ findfp.c 8.2 (Berkeley) 1/4/94
+**/
#include <LibConfig.h>
#include <sys/EfiCdefs.h>
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)findfp.c 8.2 (Berkeley) 1/4/94";
-#else
-__RCSID("$NetBSD: findfp.c,v 1.23 2006/10/07 21:40:46 thorpej Exp $");
-#endif
-#endif /* LIBC_SCCS and not lint */
#include "namespace.h"
#include <sys/param.h>
-#include <sys/EfiSysCall.h>
#include <stdio.h>
#include <errno.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include "reentrant.h"
#include "local.h"
#include "glue.h"
diff --git a/StdLib/LibC/Stdio/fopen.c b/StdLib/LibC/Stdio/fopen.c
index 4b3c14cd28..9fc0f6dd4c 100644
--- a/StdLib/LibC/Stdio/fopen.c
+++ b/StdLib/LibC/Stdio/fopen.c
@@ -1,7 +1,7 @@
/** @file
Implementation of fopen as declared in <stdio.h>.
- Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2010 - 2011, 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,9 +50,9 @@
#include <sys/stat.h>
#include <assert.h>
#include <fcntl.h>
-#include <sys/EfiSysCall.h>
#include <stdio.h>
#include <errno.h>
+#include <unistd.h>
#include "reentrant.h"
#include "local.h"
diff --git a/StdLib/LibC/Stdio/freopen.c b/StdLib/LibC/Stdio/freopen.c
index 75a086b84b..58381e6d19 100644
--- a/StdLib/LibC/Stdio/freopen.c
+++ b/StdLib/LibC/Stdio/freopen.c
@@ -52,10 +52,10 @@
#include <assert.h>
#include <errno.h>
#include <fcntl.h>
-#include <sys/EfiSysCall.h>
#include <stdio.h>
#include <stdlib.h>
#include <wchar.h>
+#include <unistd.h>
#include "reentrant.h"
#include "local.h"
diff --git a/StdLib/LibC/Stdio/gettemp.c b/StdLib/LibC/Stdio/gettemp.c
index 7b1c564c9a..0773340ad8 100644
--- a/StdLib/LibC/Stdio/gettemp.c
+++ b/StdLib/LibC/Stdio/gettemp.c
@@ -1,7 +1,7 @@
/** @file
Internal function to generate temporary file name for tmpnam.
- Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2010 - 2011, 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
@@ -37,6 +37,7 @@
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
+ mktemp.c 8.1 (Berkeley) 6/4/93
NetBSD: gettemp.c,v 1.13 2003/12/05 00:57:36 uebayasi Exp
**/
#include <LibConfig.h>
@@ -48,13 +49,6 @@
#if !defined(HAVE_NBTOOL_CONFIG_H) || !defined(HAVE_MKSTEMP) || !defined(HAVE_MKDTEMP)
#include <sys/EfiCdefs.h>
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)mktemp.c 8.1 (Berkeley) 6/4/93";
-#else
-__RCSID("$NetBSD: gettemp.c,v 1.13 2003/12/05 00:57:36 uebayasi Exp $");
-#endif
-#endif /* LIBC_SCCS and not lint */
#include <sys/types.h>
#include <sys/stat.h>
@@ -65,7 +59,7 @@ __RCSID("$NetBSD: gettemp.c,v 1.13 2003/12/05 00:57:36 uebayasi Exp $");
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
-#include <sys/EfiSysCall.h>
+#include <unistd.h>
#if HAVE_NBTOOL_CONFIG_H
#define GETTEMP gettemp
diff --git a/StdLib/LibC/Stdio/makebuf.c b/StdLib/LibC/Stdio/makebuf.c
index 4e69be1275..1b5991489c 100644
--- a/StdLib/LibC/Stdio/makebuf.c
+++ b/StdLib/LibC/Stdio/makebuf.c
@@ -52,7 +52,7 @@
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
-#include <sys/EfiSysCall.h>
+#include <unistd.h>
#include "reentrant.h"
#include "local.h"
#include <MainData.h>
diff --git a/StdLib/LibC/Stdio/mktemp.c b/StdLib/LibC/Stdio/mktemp.c
index 4c9e4752cc..a20eddaf99 100644
--- a/StdLib/LibC/Stdio/mktemp.c
+++ b/StdLib/LibC/Stdio/mktemp.c
@@ -1,7 +1,7 @@
/** @file
Internal function for tmpnam.
- Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2010 - 2011, 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
@@ -46,7 +46,7 @@ mktemp.c 8.1 (Berkeley) 6/4/93
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
-#include <sys/EfiSysCall.h>
+#include <unistd.h>
#include "reentrant.h"
#include "local.h"
diff --git a/StdLib/LibC/Stdio/remove.c b/StdLib/LibC/Stdio/remove.c
index 826471cde5..7f53f95be1 100644
--- a/StdLib/LibC/Stdio/remove.c
+++ b/StdLib/LibC/Stdio/remove.c
@@ -1,6 +1,14 @@
-/* $NetBSD: remove.c,v 1.13 2003/08/07 16:43:30 agc Exp $ */
+/** @file
+
+ Copyright (c) 2011, 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
+ http://opensource.org/licenses/bsd-license.
+
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
@@ -30,16 +38,12 @@
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
- */
+
+ remove.c 8.1 (Berkeley) 6/4/93
+ NetBSD: remove.c,v 1.13 2003/08/07 16:43:30 agc Exp
+**/
#include <LibConfig.h>
#include <sys/EfiCdefs.h>
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)remove.c 8.1 (Berkeley) 6/4/93";
-#else
-__RCSID("$NetBSD: remove.c,v 1.13 2003/08/07 16:43:30 agc Exp $");
-#endif
-#endif /* LIBC_SCCS and not lint */
#include <sys/types.h>
#include <sys/stat.h>
@@ -47,7 +51,7 @@ __RCSID("$NetBSD: remove.c,v 1.13 2003/08/07 16:43:30 agc Exp $");
#include <assert.h>
#include <errno.h>
#include <stdio.h>
-#include <sys/EfiSysCall.h>
+#include <unistd.h>
int
remove(const char *file)
diff --git a/StdLib/LibC/Stdio/stdio.c b/StdLib/LibC/Stdio/stdio.c
index de8963e574..7b5cc3862d 100644
--- a/StdLib/LibC/Stdio/stdio.c
+++ b/StdLib/LibC/Stdio/stdio.c
@@ -52,7 +52,7 @@
#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
-#include <sys/EfiSysCall.h>
+#include <unistd.h>
#include "reentrant.h"
#include "local.h"
diff --git a/StdLib/LibC/Stdio/tempnam.c b/StdLib/LibC/Stdio/tempnam.c
index f9df427c52..94d2655c8a 100644
--- a/StdLib/LibC/Stdio/tempnam.c
+++ b/StdLib/LibC/Stdio/tempnam.c
@@ -1,6 +1,14 @@
-/* $NetBSD: tempnam.c,v 1.19 2005/07/27 13:23:07 drochner Exp $ */
+/** @file
+
+ Copyright (c) 2011, 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
+ http://opensource.org/licenses/bsd-license.
+
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-/*
* Copyright (c) 1988, 1993
* The Regents of the University of California. All rights reserved.
*
@@ -27,16 +35,12 @@
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
- */
+
+ tempnam.c 8.1 (Berkeley) 6/4/93
+ NetBSD: tempnam.c,v 1.19 2005/07/27 13:23:07 drochner Exp
+**/
#include <LibConfig.h>
#include <sys/EfiCdefs.h>
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)tempnam.c 8.1 (Berkeley) 6/4/93";
-#else
-__RCSID("$NetBSD: tempnam.c,v 1.19 2005/07/27 13:23:07 drochner Exp $");
-#endif
-#endif /* LIBC_SCCS and not lint */
#include "namespace.h"
#include <sys/param.h>
@@ -44,7 +48,7 @@ __RCSID("$NetBSD: tempnam.c,v 1.19 2005/07/27 13:23:07 drochner Exp $");
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#include <sys/EfiSysCall.h>
+#include <unistd.h>
#include <paths.h>
#include "reentrant.h"
#include "local.h"
diff --git a/StdLib/LibC/Stdio/tmpfile.c b/StdLib/LibC/Stdio/tmpfile.c
index 97040d58f2..d93787684b 100644
--- a/StdLib/LibC/Stdio/tmpfile.c
+++ b/StdLib/LibC/Stdio/tmpfile.c
@@ -1,6 +1,14 @@
-/* $NetBSD: tmpfile.c,v 1.11 2003/08/07 16:43:33 agc Exp $ */
+/** @file
+
+ Copyright (c) 2011, 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
+ http://opensource.org/licenses/bsd-license.
+
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
@@ -30,26 +38,22 @@
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
- */
+
+ tmpfile.c 8.1 (Berkeley) 6/4/93
+ NetBSD: tmpfile.c,v 1.11 2003/08/07 16:43:33 agc Exp
+**/
#include <LibConfig.h>
#include <sys/EfiCdefs.h>
-#if defined(LIBC_SCCS) && !defined(lint)
-#if 0
-static char sccsid[] = "@(#)tmpfile.c 8.1 (Berkeley) 6/4/93";
-#else
-__RCSID("$NetBSD: tmpfile.c,v 1.11 2003/08/07 16:43:33 agc Exp $");
-#endif
-#endif /* LIBC_SCCS and not lint */
#include "namespace.h"
#include <sys/types.h>
-#include <sys/EfiSysCall.h>
#include <signal.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <paths.h>
+#include <unistd.h>
#define TRAILER "tmp.XXXX"
diff --git a/StdLib/LibC/Stdio/tmpnam.c b/StdLib/LibC/Stdio/tmpnam.c
index 74dd77325a..95c6edd04b 100644
--- a/StdLib/LibC/Stdio/tmpnam.c
+++ b/StdLib/LibC/Stdio/tmpnam.c
@@ -1,11 +1,11 @@
/** @file
Implementation of tmpnam as declared in <stdio.h>.
- Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2010 - 2011, 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
- http://opensource.org/licenses/bsd-license.php.
+ http://opensource.org/licenses/bsd-license
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
@@ -50,7 +50,7 @@
#include <sys/types.h>
#include <paths.h>
#include <stdio.h>
-#include <sys/EfiSysCall.h>
+#include <unistd.h>
#include "reentrant.h"
#include "local.h"