home *** CD-ROM | disk | FTP | other *** search
- From: pgd@bbt.se
- Newsgroups: alt.sources
- Subject: Xenixshlib - Shared libraries for xenix (part 2 of 3)
- Message-ID: <1991Jan25.145442.25549@bbt.se>
- Date: 25 Jan 91 14:54:42 GMT
-
- ---- Cut Here and unpack ----
- #!/bin/sh
- # This is part 02 of Xenixshlib
- if touch 2>&1 | fgrep 'amc' > /dev/null
- then TOUCH=touch
- else TOUCH=true
- fi
- # ============= hash.c ==============
- echo "x - extracting hash.c (Text)"
- sed 's/^X//' << 'SHAR_EOF' > hash.c &&
- X#ifndef lint
- Xstatic char rcsid[] = "$Id: hash.c,v 1.2 90/10/02 13:32:23 chris Exp $";
- X#endif
- X
- X/*
- X * Hash table routines.
- X */
- X
- X#include <stdio.h>
- X#include <stdlib.h>
- X#include <string.h>
- X#include "hash.h"
- X
- X/*
- X * Hash table entries keep track of name=value pairs.
- X * The names may be numeric IDs instead (by having a null name).
- X */
- Xstruct hashent {
- X struct hashent *h_next;/* next in chain */
- X int h_hash; /* hash value or ID */
- X char *h_name; /* name (null if from numeric ID) */
- X char *h_value; /* value */
- X};
- X
- Xstruct hashtab {
- X int ht_size; /* size (power of 2) */
- X int ht_mask; /* == ht_size - 1 */
- X int ht_used; /* number of entries used */
- X int ht_lim; /* when to expand */
- X struct hashent **ht_tab;/* base of table */
- X char ht_name[1]; /* table name; actually larger */
- X};
- X
- Xextern char *progname;
- X
- X#define bcopy(S, D, L) memcpy((D), (S), (L))
- X
- Xchar *
- Xemalloc(n)
- X size_t n;
- X{
- X register char *p = malloc(n);
- X
- X if (p == NULL) {
- X (void) fprintf(stderr, "%s: out of memory\n", progname);
- X exit(1);
- X }
- X return (p);
- X}
- X
- X/* round up to next multiple of y, where y is a power of 2 */
- X#define ROUND(x, y) (((x) + (y) - 1) & ~((y) - 1))
- X
- X/* compute a `good' number of objects to allocate via malloc */
- Xint
- Xgoodnumber(n, s)
- X int n;
- X size_t s;
- X{
- X
- X /* 16384 is a guess at a good page size for malloc */
- X /* 32 is a guess at malloc's overhead */
- X return ((int)((ROUND(n * s + 32, 16384) - 32) / s));
- X}
- X
- X/*
- X * Make a new hash table.
- X */
- Xstruct hashtab *
- Xht_new(name)
- X char *name;
- X{
- X register struct hashtab *ht;
- X register struct hashent **h;
- X register int n;
- X
- X ht = (struct hashtab *)emalloc(sizeof *ht + strlen(name));
- X ht->ht_tab = h = (struct hashent **)emalloc(128 * sizeof *h);
- X ht->ht_size = 128;
- X ht->ht_mask = 127;
- X for (n = 128; --n >= 0;)
- X *h++ = NULL;
- X ht->ht_used = 0;
- X ht->ht_lim = (128 * 2) / 3;
- X (void) strcpy(ht->ht_name, name);
- X return (ht);
- X}
- X
- X/*
- X * Expand an existing hash table.
- X */
- Xstatic void
- Xht_expand(ht)
- X register struct hashtab *ht;
- X{
- X register int n = ht->ht_size * 2, i;
- X register struct hashent *p, **h, **oldh, *q;
- X
- X h = (struct hashent **)emalloc(n * sizeof *h);
- X for (i = n; --i >= 0;)
- X *h++ = NULL;
- X h -= n;
- X oldh = ht->ht_tab;
- X n--;
- X for (i = ht->ht_size; --i >= 0;) {
- X for (p = *oldh++; p != NULL; p = q) {
- X q = p->h_next;
- X p->h_next = h[p->h_hash & n];
- X h[p->h_hash & n] = p;
- X }
- X }
- X free((char *)ht->ht_tab);
- X ht->ht_tab = h;
- X ht->ht_mask = n;
- X ht->ht_size = ++n;
- X ht->ht_lim = (n * 2) / 3;
- X}
- X
- X/*
- X * Make a new hash entry. Its h_next will be NULL.
- X */
- Xstatic struct hashent *
- Xnewhashent(hash, name, value)
- X int hash;
- X char *name, *value;
- X{
- X static struct hashent *hfree;
- X register struct hashent *h;
- X register int n, nalloc;
- X
- X if ((h = hfree) != NULL)
- X hfree = h->h_next;
- X else {
- X nalloc = goodnumber(2, sizeof *h); /* need at least 2 */
- X hfree = h = (struct hashent *)emalloc(nalloc * sizeof *h) + 1;
- X for (n = nalloc - 2; --n >= 0; h++)
- X h->h_next = h + 1;
- X h->h_next = NULL;
- X h -= nalloc - 1;
- X }
- X h->h_next = NULL;
- X h->h_hash = hash;
- X h->h_name = name;
- X h->h_value = value;
- X return (h);
- X}
- X
- X#define HASH(str, h, p) \
- X for (p = str, h = 0; *p;) h = (h << 5) - h + *p++
- X
- X/*
- X * Look up a name=value.
- X */
- Xchar *
- Xht_nget(ht, name)
- X register struct hashtab *ht;
- X char *name;
- X{
- X register char *p;
- X register int hash;
- X register struct hashent *h;
- X
- X HASH(name, hash, p);
- X p = name;
- X for (h = ht->ht_tab[hash & ht->ht_mask]; h != NULL; h = h->h_next)
- X if (h->h_hash == hash && h->h_name != NULL &&
- X strcmp(h->h_name, p) == 0)
- X return (h->h_value);
- X return (NULL);
- X}
- X
- X/*
- X * Look up an ID=value.
- X */
- Xchar *
- Xht_iget(ht, id)
- X register struct hashtab *ht;
- X register int id;
- X{
- X register struct hashent *h;
- X
- X for (h = ht->ht_tab[id & ht->ht_mask]; h != NULL; h = h->h_next)
- X if (h->h_hash == id && h->h_name == NULL)
- X return (h->h_value);
- X return (NULL);
- X}
- X
- X/*
- X * Insert (do not clobber) a name=value.
- X * Return zero on success.
- X */
- Xint
- Xht_nins(ht, name, value)
- X register struct hashtab *ht;
- X char *name, *value;
- X{
- X register char *p;
- X register int hash;
- X register struct hashent *h, **hp;
- X
- X HASH(name, hash, p);
- X p = name;
- X for (hp = &ht->ht_tab[hash & ht->ht_mask]; (h = *hp) != NULL;
- X hp = &h->h_next)
- X if (h->h_hash == hash && h->h_name != NULL &&
- X strcmp(h->h_name, p) == 0)
- X return (-1);
- X *hp = newhashent(hash, name, value);
- X if (++ht->ht_used > ht->ht_lim)
- X ht_expand(ht);
- X return (0);
- X}
- X
- X/*
- X * Insert (do clobber) a name=value.
- X * Return zero on success.
- X */
- Xvoid
- Xht_nput(ht, name, value)
- X register struct hashtab *ht;
- X char *name, *value;
- X{
- X register char *p;
- X register int hash;
- X register struct hashent *h, **hp;
- X
- X HASH(name, hash, p);
- X p = name;
- X for (hp = &ht->ht_tab[hash & ht->ht_mask]; (h = *hp) != NULL;
- X hp = &h->h_next)
- X if (h->h_hash == hash && h->h_name != NULL &&
- X strcmp(h->h_name, p) == 0) {
- X h->h_value = value;
- X return;
- X }
- X *hp = newhashent(hash, name, value);
- X if (++ht->ht_used > ht->ht_lim)
- X ht_expand(ht);
- X return;
- X}
- X
- X/*
- X * Insert (do not clobber) an ID=value.
- X * Return zero on success.
- X */
- Xint
- Xht_iins(ht, id, value)
- X register struct hashtab *ht;
- X register int id;
- X char *value;
- X{
- X register struct hashent *h, **hp;
- X
- X for (hp = &ht->ht_tab[id & ht->ht_mask]; (h = *hp) != NULL;
- X hp = &h->h_next)
- X if (h->h_hash == id && h->h_name == NULL)
- X return (-1);
- X *hp = newhashent(id, (char *)NULL, value);
- X if (++ht->ht_used > ht->ht_lim)
- X ht_expand(ht);
- X return (0);
- X}
- X
- X/*
- X * Stash a copy of a string away; it will never be freed.
- X */
- Xstatic char *
- Xpoolstr(s)
- X char *s;
- X{
- X register char *p;
- X register size_t l = strlen(s) + 1;
- X static char *poolp;
- X static size_t nleft;
- X
- X if (nleft < l)
- X poolp = emalloc(nleft = goodnumber(l, 1));
- X bcopy(s, p = poolp, l);
- X poolp += l;
- X return (p);
- X}
- X
- X/*
- X * Generate a single unique copy of the given string.
- X */
- Xchar *
- Xstring(s)
- X char *s;
- X{
- X register char *p;
- X register int hash;
- X register struct hashent *h, **hp;
- X static struct hashtab *ht;
- X
- X if (ht == NULL)
- X ht = ht_new("strings");
- X HASH(s, hash, p);
- X p = s;
- X for (hp = &ht->ht_tab[hash & ht->ht_mask]; (h = *hp) != NULL;
- X hp = &h->h_next)
- X if (h->h_hash == hash && strcmp(h->h_name, p) == 0)
- X return (h->h_name);
- X *hp = h = newhashent(hash, poolstr(s), (char *)NULL);
- X if (++ht->ht_used > ht->ht_lim)
- X ht_expand(ht);
- X return (h->h_name);
- X}
- X
- X/*
- X * Call fn on all the name=value pairs.
- X */
- Xvoid
- Xht_niterate(ht, fn)
- X struct hashtab *ht;
- X register void (*fn)();
- X{
- X register struct hashent *h, **hp;
- X register int n;
- X
- X for (n = ht->ht_size, hp = ht->ht_tab; --n >= 0;)
- X for (h = *hp++; h != NULL; h = h->h_next)
- X if (h->h_name != NULL)
- X (*fn)(h->h_name, h->h_value);
- X}
- X
- X/*
- X * Call fn on all the id=value pairs.
- X */
- Xvoid
- Xht_iiterate(ht, fn)
- X struct hashtab *ht;
- X register void (*fn)();
- X{
- X register struct hashent *h, **hp;
- X register int n;
- X
- X for (n = ht->ht_size, hp = ht->ht_tab; --n >= 0;)
- X for (h = *hp++; h != NULL; h = h->h_next)
- X if (h->h_name == NULL)
- X (*fn)(h->h_hash, h->h_value);
- X}
- SHAR_EOF
- $TOUCH -am 1231154290 hash.c &&
- chmod 0444 hash.c ||
- echo "restore of hash.c failed"
- set `wc -c hash.c`;Wc_c=$1
- if test "$Wc_c" != "6906"; then
- echo original size 6906, current size $Wc_c
- fi
- # ============= hash.h ==============
- echo "x - extracting hash.h (Text)"
- sed 's/^X//' << 'SHAR_EOF' > hash.h &&
- X/*
- X * $Id: hash.h,v 1.1 90/09/24 23:58:38 chris Exp $
- X *
- X * Hash table entries keep track of name (or id) = value pairs.
- X * Values are simply pointers. Hash tables themselves are named
- X * (for debugging).
- X */
- X
- Xstruct hashtab;
- X
- X/*
- X * The `ins' functions return nonzero if the old value existed,
- X * without changing the value.
- X * The iterate functions calls a given function with name,value
- X * or id,value pairs.
- X */
- Xstruct hashtab *ht_new(char *name); /* given name, create new hash table */
- Xchar *ht_nget(struct hashtab *ht, char *name); /* given table and name, get value */
- Xchar *ht_iget(struct hashtab *ht, int id); /* given table and ID, get value */
- Xint ht_nins(struct hashtab *ht, char *name, char *value); /* given table and name, insert new value */
- Xvoid ht_nput(struct hashtab *ht, char *name, char *value);
- Xint ht_iins(struct hashtab *ht, int id, char *value); /* given table and id, insert new value */
- Xvoid ht_niterate(struct hashtab *ht, void (*fn)()); /* given table and function, iterate */
- Xvoid ht_iiterate(struct hashtab *ht, void (*fn)()); /* given table and function, iterate */
- X
- X/*
- X * Some things that ought not to be here, but are anyway.
- X * goodnumber() takes a number of objects and a size and returns
- X * a new number of objects, such that malloc(goodnumber(n,size)*size)
- X * calls malloc with a `good' size value (resulting in less wasted
- X * memory). emalloc is malloc with program-abort on out-of-memory.
- X * string() makes a `read-only' copy of a string, reusing the previous
- X * copy if any.
- X */
- Xint goodnumber(); /* given n & sizeof, return new n */
- Xchar *emalloc(); /* malloc, exit on error */
- Xchar *string(char *s); /* make an `ideal' copy of a string */
- SHAR_EOF
- $TOUCH -am 1231154690 hash.h &&
- chmod 0444 hash.h ||
- echo "restore of hash.h failed"
- set `wc -c hash.h`;Wc_c=$1
- if test "$Wc_c" != "1686"; then
- echo original size 1686, current size $Wc_c
- fi
- # ============= libX11_start.c ==============
- echo "x - extracting libX11_start.c (Text)"
- sed 's/^X//' << 'SHAR_EOF' > libX11_start.c &&
- X/*
- X * Startup routine for xenix with gcc using shared libraries
- X * This routine is called from assembler routine "crt0"
- X */
- X#include <stdio.h>
- X
- Xchar **_argv;
- Xint _argc;
- Xstatic char **find_environ();
- Xextern char **environ;
- Xextern void (*_xcstart)(), (*_xcend)();
- Xextern int libX11_version;
- Xextern int (*_shlib_exit)();
- Xextern exit();
- X
- X_start(argc, sargv)
- X int argc;
- X char *sargv;
- X{
- X char **vargv;
- X int valsave;
- X register char **argv = &sargv;
- X static char errtxt[] = "\nVersion of libX11_s does not fit executable\n";
- X
- X if (libX11_version < VERSION) {
- X write(2, errtxt, sizeof(errtxt));
- X _exit(-1);
- X }
- X _argv = argv;
- X _argc = argc;
- X environ = find_environ(argv);
- X _shlib_exit = exit;
- X valsave = main(argc, argv, environ);
- X _xcleanup();
- X return valsave;
- X}
- X
- Xstatic char **
- Xfind_environ(fargv)
- X register char **fargv;
- X{
- X register char *cp;
- X
- X cp = *fargv;
- X do {
- X fargv++;
- X } while (fargv[-1]);
- X if ((char *)fargv == cp)
- X fargv--;
- X return fargv;
- X}
- X
- X
- X_xcleanup()
- X{
- X register void (*xcp)();
- X
- X for (xcp = _xcstart; xcp != _xcend; xcp++)
- X (*xcp)();
- X}
- X
- SHAR_EOF
- $TOUCH -am 0116101391 libX11_start.c &&
- chmod 0660 libX11_start.c ||
- echo "restore of libX11_start.c failed"
- set `wc -c libX11_start.c`;Wc_c=$1
- if test "$Wc_c" != "1049"; then
- echo original size 1049, current size $Wc_c
- fi
- # ============= libc_jump.s ==============
- echo "x - extracting libc_jump.s (Text)"
- sed 's/^X//' << 'SHAR_EOF' > libc_jump.s &&
- X/
- X/ Prefix file and jump table for libc shared library
- X/
- X/ Included in this table str (all) symbols used by most
- X/ X libraries, except for the socket/network symbols, since
- X/ there are different incompatible libraries for that.
- X/ All gnulib symbols are also excluded, since the double jump
- X/ might be seen as a slowdown.
- X/ libc symbols which are not used by X-windows are not included.
- X/
- X/ Created by: pgd@compuram.bbt.se on 9-jan-91
- X/
- X.text
- X jmp __bufsync
- X jmp __cleanup
- X jmp __doprnt
- X jmp __doscan
- X jmp __exit
- X jmp __fcmp
- X jmp __fcntl
- X jmp __filbuf
- X jmp __findbuf
- X jmp __findiop
- X jmp __flsbuf
- X jmp __ftime
- X jmp __ftol
- X jmp __gdup
- X jmp __rlatof
- X jmp __rlprint
- X jmp __sigcomm
- X jmp __time
- X jmp __wait
- X jmp __wrtchk
- X jmp __xflsbuf
- X jmp _abs
- X jmp _access
- X jmp _alarm
- X jmp _asctime
- X jmp _atof
- X jmp _atoi
- X jmp _brk
- X jmp _calloc
- X jmp _ceil
- X jmp _cfree
- X jmp _close
- X jmp _cos
- X jmp _ctime
- X jmp _creat
- X jmp _dup
- X jmp _dup2
- X jmp _dysize
- X jmp _ecvt
- X jmp _endpwent
- X/ jmp _exit
- X jmp _execl
- X jmp _execve
- X jmp _exp
- X jmp _fclose
- X jmp _fcntl
- X jmp _fcvt
- X jmp _fflush
- X jmp _fgets
- X jmp _floor
- X jmp _fltrd
- X jmp _fopen
- X jmp _fork
- X jmp _fprintf
- X jmp _fputs
- X jmp _fread
- X jmp _free
- X jmp _freopen
- X jmp _frexp
- X jmp _fscanf
- X jmp _fseek
- X jmp _fstat
- X jmp _ftell
- X jmp _ftime
- X jmp _fwrite
- X jmp _getenv
- X jmp _getlogin
- X jmp _getpid
- X jmp _getpwent
- X jmp _getpwnam
- X jmp _getpwuid
- X jmp _gettzname
- X jmp _getuid
- X jmp _gmtime
- X jmp _ioctl
- X jmp _isatty
- X jmp _labs
- X jmp _ldexp
- X jmp _localtime
- X jmp _log
- X jmp _log10
- X jmp _lseek
- X jmp _malloc
- X jmp _matherr
- X jmp _memccpy
- X jmp _memchr
- X jmp _memcmp
- X jmp _memcpy
- X jmp _memset
- X jmp _mknod
- X jmp _mktemp
- X jmp _modf
- X jmp _open
- X jmp _pow
- X jmp _printf
- X jmp _qsort
- X jmp _rand
- X jmp _read
- X jmp _realloc
- X jmp _rewind
- X jmp _sbrk
- X jmp _scanf
- X jmp _select
- X jmp _setpwent
- X jmp _sighold
- X jmp _signal
- X jmp _sigpause
- X jmp _sigset
- X jmp _sin
- X jmp _sleep
- X jmp _sprintf
- X jmp _srand
- X jmp _sscanf
- X jmp _stat
- X jmp _strcat
- X jmp _strchr
- X jmp _strcmp
- X jmp _strcpy
- X jmp _strdup
- X jmp _strlen
- X jmp _strncmp
- X jmp _strncpy
- X jmp _strrchr
- X jmp _strtol
- X jmp _system
- X jmp _tmpnam
- X jmp _time
- X jmp _toupper
- X jmp _ttyname
- X jmp _ttyslot
- X jmp _tzset
- X jmp _uname
- X jmp _ungetc
- X jmp _unlink
- X jmp _wait
- X jmp _weekday
- X jmp _write
- X jmp _xexp
- X jmp _xldexp
- X jmp _xlocking
- X jmp _xlog
- X jmp _xlog10
- X/
- X/ Placeholder for other libc routines that might be needed
- X/
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- SHAR_EOF
- $TOUCH -am 0116190391 libc_jump.s &&
- chmod 0660 libc_jump.s ||
- echo "restore of libc_jump.s failed"
- set `wc -c libc_jump.s`;Wc_c=$1
- if test "$Wc_c" != "2479"; then
- echo original size 2479, current size $Wc_c
- fi
- # ============= libX11_jump.s ==============
- echo "x - extracting libX11_jump.s (Text)"
- sed 's/^X//' << 'SHAR_EOF' > libX11_jump.s &&
- X/
- X/ Prefix file and jump table for libX11 shared library
- X/
- X
- X.text
- X jmp _ReadInteger
- X jmp _XActivateScreenSaver
- X jmp _XAddExtension
- X jmp _XAddHost
- X jmp _XAddHosts
- X jmp _XAddPixel
- X jmp _XAddToExtensionList
- X jmp _XAddToSaveSet
- X jmp _XAllPlanes
- X jmp _XAllocClassHint
- X jmp _XAllocColor
- X jmp _XAllocColorCells
- X jmp _XAllocColorPlanes
- X jmp _XAllocIconSize
- X jmp _XAllocNamedColor
- X jmp _XAllocSizeHints
- X jmp _XAllocStandardColormap
- X jmp _XAllocWMHints
- X jmp _XAllowEvents
- X jmp _XAutoRepeatOff
- X jmp _XAutoRepeatOn
- X jmp _XBell
- X jmp _XBitmapBitOrder
- X jmp _XBitmapPad
- X jmp _XBitmapUnit
- X jmp _XBlackPixel
- X jmp _XBlackPixelOfScreen
- X jmp _XCellsOfScreen
- X jmp _XChangeActivePointerGrab
- X jmp _XChangeGC
- X jmp _XChangeKeyboardControl
- X jmp _XChangeKeyboardMapping
- X jmp _XChangePointerControl
- X jmp _XChangeProperty
- X jmp _XChangeSaveSet
- X jmp _XChangeWindowAttributes
- X jmp _XCheckIfEvent
- X jmp _XCheckMaskEvent
- X jmp _XCheckTypedEvent
- X jmp _XCheckTypedWindowEvent
- X jmp _XCheckWindowEvent
- X jmp _XCirculateSubwindows
- X jmp _XCirculateSubwindowsDown
- X jmp _XCirculateSubwindowsUp
- X jmp _XClearArea
- X jmp _XClearWindow
- X jmp _XClipBox
- X jmp _XCloseDisplay
- X jmp _XConfigureWindow
- X jmp _XConnectionNumber
- X jmp _XConvertSelection
- X jmp _XCopyArea
- X jmp _XCopyColormapAndFree
- X jmp _XCopyGC
- X jmp _XCopyPlane
- X jmp _XCreateBitmapFromData
- X jmp _XCreateColormap
- X jmp _XCreateFontCursor
- X jmp _XCreateGC
- X jmp _XCreateGlyphCursor
- X jmp _XCreateImage
- X jmp _XCreatePixmap
- X jmp _XCreatePixmapCursor
- X jmp _XCreatePixmapFromBitmapData
- X jmp _XCreateRegion
- X jmp _XCreateSimpleWindow
- X jmp _XCreateWindow
- X jmp _XDefaultColormap
- X jmp _XDefaultColormapOfScreen
- X jmp _XDefaultDepth
- X jmp _XDefaultDepthOfScreen
- X jmp _XDefaultGC
- X jmp _XDefaultGCOfScreen
- X jmp _XDefaultRootWindow
- X jmp _XDefaultScreen
- X jmp _XDefaultScreenOfDisplay
- X jmp _XDefaultVisual
- X jmp _XDefaultVisualOfScreen
- X jmp _XDefineCursor
- X jmp _XDeleteContext
- X jmp _XDeleteModifiermapEntry
- X jmp _XDeleteProperty
- X jmp _XDestroyImage
- X jmp _XDestroyRegion
- X jmp _XDestroySubwindows
- X jmp _XDestroyWindow
- X jmp _XDisableAccessControl
- X jmp _XDisplayCells
- X jmp _XDisplayHeight
- X jmp _XDisplayHeightMM
- X jmp _XDisplayKeycodes
- X jmp _XDisplayMotionBufferSize
- X jmp _XDisplayName
- X jmp _XDisplayOfScreen
- X jmp _XDisplayPlanes
- X jmp _XDisplayString
- X jmp _XDisplayWidth
- X jmp _XDisplayWidthMM
- X jmp _XDoesBackingStore
- X jmp _XDoesSaveUnders
- X jmp _XDrawArc
- X jmp _XDrawArcs
- X jmp _XDrawImageString
- X jmp _XDrawImageString16
- X jmp _XDrawLine
- X jmp _XDrawLines
- X jmp _XDrawPoint
- X jmp _XDrawPoints
- X jmp _XDrawRectangle
- X jmp _XDrawRectangles
- X jmp _XDrawSegments
- X jmp _XDrawString
- X jmp _XDrawString16
- X jmp _XDrawText
- X jmp _XDrawText16
- X jmp _XEHeadOfExtensionList
- X jmp _XESetCloseDisplay
- X jmp _XESetCopyGC
- X jmp _XESetCreateFont
- X jmp _XESetCreateGC
- X jmp _XESetError
- X jmp _XESetErrorString
- X jmp _XESetEventToWire
- X jmp _XESetFlushGC
- X jmp _XESetFreeFont
- X jmp _XESetFreeGC
- X jmp _XESetWireToEvent
- X jmp _XEmptyRegion
- X jmp _XEnableAccessControl
- X jmp _XEqualRegion
- X jmp _XEventMaskOfScreen
- X jmp _XEventsQueued
- X jmp _XFetchBuffer
- X jmp _XFetchBytes
- X jmp _XFetchName
- X jmp _XFillArc
- X jmp _XFillArcs
- X jmp _XFillPolygon
- X jmp _XFillRectangle
- X jmp _XFillRectangles
- X jmp _XFindContext
- X jmp _XFindOnExtensionList
- X jmp _XFlush
- X jmp _XForceScreenSaver
- X jmp _XFree
- X jmp _XFreeColormap
- X jmp _XFreeColors
- X jmp _XFreeCursor
- X jmp _XFreeExtensionList
- X jmp _XFreeFont
- X jmp _XFreeFontInfo
- X jmp _XFreeFontNames
- X jmp _XFreeFontPath
- X jmp _XFreeGC
- X jmp _XFreeModifiermap
- X jmp _XFreePixmap
- X jmp _XFreeStringList
- X jmp _XGContextFromGC
- X jmp _XGeometry
- X jmp _XGetAtomName
- X jmp _XGetClassHint
- X jmp _XGetCommand
- X jmp _XGetDefault
- X jmp _XGetErrorDatabaseText
- X jmp _XGetErrorText
- X jmp _XGetFontPath
- X jmp _XGetFontProperty
- X jmp _XGetGCValues
- X jmp _XGetGeometry
- X jmp _XGetIconName
- X jmp _XGetIconSizes
- X jmp _XGetImage
- X jmp _XGetInputFocus
- X jmp _XGetKeyboardControl
- X jmp _XGetKeyboardMapping
- X jmp _XGetModifierMapping
- X jmp _XGetMotionEvents
- X jmp _XGetNormalHints
- X jmp _XGetPixel
- X jmp _XGetPointerControl
- X jmp _XGetPointerMapping
- X jmp _XGetRGBColormaps
- X jmp _XGetScreenSaver
- X jmp _XGetSelectionOwner
- X jmp _XGetSizeHints
- X jmp _XGetStandardColormap
- X jmp _XGetSubImage
- X jmp _XGetTextProperty
- X jmp _XGetTransientForHint
- X jmp _XGetVisualInfo
- X jmp _XGetWMClientMachine
- X jmp _XGetWMColormapWindows
- X jmp _XGetWMHints
- X jmp _XGetWMIconName
- X jmp _XGetWMName
- X jmp _XGetWMNormalHints
- X jmp _XGetWMProtocols
- X jmp _XGetWMSizeHints
- X jmp _XGetWindowAttributes
- X jmp _XGetWindowProperty
- X jmp _XGetZoomHints
- X jmp _XGrabButton
- X jmp _XGrabKey
- X jmp _XGrabKeyboard
- X jmp _XGrabPointer
- X jmp _XGrabServer
- X jmp _XHeightMMOfScreen
- X jmp _XHeightOfScreen
- X jmp _XIconifyWindow
- X jmp _XIfEvent
- X jmp _XImageByteOrder
- X jmp _XInitExtension
- X jmp _XInsertModifiermapEntry
- X jmp _XInstallColormap
- X jmp _XInternAtom
- X jmp _XIntersectRegion
- X jmp _XKeycodeToKeysym
- X jmp _XKeysymToKeycode
- X jmp _XKeysymToString
- X jmp _XKillClient
- X jmp _XLastKnownRequestProcessed
- X jmp _XListDepths
- X jmp _XListExtensions
- X jmp _XListFonts
- X jmp _XListFontsWithInfo
- X jmp _XListHosts
- X jmp _XListInstalledColormaps
- X jmp _XListPixmapFormats
- X jmp _XListProperties
- X jmp _XLoadFont
- X jmp _XLoadQueryFont
- X jmp _XLookupColor
- X jmp _XLookupKeysym
- X jmp _XLookupString
- X jmp _XLowerWindow
- X jmp _XMapRaised
- X jmp _XMapSubwindows
- X jmp _XMapWindow
- X jmp _XMaskEvent
- X jmp _XMatchVisualInfo
- X jmp _XMaxCmapsOfScreen
- X jmp _XMaxRequestSize
- X jmp _XMinCmapsOfScreen
- X jmp _XMoveResizeWindow
- X jmp _XMoveWindow
- X jmp _XNewModifiermap
- X jmp _XNextEvent
- X jmp _XNextRequest
- X jmp _XNoOp
- X jmp _XOffsetRegion
- X jmp _XOpenDisplay
- X jmp _XParseColor
- X jmp _XParseGeometry
- X jmp _XPeekEvent
- X jmp _XPeekIfEvent
- X jmp _XPending
- X jmp _XPlanesOfScreen
- X jmp _XPointInRegion
- X jmp _XPolygonRegion
- X jmp _XProtocolRevision
- X jmp _XProtocolVersion
- X jmp _XPutBackEvent
- X jmp _XPutImage
- X jmp _XPutPixel
- X jmp _XQLength
- X jmp _XQueryBestCursor
- X jmp _XQueryBestSize
- X jmp _XQueryBestStipple
- X jmp _XQueryBestTile
- X jmp _XQueryColor
- X jmp _XQueryColors
- X jmp _XQueryExtension
- X jmp _XQueryFont
- X jmp _XQueryKeymap
- X jmp _XQueryPointer
- X jmp _XQueryTextExtents
- X jmp _XQueryTextExtents16
- X jmp _XQueryTree
- X jmp _XRaiseWindow
- X jmp _XReadBitmapFile
- X jmp _XRebindKeysym
- X jmp _XRecolorCursor
- X jmp _XReconfigureWMWindow
- X jmp _XRectInRegion
- X jmp _XRefreshKeyboardMapping
- X jmp _XRemoveFromSaveSet
- X jmp _XRemoveHost
- X jmp _XRemoveHosts
- X jmp _XReparentWindow
- X jmp _XResetScreenSaver
- X jmp _XResizeWindow
- X jmp _XResourceManagerString
- X jmp _XRestackWindows
- X jmp _XRootWindow
- X jmp _XRootWindowOfScreen
- X jmp _XRotateBuffers
- X jmp _XRotateWindowProperties
- X jmp _XSaveContext
- X jmp _XScreenCount
- X jmp _XScreenNumberOfScreen
- X jmp _XScreenOfDisplay
- X jmp _XSelectInput
- X jmp _XSendEvent
- X jmp _XServerVendor
- X jmp _XSetAccessControl
- X jmp _XSetAfterFunction
- X jmp _XSetArcMode
- X jmp _XSetAuthorization
- X jmp _XSetBackground
- X jmp _XSetClassHint
- X jmp _XSetClipMask
- X jmp _XSetClipOrigin
- X jmp _XSetClipRectangles
- X jmp _XSetCloseDownMode
- X jmp _XSetCommand
- X jmp _XSetDashes
- X jmp _XSetErrorHandler
- X jmp _XSetFillRule
- X jmp _XSetFillStyle
- X jmp _XSetFont
- X jmp _XSetFontPath
- X jmp _XSetForeground
- X jmp _XSetFunction
- X jmp _XSetGraphicsExposures
- X jmp _XSetIOErrorHandler
- X jmp _XSetIconName
- X jmp _XSetIconSizes
- X jmp _XSetInputFocus
- X jmp _XSetLineAttributes
- X jmp _XSetModifierMapping
- X jmp _XSetNormalHints
- X jmp _XSetPlaneMask
- X jmp _XSetPointerMapping
- X jmp _XSetRGBColormaps
- X jmp _XSetRegion
- X jmp _XSetScreenSaver
- X jmp _XSetSelectionOwner
- X jmp _XSetSizeHints
- X jmp _XSetStandardColormap
- X jmp _XSetStandardProperties
- X jmp _XSetState
- X jmp _XSetStipple
- X jmp _XSetSubwindowMode
- X jmp _XSetTSOrigin
- X jmp _XSetTextProperty
- X jmp _XSetTile
- X jmp _XSetTransientForHint
- X jmp _XSetWMClientMachine
- X jmp _XSetWMColormapWindows
- X jmp _XSetWMHints
- X jmp _XSetWMIconName
- X jmp _XSetWMName
- X jmp _XSetWMNormalHints
- X jmp _XSetWMProperties
- X jmp _XSetWMProtocols
- X jmp _XSetWMSizeHints
- X jmp _XSetWindowBackground
- X jmp _XSetWindowBackgroundPixmap
- X jmp _XSetWindowBorder
- X jmp _XSetWindowBorderPixmap
- X jmp _XSetWindowBorderWidth
- X jmp _XSetWindowColormap
- X jmp _XSetZoomHints
- X jmp _XShrinkRegion
- X jmp _XStoreBuffer
- X jmp _XStoreBytes
- X jmp _XStoreColor
- X jmp _XStoreColors
- X jmp _XStoreName
- X jmp _XStoreNamedColor
- X jmp _XStringListToTextProperty
- X jmp _XStringToKeysym
- X jmp _XSubImage
- X jmp _XSubtractRegion
- X jmp _XSync
- X jmp _XSynchronize
- X jmp _XTextExtents
- X jmp _XTextExtents16
- X jmp _XTextPropertyToStringList
- X jmp _XTextWidth
- X jmp _XTextWidth16
- X jmp _XTranslateCoordinates
- X jmp _XUndefineCursor
- X jmp _XUngrabButton
- X jmp _XUngrabKey
- X jmp _XUngrabKeyboard
- X jmp _XUngrabPointer
- X jmp _XUngrabServer
- X jmp _XUninstallColormap
- X jmp _XUnionRectWithRegion
- X jmp _XUnionRegion
- X jmp _XUnloadFont
- X jmp _XUnmapSubwindows
- X jmp _XUnmapWindow
- X jmp _XVendorRelease
- X jmp _XVisualIDFromVisual
- X jmp _XWMGeometry
- X jmp _XWarpPointer
- X jmp _XWhitePixel
- X jmp _XWhitePixelOfScreen
- X jmp _XWidthMMOfScreen
- X jmp _XWidthOfScreen
- X jmp _XWindowEvent
- X jmp _XWithdrawWindow
- X jmp _XWriteBitmapFile
- X jmp _XXorRegion
- X jmp _XauDisposeAuth
- X jmp _XauFileName
- X jmp _XauGetAuthByAddr
- X jmp _XauReadAuth
- X jmp _Xpermalloc
- X jmp _XrmDestroyDatabase
- X jmp _XrmGetFileDatabase
- X jmp _XrmGetResource
- X jmp _XrmGetStringDatabase
- X jmp _XrmInitialize
- X jmp _XrmMergeDatabases
- X jmp _XrmParseCommand
- X jmp _XrmPutFileDatabase
- X jmp _XrmPutLineResource
- X jmp _XrmPutResource
- X jmp _XrmPutStringResource
- X jmp _XrmQGetResource
- X jmp _XrmQGetSearchList
- X jmp _XrmQGetSearchResource
- X jmp _XrmQPutResource
- X jmp _XrmQPutStringResource
- X jmp _XrmQuarkToString
- X jmp _XrmStringToBindingQuarkList
- X jmp _XrmStringToQuark
- X jmp _XrmStringToQuarkList
- X jmp _XrmUniqueQuark
- X jmp __Reverse_Bytes
- X jmp __XAllocID
- X jmp __XAllocScratch
- X jmp __XConnectDisplay
- X jmp __XDefaultError
- X jmp __XDefaultIOError
- X jmp __XDisconnectDisplay
- X jmp __XEatData
- X jmp __XEnq
- X jmp __XError
- X jmp __XEventToWire
- X jmp __XEventsQueued
- X jmp __XFlush
- X jmp __XFlushGCCache
- X jmp __XFreeDisplayStructure
- X jmp __XFreeExtData
- X jmp __XFreeKeyBindings
- X jmp __XFreeQ
- X jmp __XGenerateGCList
- X jmp __XGetBitsPerPixel
- X jmp __XGetHostname
- X jmp __XGetScanlinePad
- X jmp __XIOError
- X jmp __XInitImageFuncPtrs
- X jmp __XInitKeysymDB
- X jmp __XPrintDefaultError
- X jmp __XProcessWindowAttributes
- X jmp __XRead
- X jmp __XReadEvents
- X jmp __XReadPad
- X jmp __XReply
- X jmp __XScreenOfWindow
- X jmp __XSend
- X jmp __XSendClientPrefix
- X jmp __XSetClipRectangles
- X jmp __XSetImage
- X jmp __XSetLastRequestRead
- X jmp __XSyncFunction
- X jmp __XUnknownNativeEvent
- X jmp __XUnknownWireEvent
- X jmp __XUpdateGCCache
- X jmp __XVIDtoVisual
- X jmp __XWaitForReadable
- X jmp __XWaitForWritable
- X jmp __XWireToEvent
- X jmp __XXlibGlobalLoadDummyProcedure
- X jmp __XrmGetResourceName
- X jmp _bcmp
- X jmp _bcopy
- X jmp _bzero
- X jmp _combineRegs
- X jmp _ffs
- X jmp _gettimeofday
- X jmp _index
- X jmp _insque
- X jmp _random
- X jmp _readv
- X jmp _remque
- X jmp _rindex
- X jmp _srandom
- X jmp _writev
- X/
- X/ Placeholder for other routines that might be needed
- X/
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- SHAR_EOF
- $TOUCH -am 0112132791 libX11_jump.s &&
- chmod 0660 libX11_jump.s ||
- echo "restore of libX11_jump.s failed"
- set `wc -c libX11_jump.s`;Wc_c=$1
- if test "$Wc_c" != "10793"; then
- echo original size 10793, current size $Wc_c
- fi
- # ============= libXmu_jump.s ==============
- echo "x - extracting libXmu_jump.s (Text)"
- sed 's/^X//' << 'SHAR_EOF' > libXmu_jump.s &&
- X/
- X/ Prefix file and jump table for libXmu shared library
- X/
- X
- X.text
- X jmp _XctCreate
- X jmp _XctFree
- X jmp _XctNextItem
- X jmp _XctReset
- X jmp _XmuAddCloseDisplayHook
- X jmp _XmuAddInitializer
- X jmp _XmuAllStandardColormaps
- X jmp _XmuCallInitializers
- X jmp _XmuClientWindow
- X jmp _XmuCompareISOLatin1
- X jmp _XmuConvertStandardSelection
- X jmp _XmuCopyISOLatin1Lowered
- X jmp _XmuCopyISOLatin1Uppered
- X jmp _XmuCreateColormap
- X jmp _XmuCreatePixmapFromBitmap
- X jmp _XmuCreateStippledPixmap
- X jmp _XmuCursorNameToIndex
- X jmp _XmuCvtFunctionToCallback
- X jmp _XmuCvtStringToBackingStore
- X jmp _XmuCvtStringToBitmap
- X jmp _XmuCvtStringToCursor
- X jmp _XmuCvtStringToJustify
- X jmp _XmuCvtStringToLong
- X jmp _XmuCvtStringToOrientation
- X jmp _XmuCvtStringToShapeStyle
- X jmp _XmuCvtStringToWidget
- X jmp _XmuDQAddDisplay
- X jmp _XmuDQCreate
- X jmp _XmuDQDestroy
- X jmp _XmuDQLookupDisplay
- X jmp _XmuDQRemoveDisplay
- X jmp _XmuDeleteStandardColormap
- X jmp _XmuDrawLogo
- X jmp _XmuDrawRoundedRectangle
- X jmp _XmuFillRoundedRectangle
- X jmp _XmuGetAtomName
- X jmp _XmuGetColormapAllocation
- X jmp _XmuGetHostname
- X jmp _XmuInternAtom
- X jmp _XmuInternStrings
- X jmp _XmuLocateBitmapFile
- X jmp _XmuLookupAPL
- X jmp _XmuLookupArabic
- X jmp _XmuLookupCloseDisplayHook
- X jmp _XmuLookupCyrillic
- X jmp _XmuLookupGreek
- X jmp _XmuLookupHebrew
- X jmp _XmuLookupJISX0201
- X jmp _XmuLookupKana
- X jmp _XmuLookupLatin1
- X jmp _XmuLookupLatin2
- X jmp _XmuLookupLatin3
- X jmp _XmuLookupLatin4
- X jmp _XmuLookupStandardColormap
- X jmp _XmuLookupString
- X jmp _XmuMakeAtom
- X jmp _XmuNameOfAtom
- X jmp _XmuPrintDefaultErrorMessage
- X jmp _XmuReadBitmapData
- X jmp _XmuReadBitmapDataFromFile
- X jmp _XmuReleaseStippledPixmap
- X jmp _XmuRemoveCloseDisplayHook
- X jmp _XmuReshapeWidget
- X jmp _XmuScreenOfWindow
- X jmp _XmuSimpleErrorHandler
- X jmp _XmuStandardColormap
- X jmp _XmuUpdateMapHints
- X jmp _XmuVisualStandardColormaps
- X jmp __XmuCCLookupDisplay
- X jmp __XmuStringToBitmapFreeCache
- X jmp __XmuStringToBitmapInitCache
- X/
- X/ Placeholder for other routines that might be needed
- X/
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- SHAR_EOF
- $TOUCH -am 0112132891 libXmu_jump.s &&
- chmod 0660 libXmu_jump.s ||
- echo "restore of libXmu_jump.s failed"
- set `wc -c libXmu_jump.s`;Wc_c=$1
- if test "$Wc_c" != "2027"; then
- echo original size 2027, current size $Wc_c
- fi
- # ============= libXt_jump.s ==============
- echo "x - extracting libXt_jump.s (Text)"
- sed 's/^X//' << 'SHAR_EOF' > libXt_jump.s &&
- X/
- X/ Prefix file and jump table for libXt shared library
- X/
- X
- X.text
- X jmp _CompositeClassPartInitialize
- X jmp _CompositeDeleteChild
- X jmp _CompositeDestroy
- X jmp _CompositeInitialize
- X jmp _CompositeInsertChild
- X jmp _LowerCase
- X jmp _PeekOtherSources
- X jmp _XrmCompileResourceList
- X jmp _XtAddActions
- X jmp _XtAddCallback
- X jmp _XtAddCallbacks
- X jmp _XtAddConverter
- X jmp _XtAddEventHandler
- X jmp _XtAddExposureToRegion
- X jmp _XtAddGrab
- X jmp _XtAddInput
- X jmp _XtAddRawEventHandler
- X jmp _XtAddTimeOut
- X jmp _XtAddWorkProc
- X jmp _XtAppAddActionHook
- X jmp _XtAppAddActions
- X jmp _XtAppAddConverter
- X jmp _XtAppAddInput
- X jmp _XtAppAddTimeOut
- X jmp _XtAppAddWorkProc
- X jmp _XtAppCreateShell
- X jmp _XtAppError
- X jmp _XtAppErrorMsg
- X jmp _XtAppGetErrorDatabase
- X jmp _XtAppGetErrorDatabaseText
- X jmp _XtAppGetSelectionTimeout
- X jmp _XtAppInitialize
- X jmp _XtAppMainLoop
- X jmp _XtAppNextEvent
- X jmp _XtAppPeekEvent
- X jmp _XtAppPending
- X jmp _XtAppProcessEvent
- X jmp _XtAppReleaseCacheRefs
- X jmp _XtAppSetErrorHandler
- X jmp _XtAppSetErrorMsgHandler
- X jmp _XtAppSetFallbackResources
- X jmp _XtAppSetSelectionTimeout
- X jmp _XtAppSetTypeConverter
- X jmp _XtAppSetWarningHandler
- X jmp _XtAppSetWarningMsgHandler
- X jmp _XtAppWarning
- X jmp _XtAppWarningMsg
- X jmp _XtAugmentTranslations
- X jmp _XtBuildEventMask
- X jmp _XtCallAcceptFocus
- X jmp _XtCallActionProc
- X jmp _XtCallCallbackList
- X jmp _XtCallCallbacks
- X jmp _XtCallConverter
- X jmp _XtCallbackExclusive
- X jmp _XtCallbackNone
- X jmp _XtCallbackNonexclusive
- X jmp _XtCallbackPopdown
- X jmp _XtCallbackReleaseCacheRef
- X jmp _XtCallbackReleaseCacheRefList
- X jmp _XtCalloc
- X jmp _XtClass
- X jmp _XtCloseDisplay
- X jmp _XtConfigureWidget
- X jmp _XtConvert
- X jmp _XtConvertAndStore
- X jmp _XtConvertCase
- X jmp _XtCopyAncestorSensitive
- X jmp _XtCopyDefaultColormap
- X jmp _XtCopyDefaultDepth
- X jmp _XtCopyFromParent
- X jmp _XtCopyScreen
- X jmp _XtCreateApplicationContext
- X jmp _XtCreateApplicationShell
- X jmp _XtCreateManagedWidget
- X jmp _XtCreatePopupShell
- X jmp _XtCreateWidget
- X jmp _XtCreateWindow
- X jmp _XtDatabase
- X jmp _XtDestroyApplicationContext
- X jmp _XtDestroyGC
- X jmp _XtDestroyWidget
- X jmp _XtDirectConvert
- X jmp _XtDisownSelection
- X jmp _XtDispatchEvent
- X jmp _XtDisplay
- X jmp _XtDisplayInitialize
- X jmp _XtDisplayOfObject
- X jmp _XtDisplayStringConversionWarning
- X jmp _XtDisplayToApplicationContext
- X jmp _XtError
- X jmp _XtErrorMsg
- X jmp _XtFindFile
- X jmp _XtFree
- X jmp _XtGetActionKeysym
- X jmp _XtGetApplicationNameAndClass
- X jmp _XtGetApplicationResources
- X jmp _XtGetConstraintResourceList
- X jmp _XtGetErrorDatabase
- X jmp _XtGetErrorDatabaseText
- X jmp _XtGetGC
- X jmp _XtGetKeysymTable
- X jmp _XtGetMultiClickTime
- X jmp _XtGetResourceList
- X jmp _XtGetSelectionRequest
- X jmp _XtGetSelectionTimeout
- X jmp _XtGetSelectionValue
- X jmp _XtGetSelectionValueIncremental
- X jmp _XtGetSelectionValues
- X jmp _XtGetSelectionValuesIncremental
- X jmp _XtGetSubresources
- X jmp _XtGetSubvalues
- X jmp _XtGetValues
- X jmp _XtGrabButton
- X jmp _XtGrabKey
- X jmp _XtGrabKeyboard
- X jmp _XtGrabPointer
- X jmp _XtHasCallbacks
- X jmp _XtInitialize
- X jmp _XtInitializeWidgetClass
- X jmp _XtInsertEventHandler
- X jmp _XtInsertRawEventHandler
- X jmp _XtInstallAccelerators
- X jmp _XtInstallAllAccelerators
- X jmp _XtIsApplicationShell
- X jmp _XtIsComposite
- X jmp _XtIsConstraint
- X jmp _XtIsManaged
- X jmp _XtIsObject
- X jmp _XtIsOverrideShell
- X jmp _XtIsRealized
- X jmp _XtIsRectObj
- X jmp _XtIsSensitive
- X jmp _XtIsShell
- X jmp _XtIsSubclass
- X jmp _XtIsTopLevelShell
- X jmp _XtIsTransientShell
- X jmp _XtIsVendorShell
- X jmp _XtIsWMShell
- X jmp _XtIsWidget
- X jmp _XtKeysymToKeycodeList
- X jmp _XtLastTimestampProcessed
- X jmp _XtMainLoop
- X jmp _XtMakeGeometryRequest
- X jmp _XtMakeResizeRequest
- X jmp _XtMalloc
- X jmp _XtManageChild
- X jmp _XtManageChildren
- X jmp _XtMapWidget
- X jmp _XtMenuPopupAction
- X jmp _XtMergeArgLists
- X jmp _XtMoveWidget
- X jmp _XtName
- X jmp _XtNameToWidget
- X jmp _XtNewString
- X jmp _XtNextEvent
- X jmp _XtOpenDisplay
- X jmp _XtOverrideTranslations
- X jmp _XtOwnSelection
- X jmp _XtOwnSelectionIncremental
- X jmp _XtParent
- X jmp _XtParseAcceleratorTable
- X jmp _XtParseTranslationTable
- X jmp _XtPeekEvent
- X jmp _XtPending
- X jmp _XtPopdown
- X jmp _XtPopup
- X jmp _XtPopupSpringLoaded
- X jmp _XtProcessEvent
- X jmp _XtQueryGeometry
- X jmp _XtRealizeWidget
- X jmp _XtRealloc
- X jmp _XtRegisterCaseConverter
- X jmp _XtRegisterGrabAction
- X jmp _XtReleaseGC
- X jmp _XtRemoveActionHook
- X jmp _XtRemoveAllCallbacks
- X jmp _XtRemoveCallback
- X jmp _XtRemoveCallbacks
- X jmp _XtRemoveEventHandler
- X jmp _XtRemoveGrab
- X jmp _XtRemoveInput
- X jmp _XtRemoveRawEventHandler
- X jmp _XtRemoveTimeOut
- X jmp _XtRemoveWorkProc
- X jmp _XtResizeWidget
- X jmp _XtResizeWindow
- X jmp _XtResolvePathname
- X jmp _XtScreen
- X jmp _XtScreenOfObject
- X jmp _XtSetErrorHandler
- X jmp _XtSetErrorMsgHandler
- X jmp _XtSetKeyTranslator
- X jmp _XtSetKeyboardFocus
- X jmp _XtSetMappedWhenManaged
- X jmp _XtSetMultiClickTime
- X jmp _XtSetSelectionTimeout
- X jmp _XtSetSensitive
- X jmp _XtSetSubvalues
- X jmp _XtSetTypeConverter
- X jmp _XtSetValues
- X jmp _XtSetWMColormapWindows
- X jmp _XtSetWarningHandler
- X jmp _XtSetWarningMsgHandler
- X jmp _XtStringConversionWarning
- X jmp _XtSuperclass
- X jmp _XtToolkitInitialize
- X jmp _XtTranslateCoords
- X jmp _XtTranslateKey
- X jmp _XtTranslateKeycode
- X jmp _XtUngrabButton
- X jmp _XtUngrabKey
- X jmp _XtUngrabKeyboard
- X jmp _XtUngrabPointer
- X jmp _XtUninstallTranslations
- X jmp _XtUnmanageChild
- X jmp _XtUnmanageChildren
- X jmp _XtUnmapWidget
- X jmp _XtUnrealizeWidget
- X jmp _XtVaAppCreateShell
- X jmp _XtVaAppInitialize
- X jmp _XtVaCreateArgsList
- X jmp _XtVaCreateManagedWidget
- X jmp _XtVaCreatePopupShell
- X jmp _XtVaCreateWidget
- X jmp _XtVaGetApplicationResources
- X jmp _XtVaGetSubresources
- X jmp _XtVaGetSubvalues
- X jmp _XtVaGetValues
- X jmp _XtVaSetSubvalues
- X jmp _XtVaSetValues
- X jmp _XtWarning
- X jmp _XtWarningMsg
- X jmp _XtWidgetToApplicationContext
- X jmp _XtWindow
- X jmp _XtWindowOfObject
- X jmp _XtWindowToWidget
- X jmp __CompileActionTable
- X jmp __XtAddCallback
- X jmp __XtAddCallbackOnce
- X jmp __XtAddDefaultConverters
- X jmp __XtAddEventSeqToStateTable
- X jmp __XtAddTMConverters
- X jmp __XtAllocError
- X jmp __XtAppCreateShell
- X jmp __XtBindActions
- X jmp __XtBuildKeysymTables
- X jmp __XtCacheFlushTag
- X jmp __XtCallCallbacks
- X jmp __XtCallConverter
- X jmp __XtCallbackList
- X jmp __XtCheckServerGrabsOnWidget
- X jmp __XtCheckSubclassFlag
- X jmp __XtCloseDisplays
- X jmp __XtCompileCallbackList
- X jmp __XtCondCopyTranslations
- X jmp __XtConstraintResDependencies
- X jmp __XtConvert
- X jmp __XtConvertCase
- X jmp __XtConvertInitialize
- X jmp __XtCopyFromArg
- X jmp __XtCopyToArg
- X jmp __XtCountVaList
- X jmp __XtCreateIndirectionTable
- X jmp __XtCreatePopupShell
- X jmp __XtCreateWidget
- X jmp __XtCvtMergeTranslations
- X jmp __XtDefaultAppContext
- X jmp __XtDefaultError
- X jmp __XtDefaultErrorMsg
- X jmp __XtDefaultWarning
- X jmp __XtDefaultWarningMsg
- X jmp __XtDependencies
- X jmp __XtDestroyAppContexts
- X jmp __XtDestroyServerGrabs
- X jmp __XtDisplayInitialize
- X jmp __XtDoPhase2Destroy
- X jmp __XtEventInitialize
- X jmp __XtFillAncestorList
- X jmp __XtFindRemapWidget
- X jmp __XtFreeActions
- X jmp __XtFreeCacheRec
- X jmp __XtFreeCallbackList
- X jmp __XtFreeConverterTable
- X jmp __XtFreeEventTable
- X jmp __XtFreePerWidgetInput
- X jmp __XtFreeTranslations
- X jmp __XtGClistFree
- X jmp __XtGetCallbackList
- X jmp __XtGetPerWidgetInput
- X jmp __XtGetProcessContext
- X jmp __XtGetResources
- X jmp __XtHandleFocus
- X jmp __XtHeapAlloc
- X jmp __XtInherit
- X jmp __XtInitErrorHandling
- X jmp __XtInitializeStateTable
- X jmp __XtInstallTranslations
- X jmp __XtIsSubclassOf
- X jmp __XtMakeGeometryRequest
- X jmp __XtMatchAtom
- X jmp __XtMatchUsingDontCareMods
- X jmp __XtMatchUsingStandardMods
- X jmp __XtOnGrabList
- X jmp __XtPopup
- X jmp __XtPopupInitialize
- X jmp __XtProcessKeyboardEvent
- X jmp __XtProcessPointerEvent
- X jmp __XtRegisterAccRemoveCallbacks
- X jmp __XtRegisterGrabs
- X jmp __XtRegisterWindow
- X jmp __XtRegularMatch
- X jmp __XtRemoveAllCallbacks
- X jmp __XtRemoveAllInputs
- X jmp __XtRemoveCallback
- X jmp __XtRemoveTranslations
- X jmp __XtResourceDependencies
- X jmp __XtResourceListInitialize
- X jmp __XtSendFocusEvent
- X jmp __XtSetDefaultConverterTable
- X jmp __XtSetDefaultErrorHandlers
- X jmp __XtSetDefaultSelectionTimeout
- X jmp __XtShellGetCoordinates
- X jmp __XtSortPerDisplayList
- X jmp __XtTableAddConverter
- X jmp __XtTranslateEvent
- X jmp __XtTranslateInitialize
- X jmp __XtTranslateTablePrint
- X jmp __XtUngrabBadGrabs
- X jmp __XtUninstallAccelerators
- X jmp __XtUnregisterWindow
- X jmp __XtVaAppInitialize
- X jmp __XtVaCreateTypedArgList
- X jmp __XtVaToArgList
- X jmp __XtVaToTypedArgList
- X jmp __XtWindowedAncestor
- X jmp __XtwaitForSomething
- X/
- X/ Placeholder for other routines that might be needed
- X/
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- SHAR_EOF
- $TOUCH -am 0112132891 libXt_jump.s &&
- chmod 0660 libXt_jump.s ||
- echo "restore of libXt_jump.s failed"
- set `wc -c libXt_jump.s`;Wc_c=$1
- if test "$Wc_c" != "8376"; then
- echo original size 8376, current size $Wc_c
- fi
- # ============= libXaw_jump.s ==============
- echo "x - extracting libXaw_jump.s (Text)"
- sed 's/^X//' << 'SHAR_EOF' > libXaw_jump.s &&
- X/
- X/ Prefix file and jump table for libXaw shared library
- X/
- X
- X.text
- X jmp _CommitGripAdjustment
- X jmp _FindCornerItems
- X jmp _HighlightBackground
- X jmp _ItemInRectangle
- X jmp _PaintItemName
- X jmp _XawAsciiSave
- X jmp _XawAsciiSaveAsFile
- X jmp _XawAsciiSourceChanged
- X jmp _XawAsciiSourceFreeString
- X jmp _XawDialogAddButton
- X jmp _XawDialogGetValueString
- X jmp _XawDiskSourceCreate
- X jmp _XawFormDoLayout
- X jmp _XawInitializeWidgetSet
- X jmp _XawListChange
- X jmp _XawListHighlight
- X jmp _XawListShowCurrent
- X jmp _XawListUnhighlight
- X jmp _XawPanedAllowResize
- X jmp _XawPanedGetMinMax
- X jmp _XawPanedGetNumSub
- X jmp _XawPanedSetMinMax
- X jmp _XawPanedSetRefigureMode
- X jmp _XawScrollbarSetThumb
- X jmp _XawSimpleMenuAddGlobalActions
- X jmp _XawSimpleMenuClearActiveEntry
- X jmp _XawSimpleMenuGetActiveEntry
- X jmp _XawStringSourceCreate
- X jmp _XawTextChangeOptions
- X jmp _XawTextDisableRedisplay
- X jmp _XawTextDisplay
- X jmp _XawTextDisplayCaret
- X jmp _XawTextEnableRedisplay
- X jmp _XawTextGetInsertionPoint
- X jmp _XawTextGetOptions
- X jmp _XawTextGetSelectionPos
- X jmp _XawTextGetSource
- X jmp _XawTextInvalidate
- X jmp _XawTextReplace
- X jmp _XawTextSearch
- X jmp _XawTextSetInsertionPoint
- X jmp _XawTextSetLastPos
- X jmp _XawTextSetSelection
- X jmp _XawTextSetSelectionArray
- X jmp _XawTextSetSource
- X jmp _XawTextSinkClearToBackground
- X jmp _XawTextSinkDisplayText
- X jmp _XawTextSinkFindDistance
- X jmp _XawTextSinkFindPosition
- X jmp _XawTextSinkGetCursorBounds
- X jmp _XawTextSinkInsertCursor
- X jmp _XawTextSinkMaxHeight
- X jmp _XawTextSinkMaxLines
- X jmp _XawTextSinkResolve
- X jmp _XawTextSinkSetTabs
- X jmp _XawTextSourceConvertSelection
- X jmp _XawTextSourceRead
- X jmp _XawTextSourceReplace
- X jmp _XawTextSourceScan
- X jmp _XawTextSourceSearch
- X jmp _XawTextSourceSetSelection
- X jmp _XawTextTopPosition
- X jmp _XawTextUnsetSelection
- X jmp _XawToggleChangeRadioGroup
- X jmp _XawToggleGetCurrent
- X jmp _XawToggleSetCurrent
- X jmp _XawToggleUnsetCurrent
- X jmp __SetSelection
- X jmp __XawTextAlterSelection
- X jmp __XawTextBuildLineTable
- X jmp __XawTextCheckResize
- X jmp __XawTextClearAndCenterDisplay
- X jmp __XawTextDoReplaceAction
- X jmp __XawTextDoSearchAction
- X jmp __XawTextExecuteUpdate
- X jmp __XawTextGetSTRING
- X jmp __XawTextGetText
- X jmp __XawTextInsertFile
- X jmp __XawTextInsertFileAction
- X jmp __XawTextNeedsUpdating
- X jmp __XawTextPopdownSearchAction
- X jmp __XawTextPrepareToUpdate
- X jmp __XawTextReplace
- X jmp __XawTextSearch
- X jmp __XawTextSelectionList
- X jmp __XawTextSetField
- X jmp __XawTextSetScrollBars
- X jmp __XawTextSetSelection
- X jmp __XawTextShowPosition
- X jmp __XawTextVScroll
- X jmp __XawTextZapSelection
- X/
- X/ Placeholder for other routines that might be needed
- X/
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- SHAR_EOF
- $TOUCH -am 0112132891 libXaw_jump.s &&
- chmod 0660 libXaw_jump.s ||
- echo "restore of libXaw_jump.s failed"
- set `wc -c libXaw_jump.s`;Wc_c=$1
- if test "$Wc_c" != "2653"; then
- echo original size 2653, current size $Wc_c
- fi
- # ============= libXext_jump.s ==============
- echo "x - extracting libXext_jump.s (Text)"
- sed 's/^X//' << 'SHAR_EOF' > libXext_jump.s &&
- X/
- X/ Prefix file and jump table for libXext shared library
- X/
- X
- X.text
- X jmp _XMITMiscGetBugMode
- X jmp _XMITMiscQueryExtension
- X jmp _XMITMiscSetBugMode
- X jmp _XMissingExtension
- X jmp _XSetExtensionErrorHandler
- X jmp _XShapeCombineMask
- X jmp _XShapeCombineRectangles
- X jmp _XShapeCombineRegion
- X jmp _XShapeCombineShape
- X jmp _XShapeGetRectangles
- X jmp _XShapeInputSelected
- X jmp _XShapeOffsetShape
- X jmp _XShapeQueryExtension
- X jmp _XShapeQueryExtents
- X jmp _XShapeQueryVersion
- X jmp _XShapeSelectInput
- X jmp _XShmAttach
- X jmp _XShmCreateImage
- X jmp _XShmCreatePixmap
- X jmp _XShmDetach
- X jmp _XShmGetEventBase
- X jmp _XShmGetImage
- X jmp _XShmPutImage
- X jmp _XShmQueryExtension
- X jmp _XShmQueryVersion
- X jmp _XTestFakeInput
- X jmp _XTestFlush
- X jmp _XTestGetInput
- X jmp _XTestMovePointer
- X jmp _XTestPressButton
- X jmp _XTestPressKey
- X jmp _XTestQueryInputSize
- X jmp _XTestReset
- X jmp _XTestStopInput
- X jmp _XextAddDisplay
- X jmp _XextCreateExtension
- X jmp _XextDestroyExtension
- X jmp _XextFindDisplay
- X jmp _XextRemoveDisplay
- X jmp _XmbufChangeBufferAttributes
- X jmp _XmbufChangeWindowAttributes
- X jmp _XmbufCreateBuffers
- X jmp _XmbufCreateStereoWindow
- X jmp _XmbufDestroyBuffers
- X jmp _XmbufDisplayBuffers
- X jmp _XmbufGetBufferAttributes
- X jmp _XmbufGetScreenInfo
- X jmp _XmbufGetVersion
- X jmp _XmbufGetWindowAttributes
- X jmp _XmbufQueryExtension
- X jmp __XExtensionGlobalLoadDummyProcedure
- X/
- X/ Placeholder for other routines that might be needed
- X/
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- X .byte 0,0,0,0,0
- SHAR_EOF
- $TOUCH -am 0112132891 libXext_jump.s &&
- chmod 0660 libXext_jump.s ||
- echo "restore of libXext_jump.s failed"
- set `wc -c libXext_jump.s`;Wc_c=$1
- if test "$Wc_c" != "1475"; then
- echo original size 1475, current size $Wc_c
- fi
- # ============= Scrt0.s ==============
- echo "x - extracting Scrt0.s (Text)"
- sed 's/^X//' << 'SHAR_EOF' > Scrt0.s &&
- X/
- X/ Replacement startup file neede when using shared libraries
- X/
- X/ Author: pgd@compuram.bbt.se
- X/
- X .file "Scrt0.s"
- X .text
- X .globl start0, __nd_
- X
- X jmp start0
- Xstart0:
- X movl %eax,__nd_ / Fill in top of memory address
- X xor %ebp,%ebp
- X call __start
- X push %eax / Exit status
- X call __exit
- X1:
- X jmp 1b
- X
- SHAR_EOF
- $TOUCH -am 0109171091 Scrt0.s &&
- chmod 0660 Scrt0.s ||
- echo "restore of Scrt0.s failed"
- set `wc -c Scrt0.s`;Wc_c=$1
- if test "$Wc_c" != "296"; then
- echo original size 296, current size $Wc_c
- fi
- # ============= libX11_s.c ==============
- echo "x - extracting libX11_s.c (Text)"
- sed 's/^X//' << 'SHAR_EOF' > libX11_s.c &&
- X/*
- X * Prefix file and jump table for Xlib shared library
- X *
- X * Author: P.Garbha pgd@compuram.bbt.se
- X */
- X
- Xchar **environ;
- Xchar *_nd_;
- Xint _fac;
- Xint _acrtused;
- X
- X/*
- X * Identifier to autload library
- X */
- Xchar __SHLIB__libX11_s;
- X
- X__JumpTabEnd()
- X{
- X}
- X
- Xvoid (*_shlib_exit)();
- X
- X/*
- X * exit routine to use from within library
- X */
- Xexit(status)
- X int status;
- X{
- X _shlib_exit(status);
- X}
- X
- XlibX11_exit(status)
- X{
- X _shlib_exit(status);
- X}
- X
- SHAR_EOF
- $TOUCH -am 0116154691 libX11_s.c &&
- chmod 0660 libX11_s.c ||
- echo "restore of libX11_s.c failed"
- set `wc -c libX11_s.c`;Wc_c=$1
- if test "$Wc_c" != "418"; then
- echo original size 418, current size $Wc_c
- fi
- # ============= hello.c ==============
- echo "x - extracting hello.c (Text)"
- sed 's/^X//' << 'SHAR_EOF' > hello.c &&
- X#include <stdio.h>
- X
- Xmain()
- X{
- X/* write(1, "Haribol!\n", 8); */
- X printf("Haribol!!!\n");
- X exit(0);
- X}
- SHAR_EOF
- $TOUCH -am 1225114590 hello.c &&
- chmod 0660 hello.c ||
- echo "restore of hello.c failed"
- set `wc -c hello.c`;Wc_c=$1
- if test "$Wc_c" != "99"; then
- echo original size 99, current size $Wc_c
- fi
- # ============= coffhdr.c ==============
- echo "x - extracting coffhdr.c (Text)"
- sed 's/^X//' << 'SHAR_EOF' > coffhdr.c &&
- X/*
- X * Program to display coff headers
- X */
- X
- X#include <stdio.h>
- X#include <sys/types.h>
- X#include <sys/fcntl.h>
- X#include <sys/coff.h>
- X#include <sys/a.out.h>
- X#include <time.h>
- X
- Xchar *fname;
- X
- Xstruct filehdr fhdr; /* coff file header */
- Xstruct aouthdr ahdr; /* a.out header */
- Xstruct scnhdr *shdr; /* section headers */
- X
- Xmain(argc, argv)
- X int argc;
- X char **argv;
- X{
- X int fd;
- X
- X if (argc < 2)
- X fname = "a.out";
- X else
- X fname = argv[1];
- X fd = open(fname, O_RDONLY);
- X if (fd == -1) {
- X perror(fname);
- X exit(1);
- X }
- X loadheaders(fd);
- X showheaders();
- X/* dumplibs(); */
- X exit(0);
- X}
- X
- Xloadheaders(fd)
- X int fd;
- X{
- X if (read(fd, &fhdr, sizeof fhdr) != sizeof fhdr) {
- X perror("coffhdr"); exit(1);
- X }
- X if (fhdr.f_magic == X_MAGIC) {
- X fprintf(stderr, "file is an x.out type file\n");
- X exit(1);
- X }
- X if (fhdr.f_magic != I386MAGIC) {
- X fprintf(stderr, "Not a coff exec file\n");
- X exit(1);
- X }
- X if (read(fd, &ahdr, sizeof ahdr) != sizeof ahdr) {
- X perror("aouthdr"); exit(1);
- X }
- X if (fhdr.f_nscns) {
- X shdr = (struct scnhdr *)calloc(sizeof(struct scnhdr), fhdr.f_nscns);
- X if (shdr == NULL) {
- X perror("coffhdr"); exit(1);
- X }
- X if (read(fd, (char *)shdr, fhdr.f_nscns * sizeof(struct scnhdr)) == -1) {
- X perror("scnhdr"); exit(1);
- X }
- X } else
- X shdr = NULL;
- X}
- X
- Xshowheaders()
- X{
- X int i;
- X
- X printf("File: %s\n", fname);
- X printf("Created: %s\n", asctime(localtime(&fhdr.f_timdat)));
- X printf("Symbol table addr: %06x\n", fhdr.f_symptr);
- X printf("Number of symbols: %d\n", fhdr.f_nsyms);
- X printf("Flags: \n");
- X if (fhdr.f_flags & F_RELFLG)
- X printf("\trelocation info stripped from file\n");
- X if (fhdr.f_flags & F_EXEC)
- X printf("\tfile is executable\n");
- X if (fhdr.f_flags & F_LNNO)
- X printf("\tline numbers stripped from file\n");
- X if (fhdr.f_flags & F_LSYMS)
- X printf("\tlocal symbols stripped from file\n");
- X if (fhdr.f_flags & F_MINMAL)
- X printf("\tthis is a minimal object file ('.m') output of fextract\n");
- X if (fhdr.f_flags & F_UPDATE)
- X printf("\tthis is a fully bound update file, output of ogen\n");
- X if (fhdr.f_flags & F_SWABD)
- X printf("\tthis file has had its bytes swabbed (in names)\n");
- X if (fhdr.f_flags & F_AR16WR)
- X printf("\tthis file has the byte ordering of an AR16WR\n");
- X if (fhdr.f_flags & F_AR32WR)
- X printf("\tthis file has the byte ordering of an AR32WR machine\n");
- X if (fhdr.f_flags & F_AR32W)
- X printf("\tthis file has the byte ordering of an AR32W machine\n");
- X if (fhdr.f_flags & F_PATCH)
- X printf("\tfile contains 'patch' list in optional header\n");
- X if (fhdr.f_flags & F_NODF)
- X printf("\t(minimal file only) no decision functions for replaced functions\n");
- X putchar('\n');
- X printf("version: %d\n", (int)ahdr.vstamp);
- X printf("Text size: %x\n", ahdr.tsize);
- X printf("Data size: %x\n", ahdr.dsize);
- X printf("BSS size: %x\n", ahdr.bsize);
- X printf("Entry address: %x\n", ahdr.entry);
- X printf("Text base: %x\n", ahdr.text_start);
- X printf("Data base: %x\n", ahdr.data_start);
- X putchar('\n');
- X
- X/*
- X "nn ssssssss xxxxxxxx xxxxxxxx xxxxxx xxxxxx xxxxxx xxxxxx ddddd ddddd */
- Xprintf("seg name p.addr v.addr size data reloc lnos # rel # lno flags\n");
- X for (i = 0; i < fhdr.f_nscns; i++) {
- X printf("%2d %8s %08x %08x %06x %5x %5x %5x %5x %5d %5d ",
- X i, shdr[i].s_name,
- X shdr[i].s_paddr, shdr[i].s_vaddr, shdr[i].s_size,
- X shdr[i].s_scnptr, shdr[i].s_relptr, shdr[i].s_lnnoptr,
- X shdr[i].s_nreloc, shdr[i].s_nlnno);
- X if (shdr[i].s_flags & STYP_REG)
- X printf("regular");
- X if (shdr[i].s_flags & STYP_DSECT)
- X printf("dummy");
- X if (shdr[i].s_flags & STYP_NOLOAD)
- X printf("noload");
- X if (shdr[i].s_flags & STYP_GROUP)
- X printf("grouped");
- X if (shdr[i].s_flags & STYP_PAD)
- X printf("padding");
- X if (shdr[i].s_flags & STYP_COPY)
- X printf("copy");
- X if (shdr[i].s_flags & STYP_INFO)
- X printf("comment");
- X if (shdr[i].s_flags & STYP_LIB)
- X printf("lib");
- X if (shdr[i].s_flags & STYP_OVER)
- X printf("overlay");
- X if (shdr[i].s_flags & STYP_TEXT)
- X printf("text");
- X if (shdr[i].s_flags & STYP_DATA)
- X printf("data");
- X if (shdr[i].s_flags & STYP_BSS)
- X printf("bss");
- X putchar('\n');
- X
- X }
- X}
- X
- Xdumplibs()
- X{
- X int i;
- X
- X for (i = 0; i < fhdr.f_nscns; i++) {
- X if ((shdr[i].s_flags & STYP_LIB) == 0)
- X continue;
- X }
- X}
- SHAR_EOF
- $TOUCH -am 1224131090 coffhdr.c &&
- chmod 0660 coffhdr.c ||
- echo "restore of coffhdr.c failed"
- set `wc -c coffhdr.c`;Wc_c=$1
- if test "$Wc_c" != "4277"; then
- echo original size 4277, current size $Wc_c
- fi
- echo "End of part 2, continue with part 3"
- exit 0
-