llib-lc revision 7c478bd95313f5f23a4c958a745db2134aa03244
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2005 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
/* LINTLIBRARY */
/* PROTOLIB1 */
#include <float.h>
#include <stack_unwind.h>
/*
* This really comes from the crt*.s startup modules.
*/
char **environ;
/*
* POSIX versions of standard libc routines; these aren't extracted
* from the headers above since we cannot #define _POSIX_C_SOURCE.
*/
char *__posix_ctime_r(const time_t *, char *);
int __posix_ttyname_r(int, char *, size_t);
int __posix_getlogin_r(char *, int);
/*
* XPG4 versions of standard libc routines; these aren't extracted
* from the headers above since we cannot #define _XPG4_2.
*/
/*
* These aren't extracted from the headers above because:
* - We cannot #define _STRPTIME_DONTZERO
* - We cannot #define _XPG5
*/
long __sysconf_xpg5(int);
wint_t __getwchar_xpg5(void);
/*
*/
/* _ctype.c */
/* _loc_data.c */
/* _locale.c */
/* _set_tab.c */
/* _xftw.c */
/* a64l.c */
long a64l(const char *);
/* abort.c */
void abort(void);
/* abs.c */
/* assert.c */
/* atexit.c */
void _exithandle(void);
/* atof.c */
double atof(const char *p);
/* atoi.c */
int atoi(const char *p);
/* atol.c */
long atol(const char *p);
/* basename.c */
char *basename(char *s);
/* bcmp.c */
/* bcopy.c */
/* bsearch.c */
/* bzero.c */
/* calloc.c */
/* catclose.c */
/* catgets.c */
/* catopen.c */
/* cfgetispeed.c */
/* cfgetospeed.c */
/* cfree.c */
/* cfsetispeed.c */
/* cfsetospeed.c */
/* cftime.c */
/* clock.c */
/* closedir.c */
/* confstr.c */
/* crypt.c */
/* csetlen.c */
/* ctime.c */
/* ctypefcns.c */
int isalpha(int c);
int isupper(int c);
int islower(int c);
int isdigit(int c);
int isxdigit(int c);
int isalnum(int c);
int isspace(int c);
int ispunct(int c);
int isprint(int c);
int isgraph(int c);
int iscntrl(int c);
int isascii(int c);
int _toupper(int c);
int _tolower(int c);
int toascii(int c);
/* directio.c */
/* dirname.c */
char *dirname(char *s);
/* div.c */
/* drand48.c */
double drand48(void);
long lrand48(void);
long mrand48(void);
/* dup2.c */
/* ecvt.c */
int *_RESTRICT_KYWDsign);
int *_RESTRICT_KYWD sign);
/* errlst.c */
/* euclen.c */
/* execvp.c */
/* VARARGS1 */
int execlp(const char *, const char *, ...);
/* fattach.c */
/* fdetach.c */
/* ffs.c */
/* fmtmsg.c */
/* ftime.c */
/* ftok.c */
/* gcvt.c */
/* getcwd.c */
/* getdate.c */
int getdate_err;
/* getdate_data.c */
/* getdate_gd.c */
/* getdtblsize.c */
int getdtablesize(void);
/* getenv.c */
/* getexecname.c */
const char *getexecname(void);
/* getgrnam.c */
/* gethostid.c */
long gethostid(void);
/* gethz.c */
int gethz(void);
/* getisax.c */
/* getlogin.c */
char *getlogin(void);
char *getlogin_r(char *, int);
/* getmntent.c */
/* getnetgrent.c */
int setnetgrent(const char *grp);
int endnetgrent(void);
/* getopt.c */
/* getopt_long.c */
/* getpagesize.c */
int getpagesize(void);
/* getpw.c */
/* getpwnam.c */
/* getrusage.c */
/* gettimeofday.c */
/* getspent.c */
void setspent(void);
void endspent(void);
/* getspent_r.c */
int str2spwd(const char *, int, void *, char *, int);
/* getsubopt.c */
/* gettxt.c */
/* getusershell.c */
char *getusershell(void);
void endusershell(void);
void setusershell(void);
/* getut.c */
void setutent(void);
void endutent(void);
/* getutx.c */
void setutxent(void);
void endutxent(void);
/* getvfsent.c */
/* getwd.c */
/* getwidth.c */
/* hsearch.c */
void hdestroy(void);
/* iconv.c */
/* imaxabs.c */
/* imaxdiv.c */
/* index.c */
/* initgroups.c */
/* innetgr.c */
const char *domain);
/* insque.c */
/* isaexec.c */
int isaexec(const char *, char *const *, char *const *);
/* isastream.c */
/* isatty.c */
int isatty(int f);
/* killpg.c */
/* l64a.c */
/* lckpwdf.c */
int lckpwdf(void);
int ulckpwdf(void);
/* lfind.c */
/* localeconv.c */
/* lsearch.c */
/* madvise.c */
/* malloc.c */
/* mbstowcs.c */
size_t n);
/* mbtowc.c */
size_t n);
/* memalign.c */
/* memccpy.c */
size_t n);
/* memchr.c */
/* memcmp.c */
/* memcpy.c */
/* memmove.c */
/* memset.c */
/* mkdev.c */
/* mkfifo.c */
/* mktemp.c */
/* mlock.c */
/* mlockall.c */
/* mon.c */
/* msync.c */
/* munlock.c */
/* munlockall.c */
int munlockall(void);
/* ndbm.c */
/* new_list.c */
/* nftw.c */
/* nl_langinfo.c */
/* opendir.c */
/* opt_data.c */
/* perror.c */
void perror(const char *s);
/* psiginfo.c */
/* psignal.c */
/* pt.c */
/* putenv.c */
/* putpwent.c */
/* qsort.c */
/* raise.c */
/* rand.c */
int rand(void);
/* random.c */
long random(void);
/* rctlops.c */
size_t rctlblk_size(void);
/* readdir.c */
/* realpath.c */
/* regexpr.c */
/* rindex.c */
/* rename.c */
/* rewinddir.c */
/* scandir.c */
/* scrwidth.c */
/* seekdir.c */
/* select.c */
/* setlocale.c */
/* setpriority.c */
/* settimeofday.c */
/* sigflag.c */
/* siglist.c */
/* sigsend.c */
/* sigsetops.c */
/* scalls.c */
/* ssignal.c */
/* str2id.c */
/* str2sig.c */
int sig2str(int i, char *s);
/* strcat.c */
/* strchr.c */
/* strcmp.c */
/* strcpy.c */
/* strcspn.c */
/* strdup.c */
/* strerror.c */
/* strftime.c */
const char *_RESTRICT_KYWD format,
/* strlen.c */
/* strncat.c */
/* strncmp.c */
/* strncpy.c */
/* strpbrk.c */
/* strrchr.c */
/* strspn.c */
/* strstr.c */
/* strtod.c */
/* strtoimax.c */
/* strtok.c */
char **_RESTRICT_KYWD);
/* strtol.c */
int base);
/* strtoul.c */
/* strtoumax.c */
/* strxfrm.c */
size_t n);
/* swab.c */
/* swapctl.c */
/* sysconf.c */
/* syslog.c */
/* VARARGS2 */
void closelog(void);
int setlogmask(int pmask);
/* tcdrain.c */
/* tcflow.c */
/* tcflush.c */
/* tcgetattr.c */
/* tcgetpgrp.c */
/* tcgetsid.c */
/* tcsendbreak.c */
/* tcsetattr.c */
/* tcsetpgrp.c */
/* tell.c */
long tell(int f);
/* telldir.c */
/* tfind.c */
/* time_comm.c */
void tzset(void);
/* time_data.c */
/* time_gdata.c */
/* tolower.c */
int tolower(int c);
/* toupper.c */
int toupper(int c);
/* truncate.c */
/* tsearch.c */
/* ttyname.c */
char *ttyname(int f);
char *ttyname_r(int, char *, int);
/* ttyslot.c */
int ttyslot(void);
/* ualarm.c */
/* ulimit.c */
/* VARARGS1 */
/* scalls.c */
/* valloc.c */
/* values-Xa.c */
/* values-Xc.c */
/* values-Xs.c */
/* values-Xt.c */
/* wait3.c */
/* wait4.c */
/* waitpid.c */
/* wcstombs.c */
size_t n);
/* wctomb.c */
/* wdata.c */
/* wisprint.c */
/* xgetwidth.c */
void _xgetwidth(void);
/*
*/
/* gettext.c */
char *textdomain(const char *domain);
/*
*/
/* fprintf.c */
/* VARARGS2 */
/* printf.c */
/* VARARGS1 */
/* snprintf.c */
/* VARARGS2 */
const char *_RESTRICT_KYWD format, ...);
/* sprintf.c */
/* VARARGS2 */
const char *_RESTRICT_KYWD format, ...);
/* vfprintf.c */
/* VARARGS2 */
va_list);
/* vprintf.c */
/* VARARGS1 */
/* vsnprintf.c */
/* VARARGS2 */
/* vsprintf.c */
/* VARARGS2 */
va_list);
/*
*/
/* regex.c */
char *__loc1;
/* regcmp.c */
int __i_size;
/*
*/
/* _filbuf.c */
/* _flsbuf.c */
/* _wrtchk.c */
/* clearerr.c */
/* ctermid.c */
char *ctermid(char *s);
char *ctermid_r(char *s);
/* cuserid.c */
char *cuserid(char *s);
/* data.c */
/* doscan.c */
/* fdopen.c */
/* feof.c */
/* ferror.c */
/* fgetc.c */
/* fgets.c */
/* fileno.c */
/* flush.c */
void _cleanup(void);
/* fopen.c */
/* fpos.c */
/* fputc.c */
/* fputs.c */
/* fread.c */
/* fseek.c */
/* ftell.c */
/* fwrite.c */
/* getc.c */
/* getchar.c */
int getchar(void);
/* getpass.c */
/* getpass.c */
char *getpassphrase(const char *prompt);
/* gets.c */
/* getw.c */
/* popen.c */
/* putc.c */
/* putchar.c */
/* puts.c */
/* putw.c */
/* rewind.c */
/* scanf.c */
/* VARARGS1 */
/* VARARGS2 */
/* VARARGS2 */
/* setbuf.c */
/* setvbuf.c */
/* system.c */
int system(const char *s);
/* tempnam.c */
/* tmpfile.c */
/* tmpnam.c */
char *tmpnam(char *s);
char *tmpnam_r(char *);
/* ungetc.c */
/*
*/
/* exacctsys.c */
/* execl.c */
/* VARARGS1 */
/* execle.c */
/* execv.c */
/* lockf.c */
/* meminfosys.c */
/* msgsys.c */
/* nfssys.c */
/*
int exportfs(char *dir, struct export *ep);
int nfs_getfh(char *path, fhandle_t *fhp);
int nfssvc(int fd);
*/
/* psetsys.c */
/* rctlsys.c */
int flags);
int flags);
/* (private functions) */
/* semsys.c */
/* shmsys.c */
int shmdt(const void *);
#else
int shmdt(char *);
#endif /* defined(_XOPEN_SOURCE) && (_XOPEN_VERSION - 0 == 4) */
/* tasksys.c */
/*
*/
/* fgetws.c */
/* fputwc.c */
/* fputws.c */
/* getwchar.c */
/* getwidth.c */
/* getws.c */
/* iswctype.c */
int isphonogram(wint_t c);
int isideogram(wint_t c);
/* libwcollate.c */
/* putwchar.c */
/* putws.c */
/* scrwidth.c */
/* strtows.c */
/* trwctype.c */
/* ungetwc.c */
/* wcollate.c */
size_t n);
/* wcsftime.c */
#endif /* __amd64 */
/* wcstring.c */
/* wcswcs.c */
/* wcsxfrm.c - empty file! */
/* wcsxfrm.xpg4.c */
/* wisprint.c */
/* wscasecmp.c */
/* wscat.c */
/* wschr.c */
/* wscmp.c */
/* wscol.c */
/* wscpy.c */
/* wscspn.c */
/* wsdup.c */
/* wslen.c */
/* wsncasecmp.c */
/* wsncat.c */
size_t n);
/* wsncmp.c */
/* wsncpy.c */
size_t n);
/* wspbrk.c */
/* wsprintf.c */
/* wsrchr.c */
/* wsscanf.c */
/* wssize.c */
/* wsspn.c */
/* wstod.c */
/* wstok.c */
#endif /* __amd64 */
/* wcstol.c */
int base);
/* wcstoul.c */
/* wcstoimax.c */
/* wstol.c */
/* wstoll.c */
/* wsxfrm.c */
/*
*/
void *user);
/*
*/
/* alloca.s */
void *__builtin_alloca(size_t);
/*
* modctl(int arg, ...) and utssys(...) are not available from a header
* file, but our utilities which make use of it should be able to be
* lint clean.
*/
enum fp_class_type {
fp_zero = 0,
fp_subnormal = 1,
fp_normal = 2,
fp_infinity = 3,
fp_quiet = 4,
fp_signaling = 5
};
enum fp_direction_type {
fp_nearest = 0,
fp_tozero = 1,
fp_positive = 2,
fp_negative = 3
};
enum fp_class_type fpclass;
int sign;
int exponent;
int more;
int ndigits;
enum decimal_form {
};
enum fp_direction_type rd;
enum decimal_form df;
int ndigits;
} decimal_mode;
enum decimal_string_form {
};
typedef int sigfpe_code_type;
typedef void (*sigfpe_handler_type)();
enum decimal_string_form *, char **);
enum decimal_string_form *, char **,
int (*)(void), int *, int (*)(int));
enum decimal_string_form *, char **,
FILE *, int *);
int errno;
int *___errno()
{ return (&errno); }
extern int getloadavg(double [], int);
extern void __fini_daemon_priv(const char *, ...);
extern int __init_suid_priv(int, ...);
extern void __priv_relinquish(void);
extern const char * __priv_getsetbynum(const void *, int);
/* private interface to get the groups list for a certain user */
int _getgroupsbymember(const char *, gid_t[], int, int);
/* private interface for use only by java */
volatile sc_shared_t *volatile *_thr_schedctl(void);