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

📄 ckccfg.txt

📁 C-Kermit源码。是使用串口/Modem和网络通讯的程序
💻 TXT
📖 第 1 页 / 共 5 页
字号:
C-KERMIT CONFIGURATION INFORMATION                                   -*-text-*-  As of C-Kermit version:  7.0.197  This file last updated:  8 February 2000  Frank da Cruz, Columbia University  Copyright (C) 1985, 2000,    Trustees of Columbia University in the City of New York.    All rights reserved.  See the C-Kermit COPYING.TXT file or the    copyright text in the ckcmai.c module for disclaimer and permissions.DOCUMENTATION  Frank da Cruz and Christine M. Gianone, "Using C-Kermit", Second Edition,  1997, Digital Press / Butterworth-Heinemann, Woburn, MA, ISBN 1-55558-164-1  US single-copy price: $44.95; quantity discounts available.  Available in  computer bookstores or directly from Columbia University:    The Kermit Project    Columbia University    612 West 115th Street    New York NY  10025-7799  USA    Telephone: +1 (212) 854-3703    Email: kermit-orders@columbia.edu    Web: http://www.columbia.edu/kermit/  The CKERMIT2.TXT file contains supplementary info for C-Kermit 7.0 to be  used until the 3rd edition of the manual is ready.WHAT IS IN THIS FILEThis file is for C-Kermit developers.  It explains compilation options,feature selection, and compilation problem-solving, as they (should) apply toall versions of C-Kermit: UNIX, VMS, OS/2, and the rest.CONTENTS  0. OVERVIEW  1. FILE TRANSFER  2. SERIAL COMMUNICATION SPEEDS  3. FULLSCREEN FILE TRANSFER DISPLAY  4. CHARACTER SETS  5. APC EXECUTION  6. PROGRAM SIZE     6.1. When Memory Is Not a Problem     6.2. Removing Features     6.3. Changing Buffer Sizes     6.4. Other Size-Related Items     6.5. Space/Time Tradeoffs  7. DIALER SUPPORT  8. NETWORK SUPPORT     8.1. TCP/IP	  8.1.1. Firewalls	  8.1.2. Solving Compilation and Linking Problems	  8.1.3. Enabling Host Address Lists	  8.1.4. Enabling Telnet NAWS          8.1.5. Enabling Incoming TCP/IP Connections     8.2. X.25     8.3. Other Networks  9. EXCEPTION HANDLING 10. SECURITY FEATURES 11. ENABLING SELECT() 12. I/O REDIRECTION 13. FLOATING-POINT TIMERS 14. SPECIAL CONFIGURATIONS APPENDIX I: SUMMARY OF COMPILE-TIME OPTIONS0. OVERVIEWThis file gives more-or-less system-independent configuration information forC-Kermit 5A and later.  The major topics covered include program size (and howto reduce it), how to include or exclude particular features, notes on modemand network support, and a list of C-Kermit's compile-time options.For details about your particular operating system, consult the system-specificinstallation instructions file:  CK?INS.TXT(? = U for UNIX, V for VMS, etc, for example, CKUINS.TXT for UNIX, CKVINS.TXTfor VAX/VMS, CKDINS.TXT for Data General AOS/VS, etc).  Also consult thefollowing files (use lowercase on UNIX):  CKAAAA.TXT   Explanation of file naming conventions  CKCPLM.TXT   C-Kermit "program logic manual"  CK?KER.HLP   System-specific help file, if any  CK?KER.MAK   System-specific build procedure  CKCBWR.TXT   "Beware file": C-Kermit bugs, limitations, workarounds  CK?BWR.TXT   System-specific "beware file"  CKERMIT2.TXT User-level documentation for new features since "Using               C-Kermit", 2nd Edition, was published.  CKCnnn.TXT   Program edit history for edit nnn, e.g. CKC195.TXT.1. FILE TRANSFERPrior to version 7.0, C-Kermit was always built with the most conservativeKermit file-transfer protocol defaults on every platform: no control-characterprefixing, 94-byte packets, and a window size of 1.Starting in version 7.0, fast settings are the default for UNIX and VMS.  Tooverride these at compile time, include:  -DNOFASTin the C compiler CFLAGS.  Even with the fast defaults, it will drop down towhatever window and packet sizes requested by the other Kermit, if these aresmaller, when sending files (except for control-character unprefixing, whichis not negotiated, and which is now set to CAUTIOUS rather than NONE atstartup).  C-Kermit's settings prevail when it is receiving.  To build withfast defaults for other platforms, add:  -DCK_FASTto CFLAGS.2. SERIAL COMMUNICATION SPEEDSAs of 6 September 1997, a new simplified mechanism for obtaining the listof legal serial interface speeds is in place: . If the symbol TTSPDLIST is defined, the system-dependent routine   ttspdlist() is called at program initialization to obtain the list. . This symbol should be defined only for C-Kermit implementations that   have implemented the ttspdlist() function, typically in the ck?tio.c   module.  See ckutio.c for an example. . TTSPDLIST is automatically defined in ckcdeb.h for UNIX.  Add the   appropriate #ifdefs for other platforms when the corresponding   ttspdlist() functions are filled in. . If TTSPDLIST is (or normally would be) defined, the old code (described   below) can still be selected by defining NOTTSPDLIST.The ttspdlist() function can obtain the speeds in any way that works.  Forexample, based simply on #ifdef Bnnnn..#endif (in UNIX).  Although it might bebetter to actually check each speed against the currently selected hardwareinterface before allowing it in the array, there is usually no passive and/orreliable and safe way to do this, and so it's better to let some speeds intothe array that might not work, than it is to erroneously exclude others.Speeds that don't work are caught when the SET SPEED command is actually given.Note that this scheme does not necessarily rule out split speed operation,but effectively it does in C-Kermit as presently constituted since there areno commands to set input and output speed separately (except the specialcase "set speed 75/1200").Note that some platforms, notably AIX 4.2 and 4.3, implement high serialspeeds transparently to the application, e.g. by mapping 50 bps to 57600 bps,and so on.  See (e.g.) ckubwr.txt for examples.That's the whole deal.  When TTSPDLIST is *not* defined, the following applies:Speeds are defined in two places: the SET SPEED keyword list in the commandparser (as of this writing, in the ckuus3.c source file), and in the system-dependent communications i/o module, CK?TIO.C, functions ttsspd() (set speed)and ttgspd() (get speed).  The following speeds are assumed to be availablein all versions:  0, 110, 300, 600, 1200, 2400, 4800, 9600If one or more of these speeds is not supported by your system, you'll needto change the source code (this has never happened so far).  Other speedsthat are not common to all systems have Kermit-specific symbols:               Symbol       Symbol  Speed (bps)  to enable    to disable       50       BPS_50       NOB_50       75       BPS_75       NOB_75       75/1200  BPS_7512     NOB_7512      134.5     BPS_134      NOB_134      150       BPS_150      NOB_150      200       BPS_200      NOB_200     1800       BPS_1800     NOB_1800     3600       BPS_3600     NOB_3600     7200       BPS_7200     NOB_7200    14400       BPS_14K      NOB_14K    19200       BPS_19K      NOB_19K    28800       BPS_28K      NOB_28K    38400       BPS_38K      NOB_38K    57600       BPS_57K      NOB_57K    76800       BPS_76K      NOB_76K   115200       BPS_115K     NOB_155K   230400       BPS_230K     NOB_230K   460800       BPS_460K     NOB_460K   921600       BPS_921K     NOB_921Kand maybe some others...The ckcdeb.h header file contains default speed configurations for the manysystems that C-Kermit supports.  You can override these defaults by (a)editing ckcdeb.h, or (b) defining the appropriate enabling and/or disablingsymbols on the CC command line, for example:  -DBPS_14400 -DNOB_115200or the "make" command line, e.g.:  make blah "KFLAGS=-DBPS_14400 -DNOB_115200"Note: some speeds have no symbols defined for them, because they have neverbeen needed: 12.5bps, 45.5bps, 20000bps, etc.  These can easily be added ifrequired (but they will work only if the OS supports them).IMPORTANT: Adding one of these flags at compile time does not necessarily meanthat you will be able to use that speed.  A particular speed is usable only ifyour underlying operating system supports it.  In particular, it needs to bedefined in the appropriate system header file (e.g. in UNIX, cd to/usr/include and grep for B9600 in *.h and sys/*.h to find the header filethat contains the definitions for the supported speeds), and supported by theserial device driver, and of course by the physical device itself.ALSO IMPORTANT: The list of available speeds is independent of how they areset.  The many UNIXes, for example, offer a wide variety of APIs that areBSD-based, SYSV-based, POSIX-based, and purely made up.  See the ttsspd(),ttgspd(), and ttspdlist() routines for illustrations.The latest entries in this horserace are the tcgetspeed() and ttsetspeed()routines found in UnixWare 7.  Unlike other methods, they accept the entirerange of integers (longs really) as speed values, rather than certain codes,and return an error if the number is not, in fact, a legal speed for thedevice/driver in question.  In this case, there is no way to build a list oflegal speeds at compile time, since no Bnnnn symbols are defined (except for"depracated, legacy" interfaces like ioctl()) and so the legal speed list mustbe enumerated in the code -- see ttspdlist() in ckutio.c.3. FULLSCREEN FILE TRANSFER DISPLAYNew to edit 180 is support for an MS-DOS-Kermit-like local-mode full screenfile transfer display, accomplished using the curses library, or somethingequivalent (for example, the Screen Manager on DEC VMS).  To enable thisfeature, include the following in your CFLAGS:  -DCK_CURSESand then change your build procedure (if necessary) to include the necessarylibraries, usually "curses", perhaps also "termcap" or "termlib":  "LIBS= -lcurses -ltermcap"  "LIBS= -lcurses -ltermlib"  "LIBS= -lcurses"  "LIBS= -ltermlib"to pull in the required libraries.  "man curses" for further information, andsearch through the makefile for "CK_CURSES" to see many examples.Plus maybe you'll have to replace "curses" above by "ncurses".There might still be a complication.  Some implementations of curses reservethe right to alter the buffering on the output file without restoring itafterwards, which can leave Kermit's command processing in a mess when theprompt comes back after a fullscreen file transfer display.  The typicalsymptom is that characters you type at the prompt after a file transfer do notecho until you press the Return (Enter) key.  If this happens to you, tryadding  -DCK_NEWTERM

⌨️ 快捷键说明

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