|
|
1.1 ! root 1: .\" @(#)b.interface 6.1 (Berkeley) 5/26/86 ! 2: .\" ! 3: .ls 1 ! 4: .ap B "Interfacing Notesfiles to News" ! 5: ! 6: The News system provides functions similar to ! 7: those provided by the Notesfile system. ! 8: It is possible to gateway articles between the two systems. ! 9: In USENET, a common configuration is for several notesfiles ! 10: sites to form a subnetwork of USENET and ! 11: gateway articles between the local notesfile network and ! 12: the rest of USENET. ! 13: These articles propogate across USENET in the news system. ! 14: Article originating in the news system are gatewayed into ! 15: the notesfile network. ! 16: When several notesfile networks exist as subnetworks of ! 17: a larger news network (such as USENET), articles written ! 18: in one notesfile network will be correctly interpreted ! 19: when arriving at another notesfile network. ! 20: ``Correctly'' interpreted includes proper linking of ! 21: responses to their true parents; ! 22: this is sometimes not possible with articles written in the ! 23: news system. ! 24: ! 25: The notesfile gateway code recognizes articles meeting ! 26: the USENET standards. ! 27: Additionally, the A-news protocol and older B-news protocols ! 28: are recognized. ! 29: Incoming (news \(-> notes) articles are parsed and placed in the ! 30: appropriate notesfiles. ! 31: Articles written within a notesfile subnetwork are formatted according ! 32: to USENET standards and transmitted to the news system. ! 33: ! 34: .a1 "Configurations for Sites without News" ! 35: ! 36: Sites running notesfiles without the news program have ! 37: several possible configuations. ! 38: If your site is part of a notesfile subnetwork and you wish to ! 39: have your articles gatewayed to the news system and the ! 40: rest of USENET, you must find a site who will act as a ! 41: gateway for your articles. ! 42: The gateway code performs its task in such a way as to allow ! 43: several sites to gateway the same article into the news system; ! 44: the multiple copies will have identical unique identifiers ! 45: and one copy will be canceled when they meet on a remote system. ! 46: ! 47: .a2 "Sites with no News Neighbors" ! 48: ! 49: If you have no immediate neighbor running news, there is ! 50: no particular action you should take other than to reassure ! 51: yourself that some site in the notesfile subnetwork is gatewaying ! 52: notes-generated articles to the news system. ! 53: This can be done in one of several ways. ! 54: If the site wants to gateway articles specifically from your ! 55: machine, the following command should be executed on that site ! 56: occasionally. This is typically done through cron(8). ! 57: ! 58: newsoutput -syoursite notesfile-list ! 59: ! 60: A more typical arrangement is where the gateway site sends all ! 61: notes-generated articles that arrive on its system into the ! 62: news system. ! 63: In this case, the gateway site will execute a command such as ! 64: the following: ! 65: ! 66: newsoutput -a notesfile-list ! 67: ! 68: A site gate using this command line will automatically gateway ! 69: articles written at your site and eliminates the need of running ! 70: a command similar to the first command line. ! 71: ! 72: ! 73: .a2 "Sites with Neighbors running News" ! 74: ! 75: If a neighboring system runs both notes and news, you ! 76: have the option of gatewaying your own articles or allowing ! 77: the neighbor to gateway articles for you. ! 78: If the neighbor does not run the notesfile system, you must ! 79: provide your own gateway functions. ! 80: ! 81: Gatewaying can be done similarly to the site without ! 82: a news neighbor. You can let your articles propogate across ! 83: a notesfile network to a gateway site which will send them ! 84: to the news system. ! 85: Another option is to gateway your articles, ! 86: and possibly any notesfile-generated articles, ! 87: into the news system at the neighboring site. ! 88: This gets your articles into USENET as quickly as possible. ! 89: The two options are not mutually exclusive; ! 90: you can gateway your own articles and allow another site to ! 91: gateway them. ! 92: When copies of the same article meet on a news system, the ! 93: extra copy will be removed from the network. ! 94: ! 95: To gateway articles into news, you must modify the ! 96: file ! 97: /usr/spool/notes/.utilities/net.how ! 98: to tell the newsoutput ! 99: program how to get to the news system. ! 100: More information on this can be found in the section ! 101: ``Copying Notesfiles to News'' later in this appendix. ! 102: ! 103: To gateway from the news system to the notesfile ! 104: system, you must arrange to have the news system at the remote ! 105: site send articles as standard input to the program ! 106: /usr/spool/notes/.utilities/newsinput ! 107: on your system. ! 108: ! 109: Information on mapping functions between notesfiles ! 110: and news, how to configure a news system to send articles to ! 111: a notesfile system, ! 112: and ! 113: how to have a notesfile system send articles to a news system ! 114: can be found later in this appendix. ! 115: ! 116: .a1 "Configurations for Sites running News" ! 117: ! 118: A site running both notesfiles and news will typically ! 119: perform gateway functions in both directions, ! 120: from the notesfile system to the news system ! 121: and ! 122: from the news system to the notesfile system. ! 123: In these cases all the operations are local. ! 124: ! 125: .a1 "Gatewaying between Notesfiles and News" ! 126: ! 127: The two notesfile programs ``newsoutput'' and ``newsinput'' ! 128: perform gatewaying between notesfile and news systems. ! 129: Newsoutput takes notesfile-generated articles, formats them, ! 130: and hands them to the news system. ! 131: Newsinput takes articles from the news system and inserts ! 132: them in the notesfile system. ! 133: ! 134: .a2 "Copying News to Notesfiles" ! 135: ! 136: The news system maintains ``subscription lists'' for ! 137: each neighboring system. ! 138: The subscription list is stored in the file /usr/lib/news/sys ! 139: on a B-news system. ! 140: On an A-news system, the subscription list is in ! 141: /usr/spool/news/.sys ! 142: ! 143: News feeds articles to neighboring systems as they ! 144: arrive. ! 145: In many cases, the article is queued for transmission. ! 146: In other cases, the article is given to a batching program ! 147: which collects a number of articles for transfer ! 148: and sends them to an appropriate un-batching program at ! 149: the receiving end. ! 150: ! 151: In the case where the notesfile system resides on another ! 152: machine, the news subscription line should be generated similarly ! 153: to that for a normal news feed with several exceptions. ! 154: The first is that the newsinput program does not understand about ! 155: batching; articles must be sent one at a time. ! 156: Also, one must specify the method of transmitting the article. ! 157: To feed the system ``somesite'' with news, the ! 158: neighbor will add a line of the following form to his /usr/lib/news/sys: ! 159: ! 160: somesite:subscription::uux - -n somesite!/usr/spool/notes/.utilities/newsinput ! 161: ! 162: Of course, networks other than UUCP can be used. ! 163: ! 164: To forward to a notesfile system on the same machine as the ! 165: news system, create a pseudo site which doesn't exist elsewhere ! 166: (a sitename such as ``nf_sys'' works), and add a line like: ! 167: ! 168: nf_sys:subscription::/usr/spool/notes/.utilities/newsinput ! 169: ! 170: Articles arriving at the local system will now be forwarded to ! 171: the notesfile system. ! 172: By default, news articles are placed in notesfiles with the ! 173: same name. ! 174: To map newsgroups to particular notesfiles, see the later ! 175: section ``Naming Notesfiles and Newsgroups''. ! 176: ! 177: .a2 "Copying Notesfiles to News" ! 178: ! 179: The newsoutput program transfers notesfile-generated ! 180: articles from the notesfile system to a news system. ! 181: The news system does not have to be on the same machine. ! 182: ! 183: Newsoutput accepts parameters telling it to gateway ! 184: articles from specific systems or any system. ! 185: Additional options allow backwards compatible ! 186: headers for older versions of the notesfile software. ! 187: A typical newsoutput invocation looks like: ! 188: ! 189: newsoutput -a notesfile-list ! 190: ! 191: The -a parameter indicates that notesfile generated articles ! 192: from any site are to be sent to the news system. ! 193: Under no circumstances will newsoutput transfer an article ! 194: to the news system if it has passed through the news system ! 195: before. ! 196: Thus if a notes generated article passes from one notesfile ! 197: subnetwork to another through the news system, the ! 198: article will not be sent into the news system by anyone in ! 199: the second notesfile subnetwork. ! 200: ! 201: The ``notesfile-list'' can contain a mixture of ! 202: specific notesfiles, wild-card specifications (net.*), ! 203: or ``-f file'' parameters which specifies a file ! 204: containing a list of notesfiles to send. ! 205: ! 206: Alternatively, articles for only one system can be ! 207: gatewayed with a command line of the form: ! 208: ! 209: newsoutput -ssitename notesfile-list ! 210: ! 211: This invocation method maintains a sequencer for each system; ! 212: the -a option maintains a single global sequencer. ! 213: ! 214: A third invocation method of newsoutput uses the ! 215: ``-c'' option and specifies a specific set of systems to ! 216: gateway articles for. The command looks like: ! 217: ! 218: newsoutput -c gateway-site-file notesfile-list ! 219: ! 220: The ``gateway-site-file'' specifies a file containing a list ! 221: of sitenames. ! 222: Articles written at any of these sites are gatewayed to the ! 223: news system. ! 224: Thus newsoutput has the ability to send articles to news ! 225: for a single system, several systems, or any system. ! 226: ! 227: Newsoutput assumes that a news system is installed ! 228: on the local system. ! 229: If the news system is in a non-standard location on the ! 230: local system or ! 231: the news system is on a different machine, newsoutput ! 232: can be told where to send articles. ! 233: The file /usr/spool/notes/.utilities/net.how contains ! 234: command templates for notesfile networking. ! 235: To specify a non-standard place for the ``rnews'' program, ! 236: add a line of the form: ! 237: ! 238: Usenet:x:::uux - -n myneighbor!/usr/bin/rnews ! 239: ! 240: Non-UUCP connections and the like can be specified. ! 241: ! 242: .a2 "Naming Notesfiles and Newsgroups" ! 243: ! 244: Notesfiles and newsgroups for the same topic can have ! 245: different names. ! 246: Notesfiles are currently limited in the last component of ! 247: their name to the length of a filename; ! 248: under V7, System III, System V, and 4.1 Bsd this is 14 ! 249: characters. 4.2 Bsd extends the length of a filename ! 250: to a maximum of 255 characters per component. ! 251: Newsgroup names are no longer limited in total length; ! 252: the only restriction in current news versions is ! 253: that each component (between .'s) is unique in ! 254: the first 14 characters. ! 255: ! 256: The file ``/usr/spool/notes/.utilities/newsgroups'' ! 257: defines the relationships between notesfiles and newsgroups. ! 258: Lines in the file have the general form: ! 259: ! 260: notesfile:base_newsgroup:respone_newsgroup ! 261: ! 262: Lines beginning with the ``#'' character are considered ! 263: comment lines. ! 264: The ``response_newsgroup'' field and the colon separating ! 265: it from the base_newsgroup field are optional. ! 266: ! 267: Entries in this file need be made for only a few reasons: ! 268: (1) The newsgroup which matches the notesfile is longer than fourteen ! 269: characters, ! 270: (2) the notesfile and the newsgroup are different names ! 271: (e.g. the notesfile `Bnews' can be linked to the newsgroup `net.news.b' ! 272: with an entry of `Bnews:net.news.b'), ! 273: (3) you want several newsgroups linked to a single notesfile, ! 274: and ! 275: (4) notes and responses from a notesfile should go to ! 276: different newsgroups (net.general/net.followup is one example). ! 277: The file is scanned from the beginning until EOF or a match is found. ! 278: When no match is found, the code returns the original argument as if ! 279: it had matched itself. ! 280: The process is similar to having placed a sentinel line of the ! 281: form: ! 282: ! 283: myarg:myarg ! 284: ! 285: at the end of the file. ! 286: ! 287: The optional third field in the line is used to send ! 288: notes and responses from a notesfile to separate newsgroups. ! 289: The net.general/net.followup convention is an example of ! 290: how this would be used. ! 291: Typically the net.general and net.followup newsgroups are ! 292: mapped into the same notesfile. ! 293: To preserve peace with news users, responses written in a ! 294: notesfile `net.general' should go to the newsgroup `net.followup'. ! 295: The following pair of lines will map all news from net.general ! 296: and net.followup into the notesfile net.general. ! 297: Base notes from the notesfile net.general will go to the newsgroup ! 298: net.general; ! 299: responses in the net.general notesfile will be sent to ! 300: the net.followup newsgroup. ! 301: ! 302: .nf ! 303: net.general:net.general:net.followup ! 304: net.general:net.followup ! 305: .fi ! 306: ! 307: The first line maps news in net.general to the notesfile net.general. ! 308: It also does the mapping from notesfiles to newsgroups. ! 309: The second line maps news from net.followup into the notesfile ! 310: net.general. ! 311: Note that the response field is not used in the mapping from ! 312: newsgroups to notesfiles; it is used only for mapping notesfile ! 313: responses into a different newsgroup. ! 314: ! 315: To map several newsgroups into the same notesfile, ! 316: place lines of the following form in the ``newsgroups'' file: ! 317: ! 318: .nf ! 319: somenotesfile:newsgroup1 ! 320: somenotesfile:newsgroup2 ! 321: .fi ! 322: ! 323: If you wish to have articles from the notesfile ``somenotesfile'' ! 324: go to both of the newsgroups, insert a line before the above lines ! 325: to map articles going to notesfiles. ! 326: The result would look like: ! 327: ! 328: .nf ! 329: somenotesfile:newsgroup1,newsgroup2 ! 330: somenotesfile:newsgroup1 ! 331: somenotesfile:newsgroup2 ! 332: .fi ! 333: ! 334: The first line is the one used for articles going from notesfiles ! 335: to news; the newsgroups specification ``newsgroup1,newsgroup2'' ! 336: is used on those articles. ! 337: Articles coming from the newsgroup ``newsgroup1'' will fail to ! 338: match the first line, since the program expects exact matching. ! 339: They will match the second line and be mapped to the ! 340: notesfile ``somenotesfile''. ! 341: ! 342: .a1 "Typical Configurations" ! 343: ! 344: A typical notesfile subnetwork contains a number of ! 345: pure notesfile sites and several sites running both news and ! 346: notesfiles. ! 347: In these situations, some subset of the sites running ! 348: both notes and news ! 349: act as gateway sites. ! 350: The pure notesfile sites don't concern themselves with ! 351: gateway operations. ! 352: The gateway sites typically gateway all notes-generated ! 353: articles to news. ! 354: Duplicate articles, gatewayed at several sites, ! 355: will propogate across the news network. ! 356: When two or more of these articles meet at some site, the ! 357: superflous copy will be removed from the network. ! 358: ! 359: If none of the sites in the notesfile subnetwork ! 360: run the news program, ! 361: the gateway site will be one or more of the sites having ! 362: neighbors that do run news. ! 363: These gateway sites will run newsoutput and direct the ! 364: output to the news site by making the appropriate ! 365: entry in /usr/spool/notes/.utilities/net.how ! 366: for the pseudo-site ``Usenet''. ! 367: ! 368: .a1 "News Gateway Installation Checklist" ! 369: ! 370: The following checklist covers the variables in the ! 371: ``newsgate.h'' file which may need to be changed on your system. ! 372: It also mentions which files to modify to automate the transfer ! 373: of articles between the two systems. ! 374: ! 375: .bz ! 376: .iz ! 377: [edit] src/newsgate.h ! 378: .iz ! 379: MYDOMAIN. ! 380: This should be set to the domain your site is in. ! 381: Typical domains are ``UUCP'' and ``ARPA''. ! 382: .iz ! 383: DFLTRNEWS. ! 384: The news receiving program. ! 385: This can normally be left as is; ! 386: alternate news insertion methods can be specified ! 387: with more flexibility through the net.how file. ! 388: .iz ! 389: EXPANDPATH. ! 390: If defined, the code looks in the file specified ! 391: by PATHMAP for a route to an author's system. ! 392: The code which does this is in ``src/newspath.c'' ! 393: and expects a particular format in the PATHMAP ! 394: file. ! 395: You may wish to replace it with code of your own if ! 396: your data base is in a different format. ! 397: .iz ! 398: PATHMAP. ! 399: This is the full pathname of the routing tables ! 400: used if EXPANDPATH is defined. ! 401: .iz ! 402: [finished editing] src/newsgate.h ! 403: .iz ! 404: make newsouput newsinput. ! 405: This will recompile the notesfile/news gateway programs. ! 406: .iz ! 407: Check /usr/lib/news/sys ! 408: to see that news will be forwarded to the notesfile system. ! 409: .iz ! 410: Make entries in /usr/lib/crontab to ! 411: invoke newsoutput occcasionally. ! 412: We use every 6 hours. ! 413: .iz ! 414: If the news system is on another machine or in a non-standard ! 415: place, ! 416: modify ! 417: /usr/spool/notes/.utilities/net.how. ! 418: Add a pseudo-site ``Usenet'' which specifies how to ! 419: get to the remote machine. One example is: ! 420: .br ! 421: Usenet:x:::uux - -z neighbor!/usr/bin/rnews ! 422: .iz ! 423: Check /usr/spool/notes/.utilities/newsgroups. ! 424: A sample of how this file will look is included in the ! 425: ``Samples'' directory of the distribution. ! 426: .iz ! 427: Everything should be configured now. ! 428: You will probably want to run several tests on local ! 429: or limited distribution newsgroups to satisfy yourself ! 430: that it works. ! 431: .ez
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.