4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/* $NetBSD: extern.h,v 1.14 2006/11/22 17:23:25 christos Exp $ */
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/*
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * Copyright (c) 1997 Christos Zoulas. All rights reserved.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync *
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * Redistribution and use in source and binary forms, with or without
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * modification, are permitted provided that the following conditions
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * are met:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * 1. Redistributions of source code must retain the above copyright
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * notice, this list of conditions and the following disclaimer.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * 2. Redistributions in binary form must reproduce the above copyright
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * notice, this list of conditions and the following disclaimer in the
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * documentation and/or other materials provided with the distribution.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * 3. All advertising materials mentioning features or use of this software
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * must display the following acknowledgement:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * This product includes software developed by Christos Zoulas.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * 4. The name of the author may not be used to endorse or promote products
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * derived from this software without specific prior written permission.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync *
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync */
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#include <Uefi.h>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#include <time.h>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync__BEGIN_DECLS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncextern char *__minbrk;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncint __getcwd(char *, size_t);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncint __getlogin(char *, size_t);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncint __setlogin(const char *);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncvoid _resumecontext(void);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncconst char *__strerror(int , char *, size_t);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncconst char *__strsignal(int , char *, size_t);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncchar *__dtoa(double, int, int, int *, int *, char **);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncvoid __freedtoa(char *);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncint __sysctl(const int *, unsigned int, void *, size_t *, const void *, size_t);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//struct sigaction;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//int __sigaction_sigtramp(int, const struct sigaction *,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync// struct sigaction *, const void *, int);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#ifdef WIDE_DOUBLE
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync char *__hdtoa(double, const char *, int, int *, int *, char **);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync char *__hldtoa(long double, const char *, int, int *, int *, char **);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync char *__ldtoa(long double *, int, int, int *, int *, char **);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#endif
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//struct syslog_data;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//void syslog_ss(int, struct syslog_data *, const char *, ...)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync// __attribute__((__format__(__printf__,3,4)));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//void vsyslog_ss(int, struct syslog_data *, const char *, _BSD_VA_LIST_);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//int snprintf_ss(char * __restrict, size_t, const char * __restrict, ...)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync// __attribute__((__format__(__printf__, 3, 4)));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//int vsnprintf_ss(char * __restrict, size_t, const char * __restrict,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync// _BSD_VA_LIST_) __attribute__((__format__(__printf__, 3, 0)));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncvoid Efi2Tm( EFI_TIME *ET, struct tm *BT);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsynctime_t Efi2Time( EFI_TIME *EfiBDtime);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync__END_DECLS