diff -uNr inn-1.7-kr-beta/innd/art.c inn-1.7-kr/innd/art.c --- inn-1.7-kr-beta/innd/art.c Mon Nov 17 15:32:12 1997 +++ inn-1.7-kr/innd/art.c Wed Nov 26 13:36:09 1997 @@ -1912,7 +1912,10 @@ #if defined(DO_PERL) pathForPerl = HeaderFind(article->Data, "Path", 4) ; - if ((perlrc = (char *)HandleArticle(Data.Body)) != NULL) { + TMRstart(TMR_FILTER); + perlrc = (char *)HandleArticle(Data.Body); + TMRstop(TMR_FILTER); + if (perlrc != NULL) { (void)sprintf(buff, "%d %s", NNTP_REJECTIT_VAL, perlrc); syslog(L_NOTICE, "rejecting[perl] %s %s", HDR(_message_id), buff); ARTlog(&Data, ART_REJECT, buff); diff -uNr inn-1.7-kr-beta/innd/timer.c inn-1.7-kr/innd/timer.c --- inn-1.7-kr-beta/innd/timer.c Sat Oct 18 11:15:52 1997 +++ inn-1.7-kr/innd/timer.c Wed Nov 26 13:29:07 1997 @@ -100,6 +100,7 @@ case TMR_ARTCNCL: str = "artcncl"; break; case TMR_HISHAVE: str = "hishave"; break; case TMR_HISGREP: str = "hisgrep"; break; + case TMR_FILTER: str = "filter"; break; } sprintf(buf, "%s %d(%d) ", str, cumulative[i], count[i]); cumulative[i] = count[i] = 0; diff -uNr inn-1.7-kr-beta/innd/timer.h inn-1.7-kr/innd/timer.h --- inn-1.7-kr-beta/innd/timer.h Sat Oct 18 11:15:52 1997 +++ inn-1.7-kr/innd/timer.h Wed Nov 26 13:28:16 1997 @@ -12,6 +12,7 @@ #define TMR_ARTCNCL 7 #define TMR_HISHAVE 8 #define TMR_HISGREP 9 +#define TMR_FILTER 10 extern void TMRinit(); extern void TMRmainloophook(); diff -uNr inn-1.7-kr-beta/patches/README inn-1.7-kr/patches/README --- inn-1.7-kr-beta/patches/README Wed Nov 19 20:06:08 1997 +++ inn-1.7-kr/patches/README Wed Nov 26 10:54:57 1997 @@ -38,3 +38,8 @@ 97/11/19 cleanqp-uue-related.patch. Bypass uuencoded message and treat multipart/related messages. + +97/11/25 Released inn-1.7-kr-beta. jem@xpat.com and sysuh@kigam.re.kr + +97/11/26 innlog-19971126.patch. Cleaner Daily report. Simplified + inn_filter summary. diff -uNr inn-1.7-kr-beta/patches/applied/innlog-19971126.patch inn-1.7-kr/patches/applied/innlog-19971126.patch --- inn-1.7-kr-beta/patches/applied/innlog-19971126.patch Thu Jan 1 09:00:00 1970 +++ inn-1.7-kr/patches/applied/innlog-19971126.patch Wed Nov 26 10:44:22 1997 @@ -0,0 +1,301 @@ +*** innlog.pl.OLD Wed Nov 26 08:14:51 1997 +--- innlog.pl Wed Nov 26 10:23:00 1997 +*************** +*** 147,152 **** +--- 147,159 ---- + # + ########################################################################## + ++ $WANT_DETAILED_FILTER_REASON = 0; # set 1 for detailed report. ++ $MaxCurious = 20; ++ $MaxGethostFailed = 20; ++ $MaxUnwantedClients = 20; ++ $MaxClientTimeouts = 20; ++ $MaxNnrpdUnrecognized = 20; ++ + ## Uncomment next line if you want to create a Web page + #$HTML = "comment_or_uncomment"; + +*************** +*** 700,705 **** +--- 707,719 ---- + ($reason) = $left =~ /^rejecting\[perl\] <[^>]+> \d+ (.*)$/; + if ($reason) + { ++ if ($reason =~ /^(new EMP detected) (\S+)/) { ++ $reason = $1; ++ $reason .= " " . $2 if ($WANT_DETAILED_FILTER_REASON); ++ } elsif ($reason =~ /^(\S+) (\S+)/) { ++ $reason = $1; ++ $reason .= " " . $2 if ($WANT_DETAILED_FILTER_REASON); ++ } + $innd_filter_perl{$reason}++; + next LINE; + } +*************** +*** 1104,1113 **** +--- 1118,1132 ---- + } + # closed periodic + next LINE if ($server) = $left =~ /(\S+):\d+ closed periodic$/; ++ next LINE if ($server) = $left =~ /(\S+):\d+ periodic close$/; ++ # connection vanishing ++ next LINE if ($server) = $left =~ /(\S+):\d+ connection vanishing$/; + # new hand-prepared backlog file. + next LINE if ($server) = $left =~ /(\S+) new hand-prepared/; + # grabbing external tape file + next LINE if ($server) = $left =~ /(\S+) grabbing external tape file/; ++ # hostChkCxns - maxConnections was 2 now 3 ++ next LINE if ($server) = $left =~ /(\S+) hostChkCxns - maxConnections was/; + + # final (child) + ($server, $seconds, $offered, $accepted, $refused, $rejected) = $left =~ +*************** +*** 1126,1132 **** + # final (real) + ($server, $seconds, $offered, $accepted, $refused, + $rejected, $missing, $spooled) = $left =~ +! /(\S+) final seconds (\d+) offered (\d+) accepted (\d+) refused (\d+) rejected (\d+) missing (\d+) spooled (\d+)$/; + if ($server) + { + $server =~ tr/A-Z/a-z/ unless ($CASE_SENSITIVE); +--- 1145,1151 ---- + # final (real) + ($server, $seconds, $offered, $accepted, $refused, + $rejected, $missing, $spooled) = $left =~ +! /(\S+) final seconds (\d+) offered (\d+) accepted (\d+) refused (\d+) rejected (\d+) missing (\d+) spooled (\d+)/; + if ($server) + { + $server =~ tr/A-Z/a-z/ unless ($CASE_SENSITIVE); +*************** +*** 1157,1162 **** +--- 1176,1192 ---- + $innfeed_spooled{$server} += $spooled; + next LINE; + } ++ # final (only seconds spooled on_close sleeping) ++ ($server, $seconds, $spooled) = $left =~ ++ /(\S+) final seconds (\d+) spooled (\d+) on_close \d+ sleeping \d+$/; ++ if ($server) ++ { ++ $server =~ tr/A-Z/a-z/ unless ($CASE_SENSITIVE); ++ $server =~ s/\d+$//; ++ $innfeed_seconds{$server} += $seconds; ++ $innfeed_spooled{$server} += $spooled; ++ next LINE; ++ } + # checkpoint + ($server) = $left =~ /(\S+) checkpoint seconds.*$/; + if ($server) +*************** +*** 2377,2388 **** +--- 2407,2421 ---- + print HTML "
\n"; + print HTML "\n\n"; + } ++ $total_innd_filter_perl = 0; + foreach $reason (sort (keys (%innd_filter_perl))) + { + printf STDOUT ("%-64.64s %7d\n", $reason, $innd_filter_perl{$reason, }); + printf HTML ("\n", + $reason, $innd_filter_perl{$reason}) if ($HTML); ++ $total_innd_filter_perl += $innd_filter_perl{$reason, }; + } ++ printf STDOUT ("%-64.64s %7d\n", "Total", $total_innd_filter_perl); + print HTML "
Reason Number
%s%d


\n" if ($HTML); + print "\n"; + +*************** +*** 3814,3820 **** + print HTML "\n" if ($HTML); + if (($curious eq "ok") && ($WANT_CURIOUS)) + { +! print "Curious NNRP server explorers :\n"; + print "System Conn\n"; + if ($HTML) + { +--- 3847,3857 ---- + print HTML "\n" if ($HTML); + if (($curious eq "ok") && ($WANT_CURIOUS)) + { +! if ($MaxCurious < scalar(keys (%nnrpd_groups))) { +! print "Curious NNRP server explorers [top $MaxCurious]:\n"; +! } else { +! print "Curious NNRP server explorers :\n"; +! } + print "System Conn\n"; + if ($HTML) + { +*************** +*** 3827,3832 **** +--- 3864,3870 ---- + (keys (%nnrpd_groups))) + { + my $tmp; ++ last if (--$MaxCurious < 0); + if (($nnrpd_groups{"$serv"} == 0) && ($nnrpd_post_ok{"$serv"} == 0)) + { + $tmp = $serv eq '?'?" (getpeername failure)":""; +*************** +*** 3847,3853 **** + if (%nnrpd_no_permission) + { + print HTML "\n" if ($HTML); +! print "NNRP no permission clients :\n"; + print "System Conn\n"; + if ($HTML) + { +--- 3885,3895 ---- + if (%nnrpd_no_permission) + { + print HTML "\n" if ($HTML); +! if ($MaxUnwantedClients < scalar(keys (%nnrpd_no_permission))) { +! print "NNRP no permission clients [top $MaxUnwantedClients]:\n"; +! } else { +! print "NNRP no permission clients :\n"; +! } + print "System Conn\n"; + if ($HTML) + { +*************** +*** 3859,3864 **** +--- 3901,3907 ---- + foreach $client (sort {$nnrpd_no_permission{$b} <=> $nnrpd_no_permission{$a}} + (keys (%nnrpd_no_permission))) + { ++ last if (--$MaxUnwantedClients < 0); + printf STDOUT ("%-64.64s %5d\n", + $client, $nnrpd_no_permission{$client}); + if ($HTML) +*************** +*** 3874,3880 **** + if ((%nnrpd_gethostbyaddr) && ($WANT_GETHOSTFAILED)) + { + print HTML "\n" if ($HTML); +! print "NNRP gethostbyaddr failures :\n"; + print "IP Conn\n"; + if ($HTML) + { +--- 3917,3927 ---- + if ((%nnrpd_gethostbyaddr) && ($WANT_GETHOSTFAILED)) + { + print HTML "\n" if ($HTML); +! if ($MaxGethostFailed < scalar(keys (%nnrpd_gethostbyaddr))) { +! print "NNRP gethostbyaddr failures [top $MaxGethostFailed]:\n"; +! } else { +! print "NNRP gethostbyaddr failures :\n"; +! } + print "IP Conn\n"; + if ($HTML) + { +*************** +*** 3883,3890 **** + print HTML " Connections "; + print HTML "\n\n"; + } +! foreach $ip (sort(keys (%nnrpd_gethostbyaddr))) + { + printf STDOUT ("%-64.64s %5d\n", + $ip, $nnrpd_gethostbyaddr{$ip}); + if ($HTML) +--- 3930,3939 ---- + print HTML " Connections "; + print HTML "\n\n"; + } +! foreach $ip (sort {$nnrpd_gethostbyaddr{$b} <=> $nnrpd_gethostbyaddr{$a}} +! (keys (%nnrpd_gethostbyaddr))) + { ++ last if (--$MaxGethostFailed < 0); + printf STDOUT ("%-64.64s %5d\n", + $ip, $nnrpd_gethostbyaddr{$ip}); + if ($HTML) +*************** +*** 3912,3918 **** + if (%nnrpd_unrecognized) + { + print HTML "\n" if ($HTML); +! print "NNRP unrecognized commands (by host) :\n"; + print "System Commands\n"; + if ($HTML) + { +--- 3961,3971 ---- + if (%nnrpd_unrecognized) + { + print HTML "\n" if ($HTML); +! if ($MaxNnrpdUnrecognized < scalar(keys (%nnrpd_unrecognized))) { +! print "NNRP unrecognized commands (by host) [top $MaxNnrpdUnrecognized]:\n"; +! } else { +! print "NNRP unrecognized commands (by host) :\n"; +! } + print "System Commands\n"; + if ($HTML) + { +*************** +*** 3921,3928 **** + print HTML " Commands "; + print HTML "\n\n"; + } +! foreach $client (sort(keys (%nnrpd_unrecognized))) + { + printf STDOUT ("%-64.64s %5d\n", + $client, $nnrpd_unrecognized{$client}); + if ($HTML) +--- 3974,3983 ---- + print HTML " Commands "; + print HTML "\n\n"; + } +! foreach $client (sort {$nnrpd_unrecognized{$b} <=> $nnrpd_unrecognized{$a}} +! (keys (%nnrpd_unrecognized))) + { ++ last if (--$MaxNnrpdUnrecognized < 0); + printf STDOUT ("%-64.64s %5d\n", + $client, $nnrpd_unrecognized{$client}); + if ($HTML) +*************** +*** 3962,3968 **** + $t_p = 0; + $t_c = 0; + print HTML "\n" if ($HTML); +! print "NNRP client timeouts :\n"; + print "System Conn Peer\n"; + if ($HTML) + { +--- 4017,4027 ---- + $t_p = 0; + $t_c = 0; + print HTML "\n" if ($HTML); +! if ($MaxClientTimeouts < scalar(keys (%nnrpd_timeout))) { +! print "NNRP client timeouts [top $MaxClientTimeouts]:\n"; +! } else { +! print "NNRP client timeouts :\n"; +! } + print "System Conn Peer\n"; + if ($HTML) + { +*************** +*** 3971,3981 **** + print HTML " Timeouts Reset by Peer "; + print HTML "\n\n"; + } +! foreach $client (sort(keys (%nnrpd_timeout))) + { + $t_o += $nnrpd_timeout{$client}; + $t_p += $nnrpd_reset_peer{$client}; + $t_c++; + printf STDOUT ("%-64.64s %5d %5d\n", + $client, $nnrpd_timeout{$client}, $nnrpd_reset_peer{$client}); + if ($HTML) +--- 4030,4042 ---- + print HTML " Timeouts Reset by Peer "; + print HTML "\n\n"; + } +! foreach $client (sort {$nnrpd_timeout{$b} <=> $nnrpd_timeout{$a}} +! (keys (%nnrpd_timeout))) + { + $t_o += $nnrpd_timeout{$client}; + $t_p += $nnrpd_reset_peer{$client}; + $t_c++; ++ next if (--$MaxClientTimeouts < 0); + printf STDOUT ("%-64.64s %5d %5d\n", + $client, $nnrpd_timeout{$client}, $nnrpd_reset_peer{$client}); + if ($HTML) diff -uNr inn-1.7-kr-beta/site/INSTALL.suh inn-1.7-kr/site/INSTALL.suh --- inn-1.7-kr-beta/site/INSTALL.suh Thu Jan 1 09:00:00 1970 +++ inn-1.7-kr/site/INSTALL.suh Wed Nov 26 18:54:15 1997 @@ -0,0 +1,66 @@ +From usenet-kr-owner@usenet.or.kr Wed Nov 26 18:52:38 1997 +Received: from usenet.or.kr (www.usenet.or.kr [134.75.30.13]) + by sdp.kigam.re.kr (8.8.7H1/8.8.7) with ESMTP id SAA28767 + for ; Wed, 26 Nov 1997 18:52:37 +0900 (GMT+0900) +Received: (from majordom@localhost) + by usenet.or.kr (8.8.7H1/8.8.7) id SAA24048 + for usenet-kr-outgoing; Wed, 26 Nov 1997 18:50:08 +0900 (KST) +X-Authentication-Warning: www.kreonet.re.kr: majordom set sender to owner-usenet-kr@usenet.or.kr using -f +Received: from sdp.kigam.re.kr (sdp.kigam.re.kr [134.75.144.201]) + by usenet.or.kr (8.8.7H1/8.8.7) with ESMTP id SAA24044 + for ; Wed, 26 Nov 1997 18:49:51 +0900 (KST) +Received: (from sysuh@localhost) + by sdp.kigam.re.kr (8.8.7H1/8.8.7) id SAA28755; + Wed, 26 Nov 1997 18:50:27 +0900 (GMT+0900) +Date: Wed, 26 Nov 1997 18:50:27 +0900 (GMT+0900) +From: Sang-yong Suh +Message-Id: <199711260950.SAA28755@sdp.kigam.re.kr> +To: cypark@kari.re.kr +Subject: Re: inn-1.7-kr beta install +Cc: usenet-kr@usenet.or.kr +References: <199711260927.SAA00521@kari.re.kr> +Sender: owner-usenet-kr@usenet.or.kr +Precedence: bulk +Reply-To: usenet-kr@usenet.or.kr +Status: R + +On Wed, 26 Nov 1997 18:27:51 +0900 (KST), You write: +> ¿À´Ã µð½ºÅ© Çϳª°¡ ºÒ·®ÀÌ¶ó¼­ ±³Ã¼¸¦ ÀÇ·ÚÇß½À´Ï´Ù. +> ±×¸®°í inn-1.7-krÀ» ¼³Ä¡¸¦ ¿Ï·áÇß½À´Ï´Ù. + +ÃàÇϵ帳´Ï´Ù. + +> ¹Ð¹ø´ÔÀÌ °­ÀÇ ÇϽǶ§ µÎ°³ÀÇ ÇÁ·Î¼¼½º¸¦ ÀÌ¿ëÇÏ´Â ¹æ¹ý¿¡ ´ëÇÏ¿© ¼³¸íÀ»ÇÏ¿© +> Á̴ּµ¥ rc.news¿¡¼­´Â ¼öÁ¤À» ÇÏ¿´½À´Ï´Ù. +> ±×·±µ¥ /etc/inetd.conf¿Í /etc/serices¿¡ Ãß°¡ÇØ¾ß µÇ´Â ¼³¸íÀÌ ºüÁ® À־ ¹®ÀǸ¦ µå¸³´Ï´Ù. + +±×°ÍÀÌ ºüÁ³±º¿ä. ´ÙÀ½Àº innd¸¦ port 120À¸·Î µ¹¸±¶§ ȯ°æ¼³Á¤À» +¸»¾¸µå¸³´Ï´Ù. + +1. any-port.patch°¡ ¾ÆÁ÷ ºÒ¿ÏÀüÇÏ´Ù°í »ý°¢ÇÕ´Ï´Ù. + ÀÌÀ¯´Â Æ÷½ºÆÃ½Ã ¹Ýµå½Ã innd°¡ 119·Î ÀÛµ¿ÇÏ´Â Á¦ 2 ÀÇ ´º½º¼­¹ö¸¦ + »ç¿ëÇØ¾ß¸¸ ÇÕ´Ï´Ù. ¸çÄ¥ ÈÄ¿¡ ³ª¿Ã inn-1.7-kr¿¡¼­´Â ÀÌ ¹®Á¦¸¦ + ÇØ°áÇϰڽÀ´Ï´Ù. + + µû¶ó¼­ È®½ÇÀ» ±âÇϱâ À§ÇØ inn-1.7-kr/include/configdata.h¿¡¼­ + 119¶ó´Â ¼ýÀÚ¸¦ 120À¸·Î ¹Ù²Ù°í (ÇÑÁÙ¹Û¿¡ ¾øÀ½), inn-1.7-kr µð·ºÅ丮¿¡¼­ + ´Ù½Ã "make; su; make update; exit" ¸í·ÉÀ» ÁÝ´Ï´Ù. + +2. ´ÙÀ½Àº /etc/inetd.conf¿¡ nntp °ü·Ã ÁÙÀ» ³Ö´Â °ÍÀÔ´Ï´Ù. + À̰ÍÀº OS¿Í ½Ã½ºÅÛ¿¡ µû¶ó ´Ù¸¨´Ï´Ù. + + - Linux/Slackware + nntp stream tcp nowait news /usr/sbin/tcpd /usr/local/news/etc/nntp + + - Solaris-2.x + nntp stream tcp nowait news /usr/local/news/etc/in.nnrpd in.nnrpd + + ´Ù¸¥ ½Ã½ºÅÛÀº À§ÀÇ ¿¹¹®À» Âü°íÇÏ¿© °¢ÀÚ ½ÇÇèÇØº¸½Ã±â ¹Ù¶ø´Ï´Ù. + +3. inetd¸¦ Àç°¡µ¿½Ã۰í "telnet localhost nntp" µîÀ¸·Î nnrp°¡ + ÀÛµ¿ÇÏ´ÂÁö¸¦ È®ÀÎÇÕ´Ï´Ù. + +4. ´º½º°ø±Þó¿¡ Æ÷Æ® 120À¸·Î ´º½º¸¦ ¼Û½ÅÇØ´Þ¶ó°í ¾ê±âÇÕ´Ï´Ù. +-- +sysuh + diff -uNr inn-1.7-kr-beta/site/perlfilt/ignoregroups inn-1.7-kr/site/perlfilt/ignoregroups --- inn-1.7-kr-beta/site/perlfilt/ignoregroups Wed Nov 5 07:08:42 1997 +++ inn-1.7-kr/site/perlfilt/ignoregroups Wed Nov 26 11:52:36 1997 @@ -5,3 +5,4 @@ news.lists.filters rec.boats.marketplace alt.shoe.lesbians.moderated +han.news.stats