Annotation of coherent/e/bin/ckermit/ckcker.h, revision 1.1

1.1     ! root        1: /* ckcker.h -- Symbol and macro definitions for C-Kermit */
        !             2: 
        !             3: /*
        !             4:   Author: Frank da Cruz ([email protected], [email protected]),
        !             5:   Columbia University Center for Computing Activities.
        !             6:   First released January 1985.
        !             7:   Copyright (C) 1985, 1992, Trustees of Columbia University in the City of New
        !             8:   York.  Permission is granted to any individual or institution to use this
        !             9:   software as long as it is not sold for profit.  This copyright notice must be
        !            10:   retained.  This software may not be included in commercial products without
        !            11:   written permission of Columbia University.
        !            12: */
        !            13: 
        !            14: #ifndef CKCKER_H
        !            15: #define CKCKER_H
        !            16: 
        !            17: #ifdef NOICP                           /* No Interactive Command Parser */
        !            18: #ifndef NOSPL                          /* implies... */
        !            19: #define NOSPL                          /* No Script Programming Language */
        !            20: #endif /* NOSPL */
        !            21: #endif /* NOICP */
        !            22: 
        !            23: /* Codes for what we are doing now */
        !            24: 
        !            25: #define W_NOTHING  0                   /* Nothing */
        !            26: #define W_SEND     2                   /* SENDing or MAILing */
        !            27: #define W_RECV     4                   /* RECEIVEing or GETting */
        !            28: #define W_REMO     8                   /* Doing a REMOTE command */
        !            29: #define W_CONNECT 16                   /* CONNECT mode */
        !            30: #define W_COMMAND 32                   /* Command mode */
        !            31: 
        !            32: /* Terminal types */
        !            33: #define VT100     0                    /* Also for VT52 mode */
        !            34: #define TEKTRONIX 1
        !            35: 
        !            36: /* Normal packet and window size */
        !            37: 
        !            38: #define MAXPACK 94                     /* Maximum unextended packet size */
        !            39:                                        /* Can't be more than 94! */
        !            40: #define MAXWS 31                       /* Maximum window size */
        !            41:                                        /* Can't be more than 31! */
        !            42: 
        !            43: /* Maximum long packet size for sending packets */
        !            44: /* Override these from cc command line via -DMAXSP=nnn */
        !            45: 
        !            46: #ifdef DYNAMIC
        !            47: #ifndef MAXSP
        !            48: #define MAXSP 9024
        !            49: #endif /* MAXSP */
        !            50: #else  /* not DYNAMIC */
        !            51: #ifndef MAXSP
        !            52: #define MAXSP 2048
        !            53: #endif /* MAXSP */
        !            54: #endif /* DYNAMIC */
        !            55: 
        !            56: /* Maximum long packet size for receiving packets */
        !            57: /* Override these from cc command line via -DMAXRP=nnn */
        !            58: 
        !            59: #ifdef DYNAMIC
        !            60: #ifndef MAXRP 
        !            61: #define MAXRP 9024
        !            62: #endif /* MAXRP */
        !            63: #else  /* not DYNAMIC */
        !            64: #ifndef MAXRP 
        !            65: #define MAXRP 2048
        !            66: #endif /* MAXRP */
        !            67: #endif /* DYNAMIC */
        !            68: 
        !            69: #ifdef COMMENT                         /* Restriction removed in edit 185 */
        !            70: #ifdef VMS                             /* Dynamic or not, */
        !            71: #undef MAXSP                           /* VMS seems to have an intrinsic */
        !            72: #define MAXSP 1920                     /* limit of about 1920. */
        !            73: #undef MAXRP
        !            74: #define MAXRP 1920
        !            75: #endif /* VMS */
        !            76: #endif /* COMMENT */
        !            77: 
        !            78: /* Default sizes for windowed packet buffers */
        !            79: /* Override these from cc command line via -DSBSIZ=nnn, -DRBSIZ=nnn */
        !            80: 
        !            81: #ifdef DYNAMIC
        !            82: #ifndef SBSIZ 
        !            83: #define SBSIZ 9050
        !            84: #endif /* SBSIZ */
        !            85: #ifndef RBSIZ 
        !            86: #define RBSIZ 9050
        !            87: #endif /* RBSIZ */
        !            88: #else  /* not DYNAMIC */
        !            89: #ifndef SBSIZ
        !            90: #define SBSIZ (MAXPACK * (MAXWS + 1))
        !            91: #endif /* SBSIZ */
        !            92: #ifndef RBSIZ
        !            93: #define RBSIZ (MAXPACK * (MAXWS + 1))
        !            94: #endif /* RBSIZ */
        !            95: #endif /* DYNAMIC */
        !            96: 
        !            97: #ifdef COMMENT                         /* Restriction removed in edit 185 */
        !            98: #ifdef VMS                             /* VMS again... */
        !            99: #undef SBSIZ
        !           100: #define SBSIZ 1930
        !           101: #undef RBSIZ
        !           102: #define RBSIZ 1930
        !           103: #endif /* VMS */
        !           104: #endif /* COMMENT */
        !           105: 
        !           106: /* Kermit parameters and defaults */
        !           107: 
        !           108: #define CTLQ      '#'                  /* Control char prefix I will use */
        !           109: #define MYEBQ     '&'                  /* 8th-Bit prefix char I will use */
        !           110: #define MYRPTQ    '~'                  /* Repeat count prefix I will use */
        !           111: 
        !           112: #define MAXTRY     10                  /* Times to retry a packet */
        !           113: #define MYPADN     0                   /* How many padding chars I need */
        !           114: #define MYPADC     '\0'                /* Which padding character I need */
        !           115: 
        !           116: #define DMYTIM     7                   /* Default timeout interval to use. */
        !           117: #define URTIME     10                  /* Timeout interval to use on me. */
        !           118: #define DSRVTIM     0                  /* Default server cmd wait timeout. */
        !           119: 
        !           120: #define DEFTRN     0                   /* Default line turnaround handshake */
        !           121: #define DEFPAR     0                   /* Default parity */
        !           122: #define MYEOL      CR                  /* Incoming packet terminator. */
        !           123: 
        !           124: #define DRPSIZ     90                  /* Default incoming packet size. */
        !           125: #define DSPSIZ     90                  /* Default outbound packet size. */
        !           126: 
        !           127: #define DDELAY      5                  /* Default delay. */
        !           128: #define DSPEED     9600                /* Default line speed. */
        !           129: 
        !           130: #ifdef OS2                             /* Default CONNECT-mode */
        !           131: #define DFESC 29                       /* escape character */
        !           132: #else
        !           133: #ifdef NEXT                            /* Ctrl-] for PC and NeXT */
        !           134: #define DFESC 29
        !           135: #else
        !           136: #ifdef GEMDOS                          /* And Atari ST */
        !           137: #define DFESC 29
        !           138: #else
        !           139: #define DFESC 28                       /* Ctrl-backslash for others */
        !           140: #endif /* GEMDOS */
        !           141: #endif /* NEXT */
        !           142: #endif /* OS2 */
        !           143: 
        !           144: #ifdef NOPUSH                          /* NOPUSH implies NOJC */
        !           145: #ifndef NOJC                           /* (no job control) */
        !           146: #define NOJC
        !           147: #endif /* NOJC */
        !           148: #endif /* NOPUSH */
        !           149: 
        !           150: #ifdef UNIX                            /* Default for SET SUSPEND */
        !           151: #ifdef NOJC                            /* UNIX but job control disabled */
        !           152: #define DFSUSP      0
        !           153: #else                                  /* UNIX, job control enabled. */
        !           154: #define DFSUSP      1
        !           155: #endif /* NOJC */
        !           156: #else
        !           157: #define DFSUSP      0
        !           158: #endif /* UNIX */
        !           159: 
        !           160: /* Files */
        !           161: 
        !           162: #define ZCTERM      0          /* Console terminal */
        !           163: #define ZSTDIO      1          /* Standard input/output */
        !           164: #define ZIFILE     2           /* Current input file (SEND, etc) (in) */
        !           165: #define ZOFILE      3          /* Current output file (RECEIVE, GET) (out) */
        !           166: #define ZDFILE      4          /* Current debugging log file (out) */
        !           167: #define ZTFILE      5          /* Current transaction log file (out) */
        !           168: #define ZPFILE      6          /* Current packet log file (out) */
        !           169: #define ZSFILE      7          /* Current session log file (out) */
        !           170: #define ZSYSFN     8           /* Input/Output from a system function */
        !           171: #define ZRFILE      9           /* Local file for READ (in) */
        !           172: #define ZWFILE     10           /* Local file for WRITE (out) */
        !           173: #define ZNFILS     11          /* How many defined file numbers */
        !           174: 
        !           175: /*
        !           176:  Buffered file i/o is used to avoid gratuitous function calls while encoding a
        !           177:  packet.  The previous way involved 2 nested function calls for EACH character
        !           178:  of the file.  This way, we only do 2 calls per K of data.  This reduces
        !           179:  packet encoding time to 1% of its former cost.  Originally added by Paul
        !           180:  Placeway.
        !           181: */
        !           182: #ifdef VMS             /* In VMS, allow for longest possible RMS record */
        !           183: #ifdef DYNAMIC
        !           184: #define INBUFSIZE 32768        /* File input buffer size */
        !           185: #define OBUFSIZE 32768         /* File output buffer size */
        !           186: #else
        !           187: #define INBUFSIZE 4096 /* File input buffer size */
        !           188: #define OBUFSIZE 4096  /* File output buffer size */
        !           189: #endif /* DYNAMIC */
        !           190: #else  /* Not VMS */   /* For all others, just use a 1K buffer */
        !           191: #define INBUFSIZE 1024
        !           192: #define OBUFSIZE 1024
        !           193: #endif /* VMS */
        !           194: 
        !           195: /* get the next char; sorta like a getc() macro */
        !           196: #define zminchar() (((--zincnt)>=0) ? ((int)(*zinptr++) & 0377) : zinfill())
        !           197: 
        !           198: /* stuff a character into the input buffer */
        !           199: #define zmstuff(c) zinptr--, *zinptr = c, zincnt++
        !           200: 
        !           201: /* put a character to a file, like putchar() macro */
        !           202: #define zmchout(c) \
        !           203: ((*zoutptr++=(char)(c)),(((++zoutcnt)>=OBUFSIZE)?zoutdump():0))
        !           204: 
        !           205: /* Screen functions */
        !           206: 
        !           207: #define SCR_FN 1       /* filename */
        !           208: #define SCR_AN 2       /* as-name */
        !           209: #define SCR_FS 3       /* file-size */
        !           210: #define SCR_XD 4       /* x-packet data */
        !           211: #define SCR_ST 5       /* File status: */
        !           212: #define   ST_OK   0    /*  Transferred OK */
        !           213: #define   ST_DISC 1    /*  Discarded */
        !           214: #define   ST_INT  2     /*  Interrupted */
        !           215: #define   ST_SKIP 3    /*  Skipped */
        !           216: #define   ST_ERR  4    /*  Fatal Error */
        !           217: #define   ST_REFU 5     /*  Refused (use Attribute codes for reason) */
        !           218: #define   ST_INC  6    /* Incompletely received */
        !           219: #define SCR_PN 6       /* packet number */
        !           220: #define SCR_PT 7       /* packet type or pseudotype */
        !           221: #define SCR_TC 8       /* transaction complete */
        !           222: #define SCR_EM 9       /* error message */
        !           223: #define SCR_WM 10      /* warning message */
        !           224: #define SCR_TU 11      /* arbitrary undelimited text */
        !           225: #define SCR_TN 12      /* arbitrary new text, delimited at beginning */
        !           226: #define SCR_TZ 13      /* arbitrary text, delimited at end */
        !           227: #define SCR_QE 14      /* quantity equals (e.g. "foo: 7") */
        !           228: #define SCR_CW 15      /* close screen window */
        !           229: 
        !           230: /* Macros */
        !           231: 
        !           232: #define tochar(ch)  (((ch) + SP ) & 0xFF )     /* Number to character */
        !           233: #define xunchar(ch) (((ch) - SP ) & 0xFF )     /* Character to number */
        !           234: #define ctl(ch)     (((ch) ^ 64 ) & 0xFF )     /* Controllify/Uncontrollify */
        !           235: #define unpar(ch)   (((ch) & 127) & 0xFF )     /* Clear parity bit */
        !           236: 
        !           237: /* Symbols for File Attributes */
        !           238: 
        !           239: #define AT_XALL  0                     /* All of them */
        !           240: #define AT_ALLY  1                     /* All of them on (Yes) */
        !           241: #define AT_ALLN  2                     /* All of them off (no) */
        !           242: #define AT_LENK  3                     /* Length in K */
        !           243: #define AT_FTYP  4                     /* File Type */
        !           244: #define AT_DATE  5                     /* Creation date */
        !           245: #define AT_CREA  6                     /* Creator */
        !           246: #define AT_ACCT  7                     /* Account */
        !           247: #define AT_AREA  8                     /* Area */
        !           248: #define AT_PSWD  9                     /* Password for area */
        !           249: #define AT_BLKS 10                     /* Blocksize */
        !           250: #define AT_ACCE 11                     /* Access */
        !           251: #define AT_ENCO 12                     /* Encoding */
        !           252: #define AT_DISP 13                     /* Disposition */
        !           253: #define AT_LPRO 14                     /* Local Protection */
        !           254: #define AT_GPRO 15                     /* Generic Protection */
        !           255: #define AT_SYSI 16                     /* System ID */
        !           256: #define AT_RECF 17                     /* Record Format */
        !           257: #define AT_SYSP 18                     /* System-Dependent Parameters */
        !           258: #define AT_LENB 19                     /* Length in Bytes */
        !           259: 
        !           260: /* Kermit packet information structure */
        !           261: 
        !           262: struct pktinfo {                       /* Packet information structure */
        !           263:     CHAR *bf_adr;                      /*  buffer address */
        !           264:     int   bf_len;                      /*  buffer length */
        !           265:     CHAR *pk_adr;                      /* Packet address within buffer */
        !           266:     int   pk_len;                      /*  length of data within buffer */
        !           267:     int   pk_typ;                      /*  packet type */
        !           268:     int   pk_seq;                      /*  packet sequence number */
        !           269:     int   pk_flg;                      /*  ack'd bit */
        !           270:     int   pk_rtr;                      /*  retransmission count */
        !           271: };
        !           272: 
        !           273: /* File-related symbols and structures */
        !           274: 
        !           275: #define   XYFILN 0     /*  Naming  */
        !           276: #define   XYFILT 1     /*  Type    */
        !           277: #define     XYFT_T 0    /*    Text  */
        !           278: #define     XYFT_B 1    /*    Binary */
        !           279: #define     XYFT_I 2    /*    Image or Block (VMS) */
        !           280: #define     XYFT_L 3   /*    Labeled (tagged binary) (VMS) */
        !           281: #define     XYFT_U 4    /*    Binary Undefined (VMS) */
        !           282: #define   XYFILW 2      /*  Warning */
        !           283: #define   XYFILD 3      /*  Display */
        !           284: #define     XYFD_N 0    /*    None, Off */
        !           285: #define     XYFD_R 1    /*    Regular, Dots */
        !           286: #define     XYFD_C 2    /*    Cursor-positioning (e.g. with curses) */
        !           287: #define     XYFD_S 3    /*    Simple counter */
        !           288: #define   XYFILC 4      /*  Character set */
        !           289: #define   XYFILF 5      /*  Record Format */
        !           290: #define     XYFF_S  0   /*    Stream */
        !           291: #define     XYFF_V  1   /*    Variable */
        !           292: #define     XYFF_VB 2   /*    Variable with RCW's */
        !           293: #define     XYFF_F  3   /*    Fixed length */
        !           294: #define     XYFF_U  4   /*    Undefined */
        !           295: #define   XYFILR 6      /*  Record length */
        !           296: #define   XYFILO 7      /*  Organization */
        !           297: #define     XYFO_S 0    /*    Sequential */
        !           298: #define     XYFO_I 1    /*    Indexed */
        !           299: #define     XYFO_R 2    /*    Relative */
        !           300: #define   XYFILP 8      /*  Printer carriage control */
        !           301: #define     XYFP_N 0    /*    Newline (imbedded control characters) */
        !           302: #define     XYFP_F 1    /*    FORTRAN (space, 1, +, etc, in column 1 */
        !           303: #define     XYFP_P 2    /*    Special printer carriage controls */
        !           304: #define     XYFP_X 4    /*    None */
        !           305: #define   XYFILX 9      /*  Collision Action */
        !           306: #define     XYFX_A 3    /*    Append */
        !           307: #define     XYFX_Q 5    /*    Ask */
        !           308: #define     XYFX_B 2    /*    Backup */
        !           309: #define     XYFX_D 4    /*    Discard */
        !           310: #define     XYFX_R 0    /*    Rename */
        !           311: #define     XYFX_X 1    /*    Replace */
        !           312: #define     XYFX_U 6    /*    Update */
        !           313: #define   XYFILB 10     /*  Blocksize */
        !           314: #define   XYFILZ 11     /*  Disposition */
        !           315: #define     XYFZ_N 0    /*    New, Create */
        !           316: #define     XYFZ_A 1    /*    New, append if file exists, else create */
        !           317: #define     XYFZ_O 2    /*    Old, file must exist */
        !           318: #define     XYFZ_X 3    /*    Output to pipe/process */
        !           319: #define     XYFZ_Y 4    /*    Input from pipe/process */
        !           320: #define   XYFILS 12     /*  File Byte Size */
        !           321: #define   XYFILL 13     /*  File Label (VMS) */
        !           322: #define   XYFILI 14     /*  File Incomplete */
        !           323: 
        !           324: /* ANSI-style forward declarations for protocol-related functions. */
        !           325: 
        !           326: _PROTOTYP( int input, (void) );
        !           327: _PROTOTYP( int inibufs, (int, int) );
        !           328: _PROTOTYP( int makebuf, (int, int, CHAR [], struct pktinfo *) );
        !           329: _PROTOTYP( int mksbuf, (int) );
        !           330: _PROTOTYP( int mkrbuf, (int) );
        !           331: _PROTOTYP( int spack, (char, int, int, CHAR *) );
        !           332: _PROTOTYP( VOID proto, (void) );
        !           333: _PROTOTYP( int rpack, (void) );
        !           334: _PROTOTYP( int ack1, (CHAR *) );
        !           335: _PROTOTYP( int ackn, (int) );
        !           336: _PROTOTYP( int ackns, (int, CHAR *) );
        !           337: _PROTOTYP( int nack, (int) );
        !           338: _PROTOTYP( int resend, (int) );
        !           339: _PROTOTYP( int errpkt, (CHAR *) );
        !           340: _PROTOTYP( VOID logpkt, (char, int, CHAR *) );
        !           341: _PROTOTYP( CHAR dopar, (CHAR) );
        !           342: _PROTOTYP( int chk1, (CHAR *) );
        !           343: _PROTOTYP( unsigned int chk2, (CHAR *) );
        !           344: _PROTOTYP( unsigned int chk3, (CHAR *) );
        !           345: _PROTOTYP( int sipkt, (char) );
        !           346: _PROTOTYP( int sinit, (void) );
        !           347: _PROTOTYP( VOID rinit, (CHAR *) );
        !           348: _PROTOTYP( int spar, (CHAR *) );
        !           349: _PROTOTYP( int rcvfil, (char *) );
        !           350: _PROTOTYP( CHAR * rpar, (void) );
        !           351: _PROTOTYP( CHAR * rpar, (void) );
        !           352: _PROTOTYP( int gnfile, (void) );
        !           353: _PROTOTYP( int getsbuf, (int) );
        !           354: _PROTOTYP( int getrbuf, (void) );
        !           355: _PROTOTYP( int freesbuf, (int) );
        !           356: _PROTOTYP( int freerbuf, (int) );
        !           357: _PROTOTYP( int dumpsbuf, (void) );
        !           358: _PROTOTYP( int dumprbuf, (void) );
        !           359: _PROTOTYP( VOID freerpkt, (int) );
        !           360: _PROTOTYP( int chkwin, (int, int, int) );
        !           361: _PROTOTYP( int rsattr, (CHAR *) );
        !           362: _PROTOTYP( char *getreason, (char *) );
        !           363: _PROTOTYP( int scmd, (char, CHAR *) );
        !           364: _PROTOTYP( int encstr, (CHAR *) );
        !           365: _PROTOTYP( int decode, (CHAR *, int (*)(char), int) );
        !           366: _PROTOTYP( int fnparse, (char *) );
        !           367: _PROTOTYP( int syscmd, (char *, char *) );
        !           368: _PROTOTYP( int cwd, (char *) );
        !           369: _PROTOTYP( VOID screen, (int, char, long, char *) );
        !           370: _PROTOTYP( int remset, (char *) );
        !           371: _PROTOTYP( int initattr, (struct zattr *) );
        !           372: _PROTOTYP( int gattr, (CHAR *, struct zattr *) );
        !           373: _PROTOTYP( int adebu, (char *, struct zattr *) );
        !           374: _PROTOTYP( int canned, (CHAR *) );
        !           375: _PROTOTYP( int opent, (struct zattr *) );
        !           376: _PROTOTYP( int opena, (char *, struct zattr *) );
        !           377: _PROTOTYP( int openi, (char *) );
        !           378: _PROTOTYP( int openo, (char *, struct zattr *, struct filinfo *) );
        !           379: _PROTOTYP( int reof, (char *, struct zattr *) );
        !           380: _PROTOTYP( VOID reot, (void) );
        !           381: _PROTOTYP( int sfile, (int) );
        !           382: _PROTOTYP( int sattr, (int) );
        !           383: _PROTOTYP( int sdata, (void) );
        !           384: _PROTOTYP( int seof, (CHAR *) );
        !           385: _PROTOTYP( int sxeof, (CHAR *) );
        !           386: _PROTOTYP( int seot, (void) );
        !           387: _PROTOTYP( int window, (int) );
        !           388: _PROTOTYP( int errmsg, (char *) );
        !           389: _PROTOTYP( int clsif, (void) );
        !           390: _PROTOTYP( int clsof, (int) );
        !           391: _PROTOTYP( CHAR setgen, (char, char *, char *, char *) );
        !           392: _PROTOTYP( int getpkt, (int, int) );
        !           393: _PROTOTYP( int putsrv, (char) );
        !           394: _PROTOTYP( int puttrm, (char) );
        !           395: _PROTOTYP( int putfil, (char) );
        !           396: _PROTOTYP( VOID zdstuff, (CHAR) );
        !           397: _PROTOTYP( int tinit, (void) );
        !           398: _PROTOTYP( VOID pktinit, (void) );
        !           399: _PROTOTYP( VOID rinit, (CHAR *) );
        !           400: _PROTOTYP( VOID resetc, (void) );
        !           401: _PROTOTYP( VOID xsinit, (void) );
        !           402: _PROTOTYP( int adjpkl, (int,int,int) );
        !           403: _PROTOTYP( int chktimo, (int,int) );
        !           404: _PROTOTYP( int nxtpkt, (void) );
        !           405: _PROTOTYP( int ack, (void) );
        !           406: _PROTOTYP( int ackns, (int, CHAR *) );
        !           407: _PROTOTYP( int ackn, (int) );
        !           408: _PROTOTYP( int ack1, (CHAR *) );
        !           409: _PROTOTYP( int nack, (int) );
        !           410: _PROTOTYP( VOID rcalcpsz, (void) );
        !           411: _PROTOTYP( int resend, (int) );
        !           412: _PROTOTYP( int errpkt, (CHAR *) );
        !           413: _PROTOTYP( VOID srinit, (void) );
        !           414: _PROTOTYP( VOID tstats, (void) );
        !           415: _PROTOTYP( VOID fstats, (void) );
        !           416: _PROTOTYP( VOID intmsg, (long) );
        !           417: _PROTOTYP( VOID ermsg, (char *) );
        !           418: _PROTOTYP( int chkint, (void) );
        !           419: _PROTOTYP( VOID sdebu, (int) );
        !           420: _PROTOTYP( VOID rdebu, (CHAR *, int) );
        !           421: _PROTOTYP( char * dbchr, ( int ) );
        !           422: #ifdef COMMENT
        !           423: _PROTOTYP( SIGTYP stptrap, (int, int) );
        !           424: _PROTOTYP( SIGTYP trap, (int, int) );
        !           425: #else
        !           426: _PROTOTYP( SIGTYP stptrap, (int) );
        !           427: _PROTOTYP( SIGTYP trap, (int) );
        !           428: #endif /* COMMENT */
        !           429: 
        !           430: /* User interface functions needed by main program, etc. */
        !           431: 
        !           432: _PROTOTYP( VOID prescan, (void) );
        !           433: _PROTOTYP( VOID setint, (void) );
        !           434: _PROTOTYP( VOID cmdini, (void) );
        !           435: _PROTOTYP( int dotake, (char *) );
        !           436: _PROTOTYP( int cmdlin, (void) );
        !           437: _PROTOTYP( int conect, (void) );
        !           438: _PROTOTYP( int ckcgetc, (int) );
        !           439: _PROTOTYP( int ckcputc, (int) );
        !           440: _PROTOTYP (int mdmhup, (void) );
        !           441: _PROTOTYP( VOID herald, (void) );
        !           442: _PROTOTYP( VOID fixcmd, (void) );
        !           443: _PROTOTYP( int doarg, (char) );
        !           444: _PROTOTYP( VOID usage, (void) );
        !           445: _PROTOTYP( VOID doclean, (void) );
        !           446: _PROTOTYP( int sndhlp, (void) );
        !           447: _PROTOTYP( VOID ckhost, (char *, int) );
        !           448: _PROTOTYP( int gettcs, (int, int) );
        !           449: 
        !           450: #ifdef KANJI
        !           451: _PROTOTYP( int zkanji, (int (*)(void)) ); /* Kanji function prototypes */
        !           452: _PROTOTYP( int zkanjf, (void) );
        !           453: _PROTOTYP( int zkanjz, (void) );
        !           454: _PROTOTYP( int xkanjz, (int (*)(char) ) );
        !           455: _PROTOTYP( int xkanji, (int, int (*)(char) ) );
        !           456: #endif /* KANJI */
        !           457: 
        !           458: #endif /* CKCKER_H */
        !           459: 
        !           460: /* End of ckcker.h */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.