|
|
1.1 ! root 1: #if defined(RCSIDENT) && defined(MAINLINE) ! 2: static char *zznewsgate = "$Header: newsgate.h,v 1.7.0.2 85/07/20 13:44:37 notes Rel $"; ! 3: #endif defined(RCSIDENT) && defined(MAINLINE) ! 4: ! 5: /* ! 6: * newsgate.h ! 7: * ! 8: * This file contains the definitions needed for the notesfile/news ! 9: * gateway features. ! 10: * ! 11: * The new (April 4) implementation allows gateing from news to ! 12: * notesfiles at ANY site. Gateing from notes to news is allowed ! 13: * by a SINGLE site (for any given newsgroup) per notesfile 'subnet'. ! 14: * ! 15: * An example: ! 16: * 4 sites running notesfiles: A,B,C and D. ! 17: * ! 18: * Both A and B run news alongside the notesfile program. ! 19: * A and B both gateway news into notesfiles; this is safe ! 20: * and does not generate duplicate articles. ! 21: * Neither C nor D run news; they do want the articles they ! 22: * have written to go to the news system beyond A and B. ! 23: * Sites A and B should at least gateway their locally generated ! 24: * articles to news. Sites C and D should each make their own ! 25: * arrangements to have their articles passed to the news ! 26: * networks. Good criteria for choosing the site include ! 27: * the load of the machine to gateway, how well it is connected ! 28: * to the rest of the network and who runs the machine. ! 29: * In this case, suppose C goes with A and D goes with B. ! 30: * The gateway scripts will look something like: ! 31: * ! 32: * On A: ! 33: * newsoutput list (local articles (A)) ! 34: * newsoutput -sC list (C's articles) ! 35: * ! 36: * On B: ! 37: * newsoutput list (local articles (B)) ! 38: * newsoutput -sD list (D's articles) ! 39: * ! 40: * ! 41: * Original Coding: Ray Essick April 4, 1982 ! 42: * ! 43: */ ! 44: ! 45: /* ! 46: * Definitions that are likely to change between sites: ! 47: */ ! 48: ! 49: #define DFLTRNEWS "rnews" /* if getnet fails */ ! 50: #undef EXPANDPATH /* do indirect links */ ! 51: #define DFLTDOMAIN "UUCP" /* if undomained */ ! 52: #define PATHMAP "/usr/local/lib/usemap" /* path to the paths */ ! 53: /* pathmap unused. */ ! 54: ! 55: /* ! 56: * definitions that aren't likely to be changed. ! 57: */ ! 58: ! 59: #define UGLYPATH /* want Path: ....!author */ ! 60: ! 61: #define RNEWSNAME "Usenet" /* getnet pseudohost */ ! 62: #define NEWSSYS "Anysystem" /* news' sequencer */ ! 63: #define NEWSSEQ "News" /* prefix for above */ ! 64: #define NEWSALIAS "newsgroups" /* mapping file */ ! 65: #define NGRPLEN 30 /* longest newsgroup */ ! 66: #define NEWSNF 1 /* alias news->nf */ ! 67: #define NFBASENEWS 2 /* alias nf->news */ ! 68: #define NFRESPNEWS 3 /* alias nf->news */ ! 69: #define OLDSUFFIX "- from a notesfile" /* catch loops */ ! 70: #define NFSUFFIX "- (nf)" /* catch nf-news-nf */ ! 71: #define CTL ".ctl" /* control msgs */ ! 72: #define SLEEPTIME 10 /* between rnews' */ ! 73: #define GATEMAX 100 /* for newsoutput -c */ ! 74: #define AUTHORPLACEHOLDER "seefromline" /* for Path: line */ ! 75: ! 76: /* ! 77: * classes to send back ! 78: */ ! 79: ! 80: #define NEWS_ALLSEND 001 /* all non-local */ ! 81: #define NEWS_LOCALSEND 002 /* local articles */ ! 82: ! 83: ! 84: /* ! 85: * stuff to be compatible with Salkind/Spickelmier work ! 86: * Most of these are carried over from the news system. ! 87: */ ! 88: ! 89: #define NGDELIM ',' ! 90: #define NEGCHAR '!' /* negation */ ! 91: #define PROTO 'A' /* A-news protocol */ ! 92: #define NUMGROUPS 5 ! 93: ! 94: /* ! 95: * Definitions for the New and Improved version thanks to ! 96: * Tw Cook of Hewlett-Packard. ! 97: */ ! 98: ! 99: #define NFLINE1 "Nf-ID" /* parent, etc */ ! 100: #define NFLINE2 "Nf-From" /* author,dates */ ! 101: ! 102: ! 103: extern char *tzone (); /* in newsdump.c */ ! 104: extern char *getpath (); /* in newspath.c */ ! 105: extern char *Version; /* in newsdump.c */ ! 106: extern char rnewscmd[]; /* in newsoutput.c */ ! 107: extern int sendclass; /* classes to send */ ! 108: ! 109: /* ! 110: * The following lines are from the B-news program. ! 111: * ! 112: * header.h - Article header format ! 113: * ! 114: * @(#)header.h 2.11 4/24/83"; ! 115: */ ! 116: ! 117: #define NUNREC 50 /* bnews:header.h */ ! 118: #define BUFLEN 256 /* bnews:defs.h */ ! 119: #define PATHLEN 512 /* bnews:defs.h */ ! 120: #define NAMELEN 64 /* bnews:defs.h */ ! 121: #define NETCHRS "!:.@^%" /* bnews:defs.h */ ! 122: #define LBUFLEN 1024 /* bnews:defs.h */ ! 123: #define BDATE 64 /* bnews:defs.h */ ! 124: /* was DATELEN */ ! 125: ! 126: struct hbuf /* article header */ ! 127: { /* bnews:header.h */ ! 128: char from[BUFLEN]; /* From: */ ! 129: char path[PATHLEN]; /* Path: */ ! 130: char nbuf[BUFLEN]; /* Newsgroups: */ ! 131: char snbuf[BUFLEN]; /* Squashed nbuf. */ ! 132: char title[BUFLEN]; /* Subject: */ ! 133: char oident[BUFLEN]; /* Article-I.D.: */ ! 134: char ident[BUFLEN]; /* Message-ID: */ ! 135: char replyto[BUFLEN]; /* Reply-To: */ ! 136: char followid[BUFLEN]; /* References: */ ! 137: char subdate[BDATE]; /* (submitted) Date: */ ! 138: long subtime; /* subdate in secs */ ! 139: char recdate[BDATE]; /* Date-Received: */ ! 140: long rectime; /* recdate in secs */ ! 141: char expdate[BDATE]; /* Expires: */ ! 142: long exptime; /* expdate in secs */ ! 143: char ctlmsg[PATHLEN]; /* Control: */ ! 144: char sender[BUFLEN]; /* Sender: */ ! 145: char followto[BUFLEN]; /* Followup-to: */ ! 146: char postversion[BUFLEN]; /* Post-Version: */ ! 147: char relayversion[BUFLEN]; /* Relay-Version: */ ! 148: char distribution[BUFLEN]; /* Distribution: */ ! 149: char organization[BUFLEN]; /* Organization: */ ! 150: char numlines[8]; /* Lines: */ ! 151: int intnumlines; /* Integer version */ ! 152: char keywords[BUFLEN]; /* Keywords: */ ! 153: char approved[BUFLEN]; /* Approved: */ ! 154: char nline1[BUFLEN]; /* NF-Id: */ ! 155: char nline2[BUFLEN]; /* NF-From: */ ! 156: char *unrec[NUNREC]; /* unrecognized lines */ ! 157: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.