📄 ckcdeb.h
字号:
#ifdef OS2#define ZCOPY#endif /* OS2 *//* Systems that have ttgwsiz() (they all should but they don't) */#ifndef CK_TTGWSIZ#ifdef UNIX#define CK_TTGWSIZ#else#ifdef VMS#define CK_TTGWSIZ#else#ifdef OS2#define CK_TTGWSIZ#endif /* OS2 */#endif /* VMS */#endif /* UNIX */#endif /* CK_TTGWSIZ *//* OS/2 C-Kermit features not available in 16-bit version... */#ifdef OS2#ifndef __32BIT__#ifdef PCFONTS /* PC Font support */#undef PCFONTS#endif /* PCFONTS */#ifdef NPIPE /* Named Pipes communication */#undef NPIPE#endif /* NPIPE */#ifdef CK_NETBIOS /* NETBIOS communication */#undef CK_NETBIOS#endif /* CK_NETBIOS */#ifdef OS2MOUSE /* Mouse */#undef OS2MOUSE#endif /* OS2MOUSE */#ifdef OS2PM /* Presentation Manager */#undef OS2PM#endif /* OS2PM */#ifdef CK_REXX /* Rexx */#undef CK_REXX#endif /* CK_REXX */#endif /* __32BIT__ */#endif /* OS2 *//* OS/2 C-Kermit features not available in Windows NT version... */#ifdef OS2#ifdef NT#ifdef PCFONTS /* PC Font support */#undef PCFONTS#endif /* PCFONTS */#ifdef NPIPE /* Named Pipes communication */#undef NPIPE#endif /* NPIPE */#ifdef CK_NETBIOS /* NETBIOS communication */#undef CK_NETBIOS#endif /* CK_NETBIOS */#ifdef OS2PM /* Presentation Manager */#undef OS2PM#endif /* OS2PM */#ifdef CK_REXX /* Rexx */#undef CK_REXX#endif /* CK_REXX */#endif /* NT */#endif /* OS2 *//* Systems that have select(). This is used for both msleep() and for read-buffer checking in in_chk().*/#define CK_SLEEPINT 250 /* milliseconds - set this to something that divides evenly into 1000 */#ifndef SELECT#ifndef NOSELECT#ifdef __linux__#define SELECT#else#ifdef SUNOS4#define SELECT#else#ifdef NEXT#define SELECT#else#ifdef HPUX#define SELECT#else#ifdef AIXRS#define SELECT#else#ifdef BSD44#define SELECT#else#ifdef BSD4#define SELECT#else#ifdef OXOS#define SELECT#else#ifdef OS2#define SELECT#endif /* OS2 */#endif /* OXOS */#endif /* BSD4 */#endif /* BSD44 */#endif /* AIXRS */#endif /* HPUX */#endif /* NEXT */#endif /* __linux__ */#endif /* SUNOS4 */#endif /* NOSELECT */#endif /* SELECT *//* CK_NEED_SIG is defined if the system cannot check the console to to see if characters are waiting. This is used during local-mode file transfer to interrupt the transfer, refresh the screen display, etc. If CK_NEED_SIG is defined, then file-transfer interruption characters have to be preceded a special character, e.g. the SIGQUIT character. CK_NEED_SIG should be defined if the conchk() function is not operational.*/#ifdef NOPOLL /* For overriding CK_POLL definition */#ifdef CK_POLL#undef CK_POLL#endif /* CK_POLL */#endif /* NOPOLL */#ifndef CK_POLL /* If we don't have poll() */#ifndef RDCHK /* And we don't have rdchk() */#ifndef SELECT /* And we don't have select() */#ifdef ATTSV#ifndef aegis#ifndef datageneral#ifndef OXOS#define CK_NEED_SIG#endif /* OXOS */#endif /* datageneral */#endif /* aegis */#endif /* ATTSV */#ifdef POSIX#ifndef CK_NEED_SIG#define CK_NEED_SIG#endif /* CK_NEED_SIG */#endif /* POSIX */#endif /* SELECT */#endif /* RDCHK */#endif /* CK_POLL */#ifdef HPUX /* HP-UX has select() */#ifdef CK_NEED_SIG#undef CK_NEED_SIG#endif /* CK_NEED_SIG */#endif /* HPUX */#ifdef AIXRS /* AIX has select() */#ifdef CK_NEED_SIG#undef CK_NEED_SIG#endif /* CK_NEED_SIG */#endif /* AIXRS */#ifdef BSD44 /* 4.4BSD has FIONREAD */#ifdef CK_NEED_SIG#undef CK_NEED_SIG#endif /* CK_NEED_SIG */#endif /* BSD44 */#ifdef QNX /* QNX has FIONREAD and select() */#ifdef CK_NEED_SIG#undef CK_NEED_SIG#endif /* CK_NEED_SIG */#endif /* QNX *//* Automatic parity detection. This actually implies a lot more now: length-driven packet reading, "Doomsday Kermit" IBM Mainframe file transfer through 3270 data streams, etc.*/#ifdef UNIX /* For Unix */#ifndef NOPARSEN#define PARSENSE#endif /* NOPARSEN */#endif /* UNIX */#ifdef VMS /* ... and VMS */#ifndef NOPARSEN#define PARSENSE#endif /* NOPARSEN */#ifdef __GNUC__#define VMSGCC#endif /* __GNUC__ */#endif /* VMS */#ifdef MAC /* and Macintosh */#ifndef NOPARSEN#define PARSENSE#endif /* NOPARSEN */#endif /* MAC */#ifdef STRATUS /* and Stratus VOS */#ifndef NOPARSEN#define PARSENSE#endif /* NOPARSEN */#endif /* STRATUS */#ifdef OS2 /* and OS/2, finally */#ifndef NOPARSEN#define PARSENSE#endif /* NOPARSEN */#endif /* OS2 */#ifdef DYNAMIC /* If DYNAMIC is defined */#define DCMDBUF /* then also define this. */#endif /* DYNAMIC */#ifndef CK_LBRK /* Can send Long BREAK */#ifdef UNIX /* (everybody but OS-9) */#define CK_LBRK#endif /* UNIX */#ifdef VMS#define CK_LBRK#endif /* VMS */#ifdef datageneral#define CK_LBRK#endif /* datageneral */#ifdef GEMDOS#define CK_LBRK#endif /* GEMDOS */#ifdef OS2#define CK_LBRK#endif /* OS2 */#ifdef AMIGA#define CK_LBRK#endif /* AMIGA */#endif /* CK_LBRK *//* Carrier treatment *//* These are defined here because they are shared by the system dependent *//* and the system independent modules. */#define CAR_OFF 0 /* Off: ignore carrier always. */#define CAR_ON 1 /* On: heed carrier always, except during DIAL. */#define CAR_AUT 2 /* Auto: heed carrier, but only if line is declared */ /* to be a modem line, and only during CONNECT. *//* Hangup by modem command supported by default */#ifndef NODIAL#ifndef NOMDMHUP#ifndef MDMHUP#define MDMHUP #endif /* MDMHUP */#endif /* NOMDMHUP */#endif /* NODIAL *//* Serial interface speeds available. We assume that everybody supports: 0, 110, 300, 600, 1200, 2400, 4800, and 9600 bps. Symbols for other speeds are defined here. You can also add definitions on the CC command lines. These definitions affect the SET SPEED keyword table, and are not necessarily usable in the system-dependent speed-setting code in the ck?tio.c modules, which depends on system-specific symbols like (in UNIX) B19200. In other words, just defining it doesn't mean it'll work -- you also have to supply the supporting code in ttsspd() and ttgspd() in ck?tio.c. The symbols have the form BPS_xxxx, where xxxx is the speed in bits per second, or (for bps values larger than 9999) thousands of bps followed by K. The total symbol length should be 8 characters or less. Some values are enabled automatically below. You can disable a particular value by defining NOB_xxxx on the CC command line.*/#ifndef NOB_50#define BPS_50 /* 50 bps */#endif#ifndef NOB_75#define BPS_75 /* 75 bps */#endif#ifndef NOB7512#ifdef ANYBSD#define BPS_7512 /* 75/1200 Split Speed */#endif /* ANYBSD */#endif /* NOB7512 */#undef BPS_134 /* 134.5 bps (IBM 2741) */#ifndef NOB_150#define BPS_150 /* 150 bps */#endif#ifndef NOB_200#define BPS_200 /* 200 bps */#endif#ifndef NOB_1800#ifdef MAC#define BPS_1800 /* 1800 bps */#endif#endif#ifndef NOB_3600#define BPS_3600 /* 3600 bps */#endif#ifndef NOB_7200#define BPS_7200 /* 7200 bps */#endif#ifndef NOB_14K#ifdef OS2#define BPS_14K /* 14400 bps */#else#ifdef NEXT#define BPS_14K#else#ifdef MAC#define BPS_14K#else#ifdef AMIGA#define BPS_14K#endif /* AMIGA */#endif /* MAC */#endif /* NEXT */#endif /* OS2 */#endif /* NOB_14K */#ifndef NOB_19K#define BPS_19K /* 19200 bps */#endif#ifndef NOB_28K#ifdef NEXT#define BPS_28K /* 28800 bps */#else#ifdef MAC#define BPS_28K /* 28800 bps */#endif /* MAC */#endif /* NEXT */#endif /* NOB_28K */#ifndef NOB_38K#define BPS_38K /* 38400 bps */#endif/* Speeds of 57600 and higher are supported in Linux 0.99.15 and later, but it seems to do no harm to enable them for earlier releases too, in which case commands like "set speed 57600" simply fail with an "Unsupported line speed" message.*/#ifndef NOHISPEED#ifdef __linux__#define LINUXHISPEED#endif /* __linux__ */#endif /* NOHISPEED */#ifndef NOB_57K#ifdef Plan9#define BPS_57K#endif /* Plan9 */#ifdef VMS#define BPS_57K /* 57600 bps */#else#ifdef OS2#define BPS_57K#else#ifdef __linux__#ifdef LINUXHISPEED#define BPS_57K#endif /* LINUXHISPEED */#else#ifdef HPUX#define BPS_57K#else#ifdef NEXT#define BPS_57K#else#ifdef __386BSD__#define BPS_57K#else#ifdef __FreeBSD__#define BPS_57K#else#ifdef __NetBSD__#define BPS_57K#else#ifdef MAC#define BPS_57K#else#ifdef QNX#define BPS_57K#else#ifdef BEBOX#define BPS_57K#endif /* BEBOX */#endif /* QNX */#endif /* MAC */#endif /* __NetBSD__ */#endif /* __FreeBSD__ */#endif /* __386BSD__ */#endif /* NEXT */#endif /* HPUX */#endif /* __linux__ */#endif /* OS2 */#endif /* VMS */#endif /* NOB_57K */#ifndef NOB_76K#ifdef Plan9#define BPS_76K#endif /* Plan9 */#ifdef VMS#define BPS_76K /* 76800 bps */#endif /* VMS */#ifdef OS2#ifdef __32BIT__#define BPS_76K#endif /* __32BIT__ */#endif /* OS2 */#ifdef QNX#define BPS_76K#endif /* QNX */#endif /* NOB_76K */#ifndef NOB_115K#ifdef Plan9#define BPS_115K#endif /* Plan9 */#ifdef VMS#define BPS_115K /* 115200 bps */#else#ifdef QNX#define BPS_115K#else#ifdef HPUX#define BPS_115K#else#ifdef __linux__#ifdef LINUXHISPEED#define BPS_115K#endif /* LINUXHISPEED */#else#ifdef __386BSD__#define BPS_115K#else#ifdef __FreeBSD__#define BPS_115K#else#ifdef __NetBSD__#define BPS_115K#else#ifdef OS2#ifdef __32BIT__#define BPS_115K#endif /* __32BIT__ */#else#ifdef BEBOX#define BPS_115K#endif /* BEBOX */#endif /* OS2 */#endif /* __NetBSD__ */#endif /* __FreeBSD__ */#endif /* __386BSD__ */#endif /* __linux__ */#endif /* HPUX */#endif /* QNX */#endif /* VMS */#endif /* NOB_115K */#ifndef NOB_230K /* 230400 bps */#ifdef OS2#ifdef __32BIT__ #define BPS_230K#endif /* __32BIT__ */#else #undef BPS_230K#endif /* OS2 */#endif /* NOB_230K */#ifdef BPS_230K /* Maximum speed defined */#define MAX_SPD 230400L#else#ifdef BPS_115K#define MAX_SPD 115200L#else#ifdef BPS_76K#define MAX_SPD 76800L#else#ifdef BPS_57K#define MAX_SPD 57600L#else#ifdef BPS_38K#define MAX_SPD 38400L#else#ifdef BPS_28K#define MAX_SPD 28800L#else#ifdef BPS_19K#define MAX_SPD 19200L#else#ifdef BPS_14K#define MAX_SPD 14400L#else#define MAX_SPD 9600L#endif#endif#endif#endif#endif#endif#endif#endif#ifndef CONGSPD /* Systems that can call congspd() */#ifdef UNIX#define CONGSPD#endif /* UNIX */#ifdef VMS#define CONGSPD#endif /* VMS */#endif /* CONGSPD *//* Types of flow control available */#define CK_XONXOFF /* Everybody can do this, right? */#ifdef AMIGA /* Commodore Amiga */#define CK_RTSCTS /* has RTS/CTS */#endif /* AMIGA */#ifdef SUN4S5 /* SunOS in System V environment */#define CK_RTSCTS#else /* SunOS 4.0/4.1 in BSD environment */#ifdef SUNOS4 /* SunOS 4.0+later supports RTS/CTS */#ifdef SUNOS41 /* Easy in 4.1 and later */#define CK_RTSCTS#else /* Harder in 4.0 */#ifndef __GNUC__ /* (see tthflow() in ckutio.c) */#ifndef GNUC#define CK_RTSCTS /* Only if not using GNU gcc */#endif /* __GNUC__ */#endif /* GNUC */#endif /* SUNOS41 */#endif /* SUNOS4 */#endif /* SUN4S5 */#ifdef BSD44 /* And in 4.4 BSD, including BSDI */#define CK_RTSCTS#endif /* BSD44 */#ifdef TERMIOX /* Sys V R4 <termiox.h> */#define CK_RTSCTS /* has RTS/CTS */#define CK_DTRCD /* and DTR/CD */#endif /* TERMIOX */#ifdef STERMIOX /* Sys V R4 <sys/termiox.h> */#define CK_RTSCTS /* Ditto. */#define CK_DTRCD#endif /* STERMIOX */#ifdef OXOS /* Olivetti X/OS R2 struct termios */#define CK_RTSCTS /* Ditto. */#define CK_DTRCD#endif /* OXOS */#ifdef AIXRS /* RS/6000 with AIX 3.x */#define CK_RTSCTS /* Has its own peculiar method... */#endif /* AIXRS */#ifdef __linux__ /* Linux */#define CK_RTSCTS#endif /* __linux__ *//* Hardware flow control is not defined in POSIX.1. Nevertheless, a certain style API for hardware flow control, using tcsetattr() and the CRTSCTS bit(s), seems to be gaining currency on POSIX-based UNIX systems. The following code defines the symbol POSIX_CRTSCTS for such systems.*/#ifdef __bsdi__ /* BSDI, a.k.a. BSD/386 */#define POSIX_CRTSCTS#endif /* __bsdi__ */#ifdef __linux__ /* Linux */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -