]> git.proxmox.com Git - mirror_edk2.git/blame - StdLibPrivateInternalFiles/Include/extern.h
EDK II Packages: Add Contributions.txt and License.txt files
[mirror_edk2.git] / StdLibPrivateInternalFiles / Include / extern.h
CommitLineData
d78fab6b 1/* @file\r
2 Misc. external declarations.\r
3\r
4 Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>\r
5 This program and the accompanying materials are licensed and made available under\r
6 the terms and conditions of the BSD License that accompanies this distribution.\r
7 The full text of the license may be found at\r
8 http://opensource.org/licenses/bsd-license.\r
9\r
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
2aa62f2b 12\r
2aa62f2b 13 * Copyright (c) 1997 Christos Zoulas. All rights reserved.\r
14 *\r
15 * Redistribution and use in source and binary forms, with or without\r
16 * modification, are permitted provided that the following conditions\r
17 * are met:\r
18 * 1. Redistributions of source code must retain the above copyright\r
19 * notice, this list of conditions and the following disclaimer.\r
20 * 2. Redistributions in binary form must reproduce the above copyright\r
21 * notice, this list of conditions and the following disclaimer in the\r
22 * documentation and/or other materials provided with the distribution.\r
23 * 3. All advertising materials mentioning features or use of this software\r
24 * must display the following acknowledgement:\r
25 * This product includes software developed by Christos Zoulas.\r
26 * 4. The name of the author may not be used to endorse or promote products\r
27 * derived from this software without specific prior written permission.\r
28 *\r
29 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR\r
30 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\r
31 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.\r
32 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,\r
33 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT\r
34 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\r
35 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\r
36 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\r
37 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF\r
38 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
d78fab6b 39\r
40 NetBSD: extern.h,v 1.14 2006/11/22 17:23:25 christos Exp\r
2aa62f2b 41 */\r
42#include <Uefi.h>\r
43#include <time.h>\r
44\r
45__BEGIN_DECLS\r
d78fab6b 46extern char * __minbrk;\r
47int __getcwd(char *, size_t);\r
48int __getlogin(char *, size_t);\r
49int __setlogin(const char *);\r
50void _resumecontext(void);\r
51const char * __strerror(int , char *, size_t);\r
52const char * __strsignal(int , char *, size_t);\r
53char * __dtoa(double, int, int, int *, int *, char **);\r
54void __freedtoa(char *);\r
55int __sysctl(const int *, unsigned int, void *, size_t *, const void *, size_t);\r
2aa62f2b 56\r
d78fab6b 57#ifdef HAVE_SIGACTION\r
58 struct sigaction;\r
59 int __sigaction_sigtramp (int, const struct sigaction *,\r
60 struct sigaction *, const void *, int);\r
61#endif /* HAVE_SIGACTION */\r
2aa62f2b 62\r
63#ifdef WIDE_DOUBLE\r
d78fab6b 64 char * __hdtoa(double, const char *, int, int *, int *, char **);\r
65 char * __hldtoa(long double, const char *, int, int *, int *, char **);\r
66 char * __ldtoa(long double *, int, int, int *, int *, char **);\r
2aa62f2b 67#endif\r
68\r
d78fab6b 69#ifdef HAVE_SYSLOG\r
70 struct syslog_data;\r
71 void syslog_ss(int, struct syslog_data *, const char *, ...)\r
72 __attribute__((__format__(__printf__,3,4)));\r
73 void vsyslog_ss(int, struct syslog_data *, const char *, _BSD_VA_LIST_);\r
74#endif /* HAVE_SYSLOG */\r
75\r
76#ifdef HAVE_SNPRINTF_SS\r
77 int snprintf_ss(char * __restrict, size_t, const char * __restrict, ...)\r
78 __attribute__((__format__(__printf__, 3, 4)));\r
79#endif /* HAVE_SNPRINTF_SS */\r
2aa62f2b 80\r
d78fab6b 81#ifdef HAVE_VSNPRINTF_SS\r
82 int vsnprintf_ss(char * __restrict, size_t, const char * __restrict,\r
83 _BSD_VA_LIST_) __attribute__((__format__(__printf__, 3, 0)));\r
84#endif /* HAVE_VSNPRINTF_SS */\r
2aa62f2b 85\r
86void Efi2Tm( EFI_TIME *ET, struct tm *BT);\r
87time_t Efi2Time( EFI_TIME *EfiBDtime);\r
88\r
89__END_DECLS\r