1PREFACE 2======= 3Original Author - Tim Smith (address unknown) 4Maintainers: 5March 1995 - Sven Goldt (goldt@math.tu-berlin.de) 6July 1995 - Robert A. Yetman (bobyetman@sucknews.org) 7September 2017 - Michael Vetter (jubalh@iodoru.org) 8 9Current Maintainer - jubalh@iodoru.org 10 11LOCATION 12======== 13https://github.com/lazarus-pkgs/suck 14 15INTRODUCTION 16============ 17The primary use for suck is to feed a local NNTP server, without the 18remote NNTP feeding you articles. It is designed for a small, partial 19news feed. It is NOT designed to feed 10,000 groups and 3 Gigs of articles 20a day. 21 22This package contains software for copying news from an NNTP server to your 23local machine, and copying replies back up to an NNTP server. It works 24with most standard NNTP servers, including INN, CNEWS, DNEWS, and typhoon. 25 26The suck/rpost combination allows you to run your own site, controlling 27where you get your news, and where you post outgoing articles. Suck/rpost 28use only standard NNTP commands that are used by your favorite news reader 29(tin, xvnews, strn) such as POST and ARTICLE. If you can use tin or xvnews 30against a NNTP site, than you can use Suck/Rpost. 31 32suck Pull a small newsfeed from an NNTP server 33 34lpost Gives one article fetched by suck to the local server. 35 36rpost Posts article(s) to a remote NNTP server 37 38testhost Check to see what commands your host recognizes or 39 get the active or new list. 40 41lmove put articles in news/group/number format. 42 43 44LICENSING INFO 45============== 46Suck is Public Domain, feel free to make any changes you want, just don't 47blame me when they break. 48 49NOTES: 50====== 51Suck will not work with obsolete NNTP servers that can't handle the xhdr 52command. 53 54This code assumes an ANSI-compliant compiler, it will NOT work with old 55compilers which don't accept function prototypes. 56 57The Makefile assumes you are using GNU make, other makes may or may not work. 58 59If your remote INN server slows drastically after 100 messages are downloaded, 60and they are using INN 1.5.1 or newer, chances are they compiled INN with 61"LIKE_PULLERS" set to DONT, which causes INN to put a small sleep before each message. 62Talk to the SA for the system and see if they'll compile with "DO". Chances 63are they didn't even know this option existed. 64 65An interesting program for processing the killfile log and forcing suck to 66download some of the articles in it can be found at: 67http://ourworld.compuserve.com/homepages/jvanerp/suckmore.html 68 69Is suck Y2K compliant? As far as I can make it yes. The only program that uses 70dates is testhost, and the date is sent to the remote NNTP host for the NEWGRP 71command. I don't do any date calculations. Once servers take an 8 digit 72date (right now its YYMMDD), I'll update testhost. 73 74HOW-TO-USE 75========== 760. Run ./configure --help to see the options, especially the ones listed 77 last (--with-inn-lib && with-inn-include) 781. run ./configure 79 If it can't find your Inn libraries/includes, make sure you use the 80 --with-inn-lib=path & --with-inn-include=path options 812. Check over the Makefile, make sure it found everything, if not fix it. 82 If your flatfile history file is not at /var/lib/news/history, 83 you'll need to use the -HF option, to tell suck where it is. 84 If you're using Inn 2.3 or newer, make sure the Makefile knows 85 where your libinn.a and includes are, otherwise, the dedupe 86 function won't work. See step #4. Typically, these are in 87 the source tree. If you don't have the source, get it, 88 see below. 893. If you're using SSL edit the Makefile step #nr7. 904. Make it. (make , make install) 91 If you are having problems compiling suck, look at the Makefile, 92 there are comments in there for the various common problems 93 I see. 945. READ THE MAN PAGES. 956. Create a sucknewsrc - which groups to download (see suck man pg). 96 If you have INND/CNEWS/DNEWS/PNEWS already running, then 97 just use 'suck remotehost -A -hl localhost', and the sucknewsrc 98 will be built for you. BUT, before you do this, create a active.ignore 99 file, listing all the groups on the local host that you don't want 100 downloaded from the remote host (see man page for sample). 1017. Take a look at the sample directory. There are two shell scripts 102 in there that show the whole scheme from how to download news 103 (with suck), and how to upload news (with rpost). Use get.news.inn 104 if you have INN running, as it knows how to gracefully get the 105 outgoing article listing. get.news.generic is for everyone else. 106 WARNING: These scripts need editing before you can use them. You 107 must change the various variables at the top of the scripts to 108 ensure they point to the right files/directories. 109 If you're using Inn 2.3.X with CNFS, you'll need to use 110 the 'put.news.sm*' scripts, to deal with the tokens that 111 Inn puts in the outgoing file instead of the article number. 112 113 114WHERE TO GET STUFF 115================== 116inn: anonymous ftp from ftp.isc.org /isc/inn 117perl: http://www.perl.com/CPAN/src/latest.tar.gz 118 anonymous ftp from prep.ai.mit.edu /gnu 119Perl/Tk: http://www.perl.com/CPAN/modules/by-module/Tk/Tk8XX.XXX.tar.gz 120SSL: http://www.openssl.org/ 121 122FUTURE PLANS. 123======================== 124 125