I refer to version 3.9.7, older versions don't support some configuration options.
At first we have to edit fidogate/config.h. I made the
following changes in the original-file: (this is not the complete
file, only the passages I changed!)
/* #define HOSTS_RESTRICTED */ #define SECURE /* #define PASSTHRU_NETMAIL */ /* #define PASSTHRU_ECHOMAIL */ #define OUTDIR "outbound" /* Output of rfc2fido */ #ifdef SECURE /* Secure permissions */ # define PACKET_MODE 0600 /* Mode for outbound packets */ # define BSY_MODE 0664 /* Mode for BSY files */ # define FLO_MODE 0664 /* Mode for FLO files */ # define DATA_MODE 0660 /* Mode for ffx data files */ # define DIR_MODE 0775 /* Mode for directories */ # define CONF_MODE 0664 /* Mode for written config files */ #else /* Open permissions */ # define PACKET_MODE 0666 /* Mode for outbound packets */ # define BSY_MODE 0666 /* Mode for BSY files */ # define FLO_MODE 0666 /* Mode for FLO files */ # define DATA_MODE 0666 /* Mode for ffx data files */ # define DIR_MODE 0777 /* Mode for directories */ # define CONF_MODE 0666 /* Mode for written config files */ #endif
You should see from the comments in config.h what this all
means. There is no restriction to listed hosts. I've made it a habit
of mine to call the outbound-directory outbound and not just
out. You can change that if you do it consistently everywhere.
Also I fitted the permissions to my flavour.
Next we have to make some changes in fidogate/config.make:
LIBDIR = /usr/local/lib/fidogate SPOOLDIR = /var/spool/fnet LOGDIR = /var/log/fnet OUTBOUND = /var/spool/fnet/outbound INBOUND = /var/spool/fnet/inbound PINBOUND = /var/spool/fnet/pinbound UUINBOUND = /var/spool/fnet/uuin OWNER = uucp GROUP = uucp DEBUG = -O2 -s -fomit-frame-pointerIn
fidogate/src/Makefile you should change
$(SPOOLDIR)/out in $(SPOOLDIR)/outbound.
By this the directories are adjusted to my directory-structure and
uucp.uucp becomes user of FidoGate. Later ifcico will work
under the user uucp.uucp, too.
Now you've got to make some changes in fidogate/src/ftninpost.pl:
$RELAY = "p13.flokiste.fido.de";
$PROTO = "FIDOGATE";
$SENDMAIL = "/usr/lib/sendmail -oi -odq -oee -f%s -oMs$RELAY -oMr$PROTO -t";
$RNEWS = "/usr/bin/rnews";
&do_cmd("$LIBDIR/ftninrecomb $options");
Here the name of the gate is adjusted (it's not that important, but
the name will appear later in the Received:-header of the mails). If
you don't want to call Sendmail/smail every 15 minutes and don't start
them as daemons, you should delete the queue-option (-odq) of
sendmail, as else the mail will stay in /var/spool/mail/input
(smail) or /var/spool/mqueue (sendmail). By setting the
option -oi mails who have a line with only a fullstop in it are
not terminated. Since FidoGate 3.9.5 this feature is built-in already.
Then I adjusted the path of rnews to my system and finally activated
ftninrecomb (in the original it's commented out by '##').
This option causes that mails which were splitted following FTS-0047
are glued together again.
Now you should execute the following commands in fidogate/src
as root:
make depend make all make install-dirs make install
Then you change the directory to fidogate/lib and run:
make install
By this all files you need are in /usr/local/lib/fidogate.
Now you have to make some adjustments to your system. Here is a
complete /usr/local/lib/fidogate/config.common, which
contains the global configuration:
#:ts=8 # # /usr/local/lib/fidogate/config.common # # FIDOGATE config file common stuff, # included by config.gate, config.main, config.ffx # # spinnaker.rhein.de # # Format: keyword arg ... # keyword and args may be put in double quotes "..." # # Directories: lib, spool, BinkleyTerm-style outbound base dir (without # the .../out.xxx), BinkleyTerm-style inbound dir # # lib, spool defaults are defined in config.h # LibDir /usr/local/lib/fidogate SpoolDir /var/spool/fnet LogDir /var/log/fnet Outbound /var/spool/fnet Inbound /var/spool/fnet/inbound # # Internet address # #Hostname p13 #Domain .flokiste.fido.de Hostname spinnaker Domain .rhein.de # Optional domain name for entries in HOSTS file HostsDomain .fido.de # # Zones and domains, the outbound directory is relative to the one # specified with `Outbound'. # # zone Inet domain FTN domain Outbound # ---- ----------- ---------- -------- Zone default .fidonet.org fidonet - Zone 1 .fido.sub.de fidonet outbound.001 Zone 2 .fido.sub.de fidonet outbound Zone 3 .fido.sub.de fidonet outbound.003 Zone 4 .fido.sub.de fidonet outbound.004 Zone 5 .fido.sub.de fidonet outbound.005 Zone 6 .fido.sub.de fidonet outbound.006 Zone 21 .ger.sub.de gernet gernet Zone 242 .fido.de fidode fidode # # OPTIONAL: # # MSDOS client drive to UNIX server directory translation. This allows # FIDOGATE running on a UNIX system and BinkleyTerm on an MSDOS PC. # #DosDrive H: /home #DosDrive I: /var/spool #DosDrive I: /usr/spool #DosDrive P: /u1 #DosDrive Q: /u2
Hostname spinnakerThis is my domain in the Internet:
Domain .rhein.deWhen I had only Internet-access via fido.de, I used
p13 as
hostname and .flokiste.fido.de as domain.
If you have no Internet-address you can take any name as hostname and
.uucp as domain (don't forget the leading point!). It is very
important that you then define NoFromLine in config.gate,
otherwise Internet addresses are generated on which nobody can answer.
You should do this, too, if you have an Internet-address via a gate.
fido.de e.g. bounces news-articles which contain such a FromLine,
because it detects them as potential dupes.
Following changes are to be made in config.main:
#:ts=8 # # /usr/local/lib/fidogate/config.main # # FIDOGATE config file main AKA # # spinnaker.rhein.de # # Format: keyword arg ... # keyword and args may be put in double quotes "..." # # # Include common stuff (%L = LIBDIR) # include %L/config.common # # FTN addresses # Address 2:2450/111.13 Address 21:100/64.13 Address 242:5000/4.13 # # AREAS.BBS EchoMail distribution list # AreasBBS /usr/local/lib/fidogate/areas.bbs # # FAREAS.BBS file distribution list # FAreasBBS /usr/local/lib/fidogate/fareas.bbs # # ftnaf: CC of reply mails # CCMail postmaster@spinnaker.rhein.de # # OPTIONAL for tosser # # Kill empty NetMails addressed to one of our AKAs # KillEmpty # # Kill EchoMail for unknown areas # #KillUnknown # # Kill routed EchoMail # #KillRouted # # Log sender/recipient of all NetMail messages # LogNetMail # # Check ^APATH for our own address # CheckPath # # Zonegate configuration for EchoMail # # Address to Add to SEEN-BYs # ---------- --------------- #ZoneGate 2:123/456 123/456 2452/110 #ZoneGate 2:789/999 789/999 2452/110 #ZoneGate 1:105/42 105/42 2452/110 # # Add extra nodes to SEEN-BY # # Area Nodes # ---- ----- #AddToSeenBy ABLED 2:24/24 #AddToSeenBy ABLENEWS 2:24/24
config.gate has to be adjusted:
#:ts=8 # # /usr/local/lib/fidogate/config.gate # # FIDOGATE config file gateway programs # # spinnaker.rhein.de # # Format: keyword arg ... # keyword and args may be put in double quotes "..." # # Include common stuff (%L = LIBDIR) # include %L/config.common # # FTN addresses - there must be a corresponding `uplink' statement # for each `address' statement # # real # ---- Address 2:2450/111.13 Address 21:100/64.13 Address 242:5000/4.13 Uplink 2:2450/111 Uplink 21:100/64 Uplink 242:5000/4 # # Default origin line for EchoMail messages # Origin " Spinnaker - Linux-Point der FloKiste Koeln " # # Organization header for News # Organization "Spinnaker-FTN-UseNet-Gate" # # Don't generate From: line, FSC-0035 kludges # MUST be set for FIDOGATE points (no real gateway) # NoFromLine # # FTN - Internet gateway. If set, Internet mail will be routed via FTN # and this gateway. # #Gateway 242:4900/99 # # Generate `User.Name@do.main' instead of `User_Name@do.main' # #DotNames # # X-FTN header: # # f X-FTN-From # t X-FTN-To # T X-FTN-Tearline # O X-FTN-Origin # V X-FTN-Via # D X-FTN-Domain # S X-FTN-Seen-By # P X-FTN-Path # X-FTN ftTOVDP # # Maximum size of FTN messages (default value) # MaxMsgSize 15000 #MaxMsgSize 32000 # # MAUS gateway support: # # If set, convert addresses for `User_Name@XY.MAUSDomain' to # `User Name % XY @ MAUSGate' for the Fido-MAUS gateway. # MAUSDomain .maus.de MAUSGate 2:2452/101.6 # # CC of bounced messages # BounceCCMail postmaster@spinnaker.rhein.de # # Send mail from message trackers to # TrackerMail postmaster@spinnaker.rhein.de
Now we get on with the file hosts. The given example is
specifically adjusted to the configuration of Martin Junius and can't
be used by anybody else. You can delete it (create a new empty one with
touch hosts), so that no names are used for the computer. But it
should at least contain your own adresses:
# /usr/local/lib/fidogate/hosts # # Fields: # # node FTN address # # hostname Host name in the local domain (config: HostsDomain, Domain) # or fully qualified domain name (trailing `.') or `-' for # listed node without host name. # # options -p Generate addresses with point, e.g. `p99.hippo.fido.de' # -d Node is currently down (can't receive mail) # # node hostname options #----- -------- ------- # 2:2450/111 flokiste -p 242:5000/4 flokiste -p 21:100/64 flokiste -p
2:,
so only Fido-addresses remain and you should have no problems
anymore. If you want you can use computers with other domains, as the
example tweety.dfv.rwth-aachen.de shows. You shouldn't forget a
dot a the end of a domain-name. This way you could use for instance
the computer of schiele-ct.de, which also all have a Fido and an
Internet address. If you want to insert only the sites of
schiele-ct.de then you can turn HostsDomain to
schiele-ct.de in the config-file and then insert all
schiele-ct.de sites without the domain into hosts. I hope
this became clear, as for all sites, which are not mentioned in
hosts, the address is converted to
e.g. p13.f111.n2450.z2.fido.sub.de, for the sites in hosts
e.g. in p13.flokiste.fido.de. Don't forget to set the flag
-p for almost all sites in hosts, to generate addresses with
point. Otherwise the point number is deleted and this means work
for the message-tracker of your node.
Next you can adjust the bounce.*-files to your system, but I
can't remember that they were ever used. You can adjust aliases,
too, but you don't need.
Now have a look at areas, which should at least contain all
echomail areas, you use. If you enter more, this doesn't bother.
Please note, that the german Fido-echos (e.g. LINUX.GER) are
converted in the fido.ger-hierarchy
(e.g. fido.ger.linux). International Fido-Echos are renamed into
fido.int.*. The names of the Usenet-echos are converted to
lower-case. Furthermore one should create an own hierarchy for any
other Domain (zone). For all areas which do not belong to zone 2, you
should add the zone-number (of course you can do this for all areas of
zone 2, too). There are some other flags, too, which you can set.
Here an excerpt from my areas-file:
# /usr/local/lib/fidogate/areas # # Echomail area <-> News newsgroup conversion # # Options: # -z ZONE Alternate zone AKA for this area # -d DISTRIBUTION Distribution header for this newsgroups # -o ORIGIN * Origin line for this area # -g No gated messages # -l Only local crosspostings # -x No crosspostings # -8 Messages with 8bit ISO-8859-1 charset # -H Names match entire hierarchy, names are translated # -! Don't gate area/newsgroup [hierarchy] # -R LVL ^ARFC header level # -m MAXSIZE MaxMsgSize for this area (0 = infinity) # # All fields may be quoted in "...", order is import, first area/newsgroup # found matches! # # Format: # # area newsgroup [-option] # ------------------------ -------------------------- --------- FLOKISTE.INTERN fido.flokiste.intern FLOKISTE.STAT fido.flokiste.stat LINUX.GER fido.ger.linux SAILING fido.int.sailing CT.GER ger.ct -z 21 CT.PROJEKTE ger.ct.projekte -z 21 CT.PRUEFSTAND ger.ct.pruefstand -z 21 CT.SUPPORT ger.ct.support -z 21 FIDO.DE fido.de -z 242 5000.INTERNET fido.5000.intern -z 242 ALT.RELIGION.EMACS alt.religion.emacs -z 242 COMP.OS. comp.os. -z 242 -H REC.MUSIC. rec.music. -z 242 -H DE.ALT.BINARIES. de.alt.binaries. -H -! DE. de. -z 242 -H
-H)
or to exclude sub-hirarchies (-!) for the usenet-areas, which
have the same name under RFC (lower-case) and FTN (upper-case).
In the end you should create an empty file with touch
/usr/local/lib/fidogate/passwd otherwise rfc2ftn won't
work.