⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tclposixstr.c

📁 linux系统下的音频通信
💻 C
📖 第 1 页 / 共 2 页
字号:
/*  * tclPosixStr.c -- * *	This file contains procedures that generate strings *	corresponding to various POSIX-related codes, such *	as errno and signals. * * Copyright (c) 1991-1994 The Regents of the University of California. * Copyright (c) 1994-1996 Sun Microsystems, Inc. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * * SCCS: @(#) tclPosixStr.c 1.33 97/10/08 12:40:12 */#include "tclInt.h"#include "tclPort.h"/* *---------------------------------------------------------------------- * * Tcl_ErrnoId -- * *	Return a textual identifier for the current errno value. * * Results: *	This procedure returns a machine-readable textual identifier *	that corresponds to the current errno value (e.g. "EPERM"). *	The identifier is the same as the #define name in errno.h. * * Side effects: *	None. * *---------------------------------------------------------------------- */char *Tcl_ErrnoId(){    switch (errno) {#ifdef E2BIG	case E2BIG: return "E2BIG";#endif#ifdef EACCES	case EACCES: return "EACCES";#endif#ifdef EADDRINUSE	case EADDRINUSE: return "EADDRINUSE";#endif#ifdef EADDRNOTAVAIL	case EADDRNOTAVAIL: return "EADDRNOTAVAIL";#endif#ifdef EADV	case EADV: return "EADV";#endif#ifdef EAFNOSUPPORT	case EAFNOSUPPORT: return "EAFNOSUPPORT";#endif#ifdef EAGAIN	case EAGAIN: return "EAGAIN";#endif#ifdef EALIGN	case EALIGN: return "EALIGN";#endif#if defined(EALREADY) && (!defined(EBUSY) || (EALREADY != EBUSY ))	case EALREADY: return "EALREADY";#endif#ifdef EBADE	case EBADE: return "EBADE";#endif#ifdef EBADF	case EBADF: return "EBADF";#endif#ifdef EBADFD	case EBADFD: return "EBADFD";#endif#ifdef EBADMSG	case EBADMSG: return "EBADMSG";#endif#ifdef EBADR	case EBADR: return "EBADR";#endif#ifdef EBADRPC	case EBADRPC: return "EBADRPC";#endif#ifdef EBADRQC	case EBADRQC: return "EBADRQC";#endif#ifdef EBADSLT	case EBADSLT: return "EBADSLT";#endif#ifdef EBFONT	case EBFONT: return "EBFONT";#endif#ifdef EBUSY	case EBUSY: return "EBUSY";#endif#ifdef ECHILD	case ECHILD: return "ECHILD";#endif#ifdef ECHRNG	case ECHRNG: return "ECHRNG";#endif#ifdef ECOMM	case ECOMM: return "ECOMM";#endif#ifdef ECONNABORTED	case ECONNABORTED: return "ECONNABORTED";#endif#ifdef ECONNREFUSED	case ECONNREFUSED: return "ECONNREFUSED";#endif#ifdef ECONNRESET	case ECONNRESET: return "ECONNRESET";#endif#if defined(EDEADLK) && (!defined(EWOULDBLOCK) || (EDEADLK != EWOULDBLOCK))	case EDEADLK: return "EDEADLK";#endif#if defined(EDEADLOCK) && (!defined(EDEADLK) || (EDEADLOCK != EDEADLK))	case EDEADLOCK: return "EDEADLOCK";#endif#ifdef EDESTADDRREQ	case EDESTADDRREQ: return "EDESTADDRREQ";#endif#ifdef EDIRTY	case EDIRTY: return "EDIRTY";#endif#ifdef EDOM	case EDOM: return "EDOM";#endif#ifdef EDOTDOT	case EDOTDOT: return "EDOTDOT";#endif#ifdef EDQUOT	case EDQUOT: return "EDQUOT";#endif#ifdef EDUPPKG	case EDUPPKG: return "EDUPPKG";#endif#ifdef EEXIST	case EEXIST: return "EEXIST";#endif#ifdef EFAULT	case EFAULT: return "EFAULT";#endif#ifdef EFBIG	case EFBIG: return "EFBIG";#endif#ifdef EHOSTDOWN	case EHOSTDOWN: return "EHOSTDOWN";#endif#ifdef EHOSTUNREACH	case EHOSTUNREACH: return "EHOSTUNREACH";#endif#if defined(EIDRM) && (!defined(EINPROGRESS) || (EIDRM != EINPROGRESS))	case EIDRM: return "EIDRM";#endif#ifdef EINIT	case EINIT: return "EINIT";#endif#ifdef EINPROGRESS	case EINPROGRESS: return "EINPROGRESS";#endif#ifdef EINTR	case EINTR: return "EINTR";#endif#ifdef EINVAL	case EINVAL: return "EINVAL";#endif#ifdef EIO	case EIO: return "EIO";#endif#ifdef EISCONN	case EISCONN: return "EISCONN";#endif#ifdef EISDIR	case EISDIR: return "EISDIR";#endif#ifdef EISNAME	case EISNAM: return "EISNAM";#endif#ifdef ELBIN	case ELBIN: return "ELBIN";#endif#ifdef EL2HLT	case EL2HLT: return "EL2HLT";#endif#ifdef EL2NSYNC	case EL2NSYNC: return "EL2NSYNC";#endif#ifdef EL3HLT	case EL3HLT: return "EL3HLT";#endif#ifdef EL3RST	case EL3RST: return "EL3RST";#endif#ifdef ELIBACC	case ELIBACC: return "ELIBACC";#endif#ifdef ELIBBAD	case ELIBBAD: return "ELIBBAD";#endif#ifdef ELIBEXEC	case ELIBEXEC: return "ELIBEXEC";#endif#ifdef ELIBMAX	case ELIBMAX: return "ELIBMAX";#endif#ifdef ELIBSCN	case ELIBSCN: return "ELIBSCN";#endif#ifdef ELNRNG	case ELNRNG: return "ELNRNG";#endif#if defined(ELOOP) && (!defined(ENOENT) || (ELOOP != ENOENT))	case ELOOP: return "ELOOP";#endif#ifdef EMFILE	case EMFILE: return "EMFILE";#endif#ifdef EMLINK	case EMLINK: return "EMLINK";#endif#ifdef EMSGSIZE	case EMSGSIZE: return "EMSGSIZE";#endif#ifdef EMULTIHOP	case EMULTIHOP: return "EMULTIHOP";#endif#ifdef ENAMETOOLONG	case ENAMETOOLONG: return "ENAMETOOLONG";#endif#ifdef ENAVAIL	case ENAVAIL: return "ENAVAIL";#endif#ifdef ENET	case ENET: return "ENET";#endif#ifdef ENETDOWN	case ENETDOWN: return "ENETDOWN";#endif#ifdef ENETRESET	case ENETRESET: return "ENETRESET";#endif#ifdef ENETUNREACH	case ENETUNREACH: return "ENETUNREACH";#endif#ifdef ENFILE	case ENFILE: return "ENFILE";#endif#ifdef ENOANO	case ENOANO: return "ENOANO";#endif#if defined(ENOBUFS) && (!defined(ENOSR) || (ENOBUFS != ENOSR))	case ENOBUFS: return "ENOBUFS";#endif#ifdef ENOCSI	case ENOCSI: return "ENOCSI";#endif#if defined(ENODATA) && (!defined(ECONNREFUSED) || (ENODATA != ECONNREFUSED))	case ENODATA: return "ENODATA";#endif#ifdef ENODEV	case ENODEV: return "ENODEV";#endif#ifdef ENOENT	case ENOENT: return "ENOENT";#endif#ifdef ENOEXEC	case ENOEXEC: return "ENOEXEC";#endif#ifdef ENOLCK	case ENOLCK: return "ENOLCK";#endif#ifdef ENOLINK	case ENOLINK: return "ENOLINK";#endif#ifdef ENOMEM	case ENOMEM: return "ENOMEM";#endif#ifdef ENOMSG	case ENOMSG: return "ENOMSG";#endif#ifdef ENONET	case ENONET: return "ENONET";#endif#ifdef ENOPKG	case ENOPKG: return "ENOPKG";#endif#ifdef ENOPROTOOPT	case ENOPROTOOPT: return "ENOPROTOOPT";#endif#ifdef ENOSPC	case ENOSPC: return "ENOSPC";#endif#if defined(ENOSR) && (!defined(ENAMETOOLONG) || (ENAMETOOLONG != ENOSR))	case ENOSR: return "ENOSR";#endif#if defined(ENOSTR) && (!defined(ENOTTY) || (ENOTTY != ENOSTR))	case ENOSTR: return "ENOSTR";#endif#ifdef ENOSYM	case ENOSYM: return "ENOSYM";#endif#ifdef ENOSYS	case ENOSYS: return "ENOSYS";#endif#ifdef ENOTBLK	case ENOTBLK: return "ENOTBLK";#endif#ifdef ENOTCONN	case ENOTCONN: return "ENOTCONN";#endif#ifdef ENOTDIR	case ENOTDIR: return "ENOTDIR";#endif#if defined(ENOTEMPTY) && (!defined(EEXIST) || (ENOTEMPTY != EEXIST))	case ENOTEMPTY: return "ENOTEMPTY";#endif#ifdef ENOTNAM	case ENOTNAM: return "ENOTNAM";#endif#ifdef ENOTSOCK	case ENOTSOCK: return "ENOTSOCK";#endif#if defined(ENOTSUP) && (ENOTSUP != EOPNOTSUPP)	case ENOTSUP: return "ENOTSUP";#endif#ifdef ENOTTY	case ENOTTY: return "ENOTTY";#endif#ifdef ENOTUNIQ	case ENOTUNIQ: return "ENOTUNIQ";#endif#ifdef ENXIO	case ENXIO: return "ENXIO";#endif#ifdef EOPNOTSUPP	case EOPNOTSUPP: return "EOPNOTSUPP";#endif#ifdef EPERM	case EPERM: return "EPERM";#endif#if defined(EPFNOSUPPORT) && (!defined(ENOLCK) || (ENOLCK != EPFNOSUPPORT))	case EPFNOSUPPORT: return "EPFNOSUPPORT";#endif#ifdef EPIPE	case EPIPE: return "EPIPE";#endif#ifdef EPROCLIM	case EPROCLIM: return "EPROCLIM";#endif#ifdef EPROCUNAVAIL	case EPROCUNAVAIL: return "EPROCUNAVAIL";#endif#ifdef EPROGMISMATCH	case EPROGMISMATCH: return "EPROGMISMATCH";#endif#ifdef EPROGUNAVAIL	case EPROGUNAVAIL: return "EPROGUNAVAIL";#endif#ifdef EPROTO	case EPROTO: return "EPROTO";#endif#ifdef EPROTONOSUPPORT	case EPROTONOSUPPORT: return "EPROTONOSUPPORT";#endif#ifdef EPROTOTYPE	case EPROTOTYPE: return "EPROTOTYPE";#endif#ifdef ERANGE	case ERANGE: return "ERANGE";#endif#if defined(EREFUSED) && (!defined(ECONNREFUSED) || (EREFUSED != ECONNREFUSED))	case EREFUSED: return "EREFUSED";#endif#ifdef EREMCHG	case EREMCHG: return "EREMCHG";#endif#ifdef EREMDEV	case EREMDEV: return "EREMDEV";#endif#ifdef EREMOTE	case EREMOTE: return "EREMOTE";#endif#ifdef EREMOTEIO	case EREMOTEIO: return "EREMOTEIO";#endif#ifdef EREMOTERELEASE	case EREMOTERELEASE: return "EREMOTERELEASE";#endif#ifdef EROFS	case EROFS: return "EROFS";#endif#ifdef ERPCMISMATCH	case ERPCMISMATCH: return "ERPCMISMATCH";#endif#ifdef ERREMOTE	case ERREMOTE: return "ERREMOTE";#endif#ifdef ESHUTDOWN	case ESHUTDOWN: return "ESHUTDOWN";#endif#ifdef ESOCKTNOSUPPORT	case ESOCKTNOSUPPORT: return "ESOCKTNOSUPPORT";#endif#ifdef ESPIPE	case ESPIPE: return "ESPIPE";#endif#ifdef ESRCH	case ESRCH: return "ESRCH";#endif#ifdef ESRMNT	case ESRMNT: return "ESRMNT";#endif#ifdef ESTALE	case ESTALE: return "ESTALE";#endif#ifdef ESUCCESS	case ESUCCESS: return "ESUCCESS";#endif#if defined(ETIME) && (!defined(ELOOP) || (ETIME != ELOOP))	case ETIME: return "ETIME";#endif#if defined(ETIMEDOUT) && (!defined(ENOSTR) || (ETIMEDOUT != ENOSTR))	case ETIMEDOUT: return "ETIMEDOUT";#endif#ifdef ETOOMANYREFS	case ETOOMANYREFS: return "ETOOMANYREFS";#endif#ifdef ETXTBSY	case ETXTBSY: return "ETXTBSY";#endif#ifdef EUCLEAN	case EUCLEAN: return "EUCLEAN";#endif#ifdef EUNATCH	case EUNATCH: return "EUNATCH";#endif#ifdef EUSERS	case EUSERS: return "EUSERS";#endif#ifdef EVERSION	case EVERSION: return "EVERSION";#endif#if defined(EWOULDBLOCK) && (!defined(EAGAIN) || (EWOULDBLOCK != EAGAIN))	case EWOULDBLOCK: return "EWOULDBLOCK";#endif#ifdef EXDEV	case EXDEV: return "EXDEV";#endif#ifdef EXFULL	case EXFULL: return "EXFULL";#endif    }    return "unknown error";}/* *---------------------------------------------------------------------- * * Tcl_ErrnoMsg -- * *	Return a human-readable message corresponding to a given *	errno value. * * Results: *	The return value is the standard POSIX error message for *	errno.  This procedure is used instead of strerror because *	strerror returns slightly different values on different *	machines (e.g. different capitalizations), which cause *	problems for things such as regression tests.  This procedure *	provides messages for most standard errors, then it calls *	strerror for things it doesn't understand. * * Side effects: *	None. * *---------------------------------------------------------------------- */char *Tcl_ErrnoMsg(err)    int err;			/* Error number (such as in errno variable). */{    switch (err) {#ifdef E2BIG	case E2BIG: return "argument list too long";#endif#ifdef EACCES	case EACCES: return "permission denied";#endif#ifdef EADDRINUSE	case EADDRINUSE: return "address already in use";#endif#ifdef EADDRNOTAVAIL	case EADDRNOTAVAIL: return "can't assign requested address";#endif#ifdef EADV	case EADV: return "advertise error";#endif#ifdef EAFNOSUPPORT	case EAFNOSUPPORT: return "address family not supported by protocol family";#endif#ifdef EAGAIN	case EAGAIN: return "resource temporarily unavailable";#endif#ifdef EALIGN	case EALIGN: return "EALIGN";#endif#if defined(EALREADY) && (!defined(EBUSY) || (EALREADY != EBUSY ))	case EALREADY: return "operation already in progress";#endif#ifdef EBADE	case EBADE: return "bad exchange descriptor";#endif#ifdef EBADF	case EBADF: return "bad file number";#endif#ifdef EBADFD	case EBADFD: return "file descriptor in bad state";#endif#ifdef EBADMSG	case EBADMSG: return "not a data message";#endif#ifdef EBADR	case EBADR: return "bad request descriptor";#endif#ifdef EBADRPC	case EBADRPC: return "RPC structure is bad";#endif#ifdef EBADRQC	case EBADRQC: return "bad request code";#endif#ifdef EBADSLT	case EBADSLT: return "invalid slot";#endif#ifdef EBFONT	case EBFONT: return "bad font file format";#endif#ifdef EBUSY	case EBUSY: return "file busy";#endif#ifdef ECHILD	case ECHILD: return "no children";#endif#ifdef ECHRNG	case ECHRNG: return "channel number out of range";#endif#ifdef ECOMM	case ECOMM: return "communication error on send";#endif#ifdef ECONNABORTED	case ECONNABORTED: return "software caused connection abort";#endif#ifdef ECONNREFUSED	case ECONNREFUSED: return "connection refused";#endif#ifdef ECONNRESET	case ECONNRESET: return "connection reset by peer";#endif#if defined(EDEADLK) && (!defined(EWOULDBLOCK) || (EDEADLK != EWOULDBLOCK))	case EDEADLK: return "resource deadlock avoided";#endif#if defined(EDEADLOCK) && (!defined(EDEADLK) || (EDEADLOCK != EDEADLK))	case EDEADLOCK: return "resource deadlock avoided";#endif#ifdef EDESTADDRREQ	case EDESTADDRREQ: return "destination address required";#endif#ifdef EDIRTY	case EDIRTY: return "mounting a dirty fs w/o force";#endif#ifdef EDOM	case EDOM: return "math argument out of range";#endif#ifdef EDOTDOT	case EDOTDOT: return "cross mount point";#endif#ifdef EDQUOT	case EDQUOT: return "disk quota exceeded";#endif#ifdef EDUPPKG	case EDUPPKG: return "duplicate package name";#endif#ifdef EEXIST	case EEXIST: return "file already exists";

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -