A-19
A3
struct Device_WriteResp {
Device_ErrorCode error;
unsigned long size;
/* Number of bytes written */
};
struct Device_ReadParms {
Device_Link lid;
/* link id from create_link */
unsigned long requestSize;
/* Bytes requested */
unsigned long io_timeout;
/* time to wait for I/O */
unsigned long lock_timeout;
/* time to wait for lock */
Device_Flags flags;
char termChar;
/* valid if flags & termchrset */
};
struct Device_ReadResp {
Device_ErrorCode error;
long reason;
/* Reason(s) read completed */
opaque data<>;
/* data.len and data.val */
};
struct Device_ReadStbResp {
Device_ErrorCode error;
/* error code */
unsigned char stb;
/* the returned status byte */
};
struct Device_GenericParms {
Device_Link lid;
/* Device_Link id from connect call */
Device_Flags flags;
/* flags with options */
unsigned long lock_timeout;
/* time to wait for lock */
unsigned long io_timeout;
/* time to wait for I/O */
};
struct Device_RemoteFunc {
unsigned long hostAddr;
/* Host servicing Interrupt */
unsigned short hostPort;
/* valid port # on client */
unsigned long progNum;
/* DEVICE_INTR */
unsigned long progVers;
/* DEVICE_INTR_VERSION */
Device_AddrFamily progFamily; /* DEVICE_UDP | DEVICE_
};
TCP */
struct Device_EnableSrqParms {
Device_Link lid;
bool enable;
/* Enable or disable interrupts */
opaque handle<40>;
/* Host specific data */
};