Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 36717 Details for
Bug 59314
net-www/mozilla-firefox-0.9.1 fails to compile
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
preprocessed source
ccaL0cc6.out (text/plain), 125.38 KB, created by
Colin Kingsley (RETIRED)
on 2004-08-03 15:38:56 UTC
(
hide
)
Description:
preprocessed source
Filename:
MIME Type:
Creator:
Colin Kingsley (RETIRED)
Created:
2004-08-03 15:38:56 UTC
Size:
125.38 KB
patch
obsolete
>// /usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/cc1 -fpreprocessed /var/tmp/portage/homedir/.ccache/tmp.stdout.tercel.23667.i -quiet -dumpbase tmp.stdout.tercel.23667.i -mcpu=750 -auxbase-strip /var/tmp/portage/homedir/.ccache/tmp.hash.tercel.23667.o -O2 -W -Wno-unused -Wpointer-arith -Wcast-align -Wno-long-long -Wno-return-type -Wno-return-type -Wno-return-type -w -fPIC -fsigned-char -fno-strict-aliasing -fforce-addr -fprefetch-loop-arrays -fno-gcse -ftracer -fweb -fno-strict-aliasing -fforce-addr -ffunction-sections -o - -frandom-seed=0 ># 1 "reg.c" ># 1 "<built-in>" ># 1 "<command line>" ># 20 "<command line>" ># 1 "../../../mozilla-config.h" 1 ># 21 "<command line>" 2 ># 1 "reg.c" ># 49 "reg.c" ># 1 "/usr/include/stdio.h" 1 3 4 ># 28 "/usr/include/stdio.h" 3 4 ># 1 "/usr/include/features.h" 1 3 4 ># 295 "/usr/include/features.h" 3 4 ># 1 "/usr/include/sys/cdefs.h" 1 3 4 ># 296 "/usr/include/features.h" 2 3 4 ># 318 "/usr/include/features.h" 3 4 ># 1 "/usr/include/gnu/stubs.h" 1 3 4 ># 319 "/usr/include/features.h" 2 3 4 ># 29 "/usr/include/stdio.h" 2 3 4 > > > > > ># 1 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 213 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 3 4 >typedef 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-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 32 "/usr/include/bits/types.h" 2 3 4 > > >typedef 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; > > > > >__extension__ typedef signed long long int __int64_t; >__extension__ typedef unsigned long long int __uint64_t; > > > > > > > >__extension__ typedef long long int __quad_t; >__extension__ typedef unsigned long long int __u_quad_t; ># 129 "/usr/include/bits/types.h" 3 4 ># 1 "/usr/include/bits/typesizes.h" 1 3 4 ># 130 "/usr/include/bits/types.h" 2 3 4 > > > > > > >__extension__ typedef unsigned long long int __dev_t; >__extension__ typedef unsigned int __uid_t; >__extension__ typedef unsigned int __gid_t; >__extension__ typedef unsigned long int __ino_t; >__extension__ typedef unsigned long long int __ino64_t; >__extension__ typedef unsigned int __mode_t; >__extension__ typedef unsigned int __nlink_t; >__extension__ typedef long int __off_t; >__extension__ typedef long long int __off64_t; >__extension__ typedef int __pid_t; >__extension__ typedef struct { int __val[2]; } __fsid_t; >__extension__ typedef long int __clock_t; >__extension__ typedef unsigned long int __rlim_t; >__extension__ typedef unsigned long long int __rlim64_t; >__extension__ typedef unsigned int __id_t; >__extension__ typedef long int __time_t; >__extension__ typedef unsigned int __useconds_t; >__extension__ typedef long int __suseconds_t; > >__extension__ typedef int __daddr_t; >__extension__ typedef long int __swblk_t; >__extension__ typedef int __key_t; > > >__extension__ typedef int __clockid_t; > > >__extension__ typedef void * __timer_t; > > >__extension__ typedef long int __blksize_t; > > > > >__extension__ typedef long int __blkcnt_t; >__extension__ typedef long long int __blkcnt64_t; > > >__extension__ typedef unsigned long int __fsblkcnt_t; >__extension__ typedef unsigned long long int __fsblkcnt64_t; > > >__extension__ typedef unsigned long int __fsfilcnt_t; >__extension__ typedef unsigned long long int __fsfilcnt64_t; > >__extension__ typedef int __ssize_t; > > > >typedef __off64_t __loff_t; >typedef __quad_t *__qaddr_t; >typedef char *__caddr_t; > > >__extension__ typedef int __intptr_t; > > >__extension__ typedef unsigned int __socklen_t; ># 37 "/usr/include/stdio.h" 2 3 4 ># 46 "/usr/include/stdio.h" 3 4 >typedef struct _IO_FILE FILE; ># 62 "/usr/include/stdio.h" 3 4 >typedef struct _IO_FILE __FILE; ># 72 "/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-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 325 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 3 4 >typedef long int wchar_t; ># 354 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 3 4 >typedef 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-lib/powerpc-unknown-linux-gnu/3.3.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 4 >typedef struct >{ > int __count; > union > { > wint_t __wch; > char __wchb[4]; > } __value; >} __mbstate_t; ># 25 "/usr/include/_G_config.h" 2 3 4 > >typedef 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-lib/powerpc-unknown-linux-gnu/3.3.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-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 32 "/usr/include/gconv.h" 2 3 4 > > > > > >enum >{ > __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 4 >typedef 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-lib/powerpc-unknown-linux-gnu/3.3.3/include/stdarg.h" 1 3 4 ># 43 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stdarg.h" 3 4 >typedef __builtin_va_list __gnuc_va_list; ># 54 "/usr/include/libio.h" 2 3 4 ># 163 "/usr/include/libio.h" 3 4 >struct _IO_jump_t; struct _IO_FILE; ># 173 "/usr/include/libio.h" 3 4 >typedef void _IO_lock_t; > > > > > >struct _IO_marker { > struct _IO_marker *_next; > struct _IO_FILE *_sbuf; > > > > int _pos; ># 196 "/usr/include/libio.h" 3 4 >}; > > >enum __codecvt_result >{ > __codecvt_ok, > __codecvt_partial, > __codecvt_error, > __codecvt_noconv >}; ># 264 "/usr/include/libio.h" 3 4 >struct _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; ># 312 "/usr/include/libio.h" 3 4 > __off64_t _offset; > > > > > > void *__pad1; > void *__pad2; > > int _mode; > > char _unused2[15 * sizeof (int) - 2 * sizeof (void *)]; > >}; > > >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_; ># 351 "/usr/include/libio.h" 3 4 >typedef __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); ># 403 "/usr/include/libio.h" 3 4 >extern 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) ; ># 441 "/usr/include/libio.h" 3 4 >extern int _IO_getc (_IO_FILE *__fp) ; >extern int _IO_putc (int __c, _IO_FILE *__fp) ; >extern int _IO_feof (_IO_FILE *__fp) ; >extern int _IO_ferror (_IO_FILE *__fp) ; > >extern int _IO_peekc_locked (_IO_FILE *__fp) ; > > > > > >extern void _IO_flockfile (_IO_FILE *) ; >extern void _IO_funlockfile (_IO_FILE *) ; >extern int _IO_ftrylockfile (_IO_FILE *) ; ># 471 "/usr/include/libio.h" 3 4 >extern 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 *) ; ># 73 "/usr/include/stdio.h" 2 3 4 ># 86 "/usr/include/stdio.h" 3 4 > > >typedef _G_fpos_t fpos_t; ># 138 "/usr/include/stdio.h" 3 4 ># 1 "/usr/include/bits/stdio_lim.h" 1 3 4 ># 139 "/usr/include/stdio.h" 2 3 4 > > > >extern struct _IO_FILE *stdin; >extern struct _IO_FILE *stdout; >extern struct _IO_FILE *stderr; > > > > > > > >extern int remove (__const char *__filename) ; > >extern int rename (__const char *__old, __const char *__new) ; ># 164 "/usr/include/stdio.h" 3 4 >extern FILE *tmpfile (void); ># 178 "/usr/include/stdio.h" 3 4 >extern char *tmpnam (char *__s) ; > > > > > >extern char *tmpnam_r (char *__s) ; ># 196 "/usr/include/stdio.h" 3 4 >extern char *tempnam (__const char *__dir, __const char *__pfx) > __attribute__ ((__malloc__)); ># 206 "/usr/include/stdio.h" 3 4 >extern int fclose (FILE *__stream); > > > > >extern int fflush (FILE *__stream); ># 221 "/usr/include/stdio.h" 3 4 >extern int fflush_unlocked (FILE *__stream); ># 235 "/usr/include/stdio.h" 3 4 > > > > > > >extern FILE *fopen (__const char *__restrict __filename, > __const char *__restrict __modes); > > > > >extern FILE *freopen (__const char *__restrict __filename, > __const char *__restrict __modes, > FILE *__restrict __stream); ># 262 "/usr/include/stdio.h" 3 4 ># 273 "/usr/include/stdio.h" 3 4 >extern FILE *fdopen (int __fd, __const char *__modes) ; ># 294 "/usr/include/stdio.h" 3 4 > > > >extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) ; > > > >extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf, > int __modes, size_t __n) ; > > > > > >extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf, > size_t __size) ; > > >extern void setlinebuf (FILE *__stream) ; ># 321 "/usr/include/stdio.h" 3 4 >extern int fprintf (FILE *__restrict __stream, > __const char *__restrict __format, ...); > > > > >extern int printf (__const char *__restrict __format, ...); > >extern int sprintf (char *__restrict __s, > __const char *__restrict __format, ...) ; > > > > > >extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format, > __gnuc_va_list __arg); > > > > >extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg); > >extern int vsprintf (char *__restrict __s, __const char *__restrict __format, > __gnuc_va_list __arg) ; > > > > > >extern int snprintf (char *__restrict __s, size_t __maxlen, > __const char *__restrict __format, ...) > __attribute__ ((__format__ (__printf__, 3, 4))); > >extern int vsnprintf (char *__restrict __s, size_t __maxlen, > __const char *__restrict __format, __gnuc_va_list __arg) > __attribute__ ((__format__ (__printf__, 3, 0))); ># 388 "/usr/include/stdio.h" 3 4 > > > > > >extern int fscanf (FILE *__restrict __stream, > __const char *__restrict __format, ...); > > > > >extern int scanf (__const char *__restrict __format, ...); > >extern int sscanf (__const char *__restrict __s, > __const char *__restrict __format, ...) ; ># 430 "/usr/include/stdio.h" 3 4 > > > > > >extern int fgetc (FILE *__stream); >extern int getc (FILE *__stream); > > > > > >extern int getchar (void); ># 454 "/usr/include/stdio.h" 3 4 >extern int getc_unlocked (FILE *__stream); >extern int getchar_unlocked (void); ># 465 "/usr/include/stdio.h" 3 4 >extern int fgetc_unlocked (FILE *__stream); ># 477 "/usr/include/stdio.h" 3 4 >extern int fputc (int __c, FILE *__stream); >extern int putc (int __c, FILE *__stream); > > > > > >extern int putchar (int __c); ># 498 "/usr/include/stdio.h" 3 4 >extern int fputc_unlocked (int __c, FILE *__stream); > > > > > > > >extern int putc_unlocked (int __c, FILE *__stream); >extern int putchar_unlocked (int __c); > > > > > > >extern int getw (FILE *__stream); > > >extern int putw (int __w, FILE *__stream); ># 526 "/usr/include/stdio.h" 3 4 >extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream); > > > > > > >extern char *gets (char *__s); ># 578 "/usr/include/stdio.h" 3 4 > > > > > >extern int fputs (__const char *__restrict __s, FILE *__restrict __stream); > > > > > >extern int puts (__const char *__s); > > > > > > >extern int ungetc (int __c, FILE *__stream); > > > > > > >extern size_t fread (void *__restrict __ptr, size_t __size, > size_t __n, FILE *__restrict __stream); > > > > >extern size_t fwrite (__const void *__restrict __ptr, size_t __size, > size_t __n, FILE *__restrict __s); ># 631 "/usr/include/stdio.h" 3 4 >extern size_t fread_unlocked (void *__restrict __ptr, size_t __size, > size_t __n, FILE *__restrict __stream); >extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size, > size_t __n, FILE *__restrict __stream); ># 643 "/usr/include/stdio.h" 3 4 >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 4 > > > > > > >extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos); > > > > >extern int fsetpos (FILE *__stream, __const fpos_t *__pos); ># 709 "/usr/include/stdio.h" 3 4 ># 718 "/usr/include/stdio.h" 3 4 > > >extern void clearerr (FILE *__stream) ; > >extern int feof (FILE *__stream) ; > >extern int ferror (FILE *__stream) ; > > > > >extern void clearerr_unlocked (FILE *__stream) ; >extern int feof_unlocked (FILE *__stream) ; >extern int ferror_unlocked (FILE *__stream) ; ># 740 "/usr/include/stdio.h" 3 4 >extern void perror (__const char *__s); > > > > > > ># 1 "/usr/include/bits/sys_errlist.h" 1 3 4 ># 27 "/usr/include/bits/sys_errlist.h" 3 4 >extern int sys_nerr; >extern __const char *__const sys_errlist[]; ># 748 "/usr/include/stdio.h" 2 3 4 > > > > >extern int fileno (FILE *__stream) ; > > > > >extern int fileno_unlocked (FILE *__stream) ; ># 767 "/usr/include/stdio.h" 3 4 >extern FILE *popen (__const char *__command, __const char *__modes); > > > > > >extern int pclose (FILE *__stream); > > > > > >extern char *ctermid (char *__s) ; ># 807 "/usr/include/stdio.h" 3 4 >extern void flockfile (FILE *__stream) ; > > > >extern int ftrylockfile (FILE *__stream) ; > > >extern void funlockfile (FILE *__stream) ; ># 828 "/usr/include/stdio.h" 3 4 ># 1 "/usr/include/bits/stdio.h" 1 3 4 ># 33 "/usr/include/bits/stdio.h" 3 4 >extern __inline int >vprintf (__const char *__restrict __fmt, __gnuc_va_list __arg) >{ > return vfprintf (stdout, __fmt, __arg); >} > > >extern __inline int >getchar (void) >{ > return _IO_getc (stdin); >} > > > > >extern __inline int >getc_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 int >getchar_unlocked (void) >{ > return (__builtin_expect ((stdin)->_IO_read_ptr >= (stdin)->_IO_read_end, 0) ? __uflow (stdin) : *(unsigned char *) (stdin)->_IO_read_ptr++); >} > > > > >extern __inline int >putchar (int __c) >{ > return _IO_putc (__c, stdout); >} > > > > >extern __inline int >fputc_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 int >putc_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 int >putchar_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))); >} ># 111 "/usr/include/bits/stdio.h" 3 4 >extern __inline int >feof_unlocked (FILE *__stream) >{ > return (((__stream)->_flags & 0x10) != 0); >} > > >extern __inline int >ferror_unlocked (FILE *__stream) >{ > return (((__stream)->_flags & 0x20) != 0); >} ># 829 "/usr/include/stdio.h" 2 3 4 ># 50 "reg.c" 2 ># 1 "/usr/include/string.h" 1 3 4 ># 28 "/usr/include/string.h" 3 4 > > > > > ># 1 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 34 "/usr/include/string.h" 2 3 4 > > > > >extern void *memcpy (void *__restrict __dest, > __const void *__restrict __src, size_t __n) ; > > >extern void *memmove (void *__dest, __const void *__src, size_t __n) > ; > > > > > > >extern void *memccpy (void *__restrict __dest, __const void *__restrict __src, > int __c, size_t __n) > ; > > > > > >extern void *memset (void *__s, int __c, size_t __n) ; > > >extern int memcmp (__const void *__s1, __const void *__s2, size_t __n) > __attribute__ ((__pure__)); > > >extern void *memchr (__const void *__s, int __c, size_t __n) > __attribute__ ((__pure__)); ># 80 "/usr/include/string.h" 3 4 > > >extern char *strcpy (char *__restrict __dest, __const char *__restrict __src) > ; > >extern char *strncpy (char *__restrict __dest, > __const char *__restrict __src, size_t __n) ; > > >extern char *strcat (char *__restrict __dest, __const char *__restrict __src) > ; > >extern char *strncat (char *__restrict __dest, __const char *__restrict __src, > size_t __n) ; > > >extern int strcmp (__const char *__s1, __const char *__s2) > __attribute__ ((__pure__)); > >extern int strncmp (__const char *__s1, __const char *__s2, size_t __n) > __attribute__ ((__pure__)); > > >extern int strcoll (__const char *__s1, __const char *__s2) > __attribute__ ((__pure__)); > >extern size_t strxfrm (char *__restrict __dest, > __const char *__restrict __src, size_t __n) ; ># 126 "/usr/include/string.h" 3 4 >extern char *strdup (__const char *__s) __attribute__ ((__malloc__)); ># 160 "/usr/include/string.h" 3 4 > > >extern char *strchr (__const char *__s, int __c) __attribute__ ((__pure__)); > >extern char *strrchr (__const char *__s, int __c) __attribute__ ((__pure__)); ># 176 "/usr/include/string.h" 3 4 >extern size_t strcspn (__const char *__s, __const char *__reject) > __attribute__ ((__pure__)); > > >extern size_t strspn (__const char *__s, __const char *__accept) > __attribute__ ((__pure__)); > >extern char *strpbrk (__const char *__s, __const char *__accept) > __attribute__ ((__pure__)); > >extern char *strstr (__const char *__haystack, __const char *__needle) > __attribute__ ((__pure__)); > > > >extern char *strtok (char *__restrict __s, __const char *__restrict __delim) > ; > > > > >extern char *__strtok_r (char *__restrict __s, > __const char *__restrict __delim, > char **__restrict __save_ptr) ; > >extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim, > char **__restrict __save_ptr) ; ># 228 "/usr/include/string.h" 3 4 > > >extern size_t strlen (__const char *__s) __attribute__ ((__pure__)); ># 241 "/usr/include/string.h" 3 4 > > >extern char *strerror (int __errnum) ; ># 268 "/usr/include/string.h" 3 4 >extern char *strerror_r (int __errnum, char *__buf, size_t __buflen) ; > > > > > >extern void __bzero (void *__s, size_t __n) ; > > > >extern void bcopy (__const void *__src, void *__dest, size_t __n) ; > > >extern void bzero (void *__s, size_t __n) ; > > >extern int bcmp (__const void *__s1, __const void *__s2, size_t __n) > __attribute__ ((__pure__)); > > >extern char *index (__const char *__s, int __c) __attribute__ ((__pure__)); > > >extern char *rindex (__const char *__s, int __c) __attribute__ ((__pure__)); > > > >extern int ffs (int __i) __attribute__ ((__const__)); ># 308 "/usr/include/string.h" 3 4 >extern int strcasecmp (__const char *__s1, __const char *__s2) > __attribute__ ((__pure__)); > > >extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n) > __attribute__ ((__pure__)); ># 330 "/usr/include/string.h" 3 4 >extern char *strsep (char **__restrict __stringp, > __const char *__restrict __delim) ; ># 393 "/usr/include/string.h" 3 4 ># 1 "/usr/include/bits/string.h" 1 3 4 ># 394 "/usr/include/string.h" 2 3 4 > > ># 1 "/usr/include/bits/string2.h" 1 3 4 ># 80 "/usr/include/bits/string2.h" 3 4 >typedef struct { unsigned char __arr[2]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR2; >typedef struct { unsigned char __arr[3]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR3; >typedef struct { unsigned char __arr[4]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR4; >typedef struct { unsigned char __arr[5]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR5; >typedef struct { unsigned char __arr[6]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR6; >typedef struct { unsigned char __arr[7]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR7; >typedef struct { unsigned char __arr[8]; } __attribute__ ((__packed__)) __STRING2_COPY_ARR8; ># 389 "/usr/include/bits/string2.h" 3 4 >extern void *__rawmemchr (const void *__s, int __c); ># 919 "/usr/include/bits/string2.h" 3 4 >extern __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; >} ># 976 "/usr/include/bits/string2.h" 3 4 >extern __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; >} ># 1033 "/usr/include/bits/string2.h" 3 4 >extern __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; >} ># 1085 "/usr/include/bits/string2.h" 3 4 >extern __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; >} ># 1117 "/usr/include/bits/string2.h" 3 4 >extern char *__strsep_g (char **__stringp, __const char *__delim); ># 1135 "/usr/include/bits/string2.h" 3 4 >extern __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) && (__reject) == '\0' ? (char *) __rawmemchr (__retval, __reject) : 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; >} ># 1211 "/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-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 34 "/usr/include/stdlib.h" 2 3 4 ># 554 "/usr/include/stdlib.h" 3 4 > > >extern void *malloc (size_t __size) __attribute__ ((__malloc__)); > >extern void *calloc (size_t __nmemb, size_t __size) > __attribute__ ((__malloc__)); ># 922 "/usr/include/stdlib.h" 3 4 ># 1212 "/usr/include/bits/string2.h" 2 3 4 > > > > >extern char *__strdup (__const char *__string) __attribute__ ((__malloc__)); ># 1235 "/usr/include/bits/string2.h" 3 4 >extern char *__strndup (__const char *__string, size_t __n) > __attribute__ ((__malloc__)); ># 397 "/usr/include/string.h" 2 3 4 ># 51 "reg.c" 2 > > ># 1 "/usr/include/stdlib.h" 1 3 4 ># 33 "/usr/include/stdlib.h" 3 4 ># 1 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 34 "/usr/include/stdlib.h" 2 3 4 ># 93 "/usr/include/stdlib.h" 3 4 > > >typedef struct > { > int quot; > int rem; > } div_t; > > > >typedef struct > { > long int quot; > long int rem; > } ldiv_t; ># 137 "/usr/include/stdlib.h" 3 4 >extern size_t __ctype_get_mb_cur_max (void) ; > > > > >extern double atof (__const char *__nptr) __attribute__ ((__pure__)); > >extern int atoi (__const char *__nptr) __attribute__ ((__pure__)); > >extern long int atol (__const char *__nptr) __attribute__ ((__pure__)); > > > > > >__extension__ extern long long int atoll (__const char *__nptr) > __attribute__ ((__pure__)); > > > > > >extern double strtod (__const char *__restrict __nptr, > char **__restrict __endptr) ; ># 174 "/usr/include/stdlib.h" 3 4 > > >extern long int strtol (__const char *__restrict __nptr, > char **__restrict __endptr, int __base) ; > >extern unsigned long int strtoul (__const char *__restrict __nptr, > char **__restrict __endptr, int __base) > ; > > > > >__extension__ >extern long long int strtoq (__const char *__restrict __nptr, > char **__restrict __endptr, int __base) ; > >__extension__ >extern unsigned long long int strtouq (__const char *__restrict __nptr, > char **__restrict __endptr, int __base) > ; > > > > > >__extension__ >extern long long int strtoll (__const char *__restrict __nptr, > char **__restrict __endptr, int __base) ; > >__extension__ >extern unsigned long long int strtoull (__const char *__restrict __nptr, > char **__restrict __endptr, int __base) > ; ># 264 "/usr/include/stdlib.h" 3 4 >extern double __strtod_internal (__const char *__restrict __nptr, > char **__restrict __endptr, int __group) > ; >extern float __strtof_internal (__const char *__restrict __nptr, > char **__restrict __endptr, int __group) > ; >extern long double __strtold_internal (__const char *__restrict __nptr, > char **__restrict __endptr, > int __group) ; > >extern long int __strtol_internal (__const char *__restrict __nptr, > char **__restrict __endptr, > int __base, int __group) ; > > > >extern unsigned long int __strtoul_internal (__const char *__restrict __nptr, > char **__restrict __endptr, > int __base, int __group) ; > > > > >__extension__ >extern long long int __strtoll_internal (__const char *__restrict __nptr, > char **__restrict __endptr, > int __base, int __group) ; > > > >__extension__ >extern unsigned long long int __strtoull_internal (__const char * > __restrict __nptr, > char **__restrict __endptr, > int __base, int __group) > ; ># 308 "/usr/include/stdlib.h" 3 4 >extern __inline double >strtod (__const char *__restrict __nptr, char **__restrict __endptr) >{ > return __strtod_internal (__nptr, __endptr, 0); >} >extern __inline long int >strtol (__const char *__restrict __nptr, char **__restrict __endptr, > int __base) >{ > return __strtol_internal (__nptr, __endptr, __base, 0); >} >extern __inline unsigned long int >strtoul (__const char *__restrict __nptr, char **__restrict __endptr, > int __base) >{ > return __strtoul_internal (__nptr, __endptr, __base, 0); >} ># 343 "/usr/include/stdlib.h" 3 4 >__extension__ extern __inline long long int >strtoq (__const char *__restrict __nptr, char **__restrict __endptr, > int __base) >{ > return __strtoll_internal (__nptr, __endptr, __base, 0); >} >__extension__ extern __inline unsigned long long int >strtouq (__const char *__restrict __nptr, char **__restrict __endptr, > int __base) >{ > return __strtoull_internal (__nptr, __endptr, __base, 0); >} > > > > >__extension__ extern __inline long long int >strtoll (__const char *__restrict __nptr, char **__restrict __endptr, > int __base) >{ > return __strtoll_internal (__nptr, __endptr, __base, 0); >} >__extension__ extern __inline unsigned long long int >strtoull (__const char * __restrict __nptr, char **__restrict __endptr, > int __base) >{ > return __strtoull_internal (__nptr, __endptr, __base, 0); >} > > > > >extern __inline double >atof (__const char *__nptr) >{ > return strtod (__nptr, (char **) ((void *)0)); >} >extern __inline int >atoi (__const char *__nptr) >{ > return (int) strtol (__nptr, (char **) ((void *)0), 10); >} >extern __inline long int >atol (__const char *__nptr) >{ > return strtol (__nptr, (char **) ((void *)0), 10); >} > > > > >__extension__ extern __inline long long int >atoll (__const char *__nptr) >{ > return strtoll (__nptr, (char **) ((void *)0), 10); >} ># 408 "/usr/include/stdlib.h" 3 4 >extern char *l64a (long int __n) ; > > >extern long int a64l (__const char *__s) __attribute__ ((__pure__)); > > > > ># 1 "/usr/include/sys/types.h" 1 3 4 ># 29 "/usr/include/sys/types.h" 3 4 > > > > > > >typedef __u_char u_char; >typedef __u_short u_short; >typedef __u_int u_int; >typedef __u_long u_long; >typedef __quad_t quad_t; >typedef __u_quad_t u_quad_t; >typedef __fsid_t fsid_t; > > > > >typedef __loff_t loff_t; > > > >typedef __ino_t ino_t; ># 62 "/usr/include/sys/types.h" 3 4 >typedef __dev_t dev_t; > > > > >typedef __gid_t gid_t; > > > > >typedef __mode_t mode_t; > > > > >typedef __nlink_t nlink_t; > > > > >typedef __uid_t uid_t; > > > > > >typedef __off_t off_t; ># 100 "/usr/include/sys/types.h" 3 4 >typedef __pid_t pid_t; > > > > >typedef __id_t id_t; > > > > >typedef __ssize_t ssize_t; > > > > > >typedef __daddr_t daddr_t; >typedef __caddr_t caddr_t; > > > > > >typedef __key_t key_t; ># 133 "/usr/include/sys/types.h" 3 4 ># 1 "/usr/include/time.h" 1 3 4 ># 74 "/usr/include/time.h" 3 4 > > >typedef __time_t time_t; ># 92 "/usr/include/time.h" 3 4 >typedef __clockid_t clockid_t; ># 104 "/usr/include/time.h" 3 4 >typedef __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-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 148 "/usr/include/sys/types.h" 2 3 4 > > > >typedef unsigned long int ulong; >typedef unsigned short int ushort; >typedef unsigned int uint; ># 191 "/usr/include/sys/types.h" 3 4 >typedef int int8_t __attribute__ ((__mode__ (__QI__))); >typedef int int16_t __attribute__ ((__mode__ (__HI__))); >typedef int int32_t __attribute__ ((__mode__ (__SI__))); >typedef int int64_t __attribute__ ((__mode__ (__DI__))); > > >typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__))); >typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__))); >typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__))); >typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__))); > >typedef int register_t __attribute__ ((__mode__ (__word__))); ># 213 "/usr/include/sys/types.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 ># 214 "/usr/include/sys/types.h" 2 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 ># 23 "/usr/include/bits/sigset.h" 3 4 >typedef 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 4 > > > >typedef __sigset_t sigset_t; > > > > > ># 1 "/usr/include/time.h" 1 3 4 ># 118 "/usr/include/time.h" 3 4 >struct 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 4 >struct timeval > { > __time_t tv_sec; > __suseconds_t tv_usec; > }; ># 47 "/usr/include/sys/select.h" 2 3 4 > > >typedef __suseconds_t suseconds_t; > > > > > >typedef long int __fd_mask; ># 67 "/usr/include/sys/select.h" 3 4 >typedef 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 4 >extern int select (int __nfds, fd_set *__restrict __readfds, > fd_set *__restrict __writefds, > fd_set *__restrict __exceptfds, > struct timeval *__restrict __timeout); ># 128 "/usr/include/sys/select.h" 3 4 ># 217 "/usr/include/sys/types.h" 2 3 4 > > ># 1 "/usr/include/sys/sysmacros.h" 1 3 4 ># 29 "/usr/include/sys/sysmacros.h" 3 4 >__extension__ >extern __inline unsigned int gnu_dev_major (unsigned long long int __dev) > ; >__extension__ >extern __inline unsigned int gnu_dev_minor (unsigned long long int __dev) > ; >__extension__ >extern __inline unsigned long long int gnu_dev_makedev (unsigned int __major, > unsigned int __minor) > ; > > >__extension__ extern __inline unsigned int >gnu_dev_major (unsigned long long int __dev) >{ > return ((__dev >> 8) & 0xfff) | ((unsigned int) (__dev >> 32) & ~0xfff); >} > >__extension__ extern __inline unsigned int >gnu_dev_minor (unsigned long long int __dev) >{ > return (__dev & 0xff) | ((unsigned int) (__dev >> 12) & ~0xff); >} > >__extension__ extern __inline unsigned long long int >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)); >} ># 220 "/usr/include/sys/types.h" 2 3 4 ># 231 "/usr/include/sys/types.h" 3 4 >typedef __blkcnt_t blkcnt_t; > > > >typedef __fsblkcnt_t fsblkcnt_t; > > > >typedef __fsfilcnt_t fsfilcnt_t; ># 266 "/usr/include/sys/types.h" 3 4 ># 1 "/usr/include/bits/pthreadtypes.h" 1 3 4 ># 24 "/usr/include/bits/pthreadtypes.h" 3 4 ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 25 "/usr/include/bits/pthreadtypes.h" 2 3 4 ># 51 "/usr/include/bits/pthreadtypes.h" 3 4 >typedef unsigned long int pthread_t; > > >typedef union >{ > char __size[36]; > long int __align; >} pthread_attr_t; > > > > >typedef union >{ > struct > { > int __lock; > unsigned int __count; > int __owner; > > > > > > int __kind; > > unsigned int __nusers; > > int __spins; > } __data; > char __size[24]; > long int __align; >} pthread_mutex_t; > >typedef union >{ > char __size[4]; > int __align; >} pthread_mutexattr_t; > > > > >typedef union >{ > struct > { > int __lock; > int __clock; > unsigned long long int __total_seq; > unsigned long long int __wakeup_seq; > unsigned long long int __woken_seq; > void *__mutex; > } __data; > char __size[48]; > 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; ># 267 "/usr/include/sys/types.h" 2 3 4 ># 417 "/usr/include/stdlib.h" 2 3 4 > > > > > > >extern long int random (void) ; > > >extern void srandom (unsigned int __seed) ; > > > > > >extern char *initstate (unsigned int __seed, char *__statebuf, > size_t __statelen) ; > > > >extern char *setstate (char *__statebuf) ; > > > > > > > >struct random_data > { > int32_t *fptr; > int32_t *rptr; > int32_t *state; > int rand_type; > int rand_deg; > int rand_sep; > int32_t *end_ptr; > }; > >extern int random_r (struct random_data *__restrict __buf, > int32_t *__restrict __result) ; > >extern int srandom_r (unsigned int __seed, struct random_data *__buf) ; > >extern int initstate_r (unsigned int __seed, char *__restrict __statebuf, > size_t __statelen, > struct random_data *__restrict __buf) ; > >extern int setstate_r (char *__restrict __statebuf, > struct random_data *__restrict __buf) ; > > > > > > >extern int rand (void) ; > >extern void srand (unsigned int __seed) ; > > > > >extern int rand_r (unsigned int *__seed) ; > > > > > > > >extern double drand48 (void) ; >extern double erand48 (unsigned short int __xsubi[3]) ; > > >extern long int lrand48 (void) ; >extern long int nrand48 (unsigned short int __xsubi[3]) ; > > >extern long int mrand48 (void) ; >extern long int jrand48 (unsigned short int __xsubi[3]) ; > > >extern void srand48 (long int __seedval) ; >extern unsigned short int *seed48 (unsigned short int __seed16v[3]) ; >extern void lcong48 (unsigned short int __param[7]) ; > > > > > >struct drand48_data > { > unsigned short int __x[3]; > unsigned short int __old_x[3]; > unsigned short int __c; > unsigned short int __init; > unsigned long long int __a; > }; > > >extern int drand48_r (struct drand48_data *__restrict __buffer, > double *__restrict __result) ; >extern int erand48_r (unsigned short int __xsubi[3], > struct drand48_data *__restrict __buffer, > double *__restrict __result) ; > > >extern int lrand48_r (struct drand48_data *__restrict __buffer, > long int *__restrict __result) ; >extern int nrand48_r (unsigned short int __xsubi[3], > struct drand48_data *__restrict __buffer, > long int *__restrict __result) ; > > >extern int mrand48_r (struct drand48_data *__restrict __buffer, > long int *__restrict __result) ; >extern int jrand48_r (unsigned short int __xsubi[3], > struct drand48_data *__restrict __buffer, > long int *__restrict __result) ; > > >extern int srand48_r (long int __seedval, struct drand48_data *__buffer) > ; > >extern int seed48_r (unsigned short int __seed16v[3], > struct drand48_data *__buffer) ; > >extern int lcong48_r (unsigned short int __param[7], > struct drand48_data *__buffer) ; ># 564 "/usr/include/stdlib.h" 3 4 > > > >extern void *realloc (void *__ptr, size_t __size) __attribute__ ((__malloc__)); > >extern void free (void *__ptr) ; > > > > >extern void cfree (void *__ptr) ; > > > ># 1 "/usr/include/alloca.h" 1 3 4 ># 25 "/usr/include/alloca.h" 3 4 ># 1 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 26 "/usr/include/alloca.h" 2 3 4 > > > > > > > >extern void *alloca (size_t __size) ; ># 579 "/usr/include/stdlib.h" 2 3 4 > > > > >extern void *valloc (size_t __size) __attribute__ ((__malloc__)); ># 592 "/usr/include/stdlib.h" 3 4 > > >extern void abort (void) __attribute__ ((__noreturn__)); > > > >extern int atexit (void (*__func) (void)) ; > > > > > >extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg) > ; > > > > > > >extern void exit (int __status) __attribute__ ((__noreturn__)); ># 624 "/usr/include/stdlib.h" 3 4 > > >extern char *getenv (__const char *__name) ; > > > > >extern char *__secure_getenv (__const char *__name) ; > > > > > >extern int putenv (char *__string) ; > > > > > >extern int setenv (__const char *__name, __const char *__value, int __replace) > ; > > >extern int unsetenv (__const char *__name) ; > > > > > > >extern int clearenv (void) ; ># 663 "/usr/include/stdlib.h" 3 4 >extern char *mktemp (char *__template) ; ># 674 "/usr/include/stdlib.h" 3 4 >extern int mkstemp (char *__template); ># 693 "/usr/include/stdlib.h" 3 4 >extern char *mkdtemp (char *__template) ; ># 702 "/usr/include/stdlib.h" 3 4 >extern int system (__const char *__command); ># 720 "/usr/include/stdlib.h" 3 4 >extern char *realpath (__const char *__restrict __name, > char *__restrict __resolved) ; > > > > > > >typedef int (*__compar_fn_t) (__const void *, __const void *); ># 738 "/usr/include/stdlib.h" 3 4 >extern void *bsearch (__const void *__key, __const void *__base, > size_t __nmemb, size_t __size, __compar_fn_t __compar); > > > >extern void qsort (void *__base, size_t __nmemb, size_t __size, > __compar_fn_t __compar); > > > >extern int abs (int __x) __attribute__ ((__const__)); >extern long int labs (long int __x) __attribute__ ((__const__)); ># 762 "/usr/include/stdlib.h" 3 4 >extern div_t div (int __numer, int __denom) > __attribute__ ((__const__)); >extern ldiv_t ldiv (long int __numer, long int __denom) > __attribute__ ((__const__)); ># 784 "/usr/include/stdlib.h" 3 4 >extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign) ; > > > > >extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign) ; > > > > >extern char *gcvt (double __value, int __ndigit, char *__buf) ; > > > > >extern char *qecvt (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign) ; >extern char *qfcvt (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign) ; >extern char *qgcvt (long double __value, int __ndigit, char *__buf) ; > > > > >extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign, char *__restrict __buf, > size_t __len) ; >extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt, > int *__restrict __sign, char *__restrict __buf, > size_t __len) ; > >extern int qecvt_r (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign, > char *__restrict __buf, size_t __len) ; >extern int qfcvt_r (long double __value, int __ndigit, > int *__restrict __decpt, int *__restrict __sign, > char *__restrict __buf, size_t __len) ; > > > > > > > >extern int mblen (__const char *__s, size_t __n) ; > > >extern int mbtowc (wchar_t *__restrict __pwc, > __const char *__restrict __s, size_t __n) ; > > >extern int wctomb (char *__s, wchar_t __wchar) ; > > > >extern size_t mbstowcs (wchar_t *__restrict __pwcs, > __const char *__restrict __s, size_t __n) ; > >extern size_t wcstombs (char *__restrict __s, > __const wchar_t *__restrict __pwcs, size_t __n) > ; ># 855 "/usr/include/stdlib.h" 3 4 >extern int rpmatch (__const char *__response) ; ># 916 "/usr/include/stdlib.h" 3 4 >extern int getloadavg (double __loadavg[], int __nelem) ; ># 54 "reg.c" 2 ># 1 "/usr/include/assert.h" 1 3 4 ># 55 "reg.c" 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-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/errno.h" 2 3 4 ># 5 "/usr/include/linux/errno.h" 2 3 4 ># 26 "/usr/include/bits/errno.h" 2 3 4 ># 38 "/usr/include/bits/errno.h" 3 4 >extern int *__errno_location (void) __attribute__ ((__const__)); ># 37 "/usr/include/errno.h" 2 3 4 ># 59 "/usr/include/errno.h" 3 4 ># 56 "reg.c" 2 ># 74 "reg.c" ># 1 "../src/reg.h" 1 ># 31 "../src/reg.h" ># 1 "../src/vr_stubs.h" 1 ># 35 "../src/vr_stubs.h" ># 1 "/usr/include/errno.h" 1 3 4 ># 36 "../src/vr_stubs.h" 2 ># 57 "../src/vr_stubs.h" ># 1 "/usr/include/sys/stat.h" 1 3 4 ># 37 "/usr/include/sys/stat.h" 3 4 ># 1 "/usr/include/time.h" 1 3 4 ># 38 "/usr/include/sys/stat.h" 2 3 4 ># 103 "/usr/include/sys/stat.h" 3 4 > > ># 1 "/usr/include/bits/stat.h" 1 3 4 ># 24 "/usr/include/bits/stat.h" 3 4 ># 1 "/usr/include/bits/wordsize.h" 1 3 4 ># 25 "/usr/include/bits/stat.h" 2 3 4 ># 45 "/usr/include/bits/stat.h" 3 4 >struct stat > { > __dev_t st_dev; > > unsigned short int __pad1; > __ino_t st_ino; > > > > __mode_t st_mode; > __nlink_t st_nlink; > __uid_t st_uid; > __gid_t st_gid; > __dev_t st_rdev; > unsigned short int __pad2; > > __off_t st_size; > > > > __blksize_t st_blksize; > > > __blkcnt_t st_blocks; ># 79 "/usr/include/bits/stat.h" 3 4 > struct timespec st_atim; > struct timespec st_mtim; > struct timespec st_ctim; ># 93 "/usr/include/bits/stat.h" 3 4 > unsigned long int __unused4; > unsigned long int __unused5; > }; ># 106 "/usr/include/sys/stat.h" 2 3 4 ># 207 "/usr/include/sys/stat.h" 3 4 >extern int stat (__const char *__restrict __file, > struct stat *__restrict __buf) ; > > > >extern int fstat (int __fd, struct stat *__buf) ; ># 235 "/usr/include/sys/stat.h" 3 4 >extern int lstat (__const char *__restrict __file, > struct stat *__restrict __buf) ; ># 255 "/usr/include/sys/stat.h" 3 4 >extern int chmod (__const char *__file, __mode_t __mode) ; > > > > > >extern int lchmod (__const char *__file, __mode_t __mode) ; > > > > >extern int fchmod (int __fd, __mode_t __mode) ; > > > > > >extern __mode_t umask (__mode_t __mask) ; ># 281 "/usr/include/sys/stat.h" 3 4 >extern int mkdir (__const char *__path, __mode_t __mode) ; > > > > > >extern int mknod (__const char *__path, __mode_t __mode, __dev_t __dev) > ; > > > > >extern int mkfifo (__const char *__path, __mode_t __mode) ; ># 319 "/usr/include/sys/stat.h" 3 4 >extern int __fxstat (int __ver, int __fildes, struct stat *__stat_buf) ; >extern int __xstat (int __ver, __const char *__filename, > struct stat *__stat_buf) ; >extern int __lxstat (int __ver, __const char *__filename, > struct stat *__stat_buf) ; ># 350 "/usr/include/sys/stat.h" 3 4 >extern int __xmknod (int __ver, __const char *__path, __mode_t __mode, > __dev_t *__dev) ; > > > > >extern __inline__ int stat (__const char *__path, > struct stat *__statbuf) >{ > return __xstat (3, __path, __statbuf); >} > > >extern __inline__ int lstat (__const char *__path, > struct stat *__statbuf) >{ > return __lxstat (3, __path, __statbuf); >} > > >extern __inline__ int fstat (int __fd, struct stat *__statbuf) >{ > return __fxstat (3, __fd, __statbuf); >} > > >extern __inline__ int mknod (__const char *__path, __mode_t __mode, > __dev_t __dev) >{ > return __xmknod (1, __path, __mode, &__dev); >} ># 408 "/usr/include/sys/stat.h" 3 4 ># 58 "../src/vr_stubs.h" 2 ># 123 "../src/vr_stubs.h" >typedef FILE * XP_File; ># 264 "../src/vr_stubs.h" ># 1 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" 1 ># 55 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" ># 1 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prcpucfg.h" 1 ># 56 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" 2 > > ># 1 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 1 3 4 ># 151 "/usr/lib/gcc-lib/powerpc-unknown-linux-gnu/3.3.3/include/stddef.h" 3 4 >typedef int ptrdiff_t; ># 59 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" 2 ># 232 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" ># 242 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef unsigned char PRUint8; ># 256 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef signed char PRInt8; ># 281 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef unsigned short PRUint16; >typedef short PRInt16; ># 306 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef unsigned int PRUint32; >typedef int PRInt32; ># 352 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef long long PRInt64; >typedef unsigned long long PRUint64; ># 376 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef int PRIntn; >typedef unsigned int PRUintn; ># 387 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef double PRFloat64; > > > > > > >typedef size_t PRSize; > > > > > > > >typedef PRInt32 PROffset32; >typedef PRInt64 PROffset64; > > > > > > > >typedef ptrdiff_t PRPtrdiff; > > > > > > > >typedef unsigned long PRUptrdiff; ># 429 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef PRIntn PRBool; ># 439 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef PRUint8 PRPackedBool; > > > > > >typedef enum { PR_FAILURE = -1, PR_SUCCESS = 0 } PRStatus; ># 472 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" >typedef long PRWord; >typedef unsigned long PRUword; ># 514 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" ># 1 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/obsolete/protypes.h" 1 ># 45 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/obsolete/protypes.h" >typedef PRUintn uintn; > >typedef PRIntn intn; ># 105 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/obsolete/protypes.h" >typedef PRUint64 uint64; ># 114 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/obsolete/protypes.h" >typedef PRUint32 uint32; ># 125 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/obsolete/protypes.h" >typedef PRUint16 uint16; > > > > > > > >typedef PRUint8 uint8; ># 142 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/obsolete/protypes.h" >typedef PRInt64 int64; ># 154 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/obsolete/protypes.h" >typedef PRInt32 int32; ># 168 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/obsolete/protypes.h" >typedef PRInt16 int16; ># 178 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/obsolete/protypes.h" >typedef PRInt8 int8; > > >typedef PRFloat64 float64; >typedef PRUptrdiff uptrdiff_t; >typedef PRUword uprword_t; >typedef PRWord prword_t; ># 515 "/var/tmp/portage/mozilla-firefox-0.9.1/work/mozilla/dist/include/nspr/prtypes.h" 2 ># 265 "../src/vr_stubs.h" 2 > > >typedef int XP_Bool; > >typedef struct stat XP_StatStruct; ># 284 "../src/vr_stubs.h" >extern char* globalRegName; >extern char* verRegName; > >extern void vr_findGlobalRegName(); >extern char* vr_findVerRegName(); > > > > >extern XP_File vr_fileOpen(const char *name, const char * mode); ># 32 "../src/reg.h" 2 ># 96 "../src/reg.h" >typedef int32 REGOFF; > >typedef struct _desc >{ > REGOFF location; > REGOFF name; > uint16 namelen; > uint16 type; > REGOFF left; > REGOFF down; > REGOFF value; > uint32 valuelen; > uint32 valuebuf; > REGOFF parent; >} REGDESC; ># 126 "../src/reg.h" >typedef struct _hdr >{ > uint32 magic; > uint16 verMajor; > uint16 verMinor; > REGOFF avail; > REGOFF root; >} REGHDR; ># 142 "../src/reg.h" >typedef XP_File FILEHANDLE; > >typedef struct _stdnodes { > REGOFF versions; > REGOFF users; > REGOFF common; > REGOFF current_user; > REGOFF privarea; >} STDNODES; > >typedef struct _regfile >{ > FILEHANDLE fh; > REGHDR hdr; > int refCount; > int hdrDirty; > int inInit; > int readOnly; > char * filename; > STDNODES rkeys; > struct _regfile *next; > struct _regfile *prev; > > > > >} REGFILE; > >typedef struct _reghandle >{ > uint32 magic; > REGFILE *pReg; >} REGHANDLE; ># 75 "reg.c" 2 ># 1 "../../../dist/include/libreg/NSReg.h" 1 ># 29 "../../../dist/include/libreg/NSReg.h" >typedef void (*nr_RegPackCallbackFunc) (void *userData, int32 bytes, int32 totalBytes); > >typedef int32 REGERR; >typedef int32 RKEY; >typedef uint32 REGENUM; >typedef void * HREG; > >typedef struct _reginfo >{ > uint16 size; > uint16 entryType; > uint32 entryLength; >} REGINFO; ># 120 "../../../dist/include/libreg/NSReg.h" ># 141 "../../../dist/include/libreg/NSReg.h" >int NR_RegSetBufferSize( > HREG hReg, > int bufsize > ); ># 158 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegOpen( > const char *filename, > HREG *hReg > ); ># 173 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegClose( > HREG hReg > ); ># 186 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegFlush( > HREG hReg > ); ># 201 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegIsWritable( > HREG hReg > ); > >REGERR NR_RegPack( > HREG hReg, > void *userData, > nr_RegPackCallbackFunc fn > ); ># 224 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegSetUsername( > const char *name > ); ># 240 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegGetUniqueName( > HREG hReg, > char* outbuf, > uint32 buflen > ); > > > > > > >REGERR NR_RegGetUsername( > char **name > ); ># 279 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegAddKey( > HREG hReg, > RKEY key, > char *path, > RKEY *newKey > ); ># 302 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegAddKeyRaw( > HREG hReg, > RKEY key, > char *keyname, > RKEY *newKey > ); ># 324 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegDeleteKey( > HREG hReg, > RKEY key, > char *path > ); ># 343 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegDeleteKeyRaw( > HREG hReg, > RKEY key, > char *keyname > ); ># 361 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegGetKey( > HREG hReg, > RKEY key, > const char *path, > RKEY *result > ); ># 380 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegGetKeyRaw( > HREG hReg, > RKEY key, > char *keyname, > RKEY *result > ); ># 405 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegEnumSubkeys( > HREG hReg, > RKEY key, > REGENUM *state, > char *buffer, > uint32 bufsize, > uint32 style > ); ># 432 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegGetEntryInfo( > HREG hReg, > RKEY key, > char *name, > REGINFO *info > ); ># 452 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegGetEntryString( > HREG hReg, > RKEY key, > char *name, > char *buffer, > uint32 bufsize > ); ># 473 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegGetEntry( > HREG hReg, > RKEY key, > char *name, > void *buffer, > uint32 *size > ); ># 494 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegSetEntryString( > HREG hReg, > RKEY key, > char *name, > char *buffer > ); ># 515 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegSetEntry( > HREG hReg, > RKEY key, > char *name, > uint16 type, > void *buffer, > uint32 size > ); ># 534 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegDeleteEntry( > HREG hReg, > RKEY key, > char *name > ); ># 554 "../../../dist/include/libreg/NSReg.h" >REGERR NR_RegEnumEntries( > HREG hReg, > RKEY key, > REGENUM *state, > char *buffer, > uint32 bufsize, > REGINFO *info > ); > > >void NR_ShutdownRegistry(void); >REGERR NR_StartupRegistry(void); ># 76 "reg.c" 2 ># 138 "reg.c" >static REGFILE *RegList = ((void *)0); >static int32 regStartCount = 0; >char *globalRegName = ((void *)0); >static char *user_name = ((void *)0); ># 356 "reg.c" >static void nr_AddNode(REGFILE* pReg); >static void nr_DeleteNode(REGFILE *pReg); >static REGFILE* vr_findRegFile(const char *filename); > > > >static void nr_AddNode(REGFILE* pReg) >{ > > pReg->next = RegList; > pReg->prev = ((void *)0); > > RegList = pReg; > > if ( pReg->next != ((void *)0) ) { > pReg->next->prev = pReg; > } >} > >static void nr_DeleteNode(REGFILE* pReg) >{ > > if ( pReg->prev == ((void *)0) ) { > RegList = pReg->next; > } > else { > pReg->prev->next = pReg->next; > } > > if ( pReg->next != ((void *)0) ) { > pReg->next->prev = pReg->prev; > } > > > > > > > if ((pReg->filename)) free((pReg->filename)); > free((pReg)); >} > >static REGFILE* vr_findRegFile(const char *filename) >{ > REGFILE *pReg; > > pReg = RegList; > while( pReg != ((void *)0) ) { > > if ( 0 == __extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p ((filename)) && __builtin_constant_p ((pReg->filename)) && (__s1_len = strlen ((filename)), __s2_len = strlen ((pReg->filename)), (!((size_t)(const void *)(((filename)) + 1) - (size_t)(const void *)((filename)) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(((pReg->filename)) + 1) - (size_t)(const void *)((pReg->filename)) == 1) || __s2_len >= 4)) ? memcmp ((__const char *) ((filename)), (__const char *) ((pReg->filename)), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p ((filename)) && ((size_t)(const void *)(((filename)) + 1) - (size_t)(const void *)((filename)) == 1) && (__s1_len = strlen ((filename)), __s1_len < 4) ? (__builtin_constant_p ((pReg->filename)) && ((size_t)(const void *)(((pReg->filename)) + 1) - (size_t)(const void *)((pReg->filename)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) ((filename)))[0] - ((__const unsigned char *) (__const char *)((pReg->filename)))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((filename)))[1] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((filename)))[2] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) ((filename)))[3] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ((pReg->filename)); register int __result = (((__const unsigned char *) (__const char *) ((filename)))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((filename)))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((filename)))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) ((filename)))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ((pReg->filename)) && ((size_t)(const void *)(((pReg->filename)) + 1) - (size_t)(const void *)((pReg->filename)) == 1) && (__s2_len = strlen ((pReg->filename)), __s2_len < 4) ? (__builtin_constant_p ((filename)) && ((size_t)(const void *)(((filename)) + 1) - (size_t)(const void *)((filename)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) ((filename)))[0] - ((__const unsigned char *) (__const char *)((pReg->filename)))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((filename)))[1] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((filename)))[2] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) ((filename)))[3] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) ((filename)); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ((pReg->filename)))[3]); } } __result; }))) : strcmp ((filename), (pReg->filename))))); }) ) { > > > > break; > } > pReg = pReg->next; > } > > return pReg; >} > > > > > > > >static REGERR nr_OpenFile(const char *path, FILEHANDLE *fh); >static REGERR nr_CloseFile(FILEHANDLE *fh); >static REGERR nr_ReadFile(FILEHANDLE fh, REGOFF offset, int32 len, void *buffer); >static REGERR nr_WriteFile(FILEHANDLE fh, REGOFF offset, int32 len, void *buffer); >static REGERR nr_LockRange(FILEHANDLE fh, REGOFF offset, int32 len); >static REGERR nr_UnlockRange(FILEHANDLE fh, REGOFF offset, int32 len); >static int32 nr_GetFileLength(FILEHANDLE fh); > > > >static REGERR nr_OpenFile(const char *path, FILEHANDLE *fh) >{ > ((void)0); > ((void)0); > > > (*fh) = vr_fileOpen(path, "rb+"); > if ( !((*fh) != ((void *)0)) ) > { > switch ((*__errno_location ())) > { > > > > case 2: > > return (9); > > > > > case 30: > case 13: > > > (*fh) = vr_fileOpen(path, "rb"); > if ( ((*fh) != ((void *)0)) ) > return (18); > else > return (1); > > default: > return (1); > } > } > > return (0); > >} ># 509 "reg.c" >static REGERR nr_CloseFile(FILEHANDLE *fh) >{ > > > > > ((void)0); > if ( ((*fh) != ((void *)0)) ) > fclose(*fh); > (*fh) = ((void *)0); > return (0); > >} > > > >static REGERR nr_ReadFile(FILEHANDLE fh, REGOFF offset, int32 len, void *buffer) >{ > > > > > > > int32 readlen; > REGERR err = (0); > > ((void)0); > ((void)0); > ((void)0); > > > > > > if (fseek((fh), (offset), (0)) != 0 ) { > err = (1); > } > else { > readlen = fread((buffer), 1, (len), (fh)); > > if (readlen < 0) { > > > if ((*__errno_location ()) == 9) > > > > err = (1); > else > > err = (4); > } > else if (readlen < len) { ># 578 "reg.c" > err = (4); > > } > } > > return err; > >} > > > >static REGERR nr_WriteFile(FILEHANDLE fh, REGOFF offset, int32 len, void *buffer) >{ > > > > > > ((void)0); > ((void)0); > ((void)0); > > if (fseek((fh), (offset), (0)) != 0) > return (1); > > if ((int32)fwrite((buffer), 1, (len), (fh)) != len) > { > > return (1); > } > > return (0); > >} > > > >static REGERR nr_LockRange(FILEHANDLE fh, REGOFF offset, int32 len) >{ > > > return (0); > >} > > > >static REGERR nr_UnlockRange(FILEHANDLE fh, REGOFF offset, int32 len) >{ > > > return (0); > >} > > > > >static int32 nr_GetFileLength(FILEHANDLE fh) >{ > int32 length; > int32 curpos; > > curpos = ftell(fh); > fseek((fh), (0), (2)); > length = ftell(fh); > fseek((fh), (curpos), (0)); > return length; > >} ># 661 "reg.c" >static uint32 nr_ReadLong(char *buffer); >static uint16 nr_ReadShort(char *buffer); >static void nr_WriteLong(uint32 num, char *buffer); >static void nr_WriteShort(uint16 num, char *buffer); > > > > >static uint16 nr_ReadShort(char *buffer) >{ > uint16 val; > uint8 *p = (uint8*)buffer; > > val = (uint16)(*p + (uint16)( *(p+1) * 0x100 )); > > return val; >} > > > >static uint32 nr_ReadLong(char *buffer) >{ > uint32 val; > uint8 *p = (uint8*)buffer; > > val = *p > + (uint32)(*(p+1) * 0x100L) > + (uint32)(*(p+2) * 0x10000L ) > + (uint32)(*(p+3) * 0x1000000L ); > > return val; >} > > > >static void nr_WriteLong(uint32 num, char *buffer) >{ > uint8 *p = (uint8*)buffer; > *p++ = (uint8)(num & 0x000000FF); > num /= 0x100; > *p++ = (uint8)(num & 0x000000FF); > num /= 0x100; > *p++ = (uint8)(num & 0x000000FF); > num /= 0x100; > *p = (uint8)(num & 0x000000FF); >} > > > >static void nr_WriteShort(uint16 num, char *buffer) >{ > uint8 *p = (uint8*)buffer; > > *p = (uint8)(num & 0x00FF); > *(p+1) = (uint8)(num / 0x100); >} > > > > > > > >static REGERR nr_ReadHdr(REGFILE *reg); >static REGERR nr_WriteHdr(REGFILE *reg); >static REGERR nr_CreateRoot(REGFILE *reg); > >static REGERR nr_Lock(REGFILE *reg); >static REGERR nr_Unlock(REGFILE *reg); > >static REGERR nr_ReadDesc(REGFILE *reg, REGOFF offset, REGDESC *desc); >static REGERR nr_ReadName(REGFILE *reg, REGDESC *desc, uint32 buflen, char *buf); >static REGERR nr_ReadData(REGFILE *reg, REGDESC *desc, uint32 buflen, char *buf); > >static REGERR nr_WriteDesc(REGFILE *reg, REGDESC *desc); >static REGERR nr_WriteString(REGFILE *reg, char *string, REGDESC *desc); >static REGERR nr_WriteData(REGFILE *reg, char *string, uint32 len, REGDESC *desc); > >static REGERR nr_AppendDesc(REGFILE *reg, REGDESC *desc, REGOFF *result); >static REGERR nr_AppendName(REGFILE *reg, char *name, REGDESC *desc); >static REGERR nr_AppendString(REGFILE *reg, char *string, REGDESC *desc); >static REGERR nr_AppendData(REGFILE *reg, char *string, uint32 len, REGDESC *desc); > >static XP_Bool nr_IsValidUTF8(char *string); > > > > >static REGERR nr_ReadHdr(REGFILE *reg) >{ > > int err; > long filelength; > char hdrBuf[sizeof(REGHDR)]; > > ((void)0); > reg->hdrDirty = 0; > > err = nr_ReadFile(reg->fh, 0, sizeof(REGHDR), &hdrBuf); > > switch (err) > { > case (4): > > err = nr_CreateRoot(reg); > break; > > case (0): > > reg->hdr.magic = nr_ReadLong ( hdrBuf + 0 ); > reg->hdr.verMajor = nr_ReadShort( hdrBuf + 4 ); > reg->hdr.verMinor = nr_ReadShort( hdrBuf + 6 ); > reg->hdr.avail = nr_ReadLong ( hdrBuf + 8 ); > reg->hdr.root = nr_ReadLong ( hdrBuf + 12 ); > > > if (reg->hdr.magic != 0x76644441L) { > err = (7); > break; > } > > > > > > > > if ( reg->hdr.verMajor > 1 ) { > err = (13); > break; > } > > > if ( reg->inInit && !(reg->readOnly) ) { > filelength = nr_GetFileLength(reg->fh); > if (reg->hdr.avail != filelength) > { > reg->hdr.avail = filelength; > reg->hdrDirty = 1; > > > > } > } > > break; > > default: > > ((void)0); > err = (1); > break; > } > > return err; > >} > > > >static REGERR nr_WriteHdr(REGFILE *reg) >{ > REGERR err; > char hdrBuf[sizeof(REGHDR)]; > > ((void)0); > > if (reg->readOnly) > return (18); > > > nr_WriteLong ( reg->hdr.magic, hdrBuf + 0 ); > nr_WriteShort( reg->hdr.verMajor, hdrBuf + 4 ); > nr_WriteShort( reg->hdr.verMinor, hdrBuf + 6 ); > nr_WriteLong ( reg->hdr.avail, hdrBuf + 8 ); > nr_WriteLong ( reg->hdr.root, hdrBuf + 12 ); > > > err = nr_WriteFile(reg->fh, 0, sizeof(hdrBuf), &hdrBuf); > > if (err == (0)) > reg->hdrDirty = 0; > > return err; > >} > > > >static REGERR nr_CreateRoot(REGFILE *reg) >{ > > REGERR err; > REGDESC root; > > ((void)0); > > > reg->hdr.magic = 0x76644441L; > reg->hdr.verMajor = 1; > reg->hdr.verMinor = 2; > reg->hdr.root = 0; > reg->hdr.avail = 128; > > > root.location = 0; > root.left = 0; > root.value = 0; > root.down = 0; > root.type = (1); > root.valuelen = 0; > root.valuebuf = 0; > root.parent = 0; > > err = nr_AppendName(reg, "/", &root); > if (err != (0)) > return err; > > err = nr_AppendDesc(reg, &root, ®->hdr.root); > if (err != (0)) > return err; > > return nr_WriteHdr(reg); > > > >} > > > >static REGERR nr_Lock(REGFILE *reg) >{ > REGERR status; > > > status = nr_LockRange(reg->fh, 0, sizeof(REGHDR)); > > if (status == (0)) > { > > ((void)0); ># 910 "reg.c" > } > > return status; >} > > > >static REGERR nr_Unlock(REGFILE *reg) >{ > ((void)0); > > return nr_UnlockRange(reg->fh, 0, sizeof(REGHDR)); >} > > > >static REGERR nr_ReadDesc(REGFILE *reg, REGOFF offset, REGDESC *desc) >{ > > REGERR err; > char descBuf[ 32 ]; > > ((void)0); > ((void)0); > ((void)0); > ((void)0); > > err = nr_ReadFile(reg->fh, offset, 32, &descBuf); > if (err == (0)) > { > desc->location = nr_ReadLong ( descBuf + 0 ); > desc->name = nr_ReadLong ( descBuf + 4 ); > desc->namelen = nr_ReadShort( descBuf + 8 ); > desc->type = nr_ReadShort( descBuf + 10 ); > desc->left = nr_ReadLong ( descBuf + 12 ); > desc->value = nr_ReadLong ( descBuf + 20 ); > desc->valuelen = nr_ReadLong ( descBuf + 24 ); > desc->parent = nr_ReadLong ( descBuf + 28 ); > > if ( ( (desc->type) & (0x0010) ) ) { > desc->down = 0; > desc->valuebuf = nr_ReadLong( descBuf + 16 ); > } > else { > desc->down = nr_ReadLong( descBuf + 16 ); > desc->valuebuf = 0; > } > > if (desc->location != offset) > err = (5); > else if ( desc->type & (0x0080) ) > err = (14); > } > > return err; > >} > > > >static REGERR nr_ReadName(REGFILE *reg, REGDESC *desc, uint32 buflen, char *buf) >{ > > REGERR err; > > ((void)0); > ((void)0); > ((void)0); > ((void)0); > ((void)0); > > if ( desc->namelen > buflen ) > return (11); > > err = nr_ReadFile(reg->fh, desc->name, desc->namelen, buf); > > buf[buflen-1] = '\0'; > > return err; > >} > > > >static REGERR nr_ReadData(REGFILE *reg, REGDESC *desc, uint32 buflen, char *buf) >{ > > REGERR err; > > ((void)0); > ((void)0); > ((void)0); > ((void)0); > ((void)0); > > if ( desc->valuelen > buflen ) > return (11); > > err = nr_ReadFile(reg->fh, desc->value, desc->valuelen, buf); > > return err; > >} > > > >static REGERR nr_WriteDesc(REGFILE *reg, REGDESC *desc) >{ > char descBuf[ 32 ]; > > ((void)0); > ((void)0); > ((void)0); > ((void)0); > > if (reg->readOnly) > return (18); > > > nr_WriteLong ( desc->location, descBuf + 0 ); > nr_WriteLong ( desc->name, descBuf + 4 ); > nr_WriteShort( desc->namelen, descBuf + 8 ); > nr_WriteShort( desc->type, descBuf + 10 ); > nr_WriteLong ( desc->left, descBuf + 12 ); > nr_WriteLong ( desc->value, descBuf + 20 ); > nr_WriteLong ( desc->valuelen, descBuf + 24 ); > nr_WriteLong ( desc->parent, descBuf + 28 ); > > if ( ( (desc->type) & (0x0010) ) ) { > ((void)0); > nr_WriteLong( desc->valuebuf, descBuf + 16 ); > } > else { > ((void)0); > nr_WriteLong( desc->down, descBuf + 16 ); > } > > return nr_WriteFile(reg->fh, desc->location, 32, descBuf); >} > > > >static REGERR nr_AppendDesc(REGFILE *reg, REGDESC *desc, REGOFF *result) >{ > > REGERR err; > char descBuf[ 32 ]; > > ((void)0); > ((void)0); > ((void)0); > > *result = 0; > > if (reg->readOnly) > return (18); > > desc->location = reg->hdr.avail; > > > nr_WriteLong ( desc->location, descBuf + 0 ); > nr_WriteLong ( desc->name, descBuf + 4 ); > nr_WriteShort( desc->namelen, descBuf + 8 ); > nr_WriteShort( desc->type, descBuf + 10 ); > nr_WriteLong ( desc->left, descBuf + 12 ); > nr_WriteLong ( desc->value, descBuf + 20 ); > nr_WriteLong ( desc->valuelen, descBuf + 24 ); > nr_WriteLong ( desc->parent, descBuf + 28 ); > > if ( ( (desc->type) & (0x0010) ) ) { > ((void)0); > nr_WriteLong( desc->valuebuf, descBuf + 16 ); > } > else { > ((void)0); > nr_WriteLong( desc->down, descBuf + 16 ); > } > > err = nr_WriteFile(reg->fh, reg->hdr.avail, 32, descBuf); > > if (err == (0)) > { > *result = reg->hdr.avail; > reg->hdr.avail += 32; > reg->hdrDirty = 1; > > > > } > > return err; > >} > > > >static REGERR nr_AppendName(REGFILE *reg, char *name, REGDESC *desc) >{ > REGERR err; > int len; > char *p; > > ((void)0); > ((void)0); > ((void)0); > > if (!nr_IsValidUTF8(name)) > return (19); > if (reg->readOnly) > return (18); > > len = strlen(name) + 1; > > > if ( len == 1 ) > return (6); > > if ( len > (512) ) > return (12); > > for ( p = name; (*p != 0); p++ ) { > if ( ( ((unsigned char)(*p) < 0x20) ) ) > return (17); > } > > > err = nr_WriteFile(reg->fh, reg->hdr.avail, len, name); > > > if (err == (0)) > { > desc->namelen = (uint16)len; > desc->name = reg->hdr.avail; > reg->hdr.avail += len; > reg->hdrDirty = 1; > > > > } > > return err; > >} > > > >static REGERR nr_WriteString(REGFILE *reg, char *string, REGDESC *desc) >{ > uint32 len; > > ((void)0); > if (!nr_IsValidUTF8(string)) > return (19); > if (reg->readOnly) > return (18); > len = strlen(string) + 1; > > return nr_WriteData( reg, string, len, desc ); > >} > > > >static REGERR nr_WriteData(REGFILE *reg, char *string, uint32 len, REGDESC *desc) >{ > REGERR err; > > ((void)0); > ((void)0); > ((void)0); > > if (reg->readOnly) > return (18); > > if ( len == 0 ) > return (6); > > if ( len > (0x7FFF) ) > return (12); > > > if ( len <= desc->valuebuf ) { > err = nr_WriteFile( reg->fh, desc->value, len, string ); > if ( err == (0) ) { > desc->valuelen = len; > } > } > else { > > err = nr_AppendData( reg, string, len, desc ); > } > > return err; > >} > > > >static REGERR nr_AppendString(REGFILE *reg, char *string, REGDESC *desc) >{ > uint32 len; > > ((void)0); > if (!nr_IsValidUTF8(string)) > return (19); > if (reg->readOnly) > return (18); > len = strlen(string) + 1; > > return nr_AppendData( reg, string, len, desc ); > >} > > > >static REGERR nr_AppendData(REGFILE *reg, char *string, uint32 len, REGDESC *desc) >{ > REGERR err; > > ((void)0); > ((void)0); > ((void)0); > > if (reg->readOnly) > return (18); > > if ( len == 0 ) > return (6); > > if ( len > (0x7FFF) ) > return (12); > > > err = nr_WriteFile(reg->fh, reg->hdr.avail, len, string); > if (err == (0)) > { > desc->value = reg->hdr.avail; > desc->valuelen = len; > desc->valuebuf = len; > > reg->hdr.avail += len; > reg->hdrDirty = 1; > > > > } > > return err; > >} > >static XP_Bool nr_IsValidUTF8(char *string) >{ > int follow = 0; > char *c; > unsigned char ch; > > ((void)0); > if ( !string ) > return 0; > > for ( c = string; *c != '\0'; c++ ) > { > ch = (unsigned char)*c; > if( follow == 0 ) > { > > if ( ch <= 0x7F ) > { > > } > else if ((0xC0 & ch) == 0x80) > { > > return 0; > } > else if ((0xE0 & ch) == 0xC0) > { > follow = 1; > } > else if ((0xF0 & ch) == 0xE0) > { > follow = 2; > } > else > { > > return 0; > } > } > else > { > ((void)0); > if ((0xC0 & ch) == 0x80) > { > > follow--; > } > else > { > > return 0; > } > } > } > > if ( follow != 0 ) > { > > return 0; > } > > return 1; >} > > > > > >static REGERR nr_NextName(const char *pPath, char *buf, uint32 bufsize, const char **newPath); >static REGERR nr_RemoveName(char *path); >static REGERR nr_CatName(REGFILE *reg, REGOFF node, char *path, uint32 bufsize, > REGDESC *desc); >static REGERR nr_ReplaceName(REGFILE *reg, REGOFF node, char *path, > uint32 bufsize, REGDESC *desc); > > > > > > >static REGERR nr_NextName(const char *pPath, char *buf, uint32 bufsize, const char **newPath) >{ > uint32 len = 0; > REGERR err = (0); > > > ((void)0); > > *newPath = ((void *)0); > *buf = '\0'; > > if ( pPath==((void *)0) || *pPath=='\0' ) > return (2); > > > if ( *pPath == '/' ) { > pPath++; > > if ( *pPath == '\0' ) > return (2); > } > > > if ( *pPath == '/' || *pPath == ' ' ) > return (17); > > > while ( *pPath != '\0' && *pPath != '/' ) > { > if ( len == bufsize ) { > err = (12); > break; > } > if ( *pPath < ' ' && *pPath > 0 ) > return (17); > > *buf++ = *pPath++; > len++; > } > *buf = '\0'; > > > if ( ' ' == *(buf-1) ) > return (17); > > > *newPath = pPath; > > return err; > >} > > > > >static REGERR nr_CatName(REGFILE *reg, REGOFF node, char *path, uint32 bufsize, REGDESC *desc) >{ > REGERR err = (0); > > char *p; > uint32 len = strlen(path); > > if (len > 0) > { > p = &path[len-1]; > if (*p != '/') > { > if ( len < bufsize ) { > p++; > *p = '/'; > len++; > } > else > err = (11); > } > p++; > } > else > p = path; > > if ( err == (0) ) { > err = nr_ReadDesc( reg, node, desc ); > if ( err == (0) ) { > err = nr_ReadName( reg, desc, bufsize-len, p ); > } > } > > return err; > >} > > > >static REGERR nr_ReplaceName(REGFILE *reg, REGOFF node, char *path, uint32 bufsize, REGDESC *desc) >{ > > > > > char *p; > uint32 len; > REGERR err; > > ((void)0); > > len = strlen(path); > if ( len > bufsize ) > return (6); > > if ( len > 0 ) { > p = &path[len-1]; > > while ((p > path) && (*p != '/')) { > --p; > --len; > } > if ( *p == '/' ) { > p++; > len++; > } > } > else > p = path; > > > err = nr_ReadDesc( reg, node, desc ); > if ( err == (0) ) { > err = nr_ReadName( reg, desc, bufsize-len, p ); > } > > return err; > >} > > >static REGERR nr_RemoveName(char *path) >{ ># 1487 "reg.c" > int len = strlen(path); > char *p; > if (len < 1) > return (2); > > p = &path[len-1]; > > if (*p == '/') > p--; > > while ((p > path) && (*p != '/')) > p--; > > > > > > *p = '\0'; > return (0); > >} > > > > > > > >static REGERR nr_Find(REGFILE *reg, REGOFF offParent, const char *pPath, > REGDESC *pDesc, REGOFF *pPrev, REGOFF *pParent, XP_Bool raw); > >static REGERR nr_FindAtLevel(REGFILE *reg, REGOFF offFirst, const char *pName, > REGDESC *pDesc, REGOFF *pOffPrev); > >static REGERR nr_CreateSubKey(REGFILE *reg, REGOFF parent, REGDESC *pDesc, > char *name); >static REGERR nr_CreateEntryString(REGFILE *reg, REGDESC *pParent, > char *name, char *value); >static REGERR nr_CreateEntry(REGFILE *reg, REGDESC *pParent, char *name, > uint16 type, char *buffer, uint32 length); > > > > >static REGERR nr_Find(REGFILE *reg, > REGOFF offParent, > const char *pPath, > REGDESC *pDesc, > REGOFF *pPrev, > REGOFF *pParent, > XP_Bool raw) >{ > > REGERR err; > REGDESC desc; > REGOFF offPrev = 0; > char namebuf[(512)]; > const char *p; > > ((void)0); > ((void)0); > ((void)0); > > if (pPrev) > *pPrev = 0; > if (pParent) > *pParent = 0; > > > err = nr_ReadDesc( reg, offParent, &desc); > > if (raw == 1) { > if ( err == (0) ) { > > offParent = desc.location; > > err = nr_FindAtLevel(reg, desc.down, pPath, &desc, &offPrev); > } > } > else { > > p = pPath; > while ( err == (0) ) > { > err = nr_NextName(p, namebuf, sizeof(namebuf), &p); > > if ( err == (0) ) { > > offParent = desc.location; > > err = nr_FindAtLevel(reg, desc.down, namebuf, &desc, &offPrev); > } > } > } > > if ( (raw == 0 && err == (2)) || > (raw == 1 && err == (0)) ) { > > err = (0); > > if (pDesc) { > memcpy((pDesc),(&desc),sizeof(REGDESC)); > } > if (pPrev) { > *pPrev = offPrev; > } > if (pParent) { > *pParent = offParent; > } > } > > return err; > >} ># 1619 "reg.c" >static REGERR nr_FindAtLevel(REGFILE *reg, > REGOFF offset, > const char *pName, > REGDESC *pDesc, > REGOFF *pOffPrev) >{ > char namebuf[(512)]; > REGDESC desc; > REGERR err; > REGOFF prev = 0; > > > ((void)0); > ((void)0); > ((void)0); > ((void)0); > > while ( offset != 0 ) > { > > err = nr_ReadDesc(reg, offset, &desc); > if (err != (0)) > return err; > > err = nr_ReadName(reg, &desc, sizeof(namebuf), namebuf); > if (err != (0)) > return err; > > > if (__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p ((namebuf)) && __builtin_constant_p ((pName)) && (__s1_len = strlen ((namebuf)), __s2_len = strlen ((pName)), (!((size_t)(const void *)(((namebuf)) + 1) - (size_t)(const void *)((namebuf)) == 1) || __s1_len >= 4) && (!((size_t)(const void *)(((pName)) + 1) - (size_t)(const void *)((pName)) == 1) || __s2_len >= 4)) ? memcmp ((__const char *) ((namebuf)), (__const char *) ((pName)), (__s1_len < __s2_len ? __s1_len : __s2_len) + 1) : (__builtin_constant_p ((namebuf)) && ((size_t)(const void *)(((namebuf)) + 1) - (size_t)(const void *)((namebuf)) == 1) && (__s1_len = strlen ((namebuf)), __s1_len < 4) ? (__builtin_constant_p ((pName)) && ((size_t)(const void *)(((pName)) + 1) - (size_t)(const void *)((pName)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) ((namebuf)))[0] - ((__const unsigned char *) (__const char *)((pName)))[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((namebuf)))[1] - ((__const unsigned char *) (__const char *) ((pName)))[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((namebuf)))[2] - ((__const unsigned char *) (__const char *) ((pName)))[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) ((namebuf)))[3] - ((__const unsigned char *) (__const char *) ((pName)))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s2 = (__const unsigned char *) (__const char *) ((pName)); register int __result = (((__const unsigned char *) (__const char *) ((namebuf)))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((namebuf)))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((namebuf)))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) ((namebuf)))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p ((pName)) && ((size_t)(const void *)(((pName)) + 1) - (size_t)(const void *)((pName)) == 1) && (__s2_len = strlen ((pName)), __s2_len < 4) ? (__builtin_constant_p ((namebuf)) && ((size_t)(const void *)(((namebuf)) + 1) - (size_t)(const void *)((namebuf)) == 1) ? (__extension__ ({ register int __result = (((__const unsigned char *) (__const char *) ((namebuf)))[0] - ((__const unsigned char *) (__const char *)((pName)))[0]); if (__s2_len > 0 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((namebuf)))[1] - ((__const unsigned char *) (__const char *) ((pName)))[1]); if (__s2_len > 1 && __result == 0) { __result = (((__const unsigned char *) (__const char *) ((namebuf)))[2] - ((__const unsigned char *) (__const char *) ((pName)))[2]); if (__s2_len > 2 && __result == 0) __result = (((__const unsigned char *) (__const char *) ((namebuf)))[3] - ((__const unsigned char *) (__const char *) ((pName)))[3]); } } __result; })) : (__extension__ ({ __const unsigned char *__s1 = (__const unsigned char *) (__const char *) ((namebuf)); register int __result = __s1[0] - ((__const unsigned char *) (__const char *) ((pName)))[0]; if (__s2_len > 0 && __result == 0) { __result = (__s1[1] - ((__const unsigned char *) (__const char *) ((pName)))[1]); if (__s2_len > 1 && __result == 0) { __result = (__s1[2] - ((__const unsigned char *) (__const char *) ((pName)))[2]); if (__s2_len > 2 && __result == 0) __result = (__s1[3] - ((__const unsigned char *) (__const char *) ((pName)))[3]); } } __result; }))) : strcmp ((namebuf), (pName))))); }) == 0) { > > break; > } > > > prev = offset; > offset = desc.left; > } > > if ( pDesc != ((void *)0) && (prev || offset)) { > > memcpy((pDesc),(&desc),sizeof(REGDESC)); > } > if ( pOffPrev != ((void *)0) ) { > *pOffPrev = prev; > } > > if ( offset != 0 ) > return (0); > else > return (3); >} > > > >static REGERR nr_CreateSubKey(REGFILE *reg, > REGOFF parent, > REGDESC *pDesc, > char *name) >{ > > > > REGDESC desc; > REGERR err; > > ((void)0); > ((void)0); > ((void)0); > > err = nr_AppendName(reg, name, &desc); > if (err != (0)) > return err; > > desc.type = (1); > desc.left = 0; > desc.down = 0; > desc.value = 0; > desc.valuelen = 0; > desc.valuebuf = 0; > desc.parent = parent; > > if ( parent == pDesc->location ) { > > err = nr_AppendDesc(reg, &desc, &pDesc->down); > } > else { > > ((void)0); > err = nr_AppendDesc(reg, &desc, &pDesc->left); > } > if (err != (0)) > return err; > > > err = nr_WriteDesc(reg, pDesc); > memcpy((pDesc),(&desc),sizeof(REGDESC)); > > return err; > >} > > > >static REGERR nr_CreateEntryString(REGFILE *reg, REGDESC *pParent, char *name, char *value) >{ > REGDESC desc; > REGERR err; > > ((void)0); > ((void)0); > ((void)0); > ((void)0); > > memset((&desc), (0), (sizeof(REGDESC))); > > err = nr_AppendName(reg, name, &desc); > if (err != (0)) > return err; > > err = nr_AppendString(reg, value, &desc); > if (err != (0)) > return err; > > desc.type = ((0x0010) + 1); > desc.left = pParent->value; > desc.down = 0; > desc.parent = pParent->location; > > err = nr_AppendDesc(reg, &desc, &pParent->value); > if (err != (0)) > return err; > > > > return nr_WriteDesc(reg, pParent); > >} > > > >static REGERR nr_CreateEntry(REGFILE *reg, REGDESC *pParent, char *name, > uint16 type, char *value, uint32 length) >{ > REGDESC desc; > REGERR err; > > ((void)0); > ((void)0); > ((void)0); > ((void)0); > > memset((&desc), (0), (sizeof(REGDESC))); > > err = nr_AppendName(reg, name, &desc); > if (err != (0)) > return err; > > err = nr_AppendData(reg, value, length, &desc); > if (err != (0)) > return err; > > desc.type = type; > desc.left = pParent->value; > desc.down = 0; > desc.parent = pParent->location; > > err = nr_AppendDesc(reg, &desc, &pParent->value); > if (err != (0)) > return err; > > > > return nr_WriteDesc(reg, pParent); > >} ># 1803 "reg.c" >static REGOFF nr_TranslateKey( REGFILE *reg, RKEY key ); >static REGERR nr_InitStdRkeys( REGFILE *reg ); >static XP_Bool nr_ProtectedNode( REGFILE *reg, REGOFF key ); >static REGERR nr_RegAddKey( REGFILE *reg, RKEY key, char *path, RKEY *newKey, XP_Bool raw ); >static REGERR nr_RegDeleteKey( REGFILE *reg, RKEY key, char *path, XP_Bool raw ); >static REGERR nr_RegOpen( const char *filename, HREG *hReg ); >static REGERR nr_RegClose( HREG hReg ); >static char* nr_GetUsername(); >static const char* nr_GetRegName (const char *name); >static int nr_RegSetBufferSize( HREG hReg, int bufsize ); > > > > >static REGOFF nr_TranslateKey( REGFILE *reg, RKEY key ) >{ > REGOFF retKey = 0; > > > if ( key < 128 ) { > > switch (key) > { > case (0x20): > retKey = reg->hdr.root; > break; > > case (0x21): > retKey = reg->rkeys.versions; > break; > > case (0x01): > retKey = reg->rkeys.users; > break; > > case (0x02): > retKey = reg->rkeys.common; > break; ># 1874 "reg.c" > case (0x04): > retKey = reg->rkeys.privarea; > break; > > default: > > retKey = 0; > break; > } > } > else { > > retKey = (REGOFF)key; > } > return ( retKey ); >} > > > >static REGERR nr_InitStdRkeys( REGFILE *reg ) >{ > REGERR err = (0); > RKEY key; > > ((void)0); > > > memset((®->rkeys), (0), (sizeof(STDNODES))); > > > > > > > err = nr_RegAddKey( reg, reg->hdr.root, "Users", &key, 0 ); > if ( err != (0) ) > return err; > reg->rkeys.users = key; > > > err = nr_RegAddKey( reg, reg->hdr.root, "Common", &key, 0 ); > if ( err != (0) ) > return err; > reg->rkeys.common = key; > > > err = nr_RegAddKey( reg, reg->hdr.root, "Version Registry", &key, 0 ); > if ( err != (0) ) > return err; > reg->rkeys.versions = key; > > > > > > err = nr_RegAddKey( reg, reg->hdr.root, "Private Arenas", &key, 0 ); > if ( err != (0) ) > return err; > reg->rkeys.privarea = key; > > return err; >} > > > >static XP_Bool nr_ProtectedNode( REGFILE *reg, REGOFF key ) >{ > if ( (key == reg->hdr.root) || > (key == reg->rkeys.users) || > (key == reg->rkeys.versions) || > (key == reg->rkeys.common) || > (key == reg->rkeys.current_user) ) > { > return 1; > } > else > return 0; >} > > > >static REGERR nr_RegAddKey( REGFILE *reg, RKEY key, char *path, RKEY *newKey, XP_Bool raw ) >{ > REGERR err; > REGDESC desc; > REGOFF start; > REGOFF parent; > char namebuf[(512)]; > char *p; > > ((void)0); > ((void)0); > ((void)0); > ((void)0); > ((void)0); > > > start = nr_TranslateKey( reg, key ); > if ( start == 0 ) > return (6); > > > err = nr_ReadDesc( reg, start, &desc ); > > if (raw == 1) { > if ( err == (0)) { > > parent = desc.location; > err = nr_FindAtLevel(reg, desc.down, path, &desc, 0); > > > if ( err == (3) ) { > > err = nr_CreateSubKey(reg, parent, &desc, path); > } > } > } > else { > > p = path; > while ( err == (0) ) { > > > err = nr_NextName(p, namebuf, sizeof(namebuf), &p); > if ( err == (0) ) { > > parent = desc.location; > err = nr_FindAtLevel(reg, desc.down, namebuf, &desc, 0); > > > if ( err == (3) ) { > > err = nr_CreateSubKey(reg, parent, &desc, namebuf); > } > } > } > } > > > if ( (raw == 0 && err == (2)) || > (raw == 1 && err == (0)) ) > { > err = (0); > > > if ( newKey != ((void *)0) ) { > *newKey = desc.location; > } > } > > return err; > >} > > > > >static REGERR nr_RegDeleteKey( REGFILE *reg, RKEY key, char *path, XP_Bool raw ) >{ > REGERR err; > REGOFF start; > REGDESC desc; > REGDESC predecessor; > REGOFF offPrev; > REGOFF offParent; > REGOFF* link; > > ((void)0); > ((void)0); > ((void)0); > > start = nr_TranslateKey( reg, key ); > if ( path == ((void *)0) || *path == '\0' || start == 0 ) > return (6); > > > err = nr_Find( reg, start, path, &desc, &offPrev, &offParent, raw ); > if ( err == (0) ) { > > ((void)0); > > > if ( (desc.down == 0) && !nr_ProtectedNode( reg, desc.location ) ) { > > > if ( offPrev == 0 ) { > > err = nr_ReadDesc( reg, offParent, &predecessor ); > link = &(predecessor.down); > } > else { > > err = nr_ReadDesc( reg, offPrev, &predecessor ); > link = &(predecessor.left); > } > > > if (err == (0)) { > ((void)0); > > > *link = desc.left; > > > err = nr_WriteDesc( reg, &predecessor ); > if ( err == (0) ) { > > > > desc.type |= (0x0080); > err = nr_WriteDesc( reg, &desc ); > } > } > } > else { > > err = (1); > } > } > > return err; > >} > > > >static int nr_RegSetBufferSize( HREG hReg, int bufsize ) >{ > REGERR err = (0); > REGHANDLE* reghnd = (REGHANDLE*)hReg; > REGFILE* reg; > XP_Bool needDelete = 0; > int newSize; > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return -1; > > reg = reghnd->pReg; > > ((void)0); > > newSize = (-1); > > ((void)0); > > return newSize; >} > > > >static REGERR nr_RegOpen( const char *filename, HREG *hReg ) >{ > REGERR status = (0); > REGFILE *pReg; > REGHANDLE *pHandle; > > ((void)0); > > > if ( hReg == ((void *)0) ) { > return (6); > } > *hReg = ((void *)0); > > > filename = nr_GetRegName( filename ); > if (filename == ((void *)0)) { > filename = ""; > } > pReg = vr_findRegFile( filename ); > > > if (pReg == ((void *)0)) { > > > pReg = (REGFILE*)malloc((sizeof(REGFILE))); > if ( pReg == ((void *)0) ) { > status = (10); > goto bail; > } > memset((pReg), (0), (sizeof(REGFILE))); > > pReg->inInit = 1; > pReg->filename = (__extension__ (__builtin_constant_p ((filename)) && ((size_t)(const void *)(((filename)) + 1) - (size_t)(const void *)((filename)) == 1) ? (((__const char *) ((filename)))[0] == '\0' ? (char *) calloc (1, 1) : ({ size_t __len = strlen ((filename)) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, (filename), __len); __retval; })) : __strdup ((filename)))); > if (pReg->filename == ((void *)0)) { > free((pReg)); > status = (10); > goto bail; > } > > status = nr_OpenFile( filename, &(pReg->fh) ); > if (status == (18)) { > > pReg->readOnly = 1; > status = (0); > } > if ( status != (0) ) { > free((pReg->filename)); > free((pReg)); > > goto bail; > } > > > status = nr_ReadHdr( pReg ); > if ( status != (0) ) { > nr_CloseFile( &(pReg->fh) ); > free((pReg->filename)); > free((pReg)); > goto bail; > } > > > pReg->refCount = 0; > > > > > > status = nr_InitStdRkeys( pReg ); > if ( status == (0) ) { > > nr_AddNode( pReg ); > } > else { > nr_CloseFile( &(pReg->fh) ); > free((pReg->filename)); > free((pReg)); > goto bail; > } > > > > > > > pReg->inInit = 0; > } > > > pHandle = (REGHANDLE*)malloc((sizeof(REGHANDLE))); > if ( pHandle == ((void *)0) ) { > > if ( pReg->refCount == 0 ) { > > nr_CloseFile( &(pReg->fh) ); > nr_DeleteNode( pReg ); > } > > status = (10); > goto bail; > } > > pHandle->magic = 0x76644441L; > pHandle->pReg = pReg; > > > pReg->refCount++; > *hReg = (void*)pHandle; > >bail: > return status; > >} > > > >static REGERR nr_RegClose( HREG hReg ) >{ > REGERR err = (0); > REGHANDLE* reghnd = (REGHANDLE*)hReg; > REGFILE* reg; > XP_Bool needDelete = 0; > > ((void)0); > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > reg = reghnd->pReg; > > ((void)0); > if ( err == (0) ) > { > ((void)0); > > > if ( reg->hdrDirty ) { > nr_WriteHdr( reg ); > } > > > reg->refCount--; > > > if ( reg->refCount < 1 ) > { > > nr_CloseFile( &(reg->fh) ); > > > needDelete = 1; > } > else > { > > fflush(reg->fh); > } > > reghnd->magic = 0; > ((void)0); > > if ( needDelete ) > nr_DeleteNode( reg ); > > free((reghnd)); > } > > return err; > >} > > > >static char *nr_GetUsername() >{ > if (((void *)0) == user_name) { > return "default"; > } else { > return user_name; > } >} > >static const char* nr_GetRegName (const char *name) >{ > if (name == ((void *)0) || *name == '\0') { > ((void)0); > return globalRegName; > } else { > return name; > } >} ># 2340 "reg.c" >REGERR NR_RegGetUsername(char **name) >{ > > > if ( name == ((void *)0) ) > return (6); > > *name = (__extension__ (__builtin_constant_p ((nr_GetUsername())) && ((size_t)(const void *)(((nr_GetUsername())) + 1) - (size_t)(const void *)((nr_GetUsername())) == 1) ? (((__const char *) ((nr_GetUsername())))[0] == '\0' ? (char *) calloc (1, 1) : ({ size_t __len = strlen ((nr_GetUsername())) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, (nr_GetUsername()), __len); __retval; })) : __strdup ((nr_GetUsername())))); > > if ( ((void *)0) == *name ) > return (10); > > return (0); >} ># 2366 "reg.c" >int NR_RegSetBufferSize( HREG hReg, int bufsize ) >{ > int newSize; > > ((void)0); > > newSize = nr_RegSetBufferSize( hReg, bufsize ); > > ((void)0); > > return newSize; >} ># 2393 "reg.c" >REGERR NR_RegSetUsername(const char *name) >{ > char *tmp; > > if ( name == ((void *)0) || *name == '\0' ) > return (6); > > tmp = (__extension__ (__builtin_constant_p ((name)) && ((size_t)(const void *)(((name)) + 1) - (size_t)(const void *)((name)) == 1) ? (((__const char *) ((name)))[0] == '\0' ? (char *) calloc (1, 1) : ({ size_t __len = strlen ((name)) + 1; char *__retval = (char *) malloc (__len); if (__retval != ((void *)0)) __retval = (char *) memcpy (__retval, (name), __len); __retval; })) : __strdup ((name)))); > if (((void *)0) == tmp) { > return (10); > } > > ((void)0); > > if ((user_name)) free((user_name)); > user_name = tmp; > > > > > ((void)0); > > return (0); >} ># 2480 "reg.c" >REGERR NR_RegOpen( const char *filename, HREG *hReg ) >{ > REGERR status = (0); > > > > > > > > ((void)0); > > status = nr_RegOpen( filename, hReg ); > > ((void)0); > > return status; > >} ># 2512 "reg.c" >REGERR NR_RegClose( HREG hReg ) >{ > REGERR err = (0); > > ((void)0); > > err = nr_RegClose( hReg ); > > ((void)0); > > return err; > >} ># 2536 "reg.c" >REGERR NR_RegFlush( HREG hReg ) >{ > REGERR err; > REGFILE* reg; > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > reg = ((REGHANDLE*)hReg)->pReg; > > > if ( reg->readOnly ) > return (18); > > > err = nr_Lock( reg ); > if ( err == (0) ) > { > if ( reg->hdrDirty ) { > nr_WriteHdr( reg ); > } > > fflush(reg->fh); > > > nr_Unlock( reg ); > } > > return err; > >} ># 2580 "reg.c" >REGERR NR_RegIsWritable( HREG hReg ) >{ > REGERR err; > REGFILE* reg; > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > reg = ((REGHANDLE*)hReg)->pReg; > > if ( reg->readOnly ) > return (18); > else > return (0); > >} ># 2616 "reg.c" >REGERR NR_RegAddKey( HREG hReg, RKEY key, char *path, RKEY *newKey ) >{ > REGERR err; > REGOFF start; > REGFILE* reg; > > > if ( newKey != ((void *)0) ) > *newKey = 0; > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > reg = ((REGHANDLE*)hReg)->pReg; > > if ( path == ((void *)0) || *path == '\0' || reg == ((void *)0) ) > return (6); > > > err = nr_Lock( reg ); > if ( err == (0) ) > { > > start = nr_TranslateKey( reg, key ); > if ( start != 0 && start != reg->hdr.root ) > { > err = nr_RegAddKey( reg, start, path, newKey, 0 ); > } > else > err = (6); > > > nr_Unlock( reg ); > } > > return err; >} ># 2674 "reg.c" >REGERR NR_RegAddKeyRaw( HREG hReg, RKEY key, char *keyname, RKEY *newKey ) >{ > REGERR err; > REGOFF start; > REGFILE* reg; > > > if ( newKey != ((void *)0) ) > *newKey = 0; > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > reg = ((REGHANDLE*)hReg)->pReg; > > if ( keyname == ((void *)0) || *keyname == '\0' || reg == ((void *)0) ) > return (6); > > > err = nr_Lock( reg ); > if ( err == (0) ) > { > > start = nr_TranslateKey( reg, key ); > if ( start != 0 && start != reg->hdr.root ) > { > err = nr_RegAddKey( reg, start, keyname, newKey, 1 ); > } > else > err = (6); > > > nr_Unlock( reg ); > } > > return err; >} ># 2731 "reg.c" >REGERR NR_RegDeleteKey( HREG hReg, RKEY key, char *path ) >{ > REGERR err; > REGFILE* reg; > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > reg = ((REGHANDLE*)hReg)->pReg; > > > err = nr_Lock( reg ); > if ( err == (0) ) > { > err = nr_RegDeleteKey( reg, key, path, 0 ); > nr_Unlock( reg ); > } > > return err; >} ># 2769 "reg.c" >REGERR NR_RegDeleteKeyRaw( HREG hReg, RKEY key, char *keyname ) >{ > REGERR err; > REGFILE* reg; > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > reg = ((REGHANDLE*)hReg)->pReg; > > > err = nr_Lock( reg ); > if ( err == (0) ) > { > err = nr_RegDeleteKey( reg, key, keyname, 1 ); > nr_Unlock( reg ); > } > > return err; >} ># 2806 "reg.c" >REGERR NR_RegGetKey( HREG hReg, RKEY key, const char *path, RKEY *result ) >{ > REGERR err; > REGOFF start; > REGFILE* reg; > REGDESC desc; > > ((void)0); > > > if ( result != ((void *)0) ) > *result = (RKEY)0; > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( path == ((void *)0) || result == ((void *)0) ) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > > err = nr_Lock( reg ); > if ( err == (0) ) > { > start = nr_TranslateKey( reg, key ); > if ( start != 0 ) > { > > err = nr_Find( reg, start, path, &desc, 0, 0, 0 ); > if ( err == (0) ) { > *result = (RKEY)desc.location; > } > } > else { > err = (6); > } > > nr_Unlock( reg ); > } > > return err; > >} ># 2867 "reg.c" >REGERR NR_RegGetKeyRaw( HREG hReg, RKEY key, char *keyname, RKEY *result ) >{ > REGERR err; > REGOFF start; > REGFILE* reg; > REGDESC desc; > > ((void)0); > > > if ( result != ((void *)0) ) > *result = (RKEY)0; > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( keyname == ((void *)0) || result == ((void *)0) ) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > > err = nr_Lock( reg ); > if ( err == (0) ) > { > start = nr_TranslateKey( reg, key ); > if ( start != 0 ) > { > > err = nr_Find( reg, start, keyname, &desc, 0, 0, 1 ); > if ( err == (0) ) { > *result = (RKEY)desc.location; > } > } > else { > err = (6); > } > > nr_Unlock( reg ); > } > > return err; > >} ># 2927 "reg.c" >REGERR NR_RegGetEntryInfo( HREG hReg, RKEY key, char *name, > REGINFO *info ) >{ > REGERR err; > REGFILE* reg; > REGDESC desc; > > ((void)0); > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( name == ((void *)0) || *name == '\0' || info == ((void *)0) || key == 0 ) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > err = nr_Lock( reg ); > if ( err == (0) ) > { > > err = nr_ReadDesc( reg, key, &desc); > if ( err == (0) ) > { > > err = nr_FindAtLevel( reg, desc.value, name, &desc, ((void *)0) ); > if ( err == (0) ) > { > > if ( info->size == sizeof(REGINFO) ) > { > info->entryType = desc.type; > info->entryLength = desc.valuelen; > } > else > { > > err = (6); > } > } > } > > nr_Unlock( reg ); > } > > return err; > >} ># 2993 "reg.c" >REGERR NR_RegGetEntryString( HREG hReg, RKEY key, char *name, > char *buffer, uint32 bufsize) >{ > REGERR err; > REGFILE* reg; > REGDESC desc; > > ((void)0); > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( name==((void *)0) || *name=='\0' || buffer==((void *)0) || bufsize==0 || key==0 ) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > err = nr_Lock( reg ); > if ( err == (0) ) > { > > err = nr_ReadDesc( reg, key, &desc); > if ( err == (0) ) > { > > err = nr_FindAtLevel( reg, desc.value, name, &desc, ((void *)0) ); > if ( err == (0) ) > { > > if ( desc.type == ((0x0010) + 1) ) > { > err = nr_ReadData( reg, &desc, bufsize, buffer ); > > buffer[bufsize-1] = '\0'; > } > else { > err = (15); > } > } > } > > nr_Unlock( reg ); > } > > return err; > >} ># 3059 "reg.c" >REGERR NR_RegGetEntry( HREG hReg, RKEY key, char *name, > void *buffer, uint32 *size ) >{ > REGERR err; > REGFILE* reg; > REGDESC desc; > char *tmpbuf = ((void *)0); > uint32 nInt; > uint32 *pISrc; > uint32 *pIDest; > XP_Bool needFree = 0; > > ((void)0); > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( name==((void *)0) || *name=='\0' || buffer==((void *)0) || size==((void *)0) || key==0 ) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > err = nr_Lock( reg ); > if ( err == (0) ) > { > > err = nr_ReadDesc( reg, key, &desc); > if ( err == (0) ) > { > > err = nr_FindAtLevel( reg, desc.value, name, &desc, ((void *)0) ); > if ( err == (0) ) > { > if ( desc.valuelen > *size ) { > err = (11); > } > else if ( desc.valuelen == 0 ) { > err = (1); > } > else switch (desc.type) > { > > case ((0x0010) + 2): > tmpbuf = (char*)malloc((desc.valuelen)); > if ( tmpbuf != ((void *)0) ) > { > needFree = 1; > err = nr_ReadData( reg, &desc, desc.valuelen, tmpbuf ); > if ( (0) == err ) > { > > nInt = (desc.valuelen / 4); > pISrc = (uint32*)tmpbuf; > pIDest = (uint32*)buffer; > for(; nInt > 0; nInt--, pISrc++, pIDest++) { > *pIDest = nr_ReadLong((char*)pISrc); > } > } > } > else > err = (10); > break; > > case ((0x0010) + 1): > tmpbuf = (char*)buffer; > err = nr_ReadData( reg, &desc, *size, tmpbuf ); > > tmpbuf[(*size)-1] = '\0'; > break; > > case ((0x0010) + 4): > > err = nr_ReadData( reg, &desc, *size, (char*)buffer ); ># 3154 "reg.c" > break; > > case ((0x0010) + 3): > default: > err = nr_ReadData( reg, &desc, *size, (char*)buffer ); > break; > } > > > *size = desc.valuelen; > } > } > > nr_Unlock( reg ); > } > > if (needFree) > free((tmpbuf)); > > return err; > >} ># 3192 "reg.c" >REGERR NR_RegSetEntryString( HREG hReg, RKEY key, char *name, > char *buffer ) >{ > REGERR err; > REGFILE* reg; > REGDESC desc; > REGDESC parent; > > ((void)0); > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( name == ((void *)0) || *name == '\0' || buffer == ((void *)0) || key == 0 ) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > > err = nr_Lock( reg ); > if ( err != (0) ) > return err; > > > err = nr_ReadDesc( reg, key, &parent); > if ( err == (0) ) { > > > err = nr_FindAtLevel( reg, parent.value, name, &desc, ((void *)0) ); > if ( err == (0) ) { > > err = nr_WriteString( reg, buffer, &desc ); > if ( err == (0) ) { > desc.type = ((0x0010) + 1); > err = nr_WriteDesc( reg, &desc ); > } > } > else if ( err == (3) ) { > > err = nr_CreateEntryString( reg, &parent, name, buffer ); > } > > } > > > nr_Unlock( reg ); > > return err; > >} ># 3261 "reg.c" >REGERR NR_RegSetEntry( HREG hReg, RKEY key, char *name, uint16 type, > void *buffer, uint32 size ) >{ > REGERR err; > REGFILE* reg; > REGDESC desc; > REGDESC parent; > char *data = ((void *)0); > uint32 nInt; > uint32 *pIDest; > uint32 *pISrc; > XP_Bool needFree = 0; > int32 datalen = size; > > ((void)0); > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( name==((void *)0) || *name=='\0' || buffer==((void *)0) || size==0 || key==0 ) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > > switch (type) > { > case ((0x0010) + 3): > data = (char*)buffer; > break; > > case ((0x0010) + 4): > > > > > > > data = (char*)buffer; > > break; > > > case ((0x0010) + 1): > data = (char*)buffer; > > if ( data[size-1] != '\0' ) > return (6); > break; > > > case ((0x0010) + 2): > > if ( (size % 4) != 0 ) > return (6); > > > data = (char*)malloc((size)); > if ( data == ((void *)0) ) > return (10); > else > needFree = 1; > > > nInt = ( size / 4 ); > pIDest = (uint32*)data; > pISrc = (uint32*)buffer; > > for( ; nInt > 0; nInt--, pIDest++, pISrc++) { > nr_WriteLong( *pISrc, (char*)pIDest ); > } > break; > > > default: > return (15); > } > > > err = nr_Lock( reg ); > if ( (0) == err ) > { > > err = nr_ReadDesc( reg, key, &parent); > if ( err == (0) ) > { > > err = nr_FindAtLevel( reg, parent.value, name, &desc, ((void *)0) ); > if ( err == (0) ) > { > > err = nr_WriteData( reg, data, datalen, &desc ); > if ( err == (0) ) > { > desc.type = type; > err = nr_WriteDesc( reg, &desc ); > } > } > else if ( err == (3) ) > { > > err = nr_CreateEntry( reg, &parent, name, type, data, datalen ); > } > else { > > } > } > > > nr_Unlock( reg ); > } > > if (needFree) > free((data)); > > return err; > >} ># 3394 "reg.c" >REGERR NR_RegDeleteEntry( HREG hReg, RKEY key, char *name ) >{ > REGERR err; > REGFILE* reg; > REGDESC desc; > REGDESC parent; > REGOFF offPrev; > > ((void)0); > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( name == ((void *)0) || *name == '\0' || key == 0) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > > err = nr_Lock( reg ); > if ( err != (0) ) > return err; > > > err = nr_ReadDesc( reg, key, &parent); > if ( err == (0) ) { > > > err = nr_FindAtLevel( reg, parent.value, name, &desc, &offPrev ); > if ( err == (0) ) { > > ((void)0); > > > if ( offPrev == 0 ) { > > ((void)0); > parent.value = desc.left; > } > else { > > err = nr_ReadDesc( reg, offPrev, &parent ); > parent.left = desc.left; > } > > if ( err == (0) ) { > err = nr_WriteDesc( reg, &parent ); > > > > if ( err == (0) ) { > desc.type |= (0x0080); > err = nr_WriteDesc( reg, &desc ); > } > } > } > } > > > nr_Unlock( reg ); > > return err; > >} ># 3481 "reg.c" >REGERR NR_RegEnumSubkeys( HREG hReg, RKEY key, REGENUM *state, > char *buffer, uint32 bufsize, uint32 style) >{ > REGERR err; > REGFILE* reg; > REGDESC desc; > > ((void)0); > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( key == 0 || state == ((void *)0) || buffer == ((void *)0) ) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > > err = nr_Lock( reg ); > if ( err != (0) ) > return err; > > desc.down = 0; > desc.location = 0; > > > key = nr_TranslateKey( reg, key ); > if ( key == 0 ) > err = (6); > else if ( *state == 0 ) > err = nr_ReadDesc( reg, key, &desc); > else > err = (0); > > if ( err == (0) ) > { > > if ( *state == 0 && desc.down == 0 ) > { > err = (2); > } > else switch ( style ) > { > case (0x00): > *buffer = '\0'; > if ( *state == 0 ) > { > > err = nr_ReplaceName( reg, desc.down, buffer, bufsize, &desc ); > } > else > { > > err = nr_ReadDesc( reg, *state, &desc ); > if ( err == (0) || (14) == err ) > { > > if ( desc.left != 0 ) > { > err = nr_ReplaceName( reg, desc.left, > buffer, bufsize, &desc ); > } > else > err = (2); > } > } > break; > > > case (0x01): > if ( *state == 0 ) > { > > *buffer = '\0'; > err = nr_ReplaceName( reg, desc.down, buffer, bufsize, &desc ); > } > else > { > > err = nr_ReadDesc( reg, *state, &desc ); > if ( (0) != err && (14) != err ) > { > > > > break; > } > > if ( desc.down != 0 ) { > > err = nr_CatName( reg, desc.down, buffer, bufsize, &desc ); > } > else if ( desc.left != 0 ) { > > err = nr_ReplaceName( reg, desc.left, > buffer, bufsize, &desc ); > } > else { > > while ( err == (0) ) > { > if ( desc.parent != key && desc.parent != 0 ) > { > err = nr_RemoveName( buffer ); > if ( err == (0) ) > { > err = nr_ReadDesc( reg, desc.parent, &desc ); > if ( err == (0) && desc.left != 0 ) > { > err = nr_ReplaceName( reg, desc.left, > buffer, bufsize, &desc ); > break; > } > } > } > else > err = (2); > } > } > } > break; > > > case (0x02): > if ( *state == 0 ) > { > > > *buffer = '\0'; > err = nr_ReplaceName( reg, desc.down, buffer, bufsize, &desc ); > while ( (0) == err && desc.down != 0 ) > { > > err = nr_CatName( reg, desc.down, buffer, bufsize, &desc ); > } > } > else > { > > err = nr_ReadDesc( reg, *state, &desc ); > if ( (0) != err && (14) != err ) > { > > > > break; > } > > if ( desc.left != 0 ) > { > > err = nr_ReplaceName(reg, desc.left, buffer,bufsize,&desc); > > while ( (0) == err && desc.down != 0 ) > { > err = nr_CatName(reg, desc.down, buffer,bufsize,&desc); > } > } > else > { > > if ( desc.parent != key && desc.parent != 0 ) > { > err = nr_RemoveName( buffer ); > if ( (0) == err ) > { > > err = nr_ReadDesc( reg, desc.parent, &desc ); > } > } > else > err = (2); > } > } > break; > > > default: > err = (6); > break; > } > } > > > if ( err == (0) ) { > *state = desc.location; > } > > > nr_Unlock( reg ); > > return err; > >} ># 3696 "reg.c" >REGERR NR_RegEnumEntries( HREG hReg, RKEY key, REGENUM *state, > char *buffer, uint32 bufsize, REGINFO *info ) >{ > REGERR err; > REGFILE* reg; > REGDESC desc; > > ((void)0); > > > err = ( ((hReg) == ((void *)0)) ? (6) : ( (((REGHANDLE*)(hReg))->magic == 0x76644441L) ? (0) : (7) ) ); > if ( err != (0) ) > return err; > > if ( key == 0 || state == ((void *)0) || buffer == ((void *)0) ) > return (6); > > reg = ((REGHANDLE*)hReg)->pReg; > > > err = nr_Lock( reg ); > if ( err != (0) ) > return err; > > > err = nr_ReadDesc( reg, key, &desc); > if ( err == (0) ) > { > if ( *state == 0 ) > { > > if ( desc.value != 0 ) > { > *buffer = '\0'; > err = nr_ReplaceName( reg, desc.value, buffer, bufsize, &desc ); > } > else > { > > err = (2); > } > } > else > { > > err = nr_ReadDesc( reg, *state, &desc ); > if ( err == (0) || err == (14) ) > { > > if ( desc.left != 0 ) > { > *buffer = '\0'; > err = nr_ReplaceName( reg, desc.left, buffer, bufsize, &desc ); > } > else > { > > err = (2); > } > } > } > > > if ( err == (0) ) > { > > *state = desc.location; > > > if ( info != ((void *)0) && info->size >= sizeof(REGINFO) ) > { > info->entryType = desc.type; > info->entryLength = desc.valuelen; > } > } > } > > > nr_Unlock( reg ); > > return err; > >} ># 4044 "reg.c" ># 1 "../../../dist/include/libreg/VerReg.h" 1 ># 32 "../../../dist/include/libreg/VerReg.h" >typedef struct _version >{ > int32 major; > int32 minor; > int32 release; > int32 build; > int32 check; >} VERSION; ># 52 "../../../dist/include/libreg/VerReg.h" >REGERR VR_CreateRegistry(char *installation, char *programPath, char *versionStr); >REGERR VR_SetRegDirectory(const char *path); >REGERR VR_PackRegistry(void *userData, nr_RegPackCallbackFunc pdCallbackFunction); >REGERR VR_Close(void); > > >REGERR VR_Install(char *component_path, char *filepath, char *version, int bDirectory); >REGERR VR_Remove(char *component_path); >REGERR VR_InRegistry(char *path); >REGERR VR_ValidateComponent(char *path); >REGERR VR_Enum(char *component_path, REGENUM *state, char *buffer, uint32 buflen); > > >REGERR VR_GetVersion(char *component_path, VERSION *result); >REGERR VR_GetPath(char *component_path, uint32 sizebuf, char *buf); >REGERR VR_SetRefCount(char *component_path, int refcount); >REGERR VR_GetRefCount(char *component_path, int *result); >REGERR VR_GetDefaultDirectory(char *component_path, uint32 sizebuf, char *buf); >REGERR VR_SetDefaultDirectory(char *component_path, char *directory); > > >REGERR VR_UninstallCreateNode(char *regPackageName, char *userPackageName); >REGERR VR_UninstallAddFileToList(char *regPackageName, char *vrName); >REGERR VR_UninstallFileExistsInList(char *regPackageName, char *vrName); >REGERR VR_UninstallEnumSharedFiles(char *component_path, REGENUM *state, char *buffer, uint32 buflen); >REGERR VR_UninstallDeleteFileFromList(char *component_path, char *vrName); >REGERR VR_UninstallDeleteSharedFilesKey(char *regPackageName); >REGERR VR_UninstallDestroy(char *regPackageName); >REGERR VR_EnumUninstall(REGENUM *state, char* userPackageName, > int32 len1, char*regPackageName, int32 len2, PRBool bSharedList); >REGERR VR_GetUninstallUserName(char *regPackageName, char *outbuf, uint32 buflen); ># 4045 "reg.c" 2 ># 4060 "reg.c" >REGERR NR_StartupRegistry(void) >{ > REGERR status = (0); ># 4078 "reg.c" > if ( status == (0) ) > { > ++regStartCount; > if ( regStartCount == 1 ) > { > > vr_findGlobalRegName(); ># 4094 "reg.c" > } > > ((void)0); > } > > return status; >} > >void NR_ShutdownRegistry(void) >{ > REGFILE* pReg; > XP_Bool bDestroyLocks = 0; ># 4115 "reg.c" > if ( regStartCount == 0 ) > return; > > > ((void)0); > > --regStartCount; > if ( regStartCount == 0 ) > { > > > > while ( RegList != ((void *)0) ) > { > pReg = RegList; > if ( pReg->hdrDirty ) { > nr_WriteHdr( pReg ); > } > nr_CloseFile( &(pReg->fh) ); > nr_DeleteNode( pReg ); > } > > if ((user_name)) free((user_name)); > if ((globalRegName)) free((globalRegName)); > if ((verRegName)) free((verRegName)); > > bDestroyLocks = 1; > } > > ((void)0); ># 4157 "reg.c" >}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 59314
:
36714
|
36715
| 36717