home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC-Online 1996 May
/
PCOnline_05_1996.bin
/
linux
/
source
/
n
/
inn
/
inn1.4
/
inn1.4.diff
Wrap
Text File
|
1995-01-14
|
36KB
|
1,052 lines
--- Makefile.Linux
+++ Makefile.Linux 1994/05/21 21:57:57
@@ -0,0 +1,9 @@
+config/config.data: config.config.dist
+ cp config/config.dist config/data
+
+compile: config/config.data
+ make all
+
+install: compile
+ make install
+
--- README.linux
+++ README.linux 1994/05/21 21:57:57
@@ -0,0 +1,60 @@
+I am using /bin/bash as my shell. Be carefull, if you use tcsh.
+
+Installing your own news feed:
+==============================
+
+- fetch the INN FAQ, inn-1.4sec.tar.gz, inn-1.4sec.dif, nov.tar.gz,
+ nov.dif
+
+Preparing the system:
+- remove any nntp entries in your /etc/inetd.conf
+- create a new group "news"
+- create a new user named "news" and home directory "/usr/lib/news"
+ group-id is "news"
+- maybe add a mail alias to /etc/aliases, if you want to have someone
+ else than "news" get all mail about your news system
+ (run newaliases after it)
+
+Compile and install inn-1.4sec and nov:
+- as any user do the following:
+- untar the sources: "tar xzf inn-1.4sec.tar.gz"
+ "tar xzf nov.tar.gz"
+- patch the sources: "cd nov; patch -s -p0 < ../nov.dif; cd .."
+ "cd inn-1.4sec; patch -s -p0 < ../inn-1.4sec.dif"
+- cd inn-1.4sec; make Install.ms
+- nroff -ms Install.ms | less
+- cp config/config.dist config/config.data
+- vi config/config.data (should be ok for you, look at sendmail entry)
+- make all 2>&1 | less (should be no errors)
+- cd ../nov
+- make
+- su root
+- (cd nov;) make install
+- cd ../inn-1.4sec; make install 2>&1 | less
+- maybe symlink /usr/bin/inews to /usr/lib/news/inews
+- maybe symlink /usr/bin/rnews to /usr/lib/news/rnews
+
+Configuring your own system:
+- do all administration as user "news"
+- copy /usr/lib/news/active from your news provider (see also getlist(1)),
+ or create your own active file
+- if you like, copy /usr/lib/news/newsgroups from your news provider
+- execute "makehistory -o"
+- edit the following files: innd.conf, control.ctl, expire.ctl, hosts.nntp,
+ newsfeeds, nnrp.access, overview.fmt
+- To test your news system, execute as root "/usr/lib/news/etc/rc.news".
+ If everything works ok, you can start that script from one of the /etc/rc*
+ files at boot time.
+
+- Here is a sample crontab for the user "news":
+ # news crontab
+ #
+ # min hour day month dayofweek (1=Mo,7=Su) command
+ SHELL=/bin/sh
+ PATH=/bin:/usr/bin:/usr/local/bin:/usr/lib/news/bin
+
+ 10 23 * * * /usr/lib/news/rnews -U
+ 15 23 * * * /usr/lib/news/bin/news.daily expireover delayrm
+
+- /usr/lib/news/send-uucp uucphost
+
--- config/config.dist
+++ config/config.dist 1994/05/21 22:05:48
@@ -21,19 +21,19 @@
CC cc
## Does your compiler properly do "char const *"? Pick DO DONT or DUNNO
#### =()<USE_CHAR_CONST @<USE_CHAR_CONST>@>()=
-USE_CHAR_CONST DUNNO
+USE_CHAR_CONST DO
## C compiler flags
#### =()<CFLAGS @<CFLAGS>@>()=
-CFLAGS $(DEFS) -g
+CFLAGS $(DEFS) -O2 -fomit-frame-pointer
## C compiler flags to use when compiling dbz
#### =()<DBZCFLAGS @<DBZCFLAGS>@>()=
DBZCFLAGS $(CFLAGS)
## What flags to use if profiling; -p or -pg, e.g.
#### =()<PROF @<PROF>@>()=
-PROF -pg
+PROF -p
## Flags for the "cc -o" line; e.g., -Bstatic on SunOS4.x while debugging.
#### =()<LDFLAGS @<LDFLAGS>@>()=
-LDFLAGS -g
+LDFLAGS -s -O2
## If you use the standard NNTP way of connecting, where is the library?
#### =()<NNTPLIB @<NNTPLIB>@>()=
NNTPLIB
@@ -42,10 +42,10 @@
LIBS
## How to make a lint library; pick BSD, SYSV, or NONE.
#### =()<LINTLIBSTYLE @<LINTLIBSTYLE>@>()=
-LINTLIBSTYLE BSD
+LINTLIBSTYLE NONE
## Flags for lint. AIX wants "-wkD"; it and others don't want "-z".
#### =()<LINTFLAGS @<LINTFLAGS>@>()=
-LINTFLAGS -b -h -z $(DEFS)
+LINTFLAGS
## Some lints insist on putting out the filename and other crap.
## Possible values:
## LINTFILTER | sed -n -f ../sedf.aix
@@ -54,19 +54,19 @@
## LINTFILTER | sed -n -f ../sedf.sysv
## LINTFILTER
#### =()<LINTFILTER @<LINTFILTER>@>()=
-LINTFILTER | sed -n -f ../sedf.sun
+LINTFILTER
## How to install manpages; pick SOURCE, NROFF-PACK, NROFF-PACK-SCO, or NONE.
#### =()<MANPAGESTYLE @<MANPAGESTYLE>@>()=
MANPAGESTYLE SOURCE
## Where various manpages should go
#### =()<MAN1 @<MAN1>@>()=
-MAN1 /usr/local/man/man1
+MAN1 /usr/man/man1
#### =()<MAN3 @<MAN3>@>()=
-MAN3 /usr/local/man/man3
+MAN3 /usr/man/man3
#### =()<MAN5 @<MAN5>@>()=
-MAN5 /usr/local/man/man5
+MAN5 /usr/man/man5
#### =()<MAN8 @<MAN8>@>()=
-MAN8 /usr/local/man/man8
+MAN8 /usr/man/man8
## Ranlib command. Use echo if you don't need ranlib.
#### =()<RANLIB @<RANLIB>@>()=
RANLIB ranlib
@@ -97,13 +97,13 @@
L_ERROR LOG_ERR
## Informational notice, usually not worth caring about.
#### =()<L_NOTICE @<L_NOTICE>@>()=
-L_NOTICE LOG_WARNING
+L_NOTICE LOG_INFO
## A protocol trace.
#### =()<L_TRACE @<L_TRACE>@>()=
L_TRACE LOG_DEBUG
## All incoming control commands (ctlinnd, etc).
#### =()<L_CC_CMD @<L_CC_CMD>@>()=
-L_CC_CMD LOG_INFO
+L_CC_CMD LOG_WARNING
##
@@ -116,7 +116,7 @@
NEWSGROUP news
## Who gets email about control messages? (Usually same as NEWSUSER)
#### =()<NEWSMASTER @<NEWSMASTER>@>()=
-NEWSMASTER usenet
+NEWSMASTER news
## Who gets email on the Path line?
#### =()<PATHMASTER @<PATHMASTER>@>()=
PATHMASTER not-for-mail
@@ -139,7 +139,7 @@
## Use stdargs, varargs, or neither? Pick VARARGS STDARGS or NONE.
## You need vfprintf and vfsprintf if not NONE.
#### =()<VAR_STYLE @<VAR_STYLE>@>()=
-VAR_STYLE VARARGS
+VAR_STYLE STDARGS
## If you don't have <string.h>, set this to "mystring.h"
#### =()<STR_HEADER @<STR_HEADER>@>()=
STR_HEADER <string.h>
@@ -151,18 +151,18 @@
OFFSET_T long
## What is the type of an object size? Usually size_t or unsigned int.
#### =()<SIZE_T @<SIZE_T>@>()=
-SIZE_T int
+SIZE_T size_t
## What is the type of a passwd uid and gid, for use in chown(2)?
#### =()<UID_T @<UID_T>@>()=
-UID_T int
+UID_T uid_t
#### =()<GID_T @<GID_T>@>()=
-GID_T int
+GID_T gid_t
## Type of a pid, for use in kill(2).
#### =()<PID_T @<PID_T>@>()=
-PID_T int
+PID_T pid_t
## Generic pointer, used by memcpy, malloc, etc. Usually char or void.
#### =()<POINTER @<POINTER>@>()=
-POINTER char
+POINTER void
## Worst-case alignment, in order to shut lint up
#### =()<ALIGNPTR @<ALIGNPTR>@>()=
ALIGNPTR int
@@ -171,7 +171,7 @@
SIGHANDLER void
## Type of variables can be modified in a signal handler? sig_atomic_t
#### =()<SIGVAR @<SIGVAR>@>()=
-SIGVAR int
+SIGVAR sig_atomic_t
## Function that returns no value, and a pointer to it. Pick int or void
#### =()<FUNCTYPE @<FUNCTYPE>@>()=
FUNCTYPE void
@@ -184,7 +184,7 @@
LOCK_STYLE FLOCK
## Do you have <unistd.h>? Pick DO or DONT
#### =()<HAVE_UNISTD @<HAVE_UNISTD>@>()=
-HAVE_UNISTD DONT
+HAVE_UNISTD DO
## Do you have setbuffer? Pick DO or DONT.
#### =()<HAVE_SETBUFFER @<HAVE_SETBUFFER>@>()=
HAVE_SETBUFFER DO
@@ -196,47 +196,47 @@
HAVE_FCHMOD DO
## Do you have setsid()? Pick DO or DONT.
#### =()<HAVE_SETSID @<HAVE_SETSID>@>()=
-HAVE_SETSID DONT
+HAVE_SETSID DO
## Does your (struct tm) have a tm_gmtoff field? Pick DO or DONT.
#### =()<HAVE_TM_GMTOFF @<HAVE_TM_GMTOFF>@>()=
-HAVE_TM_GMTOFF DO
+HAVE_TM_GMTOFF DONT
## Does your (struct stat) have a st_blksize field? Pick DO or DONT.
#### =()<HAVE_ST_BLKSIZE @<HAVE_ST_BLKSIZE>@>()=
HAVE_ST_BLKSIZE DO
## Use waitpid instead of wait3? Pick DO or DONT.
#### =()<HAVE_WAITPID @<HAVE_WAITPID>@>()=
-HAVE_WAITPID DONT
+HAVE_WAITPID DO
## Use "union wait" instead of int? Pick DO or DONT.
#### =()<USE_UNION_WAIT @<USE_UNION_WAIT>@>()=
-USE_UNION_WAIT DO
+USE_UNION_WAIT DONT
## How to fork? Pick fork or vfork.
#### =()<FORK @<FORK>@>()=
-FORK vfork
+FORK fork
## Do you have <vfork.h>? Pick DO or DONT.
#### =()<HAVE_VFORK @<HAVE_VFORK>@>()=
-HAVE_VFORK DO
+HAVE_VFORK DONT
## Do you have symbolic links? Pick DO or DONT.
#### =()<HAVE_SYMLINK @<HAVE_SYMLINK>@>()=
HAVE_SYMLINK DO
## Do you have Unix-domain sockets? Pick DO or DONT.
#### =()<HAVE_UNIX_DOMAIN @<HAVE_UNIX_DOMAIN>@>()=
-HAVE_UNIX_DOMAIN DO
+HAVE_UNIX_DOMAIN DONT
## Does your AF_UNIX bind use sizeof for the socket size? Pick DO or DONT.
#### =()<BIND_USE_SIZEOF @<BIND_USE_SIZEOF>@>()=
-BIND_USE_SIZEOF DO
+BIND_USE_SIZEOF DONT
## How should close-on-exec be done? Pick IOCTL or FCNTL.
#### =()<CLX_STYLE @<CLX_STYLE>@>()=
-CLX_STYLE IOCTL
+CLX_STYLE FCNTL
## How should non-blocking I/O be done? Pick IOCTL or FCNTL.
#### =()<NBIO_STYLE @<NBIO_STYLE>@>()=
-NBIO_STYLE FCNTL
+NBIO_STYLE IOCTL
## How should resource-totalling be done? Pick RUSAGE or TIMES
#### =()<RES_STYLE @<RES_STYLE>@>()=
RES_STYLE RUSAGE
## How to get number of available descriptors?
## Pick GETDTAB, GETRLIMIT, SYSCONF, ULIMIT, or CONSTANT.
#### =()<FDCOUNT_STYLE @<FDCOUNT_STYLE>@>()=
-FDCOUNT_STYLE GETDTAB
+FDCOUNT_STYLE SYSCONF
## If greater than -1, then use [gs]etrlimit to set that many descriptors.
## If -1, then no [gs]etrlimit calls are done.
#### =()<NOFILE_LIMIT @<NOFILE_LIMIT>@>()=
@@ -246,37 +246,37 @@
NEED_TIME DONT
## What predicate, if any, the <ctype.h> macros need
#### =()<CTYPE @<CTYPE>@>()=
-CTYPE (isascii((c)) && isXXXXX((c)))
+CTYPE isXXXXX((c))
#CTYPE ((c) > 0 && isXXXXX((c)))
#CTYPE isXXXXX((c))
## What's the return type of abort? Usually int or void.
#### =()<ABORTVAL @<ABORTVAL>@>()=
-ABORTVAL int
+ABORTVAL void
## What's the return type of alarm? Usually int or unsigned int.
#### =()<ALARMVAL @<ALARMVAL>@>()=
-ALARMVAL int
+ALARMVAL unsigned int
## What's the return type of getpid? Usually int or unsigned int.
#### =()<GETPIDVAL @<GETPIDVAL>@>()=
-GETPIDVAL int
+GETPIDVAL pid_t
## What's the return type of sleep? Usually int or unsigned int.
#### =()<SLEEPVAL @<SLEEPVAL>@>()=
-SLEEPVAL int
+SLEEPVAL unsigned int
## What's the return type of qsort? Usually int or void.
#### =()<QSORTVAL @<QSORTVAL>@>()=
-QSORTVAL int
+QSORTVAL void
## What's the return type of lseek? Usually long or off_t.
#### =()<LSEEKVAL @<LSEEKVAL>@>()=
LSEEKVAL long
## What's the return type of free? Usually int or void.
#### =()<FREEVAL @<FREEVAL>@>()=
-FREEVAL int
+FREEVAL void
## What's the return type of exit? Usually int or void.
## (For gcc (not pedantic ANSI) use "volatile void" in EXITVAL and _EXITVAL.)
#### =()<EXITVAL @<EXITVAL>@>()=
-EXITVAL void
+EXITVAL volatile void
## What's the return type of _exit? Usually int or void.
#### =()<_EXITVAL @<_EXITVAL>@>()=
-_EXITVAL int
+_EXITVAL void
##
@@ -291,9 +291,9 @@
#### =()<MISSING_MAN @<MISSING_MAN>@>()=
MISSING_MAN
#### =()<MISSING_SRC @<MISSING_SRC>@>()=
-MISSING_SRC strerror.c
+MISSING_SRC
#### =()<MISSING_OBJ @<MISSING_OBJ>@>()=
-MISSING_OBJ strerror.o
+MISSING_OBJ
##
@@ -309,10 +309,10 @@
REM_STYLE INND
## Should rnews save articles that the server rejects? Pick DO or DONT.
#### =()<RNEWS_SAVE_BAD @<RNEWS_SAVE_BAD>@>()=
-RNEWS_SAVE_BAD DONT
+RNEWS_SAVE_BAD DO
## Should rnews log articles innd already has? Pick SYSLOG, FILE, OR DONT.
#### =()<RNEWS_LOG_DUPS @<RNEWS_LOG_DUPS>@>()=
-RNEWS_LOG_DUPS DONT
+RNEWS_LOG_DUPS FILE
## Look in _PATH_RNEWSPROGS for rnews unpackers? Pick DO or DONT.
#### =()<RNEWSPROGS @<RNEWSPROGS>@>()=
RNEWSPROGS DO
@@ -321,11 +321,11 @@
RNEWSLOCALCONNECT DO
## Environment variable that has remote hostname for rnews.
#### =()<_ENV_UUCPHOST @<_ENV_UUCPHOST>@>()=
-_ENV_UUCPHOST UU_MACHINE
+_ENV_UUCPHOST HOST
## Require posts to have under 50% inclusion (">") lines? Pick DO OR DONT.
## (This is only for inews and nnrpd.)
#### =()<CHECK_INCLUDED_TEXT @<CHECK_INCLUDED_TEXT>@>()=
-CHECK_INCLUDED_TEXT DO
+CHECK_INCLUDED_TEXT DONT
## Put hosts in the inews Path header? Pick DO or DONT.
#### =()<INEWS_PATH @<INEWS_PATH>@>()=
INEWS_PATH DO
@@ -346,7 +346,7 @@
INND_NICE_KIDS DONT
## Value for nice(2) call in innd.
#### =()<INND_NICE_VALUE @<INND_NICE_VALUE>@>()=
-INND_NICE_VALUE 10
+INND_NICE_VALUE 0
## Null-terminated list of unknown commands to not log to syslog.
## INND_QUIET_BADLIST "xstream", "xfoo", NULL
#### =()<INND_QUIET_BADLIST @<INND_QUIET_BADLIST>@>()=
@@ -359,13 +359,13 @@
VERIFY_CANCELS DONT
## Log "ctlinnd cancel" commands to syslog? Pick DO or DONT.
#### =()<LOG_CANCEL_COMMANDS @<LOG_CANCEL_COMMANDS>@>()=
-LOG_CANCEL_COMMANDS DONT
+LOG_CANCEL_COMMANDS DO
## File unknown "to.*" groups into the "to" newsgroup? Pick DO or DONT.
#### =()<MERGE_TO_GROUPS @<MERGE_TO_GROUPS>@>()=
MERGE_TO_GROUPS DONT
## File articles in unknown newsgroups into junk? Pick DO or DONT.
#### =()<WANT_TRASH @<WANT_TRASH>@>()=
-WANT_TRASH DONT
+WANT_TRASH DO
## Record rejected articles in history? Pick DO or DONT.
#### =()<REMEMBER_TRASH @<REMEMBER_TRASH>@>()=
REMEMBER_TRASH DONT
@@ -384,7 +384,7 @@
CTLINND_TIMEOUT 0
## Flush logs if we go this long with no I/O.
#### =()<DEFAULT_TIMEOUT @<DEFAULT_TIMEOUT>@>()=
-DEFAULT_TIMEOUT 300
+DEFAULT_TIMEOUT 30
## INND closes channel if inactive this long (seconds).
#### =()<PEER_TIMEOUT @<PEER_TIMEOUT>@>()=
PEER_TIMEOUT (1 * 60 * 60)
@@ -396,7 +396,7 @@
ALLOW_READERS DO
## Refuse newsreader connections if load is higher then this; -1 disables.
#### =()<NNRP_LOADLIMIT @<NNRP_LOADLIMIT>@>()=
-NNRP_LOADLIMIT 16
+NNRP_LOADLIMIT -1
## Don't readdir() spool dir if same group within this many secs.
#### =()<NNRP_RESCAN_DELAY @<NNRP_RESCAN_DELAY>@>()=
NNRP_RESCAN_DELAY 60
@@ -407,7 +407,7 @@
## How many Message-ID retrievals until nnrpd does a dbzincore? Set
## to -1 to never do incore.
#### =()<NNRP_DBZINCORE_DELAY @<NNRP_DBZINCORE_DELAY>@>()=
-NNRP_DBZINCORE_DELAY 40
+NNRP_DBZINCORE_DELAY 20
## Strip Sender from posts that didn't authenticate? Pick DO or DONT.
#### =()<NNRP_AUTH_SENDER @<NNRP_AUTH_SENDER>@>()=
NNRP_AUTH_SENDER DONT
@@ -428,7 +428,7 @@
DEFAULT_CUTOFF 14
## Maximum number of incoming NNTP connections.
#### =()<DEFAULT_CONNECTIONS @<DEFAULT_CONNECTIONS>@>()=
-DEFAULT_CONNECTIONS 50
+DEFAULT_CONNECTIONS 16
## Wait this many seconds before channel restarts.
#### =()<CHANNEL_RETRY_TIME @<CHANNEL_RETRY_TIME>@>()=
CHANNEL_RETRY_TIME (5 * 60)
@@ -446,7 +446,7 @@
IPADDR_LOG DONT
## Log NNTP activity after this many articles.
#### =()<NNTP_ACTIVITY_SYNC @<NNTP_ACTIVITY_SYNC>@>()=
-NNTP_ACTIVITY_SYNC 200
+NNTP_ACTIVITY_SYNC 50
## Free buffers bigger than this when we're done with them.
#### =()<BIG_BUFFER @<BIG_BUFFER>@>()=
BIG_BUFFER (2 * START_BUFF_SIZE)
@@ -474,29 +474,29 @@
## 7. PATHS TO COMMON PROGRAMS
## Where the raison d'etre for this distribution lives.
#### =()<_PATH_INND @<_PATH_INND>@>()=
-_PATH_INND /usr/local/etc/innd
+_PATH_INND /usr/lib/news/etc/innd
## Where the optional front-end that exec's innd lives.
#### =()<_PATH_INNDSTART @<_PATH_INNDSTART>@>()=
-_PATH_INNDSTART /usr/local/etc/inndstart
+_PATH_INNDSTART /usr/lib/news/etc/inndstart
## Where news boot-up script should be installed.
#### =()<_PATH_NEWSBOOT @<_PATH_NEWSBOOT>@>()=
-_PATH_NEWSBOOT /usr/local/etc/rc.news
+_PATH_NEWSBOOT /usr/lib/news/etc/rc.news
## Where sendmail, or a look-alike, lives.
## The -t is optional and says to read message for recipients
#### =()<_PATH_SENDMAIL @<_PATH_SENDMAIL>@>()=
-_PATH_SENDMAIL /usr/lib/sendmail -t
+_PATH_SENDMAIL /usr/sbin/sendmail -t
## Where the shell is.
#### =()<_PATH_SH @<_PATH_SH>@>()=
_PATH_SH /bin/sh
## Where the compress program lives.
#### =()<_PATH_COMPRESS @<_PATH_COMPRESS>@>()=
-_PATH_COMPRESS /usr/ucb/compress
+_PATH_COMPRESS /usr/bin/gzip
## What extension your compress appends
#### =()<_PATH_COMPRESSEXT @<_PATH_COMPRESSEXT>@>()=
-_PATH_COMPRESSEXT .Z
+_PATH_COMPRESSEXT .gz
## Where egrep lives (you might need the FSF one; see scanlogs)
#### =()<_PATH_EGREP @<_PATH_EGREP>@>()=
-_PATH_EGREP /usr/local/bin/egnugrep
+_PATH_EGREP /usr/bin/egrep
## Where awk lives
#### =()<_PATH_AWK @<_PATH_AWK>@>()=
_PATH_AWK awk
@@ -505,34 +505,34 @@
_PATH_SED sed
## Where inews lives.
#### =()<_PATH_INEWS @<_PATH_INEWS>@>()=
-_PATH_INEWS /usr/local/news/inews
+_PATH_INEWS /usr/lib/news/inews
## Where rnews lives.
#### =()<_PATH_RNEWS @<_PATH_RNEWS>@>()=
-_PATH_RNEWS /bin/rnews
+_PATH_RNEWS /usr/lib/news/rnews
## Where the NNRP server lives.
#### =()<_PATH_NNRPD @<_PATH_NNRPD>@>()=
-_PATH_NNRPD /usr/local/etc/in.nnrpd
+_PATH_NNRPD /usr/lib/news/etc/in.nnrpd
## The path of the process run when an unknown host connects to innd.
## Usually the same as _PATH_NNRPD, but may be, e.g., the path to
## nntpd from the reference implementation.
#### =()<_PATH_NNTPD @<_PATH_NNTPD>@>()=
-_PATH_NNTPD /usr/local/etc/in.nnrpd
+_PATH_NNTPD /usr/lib/news/etc/in.nnrpd
## Where the NNQR server lives. Make same as _PATH_NNRPD for now
#### =()<_PATH_NNQRD @<_PATH_NNRPD>@>()=
-_PATH_NNQRD /usr/local/etc/in.nnrpd
+_PATH_NNQRD /usr/lib/news/etc/in.nnrpd
## Where most other programs live.
## See also _PATH_RNEWSPROGS and _PATH_CONTROLPROGS, below.
#### =()<_PATH_NEWSBIN @<_PATH_NEWSBIN>@>()=
-_PATH_NEWSBIN /usr/local/news/bin
+_PATH_NEWSBIN /usr/lib/news/bin
## Where temporary files live on the server
#### =()<_PATH_TMP @<_PATH_TMP>@>()=
_PATH_TMP /tmp
## Command to send mail (with -s "subject" allowed)
#### =()<_PATH_MAILCMD @<_PATH_MAILCMD>@>()=
-_PATH_MAILCMD /usr/ucb/Mail
+_PATH_MAILCMD /bin/mail
## Where scripts should have shlock create locks.
#### =()<_PATH_LOCKS @<_PATH_LOCKS>@>()=
-_PATH_LOCKS /usr/local/news
+_PATH_LOCKS /usr/lib/news
##
@@ -567,10 +567,10 @@
_PATH_RNEWS_DUP_LOG /dev/null
## Rnews may execute any program in this directory; see RNEWSPROGS.
#### =()<_PATH_RNEWSPROGS @<_PATH_RNEWSPROGS>@>()=
-_PATH_RNEWSPROGS /usr/local/news/bin/rnews
+_PATH_RNEWSPROGS /usr/lib/news/bin/rnews
## Path to control messages scripts.
#### =()<_PATH_CONTROLPROGS @<_PATH_CONTROLPROGS>@>()=
-_PATH_CONTROLPROGS /usr/local/news/bin/control
+_PATH_CONTROLPROGS /usr/lib/news/bin/control
## Default "unknown/illegal" control script, within _PATH_CONTROLPROGS.
#### =()<_PATH_BADCONTROLPROG @<_PATH_BADCONTROLPROG>@>()=
_PATH_BADCONTROLPROG default
@@ -579,33 +579,33 @@
##
## 10. SOCKETS CREATED BY INND OR CLIENTS
#### =()<_PATH_INNDDIR @<_PATH_INNDDIR>@>()=
-_PATH_INNDDIR /usr/local/news/innd
+_PATH_INNDDIR /usr/lib/news/innd
## Unix-domain stream socket that rnews connects to.
#### =()<_PATH_NNTPCONNECT @<_PATH_NNTPCONNECT>@>()=
-_PATH_NNTPCONNECT /usr/local/news/innd/nntpin
+_PATH_NNTPCONNECT /usr/lib/news/innd/nntpin
## Unix-domain datagram socket that ctlinnd to.
#### =()<_PATH_NEWSCONTROL @<_PATH_NEWSCONTROL>@>()=
-_PATH_NEWSCONTROL /usr/local/news/innd/control
+_PATH_NEWSCONTROL /usr/lib/news/innd/control
## Temporary socket created by ctlinnd; run through mktemp
#### =()<_PATH_TEMPSOCK @<_PATH_TEMPSOCK>@>()=
-_PATH_TEMPSOCK /usr/local/news/innd/ctlinndXXXXXX
+_PATH_TEMPSOCK /usr/lib/news/innd/ctlinndXXXXXX
##
## 11. LOG AND CONFIG FILES
## Shell script that sets most of these as shell vars
#### =()<_PATH_SHELLVARS @<_PATH_SHELLVARS>@>()=
-_PATH_SHELLVARS /usr/local/news/innshellvars
+_PATH_SHELLVARS /usr/lib/news/innshellvars
## Where most config and data files are usually stored; not required
## to the home directory of NEWSUSER.
#### =()<_PATH_NEWSLIB @<_PATH_NEWSLIB>@>()=
-_PATH_NEWSLIB /usr/local/news
+_PATH_NEWSLIB /usr/lib/news
## The server's log file.
#### =()<_PATH_LOGFILE @<_PATH_LOGFILE>@>()=
-_PATH_LOGFILE /var/log/news/news
+_PATH_LOGFILE /usr/lib/news/log
## The server's error log file.
#### =()<_PATH_ERRLOG @<_PATH_ERRLOG>@>()=
-_PATH_ERRLOG /var/log/news/errlog
+_PATH_ERRLOG /usr/lib/news/errlog
## Where most sylog log files go; see also scanlogs, innstat, etc.
#### =()<_PATH_MOST_LOGS @<_PATH_MOST_LOGS>@>()=
_PATH_MOST_LOGS /var/log/news
@@ -614,28 +614,28 @@
LOG_CYCLES 7
## Text value of the server's pid.
#### =()<_PATH_SERVERPID @<_PATH_SERVERPID>@>()=
-_PATH_SERVERPID /usr/local/news/innd/innd.pid
+_PATH_SERVERPID /usr/lib/news/innd/innd.pid
## The newsfeeds file, on the server host.
#### =()<_PATH_NEWSFEEDS @<_PATH_NEWSFEEDS>@>()=
-_PATH_NEWSFEEDS /usr/local/news/newsfeeds
+_PATH_NEWSFEEDS /usr/lib/news/newsfeeds
## The article history database, on the server host.
#### =()<_PATH_HISTORY @<_PATH_HISTORY>@>()=
-_PATH_HISTORY /usr/local/news/history
+_PATH_HISTORY /usr/lib/news/history
## File listing the sites that feed us news.
#### =()<_PATH_INNDHOSTS @<_PATH_INNDHOSTS>@>()=
-_PATH_INNDHOSTS /usr/local/news/hosts.nntp
+_PATH_INNDHOSTS /usr/lib/news/hosts.nntp
## The active file, on the server host.
#### =()<_PATH_ACTIVE @<_PATH_ACTIVE>@>()=
-_PATH_ACTIVE /usr/local/news/active
+_PATH_ACTIVE /usr/lib/news/active
## A temporary active file, for writing on the server host.
#### =()<_PATH_NEWACTIVE @<_PATH_NEWACTIVE>@>()=
-_PATH_NEWACTIVE /usr/local/news/active.tmp
+_PATH_NEWACTIVE /usr/lib/news/active.tmp
## An old active file on the server host.
#### =()<_PATH_OLDACTIVE @<_PATH_OLDACTIVE>@>()=
-_PATH_OLDACTIVE /usr/local/news/active.old
+_PATH_OLDACTIVE /usr/lib/news/active.old
## The log of when groups are created.
#### =()<_PATH_ACTIVETIMES @<_PATH_ACTIVETIMES>@>()=
-_PATH_ACTIVETIMES /usr/local/news/active.times
+_PATH_ACTIVETIMES /usr/lib/news/active.times
## Where batch files are located.
#### =()<_PATH_BATCHDIR @<_PATH_BATCHDIR>@>()=
_PATH_BATCHDIR /var/spool/news/out.going
@@ -644,54 +644,54 @@
_PATH_ARCHIVEDIR /var/spool/news/news.archive
## Where NNRP distributions file is
#### =()<_PATH_NNRPDIST @<_PATH_NNRPDIST>@>()=
-_PATH_NNRPDIST /usr/local/news/distributions
+_PATH_NNRPDIST /usr/lib/news/distributions
## Where the default Distribution assignments file is
#### =()<_PATH_DISTPATS @<_PATH_DISTPATS>@>()=
-_PATH_DISTPATS /usr/local/news/distrib.pats
+_PATH_DISTPATS /usr/lib/news/distrib.pats
#### =()<_PATH_NEWSGROUPS @<_PATH_NEWSGROUPS>@>()=
-_PATH_NEWSGROUPS /usr/local/news/newsgroups
+_PATH_NEWSGROUPS /usr/lib/news/newsgroups
## File where client configuration parameters can be read.
#### =()<_PATH_CONFIG @<_PATH_CONFIG>@>()=
-_PATH_CONFIG /usr/local/news/inn.conf
+_PATH_CONFIG /usr/lib/news/inn.conf
## The possible active file, on clients (NFS-mounted, e.g.).
#### =()<_PATH_CLIENTACTIVE @<_PATH_CLIENTACTIVE>@>()=
-_PATH_CLIENTACTIVE /usr/local/news/active
+_PATH_CLIENTACTIVE /usr/lib/news/active
## A temporary file, for client inews to use.
#### =()<_PATH_TEMPACTIVE @<_PATH_TEMPACTIVE>@>()=
_PATH_TEMPACTIVE /tmp/activeXXXXXX
## Where to mail to the moderators.
#### =()<_PATH_MODERATORS @<_PATH_MODERATORS>@>()=
-_PATH_MODERATORS /usr/local/news/moderators
+_PATH_MODERATORS /usr/lib/news/moderators
## Where NNTP puts the name of the server.
#### =()<_PATH_SERVER @<_PATH_SERVER>@>()=
-_PATH_SERVER /usr/local/news/server
+_PATH_SERVER /usr/lib/news/server
## File with name/password for all remote connections.
#### =()<_PATH_NNTPPASS @<_PATH_NNTPPASS>@>()=
-_PATH_NNTPPASS /usr/local/news/passwd.nntp
+_PATH_NNTPPASS /usr/lib/news/passwd.nntp
## NNRP access file.
#### =()<_PATH_NNRPACCESS @<_PATH_NNRPACCESS>@>()=
-_PATH_NNRPACCESS /usr/local/news/nnrp.access
+_PATH_NNRPACCESS /usr/lib/news/nnrp.access
## Default expire control file.
#### =()<_PATH_EXPIRECTL @<_PATH_EXPIRECTL>@>()=
-_PATH_EXPIRECTL /usr/local/news/expire.ctl
+_PATH_EXPIRECTL /usr/lib/news/expire.ctl
## Prolog to parse control scripts
#### =()<_PATH_PARSECTL @<_PATH_PARSECTL>@>()=
-_PATH_PARSECTL /usr/local/news/parsecontrol
+_PATH_PARSECTL /usr/lib/news/parsecontrol
## Access control file for control scripts.
#### =()<_PATH_CONTROLCTL @<_PATH_CONTROLCTL>@>()=
-_PATH_CONTROLCTL /usr/local/news/control.ctl
+_PATH_CONTROLCTL /usr/lib/news/control.ctl
## Innwatch control file.
#### =()<_PATH_CTLWATCH @<_PATH_CTLWATCH>@>()=
-_PATH_CTLWATCH /usr/local/news/innwatch.ctl
+_PATH_CTLWATCH /usr/lib/news/innwatch.ctl
## Where innwatch writes its own pid.
#### =()<_PATH_WATCHPID @<_PATH_WATCHPID>@>()=
-_PATH_WATCHPID /usr/local/news/innwatch.pid
+_PATH_WATCHPID /usr/lib/news/innwatch.pid
## Where innwatch writes status when it gets an interrupt
#### =()<_PATH_INNWSTATUS @<_PATH_INNWSTATUS>@>()=
-_PATH_INNWSTATUS /usr/local/news/innwatch.status
+_PATH_INNWSTATUS /usr/lib/news/innwatch.status
## Format of news overview database
#### =()<_PATH_SCHEMA @<_PATH_SCHEMA>@>()=
-_PATH_SCHEMA /usr/local/news/overview.fmt
+_PATH_SCHEMA /usr/lib/news/overview.fmt
##
--- include/clibrary.h
+++ include/clibrary.h 1994/05/21 21:57:57
@@ -12,6 +12,8 @@
#include <vfork.h>
#endif /* defined(DO_HAVE_VFORK) */
+#include <sys/time.h>
+
/* Generic pointer, used by memcpy, malloc, etc. */
/* =()<typedef @<POINTER>@ *POINTER;>()= */
typedef char *POINTER;
--- include/inndcomm.h
+++ include/inndcomm.h 1994/05/21 21:57:57
@@ -4,6 +4,12 @@
** running.
*/
+#if !defined(DO_HAVE_UNIX_DOMAIN)
+typedef short ICC_MSGLENTYPE; /* Length code to prefix commands to
+ ** the server.
+ */
+#endif
+
#define SC_SEP '\001'
#define SC_MAXFIELDS 6
--- innd/cc.c
+++ innd/cc.c 1994/05/21 21:57:57
@@ -1314,6 +1314,7 @@
struct sockaddr_un client;
#else
int written;
+ ICC_MSGLENTYPE bufflen;
#endif /* defined(DO_HAVE_UNIX_DOMAIN) */
int i;
char buff[BUFSIZ + 2];
@@ -1329,7 +1330,21 @@
}
/* Get the message. */
+#if !defined(DO_HAVE_UNIX_DOMAIN)
+ i = RECVorREAD(CCchan->fd, (char *) &bufflen, sizeof(bufflen));
+ if (i != sizeof(bufflen)
+ || bufflen < 1 || bufflen >= (sizeof buff - 1)) {
+ syslog(L_ERROR, "%s cant recv CCreader length %m", LogName);
+ return;
+ }
+ i = RECVorREAD(CCchan->fd, buff, bufflen);
+ if (i > 0 && i != bufflen) {
+ syslog(L_ERROR, "%s cant recv CCreader data %m", LogName);
+ return;
+ }
+#else
i = RECVorREAD(CCchan->fd, buff, sizeof buff - 1);
+#endif
if (i < 0) {
syslog(L_ERROR, "%s cant recv CCreader %m", LogName);
return;
--- lib/inndcomm.c
+++ lib/inndcomm.c 1994/05/21 21:57:57
@@ -169,7 +169,18 @@
/*
** Send an arbitrary command to the server.
+** Note that for those systems without Unix Domain Sockets,
+** the command format is different. There is a two byte
+** length code on the front of the message. This is a
+** direct mapped integer. Note that sending and receiving
+** architectures *must* be the same as we are on the same
+** machine.
*/
+#if defined(DO_HAVE_UNIX_DOMAIN)
+#define BUFF_OFFSET 0
+#else
+#define BUFF_OFFSET sizeof(ICC_MSGLENTYPE)
+#endif
int
ICCcommand(cmd, argv, replyp)
char cmd;
@@ -203,7 +214,7 @@
bufsiz += 1 + strlen(p);
if (bufsiz < MIN_BUFFER_SIZE)
bufsiz = MIN_BUFFER_SIZE;
- buff = malloc((unsigned int)bufsiz);
+ buff = malloc((unsigned int)bufsiz + BUFF_OFFSET);
if (buff == NULL) {
ICCfailure = "malloc";
return -1;
@@ -211,6 +222,8 @@
if (replyp)
*replyp = NULL;
+ buff += BUFF_OFFSET; /* Advance to leave space for length */
+
/* Format the message. */
(void)sprintf(buff, "%s%c%c", ICCsockname, SC_SEP, cmd);
for (p = buff + strlen(buff), i = 0; (q = argv[i]) != NULL; i++) {
@@ -221,6 +234,10 @@
/* Send message. */
ICCfailure = NULL;
len = p - buff;
+
+ buff -= BUFF_OFFSET; /* Not strictly required - could be inside
+ * #else clause below */
+
#if defined(DO_HAVE_UNIX_DOMAIN)
if (sendto(ICCfd, buff, len, 0,
(struct sockaddr *)&ICCserv, AF_UNIX_SOCKSIZE(ICCserv)) < 0) {
@@ -234,6 +251,8 @@
ICCfailure = "open";
return -1;
}
+ *(ICC_MSGLENTYPE *) buff = len;
+ len += BUFF_OFFSET;
if (write(fd, buff, len) != len) {
i = errno;
DISPOSE(buff);
--- makedirs.sh
+++ makedirs.sh 1994/05/21 21:57:57
@@ -64,7 +64,7 @@
${MAN1} ${MAN3} ${MAN5} ${MAN8} \
${SPOOL} ${ARCHIVEDIR} ${BATCHDIR} ${MOST_LOGS} ${MOST_LOGS}/OLD \
${SPOOLNEWS} ${BADNEWS} ${SPOOLTEMP} \
-${NEWSLIB} ${INNDDIR} \
+${NEWSLIB} /usr/lib/news/etc ${INNDDIR} \
${NEWSBIN} ${CONTROLPROGS} ${RNEWSPROGS} ; do
if [ ! -d ${F} ] ; then
--- samples/control.ctl
+++ samples/control.ctl 1994/05/21 21:57:57
@@ -30,72 +30,16 @@
sendme:*:*:drop
## NEWGROUP MESSAGES
-## Any newsgroups
-newgroup:*:*:log=newgroup
-newgroup:tale@*.uu.net:comp.*|misc.*|news.*|rec.*|sci.*|soc.*|talk.*:doit=newgroup
-newgroup:fair@apple.com:comp.*|misc.*|news.*|rec.*|sci.*|soc.*|talk.*|ddn.*:mail
-## Australia newsgroups
-newgroup:kre@*mu*au:aus.*|melb.*:mail
-## BITNET newsgroups
-newgroup:jim@*american.edu:bit.*:mail
-## BIONET newsgroups
-newgroup:shibumi@*.bio.net:bionet.*:mail
-newgroup:kristoff@genbank.bio.net:bionet.*:mail
-## CLARINET newsgroups
-newgroup:brad@clarinet.com:clari.*:mail
-newgroup:grant@clarinet.com:clari.*:mail
-## GNU newsgroups
-newgroup:usenet@*ohio-state.edu:gnu.*:mail
-newgroup:tower@prep.ai.mit.edu:gnu.*:mail
-newgroup:news@ai.mit.edu:gnu.*:mail
-newgroup:karl.kleinpaste@osc.edu:gnu.*:mail
-## K12 newsgroups
-newgroup:nerd@percival.rain.com:k12.*:mail
-## IEEE newsgroups
-newgroup:burt@ieee.org:ieee.*:mail
-## VMSNET newsgroups
-newgroup:tp@mccall.com:vmsnet.*:mail
-## ALT newsgroups
-newgroup:*:alt.*:log=newgroup
+newgroup:*:*:doit=mail
## RMGROUP MESSAGES
-## Any newsgroups
rmgroup:*:*:mail
-rmgroup:tale@*.uu.net:comp.*|misc.*|news.*|rec.*|sci.*|soc.*|talk.*:doit=rmgroup
-rmgroup:kre@*mu*au:comp.*|misc.*|news.*|rec.*|sci.*|soc.*|talk.*:mail
-rmgroup:fair@apple.com:comp.*|misc.*|news.*|rec.*|sci.*|soc.*|talk.*|ddn.*:mail
-## Australia newsgroups
-rmgroup:kre@*mu*au:aus.*|melb.*:mail
-## BITNET newsgroups
-rmgroup:jim@*american.edu:bit.*:mail
-## BIONET newsgroups
-rmgroup:shibumi@*.bio.net:bionet.*:mail
-rmgroup:kristoff@genbank.bio.net:bionet.*:mail
-## CLARINET newsgroups
-rmgroup:brad@clarinet.com:clari.*:mail
-rmgroup:grant@clarinet.com:clari.*:mail
-## GNU newsgroups
-rmgroup:usenet@*ohio-state.edu:gnu.*:mail
-rmgroup:tower@prep.ai.mit.edu:gnu.*:mail
-rmgroup:news@ai.mit.edu:gnu.*:mail
-rmgroup:karl.kleinpaste@osc.edu:gnu.*:mail
-## K12 newsgroups
-rmgroup:nerd@percival.rain.com:k12.*:mail
-## IEEE newsgroups
-rmgroup:burt@ieee.org:ieee.*:mail
-## VMSNET newsgroups
-rmgroup:tp@mccall.com:vmsnet.*:mail
-## ALT newsgroups
-rmgroup:*:alt.*:log=rmgroup
## SENDSYS
-sendsys:*@uunet.uu.net:*:doit=miscctl
sendsys:*:*:doifarg
## SENDUUNAME
-senduuname:*@uunet.uu.net:*:doit=miscctl
-senduuname:*:*:mail
+senduuname:*:*:doit=mail
## VERSION
-version:*@uunet.uu.net:*:doit=miscctl
-version:*:*:mail
+version:*:*:doit=mail
--- samples/expire.ctl
+++ samples/expire.ctl 1994/05/21 21:57:57
@@ -21,9 +21,16 @@
## make this 28, 30, etc.
/remember/:14
-## Keep for 1-10 days, allow Expires headers to work.
-*:A:1:10:never
+## keep for 1-20 days, allow Expires headers to work
+*:A:1:20:20
+
+## junk stays 4 days
+junk:A:1:4:4
+
+## comp.os.linux.* and gnu.* stay a little bit longer
+comp.os.linux*,gnu.*:A:1:30:30
+comp.os.linux.announce:A:1:40:40
+
+## allow Expires headers to work in news.answers
+news.answers:M:1:90:90
-## Some particular groups stay forever.
-dc.dining*:A:never:never:never
-uunet*:A:never:never:never
--- samples/hosts.nntp
+++ samples/hosts.nntp 1994/05/21 21:57:57
@@ -5,4 +5,4 @@
## <host>:<password>
## <host> can be a name or IP address; no wildcards. Any hosts not
## listed here are handed off to nnrpd.
-news.foo.com:
+localhost:
--- samples/inn.conf
+++ samples/inn.conf 1994/05/21 21:57:57
@@ -15,5 +15,5 @@
## server If $NNTPSERVER doesn't exist. Local NNTP server
## host to connect to.
##
-organization: A poorly-installed InterNetNews site
-server: news
+organization: A poorly-installed Linux box
+server: localhost
--- samples/innwatch.ctl
+++ samples/innwatch.ctl 1994/05/21 21:57:57
@@ -35,4 +35,4 @@
## =()<!!! df @<_PATH_NEWSLIB>@ | awk 'NR == 2 { print $4 }' ! lt ! @<INNWATCH_LIBSPACE>@ ! throttle ! No space (newslib)>()=
!!! df /news/lib | awk 'NR == 2 { print $4 }' ! lt ! 3000 ! throttle ! No space (newslib)
## =()<!!! df -i . | awk 'NR == 2 { print $3 }' ! lt ! @<INNWATCH_SPOOLNODES>@ ! throttle ! No space (spool inodes)>()=
-!!! df -i . | awk 'NR == 2 { print $3 }' ! lt ! 200 ! throttle ! No space (spool inodes)
+!!! df -i . | awk 'NR == 2 { print $4 }' ! lt ! 200 ! throttle ! No space (spool inodes)
--- samples/newsfeeds
+++ samples/newsfeeds 1994/05/21 21:57:57
@@ -34,37 +34,37 @@
##
## This file is complicated -- see newsfeeds.5!
-## This is the local site.
+## This is a special entry.
## The "pattern" field gives the intial subscription list for
-## all other sites. You might want to put "!control,!junk,!<local>.*"
-## there. The "distrib" subfield limits incoming articles.
+## all other sites. The distrib subfield limits incoming articles.
ME\
- :*,!foo.*/world,usa,na,gnu,bionet,pubnet,u3b,eunet,vmsnet,inet,ddn,\
- k12\
+ :*,!junk,!control,!foo\
::
# Feed all moderated source postings to an archiver
-source-archive\
- :!*,comp.sources.*\
- :Tp,Nm:/news/bin/archive %s
+#source-archive\
+# :!*,comp.sources.*\
+# :Tp,Nm:/news/bin/archive %s
-# Feed all local non-internal postings to nearnet; sent off-line via
-# nntpsend or send-nntp.
-nic.near.net\
- :!junk/!foo\
- :Tf,Wnm:nic.near.net
+# UUCP example, articles are batched from cron by "send-uucp".
+# The first line specifies the news-server: the first entry should be the fqdn
+# for nntp feeds and the uucp hostname for uucp feeds. Further entries should
+# contain the fqdn and the path your news server puts into news headers.
+# The second line contains what should be given to the server: everything, but
+# not 'junk' and not 'foo' and also not all articles that have as distribution
+# 'local'.
+# The third entry contains some flags: Uucp sites may add "B4096/1024"
+#moko/moko.saar.de,linux.saar.de\
+# :/!local\
+# :Tf,Wfb,B4096/1024:
-# A real-time nntplink feed
-uunet\
- :/!foo\
- :Tc,Wnm:/news/bin/nntplink -i stdin news.uu.net
+# non-uucp example (nntpsend)
+# sbusol.rz.uni-sb.de\
+# :/!local\
+# :Tf,Wnm:feed1.domain.name.edu
-# Capture all Foo, Incorporated, postings
-capture\
- :*/foo\
- :Tp,H2:/usr/lib/news/capture %s
+# Overview data base.
+@overview\
+ :*\
+ :Tc,WO:/usr/lib/news/bin/overchan
-# A UUCP feed, where we try to keep the "batching" between 4 and 1K.
-ihnp4\
- :!junk,!control/!foo\
- :Tf,Wfb,B4096/1024:
--- samples/nnrp.access
+++ samples/nnrp.access 1994/05/21 21:57:57
@@ -14,5 +14,4 @@
##
## Default is no access, no way to authentication, and no groups.
*:: -no- : -no- :!*
-## Foo, Incorporated, hosts have no password, can read anything.
-*.foo.com:Read Post:::*
+localhost:RP:::*
--- samples/overview.fmt
+++ samples/overview.fmt 1994/05/21 21:57:57
@@ -13,4 +13,4 @@
Bytes:
Lines:
## Some newsreaders get better performance if Xref is present
-#Xref:full
+Xref:full
--- samples/send-uucp
+++ samples/send-uucp 1994/05/21 21:57:58
@@ -10,6 +10,7 @@
LOG=${MOST_LOGS}/${PROGNAME}.log
MAXJOBS=200
+#UUXFLAGS="- -r -z -gd"
UUXFLAGS="- -r -gd"
## Start logging.
--- lib/Makefile.orig Fri Jan 13 23:38:01 1995
+++ lib/Makefile Fri Jan 13 23:38:18 1995
@@ -11,11 +11,11 @@
## =()<DEFS = @<DEFS>@>()=
DEFS = -I../include
## =()<CFLAGS = @<CFLAGS>@>()=
-CFLAGS = $(DEFS) -g
+CFLAGS = $(DEFS) -O2
## =()<DBZCFLAGS = @<DBZCFLAGS>@>()=
DBZCFLAGS = $(CFLAGS) -DMMAP
## =()<LDFLAGS = @<LDFLAGS>@>()=
-LDFLAGS = -g
+LDFLAGS = -s
## =()<LINTLIBSTYLE = @<LINTLIBSTYLE>@>()=
LINTLIBSTYLE = BSD
## =()<LINTFLAGS = @<LINTFLAGS>@>()=
--- frontends/Makefile.orig Fri Jan 13 23:39:33 1995
+++ frontends/Makefile Fri Jan 13 23:39:45 1995
@@ -9,9 +9,9 @@
## =()<DEFS = @<DEFS>@>()=
DEFS = -I../include
## =()<CFLAGS = @<CFLAGS>@>()=
-CFLAGS = $(DEFS) -g
+CFLAGS = $(DEFS) -O2
## =()<LDFLAGS = @<LDFLAGS>@>()=
-LDFLAGS = -g
+LDFLAGS = -s
## =()<LINTFLAGS = @<LINTFLAGS>@>()=
LINTFLAGS = -b -h -z $(DEFS)
## =()<LINTFILTER = @<LINTFILTER>@>()=