/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */
/* time: February 21, 1992 7:54:21 pm PST */
/* C2C version: October 16, 1990 (native) */
/* ref-counting: off */
/* file: UnixSysCallExtensionsImpl, module: UnixSysCallExtensionsImpl */
/* switches: bcfhklnouw */
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
#include <xr/ThreadsSharedMem.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <xr/ThreadsTermination.h>
static char versionStamp[] = "@(#)mob←version [838082811,1575804892] UnixSysCallExtensionsImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
#define SOURCE(p, l) /* source p, l */
static void NoName←Q1260();
static void UnixSysCallExtensionsImpl←P0();
static word Open4←P60();
static word GetDescriptorKind←P120();
static word GetDTableSize1←P180();
static word ExpandPath←P240();
static word GetNumberOfFreeFDs←P300();
static word SetGetBlocking←P360();
static word GetGetBlocking←P420();
static word SetPutBlocking←P480();
static word GetPutBlocking←P540();
static word SetGetTimeout←P600();
static word GetGetTimeout←P660();
static word SetPutTimeout←P720();
static word GetPutTimeout←P780();
static word Spawn←P840();
static word CDSpawn←P900();
static word PPOpen←P960();
static word RExec2←P1020();
static word VMReserve←P1080();
static word UNTHREADEDShmCtl←P1140();
static word RegisterUNTHREADEDTerminationCleanupProc←P1200();
static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\061\364\040\373\300\135\354\337\334\100\150\000\000"};
static struct {unsigned f; char r[16];} string2 = {851984, "\257\300\326\304\020\321\300\126\326\230\014\100\150\000\000"};
static struct {
word f0[4]; word f4; word f5; word f6;
word f7; word f8; word f9; word f10;
word f11; word f12; word f13; word f14;
word f15; word f16; word f17; word f18;
word f19; word f20; word f21; word f22;
word f23; word f24; word f25; word f26;
word f27; word f28; word f29; word f30;
word f31; word f32; word f33; word f34;
word f35; word f36; word f37; word f38;
word f39; word f40; word f41; word f42;
word f43; word f44; word f45[2];
} globalframe = {
{0}, (word) RegisterUNTHREADEDTerminationCleanupProc←P1200, 0, (word) UNTHREADEDShmCtl←P1140,
0, (word) VMReserve←P1080, 0, (word) RExec2←P1020,
0, (word) PPOpen←P960, 0, (word) CDSpawn←P900,
0, (word) Spawn←P840, 0, (word) GetPutTimeout←P780,
0, (word) SetPutTimeout←P720, 0, (word) GetGetTimeout←P660,
0, (word) SetGetTimeout←P600, 0, (word) GetPutBlocking←P540,
0, (word) SetPutBlocking←P480, 0, (word) GetGetBlocking←P420,
0, (word) SetGetBlocking←P360, 0, (word) GetNumberOfFreeFDs←P300,
0, (word) ExpandPath←P240, 0, (word) GetDTableSize1←P180,
0, (word) GetDescriptorKind←P120, 0, (word) Open4←P60,
0, (word) UnixSysCallExtensionsImpl←P0, {0}
};
static void NoName←Q1260()
{
register ptr gf←c089 = (ptr) &globalframe;
word var←c11696;
(void) XR←DeclareGlobalFrame((word) "UnixSysCallExtensionsImpl", &globalframe, (word) XR←GetTypeIndexS((word) (&string1))
, (word) (( (bPt) gf←c089)+176)/* var←c10992 */ );
var←c11696 = (word) XR←ExportInterface((word) "UnixSysCallExtensions", (word) XR←GetTypeIndexS((word) (&string2)), 22);
(* (( (ptr) gf←c089)+46)/* var←c11664 */ ) = var←c11696;
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+168)/* var←c10960 */ , 68157444);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+160)/* var←c10928 */ , 67371777);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+152)/* var←c10896 */ , 67372033);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+144)/* var←c10864 */ , 67372289);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+136)/* var←c10832 */ , 67372545);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+128)/* var←c10800 */ , 67634946);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+120)/* var←c10768 */ , 67373057);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+112)/* var←c10736 */ , 67635458);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+104)/* var←c10704 */ , 67373569);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+96)/* var←c10672 */ , 67635970);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+88)/* var←c10640 */ , 67374081);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+80)/* var←c10608 */ , 67636482);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+72)/* var←c10576 */ , 67374593);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+64)/* var←c10544 */ , 68161284);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+56)/* var←c10512 */ , 68423685);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+48)/* var←c10480 */ , 67375361);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+40)/* var←c10448 */ , 68948487);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+32)/* var←c10416 */ , 67375873);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+24)/* var←c10384 */ , 67900419);
(void) XR←ExportProcS(var←c11696, (word) (( (bPt) gf←c089)+16)/* var←c10352 */ , 67638530);
}
static void UnixSysCallExtensionsImpl←P0(formal←c025, formal←c024)
word formal←c025;
word formal←c024;
{
/* UnixSysCallExtensionsImpl: */
}
static word Open4←P60(path←v3104, flags←v3132, mode←v3160, kind←v3188)
word path←v3104;
word flags←v3132;
word mode←v3160;
word kind←v3188;
{
word var←c3232;
/* Open4: */
SOURCE(184, 270)
SOURCE(409, 45)
return((word) XR←Open4(path←v3104, flags←v3132, mode←v3160, kind←v3188));
}
static word GetDescriptorKind←P120(d←v3292)
word d←v3292;
{
word var←c3336;
/* GetDescriptorKind: */
SOURCE(460, 200)
SOURCE(625, 35)
return((word) XR←GetDescriptorKind(d←v3292));
}
static word GetDTableSize1←P180(kind←v3396)
word kind←v3396;
{
word var←c3440;
/* GetDTableSize1: */
SOURCE(666, 199)
SOURCE(830, 35)
return((word) XR←GetDTableSize1(kind←v3396));
}
static word ExpandPath←P240(path←v3500)
word path←v3500;
{
word var←c3544;
/* ExpandPath: */
SOURCE(871, 193)
SOURCE(1033, 31)
return((word) XR←ExpandPath(path←v3500));
}
static word GetNumberOfFreeFDs←P300(kind←v3604)
word kind←v3604;
{
word var←c3648;
/* GetNumberOfFreeFDs: */
SOURCE(1070, 215)
SOURCE(1246, 39)
return((word) XR←GetNumberOfFreeFDs(kind←v3604));
}
static word SetGetBlocking←P360(s←v3708, blocking←v3736)
word s←v3708;
word blocking←v3736;
{
word var←c3780;
/* SetGetBlocking: */
SOURCE(1348, 240)
SOURCE(1546, 42)
return((word) XR←SetGetBlocking(s←v3708, blocking←v3736));
}
static word GetGetBlocking←P420(s←v3840)
word s←v3840;
{
word var←c3884;
/* GetGetBlocking: */
SOURCE(1594, 200)
SOURCE(1762, 32)
return((word) XR←GetGetBlocking(s←v3840));
}
static word SetPutBlocking←P480(s←v3944, blocking←v3972)
word s←v3944;
word blocking←v3972;
{
word var←c4016;
/* SetPutBlocking: */
SOURCE(1800, 240)
SOURCE(1998, 42)
return((word) XR←SetPutBlocking(s←v3944, blocking←v3972));
}
static word GetPutBlocking←P540(s←v4076)
word s←v4076;
{
word var←c4120;
/* GetPutBlocking: */
SOURCE(2046, 200)
SOURCE(2214, 32)
return((word) XR←GetPutBlocking(s←v4076));
}
static word SetGetTimeout←P600(s←v4180, timeoutMsec←v4208)
word s←v4180;
word timeoutMsec←v4208;
{
word var←c4252;
/* SetGetTimeout: */
SOURCE(2253, 229)
SOURCE(2438, 44)
return((word) XR←SetGetTimeout(s←v4180, timeoutMsec←v4208));
}
static word GetGetTimeout←P660(s←v4312)
word s←v4312;
{
word var←c4356;
/* GetGetTimeout: */
SOURCE(2487, 180)
SOURCE(2636, 31)
return((word) XR←GetGetTimeout(s←v4312));
}
static word SetPutTimeout←P720(s←v4416, timeoutMsec←v4444)
word s←v4416;
word timeoutMsec←v4444;
{
word var←c4488;
/* SetPutTimeout: */
SOURCE(2672, 229)
SOURCE(2857, 44)
return((word) XR←SetPutTimeout(s←v4416, timeoutMsec←v4444));
}
static word GetPutTimeout←P780(s←v4548)
word s←v4548;
{
word var←c4592;
/* GetPutTimeout: */
SOURCE(2907, 180)
SOURCE(3056, 31)
return((word) XR←GetPutTimeout(s←v4548));
}
static word Spawn←P840(cmd←v4652, stdin←v4680, stdout←v4708, stderr←v4736)
word cmd←v4652;
word stdin←v4680;
word stdout←v4708;
word stderr←v4736;
{
word var←c4780;
/* Spawn: */
SOURCE(3093, 233)
SOURCE(3278, 48)
return((word) XR←Spawn(cmd←v4652, stdin←v4680, stdout←v4708, stderr←v4736));
}
static word CDSpawn←P900(cmd←v4840, wd←v4868, stdin←v4896, stdout←v4924, stderr←v4952)
word cmd←v4840;
word wd←v4868;
word stdin←v4896;
word stdout←v4924;
word stderr←v4952;
{
word var←c4996;
/* CDSpawn: */
SOURCE(3332, 283)
SOURCE(3561, 54)
return((word) XR←CDSpawn(cmd←v4840, wd←v4868, stdin←v4896, stdout←v4924, stderr←v4952));
}
static word PPOpen←P960(cmd←v5056)
word cmd←v5056;
{
word var←c5100;
/* PPOpen: */
SOURCE(3620, 164)
SOURCE(3758, 26)
return((word) XR←PPOpen(cmd←v5056));
}
static word RExec2←P1020(host←v5160, port←v5188, user←v5216, passwd←v5244, cmd←v5272, errbuf←v5300, errbufbytes←v5328)
word host←v5160;
word port←v5188;
word user←v5216;
word passwd←v5244;
word cmd←v5272;
word errbuf←v5300;
word errbufbytes←v5328;
{
word var←c5372;
/* RExec2: */
SOURCE(3788, 411)
SOURCE(4126, 73)
return((word) XR←RExec2(host←v5160, port←v5188, user←v5216, passwd←v5244, cmd←v5272, errbuf←v5300
, errbufbytes←v5328));
}
static word VMReserve←P1080(nbytes←v5432)
word nbytes←v5432;
{
word address←v5476;
/* VMReserve: */
SOURCE(4204, 217)
SOURCE(4394, 27)
return((word) XR←VMReserve(nbytes←v5432));
}
static word UNTHREADEDShmCtl←P1140(shmId←v5536, cmd←v5564, buf←v5592)
word shmId←v5536;
word cmd←v5564;
word buf←v5592;
{
word var←c5648;
/* UNTHREADEDShmCtl: */
SOURCE(4425, 416)
SOURCE(4798, 43)
return((word) shmctl(shmId←v5536, cmd←v5564, buf←v5592));
}
static word RegisterUNTHREADEDTerminationCleanupProc←P1200(cleanup←v5708, data←v5736)
word cleanup←v5708;
word data←v5736;
{
word var←c5868;
/* RegisterUNTHREADEDTerminationCleanupProc: */
SOURCE(4845, 375)
SOURCE(5156, 64)
return((word) XR←RegisterTerminationCleanupProc(cleanup←v5708, data←v5736));
}
/* file: UnixSysCallExtensionsImpl, module: UnixSysCallExtensionsImpl, compiled at: February 21, 1992 7:54:21 pm PST */
extern void XR←install←UnixSysCallExtensionsImpl() {
NoName←Q1260();
}
extern void XR←run←UnixSysCallExtensionsImpl() { XR←Start(&globalframe); }