📄 readme
字号:
## $Id: README,v 1.7 1999/01/22 16:23:13 chopps Exp $## ------------------------------------------------------------------------# # Copyright (c) 1996, 1997 The Regents of the University of Michigan# All Rights Reserved# # Royalty-free licenses to redistribute GateD Release# 3 in whole or in part may be obtained by writing to:# # Merit GateDaemon Project# 4251 Plymouth Road, Suite C# Ann Arbor, MI 48105# # THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER# EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE REGENTS OF THE# UNIVERSITY OF MICHIGAN AND MERIT DO NOT WARRANT THAT THE# FUNCTIONS CONTAINED IN THE SOFTWARE WILL MEET LICENSEE'S REQUIREMENTS OR# THAT OPERATION WILL BE UNINTERRUPTED OR ERROR FREE. The Regents of the# University of Michigan and Merit shall not be liable for# any special, indirect, incidental or consequential damages with respect# to any claim by Licensee or any third party arising from use of the# software. GateDaemon was originated and developed through release 3.0# by Cornell University and its collaborators.# # Please forward bug fixes, enhancements and questions to the# gated mailing list: gated-people@gated.merit.edu.# # ------------------------------------------------------------------------# # Copyright (c) 1990,1991,1992,1993,1994,1995 by Cornell University.# All rights reserved.# # THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT# LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY# AND FITNESS FOR A PARTICULAR PURPOSE.# # GateD is based on Kirton's EGP, UC Berkeley's routing# daemon (routed), and DCN's HELLO routing Protocol.# Development of GateD has been supported in part by the# National Science Foundation.# # ------------------------------------------------------------------------# # Portions of this software may fall under the following# copyrights:# # Copyright (c) 1988 Regents of the University of California.# All rights reserved.# # Redistribution and use in source and binary forms are# permitted provided that the above copyright notice and# this paragraph are duplicated in all such forms and that# any documentation, advertising materials, and other# materials related to such distribution and use# acknowledge that the software was developed by the# University of California, Berkeley. The name of the# University may not be used to endorse or promote# products derived from this software without specific# prior written permission. THIS SOFTWARE IS PROVIDED# ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES,# INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.# Configuring gated for compilationA configuration file is needed so gated can be configured to compileon your system. This configuration file consists of one or more linesthat start with keywords. All keywords are in lower case. Blanklines and lines starting with a pound sign (`#') are ignored.The default for all of the following options are listed inparentheses.Paths for installation: bindir (/etc) Where to install the support executables. Depends on system, for BSD 4.3 Reno this should probably be `/usr/bin'. Some people like to use `/usr/local/bin'. sbindir (/etc) Where to install the gated executables. Depends on the system, for BSD 4.3 Reno and later this should probably be `sbin' or `/usr/sbin'. Some people like to use `/usr/local/sbin'. destdir () Prefix used for installing in bindir, normally empty. objdir (obj) Directory where gated should put it's object files. If you only compile for one architecture, use `obj'. If you compile for many, use `obj.' suffixed with the output of util/archtype. Note that the Makefile in the source directory looks for the the latter and then tries the former. If your machine does not supply a program to determine the archtype, archtype uses the first level of the hostname. If you compile on several machines, use symbolic links to point their obj directories to the same place. signal_h (/usr/include/signal.h) Where to find the definition on signals. Some systems use `/usr/include/sys/signal.h'. This is only required when NEED_SIGNAME is defined. template (Makefile.template) Makefile template used to build makefiles. In relation to utildir compatdir (compat) Where the source files for the compaitiblility routes reside in relation to srcdir. srcdir (..) Where the src files reside in relation to objdir. For BSD 4.3 Reno systems using a /usr/obj heirchy, this should be the rooted path name to srcdir. smandir (../man) Where the sources of the man files reside in relation to the source directory. mandir (/usr/man) Root of tree where man pages will be installed. See also `mantype'. mibdir (mib) Directory in relation to srcdir where the MIB defintions files (input to mosy) are located. utildir (util) Where the configuration scripts and other files reside, in relation to srcdir. Gated programs:These specify the compiled and installed names of gated an it's supportprograms. gated (gated) gdc (gdc) ripquery (ripquery) ospf_monitor (ospf_monitor) Programs: Programs used by Make. These should not need to be changed unless theprograms are not in your path, or the versions in your path arenon-standard and do not work with this software. awk (awk) cat (cat) chgrp (chgrp) chmod (chmod) chown (chown) date (date) make (make) mv (mv) rm (rm) sed (sed) size (size) tee (tee) touch (touch)Compiler, linker, ...: cc (cc) Which compiler to use. On an RT where HighC is the default, use `hc -U__STDC__'. If you have gcc you may want to use that. cflags (-O) Compiler flags. You may want to use `-g' when you are debugging. With gcc you can specify both at the same time. head (head -25) Command to use to see the first few lines of all c and h files to look for $Header: when buliding version.c. If you don't have head try `sed 25q'. If that does not work use cat, it will work but will be alot slower. install (install) Program to install the executables into the correct system directories. If there is no `install' program on your system, can try `@(SRCDIR)/@(UTILDIR)/install' installflags (-c -s) Flags to specify to install program when installing the executables on your system. ldflags () Loader flags. `-lresolv' may be handy if you want to use the nameserver and don't have the resolver routines in libc. Under SunOS 4.0 and later, BSD 4.4 and BSDI you will need `-lkvm'. For BSD 4.3 Reno you will need `-lutil'. For AIX 3.1 on an RS/6000 you will need `-lm -lbsd'. NOTE: In SunOS 4.1.1 there is a bug in the dynamically linked libkvm. If you are using Sun's cc, or gcc 2.0 or greater, you will need to specify `-Bstatic -lkvm' (`-static -lkvm' for gcc 2.0) as a workaround. For A/UX 2.01 you will need `-lm -lbsd'. ldothers () Additional loader flags that should be included after the gated "compatibility" library. For IRIX 4.0 you will need `-lmld'. lex (lex) Lexical analyzer generator to use. Lex is OK, Flex is better. lflags (-v) Flags to lex. For flex 2.1 use `-p -s -c -I'. For flex 2.4.6 use `-p -s -c'. For BSD 4.3 Reno use `-p -s -C -I'. If you leave off the `-I' with flex 2.1, the %include directive will not work properly. If you have a large configuration file to parse and flex is a bottleneck, use flex 2.4.6 (or later) and `-p -Cfe'. This will generate a larger parser, but faster lexical analyzer. link (ln -s) Program to use to create links. If your system does not support symbolic links, just use `ln'. lint (lint) Program to error check the code. lintflags (-hxz) Flags for lint. mantype (bsd42) The method used to install man pages. Choose the most appropriate method from the following list: bsd42 ${MANDIR}/man<n>/<file> bsd44 ${MANDIR}/cat<n>/thing.0 ros ${MANDIR}/man<n>/<file> -- using install sys5 ${MANDIR}/<a|p|u>_man/man<n>/<file> aix ${MANDIR}/<a|p|u>_man/man<n>/<file> local ${MANDIR}/manl/<base>.l l ${MANDIR}/man<n>/<base>.<n>l hpux hpux mkdep (mkdep) The script use to build dependencies, relative to `utildir' specified above. If your system has one, you can use that. If not, use `mkdep'. If you have gcc you can use `mkdep -flag -MM' which only generates dependencies based on the gated include files; it leaves out the system include files. On Ultrix systems, use `mkdep -flag -Em'. On systems where the compiler does not support building dependency lists, or does not produce them properly, use `mkdep.canned'. On SunOS 4 and later systems, you can use `mkdep.keepstate' which adds a `.KEEP_STATE:' rule to the makefile causing make to automatically build and maintain dependencies. sed_limit (50) The maximum number of substitution commands per sed invocation. Some systems (SCO?) require this to be set lower. tags (etags) The program used to generate the TAGS file. The TAGS file is used by some editors to quickly locate the definition of a function and/or pre-processor define. The default ``etags'' is for emacs. tflags () The flags for the program that generates the TAGS file. This default is correct for the ``etags'' program provided with emacs 19. yacc (yacc) Parser generater. A current release of bison is recommended. Some versions of yacc will not return error indications when parsing is complete. Depending on the protocols configured, the parser may be too big for yacc to proces. yflags (-d) Flags for the parser generator. If you use bison `-d -y -v' is recommended. ranlib (ranlib) Command to update the symbol table in a library. Should be `ranlib' on BSD. Since AIX/PS2 and IRIX 4.0 do not have ranlib, use `:'.Configuration for ospf_monitor: Ospf_monitor is a program that allows the monitoring of some of the OSPF state of gated. It does not allow any modification of gated state although responding to a query uses gated resources. ospfm_mode (4755) ospfm_user (root) The mode and userid with which to install ospf_monitor. For normal users to make use of this program it must be setuid to root. It only runs as root long enough to obtain the OSPF socket it uses to send queries.Configuration for gdc: Gdc is a program that allows a selected group of non-root userids to control gated. config_mode (0664) The file mode of the gated configuration file. gdc_mode (4750) The mode with which to install gdc. This mode will only be used if the group specified with gdc_group exists. If installed as a setuid program Gdc will only allow members of gdc_group to control gated. gdc_group (gdmaint) The group (from /etc/groups) for people allowed to start/stop and reconfigure gated. If you do not want to create a new group, the use of group wheel may be appropriate. gdc_user (root) The user (from /etc/passwd) that Gated must be started as. GDC_RESOURCE Compile in gdc support for setting system resource limits before starting gated. Defining any of the following four limits will automatically define this option. GDC_CORESIZE Sets the maximum size of a core dump a gated started with gdc will produce. Useful on systems where the default maximum core dump size is too small for gated to produce a full core dump on errors. To set this limit as high as possible, use RLIM_INFINITY (or see the man page for setrlimit()). GDC_FILESIZE Sets the maximum file size a gated started with gdc will produce. Useful on systems where the default maximum file dump size is too small for gated to produce a full state dump when requested. To set this limit as high as possible, use RLIM_INFINITY (or see the man page for setrlimit()). GDC_DATASIZE Sets the maximum size of the data segment of a gated started with gdc. Useful on systems where the default data segment size is too small for gated to run. To set this limit as high as possible, use RLIM_INFINITY (or see the man page for setrlimit()). GDC_STACKSIZE Sets the maximum size of stack of a gated started with gdc. Useful on systems where the default maximum stack size is too small for gated to run. To set this limit as high as possible, use RLIM_INFINITY (or see the man page for setrlimit()). GDC_TZ_HACK Some systems require that the TZ environment variable be passed down to retain knowledge of the local timezone. While this model is broken (it does not allow for starting system daemons from processes with a different timezone), it is necessary for gdc to pass the value of the TZ variable to gated at startup or gated will report times in GMT. Paths for runtime: Where a %s appears it is replaced by the name under which gated was started. path_config (/etc/%s.conf) Where to find the configuration file. path_dump (/usr/tmp/%s_dump) Where to put a gated state dump. Some newer systems prefer `/var/tmp/%s_dump'. path_dumpdir (/usr/tmp) Where to leave a gated core dump if possible. Some systems prefer `/var/tmp'. path_pid (/etc/%s.pid) Where to write the pid of the currenly running gated. On BSD 4.3 Reno this should be `/var/run/%s.pid'. path_version (/etc/%s.version) Where to write version information for the currently running gated. On BSD 4.3 Reno this should be `/var/run/%s.version'. path_unix (/vmunix) Where to find the kernel symbol table for nlist() if it is not /vmunix and the system does not define _PATH_UNIX. For AIX this is usually `/unix', for HP systems `/hp-ux'.Compile time options: options () Compile-time options. These result in #define keywords in the code. They may be a single keyword, or a keyword followed by an equals `=' and a value to be assigned. If the value contains spaces, surround it with double quotes `"'. If the value requires double quotes (i.e. a string) surround it with duplicate double quotes (i.e. KEYWORD=""string value""). LOG_FACILITY (LOG_DAEMON) The log facility used by default is LOG_DAEMON. If you wish to change this to some other facility, such as LOG_LOCALx, do so here. LOG_OPTIONS (LOG_PID | LOG_CONS | LOG_NDELAY) Options to specify for syslog. Early versions of SunOS 5 have problems with LOG_CONS. RT_N_MULTIPATH Define the number of multipath destinations that should be maintained in the gated routing table. Note that no Unix system supports more than one so the kernel interface routines will not compile if this number is greater than one. The only protocol that will currently allow more than one is OSPF, although the ipForward MIB can report multiple destinations. INET_CLASS_E Include support for the experimental class E networks. MIB_GATED Include support for the gated specific MIB. This is not yet implemented. HPUX7_X For HPUX 7.* systems. SUNOS5_0 For SunOS v5.0* (Solaris 2.0) SYSV For System V systems prior to SYSV4, including A/UX 2.01. SYSVR4 For System V Release 4 systems. Kernel routing table interface specifications: KRT_RTREAD_KMEM For systems with BSD 4.3 hash based routing tables that are read directly from kernel memory. KRT_RTREAD_KINFO For systems based on BSD 4.3 Reno and later which read the routing table from the kernel via a getkerninfo() system call. KRT_RTREAD_PROC For systems that read the routing table via the proc filesystem. KRT_RTREAD_SUNOS5 For systems based on SunOS 5 which read the routing table from the kernel via the MIB interface.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -