#include "rfsv.h" char *rfsv:: opErr(long status) { enum errs e = (enum errs) status; switch (e) { case E_PSI_GEN_NONE: return "no error"; case E_PSI_GEN_FAIL: return "general"; case E_PSI_GEN_ARG: return "bad argument"; case E_PSI_GEN_OS: return "OS error"; case E_PSI_GEN_NSUP: return "not supported"; case E_PSI_GEN_UNDER: return "numeric underflow"; case E_PSI_GEN_OVER: return "numeric overflow"; case E_PSI_GEN_RANGE: return "numeric exception"; case E_PSI_GEN_INUSE: return "in use"; case E_PSI_GEN_NOMEMORY: return "out of memory"; case E_PSI_GEN_NOSEGMENTS: return "out of segments"; case E_PSI_GEN_NOSEM: return "out of semaphores"; case E_PSI_GEN_NOPROC: return "out of processes"; case E_PSI_GEN_OPEN: return "already open"; case E_PSI_GEN_NOTOPEN: return "not open"; case E_PSI_GEN_IMAGE: return "bad image"; case E_PSI_GEN_RECEIVER: return "receiver error"; case E_PSI_GEN_DEVICE: return "device error"; case E_PSI_GEN_FSYS: return "no filesystem"; case E_PSI_GEN_START: return "not ready"; case E_PSI_GEN_NOFONT: return "no font"; case E_PSI_GEN_TOOWIDE: return "too wide"; case E_PSI_GEN_TOOMANY: return "too many"; case E_PSI_FILE_EXIST: return "file already exists"; case E_PSI_FILE_NXIST: return "no such file"; case E_PSI_FILE_WRITE: return "write error"; case E_PSI_FILE_READ: return "read error"; case E_PSI_FILE_EOF: return "end of file"; case E_PSI_FILE_FULL: return "disk/serial read buffer full"; case E_PSI_FILE_NAME: return "invalid name"; case E_PSI_FILE_ACCESS: return "access denied"; case E_PSI_FILE_LOCKED: return "ressource locked"; case E_PSI_FILE_DEVICE: return "no such device"; case E_PSI_FILE_DIR: return "no such directory"; case E_PSI_FILE_RECORD: return "no such record"; case E_PSI_FILE_RDONLY: return "file is read-only"; case E_PSI_FILE_INV: return "invalid I/O operation"; case E_PSI_FILE_PENDING: return "I/O pending (not yet completed)"; case E_PSI_FILE_VOLUME: return "invalid volume name"; case E_PSI_FILE_CANCEL: return "cancelled"; case E_PSI_FILE_ALLOC: return "no memory for control block"; case E_PSI_FILE_DISC: return "unit disconnected"; case E_PSI_FILE_CONNECT: return "already connected"; case E_PSI_FILE_RETRAN: return "retransmission threshold exceeded"; case E_PSI_FILE_LINE: return "physical link failure"; case E_PSI_FILE_INACT: return "inactivity timer expired"; case E_PSI_FILE_PARITY: return "serial parity error"; case E_PSI_FILE_FRAME: return "serial framing error"; case E_PSI_FILE_OVERRUN: return "serial overrun error"; case E_PSI_MDM_CONFAIL: return "modem cannot connect to remote modem"; case E_PSI_MDM_BUSY: return "remote modem busy"; case E_PSI_MDM_NOANS: return "remote modem did not answer"; case E_PSI_MDM_BLACKLIST: return "number blacklisted by the modem"; case E_PSI_FILE_NOTREADY: return "drive not ready"; case E_PSI_FILE_UNKNOWN: return "unknown media"; case E_PSI_FILE_DIRFULL: return "directory full"; case E_PSI_FILE_PROTECT: return "write-protected"; case E_PSI_FILE_CORRUPT: return "media corrupt"; case E_PSI_FILE_ABORT: return "aborted operation"; case E_PSI_FILE_ERASE: return "failed to erase flash media"; case E_PSI_FILE_INVALID: return "invalid file for DBF system"; case E_PSI_GEN_POWER: return "power failure"; case E_PSI_FILE_TOOBIG: return "too big"; case E_PSI_GEN_DESCR: return "bad descriptor"; case E_PSI_GEN_LIB: return "bad entry point"; case E_PSI_FILE_NDISC: return "could not diconnect"; case E_PSI_FILE_DRIVER: return "bad driver"; case E_PSI_FILE_COMPLETION: return "operation not completed"; case E_PSI_GEN_BUSY: return "server busy"; case E_PSI_GEN_TERMINATED: return "terminated"; case E_PSI_GEN_DIED: return "died"; case E_PSI_FILE_HANDLE: return "bad handle"; case E_PSI_NOT_SIBO: return "invalid operation for RFSV16"; default: return "Unknown error"; } }