better Makefile (LONG)
Curtis Villamizar
Thu May 4 23:36:27 CEST 1995
Hi, It seems that a fair amount of editing of the conf file is needed and most of it is fairly mechanical. I just put together a Makefile, Makefile.generic, and Makefile.config. You are supposed to be able to just edit the first four non-comment lines in the Makefile and go. A config.`hostname` file is generated which you can then edit further if you need to. There is also a topdir.`hostname` file that can be used to put stuff somewhere other than the current directory, though that too could have been a variable in the Makefile (the directory layout on my home machine that I often test on is different from the AIX target that ANS will be using. Thats why the file.). Just put the target directory name on one line in the topdir.`hostname` file. Our AIX system needed a minor change in src/Makefile. Below is: src/Makefile.patch.950504 Makefile Makefile.generic config.generic Please dispose of unused bits in a proper recepticle. :-) Curtis BTW- there is still a bug in cleandb on BSDI that I have worked around for the moment but I will send a patch later. The same problem may also impact netdbm. #!/bin/sh # This is a shell archive (produced by GNU sharutils 4.1). # To extract the files from this archive, save it to some FILE, remove # everything before the `!/bin/sh' line above, then type `sh FILE'. # # Made on 1995-05-04 17:34 EDT by <curtis at curtis.ansremote.com>. # Source directory was `/home/riverford/curtis/ans/radb/dbase/dbase.dist'. # # Existing files will *not* be overwritten unless `-c' is specified. # # This shar contains: # length mode name # ------ ---------- ------------------------------------------ # 462 -r--r----- src/Makefile.patch.950504 # 2199 -rw-r----- Makefile # 1539 -rw-r----- Makefile.generic # 21067 -rw-r----- config.generic # touch -am 1231235999 $$.touch >/dev/null 2>&1 if test ! -f 1231235999 && test -f $$.touch; then shar_touch=touch else shar_touch=: echo echo 'WARNING: not restoring timestamps. Consider getting and' echo "installing GNU \`touch', distributed in GNU File Utilities..." echo fi rm -f 1231235999 $$.touch # # ============= src/Makefile.patch.950504 ============== if test ! -d 'src'; then echo 'x - creating directory src' mkdir 'src' fi if test -f 'src/Makefile.patch.950504' && test X"$1" != X"-c"; then echo 'x - skipping src/Makefile.patch.950504 (file already exists)' else shar: Saving src/Makefile.patch.950504 (text) echo 'x - extracting src/Makefile.patch.950504 (text)' sed 's/^X//' << 'SHAR_EOF' > 'src/Makefile.patch.950504' && *** Makefile.orig Mon Apr 24 10:51:22 1995 --- Makefile Thu May 4 14:26:54 1995 *************** *** 95,102 **** X chmod $(BINMODE) $@ X X X install: $(PROGS) $(LIBS) ! install -m $(BINMODE) $(PROGS) $(BINDIR) X X X clean: --- 95,105 ---- X chmod $(BINMODE) $@ X X + # some install programs are challenged (AIX) X install: $(PROGS) $(LIBS) ! for prog in $(PROGS) ; do \ ! install -c -m $(BINMODE) $$prog $(BINDIR)/$$prog ; \ ! done X X X clean: SHAR_EOF $shar_touch -am 0504165395 'src/Makefile.patch.950504' && chmod 0440 'src/Makefile.patch.950504' || echo 'restore of src/Makefile.patch.950504 failed' shar_count="`wc -c < 'src/Makefile.patch.950504'`" test 462 -eq "$shar_count" || echo "src/Makefile.patch.950504: original size 462, current size $shar_count" fi # ============= Makefile ============== if test -f 'Makefile' && test X"$1" != X"-c"; then echo 'x - skipping Makefile (file already exists)' else shar: Saving Makefile (text) echo 'x - extracting Makefile (text)' sed 's/^X//' << 'SHAR_EOF' > 'Makefile' && # # $Id$ # X # Where is your perl executable ? X PERL= /usr/local/bin/perl X MAILDOM= ans.net ORGTAG= ans ORGFULLNAME= ANS Routing Registry X # You shouldn't have to modify anything below. Modify # topdir.${HOSTNAME} if your target isn't the current directory X SHELL= /bin/sh X SRCDIR= src MFILE= Makefile MGENERIC= Makefile.generic X MAKE= make -f ${MGENERIC} PERL=${PERL} \ X MAILDOM=${MAILDOM} ORGTAG=${ORGTAG} \ X ORGFULLNAME="${ORGFULLNAME}" X all: X @if [ "x." = "x.${HOSTNAME}" ] ; then \ X echo make HOSTNAME=`hostname` $@ ; \ X make HOSTNAME=`hostname` $@ ; \ X elif [ -f topdir.${HOSTNAME} ] ; then \ X echo ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X else \ X echo ${MAKE} TOPDIR=`pwd` $@ ; \ X ${MAKE} TOPDIR=`pwd` $@ ; \ X fi X install: X @if [ "x." = "x.${HOSTNAME}" ] ; then \ X echo make HOSTNAME=`hostname` $@ ; \ X make HOSTNAME=`hostname` $@ ; \ X elif [ -f topdir.${HOSTNAME} ] ; then \ X echo ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X else \ X echo ${MAKE} TOPDIR=`pwd` $@ ; \ X ${MAKE} TOPDIR=`pwd` $@ ; \ X fi X config: X @if [ "x." = "x.${HOSTNAME}" ] ; then \ X echo make HOSTNAME=`hostname` $@ ; \ X make HOSTNAME=`hostname` $@ ; \ X elif [ -f topdir.${HOSTNAME} ] ; then \ X echo ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X else \ X echo ${MAKE} TOPDIR=`pwd` $@ ; \ X ${MAKE} TOPDIR=`pwd` $@ ; \ X fi X clean: X @if [ "x." = "x.${HOSTNAME}" ] ; then \ X echo make HOSTNAME=`hostname` $@ ; \ X make HOSTNAME=`hostname` $@ ; \ X elif [ -f topdir.${HOSTNAME} ] ; then \ X echo ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X else \ X echo ${MAKE} TOPDIR=`pwd` $@ ; \ X ${MAKE} TOPDIR=`pwd` $@ ; \ X fi X uninstall: X @if [ "x." = "x.${HOSTNAME}" ] ; then \ X echo make HOSTNAME=`hostname` $@ ; \ X make HOSTNAME=`hostname` $@ ; \ X elif [ -f topdir.${HOSTNAME} ] ; then \ X echo ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X ${MAKE} TOPDIR=`cat topdir.${HOSTNAME}` $@ ; \ X else \ X echo ${MAKE} TOPDIR=`pwd` $@ ; \ X ${MAKE} TOPDIR=`pwd` $@ ; \ X fi SHAR_EOF $shar_touch -am 0504140495 'Makefile' && chmod 0640 'Makefile' || echo 'restore of Makefile failed' shar_count="`wc -c < 'Makefile'`" test 2199 -eq "$shar_count" || echo "Makefile: original size 2199, current size $shar_count" fi # ============= Makefile.generic ============== if test -f 'Makefile.generic' && test X"$1" != X"-c"; then echo 'x - skipping Makefile.generic (file already exists)' else shar: Saving Makefile.generic (text) echo 'x - extracting Makefile.generic (text)' sed 's/^X//' << 'SHAR_EOF' > 'Makefile.generic' && # # $Id$ # # based on: # RCSfile: Makefile.dist1,v # Revision: 0.11 # Author: marten # Date: 1993/08/02 12:59:46 # X default: X @echo "Don't use Makefile.generic, use the regular Makefile" X # # inherit TOPDIR and PERL from the previous Makefile # # TOPDIR= /home/riverford/curtis/ans/radb/dbase # PERL= /usr/local/bin/perl # X LIBDIR= $(TOPDIR)/lib BINDIR= $(TOPDIR)/bin X # This is the configuration file that will be opened when the environment # variable $RIPEDBCNF is not set X DEFCONFIG= $(TOPDIR)/config.${HOSTNAME} X config.${HOSTNAME}: config.generic X sed < config.generic > config.${HOSTNAME} \ X -e 's,$${TOPDIR},${TOPDIR},g' \ X -e 's,$${MAILDOM},${MAILDOM},g' \ X -e 's,$${ORGTAG},${ORGTAG},g' \ X -e 's,$${ORGFULLNAME},${ORGFULLNAME},g' X $(DEFCONFIG): config.${HOSTNAME} X cp config.${HOSTNAME} $(DEFCONFIG) X config: config.${HOSTNAME} X # # YOU ARE NOT SUPPOSED TO MAKE CHANGES TO ANYTHING BELOW # X SRCDIR= src MFILE= Makefile X MAKE= make LIBDIR=$(LIBDIR) BINDIR=$(BINDIR) \ X DEFCONFIG=$(DEFCONFIG) PERL=$(PERL) X X all: $(SRCDIR)/$(MFILE) $(MFILE) config.${HOSTNAME} X -mkdir $(LIBDIR) X (cd $(SRCDIR); $(MAKE) all) X X install: $(SRCDIR)/$(MFILE) $(MFILE) $(DEFCONFIG) X -mkdir $(BINDIR) X -mkdir $(LIBDIR) X -mkdir $(TOPDIR)/tmp X -mkdir $(TOPDIR)/etc X -mkdir $(TOPDIR)/data X (cd $(SRCDIR); $(MAKE) install) X sed -e 's:PERL:$(PERL):' < whois.pl > $(BINDIR)/whois X chmod 755 $(BINDIR)/whois X X clean: $(SRCDIR)/$(MFILE) $(MFILE) X (cd $(SRCDIR); $(MAKE) clean) X X uninstall: $(SRCDIR)/$(MFILE) $(MFILE) X (cd $(SRCDIR); $(MAKE) uninstall) SHAR_EOF $shar_touch -am 0504141595 'Makefile.generic' && chmod 0640 'Makefile.generic' || echo 'restore of Makefile.generic failed' shar_count="`wc -c < 'Makefile.generic'`" test 1539 -eq "$shar_count" || echo "Makefile.generic: original size 1539, current size $shar_count" fi # ============= config.generic ============== if test -f 'config.generic' && test X"$1" != X"-c"; then echo 'x - skipping config.generic (file already exists)' else shar: Saving config.generic (text) echo 'x - extracting config.generic (text)' sed 's/^X//' << 'SHAR_EOF' > 'config.generic' && ############################################################################# # # %I% %D% # # This is the RIPE database software main configuration file. # Almost all tools that manage the databases use some parts of this # config file, most of them do not use everything. # ############################################################################# # # Alter the database names below for your local environment # ############################################################################# X # default database to do lookups in X DEFLOOK ${ORGTAG_UC} X # if all databases are selected X ALLLOOK ${ORGTAG_UC} X # RIPE uses- #ALLLOOK RIPE INTERNIC ALTERNET NCC-AS-LIST X # Filenames associated with sources, more than one source can point to a file # Make sure that all the databases you define below are available ... # The optional 3rd argument SPLIT says that all object types live in seperate # files, and the file name mentioned here is a basename for all these # seperate files. The real files will have the two letter for the object # they contain attached to them. A mix and match of SPLIT and non # split databases works fine. X DBFILE ${ORGTAG_UC} ${TOPDIR}/data/${ORGTAG}.db SPLIT DBFILE RADB ${TOPDIR}/data/radb.db X # RIPE uses- #DBFILE ${ORGTAG_UC} ${TOPDIR}/data/${ORGTAG}/${ORGTAG}.db SPLIT #DBFILE MERIT ${TOPDIR}/data/nsf/nsf.db #DBFILE NIC ${TOPDIR}/data/nsf/nic.db #DBFILE INTERNIC ${TOPDIR}/data/internic/internic.db #DBFILE NCC-AS-LIST ${TOPDIR}/data/asn/asn.db #DBFILE ALTERNET ${TOPDIR}/data/alter/alter.db X ############################################################################# # # Some systems have a different path for sendmail. # Also note the sendmail.cf trusted user warning below. # ############################################################################# X # MAILCMD is the command into which a composed e-mail is given as standard # input, to be send as mail. The message piped into this command has ALL # the necessary mail header to process the mail: # From: # To: # Subject: # The mail command should take the recipients from the actual message. # Using sendmail it will be executed as: /usr/lib/sendmail -t < "messagefile" # (default: /usr/lib/sendmail -t) # # NOTE: # -f${ORGTAG}-dbm makes ${ORGTAG}-dbm the trusted user that will appear # on the envelope. Bounces will go to this address. If you do not specify # this, sendmail will send bounces straight back to the automatic # mailbox, where it will bounce again, and again, .... # User has to be a trusted user, T<name> in sendmail.cf. X MAILCMD /usr/lib/sendmail -f${ORGTAG}-dbm -t X ############################################################################# # # This section is the mail reply boilerplate. It should not need changes. # ############################################################################# X # DEFMAIL is the mailbox used when no mail notifications or acknowledgements # both as to and from address in various places. # IT MUST NOT BE THE AUTOMATIC MAILBOX!!!! X DEFMAIL ${ORGTAG}-dbm@${MAILDOM} X # HUMAILBOX is a human looked at mailbox, used for forwarding # special objects. IT MUST NOT BE THE AUTOMATIC MAILBOX!!!! # It can be used in mail messges as explained in MAILTXT below. X HUMAILBOX ${ORGTAG}-dbm@${MAILDOM} X # What to display if no match was found X NOMATCH No entries found for the selected source(s). NOMATCH NOMATCH If you would like to search on arbitrary strings, NOMATCH please use the WAIS server on wais.${MAILDOM} or NOMATCH telnet to info.${MAILDOM} for a WAIS client interface. NOMATCH The WAIS database name is ${ORGTAG}-database. NOMATCH This will only work for ${ORGTAG_UC} data. X # What to display if we got TOOMANY hits back X TOOMANY The index search returned too many hits. TOOMANY Please refine your search key. X # The MAILTXT is the text that comes right after the headers in an email ack # send by "dbupdate" when processing an email update (-M flag). # In this text you can use 4 variables that will be expanded to the real # values in the ack: # # $FROM = "Reply-To:" or "From:" address in mail being processed # $SUBJECT = "Subject:" field ,, ,, # $MDATE = "Date:" field ,, ,, # $MSGID = "Msg-Id:" field ,, ,, X MAILTXT MAILTXT Your e-mail: MAILTXT MAILTXT > From: $FROM MAILTXT > Subject: $SUBJECT MAILTXT > Date: $MDATE MAILTXT > Msg-Id: $MSGID MAILTXT MAILTXT has been processed by the automatic update procedure MAILTXT at the ${ORGFULLNAME}. MAILTXT Diagnostic output follows: MAILTXT MAILTXT ------------------------------------------------------------------------ X # MHEADER The complete mailheader for the ack mail, you can include any # mail header field, EXCEPT for the "To:" field which is added inside the # ack sending program. Again you can use the 4 variables as specified in # MAILTXT X MHEADER From: ${ORGTAG_UC} Database Management <${ORGTAG}-dbm@${MAILDOM}> MHEADER Subject: Re: $SUBJECT MHEADER Reply-To: ${ORGTAG}-dbm@${MAILDOM} MHEADER Precedence: bulk X # ACKERR is the message that will be displayed when errors or warnings were # found in an update. X ACKERR ACKERR Objects that just generated a WARNING have been updated as shown. ACKERR ACKERR Objects that generated an *ERROR* have NOT been updated as requested. ACKERR Please re-submit corrected objects. X # ACKOK is message displayed when no error/warnings were found in an update X ACKOK ACKOK No error/warnings were found in your database update. Congratulations. X # Signature on the acknowledgement X ACKSIG ------------------------------------------------------------------------ ACKSIG ACKSIG Please use ACKSIG ACKSIG <auto-dbm@${MAILDOM}> instead of <${ORGTAG}-dbm@${MAILDOM}> and ACKSIG <auto-assign@${MAILDOM}> instead of <assign@${MAILDOM}> ACKSIG ACKSIG for fast turnaround times on all but guarded objects. ACKSIG ACKSIG If you have any question about an error or warning message, please ACKSIG contact <${ORGTAG}-dbm@${MAILDOM}>. ACKSIG ACKSIG Sincerely Yours, ACKSIG ACKSIG ${ORGTAG_UC} Database Maintenance Department (Automatic Section) X # NOTITXT Notification text used in notification messages. # Same variables as in MAILTXT can be used here. X NOTITXT Dear Colleague, NOTITXT NOTITXT This is to notify you that some objects in which you are mentioned as NOTITXT a notifier, guardian or maintainer of one of the guarded attributes NOTITXT in this object have been modified in the NEW ${ORGTAG_UC} database. NOTITXT The objects below are the NEW entries for these NOTITXT objects in the database. In case of DELETIONS, the deleted object is NOTITXT displayed. NOOPs will not be reported. NOTITXT NOTITXT The update causing these changes had the following mail headers: NOTITXT NOTITXT - From: $FROM NOTITXT - Subject: $SUBJECT NOTITXT - Date: $MDATE NOTITXT - Msg-Id: $MSGID NOTITXT NOTITXT ${ORGTAG_UC} Database Notification Department X # NHEADER The Header used for notification messages X NHEADER From: ${ORGTAG_UC} Database Notifications <${ORGTAG}-dbm@${MAILDOM}> NHEADER Subject: Notification of ${ORGTAG_UC} Database changes NHEADER Reply-To: ${ORGTAG}-dbm@${MAILDOM} X # FWHEADER The header for forwarding updates that failed because of # maintainer autorisation failures. X FWHEADER From: ${ORGTAG_UC} Database Maintainer Forwarding <${ORGTAG}-dbm@${MAILDOM}> FWHEADER Subject: Requested ${ORGTAG_UC} database object changes FWHEADER Reply-To: ${ORGTAG}-dbm@${MAILDOM} X # FWTEXT The text send out to maintainers to inform them that someone # tried to change objects for which they are maintainers, but failed # the authorisation X FWTEXT FWTEXT Dear Maintainer, FWTEXT FWTEXT This is to notify you that some objects in which you are mentioned as FWTEXT a maintainer were requested to be changed, but *failed* the proper FWTEXT authorisation for any of the mentioned maintainers. FWTEXT Please contact the sender of these changes about changes that need FWTEXT need to be made to the following objects. FWTEXT FWTEXT The mail message causing these failures had the following mail headers: FWTEXT FWTEXT - From: $FROM FWTEXT - Subject: $SUBJECT FWTEXT - Date: $MDATE FWTEXT - Msg-Id: $MSGID FWTEXT FWTEXT ${ORGTAG_UC} Database Maintainer Forwarding Department X # Maintainer objects are handles special and cannot be created auto # automatically. They are forwarded to $HUMAILBOX or whatever you # want to specify. The ERROR sent back to the sender, will contain # $HUMAILBOX as the mailbox it was sent to. This one can take variable # substitution like MAILTXT. X MTFWHEADER To: $HUMAILBOX MTFWHEADER From: ${ORGTAG_UC} Database Maintainer Creation <$HUMAILBOX> MTFWHEADER Subject: Maintainer Creation request MTFWHEADER Reply-To: $HUMAILBOX X # And this is the text of the message that will be sent in the above case. X MTFWTEXT A maintainer object is requested by: MTFWTEXT MTFWTEXT - From: $FROM MTFWTEXT - Subject: $SUBJECT MTFWTEXT - Date: $MDATE MTFWTEXT - Msg-Id: $MSGID MTFWTEXT MTFWTEXT Please process the object below. MTFWTEXT X # COPYRIGHT message that goes on top of every newly generated, or cleaned # database, will be output with "#" before each line. X RIGHTS Copyright (c)1992/1993/1994 by Daniel Karrenberg and the RARE Association RIGHTS RIGHTS Restricted rights. RIGHTS RIGHTS Except for agreed Internet operational purposes, no part of this RIGHTS publication may be reproduced, stored in a retrieval system, or RIGHTS transmitted, in any form or by any means, electronic, mechanical, RIGHTS recording, or otherwise, without prior permission of RIGHTS ${ORGFULLNAME} on behalf of the copyright holders. RIGHTS RIGHTS Any use of this material to target advertising or similar RIGHTS activities are explicitly forbidden and will be prosecuted. RIGHTS ${ORGFULLNAME} requests to be notified RIGHTS of any such activities or suspicions thereof. RIGHTS RIGHTS ${ORGFULLNAME} would like to acknowledge and RIGHTS thank RIPE and RARE Association, and in particular Daniel RIGHTS Karrenberg and Tony Bates, for their pioneering work making the RIGHTS International Routing Registry possible, and for providing much RIGHTS of the software that drives this registry. X ############################################################################# # # In theory, you shouldn't have to edit anything below this line # ############################################################################# X # What sources can be updated ? Others will generate an error. # Remove this if you run a secondary copy only X CANUPD ${ORGTAG_UC} X # Run database sw in test mode? Testmode will cause ALL mail acks and other # mail messages to be send to DEFMAIL defined further below. X TESTMODE 0 X # file to keep people that can make entries using the update daemon # not in distribution yet. In fact, it has not even been written ;-) # It is a good idea though. X # AUTHFILE ${TOPDIR}/conf.auth X # help file for "whois help" X HELP ${TOPDIR}/etc/db-help X # whoisd query log file X QRYLOG ${TOPDIR}/etc/qrylog X # Error log file (if something really goes wrong ...) X ERRLOG ${TOPDIR}/etc/errlog X # this is where an audit trail for deletes and other important # database actions goes. Only one liners are syslogged. Maintainer # should take care of rotating logs and the like. X AUDITLOG ${TOPDIR}/etc/auditlog X # authorization log (not yet used) AUTHLOG ${TOPDIR}/etc/authlog X # this is where all update requests will be logged, this SHOULD be a # directory, logged will be in file YYMMDD with EOF markers between # messages X UPDLOG ${TOPDIR}/etc/updlog X # this is where all acknowledgements will be logged, this SHOULD be a # directory, logged will be in file YYMMDD with EOF markers between # messages X ACKLOG ${TOPDIR}/etc/acklog X # This is where the whoisd pid goes once started # (default: /tmp/whoisd.pid) X PIDFILE ${TOPDIR}/etc/whoisd.pid X # This is the lock file basename for cleandb, to avoid rename/open race # condition. The database name is appended to this basename, to create # sperate lock files for all databases. # (default: /tmp/CLEANDB.LOCK) X CLEANLOCK ${TOPDIR}/CLEANDB.LOCK X # TMPDIR is the tmp directory where various tools keep tmp files. # Make sure you have enough disk space, the tools do not understand # "disk full" messages and will do unexpected things. # (default: /tmp) X TMPDIR ${TOPDIR}/tmp X # The list of valid attribute names themselves in short and long version # ATTR ac admin-c ATTR aa as-name ATTR ad address ATTR ae as-exclude ATTR ai as-in ATTR al as-list ATTR an aut-num ATTR am as-macro ATTR ao as-out ATTR as aut-sys ATTR at auth ATTR au authority ATTR bg bdry-gw ATTR bi bis ATTR bl bdrygw-l ATTR ch changed ATTR cl comm-list ATTR cm community ATTR co connect ATTR cy country ATTR da dom-name ATTR de descr ATTR df default ATTR di dom-net ATTR dm dom-in ATTR dn domain ATTR do dom-out ATTR dp dom-prefix ATTR dt upd-to ATTR em e-mail ATTR fx fax-no ATTR gd guardian ATTR gw gateway ATTR ho hole ATTR if ifaddr ATTR ii ias-int ATTR in inetnum ATTR ir inet-rtr ATTR it interas-in ATTR io interas-out ATTR la localas ATTR lo location ATTR ma maintainer ATTR mb mnt-by ATTR mt mntner ATTR mn mnt-nfy ATTR na netname ATTR nh nic-hdl ATTR ni nsf-in ATTR no nsf-out ATTR ns nserver ATTR ny notify ATTR op op-phone ATTR of op-fax ATTR om op-mail ATTR or origin ATTR pe peer ATTR ph phone ATTR pn person ATTR rl routpr-l ATTR rm remarks ATTR rp rout-pr ATTR rt route ATTR rz rev-srv ATTR sd sub-dom ATTR so source ATTR tc tech-c ATTR wd withdrawn ATTR zc zone-c X # TEMPORARY FOR MERIT, WILL DISSAPEAR IN APRIL 1995 ATTR lr local-route X # Attributes with u* short names are special! # They all have hardcoded side effects, so do NOT change them # unless you know what you are doing X ATTR ua authorise # very special ATTR ud delete # delete operation ATTR ue *ERROR* # error attribute ATTR uo override # very special as well ATTR uw WARNING # warning attribute # X # attribute aliases (because they appear so often!) # ATTA ch change ATTA fx fax ATTA rm remark ATTA ua authorised ATTA ud deleted ATTA aa asname X # object alias for template mode # ALIAS in network ALIAS in netnum X # The database objects in terms of their attributes # # ATSQ - all defined attributes in this object, also defines print order # MAND - these attributes are mandatory # OPT - these attributes are optional # MULT - these attributes can appear more than once per object # SORT - sort order, single digit, lowest sorted first # UNIQ - these attributes define the unique key # KEYS - these attributes define all possible keys # REC - these attributes must be looked up if referenced # OBS - these attributes are obsoleted. When send in an update # dbupdate will remove them and generate a warning. # specially done for transitioning # X # First, let's determine what objects are guarded, these can not be # updated automatically, and will generate an error message. They # need special magic to be included. And no, I'm not gonna tell what # the magic is. X GRDOBJ am an cm rt # GRDOBJ am an cm rt mt X # autonomous systems # OBJ an ATSQ an aa de ai ao it io ae df gd ac tc OBJ an ATSQ rm ny mb ch so OBJ an MAND an de ac tc ch so OBJ an OPT aa ai ao it io ae df gd rm ny ma mb OBJ an MULT de ai ao it io ae df ac tc rm ch ny mb OBJ an SORT 0 OBJ an UNIQ an OBJ an KEYS an OBJ an REC ac tc X X # as macros # OBJ am ATSQ am de al gd tc ac rm ny mb ch so OBJ am MAND am de al gd tc ac mb ch so OBJ am OPT rm ny OBJ am MULT de al tc ac rm ch ny mb OBJ am SORT 8 OBJ am UNIQ am OBJ am KEYS am OBJ am REC tc ac X # boundary gateways - obsoleted 940906 # # OBJ bg ATSQ bg de lo au gd ac tc rm ny ma ch so # OBJ bg MAND ac au bg ch de gd lo so tc # OBJ bg OPT ny ma rm # OBJ bg MULT ac de lo tc ch ny # OBJ bg SORT 1 # OBJ bg UNIQ bg # OBJ bg KEYS bg # OBJ bg REC ac tc X # community # OBJ cm ATSQ cm de au gd tc ac rm ny ma mb ch so OBJ cm MAND cm de au gd tc ac mb ch so OBJ cm OPT ny ma rm OBJ cm MULT de tc ac rm ch ny mb OBJ cm SORT 6 OBJ cm UNIQ cm OBJ cm KEYS cm OBJ cm REC ac tc OBJ cm OBS ma X # domains # OBJ dn ATSQ dn de ac tc zc ns sd di rm ny ma mb ch so OBJ dn MAND ac ch de dn so tc zc OBJ dn OPT di ns rm sd ny ma mb OBJ dn MULT ac ch de di ns rm sd tc zc ny mb OBJ dn SORT 4 OBJ dn UNIQ dn OBJ dn KEYS dn OBJ dn REC ac tc zc OBJ dn OBS ma X # networks # OBJ in ATSQ in na de cy ac tc co as cl ii ni no gw rz OBJ in ATSQ rm ny ma mb ch so OBJ in MAND ac ch cy de in na so tc OBJ in OPT as bl cl co ch gw ii ni no rl rm rz ny ma mb OBJ in MULT ac ch de ii rm rz tc ny mb OBJ in SORT 5 OBJ in UNIQ in OBJ in KEYS in na OBJ in REC ac tc # OBJ in GRD as cl OBJ in OBS bl rl ma X # Do not use the guarded stuff any more. It works like the previous versions # but will be obsoleted shortly. X # GUARD cl ${TOPDIR}/guarded/community MULTIPLE # GUARD as ${TOPDIR}/guarded/as SINGLE X # routing privilege /boundary gateway obsoleted 940906 mt # Left in here to make sure they are all gone. Point to empty directory. X # GUARD rl ${TOPDIR}/guarded/removed MULTIPLE # GUARD bl ${TOPDIR}/guarded/removed MULTIPLE X # persons # OBJ pn ATSQ pn ad ph fx em nh rm ny ma mb ch so OBJ pn MAND ad ch ph pn so OBJ pn OPT em fx nh rm ny ma mb OBJ pn MULT ad ch em fx ph rm ny mb OBJ pn SORT 3 OBJ pn UNIQ pn nh OBJ pn KEYS pn nh OBJ in OBS ma X # routing privileges - obsoleted 940906 mt # # OBJ rp ATSQ rp de au gd ac tc rm ny ma ch so # OBJ rp MAND ac au ch de gd rp so # OBJ rp OPT tc ny ma # OBJ rp MULT ac de tc ch ny # OBJ rp SORT 2 # OBJ rp UNIQ rp # OBJ rp KEYS rp # OBJ rp REC ac tc X # clns object # OBJ dp ATSQ dp da de bi dm do df ac tc gd rm ny ma mb ch so OBJ dp MAND dp da ac tc ch so OBJ dp OPT bi de dm do df gd ny ma rm mb OBJ dp MULT de bi dm do df ac tc ch ny rm mb OBJ dp SORT 7 OBJ dp UNIQ dp OBJ dp KEYS dp da OBJ dp REC ac tc OBJ dp OBS ma X # inet-rtr # OBJ ir ATSQ ir la if pe ac tc rm ny mb ch so OBJ ir MAND ir la if tc ac ch so OBJ ir OPT pe ny mb rm OBJ ir MULT if pe tc ac rm ny ch mb OBJ ir SORT 9 OBJ ir UNIQ ir OBJ ir KEYS ir if OBJ ir REC tc ac X # maintainer # OBJ mt ATSQ mt de ac tc dt mn at rm ny mb ch so OBJ mt MAND mt de ac dt at ch so OBJ mt OPT tc mn rm ny mb OBJ mt MULT de ac tc dt mn at rm ny mb ch OBJ mt SORT 10 OBJ mt UNIQ mt OBJ mt KEYS mt OBJ mt REC ac tc X # route - ONLY PRDB SUPPORTS THESE CURRENTLY # OBJ rt ATSQ rt de or ho wd cl lr rm ny mb ch so OBJ rt MAND rt de or ch so OBJ rt OPT ho wd cl rm ny mb la OBJ rt MULT de ho cl rm ny ch mb OBJ rt SORT 11 OBJ rt UNIQ rt or OBJ rt KEYS rt X # the list of valid country names RIPE database specific, used # for syntax checking. May move into different config at later stage. X COUNTRY AE ae COUNTRY AL al COUNTRY AM am COUNTRY AT at COUNTRY AZ az COUNTRY BE be COUNTRY BF bf COUNTRY BG bg COUNTRY BH bh COUNTRY BY by COUNTRY CH ch COUNTRY CM cm COUNTRY CS cs COUNTRY CZ cz COUNTRY CY cy COUNTRY DE de COUNTRY DK dk COUNTRY DZ dz COUNTRY EE ee COUNTRY EG eg COUNTRY ES es COUNTRY FI fi COUNTRY FR fr COUNTRY GB gb COUNTRY GR gr COUNTRY HR hr COUNTRY HU hu COUNTRY IE ie COUNTRY IL il COUNTRY IN in COUNTRY IR ir COUNTRY IS is COUNTRY IT it COUNTRY KE ke COUNTRY KG kg COUNTRY KW kw COUNTRY KZ kz COUNTRY LA la COUNTRY LB lb COUNTRY LI li COUNTRY LU lu COUNTRY LV lv COUNTRY LT lt COUNTRY MA ma COUNTRY MC mc COUNTRY MK mk COUNTRY MT mt COUNTRY NC nc COUNTRY NE ne COUNTRY NL nl COUNTRY NO no COUNTRY OM om COUNTRY PF pf COUNTRY PL pl COUNTRY PT pt COUNTRY RO ro COUNTRY RU ru COUNTRY SA sa COUNTRY SE se COUNTRY SG sg COUNTRY SI si COUNTRY SK sk COUNTRY SN sn COUNTRY SU su COUNTRY TN tn COUNTRY TR tr COUNTRY UA ua COUNTRY US us COUNTRY UZ uz COUNTRY YU yu COUNTRY ZA za X # And some funny translations for the yobbos X COUNTRY GB UK COUNTRY GB uk X # legal connect attribute values in alphabetic order # also RIPE database specific used for syntax checking, may move to # different config file later .... # # In fact they are obsoleted. # CONNECT ACONET CONNECT ALT CONNECT CIX CONNECT CNR CONNECT DATANET CONNECT EASI CONNECT EBONE CONNECT EMPB CONNECT EU CONNECT EU-FI CONNECT FICIX CONNECT FUNET CONNECT GARR CONNECT HEPNET CONNECT ICS CONNECT INFN CONNECT IRIS CONNECT IUNET CONNECT JANET CONNECT LANLINK CONNECT LOCAL CONNECT NETTUNO CONNECT NIKHEF CONNECT NLNET CONNECT NORDU CONNECT NSF CONNECT PIPEX CONNECT POWERWAN CONNECT RCCN CONNECT REDIRIS CONNECT RENATER CONNECT RIPE CONNECT SARA CONNECT SURF CONNECT SWIP CONNECT SWITCH CONNECT TIP CONNECT WCW CONNECT WIN CONNECT XLINK X ENDCONF # do not remove! SHAR_EOF $shar_touch -am 0504153895 'config.generic' && chmod 0640 'config.generic' || echo 'restore of config.generic failed' shar_count="`wc -c < 'config.generic'`" test 21067 -eq "$shar_count" || echo "config.generic: original size 21067, current size $shar_count" fi exit 0 -------- Logged at Fri May 5 16:05:24 MET DST 1995 ---------
[ rr-impl Archive ]