This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c/7867: Internal compiler error in `gen_tagged_type_instatiateion_die', at dwarf2out.c:9315
- From: Steven dot Collins at GE-Interlogix dot com
- To: gcc-gnats at gcc dot gnu dot org
- Cc: Syed dot Rahman at GE-Interlogix dot com
- Date: 9 Sep 2002 15:52:50 -0000
- Subject: c/7867: Internal compiler error in `gen_tagged_type_instatiateion_die', at dwarf2out.c:9315
- Reply-to: Steven dot Collins at GE-Interlogix dot com
>Number: 7867
>Category: c
>Synopsis: Internal compiler error in `gen_tagged_type_instatiateion_die', at dwarf2out.c:9315
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: unassigned
>State: open
>Class: ice-on-legal-code
>Submitter-Id: net
>Arrival-Date: Mon Sep 09 08:56:01 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator: Steven Collins
>Release: gcc version 2.95.3 20010315 (release)
>Organization:
>Environment:
(ColdFire patches - 20010318 from http://fiddes.net/coldfire/)(-msep-data patches)
>Description:
Attempting to build inetd in linux-2.4.x distribution (linux-2.4.x/user/inetd/inetd.c) for Big Endian NET+ARM 40 produces an internal compiler error.
Error message reads:
inetd.c: In function `stop_handler':
inetd.c:317: Internal compiler error in `gen_tagged_type_instantiation_die', at dwarf2out.c:9315
Command line:
arm-elf-gcc -Os -g -Dlinux -D__linux__ -Dunix -D__uClinux__ -DEMBED -I/uClinux-dist/lib/uClibc/include -I/uClinux-dist/lib/libm -I/uClinux-dist -fno-builtin -I/uClinux-dist/linux-2.4.x/include -mbig-endian -DSERVICES=\"/etc/services\" -DINETD_CONF=\"/etc/inetd.conf\" -Wall -c -o inetd.o inetd.c
Preprocessed source file attached
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: text/plain; name="inetd.i"
Content-Disposition: inline; filename="inetd.i"
# 1 "inetd.c"
# 1 "/uClinux-dist/lib/uClibc/include/stdio.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/features.h" 1
# 145 "/uClinux-dist/lib/uClibc/include/features.h"
# 211 "/uClinux-dist/lib/uClibc/include/features.h"
# 1 "/uClinux-dist/lib/uClibc/include/sys/cdefs.h" 1
# 65 "/uClinux-dist/lib/uClibc/include/sys/cdefs.h"
# 301 "/uClinux-dist/lib/uClibc/include/features.h" 2
# 332 "/uClinux-dist/lib/uClibc/include/features.h"
# 1 "/uClinux-dist/lib/uClibc/include/bits/uClibc_config.h" 1
# 336 "/uClinux-dist/lib/uClibc/include/features.h" 2
# 370 "/uClinux-dist/lib/uClibc/include/features.h"
# 431 "/uClinux-dist/lib/uClibc/include/features.h"
# 28 "/uClinux-dist/lib/uClibc/include/stdio.h" 2
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
typedef long unsigned int size_t;
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 34 "/uClinux-dist/lib/uClibc/include/stdio.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/bits/types.h" 1
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 29 "/uClinux-dist/lib/uClibc/include/bits/types.h" 2
typedef unsigned char __u_char;
typedef unsigned short __u_short;
typedef unsigned int __u_int;
typedef unsigned long __u_long;
__extension__ typedef unsigned long long int __u_quad_t;
__extension__ typedef long long int __quad_t;
# 48 "/uClinux-dist/lib/uClibc/include/bits/types.h"
typedef signed char __int8_t;
typedef unsigned char __uint8_t;
typedef signed short int __int16_t;
typedef unsigned short int __uint16_t;
typedef signed int __int32_t;
typedef unsigned int __uint32_t;
__extension__ typedef signed long long int __int64_t;
__extension__ typedef unsigned long long int __uint64_t;
typedef __quad_t *__qaddr_t;
typedef __u_quad_t __dev_t;
typedef __u_int __uid_t;
typedef __u_int __gid_t;
typedef __u_long __ino_t;
typedef __u_int __mode_t;
typedef __u_int __nlink_t;
typedef long int __off_t;
typedef __quad_t __loff_t;
typedef int __pid_t;
typedef int __ssize_t;
typedef __u_long __rlim_t;
typedef __u_quad_t __rlim64_t;
typedef __u_int __id_t;
typedef struct
{
int __val[2];
} __fsid_t;
typedef int __daddr_t;
typedef char *__caddr_t;
typedef long int __time_t;
typedef unsigned int __useconds_t;
typedef long int __suseconds_t;
typedef long int __swblk_t;
typedef long int __clock_t;
typedef int __clockid_t;
typedef int __timer_t;
typedef int __key_t;
typedef unsigned short int __ipc_pid_t;
typedef long int __blksize_t;
typedef long int __blkcnt_t;
typedef __quad_t __blkcnt64_t;
typedef __u_long __fsblkcnt_t;
typedef __u_quad_t __fsblkcnt64_t;
typedef __u_long __fsfilcnt_t;
typedef __u_quad_t __fsfilcnt64_t;
typedef __u_quad_t __ino64_t;
typedef __loff_t __off64_t;
typedef long int __t_scalar_t;
typedef unsigned long int __t_uscalar_t;
typedef int __intptr_t;
typedef unsigned int __socklen_t;
# 36 "/uClinux-dist/lib/uClibc/include/stdio.h" 2
typedef struct _UC_FILE FILE;
typedef struct _UC_FILE __FILE;
# 1 "/uClinux-dist/lib/uClibc/include/sys/types.h" 1
typedef __u_char u_char;
typedef __u_short u_short;
typedef __u_int u_int;
typedef __u_long u_long;
typedef __quad_t quad_t;
typedef __u_quad_t u_quad_t;
typedef __fsid_t fsid_t;
typedef __loff_t loff_t;
typedef __ino_t ino_t;
typedef __dev_t dev_t;
typedef __gid_t gid_t;
typedef __mode_t mode_t;
typedef __nlink_t nlink_t;
typedef __uid_t uid_t;
typedef __off_t off_t;
typedef __pid_t pid_t;
typedef __id_t id_t;
typedef __ssize_t ssize_t;
typedef __daddr_t daddr_t;
typedef __caddr_t caddr_t;
typedef __key_t key_t;
# 1 "/uClinux-dist/lib/uClibc/include/time.h" 1
# 51 "/uClinux-dist/lib/uClibc/include/time.h"
# 61 "/uClinux-dist/lib/uClibc/include/time.h"
typedef __time_t time_t;
typedef __clockid_t clockid_t;
typedef __timer_t timer_t;
# 112 "/uClinux-dist/lib/uClibc/include/time.h"
# 366 "/uClinux-dist/lib/uClibc/include/time.h"
# 132 "/uClinux-dist/lib/uClibc/include/sys/types.h" 2
# 143 "/uClinux-dist/lib/uClibc/include/sys/types.h"
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 146 "/uClinux-dist/lib/uClibc/include/sys/types.h" 2
typedef unsigned long int ulong;
typedef unsigned short int ushort;
typedef unsigned int uint;
# 180 "/uClinux-dist/lib/uClibc/include/sys/types.h"
typedef int int8_t __attribute__ ((__mode__ ( __QI__ ))) ;
typedef int int16_t __attribute__ ((__mode__ ( __HI__ ))) ;
typedef int int32_t __attribute__ ((__mode__ ( __SI__ ))) ;
typedef int int64_t __attribute__ ((__mode__ ( __DI__ ))) ;
typedef unsigned int u_int8_t __attribute__ ((__mode__ ( __QI__ ))) ;
typedef unsigned int u_int16_t __attribute__ ((__mode__ ( __HI__ ))) ;
typedef unsigned int u_int32_t __attribute__ ((__mode__ ( __SI__ ))) ;
typedef unsigned int u_int64_t __attribute__ ((__mode__ ( __DI__ ))) ;
typedef int register_t __attribute__ ((__mode__ (__word__)));
# 1 "/uClinux-dist/lib/uClibc/include/endian.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/endian.h" 1
# 37 "/uClinux-dist/lib/uClibc/include/endian.h" 2
# 212 "/uClinux-dist/lib/uClibc/include/sys/types.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/sys/select.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/select.h" 1
# 31 "/uClinux-dist/lib/uClibc/include/sys/select.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/bits/sigset.h" 1
typedef int __sig_atomic_t;
typedef struct
{
unsigned long int __val[(1024 / (8 * sizeof (unsigned long int))) ];
} __sigset_t;
# 125 "/uClinux-dist/lib/uClibc/include/bits/sigset.h"
# 34 "/uClinux-dist/lib/uClibc/include/sys/select.h" 2
typedef __sigset_t sigset_t;
# 1 "/uClinux-dist/lib/uClibc/include/time.h" 1
# 51 "/uClinux-dist/lib/uClibc/include/time.h"
# 61 "/uClinux-dist/lib/uClibc/include/time.h"
# 72 "/uClinux-dist/lib/uClibc/include/time.h"
# 84 "/uClinux-dist/lib/uClibc/include/time.h"
# 96 "/uClinux-dist/lib/uClibc/include/time.h"
struct timespec
{
long int tv_sec;
long int tv_nsec;
};
# 366 "/uClinux-dist/lib/uClibc/include/time.h"
# 43 "/uClinux-dist/lib/uClibc/include/sys/select.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/bits/time.h" 1
# 53 "/uClinux-dist/lib/uClibc/include/bits/time.h"
struct timeval
{
__time_t tv_sec;
__suseconds_t tv_usec;
};
# 45 "/uClinux-dist/lib/uClibc/include/sys/select.h" 2
typedef long int __fd_mask;
typedef struct
{
__fd_mask __fds_bits[1024 / (8 * sizeof (__fd_mask)) ];
} fd_set;
typedef __fd_mask fd_mask;
extern int select (int __nfds, fd_set *__restrict __readfds,
fd_set *__restrict __writefds,
fd_set *__restrict __exceptfds,
struct timeval *__restrict __timeout) ;
# 110 "/uClinux-dist/lib/uClibc/include/sys/select.h"
# 215 "/uClinux-dist/lib/uClibc/include/sys/types.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/sys/sysmacros.h" 1
# 47 "/uClinux-dist/lib/uClibc/include/sys/sysmacros.h"
# 218 "/uClinux-dist/lib/uClibc/include/sys/types.h" 2
typedef __blkcnt_t blkcnt_t;
typedef __fsblkcnt_t fsblkcnt_t;
typedef __fsfilcnt_t fsfilcnt_t;
# 254 "/uClinux-dist/lib/uClibc/include/sys/types.h"
# 65 "/uClinux-dist/lib/uClibc/include/stdio.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/bits/uClibc_stdio.h" 1
# 54 "/uClinux-dist/lib/uClibc/include/bits/uClibc_stdio.h"
# 147 "/uClinux-dist/lib/uClibc/include/bits/uClibc_stdio.h"
typedef struct {
__off_t __pos;
} __stdio_fpos_t;
typedef struct {
__off64_t __pos;
} __stdio_fpos64_t;
typedef __off_t __offmax_t;
typedef __ssize_t __io_read_fn(void *cookie,
char *buf, size_t bufsize);
typedef __ssize_t __io_write_fn(void *cookie,
const char *buf, size_t bufsize);
typedef int __io_seek_fn(void *cookie,
__offmax_t *pos, int whence);
typedef int __io_close_fn(void *cookie);
typedef struct {
__io_read_fn *read;
__io_write_fn *write;
__io_seek_fn *seek;
__io_close_fn *close;
} _IO_cookie_io_functions_t;
struct _UC_FILE {
unsigned short modeflags;
unsigned char ungot[2];
int filedes;
struct _UC_FILE *nextopen;
unsigned char *bufstart;
unsigned char *bufend;
unsigned char *bufwpos;
unsigned char *bufrpos;
unsigned char *bufgetc;
unsigned char *bufputc;
void *cookie;
_IO_cookie_io_functions_t gcs;
};
extern __ssize_t _cs_read(void *cookie, char *buf, size_t bufsize);
extern __ssize_t _cs_write(void *cookie, const char *buf, size_t bufsize);
extern int _cs_seek(void *cookie, __offmax_t *pos, int whence);
extern int _cs_close(void *cookie);
extern FILE *_stdio_openlist;
extern int _stdio_adjpos(FILE * __restrict stream, __offmax_t * pos);
extern int _stdio_lseek(FILE *stream, __offmax_t *pos, int whence);
extern size_t _stdio_fwrite(const unsigned char *buffer, size_t bytes,
FILE *stream);
extern size_t _stdio_fread(unsigned char *buffer, size_t bytes,
FILE *stream);
extern FILE *_stdio_fopen(const char * __restrict filename,
const char * __restrict mode,
FILE * __restrict stream, int filedes);
extern FILE *_stdio_fsfopen(const char * __restrict filename,
const char * __restrict mode,
register FILE * __restrict stream);
extern void _stdio_init(void);
extern void _stdio_term(void);
extern void __stdio_validate_FILE(FILE *stream);
# 484 "/uClinux-dist/lib/uClibc/include/bits/uClibc_stdio.h"
typedef __stdio_fpos_t _UC_fpos_t;
typedef __stdio_fpos64_t _UC_fpos64_t;
# 67 "/uClinux-dist/lib/uClibc/include/stdio.h" 2
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stdarg.h" 1 3
typedef void *__gnuc_va_list;
# 122 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stdarg.h" 3
# 209 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stdarg.h" 3
# 71 "/uClinux-dist/lib/uClibc/include/stdio.h" 2
typedef _UC_fpos_t fpos_t;
# 1 "/uClinux-dist/lib/uClibc/include/bits/stdio_lim.h" 1
# 124 "/uClinux-dist/lib/uClibc/include/stdio.h" 2
extern FILE *stdin;
extern FILE *stdout;
extern FILE *stderr;
extern int remove (__const char *__filename) ;
extern int rename (__const char *__old, __const char *__new) ;
extern FILE *tmpfile (void) ;
extern char *tmpnam (char *__s) ;
extern char *tmpnam_r (char *__s) ;
extern char *tempnam (__const char *__dir, __const char *__pfx)
;
extern int fclose (FILE *__stream) ;
extern int fflush (FILE *__stream) ;
extern int fflush_unlocked (FILE *__stream) ;
extern FILE *fopen (__const char *__restrict __filename,
__const char *__restrict __modes) ;
extern FILE *freopen (__const char *__restrict __filename,
__const char *__restrict __modes,
FILE *__restrict __stream) ;
# 217 "/uClinux-dist/lib/uClibc/include/stdio.h"
extern FILE *fdopen (int __fd, __const char *__modes) ;
# 248 "/uClinux-dist/lib/uClibc/include/stdio.h"
extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) ;
extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
int __modes, size_t __n) ;
extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
size_t __size) ;
extern void setlinebuf (FILE *__stream) ;
extern int fprintf (FILE *__restrict __stream,
__const char *__restrict __format, ...) ;
extern int printf (__const char *__restrict __format, ...) ;
extern int sprintf (char *__restrict __s,
__const char *__restrict __format, ...) ;
extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format,
__gnuc_va_list __arg) ;
extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg)
;
extern int vsprintf (char *__restrict __s, __const char *__restrict __format,
__gnuc_va_list __arg) ;
extern int snprintf (char *__restrict __s, size_t __maxlen,
__const char *__restrict __format, ...)
__attribute__ ((__format__ (__printf__, 3, 4)));
extern int vsnprintf (char *__restrict __s, size_t __maxlen,
__const char *__restrict __format, __gnuc_va_list __arg)
__attribute__ ((__format__ (__printf__, 3, 0)));
# 320 "/uClinux-dist/lib/uClibc/include/stdio.h"
extern int fscanf (FILE *__restrict __stream,
__const char *__restrict __format, ...) ;
extern int scanf (__const char *__restrict __format, ...) ;
extern int sscanf (__const char *__restrict __s,
__const char *__restrict __format, ...) ;
# 346 "/uClinux-dist/lib/uClibc/include/stdio.h"
extern int fgetc (FILE *__stream) ;
extern int getc (FILE *__stream) ;
extern int getchar (void) ;
extern int getc_unlocked (FILE *__stream) ;
extern int getchar_unlocked (void) ;
extern int fgetc_unlocked (FILE *__stream) ;
extern int fputc (int __c, FILE *__stream) ;
extern int putc (int __c, FILE *__stream) ;
extern int putchar (int __c) ;
extern int fputc_unlocked (int __c, FILE *__stream) ;
extern int putc_unlocked (int __c, FILE *__stream) ;
extern int putchar_unlocked (int __c) ;
extern int getw (FILE *__stream) ;
extern int putw (int __w, FILE *__stream) ;
extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
;
extern char *gets (char *__s) ;
# 436 "/uClinux-dist/lib/uClibc/include/stdio.h"
extern int fputs (__const char *__restrict __s, FILE *__restrict __stream)
;
extern int puts (__const char *__s) ;
extern int ungetc (int __c, FILE *__stream) ;
extern size_t fread (void *__restrict __ptr, size_t __size,
size_t __n, FILE *__restrict __stream) ;
extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
size_t __n, FILE *__restrict __s) ;
extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
size_t __n, FILE *__restrict __stream) ;
extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size,
size_t __n, FILE *__restrict __stream) ;
extern int fseek (FILE *__stream, long int __off, int __whence) ;
extern long int ftell (FILE *__stream) ;
extern void rewind (FILE *__stream) ;
extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos)
;
extern int fsetpos (FILE *__stream, __const fpos_t *__pos) ;
# 519 "/uClinux-dist/lib/uClibc/include/stdio.h"
extern void clearerr (FILE *__stream) ;
extern int feof (FILE *__stream) ;
extern int ferror (FILE *__stream) ;
extern void clearerr_unlocked (FILE *__stream) ;
extern int feof_unlocked (FILE *__stream) ;
extern int ferror_unlocked (FILE *__stream) ;
extern void perror (__const char *__s) ;
extern int sys_nerr;
extern __const char *__const sys_errlist[];
extern int fileno (FILE *__stream) ;
extern int fileno_unlocked (FILE *__stream) ;
extern FILE *popen (__const char *__command, __const char *__modes) ;
extern int pclose (FILE *__stream) ;
extern char *ctermid (char *__s) ;
# 603 "/uClinux-dist/lib/uClibc/include/stdio.h"
# 618 "/uClinux-dist/lib/uClibc/include/stdio.h"
# 21 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/unistd.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/posix_opt.h" 1
# 175 "/uClinux-dist/lib/uClibc/include/unistd.h" 2
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 199 "/uClinux-dist/lib/uClibc/include/unistd.h" 2
# 236 "/uClinux-dist/lib/uClibc/include/unistd.h"
typedef __intptr_t intptr_t;
typedef __socklen_t socklen_t;
extern int access (__const char *__name, int __type) ;
extern __off_t lseek (int __fd, __off_t __offset, int __whence) ;
# 301 "/uClinux-dist/lib/uClibc/include/unistd.h"
extern int close (int __fd) ;
extern ssize_t read (int __fd, void *__buf, size_t __nbytes) ;
extern ssize_t write (int __fd, __const void *__buf, size_t __n) ;
# 348 "/uClinux-dist/lib/uClibc/include/unistd.h"
extern int pipe (int __pipedes[2]) ;
extern unsigned int alarm (unsigned int __seconds) ;
extern unsigned int sleep (unsigned int __seconds) ;
extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval)
;
extern int usleep (__useconds_t __useconds) ;
extern int pause (void) ;
extern int chown (__const char *__file, __uid_t __owner, __gid_t __group)
;
extern int fchown (int __fd, __uid_t __owner, __gid_t __group) ;
extern int lchown (__const char *__file, __uid_t __owner, __gid_t __group)
;
extern int chdir (__const char *__path) ;
extern int fchdir (int __fd) ;
extern char *getcwd (char *__buf, size_t __size) ;
extern char *getwd (char *__buf) ;
extern int dup (int __fd) ;
extern int dup2 (int __fd, int __fd2) ;
extern char **__environ;
extern int execve (__const char *__path, char *__const __argv[],
char *__const __envp[]) ;
extern int execv (__const char *__path, char *__const __argv[]) ;
extern int execle (__const char *__path, __const char *__arg, ...) ;
extern int execl (__const char *__path, __const char *__arg, ...) ;
extern int execvp (__const char *__file, char *__const __argv[]) ;
extern int execlp (__const char *__file, __const char *__arg, ...) ;
extern int nice (int __inc) ;
extern void _exit (int __status) __attribute__ ((__noreturn__));
# 1 "/uClinux-dist/lib/uClibc/include/bits/confname.h" 1
enum
{
_PC_LINK_MAX,
_PC_MAX_CANON,
_PC_MAX_INPUT,
_PC_NAME_MAX,
_PC_PATH_MAX,
_PC_PIPE_BUF,
_PC_CHOWN_RESTRICTED,
_PC_NO_TRUNC,
_PC_VDISABLE,
_PC_SYNC_IO,
_PC_ASYNC_IO,
_PC_PRIO_IO,
_PC_SOCK_MAXBUF,
_PC_FILESIZEBITS,
_PC_REC_INCR_XFER_SIZE,
_PC_REC_MAX_XFER_SIZE,
_PC_REC_MIN_XFER_SIZE,
_PC_REC_XFER_ALIGN,
_PC_ALLOC_SIZE_MIN,
_PC_SYMLINK_MAX
};
enum
{
_SC_ARG_MAX,
_SC_CHILD_MAX,
_SC_CLK_TCK,
_SC_NGROUPS_MAX,
_SC_OPEN_MAX,
_SC_STREAM_MAX,
_SC_TZNAME_MAX,
_SC_JOB_CONTROL,
_SC_SAVED_IDS,
_SC_REALTIME_SIGNALS,
_SC_PRIORITY_SCHEDULING,
_SC_TIMERS,
_SC_ASYNCHRONOUS_IO,
_SC_PRIORITIZED_IO,
_SC_SYNCHRONIZED_IO,
_SC_FSYNC,
_SC_MAPPED_FILES,
_SC_MEMLOCK,
_SC_MEMLOCK_RANGE,
_SC_MEMORY_PROTECTION,
_SC_MESSAGE_PASSING,
_SC_SEMAPHORES,
_SC_SHARED_MEMORY_OBJECTS,
_SC_AIO_LISTIO_MAX,
_SC_AIO_MAX,
_SC_AIO_PRIO_DELTA_MAX,
_SC_DELAYTIMER_MAX,
_SC_MQ_OPEN_MAX,
_SC_MQ_PRIO_MAX,
_SC_VERSION,
_SC_PAGESIZE,
_SC_RTSIG_MAX,
_SC_SEM_NSEMS_MAX,
_SC_SEM_VALUE_MAX,
_SC_SIGQUEUE_MAX,
_SC_TIMER_MAX,
_SC_BC_BASE_MAX,
_SC_BC_DIM_MAX,
_SC_BC_SCALE_MAX,
_SC_BC_STRING_MAX,
_SC_COLL_WEIGHTS_MAX,
_SC_EQUIV_CLASS_MAX,
_SC_EXPR_NEST_MAX,
_SC_LINE_MAX,
_SC_RE_DUP_MAX,
_SC_CHARCLASS_NAME_MAX,
_SC_2_VERSION,
_SC_2_C_BIND,
_SC_2_C_DEV,
_SC_2_FORT_DEV,
_SC_2_FORT_RUN,
_SC_2_SW_DEV,
_SC_2_LOCALEDEF,
_SC_PII,
_SC_PII_XTI,
_SC_PII_SOCKET,
_SC_PII_INTERNET,
_SC_PII_OSI,
_SC_POLL,
_SC_SELECT,
_SC_UIO_MAXIOV,
_SC_IOV_MAX = _SC_UIO_MAXIOV ,
_SC_PII_INTERNET_STREAM,
_SC_PII_INTERNET_DGRAM,
_SC_PII_OSI_COTS,
_SC_PII_OSI_CLTS,
_SC_PII_OSI_M,
_SC_T_IOV_MAX,
_SC_THREADS,
_SC_THREAD_SAFE_FUNCTIONS,
_SC_GETGR_R_SIZE_MAX,
_SC_GETPW_R_SIZE_MAX,
_SC_LOGIN_NAME_MAX,
_SC_TTY_NAME_MAX,
_SC_THREAD_DESTRUCTOR_ITERATIONS,
_SC_THREAD_KEYS_MAX,
_SC_THREAD_STACK_MIN,
_SC_THREAD_THREADS_MAX,
_SC_THREAD_ATTR_STACKADDR,
_SC_THREAD_ATTR_STACKSIZE,
_SC_THREAD_PRIORITY_SCHEDULING,
_SC_THREAD_PRIO_INHERIT,
_SC_THREAD_PRIO_PROTECT,
_SC_THREAD_PROCESS_SHARED,
_SC_NPROCESSORS_CONF,
_SC_NPROCESSORS_ONLN,
_SC_PHYS_PAGES,
_SC_AVPHYS_PAGES,
_SC_ATEXIT_MAX,
_SC_PASS_MAX,
_SC_XOPEN_VERSION,
_SC_XOPEN_XCU_VERSION,
_SC_XOPEN_UNIX,
_SC_XOPEN_CRYPT,
_SC_XOPEN_ENH_I18N,
_SC_XOPEN_SHM,
_SC_2_CHAR_TERM,
_SC_2_C_VERSION,
_SC_2_UPE,
_SC_XOPEN_XPG2,
_SC_XOPEN_XPG3,
_SC_XOPEN_XPG4,
_SC_CHAR_BIT,
_SC_CHAR_MAX,
_SC_CHAR_MIN,
_SC_INT_MAX,
_SC_INT_MIN,
_SC_LONG_BIT,
_SC_WORD_BIT,
_SC_MB_LEN_MAX,
_SC_NZERO,
_SC_SSIZE_MAX,
_SC_SCHAR_MAX,
_SC_SCHAR_MIN,
_SC_SHRT_MAX,
_SC_SHRT_MIN,
_SC_UCHAR_MAX,
_SC_UINT_MAX,
_SC_ULONG_MAX,
_SC_USHRT_MAX,
_SC_NL_ARGMAX,
_SC_NL_LANGMAX,
_SC_NL_MSGMAX,
_SC_NL_NMAX,
_SC_NL_SETMAX,
_SC_NL_TEXTMAX,
_SC_XBS5_ILP32_OFF32,
_SC_XBS5_ILP32_OFFBIG,
_SC_XBS5_LP64_OFF64,
_SC_XBS5_LPBIG_OFFBIG,
_SC_XOPEN_LEGACY,
_SC_XOPEN_REALTIME,
_SC_XOPEN_REALTIME_THREADS,
_SC_ADVISORY_INFO,
_SC_BARRIERS,
_SC_BASE,
_SC_C_LANG_SUPPORT,
_SC_C_LANG_SUPPORT_R,
_SC_CLOCK_SELECTION,
_SC_CPUTIME,
_SC_THREAD_CPUTIME,
_SC_DEVICE_IO,
_SC_DEVICE_SPECIFIC,
_SC_DEVICE_SPECIFIC_R,
_SC_FD_MGMT,
_SC_FIFO,
_SC_PIPE,
_SC_FILE_ATTRIBUTES,
_SC_FILE_LOCKING,
_SC_FILE_SYSTEM,
_SC_MONOTONIC_CLOCK,
_SC_MULTI_PROCESS,
_SC_SINGLE_PROCESS,
_SC_NETWORKING,
_SC_READER_WRITER_LOCKS,
_SC_SPIN_LOCKS,
_SC_REGEXP,
_SC_REGEX_VERSION,
_SC_SHELL,
_SC_SIGNALS,
_SC_SPAWN,
_SC_SPORADIC_SERVER,
_SC_THREAD_SPORADIC_SERVER,
_SC_SYSTEM_DATABASE,
_SC_SYSTEM_DATABASE_R,
_SC_TIMEOUTS,
_SC_TYPED_MEMORY_OBJECTS,
_SC_USER_GROUPS,
_SC_USER_GROUPS_R,
_SC_2_PBS,
_SC_2_PBS_ACCOUNTING,
_SC_2_PBS_LOCATE,
_SC_2_PBS_MESSAGE,
_SC_2_PBS_TRACK,
_SC_SYMLOOP_MAX,
_SC_STREAMS,
_SC_2_PBS_CHECKPOINT,
_SC_V6_ILP32_OFF32,
_SC_V6_ILP32_OFFBIG,
_SC_V6_LP64_OFF64,
_SC_V6_LPBIG_OFFBIG,
_SC_HOST_NAME_MAX,
_SC_TRACE,
_SC_TRACE_EVENT_FILTER,
_SC_TRACE_INHERIT,
_SC_TRACE_LOG
};
enum
{
_CS_PATH,
# 492 "/uClinux-dist/lib/uClibc/include/bits/confname.h"
# 527 "/uClinux-dist/lib/uClibc/include/bits/confname.h"
# 561 "/uClinux-dist/lib/uClibc/include/bits/confname.h"
_CS_V6_WIDTH_RESTRICTED_ENVS
};
# 503 "/uClinux-dist/lib/uClibc/include/unistd.h" 2
extern long int pathconf (__const char *__path, int __name) ;
extern long int fpathconf (int __fd, int __name) ;
extern long int sysconf (int __name) __attribute__ ((__const__));
extern size_t confstr (int __name, char *__buf, size_t __len) ;
extern __pid_t getpid (void) ;
extern __pid_t getppid (void) ;
extern __pid_t getpgrp (void) ;
extern __pid_t __getpgid (__pid_t __pid) ;
extern int setpgid (__pid_t __pid, __pid_t __pgid) ;
extern int setpgrp (void) ;
# 577 "/uClinux-dist/lib/uClibc/include/unistd.h"
extern __pid_t setsid (void) ;
extern __uid_t getuid (void) ;
extern __uid_t geteuid (void) ;
extern __gid_t getgid (void) ;
extern __gid_t getegid (void) ;
extern int getgroups (int __size, __gid_t __list[]) ;
extern int setuid (__uid_t __uid) ;
extern int setreuid (__uid_t __ruid, __uid_t __euid) ;
extern int seteuid (__uid_t __uid) ;
extern int setgid (__gid_t __gid) ;
extern int setregid (__gid_t __rgid, __gid_t __egid) ;
extern int setegid (__gid_t __gid) ;
extern __pid_t fork (void) ;
extern __pid_t vfork (void) ;
extern char *ttyname (int __fd) ;
extern int ttyname_r (int __fd, char *__buf, size_t __buflen) ;
extern int isatty (int __fd) ;
extern int ttyslot (void) ;
extern int link (__const char *__from, __const char *__to) ;
extern int symlink (__const char *__from, __const char *__to) ;
extern int readlink (__const char *__restrict __path, char *__restrict __buf,
size_t __len) ;
extern int unlink (__const char *__name) ;
extern int rmdir (__const char *__path) ;
extern __pid_t tcgetpgrp (int __fd) ;
extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) ;
extern char *getlogin (void) ;
extern int setlogin (__const char *__name) ;
# 1 "/uClinux-dist/lib/uClibc/include/getopt.h" 1
extern char *optarg;
extern int optind;
extern int opterr;
extern int optopt;
# 113 "/uClinux-dist/lib/uClibc/include/getopt.h"
extern int getopt (int __argc, char *const *__argv, const char *__shortopts);
# 162 "/uClinux-dist/lib/uClibc/include/getopt.h"
# 171 "/uClinux-dist/lib/uClibc/include/getopt.h"
# 730 "/uClinux-dist/lib/uClibc/include/unistd.h" 2
extern int gethostname (char *__name, size_t __len) ;
extern int sethostname (__const char *__name, size_t __len) ;
extern int sethostid (long int __id) ;
extern int getdomainname (char *__name, size_t __len) ;
extern int setdomainname (__const char *__name, size_t __len) ;
extern int vhangup (void) ;
extern int revoke (__const char *__file) ;
extern int profil (unsigned short int *__sample_buffer, size_t __size,
size_t __offset, unsigned int __scale) ;
extern int acct (__const char *__name) ;
extern char *getusershell (void) ;
extern void endusershell (void) ;
extern void setusershell (void) ;
extern int daemon (int __nochdir, int __noclose) ;
extern int chroot (__const char *__path) ;
extern char *getpass (__const char *__prompt) ;
extern int fsync (int __fd) ;
extern long int gethostid (void) ;
extern void sync (void) ;
extern int getpagesize (void) __attribute__ ((__const__));
extern int truncate (__const char *__file, __off_t __length) ;
# 838 "/uClinux-dist/lib/uClibc/include/unistd.h"
extern int ftruncate (int __fd, __off_t __length) ;
extern int getdtablesize (void) ;
extern int brk (void *__addr) ;
extern void *sbrk (intptr_t __delta) ;
extern long int syscall (long int __sysno, ...) ;
extern int lockf (int __fd, int __cmd, __off_t __len) ;
# 937 "/uClinux-dist/lib/uClibc/include/unistd.h"
extern int fdatasync (int __fildes) ;
# 963 "/uClinux-dist/lib/uClibc/include/unistd.h"
extern int pthread_atfork (void (*__prepare) (void),
void (*__parent) (void),
void (*__child) (void)) ;
# 22 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/stdlib.h" 1
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 35 "/uClinux-dist/lib/uClibc/include/stdlib.h" 2
# 93 "/uClinux-dist/lib/uClibc/include/stdlib.h"
typedef struct
{
int quot;
int rem;
} div_t;
typedef struct
{
long int quot;
long int rem;
} ldiv_t;
# 120 "/uClinux-dist/lib/uClibc/include/stdlib.h"
extern double atof (__const char *__nptr) ;
extern int atoi (__const char *__nptr) ;
extern long int atol (__const char *__nptr) ;
__extension__ extern long long int atoll (__const char *__nptr)
;
extern double strtod (__const char *__restrict __nptr,
char **__restrict __endptr) ;
extern long int strtol (__const char *__restrict __nptr,
char **__restrict __endptr, int __base) ;
extern unsigned long int strtoul (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
;
__extension__
extern long long int strtoq (__const char *__restrict __nptr,
char **__restrict __endptr, int __base) ;
__extension__
extern unsigned long long int strtouq (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
;
__extension__
extern long long int strtoll (__const char *__restrict __nptr,
char **__restrict __endptr, int __base) ;
__extension__
extern unsigned long long int strtoull (__const char *__restrict __nptr,
char **__restrict __endptr, int __base)
;
# 248 "/uClinux-dist/lib/uClibc/include/stdlib.h"
extern double __strtod_internal (__const char *__restrict __nptr,
char **__restrict __endptr, int __group)
;
extern float __strtof_internal (__const char *__restrict __nptr,
char **__restrict __endptr, int __group)
;
extern long double __strtold_internal (__const char *__restrict __nptr,
char **__restrict __endptr,
int __group) ;
extern long int __strtol_internal (__const char *__restrict __nptr,
char **__restrict __endptr,
int __base, int __group) ;
extern unsigned long int __strtoul_internal (__const char *__restrict __nptr,
char **__restrict __endptr,
int __base, int __group) ;
__extension__
extern long long int __strtoll_internal (__const char *__restrict __nptr,
char **__restrict __endptr,
int __base, int __group) ;
__extension__
extern unsigned long long int __strtoull_internal (__const char *
__restrict __nptr,
char **__restrict __endptr,
int __base, int __group)
;
# 381 "/uClinux-dist/lib/uClibc/include/stdlib.h"
extern char *l64a (long int __n) ;
extern long int a64l (__const char *__s) ;
extern long int random (void) ;
extern void srandom (unsigned int __seed) ;
extern char *initstate (unsigned int __seed, char *__statebuf,
size_t __statelen) ;
extern char *setstate (char *__statebuf) ;
struct random_data
{
int32_t *fptr;
int32_t *rptr;
int32_t *state;
int rand_type;
int rand_deg;
int rand_sep;
int32_t *end_ptr;
};
extern int random_r (struct random_data *__restrict __buf,
int32_t *__restrict __result) ;
extern int srandom_r (unsigned int __seed, struct random_data *__buf) ;
extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
size_t __statelen,
struct random_data *__restrict __buf) ;
extern int setstate_r (char *__restrict __statebuf,
struct random_data *__restrict __buf) ;
extern int rand (void) ;
extern void srand (unsigned int __seed) ;
extern int rand_r (unsigned int *__seed) ;
extern double drand48 (void) ;
extern double erand48 (unsigned short int __xsubi[3]) ;
extern long int lrand48 (void) ;
extern long int nrand48 (unsigned short int __xsubi[3]) ;
extern long int mrand48 (void) ;
extern long int jrand48 (unsigned short int __xsubi[3]) ;
extern void srand48 (long int __seedval) ;
extern unsigned short int *seed48 (unsigned short int __seed16v[3]) ;
extern void lcong48 (unsigned short int __param[7]) ;
struct drand48_data
{
unsigned short int __x[3];
unsigned short int __old_x[3];
unsigned short int __c;
unsigned short int __init;
unsigned long long int __a;
};
extern int drand48_r (struct drand48_data *__restrict __buffer,
double *__restrict __result) ;
extern int erand48_r (unsigned short int __xsubi[3],
struct drand48_data *__restrict __buffer,
double *__restrict __result) ;
extern int lrand48_r (struct drand48_data *__restrict __buffer,
long int *__restrict __result) ;
extern int nrand48_r (unsigned short int __xsubi[3],
struct drand48_data *__restrict __buffer,
long int *__restrict __result) ;
extern int mrand48_r (struct drand48_data *__restrict __buffer,
long int *__restrict __result) ;
extern int jrand48_r (unsigned short int __xsubi[3],
struct drand48_data *__restrict __buffer,
long int *__restrict __result) ;
extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
;
extern int seed48_r (unsigned short int __seed16v[3],
struct drand48_data *__buffer) ;
extern int lcong48_r (unsigned short int __param[7],
struct drand48_data *__buffer) ;
extern void *malloc (size_t __size) ;
extern void *calloc (size_t __nmemb, size_t __size)
;
extern void *realloc (void *__ptr, size_t __size) ;
extern void free (void *__ptr) ;
extern void cfree (void *__ptr) ;
# 1 "/uClinux-dist/lib/uClibc/include/alloca.h" 1
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 25 "/uClinux-dist/lib/uClibc/include/alloca.h" 2
extern void *alloca (size_t __size) ;
# 550 "/uClinux-dist/lib/uClibc/include/stdlib.h" 2
extern void *valloc (size_t __size) ;
extern void abort (void) __attribute__ ((__noreturn__));
extern int atexit (void (*__func) (void)) ;
extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
;
extern void exit (int __status) __attribute__ ((__noreturn__));
extern char *getenv (__const char *__name) ;
extern char *__secure_getenv (__const char *__name) ;
extern int putenv (char *__string) ;
extern int setenv (__const char *__name, __const char *__value, int __replace)
;
extern int unsetenv (__const char *__name) ;
extern int clearenv (void) ;
extern char *mktemp (char *__template) ;
extern int mkstemp (char *__template) ;
extern char *mkdtemp (char *__template) ;
extern int system (__const char *__command) ;
extern char *realpath (__const char *__restrict __name,
char *__restrict __resolved) ;
typedef int (*__compar_fn_t) (__const void *, __const void *);
extern void *bsearch (__const void *__key, __const void *__base,
size_t __nmemb, size_t __size, __compar_fn_t __compar);
extern void qsort (void *__base, size_t __nmemb, size_t __size,
__compar_fn_t __compar);
extern int abs (int __x) __attribute__ ((__const__));
extern long int labs (long int __x) __attribute__ ((__const__));
extern div_t div (int __numer, int __denom)
__attribute__ ((__const__));
extern ldiv_t ldiv (long int __numer, long int __denom)
__attribute__ ((__const__));
extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign) ;
extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign) ;
extern char *gcvt (double __value, int __ndigit, char *__buf) ;
extern char *qecvt (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign) ;
extern char *qfcvt (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign) ;
extern char *qgcvt (long double __value, int __ndigit, char *__buf) ;
extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign, char *__restrict __buf,
size_t __len) ;
extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
int *__restrict __sign, char *__restrict __buf,
size_t __len) ;
extern int qecvt_r (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign,
char *__restrict __buf, size_t __len) ;
extern int qfcvt_r (long double __value, int __ndigit,
int *__restrict __decpt, int *__restrict __sign,
char *__restrict __buf, size_t __len) ;
# 799 "/uClinux-dist/lib/uClibc/include/stdlib.h"
extern int rpmatch (__const char *__response) ;
# 820 "/uClinux-dist/lib/uClibc/include/stdlib.h"
# 851 "/uClinux-dist/lib/uClibc/include/stdlib.h"
# 862 "/uClinux-dist/lib/uClibc/include/stdlib.h"
extern int getloadavg (double __loadavg[], int __nelem) ;
# 23 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/sys/stat.h" 1
# 78 "/uClinux-dist/lib/uClibc/include/sys/stat.h"
# 94 "/uClinux-dist/lib/uClibc/include/sys/stat.h"
# 1 "/uClinux-dist/lib/uClibc/include/bits/stat.h" 1
struct stat
{
__dev_t st_dev;
unsigned short int __pad1;
__ino_t st_ino;
__mode_t st_mode;
__nlink_t st_nlink;
__uid_t st_uid;
__gid_t st_gid;
__dev_t st_rdev;
unsigned short int __pad2;
__off_t st_size;
__blksize_t st_blksize;
__blkcnt_t st_blocks;
__time_t st_atime;
unsigned long int __unused1;
__time_t st_mtime;
unsigned long int __unused2;
__time_t st_ctime;
unsigned long int __unused3;
unsigned long int __unused4;
unsigned long int __unused5;
};
# 102 "/uClinux-dist/lib/uClibc/include/bits/stat.h"
# 98 "/uClinux-dist/lib/uClibc/include/sys/stat.h" 2
extern int stat (__const char *__restrict __file,
struct stat *__restrict __buf) ;
extern int fstat (int __fd, struct stat *__buf) ;
# 217 "/uClinux-dist/lib/uClibc/include/sys/stat.h"
extern int lstat (__const char *__restrict __file,
struct stat *__restrict __buf) ;
# 239 "/uClinux-dist/lib/uClibc/include/sys/stat.h"
extern int chmod (__const char *__file, __mode_t __mode) ;
extern int fchmod (int __fd, __mode_t __mode) ;
extern __mode_t umask (__mode_t __mask) ;
extern int mkdir (__const char *__path, __mode_t __mode) ;
extern int mknod (__const char *__path, __mode_t __mode, __dev_t __dev)
;
extern int mkfifo (__const char *__path, __mode_t __mode) ;
extern int __fxstat (int __ver, int __fildes, struct stat *__stat_buf) ;
extern int __xstat (int __ver, __const char *__filename,
struct stat *__stat_buf) ;
extern int __lxstat (int __ver, __const char *__filename,
struct stat *__stat_buf) ;
# 327 "/uClinux-dist/lib/uClibc/include/sys/stat.h"
extern int __xmknod (int __ver, __const char *__path, __mode_t __mode,
__dev_t *__dev) ;
extern __inline__ int stat (__const char *__path,
struct stat *__statbuf)
{
return __xstat (3 , __path, __statbuf);
}
extern __inline__ int lstat (__const char *__path,
struct stat *__statbuf)
{
return __lxstat (3 , __path, __statbuf);
}
extern __inline__ int fstat (int __fd, struct stat *__statbuf)
{
return __fxstat (3 , __fd, __statbuf);
}
extern __inline__ int mknod (__const char *__path, __mode_t __mode,
__dev_t __dev)
{
return __xmknod (1 , __path, __mode, &__dev);
}
# 391 "/uClinux-dist/lib/uClibc/include/sys/stat.h"
# 24 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/sys/wait.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/signal.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/sigset.h" 1
# 33 "/uClinux-dist/lib/uClibc/include/bits/sigset.h"
# 97 "/uClinux-dist/lib/uClibc/include/bits/sigset.h"
extern int __sigismember (__const __sigset_t *, int);
extern int __sigaddset (__sigset_t *, int);
extern int __sigdelset (__sigset_t *, int);
# 122 "/uClinux-dist/lib/uClibc/include/bits/sigset.h"
# 33 "/uClinux-dist/lib/uClibc/include/signal.h" 2
typedef __sig_atomic_t sig_atomic_t;
# 1 "/uClinux-dist/lib/uClibc/include/bits/signum.h" 1
# 56 "/uClinux-dist/lib/uClibc/include/signal.h" 2
# 67 "/uClinux-dist/lib/uClibc/include/signal.h"
typedef void (*__sighandler_t) (int);
extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler)
;
extern __sighandler_t signal (int __sig, __sighandler_t __handler) ;
# 98 "/uClinux-dist/lib/uClibc/include/signal.h"
extern int kill (__pid_t __pid, int __sig) ;
extern int killpg (__pid_t __pgrp, int __sig) ;
extern int raise (int __sig) ;
extern __sighandler_t ssignal (int __sig, __sighandler_t __handler) ;
extern int gsignal (int __sig) ;
extern void psignal (int __sig, __const char *__s) ;
extern int __sigpause (int __sig_or_mask, int __is_sig) ;
extern int sigpause (int __mask) ;
# 155 "/uClinux-dist/lib/uClibc/include/signal.h"
extern int sigblock (int __mask) ;
extern int sigsetmask (int __mask) ;
extern int siggetmask (void) ;
typedef __sighandler_t sig_t;
# 1 "/uClinux-dist/lib/uClibc/include/time.h" 1
# 51 "/uClinux-dist/lib/uClibc/include/time.h"
# 61 "/uClinux-dist/lib/uClibc/include/time.h"
# 72 "/uClinux-dist/lib/uClibc/include/time.h"
# 84 "/uClinux-dist/lib/uClibc/include/time.h"
# 96 "/uClinux-dist/lib/uClibc/include/time.h"
# 112 "/uClinux-dist/lib/uClibc/include/time.h"
# 366 "/uClinux-dist/lib/uClibc/include/time.h"
# 196 "/uClinux-dist/lib/uClibc/include/signal.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/bits/siginfo.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/wordsize.h" 1
# 25 "/uClinux-dist/lib/uClibc/include/bits/siginfo.h" 2
typedef union sigval
{
int sival_int;
void *sival_ptr;
} sigval_t;
typedef struct siginfo
{
int si_signo;
int si_errno;
int si_code;
union
{
int _pad[((128 / sizeof (int)) - 3) ];
struct
{
__pid_t si_pid;
__uid_t si_uid;
} _kill;
struct
{
unsigned int _timer1;
unsigned int _timer2;
} _timer;
struct
{
__pid_t si_pid;
__uid_t si_uid;
sigval_t si_sigval;
} _rt;
struct
{
__pid_t si_pid;
__uid_t si_uid;
int si_status;
__clock_t si_utime;
__clock_t si_stime;
} _sigchld;
struct
{
void *si_addr;
} _sigfault;
struct
{
long int si_band;
int si_fd;
} _sigpoll;
} _sifields;
} siginfo_t;
enum
{
SI_ASYNCNL = -6,
SI_SIGIO,
SI_ASYNCIO,
SI_MESGQ,
SI_TIMER,
SI_QUEUE,
SI_USER,
SI_KERNEL = 0x80
};
enum
{
ILL_ILLOPC = 1,
ILL_ILLOPN,
ILL_ILLADR,
ILL_ILLTRP,
ILL_PRVOPC,
ILL_PRVREG,
ILL_COPROC,
ILL_BADSTK
};
enum
{
FPE_INTDIV = 1,
FPE_INTOVF,
FPE_FLTDIV,
FPE_FLTOVF,
FPE_FLTUND,
FPE_FLTRES,
FPE_FLTINV,
FPE_FLTSUB
};
enum
{
SEGV_MAPERR = 1,
SEGV_ACCERR
};
enum
{
BUS_ADRALN = 1,
BUS_ADRERR,
BUS_OBJERR
};
enum
{
TRAP_BRKPT = 1,
TRAP_TRACE
};
enum
{
CLD_EXITED = 1,
CLD_KILLED,
CLD_DUMPED,
CLD_TRAPPED,
CLD_STOPPED,
CLD_CONTINUED
};
enum
{
POLL_IN = 1,
POLL_OUT,
POLL_MSG,
POLL_ERR,
POLL_PRI,
POLL_HUP
};
struct __pthread_attr_s;
typedef struct sigevent
{
sigval_t sigev_value;
int sigev_signo;
int sigev_notify;
union
{
int _pad[((64 / sizeof (int)) - 3) ];
struct
{
void (*_function) (sigval_t);
struct __pthread_attr_s *_attribute;
} _sigev_thread;
} _sigev_un;
} sigevent_t;
enum
{
SIGEV_SIGNAL = 0,
SIGEV_NONE,
SIGEV_THREAD
};
# 199 "/uClinux-dist/lib/uClibc/include/signal.h" 2
extern int sigemptyset (sigset_t *__set) ;
extern int sigfillset (sigset_t *__set) ;
extern int sigaddset (sigset_t *__set, int __signo) ;
extern int sigdelset (sigset_t *__set, int __signo) ;
extern int sigismember (__const sigset_t *__set, int __signo) ;
# 228 "/uClinux-dist/lib/uClibc/include/signal.h"
# 1 "/uClinux-dist/lib/uClibc/include/bits/sigaction.h" 1
struct sigaction
{
union
{
__sighandler_t sa_handler;
void (*sa_sigaction) (int, siginfo_t *, void *);
}
__sigaction_handler;
__sigset_t sa_mask;
int sa_flags;
void (*sa_restorer) (void);
};
# 232 "/uClinux-dist/lib/uClibc/include/signal.h" 2
extern int sigprocmask (int __how, __const sigset_t *__restrict __set,
sigset_t *__restrict __oset) ;
extern int sigsuspend (__const sigset_t *__set) ;
extern int sigaction (int __sig, __const struct sigaction *__restrict __act,
struct sigaction *__restrict __oact) ;
extern int sigpending (sigset_t *__set) ;
extern int sigwait (__const sigset_t *__restrict __set, int *__restrict __sig)
;
extern int sigwaitinfo (__const sigset_t *__restrict __set,
siginfo_t *__restrict __info) ;
extern int sigtimedwait (__const sigset_t *__restrict __set,
siginfo_t *__restrict __info,
__const struct timespec *__restrict __timeout)
;
extern int sigqueue (__pid_t __pid, int __sig, __const union sigval __val)
;
extern __const char *__const _sys_siglist[64 ];
extern __const char *__const sys_siglist[64 ];
struct sigvec
{
__sighandler_t sv_handler;
int sv_mask;
int sv_flags;
};
extern int sigvec (int __sig, __const struct sigvec *__vec,
struct sigvec *__ovec) ;
# 1 "/uClinux-dist/lib/uClibc/include/bits/sigcontext.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/asm/sigcontext.h" 1
struct sigcontext {
unsigned long trap_no;
unsigned long error_code;
unsigned long oldmask;
unsigned long arm_r0;
unsigned long arm_r1;
unsigned long arm_r2;
unsigned long arm_r3;
unsigned long arm_r4;
unsigned long arm_r5;
unsigned long arm_r6;
unsigned long arm_r7;
unsigned long arm_r8;
unsigned long arm_r9;
unsigned long arm_r10;
unsigned long arm_fp;
unsigned long arm_ip;
unsigned long arm_sp;
unsigned long arm_lr;
unsigned long arm_pc;
unsigned long arm_cpsr;
unsigned long fault_address;
};
# 28 "/uClinux-dist/lib/uClibc/include/bits/sigcontext.h" 2
# 307 "/uClinux-dist/lib/uClibc/include/signal.h" 2
extern int sigreturn (struct sigcontext *__scp) ;
extern int siginterrupt (int __sig, int __interrupt) ;
# 1 "/uClinux-dist/lib/uClibc/include/bits/sigstack.h" 1
struct sigstack
{
void *ss_sp;
int ss_onstack;
};
enum
{
SS_ONSTACK = 1,
SS_DISABLE
};
typedef struct sigaltstack
{
void *ss_sp;
int ss_flags;
size_t ss_size;
} stack_t;
# 322 "/uClinux-dist/lib/uClibc/include/signal.h" 2
extern int sigstack (struct sigstack *__ss, struct sigstack *__oss) ;
extern int sigaltstack (__const struct sigaltstack *__restrict __ss,
struct sigaltstack *__restrict __oss) ;
# 353 "/uClinux-dist/lib/uClibc/include/signal.h"
extern int __libc_current_sigrtmin (void) ;
extern int __libc_current_sigrtmax (void) ;
# 30 "/uClinux-dist/lib/uClibc/include/sys/wait.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/sys/resource.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/resource.h" 1
enum __rlimit_resource
{
RLIMIT_CPU = 0,
RLIMIT_FSIZE = 1,
RLIMIT_DATA = 2,
RLIMIT_STACK = 3,
RLIMIT_CORE = 4,
RLIMIT_RSS = 5,
RLIMIT_NOFILE = 7,
RLIMIT_OFILE = RLIMIT_NOFILE,
RLIMIT_AS = 9,
RLIMIT_NPROC = 6,
RLIMIT_MEMLOCK = 8,
RLIMIT_LOCKS = 10,
RLIMIT_NLIMITS = 11,
RLIM_NLIMITS = RLIMIT_NLIMITS
};
typedef __rlim_t rlim_t;
struct rlimit
{
rlim_t rlim_cur;
rlim_t rlim_max;
};
# 131 "/uClinux-dist/lib/uClibc/include/bits/resource.h"
enum __rusage_who
{
RUSAGE_SELF = 0,
RUSAGE_CHILDREN = -1,
RUSAGE_BOTH = -2
};
# 1 "/uClinux-dist/lib/uClibc/include/bits/time.h" 1
# 53 "/uClinux-dist/lib/uClibc/include/bits/time.h"
# 68 "/uClinux-dist/lib/uClibc/include/bits/time.h"
# 150 "/uClinux-dist/lib/uClibc/include/bits/resource.h" 2
struct rusage
{
struct timeval ru_utime;
struct timeval ru_stime;
long int ru_maxrss;
long int ru_ixrss;
long int ru_idrss;
long int ru_isrss;
long int ru_minflt;
long int ru_majflt;
long int ru_nswap;
long int ru_inblock;
long int ru_oublock;
long int ru_msgsnd;
long int ru_msgrcv;
long int ru_nsignals;
long int ru_nvcsw;
long int ru_nivcsw;
};
enum __priority_which
{
PRIO_PROCESS = 0,
PRIO_PGRP = 1,
PRIO_USER = 2
};
# 25 "/uClinux-dist/lib/uClibc/include/sys/resource.h" 2
typedef int __rlimit_resource_t;
typedef int __rusage_who_t;
typedef int __priority_which_t;
extern int getrlimit (__rlimit_resource_t __resource,
struct rlimit *__rlimits) ;
# 61 "/uClinux-dist/lib/uClibc/include/sys/resource.h"
extern int setrlimit (__rlimit_resource_t __resource,
__const struct rlimit *__rlimits) ;
# 81 "/uClinux-dist/lib/uClibc/include/sys/resource.h"
extern int getrusage (__rusage_who_t __who, struct rusage *__usage) ;
extern int getpriority (__priority_which_t __which, id_t __who) ;
extern int setpriority (__priority_which_t __which, id_t __who, int __prio)
;
# 31 "/uClinux-dist/lib/uClibc/include/sys/wait.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/bits/waitflags.h" 1
# 37 "/uClinux-dist/lib/uClibc/include/sys/wait.h" 2
typedef union
{
union wait *__uptr;
int *__iptr;
} __WAIT_STATUS __attribute__ ((__transparent_union__));
# 1 "/uClinux-dist/lib/uClibc/include/bits/waitstatus.h" 1
union wait
{
int w_status;
struct
{
unsigned int:16;
unsigned int __w_retcode:8;
unsigned int __w_coredump:1;
unsigned int __w_termsig:7;
} __wait_terminated;
struct
{
unsigned int:16;
unsigned int __w_stopsig:8;
unsigned int __w_stopval:8;
} __wait_stopped;
};
# 79 "/uClinux-dist/lib/uClibc/include/sys/wait.h" 2
typedef enum
{
P_ALL,
P_PID,
P_PGID
} idtype_t;
extern __pid_t wait (__WAIT_STATUS __stat_loc) ;
extern __pid_t waitpid (__pid_t __pid, int *__stat_loc, int __options) ;
# 1 "/uClinux-dist/lib/uClibc/include/bits/siginfo.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/wordsize.h" 1
# 25 "/uClinux-dist/lib/uClibc/include/bits/siginfo.h" 2
# 38 "/uClinux-dist/lib/uClibc/include/bits/siginfo.h"
# 255 "/uClinux-dist/lib/uClibc/include/bits/siginfo.h"
# 306 "/uClinux-dist/lib/uClibc/include/bits/siginfo.h"
# 133 "/uClinux-dist/lib/uClibc/include/sys/wait.h" 2
extern int waitid (idtype_t __idtype, __id_t __id, siginfo_t *__infop,
int __options) ;
struct rusage;
extern __pid_t wait3 (__WAIT_STATUS __stat_loc, int __options,
struct rusage * __usage) ;
struct rusage;
extern __pid_t wait4 (__pid_t __pid, __WAIT_STATUS __stat_loc, int __options,
struct rusage *__usage) ;
# 26 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/sys/time.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/time.h" 1
# 51 "/uClinux-dist/lib/uClibc/include/time.h"
# 61 "/uClinux-dist/lib/uClibc/include/time.h"
# 72 "/uClinux-dist/lib/uClibc/include/time.h"
# 84 "/uClinux-dist/lib/uClibc/include/time.h"
# 96 "/uClinux-dist/lib/uClibc/include/time.h"
# 112 "/uClinux-dist/lib/uClibc/include/time.h"
# 366 "/uClinux-dist/lib/uClibc/include/time.h"
# 26 "/uClinux-dist/lib/uClibc/include/sys/time.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/bits/time.h" 1
# 53 "/uClinux-dist/lib/uClibc/include/bits/time.h"
# 68 "/uClinux-dist/lib/uClibc/include/bits/time.h"
# 28 "/uClinux-dist/lib/uClibc/include/sys/time.h" 2
typedef __suseconds_t suseconds_t;
# 50 "/uClinux-dist/lib/uClibc/include/sys/time.h"
struct timezone
{
int tz_minuteswest;
int tz_dsttime;
};
typedef struct timezone *__restrict __timezone_ptr_t;
extern int gettimeofday (struct timeval *__restrict __tv,
__timezone_ptr_t __tz) ;
extern int settimeofday (__const struct timeval *__tv,
__const struct timezone *__tz) ;
extern int adjtime (__const struct timeval *__delta,
struct timeval *__olddelta) ;
enum __itimer_which
{
ITIMER_REAL = 0,
ITIMER_VIRTUAL = 1,
ITIMER_PROF = 2
};
struct itimerval
{
struct timeval it_interval;
struct timeval it_value;
};
typedef int __itimer_which_t;
extern int getitimer (__itimer_which_t __which,
struct itimerval *__value) ;
extern int setitimer (__itimer_which_t __which,
__const struct itimerval *__restrict __new,
struct itimerval *__restrict __old) ;
extern int utimes (__const char *__file, __const struct timeval __tvp[2])
;
# 160 "/uClinux-dist/lib/uClibc/include/sys/time.h"
# 169 "/uClinux-dist/lib/uClibc/include/sys/time.h"
# 27 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/dirent.h" 1
# 45 "/uClinux-dist/lib/uClibc/include/dirent.h"
# 1 "/uClinux-dist/lib/uClibc/include/bits/dirent.h" 1
struct dirent
{
__ino_t d_ino;
__off_t d_off;
unsigned short int d_reclen;
char d_name[256];
};
# 48 "/uClinux-dist/lib/uClibc/include/bits/dirent.h"
# 62 "/uClinux-dist/lib/uClibc/include/dirent.h" 2
enum
{
DT_UNKNOWN = 0,
DT_FIFO = 1,
DT_CHR = 2,
DT_DIR = 4,
DT_BLK = 6,
DT_REG = 8,
DT_LNK = 10,
DT_SOCK = 12,
DT_WHT = 14
};
typedef struct __dirstream DIR;
extern DIR *opendir (__const char *__name) ;
extern int closedir (DIR *__dirp) ;
extern struct dirent *readdir (DIR *__dirp) ;
extern int readdir_r (DIR *__restrict __dirp,
struct dirent *__restrict __entry,
struct dirent **__restrict __result) ;
# 176 "/uClinux-dist/lib/uClibc/include/dirent.h"
extern void rewinddir (DIR *__dirp) ;
extern void seekdir (DIR *__dirp, long int __pos) ;
extern long int telldir (DIR *__dirp) ;
extern int dirfd (DIR *__dirp) ;
# 1 "/uClinux-dist/lib/uClibc/include/bits/posix1_lim.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/local_lim.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/linux/limits.h" 1
# 36 "/uClinux-dist/lib/uClibc/include/bits/local_lim.h" 2
# 126 "/uClinux-dist/lib/uClibc/include/bits/posix1_lim.h" 2
# 209 "/uClinux-dist/lib/uClibc/include/dirent.h" 2
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 220 "/uClinux-dist/lib/uClibc/include/dirent.h" 2
extern int scandir (__const char *__restrict __dir,
struct dirent ***__restrict __namelist,
int (*__selector) (__const struct dirent *),
int (*__cmp) (__const void *, __const void *)) ;
# 242 "/uClinux-dist/lib/uClibc/include/dirent.h"
extern int alphasort (__const void *__e1, __const void *__e2)
;
# 266 "/uClinux-dist/lib/uClibc/include/dirent.h"
# 293 "/uClinux-dist/lib/uClibc/include/dirent.h"
extern __ssize_t getdirentries (int __fd, char *__restrict __buf,
size_t __nbytes,
__off_t *__restrict __basep) ;
# 313 "/uClinux-dist/lib/uClibc/include/dirent.h"
# 28 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/errno.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/errno.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/linux/errno.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/asm/errno.h" 1
# 4 "/uClinux-dist/lib/uClibc/include/linux/errno.h" 2
# 24 "/uClinux-dist/lib/uClibc/include/linux/errno.h"
# 25 "/uClinux-dist/lib/uClibc/include/bits/errno.h" 2
extern int errno;
extern int *__errno_location (void) __attribute__ ((__const__));
# 36 "/uClinux-dist/lib/uClibc/include/errno.h" 2
# 58 "/uClinux-dist/lib/uClibc/include/errno.h"
# 29 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/string.h" 1
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 33 "/uClinux-dist/lib/uClibc/include/string.h" 2
extern void *memcpy (void *__restrict __dest,
__const void *__restrict __src, size_t __n) ;
extern void *memmove (void *__dest, __const void *__src, size_t __n)
;
extern void *memccpy (void *__restrict __dest, __const void *__restrict __src,
int __c, size_t __n)
;
extern void *memset (void *__s, int __c, size_t __n) ;
extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)
;
extern void *memchr (__const void *__s, int __c, size_t __n)
;
extern void *memrchr (__const void *__s, int __c, size_t __n)
;
extern char *strcpy (char *__restrict __dest, __const char *__restrict __src)
;
extern char *strncpy (char *__restrict __dest,
__const char *__restrict __src, size_t __n) ;
extern char *strcat (char *__restrict __dest, __const char *__restrict __src)
;
extern char *strncat (char *__restrict __dest, __const char *__restrict __src,
size_t __n) ;
extern int strcmp (__const char *__s1, __const char *__s2)
;
extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)
;
extern int strcoll (__const char *__s1, __const char *__s2)
;
extern size_t strxfrm (char *__restrict __dest,
__const char *__restrict __src, size_t __n) ;
# 118 "/uClinux-dist/lib/uClibc/include/string.h"
extern char *strdup (__const char *__s) ;
# 154 "/uClinux-dist/lib/uClibc/include/string.h"
extern char *strchr (__const char *__s, int __c) ;
extern char *strrchr (__const char *__s, int __c) ;
extern size_t strcspn (__const char *__s, __const char *__reject)
;
extern size_t strspn (__const char *__s, __const char *__accept)
;
extern char *strpbrk (__const char *__s, __const char *__accept)
;
extern char *strstr (__const char *__haystack, __const char *__needle)
;
extern char *strtok (char *__restrict __s, __const char *__restrict __delim)
;
extern char *__strtok_r (char *__restrict __s,
__const char *__restrict __delim,
char **__restrict __save_ptr) ;
extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim,
char **__restrict __save_ptr) ;
# 219 "/uClinux-dist/lib/uClibc/include/string.h"
extern size_t strlen (__const char *__s) ;
extern char *strerror (int __errnum) ;
extern int strerror_r (int __errnum, char *__buf, size_t buflen) ;
extern void __bzero (void *__s, size_t __n) ;
extern void bcopy (__const void *__src, void *__dest, size_t __n) ;
extern void bzero (void *__s, size_t __n) ;
extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)
;
extern char *index (__const char *__s, int __c) ;
extern char *rindex (__const char *__s, int __c) ;
extern int ffs (int __i) __attribute__ ((__const__));
extern int strcasecmp (__const char *__s1, __const char *__s2)
;
extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)
;
# 296 "/uClinux-dist/lib/uClibc/include/string.h"
extern char *strsep (char **__restrict __stringp,
__const char *__restrict __delim) ;
# 343 "/uClinux-dist/lib/uClibc/include/string.h"
# 374 "/uClinux-dist/lib/uClibc/include/string.h"
# 30 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/termios.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/termios.h" 1
typedef unsigned char cc_t;
typedef unsigned int speed_t;
typedef unsigned int tcflag_t;
struct termios
{
tcflag_t c_iflag;
tcflag_t c_oflag;
tcflag_t c_cflag;
tcflag_t c_lflag;
cc_t c_line;
cc_t c_cc[32 ];
speed_t c_ispeed;
speed_t c_ospeed;
};
# 40 "/uClinux-dist/lib/uClibc/include/termios.h" 2
extern speed_t cfgetospeed (__const struct termios *__termios_p) ;
extern speed_t cfgetispeed (__const struct termios *__termios_p) ;
extern int cfsetospeed (struct termios *__termios_p, speed_t __speed) ;
extern int cfsetispeed (struct termios *__termios_p, speed_t __speed) ;
extern int cfsetspeed (struct termios *__termios_p, speed_t __speed) ;
extern int tcgetattr (int __fd, struct termios *__termios_p) ;
extern int tcsetattr (int __fd, int __optional_actions,
__const struct termios *__termios_p) ;
extern void cfmakeraw (struct termios *__termios_p) ;
extern int tcsendbreak (int __fd, int __duration) ;
extern int tcdrain (int __fd) ;
extern int tcflush (int __fd, int __queue_selector) ;
extern int tcflow (int __fd, int __action) ;
# 1 "/uClinux-dist/lib/uClibc/include/sys/ttydefaults.h" 1
# 102 "/uClinux-dist/lib/uClibc/include/termios.h" 2
# 31 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/ctype.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/uClibc_ctype.h" 1
enum {
__CTYPE_unclassified = 0,
__CTYPE_alpha_nonupper_nonlower,
__CTYPE_alpha_lower,
__CTYPE_alpha_upper_lower,
__CTYPE_alpha_upper,
__CTYPE_digit,
__CTYPE_punct,
__CTYPE_graph,
__CTYPE_print_space_nonblank,
__CTYPE_print_space_blank,
__CTYPE_space_nonblank_noncntrl,
__CTYPE_space_blank_noncntrl,
__CTYPE_cntrl_space_nonblank,
__CTYPE_cntrl_space_blank,
__CTYPE_cntrl_nonspace,
};
enum {
_CTYPE_unclassified = 0,
_CTYPE_isalnum,
_CTYPE_isalpha,
_CTYPE_isblank,
_CTYPE_iscntrl,
_CTYPE_isdigit,
_CTYPE_isgraph,
_CTYPE_islower,
_CTYPE_isprint,
_CTYPE_ispunct,
_CTYPE_isspace,
_CTYPE_isupper,
_CTYPE_isxdigit
};
# 122 "/uClinux-dist/lib/uClibc/include/bits/uClibc_ctype.h"
enum {
_CTYPE_tolower = 1,
_CTYPE_toupper,
_CTYPE_totitle
};
# 25 "/uClinux-dist/lib/uClibc/include/ctype.h" 2
extern int isalnum(int c) ;
extern int isalpha(int c) ;
extern int iscntrl(int c) ;
extern int isdigit(int c) ;
extern int isgraph(int c) ;
extern int islower(int c) ;
extern int isprint(int c) ;
extern int ispunct(int c) ;
extern int isspace(int c) ;
extern int isupper(int c) ;
extern int isxdigit(int c) ;
extern int tolower(int c) ;
extern int toupper(int c) ;
extern int isascii(int c) ;
extern int toascii(int c) ;
extern int isxlower(int c) ;
extern int isxupper(int c) ;
# 32 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/fcntl.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/fcntl.h" 1
# 135 "/uClinux-dist/lib/uClibc/include/bits/fcntl.h"
struct flock
{
short int l_type;
short int l_whence;
__off_t l_start;
__off_t l_len;
__pid_t l_pid;
};
# 160 "/uClinux-dist/lib/uClibc/include/bits/fcntl.h"
# 33 "/uClinux-dist/lib/uClibc/include/fcntl.h" 2
extern int fcntl (int __fd, int __cmd, ...) ;
extern int open (__const char *__file, int __oflag, ...) ;
extern int creat (__const char *__file, __mode_t __mode) ;
# 133 "/uClinux-dist/lib/uClibc/include/fcntl.h"
# 172 "/uClinux-dist/lib/uClibc/include/fcntl.h"
# 33 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/sys/utsname.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/utsname.h" 1
# 30 "/uClinux-dist/lib/uClibc/include/sys/utsname.h" 2
struct utsname
{
char sysname[65 ];
char nodename[65 ];
char release[65 ];
char version[65 ];
char machine[65 ];
char __domainname[65 ];
};
extern int uname (struct utsname *__name) ;
# 35 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/net/if.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/sys/socket.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/sys/uio.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/uio.h" 1
struct iovec
{
void *iov_base;
size_t iov_len;
};
# 29 "/uClinux-dist/lib/uClibc/include/sys/uio.h" 2
extern ssize_t readv (int __fd, __const struct iovec *__vector, int __count)
;
extern ssize_t writev (int __fd, __const struct iovec *__vector, int __count)
;
# 27 "/uClinux-dist/lib/uClibc/include/sys/socket.h" 2
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 29 "/uClinux-dist/lib/uClibc/include/sys/socket.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/bits/socket.h" 1
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 29 "/uClinux-dist/lib/uClibc/include/bits/socket.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/limits.h" 1
# 113 "/uClinux-dist/lib/uClibc/include/limits.h"
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/limits.h" 1 3
# 107 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/limits.h" 3
# 124 "/uClinux-dist/lib/uClibc/include/limits.h" 2
# 139 "/uClinux-dist/lib/uClibc/include/limits.h"
# 1 "/uClinux-dist/lib/uClibc/include/bits/posix2_lim.h" 1
# 148 "/uClinux-dist/lib/uClibc/include/limits.h" 2
# 31 "/uClinux-dist/lib/uClibc/include/bits/socket.h" 2
enum __socket_type
{
SOCK_STREAM = 1,
SOCK_DGRAM = 2,
SOCK_RAW = 3,
SOCK_RDM = 4,
SOCK_SEQPACKET = 5,
SOCK_PACKET = 10
};
# 1 "/uClinux-dist/lib/uClibc/include/bits/sockaddr.h" 1
typedef unsigned short int sa_family_t;
# 142 "/uClinux-dist/lib/uClibc/include/bits/socket.h" 2
struct sockaddr
{
sa_family_t sa_family ;
char sa_data[14];
};
struct sockaddr_storage
{
sa_family_t ss_family ;
__uint32_t __ss_align;
char __ss_padding[(128 - (2 * sizeof (__uint32_t ))) ];
};
enum
{
MSG_OOB = 0x01,
MSG_PEEK = 0x02,
MSG_DONTROUTE = 0x04,
MSG_CTRUNC = 0x08,
MSG_PROXY = 0x10,
MSG_TRUNC = 0x20,
MSG_DONTWAIT = 0x40,
MSG_EOR = 0x80,
MSG_WAITALL = 0x100,
MSG_FIN = 0x200,
MSG_SYN = 0x400,
MSG_CONFIRM = 0x800,
MSG_RST = 0x1000,
MSG_ERRQUEUE = 0x2000,
MSG_NOSIGNAL = 0x4000,
MSG_MORE = 0x8000
};
struct msghdr
{
void *msg_name;
socklen_t msg_namelen;
struct iovec *msg_iov;
int msg_iovlen;
void *msg_control;
socklen_t msg_controllen;
int msg_flags;
};
struct cmsghdr
{
size_t cmsg_len;
int cmsg_level;
int cmsg_type;
__extension__ unsigned char __cmsg_data [0] ;
};
extern struct cmsghdr *__cmsg_nxthdr (struct msghdr *__mhdr,
struct cmsghdr *__cmsg) ;
# 280 "/uClinux-dist/lib/uClibc/include/bits/socket.h"
enum
{
SCM_RIGHTS = 0x01,
SCM_CREDENTIALS = 0x02,
__SCM_CONNECT = 0x03
};
struct ucred
{
pid_t pid;
uid_t uid;
gid_t gid;
};
# 1 "/uClinux-dist/lib/uClibc/include/asm/socket.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/asm/sockios.h" 1
# 4 "/uClinux-dist/lib/uClibc/include/asm/socket.h" 2
# 62 "/uClinux-dist/lib/uClibc/include/asm/socket.h"
# 305 "/uClinux-dist/lib/uClibc/include/bits/socket.h" 2
struct linger
{
int l_onoff;
int l_linger;
};
# 35 "/uClinux-dist/lib/uClibc/include/sys/socket.h" 2
struct osockaddr
{
unsigned short int sa_family;
unsigned char sa_data[14];
};
enum
{
SHUT_RD = 0,
SHUT_WR,
SHUT_RDWR
};
# 94 "/uClinux-dist/lib/uClibc/include/sys/socket.h"
extern int socket (int __domain, int __type, int __protocol) ;
extern int socketpair (int __domain, int __type, int __protocol,
int __fds[2]) ;
extern int bind (int __fd, __const struct sockaddr * __addr, socklen_t __len)
;
extern int getsockname (int __fd, struct sockaddr *__restrict __addr,
socklen_t *__restrict __len) ;
extern int connect (int __fd, __const struct sockaddr * __addr, socklen_t __len)
;
extern int getpeername (int __fd, struct sockaddr *__restrict __addr,
socklen_t *__restrict __len) ;
extern ssize_t send (int __fd, __const void *__buf, size_t __n, int __flags)
;
extern ssize_t recv (int __fd, void *__buf, size_t __n, int __flags)
;
extern ssize_t sendto (int __fd, __const void *__buf, size_t __n,
int __flags, __const struct sockaddr * __addr,
socklen_t __addr_len) ;
extern ssize_t recvfrom (int __fd, void *__restrict __buf, size_t __n, int __flags,
struct sockaddr *__restrict __addr, socklen_t *__restrict __addr_len)
;
extern ssize_t sendmsg (int __fd, __const struct msghdr *__message, int __flags)
;
extern ssize_t recvmsg (int __fd, struct msghdr *__message, int __flags)
;
extern int getsockopt (int __fd, int __level, int __optname,
void *__restrict __optval,
socklen_t *__restrict __optlen) ;
extern int setsockopt (int __fd, int __level, int __optname,
__const void *__optval, socklen_t __optlen) ;
extern int listen (int __fd, int __n) ;
extern int accept (int __fd, struct sockaddr *__restrict __addr,
socklen_t *__restrict __addr_len)
;
extern int shutdown (int __fd, int __how) ;
extern int isfdtype (int __fd, int __fdtype) ;
# 27 "/uClinux-dist/lib/uClibc/include/net/if.h" 2
struct if_nameindex
{
unsigned int if_index;
char *if_name;
};
enum
{
IFF_UP = 0x1,
IFF_BROADCAST = 0x2,
IFF_DEBUG = 0x4,
IFF_LOOPBACK = 0x8,
IFF_POINTOPOINT = 0x10,
IFF_NOTRAILERS = 0x20,
IFF_RUNNING = 0x40,
IFF_NOARP = 0x80,
IFF_PROMISC = 0x100,
IFF_ALLMULTI = 0x200,
IFF_MASTER = 0x400,
IFF_SLAVE = 0x800,
IFF_MULTICAST = 0x1000,
IFF_PORTSEL = 0x2000,
IFF_AUTOMEDIA = 0x4000
};
struct ifaddr
{
struct sockaddr ifa_addr;
union
{
struct sockaddr ifu_broadaddr;
struct sockaddr ifu_dstaddr;
} ifa_ifu;
struct iface *ifa_ifp;
struct ifaddr *ifa_next;
};
struct ifmap
{
unsigned long int mem_start;
unsigned long int mem_end;
unsigned short int base_addr;
unsigned char irq;
unsigned char dma;
unsigned char port;
};
struct ifreq
{
union
{
char ifrn_name[16 ];
} ifr_ifrn;
union
{
struct sockaddr ifru_addr;
struct sockaddr ifru_dstaddr;
struct sockaddr ifru_broadaddr;
struct sockaddr ifru_netmask;
struct sockaddr ifru_hwaddr;
short int ifru_flags;
int ifru_ivalue;
int ifru_mtu;
struct ifmap ifru_map;
char ifru_slave[16 ];
char ifru_newname[16 ];
__caddr_t ifru_data;
} ifr_ifru;
};
struct ifconf
{
int ifc_len;
union
{
__caddr_t ifcu_buf;
struct ifreq *ifcu_req;
} ifc_ifcu;
};
extern unsigned int if_nametoindex (__const char *__ifname) ;
extern char *if_indextoname (unsigned int __ifindex, char *__ifname) ;
extern struct if_nameindex *if_nameindex (void) ;
extern void if_freenameindex (struct if_nameindex *__ptr) ;
# 36 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/netinet/in.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/stdint.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/bits/wordsize.h" 1
# 30 "/uClinux-dist/lib/uClibc/include/stdint.h" 2
# 48 "/uClinux-dist/lib/uClibc/include/stdint.h"
typedef unsigned char uint8_t;
typedef unsigned short int uint16_t;
typedef unsigned int uint32_t;
__extension__
typedef unsigned long long int uint64_t;
typedef signed char int_least8_t;
typedef short int int_least16_t;
typedef int int_least32_t;
__extension__
typedef long long int int_least64_t;
typedef unsigned char uint_least8_t;
typedef unsigned short int uint_least16_t;
typedef unsigned int uint_least32_t;
__extension__
typedef unsigned long long int uint_least64_t;
typedef signed char int_fast8_t;
typedef int int_fast16_t;
typedef int int_fast32_t;
__extension__
typedef long long int int_fast64_t;
typedef unsigned char uint_fast8_t;
typedef unsigned int uint_fast16_t;
typedef unsigned int uint_fast32_t;
__extension__
typedef unsigned long long int uint_fast64_t;
typedef unsigned int uintptr_t;
__extension__
typedef long long int intmax_t;
__extension__
typedef unsigned long long int uintmax_t;
# 257 "/uClinux-dist/lib/uClibc/include/stdint.h"
# 292 "/uClinux-dist/lib/uClibc/include/stdint.h"
# 23 "/uClinux-dist/lib/uClibc/include/netinet/in.h" 2
enum
{
IPPROTO_IP = 0,
IPPROTO_HOPOPTS = 0,
IPPROTO_ICMP = 1,
IPPROTO_IGMP = 2,
IPPROTO_IPIP = 4,
IPPROTO_TCP = 6,
IPPROTO_EGP = 8,
IPPROTO_PUP = 12,
IPPROTO_UDP = 17,
IPPROTO_IDP = 22,
IPPROTO_TP = 29,
IPPROTO_IPV6 = 41,
IPPROTO_ROUTING = 43,
IPPROTO_FRAGMENT = 44,
IPPROTO_RSVP = 46,
IPPROTO_GRE = 47,
IPPROTO_ESP = 50,
IPPROTO_AH = 51,
IPPROTO_ICMPV6 = 58,
IPPROTO_NONE = 59,
IPPROTO_DSTOPTS = 60,
IPPROTO_MTP = 92,
IPPROTO_ENCAP = 98,
IPPROTO_PIM = 103,
IPPROTO_COMP = 108,
IPPROTO_RAW = 255,
IPPROTO_MAX
};
typedef uint16_t in_port_t;
enum
{
IPPORT_ECHO = 7,
IPPORT_DISCARD = 9,
IPPORT_SYSTAT = 11,
IPPORT_DAYTIME = 13,
IPPORT_NETSTAT = 15,
IPPORT_FTP = 21,
IPPORT_TELNET = 23,
IPPORT_SMTP = 25,
IPPORT_TIMESERVER = 37,
IPPORT_NAMESERVER = 42,
IPPORT_WHOIS = 43,
IPPORT_MTP = 57,
IPPORT_TFTP = 69,
IPPORT_RJE = 77,
IPPORT_FINGER = 79,
IPPORT_TTYLINK = 87,
IPPORT_SUPDUP = 95,
IPPORT_EXECSERVER = 512,
IPPORT_LOGINSERVER = 513,
IPPORT_CMDSERVER = 514,
IPPORT_EFSSERVER = 520,
IPPORT_BIFFUDP = 512,
IPPORT_WHOSERVER = 513,
IPPORT_ROUTESERVER = 520,
IPPORT_RESERVED = 1024,
IPPORT_USERRESERVED = 5000
};
typedef uint32_t in_addr_t;
struct in_addr
{
in_addr_t s_addr;
};
struct in6_addr
{
union
{
uint8_t u6_addr8[16];
uint16_t u6_addr16[8];
uint32_t u6_addr32[4];
} in6_u;
};
extern const struct in6_addr in6addr_any;
extern const struct in6_addr in6addr_loopback;
struct sockaddr_in
{
sa_family_t sin_family ;
in_port_t sin_port;
struct in_addr sin_addr;
unsigned char sin_zero[sizeof (struct sockaddr) -
(sizeof (unsigned short int)) -
sizeof (in_port_t) -
sizeof (struct in_addr)];
};
struct sockaddr_in6
{
sa_family_t sin6_family ;
in_port_t sin6_port;
uint32_t sin6_flowinfo;
struct in6_addr sin6_addr;
uint32_t sin6_scope_id;
};
struct ipv6_mreq
{
struct in6_addr ipv6mr_multiaddr;
unsigned int ipv6mr_interface;
};
# 1 "/uClinux-dist/lib/uClibc/include/bits/in.h" 1
struct ip_opts
{
struct in_addr ip_dst;
char ip_opts[40];
};
struct ip_mreq
{
struct in_addr imr_multiaddr;
struct in_addr imr_interface;
};
struct ip_mreqn
{
struct in_addr imr_multiaddr;
struct in_addr imr_address;
int imr_ifindex;
};
struct in_pktinfo
{
int ipi_ifindex;
struct in_addr ipi_spec_dst;
struct in_addr ipi_addr;
};
# 250 "/uClinux-dist/lib/uClibc/include/netinet/in.h" 2
extern uint32_t ntohl (uint32_t __netlong) __attribute__ ((__const__));
extern uint16_t ntohs (uint16_t __netshort)
__attribute__ ((__const__));
extern uint32_t htonl (uint32_t __hostlong)
__attribute__ ((__const__));
extern uint16_t htons (uint16_t __hostshort)
__attribute__ ((__const__));
# 1 "/uClinux-dist/lib/uClibc/include/bits/byteswap.h" 1
# 68 "/uClinux-dist/lib/uClibc/include/bits/byteswap.h"
# 82 "/uClinux-dist/lib/uClibc/include/bits/byteswap.h"
# 270 "/uClinux-dist/lib/uClibc/include/netinet/in.h" 2
extern int bindresvport (int __sockfd, struct sockaddr_in *__sock_in) ;
extern int bindresvport6 (int __sockfd, struct sockaddr_in6 *__sock_in)
;
struct in6_pktinfo
{
struct in6_addr ipi6_addr;
unsigned int ipi6_ifindex;
};
# 37 "inetd.c" 2
# 1 "/uClinux-dist/lib/uClibc/include/netdb.h" 1
# 1 "/uClinux-dist/lib/uClibc/include/rpc/netdb.h" 1
# 1 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 1 3
# 19 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 61 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 131 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 188 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 271 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 283 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 317 "/usr/local/lib/gcc-lib/arm-elf/2.95.3/include/stddef.h" 3
# 42 "/uClinux-dist/lib/uClibc/include/rpc/netdb.h" 2
struct rpcent
{
char *r_name;
char **r_aliases;
int r_number;
};
extern void setrpcent (int __stayopen) ;
extern void endrpcent (void) ;
extern struct rpcent *getrpcbyname (__const char *__name) ;
extern struct rpcent *getrpcbynumber (int __number) ;
extern struct rpcent *getrpcent (void) ;
extern int getrpcbyname_r (__const char *__name, struct rpcent *__result_buf,
char *__buffer, size_t __buflen,
struct rpcent **__result) ;
extern int getrpcbynumber_r (int __number, struct rpcent *__result_buf,
char *__buffer, size_t __buflen,
struct rpcent **__result) ;
extern int getrpcent_r (struct rpcent *__result_buf, char *__buffer,
size_t __buflen, struct rpcent **__result) ;
# 33 "/uClinux-dist/lib/uClibc/include/netdb.h" 2
# 1 "/uClinux-dist/lib/uClibc/include/bits/netdb.h" 1
struct netent
{
char *n_name;
char **n_aliases;
int n_addrtype;
uint32_t n_net;
};
# 43 "/uClinux-dist/lib/uClibc/include/netdb.h" 2
extern int h_errno;
extern int *__h_errno_location (void) __attribute__ ((__const__));
# 72 "/uClinux-dist/lib/uClibc/include/netdb.h"
extern void herror (__const char *__str) ;
extern __const char *hstrerror (int __err_num) ;
struct hostent
{
char *h_name;
char **h_aliases;
int h_addrtype;
int h_length;
char **h_addr_list;
};
extern void sethostent (int __stay_open) ;
extern void endhostent (void) ;
extern struct hostent *gethostent (void) ;
extern struct hostent *gethostbyaddr (__const void *__addr, __socklen_t __len,
int __type) ;
extern struct hostent *gethostbyname (__const char *__name) ;
extern struct hostent *gethostbyname2 (__const char *__name, int __af) ;
extern int gethostent_r (struct hostent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct hostent **__restrict __result,
int *__restrict __h_errnop) ;
extern int gethostbyaddr_r (__const void *__restrict __addr, __socklen_t __len,
int __type,
struct hostent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct hostent **__restrict __result,
int *__restrict __h_errnop) ;
extern int gethostbyname_r (__const char *__restrict __name,
struct hostent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct hostent **__restrict __result,
int *__restrict __h_errnop) ;
extern int gethostbyname2_r (__const char *__restrict __name, int __af,
struct hostent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct hostent **__restrict __result,
int *__restrict __h_errnop) ;
extern void setnetent (int __stay_open) ;
extern void endnetent (void) ;
extern struct netent *getnetent (void) ;
extern struct netent *getnetbyaddr (uint32_t __net, int __type)
;
extern struct netent *getnetbyname (__const char *__name) ;
extern int getnetent_r (struct netent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct netent **__restrict __result,
int *__restrict __h_errnop) ;
extern int getnetbyaddr_r (uint32_t __net, int __type,
struct netent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct netent **__restrict __result,
int *__restrict __h_errnop) ;
extern int getnetbyname_r (__const char *__restrict __name,
struct netent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct netent **__restrict __result,
int *__restrict __h_errnop) ;
struct servent
{
char *s_name;
char **s_aliases;
int s_port;
char *s_proto;
};
extern void setservent (int __stay_open) ;
extern void endservent (void) ;
extern struct servent *getservent (void) ;
extern struct servent *getservbyname (__const char *__name,
__const char *__proto) ;
extern struct servent *getservbyport (int __port, __const char *__proto)
;
extern int getservent_r (struct servent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct servent **__restrict __result) ;
extern int getservbyname_r (__const char *__restrict __name,
__const char *__restrict __proto,
struct servent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct servent **__restrict __result) ;
extern int getservbyport_r (int __port, __const char *__restrict __proto,
struct servent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct servent **__restrict __result) ;
struct protoent
{
char *p_name;
char **p_aliases;
int p_proto;
};
extern void setprotoent (int __stay_open) ;
extern void endprotoent (void) ;
extern struct protoent *getprotoent (void) ;
extern struct protoent *getprotobyname (__const char *__name) ;
extern struct protoent *getprotobynumber (int __proto) ;
extern int getprotoent_r (struct protoent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct protoent **__restrict __result) ;
extern int getprotobyname_r (__const char *__restrict __name,
struct protoent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct protoent **__restrict __result) ;
extern int getprotobynumber_r (int __proto,
struct protoent *__restrict __result_buf,
char *__restrict __buf, size_t __buflen,
struct protoent **__restrict __result) ;
extern int setnetgrent (__const char *__netgroup) ;
extern void endnetgrent (void) ;
extern int getnetgrent (char **__restrict __hostp,
char **__restrict __userp,
char **__restrict __domainp) ;
extern int innetgr (__const char *__netgroup, __const char *__host,
__const char *__user, __const char *domain) ;
extern int getnetgrent_r (char **__restrict __hostp,
char **__restrict __userp,
char **__restrict __domainp,
char *__restrict __buffer, size_t __buflen) ;
extern int rcmd (char **__restrict __ahost, unsigned short int __rport,
__const char *__restrict __locuser,
__const char *__restrict __remuser,
__const char *__restrict __cmd, int *__restrict __fd2p)
;
extern int rcmd_af (char **__restrict __ahost, unsigned short int __rport,
__const char *__restrict __locuser,
__const char *__restrict __remuser,
__const char *__restrict __cmd, int *__restrict __fd2p,
sa_family_t __af) ;
extern int rexec (char **__restrict __ahost, int __rport,
__const char *__restrict __name,
__const char *__restrict __pass,
__const char *__restrict __cmd, int *__restrict __fd2p)
;
extern int rexec_af (char **__restrict __ahost, int __rport,
__const char *__restrict __name,
__const char *__restrict __pass,
__const char *__restrict __cmd, int *__restrict __fd2p,
sa_family_t __af) ;
extern int ruserok (__const char *__rhost, int __suser,
__const char *__remuser, __const char *__locuser) ;
extern int ruserok_af (__const char *__rhost, int __suser,
__const char *__remuser, __const char *__locuser,
sa_family_t __af) ;
extern int rresvport (int *__alport) ;
extern int rresvport_af (int *__alport, sa_family_t __af) ;
struct addrinfo
{
int ai_flags;
int ai_family;
int ai_socktype;
int ai_protocol;
socklen_t ai_addrlen;
struct sockaddr *ai_addr;
char *ai_canonname;
struct addrinfo *ai_next;
};
# 438 "/uClinux-dist/lib/uClibc/include/netdb.h"
extern int getaddrinfo (__const char *__restrict __name,
__const char *__restrict __service,
__const struct addrinfo *__restrict __req,
struct addrinfo **__restrict __pai) ;
extern void freeaddrinfo (struct addrinfo *__ai) ;
extern __const char *gai_strerror (int __ecode) ;
extern int getnameinfo (__const struct sockaddr *__restrict __sa,
socklen_t __salen, char *__restrict __host,
socklen_t __hostlen, char *__restrict __serv,
socklen_t __servlen, unsigned int __flags) ;
# 512 "/uClinux-dist/lib/uClibc/include/netdb.h"
# 38 "inetd.c" 2
# 1 "cfgfile.h" 1
char ** cfgread(FILE *fp);
char ** cfgfind(FILE *fp, char *var);
# 39 "inetd.c" 2
static void read_config(void);
static void
set_signal(int sig, void (*handler)(int), int flags)
{
struct sigaction action, oaction;
memset(&action, 0, sizeof(struct sigaction));
action. __sigaction_handler.sa_handler = handler;
action.sa_flags = flags;
(void) sigaction(sig, &action, &oaction);
}
static void close_on_exec(int f)
{
if (fcntl(f, 2 , 1))
perror("close on exec: ");
}
static inline void close_all_fds(int keep_top)
{
int i, n;
n = getdtablesize();
for(i=keep_top+1;i<n;i++)
close(i);
}
struct stService {
struct stService *next;
int port;
int master_socket;
pid_t pid[8 ];
char *args[6];
short limit;
short current;
unsigned enabled :1;
unsigned changed :1;
unsigned tcp :1;
unsigned reconfig :1;
char arg[0];
} *servicelist = ((void *)0) ;
static inline int reap_child(int pid) {
int reaped = 0;
struct stService *p;
for(p=servicelist; p!= ((void *)0) ; p=p->next) {
int j;
for(j=0;j< 8 ;j++)
if (p->pid[j] == pid) {
p->pid[j] = 0;
p->current--;
}
}
return reaped;
}
static inline int generate_select_fds(fd_set * readmask, fd_set * writemask)
{
int max=0;
struct stService *p;
do { unsigned int __i; fd_set *__arr = ( readmask ); for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i) (( __arr )->__fds_bits) [__i] = 0; } while (0) ;
do { unsigned int __i; fd_set *__arr = ( writemask ); for (__i = 0; __i < sizeof (fd_set) / sizeof (__fd_mask); ++__i) (( __arr )->__fds_bits) [__i] = 0; } while (0) ;
for(p=servicelist; p!= ((void *)0) ; p=p->next) {
if (!strlen(p->args[0]) || (p->current >= p->limit) || !p->enabled)
continue;
((( ( readmask ) )->__fds_bits) [(( ( p->master_socket ) ) / (8 * sizeof (__fd_mask)) ) ] |= ((__fd_mask) 1 << (( ( p->master_socket ) ) % (8 * sizeof (__fd_mask)) )) ) ; if (( p->master_socket )>max) max = ( p->master_socket ); ;
}
return max+1;
}
static pid_t
start_child(struct stService *p, int fd)
{
pid_t pid;
pid = vfork();
if (pid == 0) {
if (fd != 0)
dup2(fd, 0);
if (fd != 1)
dup2(fd, 1);
if (fd != 2)
dup2(fd, 2);
if (fd > 2)
close(fd);
close_all_fds(2);
execlp(p->args[0],
p->args[0],
p->args[1],
p->args[2],
p->args[3],
p->args[4],
p->args[5],
((void *)0)
);
_exit(0);
}
return(pid);
}
static inline void handle_incoming_fds(fd_set * readmask, fd_set * writemask)
{
struct stService *p;
for(p=servicelist; p!= ((void *)0) ; p=p->next) {
int fd;
if (p->master_socket && (((( readmask )->__fds_bits) [(( p->master_socket ) / (8 * sizeof (__fd_mask)) ) ] & ((__fd_mask) 1 << (( p->master_socket ) % (8 * sizeof (__fd_mask)) )) ) != 0) ) {
int j;
for(j=0;j< 8 ;j++)
if (p->pid[j] == 0)
break;
if (p->tcp) {
struct sockaddr_in remote;
int remotelen = sizeof(remote);
fd = accept(p->master_socket, (struct sockaddr*)&remote, &remotelen);
if (fd < 0) {
printf("accept failed\n");
break;
}
} else {
fd = p->master_socket;
}
p->current++;
if ((p->pid[j] = start_child(p, fd)) == -1) {
p->enabled = 0;
close(p->master_socket);
p->master_socket = 0;
p->current--;
}
if (p->tcp) {
close(fd);
}
}
}
}
static inline void start_services(void) {
int s;
struct stService *p;
struct server_sockaddr;
for(p=servicelist; p!= ((void *)0) ; p=p->next) {
struct sockaddr_in server_sockaddr;
if (p->master_socket || !strlen(p->args[0]))
continue;
if (p->tcp) {
int true;
if ((s = socket(2 , SOCK_STREAM , IPPROTO_TCP )) == -1) {
printf("Unable to create socket\n");
}
close_on_exec(s);
server_sockaddr.sin_family = 2 ;
server_sockaddr.sin_port = ( p->port ) ;
server_sockaddr.sin_addr.s_addr = ( ((in_addr_t) 0x00000000) ) ;
true = 1;
if((setsockopt(s, 1 , 2 , (void *)&true,
sizeof(true))) == -1) {
perror("setsockopt: ");
}
if(bind(s, (struct sockaddr *)&server_sockaddr,
sizeof(server_sockaddr)) == -1) {
perror("Unable to bind server socket: ");
close(s);
}
if(listen(s, 1) == -1) {
printf("Unable to listen to socket\n");
}
} else {
if ((s = socket(2 , SOCK_DGRAM , IPPROTO_UDP )) == -1) {
printf("Unable to create socket\n");
}
close_on_exec(s);
server_sockaddr.sin_family = 2 ;
server_sockaddr.sin_port = ( p->port ) ;
server_sockaddr.sin_addr.s_addr = ( ((in_addr_t) 0x00000000) ) ;
if(bind(s, (struct sockaddr *)&server_sockaddr,
sizeof(server_sockaddr)) == -1) {
printf("Unable to bind socket\n");
close(s);
}
}
p->master_socket = s;
p->reconfig = 1;
p->changed = 0;
}
}
static inline void stop_services(void) {
struct stService *p;
struct server_sockaddr;
for(p=servicelist; p!= ((void *)0) ; p=p->next) {
if(p->master_socket)
close(p->master_socket);
p->master_socket = 0;
}
}
static void reap_children(void)
{
int child;
int status;
while ((child = waitpid(-1, &status, 1 )) > 0) {
reap_child(child);
}
}
volatile int got_cont;
static void cont_handler(int signo)
{
got_cont = 1;
}
static void stop_handler(int signo)
{
got_cont = 0;
stop_services();
while(!got_cont) {
pause();
reap_children();
}
got_cont = 0;
}
static void child_handler(int signo)
{
}
static inline void kill_changed_things(void)
{
struct stService *p;
for(p=servicelist; p!= ((void *)0) ; p=p->next) {
int j;
if (!p->changed || !p->reconfig)
continue;
if (p->master_socket) {
close(p->master_socket);
p->master_socket = 0;
}
for (j=0;j< 8 ;j++) {
if (p->pid[j] != 0) {
kill(p->pid[j], 15 );
kill(p->pid[j], 1 );
p->pid[j] = 0;
}
}
p->changed = p->reconfig = 0;
}
}
static inline void run(void)
{
fd_set rfds, wfds;
struct timeval tv;
int max;
for(;;) {
reap_children();
start_services();
max = generate_select_fds(&rfds, &wfds);
tv.tv_sec = 1;
tv.tv_usec = 0;
if (select(max, &rfds, &wfds, 0, &tv) > 0) {
handle_incoming_fds(&rfds, &wfds);
}
}
}
static inline void
read_config()
{
FILE *cfp;
char **args;
char *ap;
int j, k;
struct stService *p;
size_t sz;
struct servent *sent;
# 405 "inetd.c"
if (!(cfp = fopen("/etc/inetd.conf" ,"r"))) {
perror("Can't open " "/etc/inetd.conf" );
exit(1);
}
for (;;) {
if (!(args = cfgread(cfp))) break;
for (j=0; (j<11) && (args[j]); j++);
if (j<6) {
fprintf(stderr ,"Bad line in config file %s...\n",
args[0] ? args[0] : "");
continue;
}
sz = sizeof(struct stService);
for (k=5; k<j; k++) {
sz += strlen(args[k]) + 1;
}
p = malloc(sz);
if (p == ((void *)0) ) {
fprintf(stderr , "Malloc failed\n");
continue;
}
bzero(p, sz);
ap = p->arg;
for (k=5; k<j; k++) {
p->args[k - 5] = ap;
if (args[k]) {
strcpy(ap, args[k]);
ap += strlen(args[k]);
}
*ap++ = '\0';
}
p->tcp = !strcmp(args[2], "tcp") ? 1 : 0;
p->limit = (strcmp(args[3], "wait") == 0) ? 1 : 8 ;
sent = getservbyname(args[0], args[2]);
if (sent == ((void *)0) ) {
fprintf(stderr , "can't find service\n");
free(p);
continue;
}
p->port = ( sent->s_port ) ;
p->master_socket = 0;
p->changed = 1;
p->enabled = 1;
p->next = servicelist;
servicelist = p;
}
fclose(cfp);
# 481 "inetd.c"
}
int
main(int argc, char *argv[], char *env[])
{
set_signal(13 , ((__sighandler_t) 1) , 0);
set_signal(19 , stop_handler, 0);
set_signal(20 , stop_handler, 0);
set_signal(18 , cont_handler, 0);
set_signal(17 , child_handler, 0x20000000 );
if (fcntl(0, 3 ) == -1)
open("/dev/null", 02 );
open("/dev/null", 02 );
read_config();
run();
}