All pastes #801936 Raw Edit

Anonymous

public c v1 · immutable
#801936 ·published 2007-11-29 18:48 UTC
rendered paste body
# 1 "zipscript-c.c"# 1 "/home/grandja/proj/project-zs-ng_r2339-v1.0.10/zipscript/src//"# 1 "<built-in>"# 1 "<command line>"# 1 "zipscript-c.c"# 1 "/usr/include/stdio.h" 1 3 4# 28 "/usr/include/stdio.h" 3 4# 1 "/usr/include/features.h" 1 3 4# 322 "/usr/include/features.h" 3 4# 1 "/usr/include/sys/cdefs.h" 1 3 4# 324 "/usr/include/sys/cdefs.h" 3 4# 1 "/usr/include/bits/wordsize.h" 1 3 4# 325 "/usr/include/sys/cdefs.h" 2 3 4# 323 "/usr/include/features.h" 2 3 4# 345 "/usr/include/features.h" 3 4# 1 "/usr/include/gnu/stubs.h" 1 3 4# 1 "/usr/include/bits/wordsize.h" 1 3 4# 5 "/usr/include/gnu/stubs.h" 2 3 4# 1 "/usr/include/gnu/stubs-64.h" 1 3 4# 10 "/usr/include/gnu/stubs.h" 2 3 4# 346 "/usr/include/features.h" 2 3 4# 29 "/usr/include/stdio.h" 2 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 214 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 3 4typedef long unsigned int size_t;# 35 "/usr/include/stdio.h" 2 3 4# 1 "/usr/include/bits/types.h" 1 3 4# 28 "/usr/include/bits/types.h" 3 4# 1 "/usr/include/bits/wordsize.h" 1 3 4# 29 "/usr/include/bits/types.h" 2 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 32 "/usr/include/bits/types.h" 2 3 4typedef unsigned char __u_char;typedef unsigned short int __u_short;typedef unsigned int __u_int;typedef unsigned long int __u_long;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;typedef signed long int __int64_t;typedef unsigned long int __uint64_t;typedef long int __quad_t;typedef unsigned long int __u_quad_t;# 134 "/usr/include/bits/types.h" 3 4# 1 "/usr/include/bits/typesizes.h" 1 3 4# 135 "/usr/include/bits/types.h" 2 3 4typedef unsigned long int __dev_t;typedef unsigned int __uid_t;typedef unsigned int __gid_t;typedef unsigned long int __ino_t;typedef unsigned long int __ino64_t;typedef unsigned int __mode_t;typedef unsigned long int __nlink_t;typedef long int __off_t;typedef long int __off64_t;typedef int __pid_t;typedef struct { int __val[2]; } __fsid_t;typedef long int __clock_t;typedef unsigned long int __rlim_t;typedef unsigned long int __rlim64_t;typedef unsigned int __id_t;typedef long int __time_t;typedef unsigned int __useconds_t;typedef long int __suseconds_t;typedef int __daddr_t;typedef long int __swblk_t;typedef int __key_t;typedef int __clockid_t;typedef void * __timer_t;typedef long int __blksize_t;typedef long int __blkcnt_t;typedef long int __blkcnt64_t;typedef unsigned long int __fsblkcnt_t;typedef unsigned long int __fsblkcnt64_t;typedef unsigned long int __fsfilcnt_t;typedef unsigned long int __fsfilcnt64_t;typedef long int __ssize_t;typedef __off64_t __loff_t;typedef __quad_t *__qaddr_t;typedef char *__caddr_t;typedef long int __intptr_t;typedef unsigned int __socklen_t;# 37 "/usr/include/stdio.h" 2 3 4# 45 "/usr/include/stdio.h" 3 4struct _IO_FILE;typedef struct _IO_FILE FILE;# 65 "/usr/include/stdio.h" 3 4typedef struct _IO_FILE __FILE;# 75 "/usr/include/stdio.h" 3 4# 1 "/usr/include/libio.h" 1 3 4# 32 "/usr/include/libio.h" 3 4# 1 "/usr/include/_G_config.h" 1 3 4# 14 "/usr/include/_G_config.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 326 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 3 4typedef int wchar_t;# 355 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 3 4typedef unsigned int wint_t;# 15 "/usr/include/_G_config.h" 2 3 4# 24 "/usr/include/_G_config.h" 3 4# 1 "/usr/include/wchar.h" 1 3 4# 48 "/usr/include/wchar.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 49 "/usr/include/wchar.h" 2 3 4# 1 "/usr/include/bits/wchar.h" 1 3 4# 51 "/usr/include/wchar.h" 2 3 4# 76 "/usr/include/wchar.h" 3 4typedef struct{  int __count;  union  {    wint_t __wch;    char __wchb[4];  } __value;} __mbstate_t;# 25 "/usr/include/_G_config.h" 2 3 4typedef struct{  __off_t __pos;  __mbstate_t __state;} _G_fpos_t;typedef struct{  __off64_t __pos;  __mbstate_t __state;} _G_fpos64_t;# 44 "/usr/include/_G_config.h" 3 4# 1 "/usr/include/gconv.h" 1 3 4# 28 "/usr/include/gconv.h" 3 4# 1 "/usr/include/wchar.h" 1 3 4# 48 "/usr/include/wchar.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 49 "/usr/include/wchar.h" 2 3 4# 29 "/usr/include/gconv.h" 2 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 32 "/usr/include/gconv.h" 2 3 4enum{  __GCONV_OK = 0,  __GCONV_NOCONV,  __GCONV_NODB,  __GCONV_NOMEM,  __GCONV_EMPTY_INPUT,  __GCONV_FULL_OUTPUT,  __GCONV_ILLEGAL_INPUT,  __GCONV_INCOMPLETE_INPUT,  __GCONV_ILLEGAL_DESCRIPTOR,  __GCONV_INTERNAL_ERROR};enum{  __GCONV_IS_LAST = 0x0001,  __GCONV_IGNORE_ERRORS = 0x0002};struct __gconv_step;struct __gconv_step_data;struct __gconv_loaded_object;struct __gconv_trans_data;typedef int (*__gconv_fct) (struct __gconv_step *, struct __gconv_step_data *,       __const unsigned char **, __const unsigned char *,       unsigned char **, size_t *, int, int);typedef wint_t (*__gconv_btowc_fct) (struct __gconv_step *, unsigned char);typedef int (*__gconv_init_fct) (struct __gconv_step *);typedef void (*__gconv_end_fct) (struct __gconv_step *);typedef int (*__gconv_trans_fct) (struct __gconv_step *,      struct __gconv_step_data *, void *,      __const unsigned char *,      __const unsigned char **,      __const unsigned char *, unsigned char **,      size_t *);typedef int (*__gconv_trans_context_fct) (void *, __const unsigned char *,       __const unsigned char *,       unsigned char *, unsigned char *);typedef int (*__gconv_trans_query_fct) (__const char *, __const char ***,     size_t *);typedef int (*__gconv_trans_init_fct) (void **, const char *);typedef void (*__gconv_trans_end_fct) (void *);struct __gconv_trans_data{  __gconv_trans_fct __trans_fct;  __gconv_trans_context_fct __trans_context_fct;  __gconv_trans_end_fct __trans_end_fct;  void *__data;  struct __gconv_trans_data *__next;};struct __gconv_step{  struct __gconv_loaded_object *__shlib_handle;  __const char *__modname;  int __counter;  char *__from_name;  char *__to_name;  __gconv_fct __fct;  __gconv_btowc_fct __btowc_fct;  __gconv_init_fct __init_fct;  __gconv_end_fct __end_fct;  int __min_needed_from;  int __max_needed_from;  int __min_needed_to;  int __max_needed_to;  int __stateful;  void *__data;};struct __gconv_step_data{  unsigned char *__outbuf;  unsigned char *__outbufend;  int __flags;  int __invocation_counter;  int __internal_use;  __mbstate_t *__statep;  __mbstate_t __state;  struct __gconv_trans_data *__trans;};typedef struct __gconv_info{  size_t __nsteps;  struct __gconv_step *__steps;  __extension__ struct __gconv_step_data __data [];} *__gconv_t;# 45 "/usr/include/_G_config.h" 2 3 4typedef union{  struct __gconv_info __cd;  struct  {    struct __gconv_info __cd;    struct __gconv_step_data __data;  } __combined;} _G_iconv_t;typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));# 33 "/usr/include/libio.h" 2 3 4# 53 "/usr/include/libio.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stdarg.h" 1 3 4# 43 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stdarg.h" 3 4typedef __builtin_va_list __gnuc_va_list;# 54 "/usr/include/libio.h" 2 3 4# 167 "/usr/include/libio.h" 3 4struct _IO_jump_t; struct _IO_FILE;# 177 "/usr/include/libio.h" 3 4typedef void _IO_lock_t;struct _IO_marker {  struct _IO_marker *_next;  struct _IO_FILE *_sbuf;  int _pos;# 200 "/usr/include/libio.h" 3 4};enum __codecvt_result{  __codecvt_ok,  __codecvt_partial,  __codecvt_error,  __codecvt_noconv};# 268 "/usr/include/libio.h" 3 4struct _IO_FILE {  int _flags;  char* _IO_read_ptr;  char* _IO_read_end;  char* _IO_read_base;  char* _IO_write_base;  char* _IO_write_ptr;  char* _IO_write_end;  char* _IO_buf_base;  char* _IO_buf_end;  char *_IO_save_base;  char *_IO_backup_base;  char *_IO_save_end;  struct _IO_marker *_markers;  struct _IO_FILE *_chain;  int _fileno;  int _flags2;  __off_t _old_offset;  unsigned short _cur_column;  signed char _vtable_offset;  char _shortbuf[1];  _IO_lock_t *_lock;# 316 "/usr/include/libio.h" 3 4  __off64_t _offset;# 325 "/usr/include/libio.h" 3 4  void *__pad1;  void *__pad2;  void *__pad3;  void *__pad4;  size_t __pad5;  int _mode;  char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];};typedef struct _IO_FILE _IO_FILE;struct _IO_FILE_plus;extern struct _IO_FILE_plus _IO_2_1_stdin_;extern struct _IO_FILE_plus _IO_2_1_stdout_;extern struct _IO_FILE_plus _IO_2_1_stderr_;# 361 "/usr/include/libio.h" 3 4typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes);typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf,     size_t __n);typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w);typedef int __io_close_fn (void *__cookie);# 413 "/usr/include/libio.h" 3 4extern int __underflow (_IO_FILE *);extern int __uflow (_IO_FILE *);extern int __overflow (_IO_FILE *, int);extern wint_t __wunderflow (_IO_FILE *);extern wint_t __wuflow (_IO_FILE *);extern wint_t __woverflow (_IO_FILE *, wint_t);# 451 "/usr/include/libio.h" 3 4extern int _IO_getc (_IO_FILE *__fp);extern int _IO_putc (int __c, _IO_FILE *__fp);extern int _IO_feof (_IO_FILE *__fp) __attribute__ ((__nothrow__));extern int _IO_ferror (_IO_FILE *__fp) __attribute__ ((__nothrow__));extern int _IO_peekc_locked (_IO_FILE *__fp);extern void _IO_flockfile (_IO_FILE *) __attribute__ ((__nothrow__));extern void _IO_funlockfile (_IO_FILE *) __attribute__ ((__nothrow__));extern int _IO_ftrylockfile (_IO_FILE *) __attribute__ ((__nothrow__));# 481 "/usr/include/libio.h" 3 4extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict,   __gnuc_va_list, int *__restrict);extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict,    __gnuc_va_list);extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t);extern size_t _IO_sgetn (_IO_FILE *, void *, size_t);extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int);extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int);extern void _IO_free_backup_area (_IO_FILE *) __attribute__ ((__nothrow__));# 76 "/usr/include/stdio.h" 2 3 4# 89 "/usr/include/stdio.h" 3 4typedef _G_fpos64_t fpos_t;# 141 "/usr/include/stdio.h" 3 4# 1 "/usr/include/bits/stdio_lim.h" 1 3 4# 142 "/usr/include/stdio.h" 2 3 4extern struct _IO_FILE *stdin;extern struct _IO_FILE *stdout;extern struct _IO_FILE *stderr;extern int remove (__const char *__filename) __attribute__ ((__nothrow__));extern int rename (__const char *__old, __const char *__new) __attribute__ ((__nothrow__));# 175 "/usr/include/stdio.h" 3 4extern FILE *tmpfile (void) __asm__ ("" "tmpfile64") ;# 186 "/usr/include/stdio.h" 3 4extern char *tmpnam (char *__s) __attribute__ ((__nothrow__)) ;extern char *tmpnam_r (char *__s) __attribute__ ((__nothrow__)) ;# 204 "/usr/include/stdio.h" 3 4extern char *tempnam (__const char *__dir, __const char *__pfx)     __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) ;extern int fclose (FILE *__stream);extern int fflush (FILE *__stream);# 229 "/usr/include/stdio.h" 3 4extern int fflush_unlocked (FILE *__stream);# 243 "/usr/include/stdio.h" 3 4# 260 "/usr/include/stdio.h" 3 4extern FILE *fopen (__const char *__restrict __filename, __const char *__restrict __modes) __asm__ ("" "fopen64")  ;extern FILE *freopen (__const char *__restrict __filename, __const char *__restrict __modes, FILE *__restrict __stream) __asm__ ("" "freopen64")  ;# 283 "/usr/include/stdio.h" 3 4extern FILE *fdopen (int __fd, __const char *__modes) __attribute__ ((__nothrow__)) ;# 304 "/usr/include/stdio.h" 3 4extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__));extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,      int __modes, size_t __n) __attribute__ ((__nothrow__));extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,         size_t __size) __attribute__ ((__nothrow__));extern void setlinebuf (FILE *__stream) __attribute__ ((__nothrow__));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, ...) __attribute__ ((__nothrow__));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) __attribute__ ((__nothrow__));extern int snprintf (char *__restrict __s, size_t __maxlen,       __const char *__restrict __format, ...)     __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4)));extern int vsnprintf (char *__restrict __s, size_t __maxlen,        __const char *__restrict __format, __gnuc_va_list __arg)     __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0)));# 398 "/usr/include/stdio.h" 3 4extern 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, ...) __attribute__ ((__nothrow__));# 440 "/usr/include/stdio.h" 3 4extern int fgetc (FILE *__stream);extern int getc (FILE *__stream);extern int getchar (void);# 464 "/usr/include/stdio.h" 3 4extern int getc_unlocked (FILE *__stream);extern int getchar_unlocked (void);# 475 "/usr/include/stdio.h" 3 4extern int fgetc_unlocked (FILE *__stream);extern int fputc (int __c, FILE *__stream);extern int putc (int __c, FILE *__stream);extern int putchar (int __c);# 508 "/usr/include/stdio.h" 3 4extern 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) ;# 589 "/usr/include/stdio.h" 3 4extern 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) ;# 642 "/usr/include/stdio.h" 3 4extern 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);# 686 "/usr/include/stdio.h" 3 4extern int fseeko (FILE *__stream, __off64_t __off, int __whence) __asm__ ("" "fseeko64");extern __off64_t ftello (FILE *__stream) __asm__ ("" "ftello64");# 711 "/usr/include/stdio.h" 3 4extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos) __asm__ ("" "fgetpos64");extern int fsetpos (FILE *__stream, __const fpos_t *__pos) __asm__ ("" "fsetpos64");# 729 "/usr/include/stdio.h" 3 4extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__));extern int feof (FILE *__stream) __attribute__ ((__nothrow__)) ;extern int ferror (FILE *__stream) __attribute__ ((__nothrow__)) ;extern void clearerr_unlocked (FILE *__stream) __attribute__ ((__nothrow__));extern int feof_unlocked (FILE *__stream) __attribute__ ((__nothrow__)) ;extern int ferror_unlocked (FILE *__stream) __attribute__ ((__nothrow__)) ;extern void perror (__const char *__s);# 1 "/usr/include/bits/sys_errlist.h" 1 3 4# 27 "/usr/include/bits/sys_errlist.h" 3 4extern int sys_nerr;extern __const char *__const sys_errlist[];# 759 "/usr/include/stdio.h" 2 3 4extern int fileno (FILE *__stream) __attribute__ ((__nothrow__)) ;extern int fileno_unlocked (FILE *__stream) __attribute__ ((__nothrow__)) ;# 778 "/usr/include/stdio.h" 3 4extern FILE *popen (__const char *__command, __const char *__modes) ;extern int pclose (FILE *__stream);extern char *ctermid (char *__s) __attribute__ ((__nothrow__));# 818 "/usr/include/stdio.h" 3 4extern void flockfile (FILE *__stream) __attribute__ ((__nothrow__));extern int ftrylockfile (FILE *__stream) __attribute__ ((__nothrow__)) ;extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__));# 839 "/usr/include/stdio.h" 3 4# 1 "/usr/include/bits/stdio.h" 1 3 4# 33 "/usr/include/bits/stdio.h" 3 4extern __inline intvprintf (__const char *__restrict __fmt, __gnuc_va_list __arg){  return vfprintf (stdout, __fmt, __arg);}extern __inline intgetchar (void){  return _IO_getc (stdin);}extern __inline intfgetc_unlocked (FILE *__fp){  return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);}extern __inline intgetc_unlocked (FILE *__fp){  return (__builtin_expect (((__fp)->_IO_read_ptr >= (__fp)->_IO_read_end), 0) ? __uflow (__fp) : *(unsigned char *) (__fp)->_IO_read_ptr++);}extern __inline intgetchar_unlocked (void){  return (__builtin_expect (((stdin)->_IO_read_ptr >= (stdin)->_IO_read_end), 0) ? __uflow (stdin) : *(unsigned char *) (stdin)->_IO_read_ptr++);}extern __inline intputchar (int __c){  return _IO_putc (__c, stdout);}extern __inline intfputc_unlocked (int __c, FILE *__stream){  return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));}extern __inline intputc_unlocked (int __c, FILE *__stream){  return (__builtin_expect (((__stream)->_IO_write_ptr >= (__stream)->_IO_write_end), 0) ? __overflow (__stream, (unsigned char) (__c)) : (unsigned char) (*(__stream)->_IO_write_ptr++ = (__c)));}extern __inline intputchar_unlocked (int __c){  return (__builtin_expect (((stdout)->_IO_write_ptr >= (stdout)->_IO_write_end), 0) ? __overflow (stdout, (unsigned char) (__c)) : (unsigned char) (*(stdout)->_IO_write_ptr++ = (__c)));}# 121 "/usr/include/bits/stdio.h" 3 4extern __inline int__attribute__ ((__nothrow__)) feof_unlocked (FILE *__stream){  return (((__stream)->_flags & 0x10) != 0);}extern __inline int__attribute__ ((__nothrow__)) ferror_unlocked (FILE *__stream){  return (((__stream)->_flags & 0x20) != 0);}# 840 "/usr/include/stdio.h" 2 3 4# 848 "/usr/include/stdio.h" 3 4# 2 "zipscript-c.c" 2# 1 "/usr/include/string.h" 1 3 4# 28 "/usr/include/string.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 34 "/usr/include/string.h" 2 3 4extern void *memcpy (void *__restrict __dest,       __const void *__restrict __src, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern void *memmove (void *__dest, __const void *__src, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern void *memccpy (void *__restrict __dest, __const void *__restrict __src,        int __c, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern void *memset (void *__s, int __c, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern void *memchr (__const void *__s, int __c, size_t __n)      __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));# 82 "/usr/include/string.h" 3 4extern char *strcpy (char *__restrict __dest, __const char *__restrict __src)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern char *strncpy (char *__restrict __dest,        __const char *__restrict __src, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern char *strcat (char *__restrict __dest, __const char *__restrict __src)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern char *strncat (char *__restrict __dest, __const char *__restrict __src,        size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int strcmp (__const char *__s1, __const char *__s2)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern int strcoll (__const char *__s1, __const char *__s2)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern size_t strxfrm (char *__restrict __dest,         __const char *__restrict __src, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));# 130 "/usr/include/string.h" 3 4extern char *strdup (__const char *__s)     __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));# 165 "/usr/include/string.h" 3 4extern char *strchr (__const char *__s, int __c)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));extern char *strrchr (__const char *__s, int __c)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));# 181 "/usr/include/string.h" 3 4extern size_t strcspn (__const char *__s, __const char *__reject)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern size_t strspn (__const char *__s, __const char *__accept)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern char *strpbrk (__const char *__s, __const char *__accept)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern char *strstr (__const char *__haystack, __const char *__needle)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern char *strtok (char *__restrict __s, __const char *__restrict __delim)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));extern char *__strtok_r (char *__restrict __s,    __const char *__restrict __delim,    char **__restrict __save_ptr)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim,         char **__restrict __save_ptr)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 3)));# 240 "/usr/include/string.h" 3 4extern size_t strlen (__const char *__s)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));# 254 "/usr/include/string.h" 3 4extern char *strerror (int __errnum) __attribute__ ((__nothrow__));# 270 "/usr/include/string.h" 3 4extern int strerror_r (int __errnum, char *__buf, size_t __buflen) __asm__ ("" "__xpg_strerror_r") __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));# 294 "/usr/include/string.h" 3 4extern void __bzero (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern void bcopy (__const void *__src, void *__dest, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern void bzero (void *__s, size_t __n) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern char *index (__const char *__s, int __c)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));extern char *rindex (__const char *__s, int __c)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));extern int ffs (int __i) __attribute__ ((__nothrow__)) __attribute__ ((__const__));# 331 "/usr/include/string.h" 3 4extern int strcasecmp (__const char *__s1, __const char *__s2)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));# 354 "/usr/include/string.h" 3 4extern char *strsep (char **__restrict __stringp,       __const char *__restrict __delim)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));# 420 "/usr/include/string.h" 3 4# 1 "/usr/include/bits/string.h" 1 3 4# 421 "/usr/include/string.h" 2 3 4# 1 "/usr/include/bits/string2.h" 1 3 4# 52 "/usr/include/bits/string2.h" 3 4# 1 "/usr/include/endian.h" 1 3 4# 37 "/usr/include/endian.h" 3 4# 1 "/usr/include/bits/endian.h" 1 3 4# 38 "/usr/include/endian.h" 2 3 4# 53 "/usr/include/bits/string2.h" 2 3 4# 394 "/usr/include/bits/string2.h" 3 4extern void *__rawmemchr (const void *__s, int __c);# 969 "/usr/include/bits/string2.h" 3 4extern __inline size_t __strcspn_c1 (__const char *__s, int __reject);extern __inline size_t__strcspn_c1 (__const char *__s, int __reject){  register size_t __result = 0;  while (__s[__result] != '\0' && __s[__result] != __reject)    ++__result;  return __result;}extern __inline size_t __strcspn_c2 (__const char *__s, int __reject1,         int __reject2);extern __inline size_t__strcspn_c2 (__const char *__s, int __reject1, int __reject2){  register size_t __result = 0;  while (__s[__result] != '\0' && __s[__result] != __reject1  && __s[__result] != __reject2)    ++__result;  return __result;}extern __inline size_t __strcspn_c3 (__const char *__s, int __reject1,         int __reject2, int __reject3);extern __inline size_t__strcspn_c3 (__const char *__s, int __reject1, int __reject2,       int __reject3){  register size_t __result = 0;  while (__s[__result] != '\0' && __s[__result] != __reject1  && __s[__result] != __reject2 && __s[__result] != __reject3)    ++__result;  return __result;}# 1045 "/usr/include/bits/string2.h" 3 4extern __inline size_t __strspn_c1 (__const char *__s, int __accept);extern __inline size_t__strspn_c1 (__const char *__s, int __accept){  register size_t __result = 0;  while (__s[__result] == __accept)    ++__result;  return __result;}extern __inline size_t __strspn_c2 (__const char *__s, int __accept1,        int __accept2);extern __inline size_t__strspn_c2 (__const char *__s, int __accept1, int __accept2){  register size_t __result = 0;  while (__s[__result] == __accept1 || __s[__result] == __accept2)    ++__result;  return __result;}extern __inline size_t __strspn_c3 (__const char *__s, int __accept1,        int __accept2, int __accept3);extern __inline size_t__strspn_c3 (__const char *__s, int __accept1, int __accept2, int __accept3){  register size_t __result = 0;  while (__s[__result] == __accept1 || __s[__result] == __accept2  || __s[__result] == __accept3)    ++__result;  return __result;}# 1121 "/usr/include/bits/string2.h" 3 4extern __inline char *__strpbrk_c2 (__const char *__s, int __accept1,         int __accept2);extern __inline char *__strpbrk_c2 (__const char *__s, int __accept1, int __accept2){  while (*__s != '\0' && *__s != __accept1 && *__s != __accept2)    ++__s;  return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s;}extern __inline char *__strpbrk_c3 (__const char *__s, int __accept1,         int __accept2, int __accept3);extern __inline char *__strpbrk_c3 (__const char *__s, int __accept1, int __accept2,       int __accept3){  while (*__s != '\0' && *__s != __accept1 && *__s != __accept2  && *__s != __accept3)    ++__s;  return *__s == '\0' ? ((void *)0) : (char *) (size_t) __s;}# 1173 "/usr/include/bits/string2.h" 3 4extern __inline char *__strtok_r_1c (char *__s, char __sep, char **__nextp);extern __inline char *__strtok_r_1c (char *__s, char __sep, char **__nextp){  char *__result;  if (__s == ((void *)0))    __s = *__nextp;  while (*__s == __sep)    ++__s;  __result = ((void *)0);  if (*__s != '\0')    {      __result = __s++;      while (*__s != '\0') if (*__s++ == __sep)   {     __s[-1] = '\0';     break;   }      *__nextp = __s;    }  return __result;}# 1205 "/usr/include/bits/string2.h" 3 4extern char *__strsep_g (char **__stringp, __const char *__delim);# 1223 "/usr/include/bits/string2.h" 3 4extern __inline char *__strsep_1c (char **__s, char __reject);extern __inline char *__strsep_1c (char **__s, char __reject){  register char *__retval = *__s;  if (__retval != ((void *)0) && (*__s = (__extension__ (__builtin_constant_p (__reject) && !__builtin_constant_p (__retval) && (__reject) == '\0' ? (char *) __rawmemchr (__retval, __reject) : __builtin_strchr (__retval, __reject)))) != ((void *)0))    *(*__s)++ = '\0';  return __retval;}extern __inline char *__strsep_2c (char **__s, char __reject1, char __reject2);extern __inline char *__strsep_2c (char **__s, char __reject1, char __reject2){  register char *__retval = *__s;  if (__retval != ((void *)0))    {      register char *__cp = __retval;      while (1) {   if (*__cp == '\0')     {       __cp = ((void *)0);   break;     }   if (*__cp == __reject1 || *__cp == __reject2)     {       *__cp++ = '\0';       break;     }   ++__cp; }      *__s = __cp;    }  return __retval;}extern __inline char *__strsep_3c (char **__s, char __reject1, char __reject2,       char __reject3);extern __inline char *__strsep_3c (char **__s, char __reject1, char __reject2, char __reject3){  register char *__retval = *__s;  if (__retval != ((void *)0))    {      register char *__cp = __retval;      while (1) {   if (*__cp == '\0')     {       __cp = ((void *)0);   break;     }   if (*__cp == __reject1 || *__cp == __reject2 || *__cp == __reject3)     {       *__cp++ = '\0';       break;     }   ++__cp; }      *__s = __cp;    }  return __retval;}# 1299 "/usr/include/bits/string2.h" 3 4# 1 "/usr/include/stdlib.h" 1 3 4# 33 "/usr/include/stdlib.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 34 "/usr/include/stdlib.h" 2 3 4# 587 "/usr/include/stdlib.h" 3 4extern void *malloc (size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) ;extern void *calloc (size_t __nmemb, size_t __size)     __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) ;# 976 "/usr/include/stdlib.h" 3 4# 1300 "/usr/include/bits/string2.h" 2 3 4extern char *__strdup (__const char *__string) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__));# 1323 "/usr/include/bits/string2.h" 3 4extern char *__strndup (__const char *__string, size_t __n)     __attribute__ ((__nothrow__)) __attribute__ ((__malloc__));# 424 "/usr/include/string.h" 2 3 4# 432 "/usr/include/string.h" 3 4# 3 "zipscript-c.c" 2# 1 "/usr/include/stdlib.h" 1 3 4# 33 "/usr/include/stdlib.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 34 "/usr/include/stdlib.h" 2 3 4# 96 "/usr/include/stdlib.h" 3 4typedef struct  {    int quot;    int rem;  } div_t;typedef struct  {    long int quot;    long int rem;  } ldiv_t;# 140 "/usr/include/stdlib.h" 3 4extern size_t __ctype_get_mb_cur_max (void) __attribute__ ((__nothrow__)) ;extern double atof (__const char *__nptr)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;extern int atoi (__const char *__nptr)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;extern long int atol (__const char *__nptr)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;__extension__ extern long long int atoll (__const char *__nptr)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;extern double strtod (__const char *__restrict __nptr,        char **__restrict __endptr)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;# 182 "/usr/include/stdlib.h" 3 4extern long int strtol (__const char *__restrict __nptr,   char **__restrict __endptr, int __base)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern unsigned long int strtoul (__const char *__restrict __nptr,      char **__restrict __endptr, int __base)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;__extension__extern long long int strtoq (__const char *__restrict __nptr,        char **__restrict __endptr, int __base)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;__extension__extern unsigned long long int strtouq (__const char *__restrict __nptr,           char **__restrict __endptr, int __base)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;__extension__extern long long int strtoll (__const char *__restrict __nptr,         char **__restrict __endptr, int __base)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;__extension__extern unsigned long long int strtoull (__const char *__restrict __nptr,     char **__restrict __endptr, int __base)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;# 279 "/usr/include/stdlib.h" 3 4extern double __strtod_internal (__const char *__restrict __nptr,     char **__restrict __endptr, int __group)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern float __strtof_internal (__const char *__restrict __nptr,    char **__restrict __endptr, int __group)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern long double __strtold_internal (__const char *__restrict __nptr,           char **__restrict __endptr,           int __group)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern long int __strtol_internal (__const char *__restrict __nptr,       char **__restrict __endptr,       int __base, int __group)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern unsigned long int __strtoul_internal (__const char *__restrict __nptr,          char **__restrict __endptr,          int __base, int __group)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;__extension__extern long long int __strtoll_internal (__const char *__restrict __nptr,      char **__restrict __endptr,      int __base, int __group)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;__extension__extern unsigned long long int __strtoull_internal (__const char *         __restrict __nptr,         char **__restrict __endptr,         int __base, int __group)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern __inline double__attribute__ ((__nothrow__)) strtod (__const char *__restrict __nptr, char **__restrict __endptr){  return __strtod_internal (__nptr, __endptr, 0);}extern __inline long int__attribute__ ((__nothrow__)) strtol (__const char *__restrict __nptr, char **__restrict __endptr, int __base){  return __strtol_internal (__nptr, __endptr, __base, 0);}extern __inline unsigned long int__attribute__ ((__nothrow__)) strtoul (__const char *__restrict __nptr, char **__restrict __endptr, int __base){  return __strtoul_internal (__nptr, __endptr, __base, 0);}# 364 "/usr/include/stdlib.h" 3 4__extension__ extern __inline long long int__attribute__ ((__nothrow__)) strtoq (__const char *__restrict __nptr, char **__restrict __endptr, int __base){  return __strtoll_internal (__nptr, __endptr, __base, 0);}__extension__ extern __inline unsigned long long int__attribute__ ((__nothrow__)) strtouq (__const char *__restrict __nptr, char **__restrict __endptr, int __base){  return __strtoull_internal (__nptr, __endptr, __base, 0);}__extension__ extern __inline long long int__attribute__ ((__nothrow__)) strtoll (__const char *__restrict __nptr, char **__restrict __endptr, int __base){  return __strtoll_internal (__nptr, __endptr, __base, 0);}__extension__ extern __inline unsigned long long int__attribute__ ((__nothrow__)) strtoull (__const char * __restrict __nptr, char **__restrict __endptr, int __base){  return __strtoull_internal (__nptr, __endptr, __base, 0);}extern __inline double__attribute__ ((__nothrow__)) atof (__const char *__nptr){  return strtod (__nptr, (char **) ((void *)0));}extern __inline int__attribute__ ((__nothrow__)) atoi (__const char *__nptr){  return (int) strtol (__nptr, (char **) ((void *)0), 10);}extern __inline long int__attribute__ ((__nothrow__)) atol (__const char *__nptr){  return strtol (__nptr, (char **) ((void *)0), 10);}__extension__ extern __inline long long int__attribute__ ((__nothrow__)) atoll (__const char *__nptr){  return strtoll (__nptr, (char **) ((void *)0), 10);}# 429 "/usr/include/stdlib.h" 3 4extern char *l64a (long int __n) __attribute__ ((__nothrow__)) ;extern long int a64l (__const char *__s)     __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;# 1 "/usr/include/sys/types.h" 1 3 4# 29 "/usr/include/sys/types.h" 3 4typedef __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 __ino64_t ino_t;# 62 "/usr/include/sys/types.h" 3 4typedef __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 __off64_t off_t;# 100 "/usr/include/sys/types.h" 3 4typedef __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;# 133 "/usr/include/sys/types.h" 3 4# 1 "/usr/include/time.h" 1 3 4# 75 "/usr/include/time.h" 3 4typedef __time_t time_t;# 93 "/usr/include/time.h" 3 4typedef __clockid_t clockid_t;# 105 "/usr/include/time.h" 3 4typedef __timer_t timer_t;# 134 "/usr/include/sys/types.h" 2 3 4# 147 "/usr/include/sys/types.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 148 "/usr/include/sys/types.h" 2 3 4typedef unsigned long int ulong;typedef unsigned short int ushort;typedef unsigned int uint;# 195 "/usr/include/sys/types.h" 3 4typedef 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__)));# 220 "/usr/include/sys/types.h" 3 4# 1 "/usr/include/sys/select.h" 1 3 4# 31 "/usr/include/sys/select.h" 3 4# 1 "/usr/include/bits/select.h" 1 3 4# 32 "/usr/include/sys/select.h" 2 3 4# 1 "/usr/include/bits/sigset.h" 1 3 4# 24 "/usr/include/bits/sigset.h" 3 4typedef int __sig_atomic_t;typedef struct  {    unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];  } __sigset_t;# 35 "/usr/include/sys/select.h" 2 3 4typedef __sigset_t sigset_t;# 1 "/usr/include/time.h" 1 3 4# 121 "/usr/include/time.h" 3 4struct timespec  {    __time_t tv_sec;    long int tv_nsec;  };# 45 "/usr/include/sys/select.h" 2 3 4# 1 "/usr/include/bits/time.h" 1 3 4# 69 "/usr/include/bits/time.h" 3 4struct timeval  {    __time_t tv_sec;    __suseconds_t tv_usec;  };# 47 "/usr/include/sys/select.h" 2 3 4typedef __suseconds_t suseconds_t;typedef long int __fd_mask;# 67 "/usr/include/sys/select.h" 3 4typedef struct  {    __fd_mask __fds_bits[1024 / (8 * sizeof (__fd_mask))];  } fd_set;typedef __fd_mask fd_mask;# 99 "/usr/include/sys/select.h" 3 4# 109 "/usr/include/sys/select.h" 3 4extern int select (int __nfds, fd_set *__restrict __readfds,     fd_set *__restrict __writefds,     fd_set *__restrict __exceptfds,     struct timeval *__restrict __timeout);# 121 "/usr/include/sys/select.h" 3 4extern int pselect (int __nfds, fd_set *__restrict __readfds,      fd_set *__restrict __writefds,      fd_set *__restrict __exceptfds,      const struct timespec *__restrict __timeout,      const __sigset_t *__restrict __sigmask);# 221 "/usr/include/sys/types.h" 2 3 4# 1 "/usr/include/sys/sysmacros.h" 1 3 4# 30 "/usr/include/sys/sysmacros.h" 3 4__extension__extern __inline unsigned int gnu_dev_major (unsigned long long int __dev)     __attribute__ ((__nothrow__));__extension__extern __inline unsigned int gnu_dev_minor (unsigned long long int __dev)     __attribute__ ((__nothrow__));__extension__extern __inline unsigned long long int gnu_dev_makedev (unsigned int __major,       unsigned int __minor)     __attribute__ ((__nothrow__));__extension__ extern __inline unsigned int__attribute__ ((__nothrow__)) gnu_dev_major (unsigned long long int __dev){  return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff);}__extension__ extern __inline unsigned int__attribute__ ((__nothrow__)) gnu_dev_minor (unsigned long long int __dev){  return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff);}__extension__ extern __inline unsigned long long int__attribute__ ((__nothrow__)) gnu_dev_makedev (unsigned int __major, unsigned int __minor){  return ((__minor & 0xff) | ((__major & 0xfff) << 8)   | (((unsigned long long int) (__minor & ~0xff)) << 12)   | (((unsigned long long int) (__major & ~0xfff)) << 32));}# 224 "/usr/include/sys/types.h" 2 3 4# 248 "/usr/include/sys/types.h" 3 4typedef __blkcnt64_t blkcnt_t;typedef __fsblkcnt64_t fsblkcnt_t;typedef __fsfilcnt64_t fsfilcnt_t;# 270 "/usr/include/sys/types.h" 3 4# 1 "/usr/include/bits/pthreadtypes.h" 1 3 4# 23 "/usr/include/bits/pthreadtypes.h" 3 4# 1 "/usr/include/bits/wordsize.h" 1 3 4# 24 "/usr/include/bits/pthreadtypes.h" 2 3 4# 50 "/usr/include/bits/pthreadtypes.h" 3 4typedef unsigned long int pthread_t;typedef union{  char __size[56];  long int __align;} pthread_attr_t;typedef struct __pthread_internal_list{  struct __pthread_internal_list *__prev;  struct __pthread_internal_list *__next;} __pthread_list_t;# 76 "/usr/include/bits/pthreadtypes.h" 3 4typedef union{  struct __pthread_mutex_s  {    int __lock;    unsigned int __count;    int __owner;    unsigned int __nusers;    int __kind;    int __spins;    __pthread_list_t __list;# 101 "/usr/include/bits/pthreadtypes.h" 3 4  } __data;  char __size[40];  long int __align;} pthread_mutex_t;typedef union{  char __size[4];  int __align;} pthread_mutexattr_t;typedef union{  struct  {    int __lock;    unsigned int __futex;    __extension__ unsigned long long int __total_seq;    __extension__ unsigned long long int __wakeup_seq;    __extension__ unsigned long long int __woken_seq;    void *__mutex;    unsigned int __nwaiters;    unsigned int __broadcast_seq;  } __data;  char __size[48];  __extension__ long long int __align;} pthread_cond_t;typedef union{  char __size[4];  int __align;} pthread_condattr_t;typedef unsigned int pthread_key_t;typedef int pthread_once_t;typedef union{  struct  {    int __lock;    unsigned int __nr_readers;    unsigned int __readers_wakeup;    unsigned int __writer_wakeup;    unsigned int __nr_readers_queued;    unsigned int __nr_writers_queued;    int __writer;    int __pad1;    unsigned long int __pad2;    unsigned long int __pad3;    unsigned int __flags;  } __data;# 184 "/usr/include/bits/pthreadtypes.h" 3 4  char __size[56];  long int __align;} pthread_rwlock_t;typedef union{  char __size[8];  long int __align;} pthread_rwlockattr_t;typedef volatile int pthread_spinlock_t;typedef union{  char __size[32];  long int __align;} pthread_barrier_t;typedef union{  char __size[4];  int __align;} pthread_barrierattr_t;# 271 "/usr/include/sys/types.h" 2 3 4# 439 "/usr/include/stdlib.h" 2 3 4extern long int random (void) __attribute__ ((__nothrow__));extern void srandom (unsigned int __seed) __attribute__ ((__nothrow__));extern char *initstate (unsigned int __seed, char *__statebuf,   size_t __statelen) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));extern char *setstate (char *__statebuf) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));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) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int srandom_r (unsigned int __seed, struct random_data *__buf)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,   size_t __statelen,   struct random_data *__restrict __buf)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4)));extern int setstate_r (char *__restrict __statebuf,         struct random_data *__restrict __buf)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int rand (void) __attribute__ ((__nothrow__));extern void srand (unsigned int __seed) __attribute__ ((__nothrow__));extern int rand_r (unsigned int *__seed) __attribute__ ((__nothrow__));extern double drand48 (void) __attribute__ ((__nothrow__));extern double erand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern long int lrand48 (void) __attribute__ ((__nothrow__));extern long int nrand48 (unsigned short int __xsubi[3])     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern long int mrand48 (void) __attribute__ ((__nothrow__));extern long int jrand48 (unsigned short int __xsubi[3])     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern void srand48 (long int __seedval) __attribute__ ((__nothrow__));extern unsigned short int *seed48 (unsigned short int __seed16v[3])     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern void lcong48 (unsigned short int __param[7]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));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) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int erand48_r (unsigned short int __xsubi[3],        struct drand48_data *__restrict __buffer,        double *__restrict __result) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int lrand48_r (struct drand48_data *__restrict __buffer,        long int *__restrict __result)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int nrand48_r (unsigned short int __xsubi[3],        struct drand48_data *__restrict __buffer,        long int *__restrict __result)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int mrand48_r (struct drand48_data *__restrict __buffer,        long int *__restrict __result)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int jrand48_r (unsigned short int __xsubi[3],        struct drand48_data *__restrict __buffer,        long int *__restrict __result)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int srand48_r (long int __seedval, struct drand48_data *__buffer)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));extern int seed48_r (unsigned short int __seed16v[3],       struct drand48_data *__buffer) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));extern int lcong48_r (unsigned short int __param[7],        struct drand48_data *__buffer)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2)));# 597 "/usr/include/stdlib.h" 3 4extern void *realloc (void *__ptr, size_t __size)     __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));extern void free (void *__ptr) __attribute__ ((__nothrow__));extern void cfree (void *__ptr) __attribute__ ((__nothrow__));# 1 "/usr/include/alloca.h" 1 3 4# 25 "/usr/include/alloca.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 26 "/usr/include/alloca.h" 2 3 4extern void *alloca (size_t __size) __attribute__ ((__nothrow__));# 613 "/usr/include/stdlib.h" 2 3 4extern void *valloc (size_t __size) __attribute__ ((__nothrow__)) __attribute__ ((__malloc__)) ;extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern void abort (void) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));extern int atexit (void (*__func) (void)) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern void exit (int __status) __attribute__ ((__nothrow__)) __attribute__ ((__noreturn__));# 658 "/usr/include/stdlib.h" 3 4extern char *getenv (__const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern char *__secure_getenv (__const char *__name)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern int putenv (char *__string) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int setenv (__const char *__name, __const char *__value, int __replace)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2)));extern int unsetenv (__const char *__name) __attribute__ ((__nothrow__));extern int clearenv (void) __attribute__ ((__nothrow__));# 698 "/usr/include/stdlib.h" 3 4extern char *mktemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;# 712 "/usr/include/stdlib.h" 3 4extern int mkstemp (char *__template) __asm__ ("" "mkstemp64")     __attribute__ ((__nonnull__ (1))) ;# 729 "/usr/include/stdlib.h" 3 4extern char *mkdtemp (char *__template) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern int system (__const char *__command) ;# 755 "/usr/include/stdlib.h" 3 4extern char *realpath (__const char *__restrict __name,         char *__restrict __resolved) __attribute__ ((__nothrow__)) ;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)     __attribute__ ((__nonnull__ (1, 2, 5))) ;extern void qsort (void *__base, size_t __nmemb, size_t __size,     __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));extern int abs (int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)) ;extern long int labs (long int __x) __attribute__ ((__nothrow__)) __attribute__ ((__const__)) ;extern div_t div (int __numer, int __denom)     __attribute__ ((__nothrow__)) __attribute__ ((__const__)) ;extern ldiv_t ldiv (long int __numer, long int __denom)     __attribute__ ((__nothrow__)) __attribute__ ((__const__)) ;# 820 "/usr/include/stdlib.h" 3 4extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,     int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) ;extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,     int *__restrict __sign) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) ;extern char *gcvt (double __value, int __ndigit, char *__buf)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3))) ;extern char *qecvt (long double __value, int __ndigit,      int *__restrict __decpt, int *__restrict __sign)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) ;extern char *qfcvt (long double __value, int __ndigit,      int *__restrict __decpt, int *__restrict __sign)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4))) ;extern char *qgcvt (long double __value, int __ndigit, char *__buf)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3))) ;extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,     int *__restrict __sign, char *__restrict __buf,     size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,     int *__restrict __sign, char *__restrict __buf,     size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));extern int qecvt_r (long double __value, int __ndigit,      int *__restrict __decpt, int *__restrict __sign,      char *__restrict __buf, size_t __len)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));extern int qfcvt_r (long double __value, int __ndigit,      int *__restrict __decpt, int *__restrict __sign,      char *__restrict __buf, size_t __len)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4, 5)));extern int mblen (__const char *__s, size_t __n) __attribute__ ((__nothrow__)) ;extern int mbtowc (wchar_t *__restrict __pwc,     __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__)) ;extern int wctomb (char *__s, wchar_t __wchar) __attribute__ ((__nothrow__)) ;extern size_t mbstowcs (wchar_t *__restrict __pwcs,   __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__));extern size_t wcstombs (char *__restrict __s,   __const wchar_t *__restrict __pwcs, size_t __n)     __attribute__ ((__nothrow__));extern int rpmatch (__const char *__response) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;# 925 "/usr/include/stdlib.h" 3 4extern int posix_openpt (int __oflag) ;# 960 "/usr/include/stdlib.h" 3 4extern int getloadavg (double __loadavg[], int __nelem)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 976 "/usr/include/stdlib.h" 3 4# 4 "zipscript-c.c" 2# 1 "/usr/include/time.h" 1 3 4# 31 "/usr/include/time.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 40 "/usr/include/time.h" 2 3 4# 1 "/usr/include/bits/time.h" 1 3 4# 44 "/usr/include/time.h" 2 3 4# 59 "/usr/include/time.h" 3 4typedef __clock_t clock_t;# 132 "/usr/include/time.h" 3 4struct tm{  int tm_sec;  int tm_min;  int tm_hour;  int tm_mday;  int tm_mon;  int tm_year;  int tm_wday;  int tm_yday;  int tm_isdst;  long int tm_gmtoff;  __const char *tm_zone;};struct itimerspec  {    struct timespec it_interval;    struct timespec it_value;  };struct sigevent;# 181 "/usr/include/time.h" 3 4extern clock_t clock (void) __attribute__ ((__nothrow__));extern time_t time (time_t *__timer) __attribute__ ((__nothrow__));extern double difftime (time_t __time1, time_t __time0)     __attribute__ ((__nothrow__)) __attribute__ ((__const__));extern time_t mktime (struct tm *__tp) __attribute__ ((__nothrow__));extern size_t strftime (char *__restrict __s, size_t __maxsize,   __const char *__restrict __format,   __const struct tm *__restrict __tp) __attribute__ ((__nothrow__));# 229 "/usr/include/time.h" 3 4extern struct tm *gmtime (__const time_t *__timer) __attribute__ ((__nothrow__));extern struct tm *localtime (__const time_t *__timer) __attribute__ ((__nothrow__));extern struct tm *gmtime_r (__const time_t *__restrict __timer,       struct tm *__restrict __tp) __attribute__ ((__nothrow__));extern struct tm *localtime_r (__const time_t *__restrict __timer,          struct tm *__restrict __tp) __attribute__ ((__nothrow__));extern char *asctime (__const struct tm *__tp) __attribute__ ((__nothrow__));extern char *ctime (__const time_t *__timer) __attribute__ ((__nothrow__));extern char *asctime_r (__const struct tm *__restrict __tp,   char *__restrict __buf) __attribute__ ((__nothrow__));extern char *ctime_r (__const time_t *__restrict __timer,        char *__restrict __buf) __attribute__ ((__nothrow__));extern char *__tzname[2];extern int __daylight;extern long int __timezone;extern char *tzname[2];extern void tzset (void) __attribute__ ((__nothrow__));extern int daylight;extern long int timezone;extern int stime (__const time_t *__when) __attribute__ ((__nothrow__));# 312 "/usr/include/time.h" 3 4extern time_t timegm (struct tm *__tp) __attribute__ ((__nothrow__));extern time_t timelocal (struct tm *__tp) __attribute__ ((__nothrow__));extern int dysize (int __year) __attribute__ ((__nothrow__)) __attribute__ ((__const__));# 327 "/usr/include/time.h" 3 4extern int nanosleep (__const struct timespec *__requested_time,        struct timespec *__remaining);extern int clock_getres (clockid_t __clock_id, struct timespec *__res) __attribute__ ((__nothrow__));extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) __attribute__ ((__nothrow__));extern int clock_settime (clockid_t __clock_id, __const struct timespec *__tp)     __attribute__ ((__nothrow__));extern int clock_nanosleep (clockid_t __clock_id, int __flags,       __const struct timespec *__req,       struct timespec *__rem);extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) __attribute__ ((__nothrow__));extern int timer_create (clockid_t __clock_id,    struct sigevent *__restrict __evp,    timer_t *__restrict __timerid) __attribute__ ((__nothrow__));extern int timer_delete (timer_t __timerid) __attribute__ ((__nothrow__));extern int timer_settime (timer_t __timerid, int __flags,     __const struct itimerspec *__restrict __value,     struct itimerspec *__restrict __ovalue) __attribute__ ((__nothrow__));extern int timer_gettime (timer_t __timerid, struct itimerspec *__value)     __attribute__ ((__nothrow__));extern int timer_getoverrun (timer_t __timerid) __attribute__ ((__nothrow__));# 416 "/usr/include/time.h" 3 4# 5 "zipscript-c.c" 2# 1 "/usr/include/fcntl.h" 1 3 4# 30 "/usr/include/fcntl.h" 3 4# 1 "/usr/include/bits/fcntl.h" 1 3 4# 25 "/usr/include/bits/fcntl.h" 3 4# 1 "/usr/include/bits/wordsize.h" 1 3 4# 26 "/usr/include/bits/fcntl.h" 2 3 4# 155 "/usr/include/bits/fcntl.h" 3 4struct flock  {    short int l_type;    short int l_whence;    __off64_t l_start;    __off64_t l_len;    __pid_t l_pid;  };# 222 "/usr/include/bits/fcntl.h" 3 4# 251 "/usr/include/bits/fcntl.h" 3 4# 35 "/usr/include/fcntl.h" 2 3 4# 76 "/usr/include/fcntl.h" 3 4extern int fcntl (int __fd, int __cmd, ...);# 88 "/usr/include/fcntl.h" 3 4extern int open (__const char *__file, int __oflag, ...) __asm__ ("" "open64")     __attribute__ ((__nonnull__ (1)));# 133 "/usr/include/fcntl.h" 3 4extern int creat (__const char *__file, __mode_t __mode) __asm__ ("" "creat64") __attribute__ ((__nonnull__ (1)));# 162 "/usr/include/fcntl.h" 3 4extern int lockf (int __fd, int __cmd, __off64_t __len) __asm__ ("" "lockf64");# 180 "/usr/include/fcntl.h" 3 4extern int posix_fadvise (int __fd, __off64_t __offset, __off64_t __len, int __advise) __asm__ ("" "posix_fadvise64") __attribute__ ((__nothrow__));# 201 "/usr/include/fcntl.h" 3 4extern int posix_fallocate (int __fd, __off64_t __offset, __off64_t __len) __asm__ ("" "posix_fallocate64");# 213 "/usr/include/fcntl.h" 3 4# 6 "zipscript-c.c" 2# 1 "/usr/include/fnmatch.h" 1 3 4# 65 "/usr/include/fnmatch.h" 3 4extern int fnmatch (const char *__pattern, const char *__name,      int __flags);# 7 "zipscript-c.c" 2# 1 "/usr/include/sys/time.h" 1 3 4# 29 "/usr/include/sys/time.h" 3 4# 1 "/usr/include/bits/time.h" 1 3 4# 30 "/usr/include/sys/time.h" 2 3 4# 39 "/usr/include/sys/time.h" 3 4# 57 "/usr/include/sys/time.h" 3 4struct timezone  {    int tz_minuteswest;    int tz_dsttime;  };typedef struct timezone *__restrict __timezone_ptr_t;# 73 "/usr/include/sys/time.h" 3 4extern int gettimeofday (struct timeval *__restrict __tv,    __timezone_ptr_t __tz) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int settimeofday (const struct timeval *__tv,    const struct timezone *__tz)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int adjtime (const struct timeval *__delta,      struct timeval *__olddelta) __attribute__ ((__nothrow__));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) __attribute__ ((__nothrow__));extern int setitimer (__itimer_which_t __which,        const struct itimerval *__restrict __new,        struct itimerval *__restrict __old) __attribute__ ((__nothrow__));extern int utimes (const char *__file, const struct timeval __tvp[2])     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int lutimes (const char *__file, const struct timeval __tvp[2])     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int futimes (int __fd, const struct timeval __tvp[2]) __attribute__ ((__nothrow__));# 191 "/usr/include/sys/time.h" 3 4# 8 "zipscript-c.c" 2# 1 "/usr/include/sys/ipc.h" 1 3 4# 29 "/usr/include/sys/ipc.h" 3 4# 1 "/usr/include/bits/ipctypes.h" 1 3 4# 33 "/usr/include/bits/ipctypes.h" 3 4typedef int __ipc_pid_t;# 30 "/usr/include/sys/ipc.h" 2 3 4# 1 "/usr/include/bits/ipc.h" 1 3 4# 43 "/usr/include/bits/ipc.h" 3 4struct ipc_perm  {    __key_t __key;    __uid_t uid;    __gid_t gid;    __uid_t cuid;    __gid_t cgid;    unsigned short int mode;    unsigned short int __pad1;    unsigned short int __seq;    unsigned short int __pad2;    unsigned long int __unused1;    unsigned long int __unused2;  };# 31 "/usr/include/sys/ipc.h" 2 3 4# 52 "/usr/include/sys/ipc.h" 3 4extern key_t ftok (const char *__pathname, int __proj_id) __attribute__ ((__nothrow__));# 10 "zipscript-c.c" 2# 1 "/usr/include/sys/shm.h" 1 3 4# 25 "/usr/include/sys/shm.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 26 "/usr/include/sys/shm.h" 2 3 4# 1 "/usr/include/bits/shm.h" 1 3 4# 39 "/usr/include/bits/shm.h" 3 4extern int __getpagesize (void) __attribute__ ((__nothrow__)) __attribute__ ((__const__));typedef unsigned long int shmatt_t;struct shmid_ds  {    struct ipc_perm shm_perm;    size_t shm_segsz;    __time_t shm_atime;    __time_t shm_dtime;    __time_t shm_ctime;    __pid_t shm_cpid;    __pid_t shm_lpid;    shmatt_t shm_nattch;    unsigned long int __unused4;    unsigned long int __unused5;  };# 85 "/usr/include/bits/shm.h" 3 4struct shminfo  {    unsigned long int shmmax;    unsigned long int shmmin;    unsigned long int shmmni;    unsigned long int shmseg;    unsigned long int shmall;    unsigned long int __unused1;    unsigned long int __unused2;    unsigned long int __unused3;    unsigned long int __unused4;  };struct shm_info  {    int used_ids;    unsigned long int shm_tot;    unsigned long int shm_rss;    unsigned long int shm_swp;    unsigned long int swap_attempts;    unsigned long int swap_successes;  };# 32 "/usr/include/sys/shm.h" 2 3 4# 45 "/usr/include/sys/shm.h" 3 4extern int shmctl (int __shmid, int __cmd, struct shmid_ds *__buf) __attribute__ ((__nothrow__));extern int shmget (key_t __key, size_t __size, int __shmflg) __attribute__ ((__nothrow__));extern void *shmat (int __shmid, const void *__shmaddr, int __shmflg)     __attribute__ ((__nothrow__));extern int shmdt (const void *__shmaddr) __attribute__ ((__nothrow__));# 11 "zipscript-c.c" 2# 1 "/usr/include/sys/stat.h" 1 3 4# 105 "/usr/include/sys/stat.h" 3 4# 1 "/usr/include/bits/stat.h" 1 3 4# 43 "/usr/include/bits/stat.h" 3 4struct stat  {    __dev_t st_dev;    __ino_t st_ino;    __nlink_t st_nlink;    __mode_t st_mode;    __uid_t st_uid;    __gid_t st_gid;    int pad0;    __dev_t st_rdev;    __off_t st_size;    __blksize_t st_blksize;    __blkcnt_t st_blocks;# 88 "/usr/include/bits/stat.h" 3 4    struct timespec st_atim;    struct timespec st_mtim;    struct timespec st_ctim;# 103 "/usr/include/bits/stat.h" 3 4    long int __unused[3];# 112 "/usr/include/bits/stat.h" 3 4  };# 108 "/usr/include/sys/stat.h" 2 3 4# 217 "/usr/include/sys/stat.h" 3 4extern int stat (const char *__restrict __file, struct stat *__restrict __buf) __asm__ ("" "stat64") __attribute__ ((__nothrow__))     __attribute__ ((__nonnull__ (1, 2)));extern int fstat (int __fd, struct stat *__buf) __asm__ ("" "fstat64") __attribute__ ((__nothrow__))     __attribute__ ((__nonnull__ (2)));# 265 "/usr/include/sys/stat.h" 3 4extern int lstat (const char *__restrict __file, struct stat *__restrict __buf) __asm__ ("" "lstat64") __attribute__ ((__nothrow__))     __attribute__ ((__nonnull__ (1, 2)));# 282 "/usr/include/sys/stat.h" 3 4extern int chmod (const char *__file, __mode_t __mode)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int lchmod (const char *__file, __mode_t __mode)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int fchmod (int __fd, __mode_t __mode) __attribute__ ((__nothrow__));# 309 "/usr/include/sys/stat.h" 3 4extern __mode_t umask (__mode_t __mask) __attribute__ ((__nothrow__));# 318 "/usr/include/sys/stat.h" 3 4extern int mkdir (const char *__path, __mode_t __mode)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 333 "/usr/include/sys/stat.h" 3 4extern int mknod (const char *__path, __mode_t __mode, __dev_t __dev)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 347 "/usr/include/sys/stat.h" 3 4extern int mkfifo (const char *__path, __mode_t __mode)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 408 "/usr/include/sys/stat.h" 3 4extern int __fxstat (int __ver, int __fildes, struct stat *__stat_buf) __asm__ ("" "__fxstat64") __attribute__ ((__nothrow__))     __attribute__ ((__nonnull__ (3)));extern int __xstat (int __ver, const char *__filename, struct stat *__stat_buf) __asm__ ("" "__xstat64") __attribute__ ((__nothrow__))     __attribute__ ((__nonnull__ (2, 3)));extern int __lxstat (int __ver, const char *__filename, struct stat *__stat_buf) __asm__ ("" "__lxstat64") __attribute__ ((__nothrow__))     __attribute__ ((__nonnull__ (2, 3)));extern int __fxstatat (int __ver, int __fildes, const char *__filename, struct stat *__stat_buf, int __flag) __asm__ ("" "__fxstatat64") __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 4)));# 440 "/usr/include/sys/stat.h" 3 4extern int __xmknod (int __ver, const char *__path, __mode_t __mode,       __dev_t *__dev) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4)));extern int __xmknodat (int __ver, int __fd, const char *__path,         __mode_t __mode, __dev_t *__dev)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (3, 5)));extern __inline int__attribute__ ((__nothrow__)) stat (const char *__path, struct stat *__statbuf){  return __xstat (1, __path, __statbuf);}extern __inline int__attribute__ ((__nothrow__)) lstat (const char *__path, struct stat *__statbuf){  return __lxstat (1, __path, __statbuf);}extern __inline int__attribute__ ((__nothrow__)) fstat (int __fd, struct stat *__statbuf){  return __fxstat (1, __fd, __statbuf);}# 480 "/usr/include/sys/stat.h" 3 4extern __inline int__attribute__ ((__nothrow__)) mknod (const char *__path, __mode_t __mode, __dev_t __dev){  return __xmknod (0, __path, __mode, &__dev);}# 532 "/usr/include/sys/stat.h" 3 4# 12 "zipscript-c.c" 2# 1 "../../config.h" 1# 15 "zipscript-c.c" 2# 1 "../../lib/strl/strl.h" 1size_t strlcpy(char *, const char *, size_t);# 19 "zipscript-c.c" 2# 1 "../include/helpfunctions.h" 1extern char *find_last_of(char *, const char *);extern char *find_first_of(char *, const char *);extern void strip_whitespaces(char *);extern char *prestrip_whitespaces(char *);extern void xlock(struct flock *, int, short);extern void xunlock(struct flock *, int);# 22 "zipscript-c.c" 2# 1 "../include/zsfunctions.h" 1# 1 "/usr/include/ctype.h" 1 3 4# 30 "/usr/include/ctype.h" 3 4# 48 "/usr/include/ctype.h" 3 4enum{  _ISupper = ((0) < 8 ? ((1 << (0)) << 8) : ((1 << (0)) >> 8)),  _ISlower = ((1) < 8 ? ((1 << (1)) << 8) : ((1 << (1)) >> 8)),  _ISalpha = ((2) < 8 ? ((1 << (2)) << 8) : ((1 << (2)) >> 8)),  _ISdigit = ((3) < 8 ? ((1 << (3)) << 8) : ((1 << (3)) >> 8)),  _ISxdigit = ((4) < 8 ? ((1 << (4)) << 8) : ((1 << (4)) >> 8)),  _ISspace = ((5) < 8 ? ((1 << (5)) << 8) : ((1 << (5)) >> 8)),  _ISprint = ((6) < 8 ? ((1 << (6)) << 8) : ((1 << (6)) >> 8)),  _ISgraph = ((7) < 8 ? ((1 << (7)) << 8) : ((1 << (7)) >> 8)),  _ISblank = ((8) < 8 ? ((1 << (8)) << 8) : ((1 << (8)) >> 8)),  _IScntrl = ((9) < 8 ? ((1 << (9)) << 8) : ((1 << (9)) >> 8)),  _ISpunct = ((10) < 8 ? ((1 << (10)) << 8) : ((1 << (10)) >> 8)),  _ISalnum = ((11) < 8 ? ((1 << (11)) << 8) : ((1 << (11)) >> 8))};# 81 "/usr/include/ctype.h" 3 4extern const unsigned short int **__ctype_b_loc (void)     __attribute__ ((const));extern const __int32_t **__ctype_tolower_loc (void)     __attribute__ ((const));extern const __int32_t **__ctype_toupper_loc (void)     __attribute__ ((const));# 96 "/usr/include/ctype.h" 3 4extern int isalnum (int) __attribute__ ((__nothrow__));extern int isalpha (int) __attribute__ ((__nothrow__));extern int iscntrl (int) __attribute__ ((__nothrow__));extern int isdigit (int) __attribute__ ((__nothrow__));extern int islower (int) __attribute__ ((__nothrow__));extern int isgraph (int) __attribute__ ((__nothrow__));extern int isprint (int) __attribute__ ((__nothrow__));extern int ispunct (int) __attribute__ ((__nothrow__));extern int isspace (int) __attribute__ ((__nothrow__));extern int isupper (int) __attribute__ ((__nothrow__));extern int isxdigit (int) __attribute__ ((__nothrow__));extern int tolower (int __c) __attribute__ ((__nothrow__));extern int toupper (int __c) __attribute__ ((__nothrow__));# 142 "/usr/include/ctype.h" 3 4extern int isascii (int __c) __attribute__ ((__nothrow__));extern int toascii (int __c) __attribute__ ((__nothrow__));extern int _toupper (int) __attribute__ ((__nothrow__));extern int _tolower (int) __attribute__ ((__nothrow__));# 190 "/usr/include/ctype.h" 3 4extern __inline int__attribute__ ((__nothrow__)) tolower (int __c){  return __c >= -128 && __c < 256 ? (*__ctype_tolower_loc ())[__c] : __c;}extern __inline int__attribute__ ((__nothrow__)) toupper (int __c){  return __c >= -128 && __c < 256 ? (*__ctype_toupper_loc ())[__c] : __c;}# 323 "/usr/include/ctype.h" 3 4# 6 "../include/zsfunctions.h" 2# 1 "/usr/include/regex.h" 1 3 4# 36 "/usr/include/regex.h" 3 4typedef long int s_reg_t;typedef unsigned long int active_reg_t;typedef unsigned long int reg_syntax_t;# 181 "/usr/include/regex.h" 3 4extern reg_syntax_t re_syntax_options;# 303 "/usr/include/regex.h" 3 4typedef enum{  REG_NOERROR = 0,  REG_NOMATCH,  REG_BADPAT,  REG_ECOLLATE,  REG_ECTYPE,  REG_EESCAPE,  REG_ESUBREG,  REG_EBRACK,  REG_EPAREN,  REG_EBRACE,  REG_BADBR,  REG_ERANGE,  REG_ESPACE,  REG_BADRPT,  REG_EEND,  REG_ESIZE,  REG_ERPAREN} reg_errcode_t;# 343 "/usr/include/regex.h" 3 4struct re_pattern_buffer{  unsigned char *buffer;  unsigned long int allocated;  unsigned long int used;  reg_syntax_t syntax;  char *fastmap;  unsigned char * translate;  size_t re_nsub;  unsigned can_be_null : 1;# 386 "/usr/include/regex.h" 3 4  unsigned regs_allocated : 2;  unsigned fastmap_accurate : 1;  unsigned no_sub : 1;  unsigned not_bol : 1;  unsigned not_eol : 1;  unsigned newline_anchor : 1;};typedef struct re_pattern_buffer regex_t;typedef int regoff_t;struct re_registers{  unsigned num_regs;  regoff_t *start;  regoff_t *end;};# 434 "/usr/include/regex.h" 3 4typedef struct{  regoff_t rm_so;  regoff_t rm_eo;} regmatch_t;extern reg_syntax_t re_set_syntax (reg_syntax_t __syntax);extern const char *re_compile_pattern (const char *__pattern, size_t __length,           struct re_pattern_buffer *__buffer);extern int re_compile_fastmap (struct re_pattern_buffer *__buffer);extern int re_search (struct re_pattern_buffer *__buffer, const char *__string,        int __length, int __start, int __range,        struct re_registers *__regs);extern int re_search_2 (struct re_pattern_buffer *__buffer,   const char *__string1, int __length1,   const char *__string2, int __length2, int __start,   int __range, struct re_registers *__regs, int __stop);extern int re_match (struct re_pattern_buffer *__buffer, const char *__string,       int __length, int __start, struct re_registers *__regs);extern int re_match_2 (struct re_pattern_buffer *__buffer,         const char *__string1, int __length1,         const char *__string2, int __length2, int __start,         struct re_registers *__regs, int __stop);# 502 "/usr/include/regex.h" 3 4extern void re_set_registers (struct re_pattern_buffer *__buffer,         struct re_registers *__regs,         unsigned int __num_regs,         regoff_t *__starts, regoff_t *__ends);# 537 "/usr/include/regex.h" 3 4extern int regcomp (regex_t *__restrict __preg,      const char *__restrict __pattern,      int __cflags);extern int regexec (const regex_t *__restrict __preg,      const char *__restrict __string, size_t __nmatch,      regmatch_t __pmatch[__restrict],      int __eflags);extern size_t regerror (int __errcode, const regex_t *__restrict __preg,   char *__restrict __errbuf, size_t __errbuf_size);extern void regfree (regex_t *__preg);# 12 "../include/zsfunctions.h" 2# 1 "/usr/include/errno.h" 1 3 4# 32 "/usr/include/errno.h" 3 4# 1 "/usr/include/bits/errno.h" 1 3 4# 25 "/usr/include/bits/errno.h" 3 4# 1 "/usr/include/linux/errno.h" 1 3 4# 1 "/usr/include/asm/errno.h" 1 3 4# 1 "/usr/include/asm-x86_64/errno.h" 1 3 4# 1 "/usr/include/asm-generic/errno.h" 1 3 4# 1 "/usr/include/asm-generic/errno-base.h" 1 3 4# 5 "/usr/include/asm-generic/errno.h" 2 3 4# 5 "/usr/include/asm-x86_64/errno.h" 2 3 4# 6 "/usr/include/asm/errno.h" 2 3 4# 5 "/usr/include/linux/errno.h" 2 3 4# 26 "/usr/include/bits/errno.h" 2 3 4# 43 "/usr/include/bits/errno.h" 3 4extern int *__errno_location (void) __attribute__ ((__nothrow__)) __attribute__ ((__const__));# 37 "/usr/include/errno.h" 2 3 4# 59 "/usr/include/errno.h" 3 4# 17 "../include/zsfunctions.h" 2# 1 "/usr/include/sys/wait.h" 1 3 4# 29 "/usr/include/sys/wait.h" 3 4# 1 "/usr/include/signal.h" 1 3 4# 31 "/usr/include/signal.h" 3 4# 1 "/usr/include/bits/sigset.h" 1 3 4# 104 "/usr/include/bits/sigset.h" 3 4extern int __sigismember (const __sigset_t *, int);extern int __sigaddset (__sigset_t *, int);extern int __sigdelset (__sigset_t *, int);# 118 "/usr/include/bits/sigset.h" 3 4extern __inline int __sigismember (const __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return (__set->__val[__word] & __mask) ? 1 : 0; }extern __inline int __sigaddset ( __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return ((__set->__val[__word] |= __mask), 0); }extern __inline int __sigdelset ( __sigset_t *__set, int __sig) { unsigned long int __mask = (((unsigned long int) 1) << (((__sig) - 1) % (8 * sizeof (unsigned long int)))); unsigned long int __word = (((__sig) - 1) / (8 * sizeof (unsigned long int))); return ((__set->__val[__word] &= ~__mask), 0); }# 34 "/usr/include/signal.h" 2 3 4typedef __sig_atomic_t sig_atomic_t;# 58 "/usr/include/signal.h" 3 4# 1 "/usr/include/bits/signum.h" 1 3 4# 59 "/usr/include/signal.h" 2 3 4# 75 "/usr/include/signal.h" 3 4typedef void (*__sighandler_t) (int);extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler)     __attribute__ ((__nothrow__));# 90 "/usr/include/signal.h" 3 4extern __sighandler_t signal (int __sig, __sighandler_t __handler)     __attribute__ ((__nothrow__));# 104 "/usr/include/signal.h" 3 4# 117 "/usr/include/signal.h" 3 4extern int kill (__pid_t __pid, int __sig) __attribute__ ((__nothrow__));extern int killpg (__pid_t __pgrp, int __sig) __attribute__ ((__nothrow__));extern int raise (int __sig) __attribute__ ((__nothrow__));extern __sighandler_t ssignal (int __sig, __sighandler_t __handler)     __attribute__ ((__nothrow__));extern int gsignal (int __sig) __attribute__ ((__nothrow__));extern void psignal (int __sig, const char *__s);# 153 "/usr/include/signal.h" 3 4extern int __sigpause (int __sig_or_mask, int __is_sig);# 181 "/usr/include/signal.h" 3 4extern int sigblock (int __mask) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__));extern int sigsetmask (int __mask) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__));extern int siggetmask (void) __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__));# 201 "/usr/include/signal.h" 3 4typedef __sighandler_t sig_t;# 212 "/usr/include/signal.h" 3 4# 1 "/usr/include/bits/siginfo.h" 1 3 4# 25 "/usr/include/bits/siginfo.h" 3 4# 1 "/usr/include/bits/wordsize.h" 1 3 4# 26 "/usr/include/bits/siginfo.h" 2 3 4typedef union sigval  {    int sival_int;    void *sival_ptr;  } sigval_t;# 51 "/usr/include/bits/siginfo.h" 3 4typedef struct siginfo  {    int si_signo;    int si_errno;    int si_code;    union      { int _pad[((128 / sizeof (int)) - 4)]; struct   {     __pid_t si_pid;     __uid_t si_uid;   } _kill; struct   {     int si_tid;     int si_overrun;     sigval_t si_sigval;   } _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;# 129 "/usr/include/bits/siginfo.h" 3 4enum{  SI_ASYNCNL = -60,  SI_TKILL = -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};# 273 "/usr/include/bits/siginfo.h" 3 4typedef struct sigevent  {    sigval_t sigev_value;    int sigev_signo;    int sigev_notify;    union      { int _pad[((64 / sizeof (int)) - 4)]; __pid_t _tid; struct   {     void (*_function) (sigval_t);     void *_attribute;   } _sigev_thread;      } _sigev_un;  } sigevent_t;enum{  SIGEV_SIGNAL = 0,  SIGEV_NONE,  SIGEV_THREAD,  SIGEV_THREAD_ID = 4};# 213 "/usr/include/signal.h" 2 3 4extern int sigemptyset (sigset_t *__set) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int sigfillset (sigset_t *__set) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int sigaddset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int sigdelset (sigset_t *__set, int __signo) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int sigismember (const sigset_t *__set, int __signo)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 246 "/usr/include/signal.h" 3 4# 1 "/usr/include/bits/sigaction.h" 1 3 4# 25 "/usr/include/bits/sigaction.h" 3 4struct 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);  };# 247 "/usr/include/signal.h" 2 3 4extern int sigprocmask (int __how, const sigset_t *__restrict __set,   sigset_t *__restrict __oset) __attribute__ ((__nothrow__));extern int sigsuspend (const sigset_t *__set) __attribute__ ((__nonnull__ (1)));extern int sigaction (int __sig, const struct sigaction *__restrict __act,        struct sigaction *__restrict __oact) __attribute__ ((__nothrow__));extern int sigpending (sigset_t *__set) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int sigwait (const sigset_t *__restrict __set, int *__restrict __sig)     __attribute__ ((__nonnull__ (1, 2)));extern int sigwaitinfo (const sigset_t *__restrict __set,   siginfo_t *__restrict __info) __attribute__ ((__nonnull__ (1)));extern int sigtimedwait (const sigset_t *__restrict __set,    siginfo_t *__restrict __info,    const struct timespec *__restrict __timeout)     __attribute__ ((__nonnull__ (1)));extern int sigqueue (__pid_t __pid, int __sig, const union sigval __val)     __attribute__ ((__nothrow__));# 304 "/usr/include/signal.h" 3 4extern const char *const _sys_siglist[65];extern const char *const sys_siglist[65];struct sigvec  {    __sighandler_t sv_handler;    int sv_mask;    int sv_flags;  };# 328 "/usr/include/signal.h" 3 4extern int sigvec (int __sig, const struct sigvec *__vec,     struct sigvec *__ovec) __attribute__ ((__nothrow__));# 1 "/usr/include/bits/sigcontext.h" 1 3 4# 26 "/usr/include/bits/sigcontext.h" 3 4# 1 "/usr/include/bits/wordsize.h" 1 3 4# 27 "/usr/include/bits/sigcontext.h" 2 3 4struct _fpreg{  unsigned short significand[4];  unsigned short exponent;};struct _fpxreg{  unsigned short significand[4];  unsigned short exponent;  unsigned short padding[3];};struct _xmmreg{  __uint32_t element[4];};# 109 "/usr/include/bits/sigcontext.h" 3 4struct _fpstate{  __uint16_t cwd;  __uint16_t swd;  __uint16_t ftw;  __uint16_t fop;  __uint64_t rip;  __uint64_t rdp;  __uint32_t mxcsr;  __uint32_t mxcr_mask;  struct _fpxreg _st[8];  struct _xmmreg _xmm[16];  __uint32_t padding[24];};struct sigcontext{  unsigned long r8;  unsigned long r9;  unsigned long r10;  unsigned long r11;  unsigned long r12;  unsigned long r13;  unsigned long r14;  unsigned long r15;  unsigned long rdi;  unsigned long rsi;  unsigned long rbp;  unsigned long rbx;  unsigned long rdx;  unsigned long rax;  unsigned long rcx;  unsigned long rsp;  unsigned long rip;  unsigned long eflags;  unsigned short cs;  unsigned short gs;  unsigned short fs;  unsigned short __pad0;  unsigned long err;  unsigned long trapno;  unsigned long oldmask;  unsigned long cr2;  struct _fpstate * fpstate;  unsigned long __reserved1 [8];};# 334 "/usr/include/signal.h" 2 3 4extern int sigreturn (struct sigcontext *__scp) __attribute__ ((__nothrow__));# 346 "/usr/include/signal.h" 3 4extern int siginterrupt (int __sig, int __interrupt) __attribute__ ((__nothrow__));# 1 "/usr/include/bits/sigstack.h" 1 3 4# 26 "/usr/include/bits/sigstack.h" 3 4struct sigstack  {    void *ss_sp;    int ss_onstack;  };enum{  SS_ONSTACK = 1,  SS_DISABLE};# 50 "/usr/include/bits/sigstack.h" 3 4typedef struct sigaltstack  {    void *ss_sp;    int ss_flags;    size_t ss_size;  } stack_t;# 349 "/usr/include/signal.h" 2 3 4# 357 "/usr/include/signal.h" 3 4extern int sigstack (struct sigstack *__ss, struct sigstack *__oss)     __attribute__ ((__nothrow__)) __attribute__ ((__deprecated__));extern int sigaltstack (const struct sigaltstack *__restrict __ss,   struct sigaltstack *__restrict __oss) __attribute__ ((__nothrow__));# 387 "/usr/include/signal.h" 3 4# 1 "/usr/include/bits/sigthread.h" 1 3 4# 31 "/usr/include/bits/sigthread.h" 3 4extern int pthread_sigmask (int __how,       const __sigset_t *__restrict __newmask,       __sigset_t *__restrict __oldmask)__attribute__ ((__nothrow__));extern int pthread_kill (pthread_t __threadid, int __signo) __attribute__ ((__nothrow__));# 388 "/usr/include/signal.h" 2 3 4extern int __libc_current_sigrtmin (void) __attribute__ ((__nothrow__));extern int __libc_current_sigrtmax (void) __attribute__ ((__nothrow__));# 32 "/usr/include/sys/wait.h" 2 3 4# 1 "/usr/include/sys/resource.h" 1 3 4# 25 "/usr/include/sys/resource.h" 3 4# 1 "/usr/include/bits/resource.h" 1 3 4# 33 "/usr/include/bits/resource.h" 3 4enum __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_SIGPENDING = 11,  __RLIMIT_MSGQUEUE = 12,  __RLIMIT_NICE = 13,  __RLIMIT_RTPRIO = 14,  __RLIMIT_NLIMITS = 15,  __RLIM_NLIMITS = __RLIMIT_NLIMITS};# 129 "/usr/include/bits/resource.h" 3 4typedef __rlim64_t rlim_t;struct rlimit  {    rlim_t rlim_cur;    rlim_t rlim_max;  };# 154 "/usr/include/bits/resource.h" 3 4enum __rusage_who{  RUSAGE_SELF = 0,  RUSAGE_CHILDREN = -1};# 1 "/usr/include/bits/time.h" 1 3 4# 167 "/usr/include/bits/resource.h" 2 3 4struct 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};# 26 "/usr/include/sys/resource.h" 2 3 4# 43 "/usr/include/sys/resource.h" 3 4typedef int __rlimit_resource_t;typedef int __rusage_who_t;typedef int __priority_which_t;# 55 "/usr/include/sys/resource.h" 3 4extern int getrlimit (__rlimit_resource_t __resource, struct rlimit *__rlimits) __asm__ ("" "getrlimit64") __attribute__ ((__nothrow__));# 74 "/usr/include/sys/resource.h" 3 4extern int setrlimit (__rlimit_resource_t __resource, const struct rlimit *__rlimits) __asm__ ("" "setrlimit64") __attribute__ ((__nothrow__));# 88 "/usr/include/sys/resource.h" 3 4extern int getrusage (__rusage_who_t __who, struct rusage *__usage) __attribute__ ((__nothrow__));extern int getpriority (__priority_which_t __which, id_t __who) __attribute__ ((__nothrow__));extern int setpriority (__priority_which_t __which, id_t __who, int __prio)     __attribute__ ((__nothrow__));# 33 "/usr/include/sys/wait.h" 2 3 4# 1 "/usr/include/bits/waitflags.h" 1 3 4# 39 "/usr/include/sys/wait.h" 2 3 4# 63 "/usr/include/sys/wait.h" 3 4typedef union  {    union wait *__uptr;    int *__iptr;  } __WAIT_STATUS __attribute__ ((__transparent_union__));# 80 "/usr/include/sys/wait.h" 3 4# 1 "/usr/include/bits/waitstatus.h" 1 3 4# 67 "/usr/include/bits/waitstatus.h" 3 4union wait  {    int w_status;    struct      { unsigned int __w_termsig:7; unsigned int __w_coredump:1; unsigned int __w_retcode:8; unsigned int:16;      } __wait_terminated;    struct      { unsigned int __w_stopval:8; unsigned int __w_stopsig:8; unsigned int:16;      } __wait_stopped;  };# 81 "/usr/include/sys/wait.h" 2 3 4# 102 "/usr/include/sys/wait.h" 3 4typedef enum{  P_ALL,  P_PID,  P_PGID} idtype_t;# 116 "/usr/include/sys/wait.h" 3 4extern __pid_t wait (__WAIT_STATUS __stat_loc);# 139 "/usr/include/sys/wait.h" 3 4extern __pid_t waitpid (__pid_t __pid, int *__stat_loc, int __options);# 1 "/usr/include/bits/siginfo.h" 1 3 4# 25 "/usr/include/bits/siginfo.h" 3 4# 1 "/usr/include/bits/wordsize.h" 1 3 4# 26 "/usr/include/bits/siginfo.h" 2 3 4# 144 "/usr/include/sys/wait.h" 2 3 4# 155 "/usr/include/sys/wait.h" 3 4extern 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) __attribute__ ((__nothrow__));extern __pid_t wait4 (__pid_t __pid, __WAIT_STATUS __stat_loc, int __options,        struct rusage *__usage) __attribute__ ((__nothrow__));# 18 "../include/zsfunctions.h" 2# 1 "/usr/include/sys/param.h" 1 3 4# 22 "/usr/include/sys/param.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/limits.h" 1 3 4# 11 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/limits.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/syslimits.h" 1 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/limits.h" 1 3 4# 122 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/limits.h" 3 4# 1 "/usr/include/limits.h" 1 3 4# 145 "/usr/include/limits.h" 3 4# 1 "/usr/include/bits/posix1_lim.h" 1 3 4# 153 "/usr/include/bits/posix1_lim.h" 3 4# 1 "/usr/include/bits/local_lim.h" 1 3 4# 36 "/usr/include/bits/local_lim.h" 3 4# 1 "/usr/include/linux/limits.h" 1 3 4# 37 "/usr/include/bits/local_lim.h" 2 3 4# 154 "/usr/include/bits/posix1_lim.h" 2 3 4# 146 "/usr/include/limits.h" 2 3 4# 1 "/usr/include/bits/posix2_lim.h" 1 3 4# 150 "/usr/include/limits.h" 2 3 4# 123 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/limits.h" 2 3 4# 8 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/syslimits.h" 2 3 4# 12 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/limits.h" 2 3 4# 23 "/usr/include/sys/param.h" 2 3 4# 1 "/usr/include/linux/param.h" 1 3 4# 1 "/usr/include/asm/param.h" 1 3 4# 1 "/usr/include/asm-x86_64/param.h" 1 3 4# 6 "/usr/include/asm/param.h" 2 3 4# 5 "/usr/include/linux/param.h" 2 3 4# 25 "/usr/include/sys/param.h" 2 3 4# 21 "../include/zsfunctions.h" 2# 1 "/usr/include/unistd.h" 1 3 4# 28 "/usr/include/unistd.h" 3 4# 173 "/usr/include/unistd.h" 3 4# 1 "/usr/include/bits/posix_opt.h" 1 3 4# 174 "/usr/include/unistd.h" 2 3 4# 197 "/usr/include/unistd.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 198 "/usr/include/unistd.h" 2 3 4# 226 "/usr/include/unistd.h" 3 4typedef __useconds_t useconds_t;# 238 "/usr/include/unistd.h" 3 4typedef __intptr_t intptr_t;typedef __socklen_t socklen_t;# 258 "/usr/include/unistd.h" 3 4extern int access (const char *__name, int __type) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 304 "/usr/include/unistd.h" 3 4extern __off64_t lseek (int __fd, __off64_t __offset, int __whence) __asm__ ("" "lseek64") __attribute__ ((__nothrow__));# 320 "/usr/include/unistd.h" 3 4extern 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) ;# 384 "/usr/include/unistd.h" 3 4extern int pipe (int __pipedes[2]) __attribute__ ((__nothrow__)) ;# 393 "/usr/include/unistd.h" 3 4extern unsigned int alarm (unsigned int __seconds) __attribute__ ((__nothrow__));# 405 "/usr/include/unistd.h" 3 4extern unsigned int sleep (unsigned int __seconds);extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval)     __attribute__ ((__nothrow__));extern int usleep (__useconds_t __useconds);# 429 "/usr/include/unistd.h" 3 4extern int pause (void);extern int chown (const char *__file, __uid_t __owner, __gid_t __group)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern int fchown (int __fd, __uid_t __owner, __gid_t __group) __attribute__ ((__nothrow__)) ;extern int lchown (const char *__file, __uid_t __owner, __gid_t __group)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;# 457 "/usr/include/unistd.h" 3 4extern int chdir (const char *__path) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern int fchdir (int __fd) __attribute__ ((__nothrow__)) ;# 471 "/usr/include/unistd.h" 3 4extern char *getcwd (char *__buf, size_t __size) __attribute__ ((__nothrow__)) ;# 484 "/usr/include/unistd.h" 3 4extern char *getwd (char *__buf)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)) ;extern int dup (int __fd) __attribute__ ((__nothrow__)) ;extern int dup2 (int __fd, int __fd2) __attribute__ ((__nothrow__));extern char **__environ;extern int execve (const char *__path, char *const __argv[],     char *const __envp[]) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 516 "/usr/include/unistd.h" 3 4extern int execv (const char *__path, char *const __argv[])     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int execle (const char *__path, const char *__arg, ...)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int execl (const char *__path, const char *__arg, ...)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int execvp (const char *__file, char *const __argv[])     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int execlp (const char *__file, const char *__arg, ...)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int nice (int __inc) __attribute__ ((__nothrow__)) ;extern void _exit (int __status) __attribute__ ((__noreturn__));# 1 "/usr/include/bits/confname.h" 1 3 4# 26 "/usr/include/bits/confname.h" 3 4enum  {    _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,    _PC_2_SYMLINKS  };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,    _SC_LEVEL1_ICACHE_SIZE,    _SC_LEVEL1_ICACHE_ASSOC,    _SC_LEVEL1_ICACHE_LINESIZE,    _SC_LEVEL1_DCACHE_SIZE,    _SC_LEVEL1_DCACHE_ASSOC,    _SC_LEVEL1_DCACHE_LINESIZE,    _SC_LEVEL2_CACHE_SIZE,    _SC_LEVEL2_CACHE_ASSOC,    _SC_LEVEL2_CACHE_LINESIZE,    _SC_LEVEL3_CACHE_SIZE,    _SC_LEVEL3_CACHE_ASSOC,    _SC_LEVEL3_CACHE_LINESIZE,    _SC_LEVEL4_CACHE_SIZE,    _SC_LEVEL4_CACHE_ASSOC,    _SC_LEVEL4_CACHE_LINESIZE,    _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50,    _SC_RAW_SOCKETS  };enum  {    _CS_PATH,    _CS_V6_WIDTH_RESTRICTED_ENVS,    _CS_GNU_LIBC_VERSION,    _CS_GNU_LIBPTHREAD_VERSION,    _CS_LFS_CFLAGS = 1000,    _CS_LFS_LDFLAGS,    _CS_LFS_LIBS,    _CS_LFS_LINTFLAGS,    _CS_LFS64_CFLAGS,    _CS_LFS64_LDFLAGS,    _CS_LFS64_LIBS,    _CS_LFS64_LINTFLAGS,    _CS_XBS5_ILP32_OFF32_CFLAGS = 1100,    _CS_XBS5_ILP32_OFF32_LDFLAGS,    _CS_XBS5_ILP32_OFF32_LIBS,    _CS_XBS5_ILP32_OFF32_LINTFLAGS,    _CS_XBS5_ILP32_OFFBIG_CFLAGS,    _CS_XBS5_ILP32_OFFBIG_LDFLAGS,    _CS_XBS5_ILP32_OFFBIG_LIBS,    _CS_XBS5_ILP32_OFFBIG_LINTFLAGS,    _CS_XBS5_LP64_OFF64_CFLAGS,    _CS_XBS5_LP64_OFF64_LDFLAGS,    _CS_XBS5_LP64_OFF64_LIBS,    _CS_XBS5_LP64_OFF64_LINTFLAGS,    _CS_XBS5_LPBIG_OFFBIG_CFLAGS,    _CS_XBS5_LPBIG_OFFBIG_LDFLAGS,    _CS_XBS5_LPBIG_OFFBIG_LIBS,    _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS,    _CS_POSIX_V6_ILP32_OFF32_CFLAGS,    _CS_POSIX_V6_ILP32_OFF32_LDFLAGS,    _CS_POSIX_V6_ILP32_OFF32_LIBS,    _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS,    _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS,    _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS,    _CS_POSIX_V6_ILP32_OFFBIG_LIBS,    _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS,    _CS_POSIX_V6_LP64_OFF64_CFLAGS,    _CS_POSIX_V6_LP64_OFF64_LDFLAGS,    _CS_POSIX_V6_LP64_OFF64_LIBS,    _CS_POSIX_V6_LP64_OFF64_LINTFLAGS,    _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS,    _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS,    _CS_POSIX_V6_LPBIG_OFFBIG_LIBS,    _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS  };# 555 "/usr/include/unistd.h" 2 3 4extern long int pathconf (const char *__path, int __name)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern long int fpathconf (int __fd, int __name) __attribute__ ((__nothrow__));extern long int sysconf (int __name) __attribute__ ((__nothrow__));extern size_t confstr (int __name, char *__buf, size_t __len) __attribute__ ((__nothrow__));extern __pid_t getpid (void) __attribute__ ((__nothrow__));extern __pid_t getppid (void) __attribute__ ((__nothrow__));extern __pid_t getpgrp (void) __attribute__ ((__nothrow__));# 591 "/usr/include/unistd.h" 3 4extern __pid_t __getpgid (__pid_t __pid) __attribute__ ((__nothrow__));# 600 "/usr/include/unistd.h" 3 4extern int setpgid (__pid_t __pid, __pid_t __pgid) __attribute__ ((__nothrow__));# 617 "/usr/include/unistd.h" 3 4extern int setpgrp (void) __attribute__ ((__nothrow__));# 634 "/usr/include/unistd.h" 3 4extern __pid_t setsid (void) __attribute__ ((__nothrow__));extern __uid_t getuid (void) __attribute__ ((__nothrow__));extern __uid_t geteuid (void) __attribute__ ((__nothrow__));extern __gid_t getgid (void) __attribute__ ((__nothrow__));extern __gid_t getegid (void) __attribute__ ((__nothrow__));extern int getgroups (int __size, __gid_t __list[]) __attribute__ ((__nothrow__)) ;# 667 "/usr/include/unistd.h" 3 4extern int setuid (__uid_t __uid) __attribute__ ((__nothrow__));extern int setreuid (__uid_t __ruid, __uid_t __euid) __attribute__ ((__nothrow__));extern int seteuid (__uid_t __uid) __attribute__ ((__nothrow__));extern int setgid (__gid_t __gid) __attribute__ ((__nothrow__));extern int setregid (__gid_t __rgid, __gid_t __egid) __attribute__ ((__nothrow__));extern int setegid (__gid_t __gid) __attribute__ ((__nothrow__));# 723 "/usr/include/unistd.h" 3 4extern __pid_t fork (void) __attribute__ ((__nothrow__));extern __pid_t vfork (void) __attribute__ ((__nothrow__));extern char *ttyname (int __fd) __attribute__ ((__nothrow__));extern int ttyname_r (int __fd, char *__buf, size_t __buflen)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2))) ;extern int isatty (int __fd) __attribute__ ((__nothrow__));extern int ttyslot (void) __attribute__ ((__nothrow__));extern int link (const char *__from, const char *__to)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))) ;# 769 "/usr/include/unistd.h" 3 4extern int symlink (const char *__from, const char *__to)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))) ;extern ssize_t readlink (const char *__restrict __path,    char *__restrict __buf, size_t __len)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1, 2))) ;# 792 "/usr/include/unistd.h" 3 4extern int unlink (const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 801 "/usr/include/unistd.h" 3 4extern int rmdir (const char *__path) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern __pid_t tcgetpgrp (int __fd) __attribute__ ((__nothrow__));extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) __attribute__ ((__nothrow__));extern char *getlogin (void);extern int getlogin_r (char *__name, size_t __name_len) __attribute__ ((__nonnull__ (1)));extern int setlogin (const char *__name) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 837 "/usr/include/unistd.h" 3 4# 1 "/usr/include/getopt.h" 1 3 4# 59 "/usr/include/getopt.h" 3 4extern char *optarg;# 73 "/usr/include/getopt.h" 3 4extern int optind;extern int opterr;extern int optopt;# 152 "/usr/include/getopt.h" 3 4extern int getopt (int ___argc, char *const *___argv, const char *__shortopts)       __attribute__ ((__nothrow__));# 838 "/usr/include/unistd.h" 2 3 4extern int gethostname (char *__name, size_t __len) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int sethostname (const char *__name, size_t __len)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern int sethostid (long int __id) __attribute__ ((__nothrow__)) ;extern int getdomainname (char *__name, size_t __len)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern int setdomainname (const char *__name, size_t __len)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern int vhangup (void) __attribute__ ((__nothrow__));extern int revoke (const char *__file) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern int profil (unsigned short int *__sample_buffer, size_t __size,     size_t __offset, unsigned int __scale)     __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int acct (const char *__name) __attribute__ ((__nothrow__));extern char *getusershell (void) __attribute__ ((__nothrow__));extern void endusershell (void) __attribute__ ((__nothrow__));extern void setusershell (void) __attribute__ ((__nothrow__));extern int daemon (int __nochdir, int __noclose) __attribute__ ((__nothrow__)) ;extern int chroot (const char *__path) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;extern char *getpass (const char *__prompt) __attribute__ ((__nonnull__ (1)));# 923 "/usr/include/unistd.h" 3 4extern int fsync (int __fd);extern long int gethostid (void);extern void sync (void) __attribute__ ((__nothrow__));extern int getpagesize (void) __attribute__ ((__nothrow__)) __attribute__ ((__const__));extern int getdtablesize (void) __attribute__ ((__nothrow__));# 952 "/usr/include/unistd.h" 3 4extern int truncate (const char *__file, __off64_t __length) __asm__ ("" "truncate64") __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1))) ;# 973 "/usr/include/unistd.h" 3 4extern int ftruncate (int __fd, __off64_t __length) __asm__ ("" "ftruncate64") __attribute__ ((__nothrow__)) ;# 990 "/usr/include/unistd.h" 3 4extern int brk (void *__addr) __attribute__ ((__nothrow__)) ;extern void *sbrk (intptr_t __delta) __attribute__ ((__nothrow__));# 1011 "/usr/include/unistd.h" 3 4extern long int syscall (long int __sysno, ...) __attribute__ ((__nothrow__));# 1065 "/usr/include/unistd.h" 3 4extern int fdatasync (int __fildes);# 1103 "/usr/include/unistd.h" 3 4# 22 "../include/zsfunctions.h" 2# 38 "../include/zsfunctions.h"# 1 "../../config.h" 1# 39 "../include/zsfunctions.h" 2# 1 "../include/objects.h" 1# 1 "../include/constants.h" 1# 1 "../include/../conf/zsconfig.h" 1# 2 "../include/constants.h" 2# 1 "../include/../include/zsconfig.defaults.h" 1# 3 "../include/constants.h" 2# 382 "../include/constants.h"enum ReleaseTypes { RTYPE_NULL = 0, RTYPE_RAR = 1, RTYPE_OTHER = 2, RTYPE_AUDIO = 3, RTYPE_VIDEO = 4, RTYPE_INVALID,};# 9 "../include/objects.h" 2# 38 "../include/objects.h"# 1 "../include/../conf/zsconfig.h" 1# 39 "../include/objects.h" 2# 1 "../include/../include/zsconfig.defaults.h" 1# 40 "../include/objects.h" 2struct USERINFO { char name[24]; off_t bytes; double speed; unsigned int files; unsigned int pos; unsigned int group; unsigned long long dayup; unsigned long long wkup; unsigned long long monthup; unsigned long long allup;};struct GROUPINFO { char name[24]; off_t bytes; double speed; unsigned int files; unsigned int pos; unsigned int users;};struct audio { char id3_artist[31]; char id3_title [31]; char id3_album [31]; char id3_year [5]; char bitrate [5]; char samplingrate[6]; char *id3_genre; char *layer; char *codec; char *channelmode; char vbr_version_string[10]; char vbr_preset[15]; int is_vbr; char vbr_oldnew[1]; int vbr_quality; int vbr_minimum_bitrate; int vbr_noiseshaping; char vbr_stereo_mode[10]; char vbr_unwise[4]; char vbr_source[10];};struct VIDEO { int height; int width; double fps; char vids[30]; char fourcc[15]; long hz; int ch; char audio[30]; char audiotype[30];};struct current_user { char name [24]; char group [24]; char tagline [255]; short int pos;};struct current_file { char name[255]; char unlink[255]; unsigned int speed; off_t size; char compression_method;};struct race_total { unsigned int start_time; unsigned int stop_time; unsigned char users; unsigned char groups; int files; int files_missing; int files_bad; unsigned char nfo_present; double speed; off_t size; off_t bad_size;};struct misc { char old_leader[24]; char release_name[4096]; char current_path[4096]; char basepath[4096]; char racer_list[1024]; char total_racer_list[1024]; char top_messages[2][1024]; char error_msg [80]; char progress_bar[15]; int release_type; unsigned char write_log; long fastest_user[2]; long slowest_user[2]; unsigned int data_completed;};struct LOCATIONS { char *leader; char *nfo_incomplete; char *incomplete; char *sfv; char *sfvbackup; char *sfv_incomplete; char *race; char link_target[4096]; char link_source[4096]; char path[4096]; char basepath[4096]; unsigned int length_path; unsigned int length_zipdatadir; unsigned int in_cd_dir;};struct VARS { struct current_user user; struct current_file file; struct race_total total; struct misc misc; struct audio audio; struct VIDEO avinfo; unsigned char section; char sectionname[128]; char headpath[4096]; unsigned int data_incrementor; unsigned int data_in_use; unsigned int data_queue; unsigned int data_type; char id3_artist[31]; char id3_genre[31];};typedef struct { struct USERINFO **ui; struct GROUPINFO **gi; struct VARS v; struct LOCATIONS l;} GLOBAL;# 41 "../include/zsfunctions.h" 2# 1 "../include/macros.h" 1# 1 "../../config.h" 1# 6 "../include/macros.h" 2# 1 "/usr/include/dirent.h" 1 3 4# 28 "/usr/include/dirent.h" 3 4# 62 "/usr/include/dirent.h" 3 4# 1 "/usr/include/bits/dirent.h" 1 3 4# 23 "/usr/include/bits/dirent.h" 3 4struct dirent  {    __ino64_t d_ino;    __off64_t d_off;    unsigned short int d_reclen;    unsigned char d_type;    char d_name[256];  };# 63 "/usr/include/dirent.h" 2 3 4# 98 "/usr/include/dirent.h" 3 4enum  {    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  };# 128 "/usr/include/dirent.h" 3 4typedef struct __dirstream DIR;extern DIR *opendir (const char *__name) __attribute__ ((__nonnull__ (1)));# 150 "/usr/include/dirent.h" 3 4extern int closedir (DIR *__dirp) __attribute__ ((__nonnull__ (1)));# 166 "/usr/include/dirent.h" 3 4extern struct dirent *readdir (DIR *__dirp) __asm__ ("" "readdir64")     __attribute__ ((__nonnull__ (1)));# 190 "/usr/include/dirent.h" 3 4extern int readdir_r (DIR *__restrict __dirp, struct dirent *__restrict __entry, struct dirent **__restrict __result) __asm__ ("" "readdir64_r") __attribute__ ((__nonnull__ (1, 2, 3)));# 209 "/usr/include/dirent.h" 3 4extern void rewinddir (DIR *__dirp) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern void seekdir (DIR *__dirp, long int __pos) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern long int telldir (DIR *__dirp) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));extern int dirfd (DIR *__dirp) __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (1)));# 243 "/usr/include/dirent.h" 3 4# 1 "/usr/lib/gcc/x86_64-linux-gnu/4.1.3/include/stddef.h" 1 3 4# 244 "/usr/include/dirent.h" 2 3 4# 257 "/usr/include/dirent.h" 3 4extern int scandir (const char *__restrict __dir, struct dirent ***__restrict __namelist, int (*__selector) (const struct dirent *), int (*__cmp) (const void *, const void *)) __asm__ ("" "scandir64") __attribute__ ((__nonnull__ (1, 2)));# 284 "/usr/include/dirent.h" 3 4extern int alphasort (const void *__e1, const void *__e2) __asm__ ("" "alphasort64") __attribute__ ((__nothrow__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));# 330 "/usr/include/dirent.h" 3 4extern __ssize_t getdirentries (int __fd, char *__restrict __buf, size_t __nbytes, __off64_t *__restrict __basep) __asm__ ("" "getdirentries64") __attribute__ ((__nothrow__)) __attribute__ ((__nonnull__ (2, 4)));# 349 "/usr/include/dirent.h" 3 4# 10 "../include/macros.h" 2# 42 "../include/zsfunctions.h" 2# 1 "../include/constants.h" 1# 1 "../include/../conf/zsconfig.h" 1# 2 "../include/constants.h" 2# 1 "../include/../include/zsconfig.defaults.h" 1# 3 "../include/constants.h" 2# 46 "../include/zsfunctions.h" 2# 78 "../include/zsfunctions.h"struct GROUP { char *name; gid_t id;};struct USER { char *name; uid_t id;};extern struct dirent **dirlist;extern unsigned int direntries;extern void d_log(char *,...);extern void create_missing(char *);extern char *findfileext(DIR *, char *);extern char *findfileextparent(DIR *, char *);extern char *findfileext_old_(char *);extern char *findfileext_old_parent(char *);extern int findfileextcount(DIR *, char *);extern int file_count(DIR *);extern unsigned int hexstrtodec(char *);extern int selector(const struct dirent *);extern void del_releasedir(DIR *, char *);extern void strtolower(char *);extern void space_to_dot(char *);extern void unlink_missing(char *);extern char israr(char *);extern void buffer_progress_bar(struct VARS *);extern void move_progress_bar(unsigned char, struct VARS *, struct USERINFO **, struct GROUPINFO **);extern int check_dupefile(DIR *, char *);extern long findfile(DIR *, char *);extern char *findfilename(char *, char *, struct VARS *);extern char *check_nocase_linkname(char *, char *);extern void removedotfiles(DIR *);extern void removecomplete(void);extern short matchpath(char *, char *);extern short matchpartialpath(char *, char *);extern short strcomp(char *, char *);extern short subcomp(char *, char *);extern short fileexists(char *);extern void createlink(char *, char *, char *, char *);extern void readsfv_ffile(struct VARS *);extern void get_rar_info(struct VARS *);extern int execute(char *);extern char *get_g_name(int);extern char *get_u_name(int);extern int buffer_groups(char *, int);extern int buffer_users(char *, int);extern unsigned long sfv_compare_size(char *, unsigned long);extern void mark_as_bad(char *);extern int extractDirname(char *dirname, char *absoluteDirname);extern void writelog(GLOBAL *, char *, char *);extern void buffer_paths(GLOBAL *, char [2][4096], int *, int);extern void remove_nfo_indicator(GLOBAL *);extern void getrelname(GLOBAL *);extern unsigned char get_filetype(GLOBAL *, char *);extern void *ng_realloc(void *, int, int, int, struct VARS *, int);extern void *ng_realloc2(void *, int, int, int, int);extern void *ng_free(void *);extern int copyfile(char *, char *);extern int make_sfv(char *);extern unsigned int match_lenient(DIR *, char *);extern unsigned int insampledir(char *);# 23 "zipscript-c.c" 2# 1 "../include/race-file.h" 1# 1 "../include/zsfunctions.h" 1# 7 "../include/race-file.h" 2typedef struct { unsigned int crc32,   speed; off_t size; time_t start_time; unsigned char status; unsigned char dummy; char fname[255 +4-255%4],   uname[24],   group[24],   id3_artist[31],   id3_genre[31];} RACEDATA;typedef struct { unsigned int crc32; char fname[255 +4-255%4];} SFVDATA;typedef struct { unsigned int data_version,   data_type,   data_in_use,   data_incrementor,   data_queue,   data_qcurrent,   data_pid,   data_completed;} HEADDATA;extern unsigned int readsfv(const char *, struct VARS *, int);extern void update_sfvdata(const char *, const char *, const unsigned int);extern void delete_sfv(const char *, struct VARS *);extern void readrace(const char *, struct VARS *, struct USERINFO **, struct GROUPINFO **);extern void maketempdir(char *);extern void read_write_leader(const char *, struct VARS *, struct USERINFO *);extern void testfiles(struct LOCATIONS *, struct VARS *, int);extern int copysfv(const char *, const char *, struct VARS *);extern void create_indexfile(const char *, struct VARS *, char *);extern short clear_file(const char *, char *);extern void writerace(const char *, struct VARS *, unsigned int, unsigned char);extern void remove_from_race(const char *, const char *, struct VARS *);extern int verify_racedata(const char *, struct VARS *);extern int create_lock(struct VARS *, const char *, unsigned int, unsigned int, unsigned int);extern void remove_lock(struct VARS *);extern int update_lock(struct VARS *, unsigned int, unsigned int);extern short match_file(char *, char *);extern int check_rarfile(const char *);extern int check_zipfile(const char *, const char *, int);extern void removedir(const char *);extern void create_dirlist(const char *, char *, const int);extern int filebanned_match(const char *);extern int lenient_compare(char *, char *);# 24 "zipscript-c.c" 2# 1 "../include/objects.h" 1# 25 "zipscript-c.c" 2# 1 "../include/macros.h" 1# 26 "zipscript-c.c" 2# 1 "../include/constants.h" 1# 1 "../include/../conf/zsconfig.h" 1# 2 "../include/constants.h" 2# 1 "../include/../include/zsconfig.defaults.h" 1# 3 "../include/constants.h" 2# 31 "zipscript-c.c" 2# 1 "../include/multimedia.h" 1# 1 "../include/avi.h" 1# 21 "../include/avi.h"typedef unsigned long FOURCC;typedef unsigned long DWORD;typedef unsigned short WORD;typedef struct { DWORD dwMicroSecPerFrame; DWORD dwMaxBytesPerSec; DWORD dwPaddingGranularity; DWORD dwFlags; DWORD dwTotalFrames; DWORD dwInitialFrames; DWORD dwStreams; DWORD dwSuggestedBufferSize; DWORD dwWidth; DWORD dwHeight; DWORD dwReserved[4];} AVIMAINHEADER;typedef struct { FOURCC fccType; FOURCC fccHandler; DWORD dwFlags; WORD wPriority; WORD wLanguage; DWORD dwInitialFrames; DWORD dwScale; DWORD dwRate; DWORD dwStart; DWORD dwLength; DWORD dwSuggestedBufferSize; DWORD dwQuality; DWORD dwSampleSize; struct {  short int left;  short int top;  short int right;  short int bottom; } rcFrame;} AVISTREAMHEADER;typedef struct { WORD wFormatTag; WORD nChannels; DWORD nSamplesPerSec; DWORD nAvgBytesPerSec; WORD nBlockAlign; WORD wBitsPerSample; WORD cbSize;} WAVEFORMATEX;typedef struct { DWORD biSize; DWORD biWidth; DWORD biHeight; WORD biPlanes; WORD biBitCount; DWORD biCompression; DWORD biSizeImage; DWORD biXPelsPerMeter; DWORD biYPelsPerMeter; DWORD biClrUsed; DWORD biClrImportant;} BITMAPINFOHEADER;# 2 "../include/multimedia.h" 2char *trim(char *);char *get_preset(char[4]);void get_mpeg_audio_info(char *, struct audio *);const unsigned char *fourcc(FOURCC);void avierror(const char *);DWORD get32(FILE *);WORD get16(FILE *);int avinfo(char *, struct VIDEO *);# 34 "zipscript-c.c" 2# 1 "../include/convert.h" 1char *hms(char *, int);char *convert(struct VARS *, struct USERINFO **, struct GROUPINFO **, char *);char *convert_user(struct VARS *, struct USERINFO *, struct GROUPINFO **, char *, short);char *convert_group(struct VARS *, struct GROUPINFO *, char *, short);char *convert_audio(struct VARS *, char *);char *convert_sitename(char *);char *incomplete(char *, char [2][4096], struct VARS *, int);# 35 "zipscript-c.c" 2# 1 "../include/dizreader.h" 1void removespaces(char *, int);int read_diz(void);# 36 "zipscript-c.c" 2# 1 "../include/stats.h" 1struct userdata { unsigned long long allup_bytes; unsigned long long monthup_bytes; unsigned long long wkup_bytes; unsigned long long dayup_bytes; short name;};void updatestats_free(GLOBAL *);void updatestats(struct VARS *, struct USERINFO **, struct GROUPINFO **, char *, char *, off_t, unsigned int, unsigned int);void sortstats(struct VARS *, struct USERINFO **, struct GROUPINFO **);void showstats(struct VARS *, struct USERINFO **, struct GROUPINFO **);void get_stats(struct VARS *, struct USERINFO **);# 37 "zipscript-c.c" 2# 1 "../include/complete.h" 1extern void complete(GLOBAL *, int);extern void writetop(GLOBAL *, int);# 38 "zipscript-c.c" 2# 1 "../include/crc.h" 1unsigned int calc_crc32(char *);# 39 "zipscript-c.c" 2# 1 "../include/ng-version.h" 1extern const char *ng_version;# 40 "zipscript-c.c" 2# 1 "../include/print_config.h" 1void print_nondefault_config(void);void print_full_config(void);# 41 "zipscript-c.c" 2# 1 "../include/audiosort.h" 1extern void audioSortDir(char *);extern void audioSort(struct audio *, char *, char *);# 42 "zipscript-c.c" 2# 1 "../conf/zsconfig.h" 1# 44 "zipscript-c.c" 2# 1 "../include/zsconfig.defaults.h" 1# 46 "zipscript-c.c" 2# 1 "../include/errors.h" 1# 47 "zipscript-c.c" 2intmain(int argc, char **argv){ GLOBAL g; DIR *dir, *parent; struct dirent *dp;        char temp_path[4096]; char *fileext = ((void *)0), *name_p, *temp_p = ((void *)0), *temp_p_free = ((void *)0); char *target = 0; char *vinfo = 0; char *ext = 0;        char *crc_arg = ((void *)0); char *complete_msg = 0; char *update_msg = 0; char *race_msg = 0; char *sfv_msg = 0; char *update_type = 0; char *newleader_msg = 0; char *halfway_msg = 0; char *complete_bar = 0; char *error_msg = 0; unsigned int crc, gnum = 0, unum = 0, s_crc = 0; unsigned char exit_value = 0; unsigned char no_check = 0; char *sfv_type = 0; char *race_type = 0; char *newleader_type = 0; char *race_halfway_type = 0; char *norace_halfway_type = 0; char *inc_point[2]; char *affillist = 0; unsigned char affil_upload = 0; unsigned char complete_type = 0; char *complete_announce = 0; int cnt, cnt2, n = 0, m = 0; int write_log = 0; long loc; struct stat fileinfo; struct timeval bstart, bstop; d_log("zipscript-c: Reading time for benchmark\n"); gettimeofday(&bstart, (struct timezone *)0);# 118 "zipscript-c.c" d_log("zipscript-c: Project-ZS Next Generation (pzs-ng) %s debug log.\n", ng_version); umask(0666 & 000); if ( 0 > 0 ) {  d_log("zipscript-c: Trying to change effective uid/gid\n");  setegid(0);  seteuid(0); } else if (!geteuid()) {  d_log("zipscript-c: +s mode detected - trying to change effective uid/gid to !root\n");  if (setegid(getgid()) == -1)   d_log("zipscript-c: failed to change gid: %s\n", strerror((*__errno_location ())));  if (seteuid(getuid()) == -1)   d_log("zipscript-c: failed to change uid: %s\n", strerror((*__errno_location ()))); }        if (argc == 2 && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p ("--fullconfig") && __builtin_constant_p (argv[1]) && (__s1_len = strlen ("--fullconfig"), __s2_len = strlen (argv[1]), (!((size_t)(const void *)(("--fullconfig") + 1) - (size_t)(const void *)("--fullconfig") == 1) || __s1_len >= 4) && (!((size_t)(const void *)((argv[1]) + 1) - (size_t)(const void *)(argv[1]) == 1) || __s2_len >= 4)) ? __builtin_strcmp ("--fullconfig", argv[1]) : (__builtin_constant_p ("--fullconfig") && ((size_t)(const void *)(("--fullconfig") + 1) - (size_t)(const void *)("--fullconfig") == 1) && (__s1_len = strlen ("--fullconfig"), __s1_len < 4) ? (__builtin_constant_p (argv[1]) && ((size_t)(const void *)((argv[1]) + 1) - (size_t)(const void *)(argv[1]) == 1) ? __builtin_strcmp ("--fullconfig", argv[1]) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (argv[1]); register int __result = (((const unsigned char *) (const char *) ("--fullconfig"))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((const unsigned char *) (const char *) ("--fullconfig"))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((const unsigned char *) (const char *) ("--fullconfig"))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((const unsigned char *) (const char *) ("--fullconfig"))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (argv[1]) && ((size_t)(const void *)((argv[1]) + 1) - (size_t)(const void *)(argv[1]) == 1) && (__s2_len = strlen (argv[1]), __s2_len < 4) ? (__builtin_constant_p ("--fullconfig") && ((size_t)(const void *)(("--fullconfig") + 1) - (size_t)(const void *)("--fullconfig") == 1) ? __builtin_strcmp ("--fullconfig", argv[1]) : (__extension__ ({ const unsigned char *__s1 = (const unsigned char *) (const char *) ("--fullconfig"); register int __result = __s1[0] - ((const unsigned char *) (const char *) (argv[1]))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((const unsigned char *) (const char *) (argv[1]))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((const unsigned char *) (const char *) (argv[1]))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((const unsigned char *) (const char *) (argv[1]))[3]); } } __result; }))) : __builtin_strcmp ("--fullconfig", argv[1])))); }) == 0)        {            print_full_config();            exit(0);        }        if (argc == 2 && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p ("--config") && __builtin_constant_p (argv[1]) && (__s1_len = strlen ("--config"), __s2_len = strlen (argv[1]), (!((size_t)(const void *)(("--config") + 1) - (size_t)(const void *)("--config") == 1) || __s1_len >= 4) && (!((size_t)(const void *)((argv[1]) + 1) - (size_t)(const void *)(argv[1]) == 1) || __s2_len >= 4)) ? __builtin_strcmp ("--config", argv[1]) : (__builtin_constant_p ("--config") && ((size_t)(const void *)(("--config") + 1) - (size_t)(const void *)("--config") == 1) && (__s1_len = strlen ("--config"), __s1_len < 4) ? (__builtin_constant_p (argv[1]) && ((size_t)(const void *)((argv[1]) + 1) - (size_t)(const void *)(argv[1]) == 1) ? __builtin_strcmp ("--config", argv[1]) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (argv[1]); register int __result = (((const unsigned char *) (const char *) ("--config"))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((const unsigned char *) (const char *) ("--config"))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((const unsigned char *) (const char *) ("--config"))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((const unsigned char *) (const char *) ("--config"))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (argv[1]) && ((size_t)(const void *)((argv[1]) + 1) - (size_t)(const void *)(argv[1]) == 1) && (__s2_len = strlen (argv[1]), __s2_len < 4) ? (__builtin_constant_p ("--config") && ((size_t)(const void *)(("--config") + 1) - (size_t)(const void *)("--config") == 1) ? __builtin_strcmp ("--config", argv[1]) : (__extension__ ({ const unsigned char *__s1 = (const unsigned char *) (const char *) ("--config"); register int __result = __s1[0] - ((const unsigned char *) (const char *) (argv[1]))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((const unsigned char *) (const char *) (argv[1]))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((const unsigned char *) (const char *) (argv[1]))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((const unsigned char *) (const char *) (argv[1]))[3]); } } __result; }))) : __builtin_strcmp ("--config", argv[1])))); }) == 0)        {            print_nondefault_config();            exit(0);        } if (argc < 8) {  d_log("zipscript-c: Wrong number of arguments used (wzdftpd compatible)\n");  printf(" - - PZS-NG ZipScript-C %s - -\n\nUsage: %s <absolute filepath> <crc> <user> <group> <tagline> <speed> <section>\n", ng_version, argv[0]);  printf(" Usage: %s --(full)config - shows (full) config compiled.\n\n", argv[0]);  exit(1); }        crc_arg = argv[2];# 167 "zipscript-c.c" d_log("zipscript-c: Clearing arrays\n"); bzero(&g.v.total, sizeof(struct race_total)); g.v.misc.slowest_user[0] = 30000; g.v.misc.fastest_user[0] = g.v.misc.release_type = RTYPE_NULL;        if (realpath(argv[1], temp_path) != temp_path)        {            d_log("zipscript-c: Could not realpath(\"%s\", temp_path): %s\n", temp_path, strerror((*__errno_location ())));            strlcpy(temp_path, argv[1], 4096);        } strlcpy(g.l.path, temp_path, (((4096)<(strrchr(temp_path, '/') - temp_path + 1))?(4096):(strrchr(temp_path, '/') - temp_path + 1))); strlcpy(g.v.file.name, strrchr(temp_path, '/') + 1, 255);# 200 "zipscript-c.c" strlcpy(g.v.misc.current_path, g.l.path, 4096); d_log("zipscript-c: Changing directory to %s\n", g.l.path); chdir(g.l.path); if (subcomp(g.l.path, g.l.basepath) && (g.l.basepath[0] == '\0'))  strlcpy(g.l.basepath, g.l.path, 4096); if (strlen(g.l.basepath) && (__extension__ (__builtin_constant_p (4096) && ((__builtin_constant_p (g.l.path) && strlen (g.l.path) < ((size_t) (4096))) || (__builtin_constant_p (g.l.basepath) && strlen (g.l.basepath) < ((size_t) (4096)))) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (g.l.path) && __builtin_constant_p (g.l.basepath) && (__s1_len = strlen (g.l.path), __s2_len = strlen (g.l.basepath), (!((size_t)(const void *)((g.l.path) + 1) - (size_t)(const void *)(g.l.path) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((g.l.basepath) + 1) - (size_t)(const void *)(g.l.basepath) == 1) || __s2_len >= 4)) ? __builtin_strcmp (g.l.path, g.l.basepath) : (__builtin_constant_p (g.l.path) && ((size_t)(const void *)((g.l.path) + 1) - (size_t)(const void *)(g.l.path) == 1) && (__s1_len = strlen (g.l.path), __s1_len < 4) ? (__builtin_constant_p (g.l.basepath) && ((size_t)(const void *)((g.l.basepath) + 1) - (size_t)(const void *)(g.l.basepath) == 1) ? __builtin_strcmp (g.l.path, g.l.basepath) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (g.l.basepath); register int __result = (((const unsigned char *) (const char *) (g.l.path))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((const unsigned char *) (const char *) (g.l.path))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((const unsigned char *) (const char *) (g.l.path))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((const unsigned char *) (const char *) (g.l.path))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (g.l.basepath) && ((size_t)(const void *)((g.l.basepath) + 1) - (size_t)(const void *)(g.l.basepath) == 1) && (__s2_len = strlen (g.l.basepath), __s2_len < 4) ? (__builtin_constant_p (g.l.path) && ((size_t)(const void *)((g.l.path) + 1) - (size_t)(const void *)(g.l.path) == 1) ? __builtin_strcmp (g.l.path, g.l.basepath) : (__extension__ ({ const unsigned char *__s1 = (const unsigned char *) (const char *) (g.l.path); register int __result = __s1[0] - ((const unsigned char *) (const char *) (g.l.basepath))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((const unsigned char *) (const char *) (g.l.basepath))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((const unsigned char *) (const char *) (g.l.basepath))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((const unsigned char *) (const char *) (g.l.basepath))[3]); } } __result; }))) : __builtin_strcmp (g.l.path, g.l.basepath)))); }) : strncmp (g.l.path, g.l.basepath, 4096))))  d_log("zipscript-c: We are in subdir of %s\n", g.l.basepath); __builtin_strncpy (g.v.misc.current_path, g.l.path, sizeof(g.v.misc.current_path)); __builtin_strncpy (g.v.misc.basepath, g.l.basepath, sizeof(g.v.misc.basepath));        d_log("zipscript-c: Reading data from commandline (wzdftpd compatible)\n");        sprintf(g.v.user.name, argv[3]);        sprintf(g.v.user.group, argv[4]);        if (!(int)strlen(g.v.user.group))                memcpy(g.v.user.group, "NoGroup", 8);        sprintf(g.v.user.tagline, argv[5]);        if (!(int)strlen(g.v.user.tagline))                memcpy(g.v.user.tagline, "No Tagline Set", 15);        g.v.file.speed = (unsigned int)strtol(argv[6], ((void *)0), 0);        if (!g.v.file.speed)                g.v.file.speed = 1;        d_log("zipscript-c: Reading section from arg (%s)\n", argv[7]);        snprintf(g.v.sectionname, 127, argv[7]);        g.v.section = 0;# 309 "zipscript-c.c" d_log("zipscript-c: Checking the file size of %s\n", g.v.file.name); if (stat(g.v.file.name, &fileinfo)) {  d_log("zipscript-c: Failed to stat file: %s\n", strerror((*__errno_location ())));  g.v.file.size = 0;  g.v.total.stop_time = 0; } else {  g.v.file.size = fileinfo.st_size;  d_log("zipscript-c: File size was: %d\n", g.v.file.size);  g.v.total.stop_time = fileinfo.st_mtim.tv_sec; } d_log("zipscript-c: Setting race times\n"); if (g.v.file.size != 0)  g.v.total.start_time = g.v.total.stop_time - ((unsigned int)(g.v.file.size) / g.v.file.speed); else  g.v.total.start_time = g.v.total.stop_time > (g.v.total.stop_time - 1) ? g.v.total.stop_time : (g.v.total.stop_time -1); if ((int)(g.v.total.stop_time - g.v.total.start_time) < 1)  g.v.total.stop_time = g.v.total.start_time + 1; n = (g.l.length_path = (int)strlen(g.l.path)) + 1; d_log("zipscript-c: Allocating memory for variables\n"); g.l.race = ng_realloc2(g.l.race, n += 12 + (g.l.length_zipdatadir = sizeof("/opt/wzdftpd/ftp-data/pzs-ng/") - 1), 1, 1, 1); g.l.sfv = ng_realloc2(g.l.sfv, n, 1, 1, 1); g.l.sfvbackup = ng_realloc2(g.l.sfvbackup, n, 1, 1, 1); g.l.leader = ng_realloc2(g.l.leader, n, 1, 1, 1); g.l.sfv_incomplete = 0; target = ng_realloc2(target, n + 256, 1, 1, 1); vinfo = ng_realloc2(vinfo, sizeof(struct VIDEO *), 1, 1, 1); g.ui = ng_realloc2(g.ui, sizeof(struct USERINFO *) * 100, 1, 1, 1); g.gi = ng_realloc2(g.gi, sizeof(struct GROUPINFO *) * 100, 1, 1, 1); d_log("zipscript-c: Copying data g.l into memory\n"); sprintf(g.l.sfv, "/opt/wzdftpd/ftp-data/pzs-ng/" "/%s/sfvdata", g.l.path); sprintf(g.l.sfvbackup, "/opt/wzdftpd/ftp-data/pzs-ng/" "/%s/sfvbackup", g.l.path); sprintf(g.l.leader, "/opt/wzdftpd/ftp-data/pzs-ng/" "/%s/leader", g.l.path); sprintf(g.l.race, "/opt/wzdftpd/ftp-data/pzs-ng/" "/%s/racedata", g.l.path); g.v.file.compression_method = '5'; g.v.user.pos = 0; sprintf(g.v.misc.old_leader, "none"); g.v.id3_artist[0] = '\0'; g.v.id3_genre[0] = '\0'; g.v.file.unlink[0] = '\0'; g.v.audio.id3_artist[0] = '\0'; g.v.audio.id3_genre = ((void *)0); d_log("zipscript-c: Parsing file extension from filename... (%s)\n", argv[1]); for (temp_p = name_p = argv[1]; *name_p != 0; name_p++) {  if (*name_p == '.') {   temp_p = name_p;  } } if (*temp_p != '.') {  d_log("zipscript-c: Got: no extension\n");  temp_p = name_p; } else {  d_log("zipscript-c: Got: %s\n", temp_p);  temp_p++; } name_p++; d_log("zipscript-c: Copying (lowercased version of) extension to memory\n"); fileext = ng_realloc(fileext, name_p - temp_p, 1, 1, &g.v, 1); memcpy(fileext, temp_p, name_p - temp_p); strtolower(fileext); d_log("zipscript-c: Reading directory structure\n"); dir = opendir("."); parent = opendir(".."); d_log("zipscript-c: Caching release name\n"); getrelname(&g); d_log("zipscript-c: Creating directory to store racedata in\n"); maketempdir(g.l.path); d_log("zipscript-c: Locking release\n"); while(1) {  if ((m = create_lock(&g.v, g.l.path, 2, 3, 0))) {   d_log("zipscript-c: Failed to lock release.\n");   if (m == 1) {    d_log("zipscript-c: version mismatch. Exiting.\n");    printf("Error. You need to rm -fR ftp-data/pzs-ng/* before zipscript-c will work.\n");    exit(1);   }   if (m == 32) {    d_log("zipscript-c: Detected rescan running - will try to make it quit.\n");    update_lock(&g.v, 0, 0);   }   if (m == 4) {    n = (signed int)g.v.data_incrementor;    d_log("zipscript-c: Detected postdel running - sleeping for one second.\n");    if (!create_lock(&g.v, g.l.path, 2, 0, g.v.data_queue))     break;    usleep(1000000);    if (!create_lock(&g.v, g.l.path, 2, 0, g.v.data_queue))     break;    if ( n == (signed int)g.v.data_incrementor) {     d_log("zipscript-c: Failed to get lock. Forcing unlock.\n");     if (create_lock(&g.v, g.l.path, 2, 2, g.v.data_queue)) {      d_log("zipscript-c: Failed to force a lock.\n");      d_log("zipscript-c: Exiting with error.\n");      exit(1);     }     break;    }   } else {    for ( n = 0; n <= 20 * 10; n++) {     d_log("zipscript-c: sleeping for .1 second before trying to get a lock.\n");     usleep(100000);     if (!(m = create_lock(&g.v, g.l.path, 2, 0, g.v.data_queue)))      break;    }    if (n >= 20 * 10) {     if (m == 32) {      d_log("zipscript-c: Failed to get lock. Forcing unlock.\n");      if (create_lock(&g.v, g.l.path, 2, 2, g.v.data_queue))      d_log("zipscript-c: Failed to force a lock.\n");     } else      d_log("zipscript-c: Failed to get a lock.\n");     if (!g.v.data_in_use && !0) {      d_log("zipscript-c: Exiting with error.\n");      exit(1);     }    }   }   rewinddir(dir);   rewinddir(parent);  }  usleep(10000);  if (update_lock(&g.v, 1, 0) != -1)   break; } if (!memcmp(fileext, "mp3", 4)) {  d_log("zipscript-c: Trying to read audio header and tags\n");  get_mpeg_audio_info(findfileext(dir, ".mp3"), &g.v.audio);  strlcpy(g.v.id3_artist, g.v.audio.id3_artist, sizeof(g.v.id3_artist));  strlcpy(g.v.id3_genre, g.v.audio.id3_genre, sizeof(g.v.id3_genre));  d_log("zipscript-c: g.v.id3_artist='%s' - g.v.id3_genre='%s'\n", g.v.id3_artist, g.v.id3_genre); } if (strlen(".-== PZS-NG Zipscript-C ==-------------------------.\n"))  printf(".-== PZS-NG Zipscript-C ==-------------------------.\n"); if (1 && matchpath("/opt/wzdftpd/site/groups/", g.l.path)) {  d_log("zipscript-c: Hiding user in group-dir:\n");  if ((int)strlen("")) {   snprintf(g.v.user.group, 18, "%s", "");   d_log("zipscript-c:    Changing groupname\n");  }  if ((int)strlen("")) {   snprintf(g.v.user.name, 18, "%s", "");   d_log("zipscript-c:    Changing username\n");  }  if (!(int)strlen("")) {   d_log("zipscript-c:    Making username = groupname\n");   snprintf(g.v.user.name, 18, "%s", g.v.user.group);  } } else {  if (0) {   affillist = ng_realloc2(affillist, 5000, 1, 1, 1);   create_dirlist("/opt/wzdftpd/site/groups/", affillist, 5000);   if (strlen(affillist) && strcomp(affillist, g.v.user.group)) {    affil_upload = 1;    d_log("zipscript-c: Hiding affil group based on group_dirs:\n");    if ((int)strlen("NoGroup")) {     d_log("zipscript-c:    Changing groupname.\n");     snprintf(g.v.user.group, 18, "%s", "NoGroup");    } else     d_log("zipscript-c:    No hidegroup given.\n");    if ((int)strlen("NoUser")) {     d_log("zipscript-c:    Changing username.\n");     snprintf(g.v.user.name, 18, "%s", "NoUser");    } else if (!strlen("")) {     d_log("zipscript-c:    Making username = groupname.\n");     snprintf(g.v.user.name, 18, "%s", g.v.user.group);    } else     d_log("zipscript-c:    No hidename given.\n");   }   ng_free(affillist);  }  if (strlen("") && strcomp("", g.v.user.group)) {   affil_upload = 1;   d_log("zipscript-c: Hiding affil group:\n");   if ((int)strlen("NoGroup")) {    d_log("zipscript-c:    Changing groupname.\n");    snprintf(g.v.user.group, 18, "%s", "NoGroup");   } else    d_log("zipscript-c:    No hidegroup given.\n");   if ((int)strlen("NoUser")) {    d_log("zipscript-c:    Changing username.\n");    snprintf(g.v.user.name, 18, "%s", "NoUser");   } else if (!strlen("")) {    d_log("zipscript-c:    Making username = groupname.\n");    snprintf(g.v.user.name, 18, "%s", g.v.user.group);   } else    d_log("zipscript-c:    No hidename given.\n");  }  if (strlen("") && strcomp("", g.v.user.name)) {   affil_upload = 1;   d_log("zipscript-c: Hiding affil user:\n");   if ((int)strlen("NoUser")) {    d_log("zipscript-c:    Changing username.\n");    snprintf(g.v.user.name, 18, "%s", "NoUser");   } else if (!strlen("")) {    d_log("zipscript-c:    Making username = groupname.\n");    snprintf(g.v.user.name, 18, "%s", g.v.user.group);   } else    d_log("zipscript-c:    No hidename given.\n");  } } if (matchpath("/site/speedtest/", g.l.path)) {  d_log("zipscript-c: Dir matched speedtest_dirs\n");  sprintf(g.v.misc.error_msg, "BW: %.1fMiB (%.1fMB) @ %.2fMbps (%.2fMB/s).", ((double)g.v.file.size/1000./1000.), ((double)g.v.file.size/1024./1024.), ((double)g.v.file.speed*8/1000./1000.), ((double)g.v.file.speed/1024./1024.));  write_log = g.v.misc.write_log;  g.v.misc.write_log = 1;  mark_as_bad(g.v.file.name);  g.v.total.size = g.v.file.size;  error_msg = convert(&g.v, g.ui, g.gi, "{%U} {%G} {%.2s} {%.2#} {%.1m} {%.1N}");  if (exit_value < 2)   writelog(&g, error_msg, "ULTEST");  if (!0) {   sprintf(target, "%.1fMiB", ((float)g.v.file.size/1000./1000.));   if (rename(g.v.file.name, target) == -1)    d_log("zipscript-c: Unable to rename speedtest file: %s (not considered an error in this case)\n", strerror((*__errno_location ())));   }  exit_value = 2; } else if (filebanned_match(g.v.file.name)) {  d_log("zipscript-c: Banned file detected (%s)\n", g.v.file.name);  sprintf(g.v.misc.error_msg, "Banned file: Not allowed!");  write_log = g.v.misc.write_log;  g.v.misc.write_log = 1;  mark_as_bad(g.v.file.name);  error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");  if (exit_value < 2)   writelog(&g, error_msg, "BAD_FILE_0SIZE");  exit_value = 2; } else if (g.v.file.size == 0) {  d_log("zipscript-c: File seems to be 0\n");  sprintf(g.v.misc.error_msg, "0byte-file: Not allowed!");  write_log = g.v.misc.write_log;  g.v.misc.write_log = 1;  mark_as_bad(g.v.file.name);  error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");  if (exit_value < 2)   writelog(&g, error_msg, "BAD_FILE_0SIZE");  exit_value = 2; } else if (matchpath("/opt/wzdftpd/site/private/", g.l.path) || (!matchpath("/opt/wzdftpd/site/private/", g.l.path) && !matchpath("/opt/wzdftpd/site/test/", g.l.path) && !matchpath("/opt/wzdftpd/site/test/", g.l.path) && !matchpath("/opt/wzdftpd/site/groups/", g.l.path)) || insampledir(g.l.path)) {  d_log("zipscript-c: Directory matched with nocheck_dirs/sample_list, or is not among sfv/zip/group/speedtest dirs\n");  d_log("zipscript-c:   - nocheck_dirs  : '%s'\n", "/opt/wzdftpd/site/private/");  d_log("zipscript-c:   - zip_dirs      : '%s'\n", "/opt/wzdftpd/site/test/");  d_log("zipscript-c:   - sfv_dirs      : '%s'\n", "/opt/wzdftpd/site/test/");  d_log("zipscript-c:   - group_dirs    : '%s'\n", "/opt/wzdftpd/site/groups/");  d_log("zipscript-c:   - speedtest_dirs: '%s'\n", "/site/speedtest/");  d_log("zipscript-c:   - sample_list   : '%s'\n", "sample vobsample");  d_log("zipscript-c:   - current path  : '%s'\n", g.l.path);  no_check = 1; } if (exit_value == 2)  d_log("File already marked as bad. Will not process further.\n"); else if (!matchpath("/opt/wzdftpd/site/private/", g.l.path)) {  d_log("zipscript-c: Verifying old racedata..\n");  d_log("zipscript-c:   If this is the first file in the sfv, this will fail (which is normal).\n");  d_log("zipscript-c:   Also please note that multiple slashes in the dir is NORMAL - NOT AN ERROR!\n");  if (!verify_racedata(g.l.race, &g.v))   d_log("zipscript-c:   Failed to open racedata - assuming this is a new race.\n");  switch (get_filetype(&g, fileext)) {  case 0:   d_log("zipscript-c: File type is: ZIP\n");   d_log("zipscript-c: Testing file integrity with %s\n", "/bin/unzip");   if (!fileexists("/bin/unzip")) {    d_log("zipscript-c: ERROR! Not able to check zip-files - %s does not exist!\n", "/bin/unzip");    sprintf(g.v.misc.error_msg, "ZiP-Integrity: BAD!");    mark_as_bad(g.v.file.name);    write_log = g.v.misc.write_log;    g.v.misc.write_log = 1;    error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");    if (exit_value < 2)     writelog(&g, error_msg, "BAD_FILE_ZIP");    exit_value = 2;    break;   } else {    if ((!findfileextcount(dir, ".nfo") ||      findfileextcount(dir, ".zip")) && !mkdir(".unzipped", 0777))     sprintf(target, "%s -qqjo \"%s\" -d .unzipped", "/bin/unzip", g.v.file.name);    else     sprintf(target, "%s -qqt \"%s\"", "/bin/unzip", g.v.file.name);    if (execute(target) != 0 || (0 == 1 && (*__errno_location ()) > 2 )) {     d_log("zipscript-c: Integrity check failed (#%d): %s\n", (*__errno_location ()), strerror((*__errno_location ())));     sprintf(g.v.misc.error_msg, "ZiP-Integrity: BAD!");     mark_as_bad(g.v.file.name);     write_log = g.v.misc.write_log;     g.v.misc.write_log = 1;     error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");     if (exit_value < 2)      writelog(&g, error_msg, "BAD_FILE_ZIP");     exit_value = 2;     removedir(".unzipped");     break;    }    if ((!findfileextcount(dir, ".nfo") || findfileextcount(dir, ".zip")) && check_zipfile(".unzipped", g.v.file.name, findfileextcount(dir, ".nfo"))) {     d_log("zipscript-c: File %s is password protected.\n", g.v.file.name);     sprintf(g.v.misc.error_msg, "ZiP-Integrity: BAD!");     mark_as_bad(g.v.file.name);     write_log = g.v.misc.write_log;     g.v.misc.write_log = 1;     error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");     if (exit_value < 2)      writelog(&g, error_msg, "BAD_FILE_ZIP");     exit_value = 2;     break;    }   }   d_log("zipscript-c: Integrity ok\n");   printf("| + ZiP integrity: oK!                             |\n");   if ((matchpath("/opt/wzdftpd/site/test/", g.l.path)) || (matchpath("/opt/wzdftpd/site/groups/", g.l.path)) ) {    g.v.misc.write_log = 1;    d_log("zipscript-c: Directory matched with zip_dirs/group_dirs\n");   } else {    d_log("zipscript-c: WARNING! Directory did not match with zip_dirs/group_dirs\n");    if (0 == 1) {     d_log("zipscript-c: Strict mode on - exiting\n");     sprintf(g.v.misc.error_msg, "%s-file: Not allowed!", fileext);     mark_as_bad(g.v.file.name);     write_log = g.v.misc.write_log;     g.v.misc.write_log = 1;     error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");     if (exit_value < 2)      writelog(&g, error_msg, "BAD_FILE_WRONGDIR");     exit_value = 2;     break;    }   }   if (!fileexists("file_id.diz")) {    d_log("zipscript-c: file_id.diz does not exist, trying to extract it from %s\n", g.v.file.name);    sprintf(target, "%s -qqjnCLL \"%s\" file_id.diz 2>.delme", "/bin/unzip", g.v.file.name);    if (execute(target) != 0)     d_log("zipscript-c: No file_id.diz found (#%d): %s\n", (*__errno_location ()), strerror((*__errno_location ())));    else {     if ((loc = findfile(dir, "file_id.diz.bad"))) {      seekdir(dir, loc);      dp = readdir(dir);      unlink(dp->d_name);     }     chmod("file_id.diz", 0666);    }   }   d_log("zipscript-c: Reading diskcount from diz:\n");   g.v.total.files = read_diz();   d_log("zipscript-c:    Expecting %d files.\n", g.v.total.files);   if (g.v.total.files == 0) {    d_log("zipscript-c:    Could not get diskcount from diz.\n");    g.v.total.files = 1;    unlink("file_id.diz");   }   g.v.total.files_missing = g.v.total.files;   d_log("zipscript-c: Storing new race data (F_CHECKED)\n");   writerace(g.l.race, &g.v, 0, 1);   d_log("zipscript-c: Reading race data from file to memory\n");   readrace(g.l.race, &g.v, g.ui, g.gi);   if (g.v.total.files_missing < 0) {    d_log("zipscript-c: There seems to be more files in zip than we expected\n");    g.v.total.files -= g.v.total.files_missing;    g.v.total.files_missing = g.v.misc.write_log = 0;   }   d_log("zipscript-c: Setting message pointers\n");   race_msg = "{%U} {%G} {%R} {%r} {%.0S} {%n} {%d} {%.1p} {%u} {%g} {%F} {%f} {%M} \"%K\" {%B} {%$}";   update_msg = "{%U} {%G} {%f} {%.0S} {%.1e} {%n} {%r} \"%K\" {%$}";   halfway_msg = g.v.total.users > 1 ? "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} {%B} {%$}" : "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} \"%K\" {%$}";;   newleader_msg = "{%U} {%G} {%.0S} {%d} {%F} {%.1p} {%.0m} {%r} {%n} {%u} {%g} {%f} {%M} %C0 %c0 \"%K\" {%R} {%$}";   if (g.l.sfv_incomplete) {    d_log("zipscript-c: Removing missing-sfv indicator (if any)\n");    unlink(g.l.sfv_incomplete);   }   break;  case 1:   d_log("zipscript-c: File type is: SFV\n");   if ((matchpath("/opt/wzdftpd/site/test/", g.l.path)) || (matchpath("/opt/wzdftpd/site/groups/", g.l.path)) ) {    d_log("zipscript-c: Directory matched with sfv_dirs/group_dirs\n");   } else {    d_log("zipscript-c: WARNING! Directory did not match with sfv_dirs/group_dirs\n");    if (0 == 1) {     d_log("zipscript-c: Strict mode on - exiting\n");     sprintf(g.v.misc.error_msg, "%s-file: Not allowed!", fileext);     mark_as_bad(g.v.file.name);     write_log = g.v.misc.write_log;     g.v.misc.write_log = 1;     error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");     if (exit_value < 2)      writelog(&g, error_msg, "BAD_FILE_WRONGDIR");     exit_value = 2;     break;    }   }   if (fileexists(g.l.sfv)) {    if (0 == 1 && findfileextcount(dir, ".sfv") > 1 && sfv_compare_size(".sfv", g.v.file.size) > 0) {     write_log = g.v.misc.write_log;     g.v.misc.write_log = 1;     d_log("zipscript-c: DEBUG: sfv_compare_size=%d\n", sfv_compare_size(".sfv", g.v.file.size));     d_log("zipscript-c: No double sfv allowed\n");     error_msg = convert(&g.v, g.ui, g.gi, "{%U} {%G} {%r} {%n}");     writelog(&g, error_msg, "DOUBLESFV");     sprintf(g.v.misc.error_msg, "SFV-file: DUPE!");     mark_as_bad(g.v.file.name);     exit_value = 2;     g.v.misc.write_log = write_log;     break;    } else if (1 == 1 && findfileextcount(dir, ".sfv") == 1) {     write_log = g.v.misc.write_log;     g.v.misc.write_log = 1;     d_log("zipscript-c: Resume of sfv not allowed\n");     error_msg = convert(&g.v, g.ui, g.gi, "{%U} {%G} {%r} {%n}");     writelog(&g, error_msg, "RESUMESFV");     if (copyfile(g.l.sfvbackup, g.v.file.name))      d_log("zipscript-c: failed to copy backed up sfv (%s)\n", g.v.file.name);     else      d_log("zipscript-c: copied backup of sfv to releasedir (%s)\n", g.v.file.name);     g.v.misc.write_log = write_log;     break;    } else if (findfileextcount(dir, ".sfv") > 1 && sfv_compare_size(".sfv", g.v.file.size) > 0) {     d_log("zipscript-c: DEBUG: sfv_compare_size=%d\n", sfv_compare_size(".sfv", g.v.file.size));     d_log("zipscript-c: Reading remainders of old sfv\n");     readsfv(g.l.sfv, &g.v, 1);     cnt = g.v.total.files - g.v.total.files_missing;     cnt2 = g.v.total.files;     g.v.total.files_missing = g.v.total.files = 0;     readsfv_ffile(&g.v);     if ((g.v.total.files <= cnt2) || (g.v.total.files != (cnt + g.v.total.files_missing))) {      write_log = g.v.misc.write_log;      g.v.misc.write_log = 1;      d_log("zipscript-c: Old sfv seems to match with more files than current one\n");      strlcpy(g.v.misc.error_msg, "SFV does not match with files!", 80);      error_msg = convert(&g.v, g.ui, g.gi, "{%U} {%G} {%r} {%n}");      writelog(&g, error_msg, "DOUBLESFV");      sprintf(g.v.misc.error_msg, "SFV-file: DUPE!");      mark_as_bad(g.v.file.name);      exit_value = 2;      g.v.misc.write_log = write_log;      break;     }     g.v.total.files = g.v.total.files_missing = 0;    } else {     if (!fileexists(g.l.sfv)) {      d_log("zipscript-c: DEBUG: sfv_compare_size=%d\n", sfv_compare_size(".sfv", g.v.file.size));      d_log("zipscript-c: Hmm.. Seems the old .sfv was deleted. Allowing new one.\n");      unlink(g.l.race);     } else      d_log("zipscript-c: Allowing the (late) sfv\n");     unlink(g.l.sfv);     rewinddir(dir);     while ((dp = readdir(dir))) {      cnt = cnt2 = (int)strlen(dp->d_name);      ext = dp->d_name;      while (ext[cnt] != '-' && cnt > 0)       cnt--;      if (ext[cnt] != '-')       cnt = cnt2;      else       cnt++;      ext += cnt;      if (!(__extension__ (__builtin_constant_p (7) && ((__builtin_constant_p (ext) && strlen (ext) < ((size_t) (7))) || (__builtin_constant_p ("missing") && strlen ("missing") < ((size_t) (7)))) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (ext) && __builtin_constant_p ("missing") && (__s1_len = strlen (ext), __s2_len = strlen ("missing"), (!((size_t)(const void *)((ext) + 1) - (size_t)(const void *)(ext) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("missing") + 1) - (size_t)(const void *)("missing") == 1) || __s2_len >= 4)) ? __builtin_strcmp (ext, "missing") : (__builtin_constant_p (ext) && ((size_t)(const void *)((ext) + 1) - (size_t)(const void *)(ext) == 1) && (__s1_len = strlen (ext), __s1_len < 4) ? (__builtin_constant_p ("missing") && ((size_t)(const void *)(("missing") + 1) - (size_t)(const void *)("missing") == 1) ? __builtin_strcmp (ext, "missing") : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) ("missing"); register int __result = (((const unsigned char *) (const char *) (ext))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((const unsigned char *) (const char *) (ext))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((const unsigned char *) (const char *) (ext))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((const unsigned char *) (const char *) (ext))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("missing") && ((size_t)(const void *)(("missing") + 1) - (size_t)(const void *)("missing") == 1) && (__s2_len = strlen ("missing"), __s2_len < 4) ? (__builtin_constant_p (ext) && ((size_t)(const void *)((ext) + 1) - (size_t)(const void *)(ext) == 1) ? __builtin_strcmp (ext, "missing") : (__extension__ ({ const unsigned char *__s1 = (const unsigned char *) (const char *) (ext); register int __result = __s1[0] - ((const unsigned char *) (const char *) ("missing"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((const unsigned char *) (const char *) ("missing"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((const unsigned char *) (const char *) ("missing"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((const unsigned char *) (const char *) ("missing"))[3]); } } __result; }))) : __builtin_strcmp (ext, "missing")))); }) : strncmp (ext, "missing", 7))))       unlink(dp->d_name);     }    }   }   d_log("zipscript-c: Parsing sfv and creating sfv data\n");   if (copysfv(g.v.file.name, g.l.sfv, &g.v)) {    d_log("zipscript-c: Found invalid entries in SFV.\n");    write_log = g.v.misc.write_log;    g.v.misc.write_log = 1;    error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");    if (exit_value < 2)     writelog(&g, error_msg, "BAD_FILE_SFV");    mark_as_bad(g.v.file.name);    exit_value = 2;    sprintf(g.v.misc.error_msg, "SFV-file: BAD!");    unlink(g.l.race);    unlink(g.l.sfv);    rewinddir(dir);    while ((dp = readdir(dir))) {     cnt = cnt2 = (int)strlen(dp->d_name);     ext = dp->d_name;     while (ext[cnt] != '-' && cnt > 0)      cnt--;     if (ext[cnt] != '-')      cnt = cnt2;     else      cnt++;     ext += cnt;     if (!(__extension__ (__builtin_constant_p (7) && ((__builtin_constant_p (ext) && strlen (ext) < ((size_t) (7))) || (__builtin_constant_p ("missing") && strlen ("missing") < ((size_t) (7)))) ? __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (ext) && __builtin_constant_p ("missing") && (__s1_len = strlen (ext), __s2_len = strlen ("missing"), (!((size_t)(const void *)((ext) + 1) - (size_t)(const void *)(ext) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(("missing") + 1) - (size_t)(const void *)("missing") == 1) || __s2_len >= 4)) ? __builtin_strcmp (ext, "missing") : (__builtin_constant_p (ext) && ((size_t)(const void *)((ext) + 1) - (size_t)(const void *)(ext) == 1) && (__s1_len = strlen (ext), __s1_len < 4) ? (__builtin_constant_p ("missing") && ((size_t)(const void *)(("missing") + 1) - (size_t)(const void *)("missing") == 1) ? __builtin_strcmp (ext, "missing") : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) ("missing"); register int __result = (((const unsigned char *) (const char *) (ext))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((const unsigned char *) (const char *) (ext))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((const unsigned char *) (const char *) (ext))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((const unsigned char *) (const char *) (ext))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ("missing") && ((size_t)(const void *)(("missing") + 1) - (size_t)(const void *)("missing") == 1) && (__s2_len = strlen ("missing"), __s2_len < 4) ? (__builtin_constant_p (ext) && ((size_t)(const void *)((ext) + 1) - (size_t)(const void *)(ext) == 1) ? __builtin_strcmp (ext, "missing") : (__extension__ ({ const unsigned char *__s1 = (const unsigned char *) (const char *) (ext); register int __result = __s1[0] - ((const unsigned char *) (const char *) ("missing"))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((const unsigned char *) (const char *) ("missing"))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((const unsigned char *) (const char *) ("missing"))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((const unsigned char *) (const char *) ("missing"))[3]); } } __result; }))) : __builtin_strcmp (ext, "missing")))); }) : strncmp (ext, "missing", 7))))      unlink(dp->d_name);    }    break;   }   if (g.l.sfv_incomplete) {    d_log("zipscript-c: Removing missing-sfv indicator (if any)\n");    unlink(g.l.sfv_incomplete);   }   if ( (0 == 0) || matchpath("", g.l.path))   {    if (fileexists(g.l.race) && fileexists(g.l.sfv)) {     d_log("zipscript-c: Testing files marked as untested\n");     testfiles(&g.l, &g.v, 0);    }   }   d_log("zipscript-c: Reading file count from SFV\n");   readsfv(g.l.sfv, &g.v, 0);   if (g.v.total.files == 0) {    d_log("zipscript-c: SFV seems to have no files of accepted types, or has errors.\n");    unlink(g.l.sfv);    sprintf(g.v.misc.error_msg, "SFV-file: BAD!");    mark_as_bad(g.v.file.name);    write_log = g.v.misc.write_log;    g.v.misc.write_log = 1;    error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");    if (exit_value < 2)     writelog(&g, error_msg, "BAD_FILE_SFV");    exit_value = 2;    break;   }   printf("| + SFV-file: oK!                                  |\n");   if (fileexists(g.l.race)) {    d_log("zipscript-c: Reading race data from file to memory\n");    readrace(g.l.race, &g.v, g.ui, g.gi);   }   if ("^\\[.*] - \\( .*F - COMPLETE.*) - \\[.*]$") {    d_log("zipscript-c: Making sure that release is not marked as complete\n");    removecomplete();   }   d_log("zipscript-c: Setting message pointers\n");   sfv_type = "SFV";   switch (g.v.misc.release_type) {   case RTYPE_RAR:    sfv_msg = "{%r} {%f} {%U} {%G} {%n} \"%K\"";    sfv_type = "SFV_RAR";    break;   case RTYPE_OTHER:    sfv_msg = "{%r} {%f} {%U} {%G} {%n} \"%K\"";    sfv_type = "SFV_OTHER";    break;   case RTYPE_AUDIO:    sfv_msg = "{%r} {%f} {%U} {%G} {%n} \"%K\"";    sfv_type = "SFV_AUDIO";    break;   case RTYPE_VIDEO:    sfv_msg = "{%r} {%f} {%U} {%G} {%n} \"%K\"";    sfv_type = "SFV_VIDEO";    break;   default :    sfv_msg = "{%r} {%f} {%U} {%G} {%n} \"%K\"";    sfv_type = "SFV_RAR";    d_log("zipscript-c: WARNING! Not a known release type - Contact the authors! (1:%d)\n", g.v.misc.release_type);    break;   }   if (!sfv_msg)    d_log("zipscript-c: Something's messed up - sfv_msg not set!\n");   halfway_msg = newleader_msg = race_msg = update_msg = ((void *)0);   g.v.misc.write_log = matchpath("/opt/wzdftpd/site/test/", g.l.path);   if (g.v.total.files_missing > 0) {    if (sfv_msg != ((void *)0)) {     if (g.v.misc.data_completed) {      d_log("zipscript-c: This release has previously been announced complete - skipping announce\n");      error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");      writelog(&g, error_msg, "BAD_FILE_DUPERELEASE");     } else {      d_log("zipscript-c: Writing SFV message to %s\n", "/opt/wzdftpd/ftp-data/logs/glftpd.log");      writelog(&g, convert(&g.v, g.ui, g.gi, sfv_msg), sfv_type);     }    }   } else {    if (g.v.misc.release_type == RTYPE_AUDIO) {     d_log("zipscript-c: Reading audio info for completebar\n");     get_mpeg_audio_info(findfileext(dir, ".mp3"), &g.v.audio);     strlcpy(g.v.id3_artist, g.v.audio.id3_artist, sizeof(g.v.id3_artist));     strlcpy(g.v.id3_genre, g.v.audio.id3_genre, sizeof(g.v.id3_genre));    }   }   if (1 == 1) {    if (copyfile(g.v.file.name, g.l.sfvbackup))     d_log("zipscript-c: failed to make backup of sfv (%s)\n", g.v.file.name);    else     d_log("zipscript-c: created backup of sfv (%s)\n", g.v.file.name);   }   break;  case 2:   no_check = 1;   d_log("zipscript-c: File type is: NFO\n");# 995 "zipscript-c.c"   break;  case 3:   d_log("zipscript-c: File type is: ANY\n");   d_log("zipscript-c: Converting crc (%s) from string to integer\n", crc_arg);   crc = hexstrtodec(crc_arg);   if (crc == 0) {    d_log("zipscript-c: We did not get crc from ftp daemon, calculating crc for %s now.\n", g.v.file.name);    crc = calc_crc32(g.v.file.name);   }   if (fileexists(g.l.sfv)) {    s_crc = readsfv(g.l.sfv, &g.v, 0);# 1017 "zipscript-c.c"    d_log("zipscript-c: crc recieved/calc'ed: %X - crc found in sfv: %X\n", crc, s_crc);    if (s_crc != crc) {     if (s_crc == 0) {      if (!strcomp("jpg,cue,m3u,mpg,mpeg,avi,txt,mov,vob,mkv,wmv", fileext)) {       d_log("zipscript-c: Filename was not found in the SFV\n");       strlcpy(g.v.misc.error_msg, "CRC-Check: Not in sfv!", 80);      } else {       d_log("zipscript-c: filetype is part of allowed_types.\n");       no_check = 1;       break;      }     } else {      d_log("zipscript-c: CRC-32 check failed\n");      if (!hexstrtodec(crc_arg) && 0) {       d_log("zipscript-c: Broken xfer detected - allowing file.\n");       no_check = 1;       write_log = g.v.misc.write_log;       g.v.misc.write_log = 1;       error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");       writelog(&g, error_msg, "BAD_FILE_CRC");       if (1 == 1) {        if (!fileexists("/bin/ng-undupe")) {         d_log("zipscript-c: Warning - undupe script (%s) does not exist.\n", "/bin/ng-undupe");        }        sprintf(target, "/bin/ng-undupe" " \"%s\"", g.v.file.name);        if (execute(target) == 0)         d_log("zipscript-c: undupe of %s successful.\n", g.v.file.name);        else         d_log("zipscript-c: undupe of %s failed.\n", g.v.file.name);       }       break;      }      strlcpy(g.v.misc.error_msg, "CRC-Check: BAD!", 80);     }     mark_as_bad(g.v.file.name);     write_log = g.v.misc.write_log;     g.v.misc.write_log = 1;     error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");     if (exit_value < 2)      writelog(&g, error_msg, "BAD_FILE_CRC");     exit_value = 2;     break;    }    if (check_dupefile(dir, g.v.file.name)) {     d_log("zipscript-c: dupe detected - same file, different case already exists.\n");     strlcpy(g.v.misc.error_msg, "SFV-file: DUPE!", 80);     mark_as_bad(g.v.file.name);     write_log = g.v.misc.write_log;     g.v.misc.write_log = 1;     error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");     if (exit_value < 2)      writelog(&g, error_msg, "BAD_FILE_CRC");     exit_value = 2;     break;    }    printf("| + CRC-Check: oK!                                 |\n");    d_log("zipscript-c: Storing new race data (F_CHECKED)\n");    writerace(g.l.race, &g.v, crc, 1);   } else {# 1121 "zipscript-c.c"    d_log("zipscript-c: Could not check file yet - SFV is not present\n");    printf("| + CRC-Check: SKIPPED!                            |\n");    d_log("zipscript-c: Storing new race data (F_NOTCHECKED)\n");    writerace(g.l.race, &g.v, crc, 2);    if ((!matchpath("/opt/wzdftpd/site/groups/", g.l.path) || 1) && g.l.sfv_incomplete && !findfileext(dir, ".zip") && !matchpath("/opt/wzdftpd/site/private/", g.l.path) && !matchpath("", g.l.path) &&!insampledir(g.l.path) ) {     d_log("zipscript-c: Creating missing-sfv indicator %s.\n", g.l.sfv_incomplete);     symlink(g.v.misc.release_name, g.l.sfv_incomplete);    }   }   g.v.misc.write_log = matchpath("/opt/wzdftpd/site/test/", g.l.path);   d_log("zipscript-c: Reading race data from file to memory\n");   readrace(g.l.race, &g.v, g.ui, g.gi);   d_log("zipscript-c: Setting pointers\n");   if (g.v.misc.release_type == RTYPE_NULL) {    if (israr(fileext))     g.v.misc.release_type = RTYPE_RAR;    else if (strcomp("mpg,mpeg,m2v,m2p,avi", fileext))     g.v.misc.release_type = RTYPE_VIDEO;    else if (!memcmp(fileext, "mp3", 4))     g.v.misc.release_type = RTYPE_AUDIO;    else     g.v.misc.release_type = RTYPE_OTHER;   }   switch (g.v.misc.release_type) {   case RTYPE_RAR:    get_rar_info(&g.v);    race_msg = "{%U} {%G} {%R} {%r} {%.0S} {%n} {%d} {%.1p} {%u} {%g} {%F} {%f} {%M} \"%K\" {%B} {%J} {%$}";    update_msg = "{%U} {%G} {%f} {%.0S} {%.1e} {%n} {%r} \"%K\" {%J} {%$}";    halfway_msg = g.v.total.users > 1 ? "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} {%B} {%J} {%$}" : "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} \"%K\" {%J} {%$}";;    newleader_msg = "{%U} {%G} {%.0S} {%d} {%F} {%.1p} {%.0m} {%r} {%n} {%u} {%g} {%f} {%M} %C0 %c0 \"%K\" {%R} {%J} {%$}";    break;   case RTYPE_OTHER:    race_msg = "{%U} {%G} {%R} {%r} {%.0S} {%n} {%d} {%.1p} {%u} {%g} {%F} {%f} {%M} \"%K\" {%B} {%$}";    update_msg = "{%U} {%G} {%f} {%.0S} {%.1e} {%n} {%r} \"%K\" {%$}";    halfway_msg = g.v.total.users > 1 ? "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} {%B} {%$}" : "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} \"%K\" {%$}";;    newleader_msg = "{%U} {%G} {%.0S} {%d} {%F} {%.1p} {%.0m} {%r} {%n} {%u} {%g} {%f} {%M} %C0 %c0 \"%K\" {%R} {%$}";    break;   case RTYPE_AUDIO:    race_msg = "{%U} {%G} {%R} {%r} {%.0S} {%n} {%d} {%.1p} {%u} {%g} {%F} {%f} {%M} \"%K\" {%B} {%$}";    update_msg = "{%U} {%G} {%f} {%.0S} {%.1e} {%n} {%r} \"%K\" %j {%$}";    halfway_msg = g.v.total.users > 1 ? "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} {%B} {%$}" : "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} \"%K\" {%$}";;    newleader_msg = "{%U} {%G} {%.0S} {%d} {%F} {%.1p} {%.0m} {%r} {%n} {%u} {%g} {%f} {%M} %C0 %c0 \"%K\" {%R} {%$}";    d_log("zipscript-c: Trying to read audio header and tags\n");    get_mpeg_audio_info(g.v.file.name, &g.v.audio);    strlcpy(g.v.id3_artist, g.v.audio.id3_artist, sizeof(g.v.id3_artist));    strlcpy(g.v.id3_genre, g.v.audio.id3_genre, sizeof(g.v.id3_genre));    if (g.v.misc.write_log == 1) {     if ((0 == 1) && (g.ui[g.v.user.pos]->files == 1)) {      if (!fileexists("/bin/ng-chown")) {       d_log("zipscript-c: Warning -  mp3_script (%s) - file does not exist!\n", "/bin/ng-chown");      }      d_log("zipscript-c: Executing mp3 script (%s %s)\n", "/bin/ng-chown", convert(&g.v, g.ui, g.gi, "0 0 0 1 0 1 - \"%w\" \"%?\""));      sprintf(target, "%s %s", "/bin/ng-chown", convert(&g.v, g.ui, g.gi, "0 0 0 1 0 1 - \"%w\" \"%?\""));      if (execute(target) != 0)       d_log("zipscript-c: Failed to execute mp3_script: %s\n", strerror((*__errno_location ())));     }     if (!matchpath("", g.l.path)) {      if (strcomp("Christian Rap,Christian Gangsta Rap,Contemporary Christian,Christian Rock", g.v.audio.id3_genre)) {       d_log("zipscript-c: File is from banned genre\n");       sprintf(g.v.misc.error_msg, "%s is banned here!", g.v.audio.id3_genre);       if (1 == 1) {        if (g.ui[g.v.user.pos]->files == 1) {         d_log("zipscript-c: warn on - logging to logfile\n");         write_log = g.v.misc.write_log;         g.v.misc.write_log = 1;         error_msg = convert(&g.v, g.ui, g.gi, "{%U} {%G} {%w}");         writelog(&g, error_msg, "BADGENRE");         g.v.misc.write_log = write_log;        } else         d_log("zipscript-c: warn on - have already logged to logfile\n");       } else {        mark_as_bad(g.v.file.name);        write_log = g.v.misc.write_log;        g.v.misc.write_log = 1;        error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");        if ((g.ui[g.v.user.pos]->files == 1) && (exit_value < 2))         writelog(&g, error_msg, "BAD_FILE_GENRE");        exit_value = 2;       }       break;      }# 1247 "zipscript-c.c"      if (!strcomp("2004,2005,2006,2007", g.v.audio.id3_year)) {       d_log("zipscript-c: File is from banned year\n");       sprintf(g.v.misc.error_msg, "Releases from %s are not allowed here!", g.v.audio.id3_year);       if (1 == 1) {        if (g.ui[g.v.user.pos]->files == 1) {         d_log("zipscript-c: warn on - logging to logfile\n");         write_log = g.v.misc.write_log;         g.v.misc.write_log = 1;         error_msg = convert(&g.v, g.ui, g.gi, "{%U} {%G} {%Y}");         writelog(&g, error_msg, "BADYEAR");         g.v.misc.write_log = write_log;        } else         d_log("zipscript-c: warn on - have already logged to logfile\n");       } else {        mark_as_bad(g.v.file.name);        write_log = g.v.misc.write_log;        g.v.misc.write_log = 1;        error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");        if ((g.ui[g.v.user.pos]->files == 1) && (exit_value < 2))         writelog(&g, error_msg, "BAD_FILE_YEAR");        exit_value = 2;       }       break;      }      if (g.v.audio.is_vbr == 0) {       if (!strcomp("160,192", g.v.audio.bitrate)) {        d_log("zipscript-c: File is encoded using banned bitrate (%d)\n", g.v.audio.bitrate);        sprintf(g.v.misc.error_msg, "%s kbit codec is not allowed here!", g.v.audio.bitrate);        if (1 == 1) {         if (g.ui[g.v.user.pos]->files == 1) {          d_log("zipscript-c: warn on - logging to logfile\n");          write_log = g.v.misc.write_log;          g.v.misc.write_log = 1;          error_msg = convert(&g.v, g.ui, g.gi, "{%U} {%G} {%X}");          writelog(&g, error_msg, "BADBITRATE");          g.v.misc.write_log = write_log;         } else          d_log("zipscript-c: warn on - have already logged to logfile\n");        } else {         mark_as_bad(g.v.file.name);         write_log = g.v.misc.write_log;         g.v.misc.write_log = 1;         error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");         if ((g.ui[g.v.user.pos]->files == 1) && (exit_value < 2))          writelog(&g, error_msg, "BAD_FILE_BITRATE");         exit_value = 2;        }        break;       }      }     } else      d_log("zipscript-c: user is in a no audio check dir - skipping checks.\n");    }    if ("+-=[ID3tag]=------------------------===------------+\n| Title  : %-39y |\n| Artist : %-39x |\n| Album  : %-39W |\n| Genre  : %-39w |\n| Year   : %-39Y |\n" != ((void *)0)) {     d_log("zipscript-c: Printing realtime_mp3_info.\n");     printf("%s", convert(&g.v, g.ui, g.gi, "+-=[ID3tag]=------------------------===------------+\n| Title  : %-39y |\n| Artist : %-39x |\n| Album  : %-39W |\n| Genre  : %-39w |\n| Year   : %-39Y |\n"));    }    break;   case RTYPE_VIDEO:    d_log("zipscript-c: Trying to read video header.\n");    if (insampledir(g.l.path)) {     if (!avinfo(g.v.file.name, &g.v.avinfo)) {      d_log("zipscript-c: Writing %s announce to %s.\n", "SAMPLEDIR", "/opt/wzdftpd/ftp-data/logs/glftpd.log");      write_log = g.v.misc.write_log;      g.v.misc.write_log = 1;      writelog(&g, convert(&g.v, g.ui, g.gi, "{%U} {%G} {%D} {%E} {%.3H} {%.2;} {%:} {%,} {%`} {%=} {%>} {%<}"), "SAMPLEDIR");      g.v.misc.write_log = write_log;     }     if (0 == 1) {      d_log("zipscript-c: Executing sample_script (%s).\n", "/bin/sample_script.sh");      if (!fileexists("/bin/sample_script.sh"))       d_log("zipscript-c: Warning - sample_script (%s) - file does not exist!\n", "/bin/sample_script.sh");      sprintf(target, "/bin/sample_script.sh" " \"%s\"", g.v.file.name);      if (execute(target) != 0)       d_log("zipscript-c: Failed to execute sample_script: %s\n", strerror((*__errno_location ())));     }    }    race_msg = "{%U} {%G} {%R} {%r} {%.0S} {%n} {%d} {%.1p} {%u} {%g} {%F} {%f} {%M} \"%K\" {%B} {%$} {%D} {%E} {%.3H} {%.2;} {%:} {%,} {%`} {%=} {%>} {%<}";    update_msg = "{%U} {%G} {%f} {%.0S} {%.1e} {%n} {%r} \"%K\" {%$} {%D} {%E} {%.3H} {%.2;} {%:} {%,} {%`} {%=} {%>} {%<}";    halfway_msg = g.v.total.users > 1 ? "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} {%B} {%$} {%D} {%E} {%.3H} {%.2;} {%:} {%,} {%`} {%=} {%>} {%<}" : "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} \"%K\" {%$} {%D} {%E} {%.3H} {%.2;} {%:} {%,} {%`} {%=} {%>} {%<}";;    newleader_msg = "{%U} {%G} {%.0S} {%d} {%F} {%.1p} {%.0m} {%r} {%n} {%u} {%g} {%f} {%M} %C0 %c0 \"%K\" {%R} {%$} {%D} {%E} {%.3H} {%.2;} {%:} {%,} {%`} {%=} {%>} {%<}";    break;   default:    get_rar_info(&g.v);    race_msg = "{%U} {%G} {%R} {%r} {%.0S} {%n} {%d} {%.1p} {%u} {%g} {%F} {%f} {%M} \"%K\" {%B} {%J} {%$}";    update_msg = "{%U} {%G} {%f} {%.0S} {%.1e} {%n} {%r} \"%K\" {%J} {%$}";    halfway_msg = g.v.total.users > 1 ? "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} {%B} {%J} {%$}" : "{%r} %C0 %c0 {%.0m} {%F} {%.1p} {%.0A} {%.0a} {%M} {%n} {%u} {%g} {%U} {%G} {%f} \"%K\" {%J} {%$}";;    newleader_msg = "{%U} {%G} {%.0S} {%d} {%F} {%.1p} {%.0m} {%r} {%n} {%u} {%g} {%f} {%M} %C0 %c0 \"%K\" {%R} {%J} {%$}";    d_log("zipscript-c: WARNING! Not a known release type - Contact the authors! (2:%d)\n", g.v.misc.release_type);    break;   }   if (!race_msg)    d_log("zipscript-c: Something's messed up - race_msg not set!\n");   if (exit_value == 0 && *g.v.file.unlink) {    d_log("zipscript-c: Removing missing indicator\n");    unlink_missing(g.v.file.unlink);# 1371 "zipscript-c.c"   }   break;  case 4:   d_log("zipscript-c: File type: NO CHECK\n");   if (!matchpath("/opt/wzdftpd/site/groups/", g.l.path) && !matchpath("/opt/wzdftpd/site/private/", g.l.path) && insampledir(g.l.path) && strcomp("mpg,mpeg,m2v,m2p,avi", fileext) && !avinfo(g.v.file.name, &g.v.avinfo)) {    d_log("zipscript-c: Writing %s announce to %s.\n", "SAMPLEDIR", "/opt/wzdftpd/ftp-data/logs/glftpd.log");    write_log = g.v.misc.write_log;    g.v.misc.write_log = 1;    writelog(&g, convert(&g.v, g.ui, g.gi, "{%U} {%G} {%D} {%E} {%.3H} {%.2;} {%:} {%,} {%`} {%=} {%>} {%<}"), "SAMPLEDIR");    g.v.misc.write_log = write_log;    if (0 == 1) {     d_log("zipscript-c: Executing sample_script (%s).\n", "/bin/sample_script.sh");     if (!fileexists("/bin/sample_script.sh"))      d_log("zipscript-c: Warning - sample_script (%s) - file does not exist!\n", "/bin/sample_script.sh");     sprintf(target, "/bin/sample_script.sh" " \"%s\"", g.v.file.name);     if (execute(target) != 0)      d_log("zipscript-c: Failed to execute sample_script: %s\n", strerror((*__errno_location ())));    }   }   no_check = 1;   break;  case 255:   d_log("zipscript-c: File type: UNKNOWN [ignored in sfv]\n");   sprintf(g.v.misc.error_msg, "%s-file: Not allowed!", fileext);   mark_as_bad(g.v.file.name);   write_log = g.v.misc.write_log;   g.v.misc.write_log = 1;   error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");   if (exit_value < 2)    writelog(&g, error_msg, "BAD_FILE_DISALLOWED");   exit_value = 2;   break;  } } if (no_check == 1 && exit_value < 2) {  printf("| + File: ok! (allowed w/o any checks)             |\n");  printf("%s", convert(&g.v, g.ui, g.gi, "`--------------------------------=====-------------'\n")); } else if (exit_value == 0) {  if (g.v.total.users > 0) {   d_log("zipscript-c: Sorting race stats\n");   sortstats(&g.v, g.ui, g.gi);   d_log("zipscript-c: Printing on-site race info\n");   showstats(&g.v, g.ui, g.gi);   if (!1 || ((g.v.total.users > 1 && g.ui[g.ui[0]->pos]->files >= (g.ui[g.ui[1]->pos]->files + 2)) || g.v.total.users == 1)) {    d_log("zipscript-c: Writing current leader to file\n");    read_write_leader(g.l.leader, &g.v, g.ui[g.ui[0]->pos]);   }   if (g.v.total.users > 1) {    if (g.ui[g.v.user.pos]->files == 1 && race_msg != ((void *)0)) {     d_log("zipscript-c: Writing RACE to %s\n", "/opt/wzdftpd/ftp-data/logs/glftpd.log");     race_type = "RACE";     switch (g.v.misc.release_type) {     case RTYPE_RAR:      race_type = "RACE_RAR";      break;     case RTYPE_OTHER:      race_type = "RACE_OTHER";      break;     case RTYPE_AUDIO:      race_type = "RACE_AUDIO";      break;     case RTYPE_VIDEO:      race_type = "RACE_VIDEO";      break;     case RTYPE_NULL:      race_type = "RACE_ZIP";      break;     default:      race_type = "RACE_RAR";      d_log("zipscript-c: WARNING! Not a known release type - Contact the authors! (3:%d)\n", g.v.misc.release_type);      break;     }     if (!race_type)      d_log("zipscript-c: Something's messed up - race_type not set!\n");     if (g.v.misc.data_completed) {      d_log("zipscript-c: This release has previously been announced complete - skipping announce\n");      error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");      writelog(&g, error_msg, "BAD_FILE_DUPERELEASE");     } else      writelog(&g, convert(&g.v, g.ui, g.gi, race_msg), race_type);    }    if (g.v.total.files >= 1 && ((g.v.total.size * g.v.total.files) >= (10 * 1024 * 1024)) && __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (g.v.misc.old_leader) && __builtin_constant_p (g.ui[g.ui[0]->pos]->name) && (__s1_len = strlen (g.v.misc.old_leader), __s2_len = strlen (g.ui[g.ui[0]->pos]->name), (!((size_t)(const void *)((g.v.misc.old_leader) + 1) - (size_t)(const void *)(g.v.misc.old_leader) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((g.ui[g.ui[0]->pos]->name) + 1) - (size_t)(const void *)(g.ui[g.ui[0]->pos]->name) == 1) || __s2_len >= 4)) ? __builtin_strcmp (g.v.misc.old_leader, g.ui[g.ui[0]->pos]->name) : (__builtin_constant_p (g.v.misc.old_leader) && ((size_t)(const void *)((g.v.misc.old_leader) + 1) - (size_t)(const void *)(g.v.misc.old_leader) == 1) && (__s1_len = strlen (g.v.misc.old_leader), __s1_len < 4) ? (__builtin_constant_p (g.ui[g.ui[0]->pos]->name) && ((size_t)(const void *)((g.ui[g.ui[0]->pos]->name) + 1) - (size_t)(const void *)(g.ui[g.ui[0]->pos]->name) == 1) ? __builtin_strcmp (g.v.misc.old_leader, g.ui[g.ui[0]->pos]->name) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (g.ui[g.ui[0]->pos]->name); register int __result = (((const unsigned char *) (const char *) (g.v.misc.old_leader))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((const unsigned char *) (const char *) (g.v.misc.old_leader))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((const unsigned char *) (const char *) (g.v.misc.old_leader))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((const unsigned char *) (const char *) (g.v.misc.old_leader))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (g.ui[g.ui[0]->pos]->name) && ((size_t)(const void *)((g.ui[g.ui[0]->pos]->name) + 1) - (size_t)(const void *)(g.ui[g.ui[0]->pos]->name) == 1) && (__s2_len = strlen (g.ui[g.ui[0]->pos]->name), __s2_len < 4) ? (__builtin_constant_p (g.v.misc.old_leader) && ((size_t)(const void *)((g.v.misc.old_leader) + 1) - (size_t)(const void *)(g.v.misc.old_leader) == 1) ? __builtin_strcmp (g.v.misc.old_leader, g.ui[g.ui[0]->pos]->name) : (__extension__ ({ const unsigned char *__s1 = (const unsigned char *) (const char *) (g.v.misc.old_leader); register int __result = __s1[0] - ((const unsigned char *) (const char *) (g.ui[g.ui[0]->pos]->name))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((const unsigned char *) (const char *) (g.ui[g.ui[0]->pos]->name))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((const unsigned char *) (const char *) (g.ui[g.ui[0]->pos]->name))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((const unsigned char *) (const char *) (g.ui[g.ui[0]->pos]->name))[3]); } } __result; }))) : __builtin_strcmp (g.v.misc.old_leader, g.ui[g.ui[0]->pos]->name)))); }) && newleader_msg != ((void *)0) && g.ui[g.ui[0]->pos]->files >= (g.ui[g.ui[1]->pos]->files + 2) && g.v.total.files_missing) {     d_log("zipscript-c: Writing NEWLEADER to %s\n", "/opt/wzdftpd/ftp-data/logs/glftpd.log");     newleader_type = "NEWLEADER";     switch (g.v.misc.release_type) {     case RTYPE_RAR:      newleader_type = "NEWLEADER_RAR";      break;     case RTYPE_OTHER:      newleader_type = "NEWLEADER_OTHER";      break;     case RTYPE_AUDIO:      newleader_type = "NEWLEADER_AUDIO";      break;     case RTYPE_VIDEO:      newleader_type = "NEWLEADER_VIDEO";      break;     case RTYPE_NULL:      newleader_type = "NEWLEADER_ZIP";      break;     default:      newleader_type = "NEWLEADER_RAR";      d_log("zipscript-c: WARNING! Not a known release type - Contact the authors! (4:%d)\n", g.v.misc.release_type);      break;     }     if (!newleader_type)      d_log("zipscript-c: Something's messed up - newleader_type not set!\n");     if (g.v.misc.data_completed) {      d_log("zipscript-c: This release has previously been announced complete - skipping announce\n");      error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");      writelog(&g, error_msg, "BAD_FILE_DUPERELEASE");     } else      writelog(&g, convert(&g.v, g.ui, g.gi, newleader_msg), newleader_type);    }   } else {    if (g.ui[g.v.user.pos]->files == 1 && g.v.total.files >= 2 && ((g.v.total.size * g.v.total.files) >= (1 * 1024 * 1024)) && update_msg != ((void *)0)) {     d_log("zipscript-c: Writing UPDATE to %s\n", "/opt/wzdftpd/ftp-data/logs/glftpd.log");     update_type = "UPDATE";     switch (g.v.misc.release_type) {     case RTYPE_RAR:      update_type = "UPDATE_RAR";      break;     case RTYPE_OTHER:      update_type = "UPDATE_OTHER";      break;     case RTYPE_AUDIO:      if (g.v.audio.is_vbr == 0) {       update_type = "UPDATE_CBR";      } else {       update_type = "UPDATE_VBR";      };      break;     case RTYPE_VIDEO:      update_type = "UPDATE_VIDEO";      break;     case RTYPE_NULL:      update_type = "UPDATE_ZIP";      break;     default:      update_type = "UPDATE_RAR";      d_log("zipscript-c: WARNING! Not a known release type - Contact the authors! (5:%d)\n", g.v.misc.release_type);      break;     }     if (!update_type)      d_log("zipscript-c: Something's messed up - update_type not set!\n");     if (g.v.misc.data_completed) {      d_log("zipscript-c: This release has previously been announced complete - skipping announce\n");      error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");      writelog(&g, error_msg, "BAD_FILE_DUPERELEASE");     } else      writelog(&g, convert(&g.v, g.ui, g.gi, update_msg), update_type);    }   }  }  if (g.v.total.files_missing > 0) {   if (g.v.total.files_missing == g.v.total.files >> 1 && g.v.total.files >= 10 && ((g.v.total.size * g.v.total.files) >= (10 * 1024 * 1024)) && halfway_msg != ((void *)0)) {    d_log("zipscript-c: Writing HALFWAY to %s\n", "/opt/wzdftpd/ftp-data/logs/glftpd.log");    norace_halfway_type = "HALFWAY_NORACE";    race_halfway_type = "HALFWAY_RACE";    switch (g.v.misc.release_type) {    case RTYPE_RAR:     norace_halfway_type = "HALFWAY_NORACE_RAR";     race_halfway_type = "HALFWAY_RACE_RAR";     break;    case RTYPE_OTHER:     norace_halfway_type = "HALFWAY_NORACE_OTHER";     race_halfway_type = "HALFWAY_RACE_OTHER";     break;    case RTYPE_AUDIO:     norace_halfway_type = "HALFWAY_NORACE_AUDIO";     race_halfway_type = "HALFWAY_RACE_AUDIO";     break;    case RTYPE_VIDEO:     norace_halfway_type = "HALFWAY_NORACE_VIDEO";     race_halfway_type = "HALFWAY_RACE_VIDEO";     break;    case RTYPE_NULL:     norace_halfway_type = "HALFWAY_NORACE_ZIP";     race_halfway_type = "HALFWAY_RACE_ZIP";     break;    default:     norace_halfway_type = "HALFWAY_NORACE_RAR";     race_halfway_type = "HALFWAY_RACE_RAR";     d_log("zipscript-c: WARNING! Not a known release type - Contact the authors! (6:%d)\n", g.v.misc.release_type);     break;    }    if (!race_halfway_type)     d_log("zipscript-c: Something's messed up - race_halfway_type not set!\n");    if (g.v.misc.data_completed) {     d_log("zipscript-c: This release has previously been announced complete - skipping announce\n");     error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");     writelog(&g, error_msg, "BAD_FILE_DUPERELEASE");    } else     writelog(&g, convert(&g.v, g.ui, g.gi, halfway_msg), (g.v.total.users > 1 ? race_halfway_type : norace_halfway_type));   }   d_log("zipscript-c: Caching progress bar\n");   buffer_progress_bar(&g.v);   if (!matchpath("/opt/wzdftpd/site/groups/", g.l.path) || 1) {    d_log("zipscript-c: Creating incomplete indicator:\n", g.l.incomplete);    d_log("zipscript-c:    name: '%s', incomplete: '%s', path: '%s'\n", g.v.misc.release_name, g.l.incomplete, g.l.path);    symlink(g.v.misc.release_name, g.l.incomplete);   }   d_log("zipscript-c: Creating/moving progress bar\n");   move_progress_bar(0, &g.v, g.ui, g.gi);   printf("%s", convert(&g.v, g.ui, g.gi, "`-[%V]----------------------[%3F/%-3f]--'\n"));  } else if ((g.v.total.files_missing == 0) && (g.v.total.files > 0)) {   d_log("zipscript-c: Caching progress bar\n");   buffer_progress_bar(&g.v);   printf("%s", convert(&g.v, g.ui, g.gi, "`-[%V]----------------------[%3F/%-3f]--'\n"));   d_log("zipscript-c: Setting complete pointers\n");   switch (g.v.misc.release_type) {   case RTYPE_NULL:    complete_bar = "[%Z] - ( %.0mM %fF - COMPLETE ) - [%Z]";    complete_msg = g.v.total.users > 1 ? "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%u} {%g} %l %L %C0 %c0 {%n} {%B} {%t} {%T}" : "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%U} {%G} {%n} \"%K\" %t %T";;    complete_announce = g.v.total.users > 1 ? "COMPLETE_STAT_RACE_ZIP" : "COMPLETE_ZIP";;    break;   case RTYPE_RAR:    complete_bar = "[%Z] - ( %.0mM %fF - COMPLETE ) - [%Z]";    complete_msg = g.v.total.users > 1 ? "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%u} {%g} %l %L %C0 %c0 {%n} {%B} {%J} {%t} {%T}" : "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%U} {%G} {%n} \"%K\" {%J} %t %T";;    complete_announce = g.v.total.users > 1 ? "COMPLETE_STAT_RACE_RAR" : "COMPLETE_RAR";;    break;   case RTYPE_OTHER:    complete_bar = "[%Z] - ( %.0mM %fF - COMPLETE ) - [%Z]";    complete_msg = g.v.total.users > 1 ? "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%u} {%g} %l %L %C0 %c0 {%n} {%B} {%t} {%T}" : "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%U} {%G} {%n} \"%K\" %t %T";;    complete_announce = g.v.total.users > 1 ? "COMPLETE_STAT_RACE_OTHER" : "COMPLETE_OTHER";;    break;   case RTYPE_AUDIO:    complete_bar = "[%Z] - ( %.0mM %fF - COMPLETE - %w %Y ) - [%Z]";    complete_msg = g.v.total.users > 1 ? "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%u} {%g} %j %l %L %C0 %c0 {%n} {%B} {%t} {%T}" : "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%U} {%G} %j {%n} \"%K\" %t %T";;    if (g.v.audio.is_vbr == 0) {     complete_announce = g.v.total.users > 1 ? "COMPLETE_STAT_RACE_AUDIO_CBR" : "COMPLETE_AUDIO_CBR";;    } else {     complete_announce = g.v.total.users > 1 ? "COMPLETE_STAT_RACE_AUDIO_VBR" : "COMPLETE_AUDIO_VBR";;    }    d_log("zipscript-c: Symlinking audio\n");    if (g.v.misc.write_log == 1 && !matchpath("/opt/wzdftpd/site/groups/", g.l.path) && !matchpath("/site/incoming/requests/", g.l.path))     audioSort(&g.v.audio, g.l.link_source, g.l.link_target);    else     d_log("zipscript-c: Symlinking halted - will not create symlinks for this release.\n");    if (findfileext(dir, ".sfv")) {     d_log("zipscript-c: Creating m3u\n");     cnt = sprintf(target, findfileext(dir, ".sfv"));     strlcpy(target + cnt - 3, "m3u", 4);     create_indexfile(g.l.race, &g.v, target);    } else     d_log("zipscript-c: Cannot create m3u, sfv is missing\n");    break;   case RTYPE_VIDEO:    complete_bar = "[%Z] - ( %.0mM %fF - COMPLETE ) - [%Z]";    complete_msg = g.v.total.users > 1 ? "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%u} {%g} %l %L %C0 %c0 {%n} {%B} {%t} {%T} {%D} {%E} {%.3H} {%.2;} {%:} {%,} {%`} {%=} {%>} {%<}" : "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%U} {%G} {%n} \"%K\" %t %T {%D} {%E} {%.3H} {%.2;} {%:} {%,} {%`} {%=} {%>} {%<}";;    complete_announce = g.v.total.users > 1 ? "COMPLETE_STAT_RACE_VIDEO" : "COMPLETE_VIDEO";;    break;   default:    complete_bar = "[%Z] - ( %.0mM %fF - COMPLETE ) - [%Z]";    complete_msg = g.v.total.users > 1 ? "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%u} {%g} %l %L %C0 %c0 {%n} {%B} {%J} {%t} {%T}" : "{%r} {%.0m} {%f} {%.0A} {%.0a} {%d} {%U} {%G} {%n} \"%K\" {%J} %t %T";;    complete_announce = g.v.total.users > 1 ? "COMPLETE_STAT_RACE_RAR" : "COMPLETE_RAR";;    d_log("zipscript-c: WARNING! Not a known release type - Contact the authors! (7:%d)\n", g.v.misc.release_type);    break;   }   if (complete_bar) {    d_log("zipscript-c: Removing old complete bar, if any\n");    removecomplete();   }   d_log("zipscript-c: Removing incomplete indicator (%s)\n", g.l.incomplete);   complete(&g, complete_type);   if (complete_msg != ((void *)0)) {    if (g.v.misc.data_completed) {     d_log("zipscript-c: This release has previously been announced complete - skipping announce\n");     error_msg = convert(&g.v, g.ui, g.gi, "{%r} {%U} {%G} {%n}");     writelog(&g, error_msg, "BAD_FILE_DUPERELEASE");    } else {     d_log("zipscript-c: Writing COMPLETE and STATS to %s\n", "/opt/wzdftpd/ftp-data/logs/glftpd.log");     writelog(&g, convert(&g.v, g.ui, g.gi, complete_msg), complete_announce);     writetop(&g, complete_type);     g.v.misc.data_completed = 1;    }   }   if (complete_bar) {    d_log("zipscript-c: Creating complete bar\n");    mkdir(convert(&g.v, g.ui, g.gi, complete_bar), 0777);;   }# 1741 "zipscript-c.c"   if (!matchpath("/opt/wzdftpd/site/groups/", g.l.path) || 1) {    if (g.l.nfo_incomplete && matchpath("", g.l.path) && !findfileext(dir, ".nfo")) {     if (!g.l.in_cd_dir) {      d_log("zipscript-c: Creating missing-nfo indicator %s.\n", g.l.nfo_incomplete);      symlink(g.v.misc.release_name, g.l.nfo_incomplete);     } else {      if (!findfileextparent(parent, ".nfo")) {       d_log("zipscript-c: Creating missing-nfo indicator (base) %s.\n", g.l.nfo_incomplete);       if ((inc_point[0] = find_last_of(g.l.path, "/")) != g.l.path)        *inc_point[0] = '\0';       if ((inc_point[1] = find_last_of(g.v.misc.release_name, "/")) != g.v.misc.release_name)        *inc_point[1] = '\0';       symlink(g.v.misc.release_name, g.l.nfo_incomplete);       if (*inc_point[0] == '\0')        *inc_point[0] = '/';       if (*inc_point[1] == '\0')        *inc_point[1] = '/';      }     }    }   }  } else {   g.v.total.files = -g.v.total.files_missing;   g.v.total.files_missing = 0;   printf("%s", convert(&g.v, g.ui, g.gi, "`-[ - NO - SFV - ]----------------------[%3F/???]--'\n"));  } } else {  d_log("zipscript-c: Logging file as bad\n");  remove_from_race(g.l.race, g.v.file.name, &g.v);  printf("%s", convert(&g.v, g.ui, g.gi, "| - %-46v |\n`-----------------------------------========-------'\n")); }# 1803 "zipscript-c.c" if ((findfileext(dir, ".nfo") || (g.l.in_cd_dir && findfileextparent(parent, ".nfo"))) && g.l.nfo_incomplete) {  d_log("zipscript-c: Removing missing-nfo indicator (if any)\n");  remove_nfo_indicator(&g); }# 1831 "zipscript-c.c" d_log("zipscript-c: Releasing memory and removing lock\n"); closedir(dir); closedir(parent); remove_lock(&g.v); if (fileexists(".delme"))  unlink(".delme"); buffer_groups("/etc/group", gnum); buffer_users("/etc/passwd", unum); updatestats_free(&g); ng_free(fileext); ng_free(target); ng_free(g.l.race); ng_free(g.l.sfv); ng_free(g.l.sfvbackup); ng_free(g.l.leader); gettimeofday(&bstop, (struct timezone *)0); printf("Checks completed in %0.6f seconds.\n", ((bstop.tv_sec - bstart.tv_sec) + (bstop.tv_usec - bstart.tv_usec) / 1000000.)); d_log("zipscript-c: Checks completed in %0.6f seconds.\n", ((bstop.tv_sec - bstart.tv_sec) + (bstop.tv_usec - bstart.tv_usec) / 1000000.));# 1865 "zipscript-c.c" d_log("zipscript-c: Exit %d\n", exit_value); return exit_value;}