2ch-master-mirror/bbs-main.cgi

9158 lines
292 KiB
Plaintext
Raw Permalink Normal View History

use strict 'vars';
use File::stat;
use POSIX qw(:errno_h strftime);
use BBSD;
# <20>Â<EFBFBD><C382>̂<EFBFBD> old <20>ɓ<EFBFBD><C993><EFBFBD><EA82BD><EFBFBD>[ by <20><>
# <20><><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD> by <20><>
# 070320 <20>g<EFBFBD>тƌg<C68C>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U(ibis/jig)<29>ł͕ςȃz<C883>X<EFBFBD>g<EFBFBD><67><EFBFBD>K<EFBFBD><4B><EFBFBD>Ȃ<EFBFBD> by <20><>
# 070425 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 070719 Willcom/EZweb/i<><69><EFBFBD>[<5B>h<EFBFBD><68>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 070903 Willcom<6F><6D>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 071009 Y!<21>P<EFBFBD>[<5B>^<5E>C<EFBFBD><43>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD><C789>E<EFBFBD>ύX by <20><>
# 071110 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 071114 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 071208 <20>Ǘ<EFBFBD><C797>l<EFBFBD>̍<EFBFBD><CC8D>ƕ<EFBFBD><C695><EFBFBD><EFBFBD>𐮌`(<28><><EFBFBD>e<EFBFBD>͕ύX<CF8D><58><EFBFBD><EFBFBD>)
# ibisBrowser<65>Q<EFBFBD>[<5B>g<EFBFBD>E<EFBFBD>F<EFBFBD>C<EFBFBD>p<EFBFBD>VIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>o<EFBFBD>^
# Willcom<6F><6D>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD>
# <20>u<EFBFBD>֘A<D698>y<EFBFBD>[<5B>W<EFBFBD>v<EFBFBD>̃<EFBFBD><CC83><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>\<5C><><EFBFBD><EFBFBD> by <20><>
# 071209 ibisBrowser(Windows Mobile<6C><65>)<29>ɑΉ<C991> by <20><>
# 071211 be<62>̃A<CC83>C<EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B by <20><>
# 080209 ibisBrowser<65>Q<EFBFBD>[<5B>g<EFBFBD>E<EFBFBD>F<EFBFBD>C<EFBFBD>p<EFBFBD>VIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>o<EFBFBD>^ by <20><>
# 080214 c-others<72><73>c<EFBFBD>ɓ<EFBFBD><C993><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EA82BD><EFBFBD>Ƃɔ<C682><C994><EFBFBD><EFBFBD><EFBFBD><EFBFBD>C by <20><>
# EZweb<65>̃A<CC83>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƂɑΉ<C991> by <20><>
# 080216 <20><><EFBFBD><EFBFBD>P2<50>̐悪<CC90><E682AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˂<EFBFBD><CB82>܂<EFBFBD><DC82>‚<EFBFBD><C282><EFBFBD> by <20><>
# 080218 tiger2514(<28>Ȃ܂<C882><DC82>̐<EFBFBD><CC90><EFBFBD>)<29><>area47<34>\<5C><><EFBFBD><EFBFBD><EFBFBD>u<EFBFBD>n<EFBFBD><6E><EFBFBD>v<EFBFBD>ɐݒ<C990> by <20><>
# 080219 headline/BBY<42><59>DNS<4E><53><EFBFBD>V<EFBFBD>T<EFBFBD>[<5B>o<EFBFBD>Ɉڍs by <20><>
# 080221 stats/BBS<42><53>DNS<4E><53><EFBFBD>V<EFBFBD>T<EFBFBD>[<5B>o<EFBFBD>Ɉڍs by <20><>
# 080227 Willcom<6F><6D>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 080301 foxDNSquery<72><79><EFBFBD>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>Ȃ<EFBFBD>$res->bgsend<6E>ɕύX by <20><>
# 080313 rock54/BBR<42><52>DNS<4E><53><EFBFBD>V<EFBFBD>T<EFBFBD>[<5B>o<EFBFBD>Ɉڍs by <20><>
# 080314 BBY/BBS/BBR<42><52>DNS<4E>T<EFBFBD>[<5B>oIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58>initFOX<4F>Œ<EFBFBD><C592>` by <20><>
# 080429 SoftBank<6E><6B>PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>ɑΉ<C991>(jig, ibis<69>Ɠ<EFBFBD><C693><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) by <20><>
# 080601 DoCoMo<4D><6F>i<EFBFBD><69><EFBFBD>[<5B>hID<49>ɖ{<7B>i<EFBFBD>Ή<EFBFBD> by <20><>
# 080601a i<><69><EFBFBD>[<5B>hID<49>ւ̑Ή<CC91><CE89><EFBFBD><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43>(BBM/BBR/BBN) by <20><>
# 080602 i<><69><EFBFBD>[<5B>h<EFBFBD>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂ɑΉ<C991> by <20><>
# 080603 ibis/jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>i<EFBFBD><69><EFBFBD>[<5B>hID<49>Ή<EFBFBD><CE89><EFBFBD><EFBFBD>ɑΉ<C991> by <20><>
# 080618 Willcom<6F><6D>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 080711 <20><><EFBFBD><EFBFBD>p2<70><32>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD>lj<EFBFBD> by <20><>
# 080714 126.240.0.0/12 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>iPhone<6E><65><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂Ƃ<DD82><C682><EFBFBD>(ShikibetsuMark) by <20><>
# 080714a <20><><EFBFBD>L<EFBFBD><4C><EFBFBD>f<EFBFBD>̌<EFBFBD><CC8C>AUA<55>o<EFBFBD>R<EFBFBD>𕜊<EFBFBD>(ShikibetsuMark) by <20><>
# 080718 i<><69><EFBFBD>[<5B>h<EFBFBD>AEZweb<65><62>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 080723 <20>w<EFBFBD>b<EFBFBD>_<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă݂<C482> by <20><>
# 080727 IPv6<76>ɑΉ<C991><CE89>ABBQ<42><51>BBX<42>AfoxSetHost<73>̋<EFBFBD><CC8B><EFBFBD><EFBFBD>ۂ<EFBFBD><DB82><EFBFBD><EFBFBD><EFBFBD><E89594><EFBFBD>͂Ƃ肠<C682><E882A0><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>L<EFBFBD>b<EFBFBD>v by <20><>
# 080727a IPv6<76>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ċK<C48B><4B><EFBFBD>̔<EFBFBD><CC94><EFBFBD><EFBFBD><EFBFBD> /48 <20>ōs<C58D><73><EFBFBD>AIPv6<76><36><EFBFBD><EFBFBD>ID<49><44> 48 + 16 + 64 bit <20>Ő<EFBFBD><C590><EFBFBD> by <20><>
# 080728 IPv6<76><36><EFBFBD><EFBFBD>ID<49><44> <20><>48 + <20><>64 + <20><>64 bit <20>Ő<EFBFBD><C590><EFBFBD> by <20><>
# 080728a IPv6<76><36><EFBFBD><EFBFBD>ID<49><44> <20><>48 + <20><>64 + <20>S128bit <20>Ő<EFBFBD><C590><EFBFBD> by <20><>
# 080728b IPv6<76>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ċK<C48B><4B><EFBFBD>̔<EFBFBD><CC94><EFBFBD><EFBFBD><EFBFBD> /64 <20>ɖ߂<C996><DF82>Ă݂<C482> by <20><>
# 080729 GetRemoteHostName: <20><><EFBFBD>–ڂ<C296> PTR <20><><EFBFBD>R<EFBFBD>[<5B>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>‚<EFBFBD><C282><EFBFBD><EFBFBD><EFBFBD><E78F88><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>؂<EFBFBD> by <20><>
# 080807 ula.cc/u.la/s2ch.net <20><><EFBFBD><EFBFBD><E78F91><EFBFBD>Ȃ<EFBFBD><C882>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>C<EFBFBD><43> by <20><>
# 080906 musicnews <20><><EFBFBD>•ʃL<CA83><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76> by <20><>
# 080911 schiphol<6F>̔•ʃL<CA83><4C><EFBFBD>b<EFBFBD>v<EFBFBD>p<EFBFBD>~ by <20><>
# 080913 <20>•ʃL<CA83><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD><EFBFBD>IsItabetsuCap<61>Ŕ<EFBFBD><C594><EFBFBD> by <20><>
# 080913 news<77>̃|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67>10000<30>ȏ<EFBFBD><C88F>ɕύX by <20><>
# 080930 poverty<74>̃|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67>3000<30>ȏ<EFBFBD><C88F>ɕύX by <20><>
# 081001 Willcom<6F><6D>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 090112 ibisBrowser<65><72><EFBFBD><EFBFBD>docomo<6D>g<EFBFBD>т̎<D182><CC8E><EFBFBD>7<EFBFBD><37><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ƃ<EFBFBD><C682><EFBFBD>(<28>o<EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD>) by <20><>
# 090225 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 090324 ibisBrowser(SoftBank<6E><6B>)<29>ɑΉ<C991> by <20><>
# 090330 <20>}<7D>C<EFBFBD>N<EFBFBD><4E><EFBFBD>b<EFBFBD>̎擾<CC8E><E693BE> syscall <20><><EFBFBD><EFBFBD> Time::HiRes <20>ɕύX by <20><>
# 090401 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 090426 EZweb<65><62>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>ŐV<C590>łɕύX(<28>lj<EFBFBD><C789>ƍ폜) by <20><>
# 090605 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD><C789>E<EFBFBD>폜 by <20><>
# 090619 <20>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> by Sun
# 090731 emobile EMnet<65>ɑΉ<C991><CE89>A<EFBFBD>g<EFBFBD>ш<EFBFBD><D188><EFBFBD><EFBFBD>ɁBBBM2<4D>̑Ή<CC91><CE89>͕ʓr<CA93>K<EFBFBD>v by <20><>
# 090781 emobile EMnet<65><74>BBM2<4D>ɑΉ<C991> by <20><>
# 081220 i<><69><EFBFBD>[<5B>h<EFBFBD><68>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 100105 Set-Cookie <20>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD>Ԃ̕ύX by Sun
# 100219 EZweb<65><62>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>ŐV<C590>łɕύX(<28>lj<EFBFBD>) by <20><>
# 100320 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 100402 stats.2ch.net (a.ns.bbs.2ch.net) <20><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD>ύX<CF8D>ɑΉ<C991> by <20><>
# 100410 iPhone(panda)<29><>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 100414 headline.2ch.net (a.ns.bby.2ch.net) <20><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD>ύX<CF8D>ɑΉ<C991> by <20><>
# 100420 Y!<21>P<EFBFBD>[<5B>^<5E>C<EFBFBD><43>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><EFBFBD>APC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>ύX by <20><>
# 100516 <20>Ȃ܂<C882><DC82>̐<EFBFBD><CC90>Ƃ<EFBFBD>tiger2514<31><34><EFBFBD><EFBFBD>banana3104<30>ɕύX by <20><>
# 100517 <20><><EFBFBD><EFBFBD>p2<70><32>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><EFBFBD>ύX by <20><>
# 100526 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD>lj<EFBFBD> by <20><>
# 100531 live28<32>f<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>ɑΉ<C991><CE89>A<EFBFBD>‚<EFBFBD><C282><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> live23/live24 <20>Ɠ<EFBFBD><C693><EFBFBD><EFBFBD><EFBFBD> by <20><>
# 100601 live28<32>ł<EFBFBD>Saborin<69>L<EFBFBD><4C> by <20><>
# 100602 <20>‚<EFBFBD><C282><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>l<EFBFBD>̔<EFBFBD><CC94><EFBFBD><EFBFBD><EFBFBD><EFBFBD>•ʂɈڍs by <20><>
# 100603 <20>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>l<EFBFBD><6C><EFBFBD>ݒ肷<DD92><E882B7><EFBFBD>‚̔<C282><CC94><EFBFBD><EFBFBD><EFBFBD><EFBFBD>T<EFBFBD>u<EFBFBD><75><EFBFBD>[<5B>`<60><><EFBFBD><EFBFBD> by <20><>
# 100606 Saborin<69>̍X<CC8D>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD>PID<49>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD><CC82><EFBFBD>rand()<29>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̂ɕύX by <20><>
# 100617 hayabusa<73>T<EFBFBD>[<5B>o<EFBFBD><6F>1/100<30>b<EFBFBD>܂ŕ\<5C><> by <20><>
# 100619 live*<2A>T<EFBFBD>[<5B>o<EFBFBD><6F>1/100<30>b<EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> by <20><>
# 100724 au<61><75>PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>A<EFBFBD>[<5B><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93>e<EFBFBD>̓G<CD83><47><EFBFBD>[<5B>ɂ<EFBFBD><C982><EFBFBD> by <20><>
# 100914 orz.2ch.io<69><6F><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93>e<EFBFBD><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD> by garnet
# 100918 EZweb<65><62>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>ŐV<C590>łɕύX(<28>lj<EFBFBD>) by <20><>
# 101005 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>ŐV<C590>łɕύX(<28>lj<EFBFBD><C789>E<EFBFBD>폜) by <20><>
# 101014 Willcom<6F><6D>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>ŐV<C590>łɕύX(<28>lj<EFBFBD><C789>E<EFBFBD>폜) by <20><>
# 101028 jig<69>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55>CIDR<44>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>ŐV<C590>łɕύX(<28>lj<EFBFBD>) by <20><>
#############################################################################
# BE <20><>ICON<4F><4E><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>@sssp://
#############################################################################
sub dispIconSssp
{
my ($GB) = @_;
if($GB->{icon} eq '') {return 0;}
if($GB->{NINNIN}) {return 0;} #<23><><EFBFBD>D<EFBFBD>X<EFBFBD>e<EFBFBD><65><EFBFBD>X<EFBFBD><58>off
# if(!$GB->{NEWTHREAD}) {return 0;} #<23>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>Ď<EFBFBD><C48E>ȊO<C88A><4F>off
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_OVERSEA_PROXY'} eq "checked") {return 1;}
# if($GB->{FORM}->{'bbs'} eq "operate2") {return 1;}
if($GB->{FORM}->{'bbs'} eq "news") {return 1;}
if($GB->{FORM}->{'bbs'} eq "poverty") {return 1;}
if($GB->{FORM}->{'bbs'} eq "news4vip") {return 1;}
return 0 ;
}
#############################################################################
# <09>g<EFBFBD>ъe<D18A>Ђ̃T<CC83>[<5B>o<EFBFBD>𐔂<EFBFBD><F0909482>
#############################################################################
sub countKeitaiServer
{
my ($GB) = @_ ;
return 1 ;
if($ENV{'SERVER_NAME'} !~ /gimpo/) {return 0;}
if(!$GB->{KEITAI}) {return 0;}
my $cname = "dc" ;
if($GB->{KEITAI} eq 2) { $cname = "au"; }
elsif($GB->{KEITAI} eq 3) { $cname = "sb"; }
elsif($GB->{KEITAI} eq 5) { $cname = "em"; }
my $fff = "./cname/" . $cname . "/" ;
if(!(-e $fff)) {mkdir($fff,0777);}
if(!(-e $fff)) {return 0;}
my $remo = $GB->{HOST29} ; #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9838A><EFBFBD>z
my $ipip = $ENV{REMOTE_ADDR} ;
$fff .= "$ipip.txt" ;
if(open(LX,">> $fff")){print LX "$remo\t\t\t\t\t\t\t\t\n";close(LX);}
return 1 ;
}
#############################################################################
# docomo<6D>g<EFBFBD>т<EFBFBD>i<EFBFBD><69><EFBFBD>[<5B>hID<49><44><EFBFBD><EFBFBD><EFBFBD>ADNS<4E><EFBFBD><E282A2><EFBFBD><EFBFBD>p<EFBFBD><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD>: i<><69><EFBFBD>[<5B>hID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# <20>߂<EFBFBD><DF82>l: DNS<4E><EFBFBD><E282A2><EFBFBD><EFBFBD>p<EFBFBD><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub MakeImodeIDforDNS
{
my ($imodeid) = @_;
my $komojiflag = $imodeid;
$komojiflag =~ tr/0-9A-Za-z/00000000000000000000000000000000000011111111111111111111111111/;
$imodeid = $imodeid . '-' . $komojiflag;
return $imodeid;
}
#############################################################################
# <20>}<7D><><EFBFBD>`<60>o<EFBFBD>C<EFBFBD>g(<28><><EFBFBD>{<7B>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>@<40>p<EFBFBD><70><EFBFBD><EFBFBD>
#############################################################################
sub NoJapanese
{
my ($GB) = @_ ;
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_4WORLD'} eq "checked")
{
my $a = $GB->{FORM}->{'MESSAGE'} . $GB->{FORM}->{'mail'} . $GB->{FORM}->{'FROM'} . $GB->{FORM}->{'subject'} ;
if($a =~ /[^a-zA-Z0-9\.\, #_<>\(\)\?\/\&\;\!\:\=\'\+\-\*\~\%\@\"\[\]\+]/) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD>{<7B><><EFBFBD>͎󂯕t<F382AF95><74><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82><EFBFBD>"); }
}
# return 0 ;
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_4WORLD'} eq "kanji")
{
my $a = $GB->{FORM}->{'MESSAGE'} ;
# $a =~ s/[\x88-\x9F\xE0-\xFF][\x9F-\xFF]//g ;
$a =~ s/[\x88-\x9F\xE0-\xFF][\x80-\xFF]//g ;
$a =~ s/<br>//g ;
$a =~ s/ //g ;
$a =~ s/<2F>@//g ;
if($a ne '') {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󂯕t<F382AF95><74><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82><EFBFBD>"); }
}
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_4WORLD'} eq "hira")
{
my $a = $GB->{FORM}->{'MESSAGE'} ;
$a =~ s/[\x82][\x9E-\xFF]//g ;
$a =~ s/<br>//g ;
$a =~ s/ //g ;
$a =~ s/<2F>@//g ;
if($a ne '') {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>Ђ炪<D082>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>󂯕t<F382AF95><74><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82><EFBFBD>"); }
}
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_4WORLD'} eq "kata")
{
my $a = $GB->{FORM}->{'MESSAGE'} ;
$a =~ s/&gt;&gt;[0-9\-,]+//g ; # >>23<32>Ƃ<EFBFBD>
$a =~ s/[\x81][\x48-\x49]//g ; # <20>H<EFBFBD>@<40>Ɓ@<40>I
$a =~ s/[\x81][\x5B-\x5C]//g ; # <20>[<5B>@<40>Ɓ@<40>\
$a =~ s/[\x83][\x40-\x9F]//g ;
$a =~ s/<br>//g ;
$a =~ s/ //g ;
$a =~ s/<2F>@//g ;
if($a ne '') {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>J<EFBFBD>^<5E>J<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>󂯕t<F382AF95><74><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82><EFBFBD>"); }
}
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_4WORLD'} eq "senji")
{
my $a = $GB->{FORM}->{'MESSAGE'} . $GB->{FORM}->{'subject'} ;
$a =~ s/&gt;&gt;[0-9\-,]+//g ; # >>23<32>Ƃ<EFBFBD>
$a =~ s/!vip2:stop://g ; # !vip2:stop:!vip2:heal:
$a =~ s/!vip2:heal://g ; # !vip2:stop:
$a =~ s/(\x81[\x40-\xFF]|\x83[\x40-\x9F]|[\x88-\x9F][\x40-\xFF]|[\xE0-\xFF][\x40-\xFF])+//g; #(<28><><EFBFBD><EFBFBD><EB82A2><EFBFBD>L<EFBFBD><4C>|<7C>J<EFBFBD>^<5E>J<EFBFBD>i|<7C><><EFBFBD><EFBFBD>aA|<7C><><EFBFBD><EFBFBD>bB)+
# $a =~ s/http:\/\/[a-zA-Z0-9.,_\/]+//g ; #URL <20><><EFBFBD>@<40><><EFBFBD>V
$a =~ s/h?ttps?:\/\/[a-zA-Z0-9.,_\/+-]+//g; # +- <20>_<EFBFBD>P<EFBFBD>lj<EFBFBD><C789>Bh <20><><EFBFBD>L<EFBFBD>g
$a =~ s/<br>//g ;
$a =~ s/ //g ;
$a =~ s/<2F>@//g ;
if($a ne '') {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD><EFBFBD><EFBFBD>ƃJ<C683>^<5E>J<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>󂯕t<F382AF95><74><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82><EFBFBD>"); }
}
#$GB->{FORM}->{'MESSAGE'} .= "<hr>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_RAWIP_CHECK'} // PREN=$GB->{COOKIES}{PREN}";
return 0 ;
}
#############################################################################
# <20>ێ<EFBFBD><DB8E>c<EFBFBD>[<5B><><EFBFBD>΍<EFBFBD> by <20><> http://web1.nazca.co.jp/despair/hosyu/
#############################################################################
sub antiHosyu
{
my ($GB) = @_ ;
if($GB->{FORM}->{'FROM'} =~ /<2F><>2d\.AlKjN5I/)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","ktkr");
}
return 0 ;
}
#############################################################################
# <20>g<EFBFBD>тł̋K<CC8B>񌩂<EFBFBD><F18CA982>@<40>g<EFBFBD><67>DB<44>̎<EFBFBD><CC8E><EFBFBD> by <20><>
#############################################################################
sub useBBM2
{
my ($GB) = @_ ;
#return 0 ;
if($GB->{KEITAI}) {return 1;} #<23>g<EFBFBD><67>
# if($GB->{P22CH}) {return 1;} #P2
return 0 ;
}
sub GooMorningKeitai
{
my ($GB) = @_ ;
#BBM<42>ُ펞<D98F>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if(!$FOX->{BBM2}) {return 0;}
if(!&useBBM2($GB)) {return 0;}
my $au = &NotifyUlaBbmPOST($GB) ;
if($au eq 'ZZZ:700') {return 0;}
if($au eq 'ZZZ:701') {&DispError3($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>͂<EFBFBD><CD82>߂܂<DF82><DC82>āB<BR>701[$au]");}
if($au eq 'ZZZ:702') {&DispError3($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>v<EFBFBD><76><EFBFBD>Ԃ<EFBFBD><D482>B<BR>702[$au]");}
if($au eq 'ZZZ:703') {&DispError3($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD><EFBFBD><EFBFBD>΂<EFBFBD><CE82><EFBFBD><EFBFBD>B<BR>703[$au]");}
if($au eq 'ZZZ:704') {&DispError3($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD>܂<EFBFBD><DC82>B<BR>704[$au]");}
if($au eq 'ZZZ:705') {&DispError3($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>҂<EFBFBD><D282>ۂ<EFBFBD><DB82>B<BR>705[$au]");}
if($au =~ /ZZZ:710/) {&DispError3($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><> <20><><EFBFBD><EFBFBD><EFBFBD>‚<EFBFBD>2.0<EFBFBD>B<BR>710[$au]");}
&DispError3($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܒ<EFBFBD><DC92><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<BR>?[$au]");
$FOX->{BBM2} = 0 ;
}
sub NotifyUlaBbmPOST
{
my ($GB) = @_;
my(%pm, $ua, $response) = () ;
my $host = "http://bbm2.2ch.net/test/z.so?" ;
$pm{'srv'} = $ENV{'SERVER_NAME'} ;
$pm{'tane'} = $GB->{IDNOTANE} ;
$pm{'ua'} = $ENV{'HTTP_USER_AGENT'} ;
$pm{'subject'} = $GB->{FORM}->{'subject'} ;
$pm{'FROM'} = $GB->{FORM}->{'FROM'} ;
$pm{'mail'} = $GB->{FORM}->{'mail'} ;
$pm{'bbs'} = $GB->{FORM}->{bbs} ;
$pm{'key'} = $GB->{FORM}->{key} ;
$pm{'newt'} = $GB->{NEWTHREAD} ;
$pm{'MESSAGE'} = $GB->{FORM}->{'MESSAGE'} ;
$ua = LWP::UserAgent->new() ;
$ua->agent('Mozilla/5.0 FOX(2ch.bbs)') ;
$ua->timeout(5);
$response = $ua -> post($host, \%pm);
my $db_content = $response->content();
# <20>G<EFBFBD><47><EFBFBD>[<5B>`<60>F<EFBFBD>b<EFBFBD>N
if ($response->is_error)
{
return "<22>ʐM<CA90>G<EFBFBD><47><EFBFBD>[";
}
chomp($db_content);
return $db_content;
}
#############################################################################
#<23>@<40>`<60><><EFBFBD>̋@<40>\ 2.0
#############################################################################
sub VipQ2ON
{
my ($GB) = @_ ;
# if($GB->{FORM}->{bbs} eq 'operate2') {return 1;}
if($GB->{FORM}->{bbs} eq 'news') {return 1;}
# if($GB->{FORM}->{bbs} eq 'anime4vip') {return 1;}
if($GB->{FORM}->{bbs} eq 'news4vip') {return 1;}
if($GB->{FORM}->{bbs} eq 'news4viptasu') {return 1;}
if($GB->{FORM}->{bbs} eq 'campus') {return 1;}
return 0 ;
}
sub VipQ2
{
my ($GB) = @_ ;
if(!VipQ2ON($GB)) {return 0;}
my @lx = split(/\n/,$GB->{FORM}->{'MESSAGE'}) ;
$lx[0] =~ /\!vip2\:(\S+)\:/ ;
my $command = $1 ;
# if($command eq '') {return 0;}
# $GB->{FORM}->{'MESSAGE'} .= "<br>---<br>lx=$lx[0]<br>com=$command<br>";
# $GB->{FORM}->{'MESSAGE'} .= "<br>---<br>com=$command<br>";
if($command eq 'stop') {return &VipQ2Stop($GB);}
if($command eq 'heal') {return &VipQ2Heal($GB);}
return 0 ;
}
sub VipQ2Heal
{
my ($GB) = @_ ;
my $MP = 100 ;
my $MX = 2000 ;
my $IP = $ENV{REMOTE_ADDR} ;
$GB->{FORM}->{'MESSAGE'} .= "<br>---<br>";
# my $fff = "../$GB->{FORM}->{bbs}/vip2" ;
my $fff = "/md/tmp/book" ;
if(!(-e $fff)) {mkdir($fff,0777);}
if(!(-e $fff)) {return 0;}
$fff .= "/$GB->{FORM}->{'key'}.cgi" ;
my @dmg = () ;
my @vipdata = () ;
my $alldamege= 0 ;
if(open(DMG,"$fff"))
{
@dmg = <DMG> ;
close(DMG) ;
}
foreach(@dmg)
{
@vipdata = split(/ /, $_);
$alldamege = $alldamege + $vipdata[3];
}
my $pay = 350 ;
if(!&wasteBE($GB,$pay)) {return 0;}
if( $alldamege < -300) {$MP = int(rand(100))+50;}
elsif($alldamege < -100) {$MP = int(rand(100))+50;}
elsif($alldamege < 0) {$MP = int(rand(200))+50;}
elsif($alldamege < 500) {$MP = int(rand(300))+50;}
else {$MP = int(rand(200))+50;}
$MP += 10 ;
$GB->{FORM}->{'MESSAGE'} .= "MP$pay<61>g<EFBFBD><67><EFBFBD>ĉ񕜂̎<F1959C82><CC8E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!<font color=blue><3E><><EFBFBD>~</font> $MP<4D>񕜂<EFBFBD><F1959C82><EFBFBD><EFBFBD>B<br>";
if(open(STP,">> $fff"))
{
print STP "$GB->{FORM}->{'DMDM'}\t$GB->{FORM}->{'MDMD'}\t$IP\t-$MP\n";
close(STP) ;
}
my $dn = @dmg + 1 ;
# my $td = $MP * $dn ;
my $td = $alldamege - $MP ;
$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD>̃X<CC83><58><EFBFBD><EFBFBD>$dn<64><6E><EFBFBD>ڂɉ񕜂̎<F1959C82><CC8E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󂯂<EFBFBD> ($td/$MX)<br>";
return 1;
}
sub VipQ2Stop
{
my ($GB) = @_ ;
my $MP = 150 ; #100 ;
my $MX = 2000 ; #1000 ;
my $PLUSATK = 0 ;
my $IP = $ENV{REMOTE_ADDR} ;
if($GB->{P22CH}) {$IP = $GB->{HOST2} ;} #IP from p2
if($GB->{FORM}->{bbs} eq 'news4vip') {$MX = 1000;}
if($GB->{FORM}->{bbs} eq 'news4viptasu') {$MX = int(rand(1000));}
if($GB->{FORM}->{bbs} eq 'anime4vip') {$MX = int(rand(1000));}
$GB->{NINNIN} = 0 ; #saku<6B>̎<EFBFBD><CC8E><EFBFBD>be<62>\<5C><>
$GB->{FORM}->{'MESSAGE'} .= "<br>---<br>";
if($GB->{BEpoints} < 8000) {$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>m<EFBFBD>̂ӂ‚<D382><C282>̍U<CC8D><55><br>";}
elsif($GB->{BEelite} eq 'BRZ'){$GB->{FORM}->{'MESSAGE'} .= "<22>v<EFBFBD>`<60>q<EFBFBD>[<5B><><EFBFBD>[<5B>̂<EFBFBD><CC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD>U<EFBFBD><55> <br>"; $PLUSATK = 5;}
elsif($GB->{BEelite} eq 'PLT'){$GB->{FORM}->{'MESSAGE'} .= "<22>܂ق<DC82><D982>‚<EFBFBD><C282><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̂‚<CC82><C282>߂̍U<CC8D><55> <br>"; $PLUSATK = 10;}
elsif($GB->{BEelite} eq 'DIA'){$GB->{FORM}->{'MESSAGE'} .= "<22>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>h<EFBFBD>v<EFBFBD><76><EFBFBD>[<5B>X<EFBFBD>g<EFBFBD>̂<EFBFBD><CC82>Ȃ<EFBFBD><C882>̍U<CC8D><55> <br>"; $PLUSATK = 15;}
elsif($GB->{BEelite} eq 'SOL'){$GB->{FORM}->{'MESSAGE'} .= "<22>^<5E>̗E<CC97>҂̂<D282><CC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̍U<CC8D><55> <br>"; $PLUSATK = 20;}
# my $fff = "../$GB->{FORM}->{bbs}/vip2" ;
my $fff = "/md/tmp/book" ;
if(!(-e $fff)) {mkdir($fff,0777);}
if(!(-e $fff)) {return 0;}
$fff .= "/$GB->{FORM}->{'key'}.cgi" ;
my @dmg = () ;
if(open(DMG,"$fff"))
{
@dmg = <DMG> ;
close(DMG) ;
}
foreach(@dmg)
{
# if($_ =~ /$GB->{FORM}->{'MDMD'}/ && $GB->{BEpoints} < 8000)
# if($_ =~ /$GB->{FORM}->{'MDMD'}/ && !$GB->{KABUU})
# if($_ =~ /$GB->{FORM}->{'MDMD'}/ && !$GB->{KABUU} && $GB->{FORM}->{bbs} ne 'news4viptasu')
if($_ =~ /$GB->{FORM}->{'MDMD'}/)
{
$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<br>";
return 0 ;
}
}
foreach(@dmg)
{
# if($_ =~ /$IP/ && $GB->{BEpoints} < 8000)
# if($_ =~ /$IP/ && !$GB->{KABUU})
# if($_ =~ /$IP/ && !$GB->{KABUU} && $GB->{FORM}->{bbs} ne 'news4viptasu')
if($_ =~ /$IP/)
{
$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Q<EFBFBD>B<br>";
return 0 ;
}
}
my @vipdata = () ;
my $alldamege= 0 ;
foreach(@dmg)
{
@vipdata = split(/ /, $_);
$alldamege = $alldamege + $vipdata[3];
}
my $mpmp = $MP + int(rand(300)) ;
if(!&wasteBE($GB,$mpmp)) {return 0;}
$GB->{FORM}->{'MESSAGE'} .= "MP$mpmp<6D>g<EFBFBD><67><EFBFBD>Ăւ<C482><D682>ۂ<EFBFBD><DB82>̎<EFBFBD><CC8E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<font color=red><3E><><EFBFBD>~</font> <20>i<EFBFBD>X<EFBFBD><58><EFBFBD>̃_<CC83><5F><EFBFBD>[<5B>W $alldamege<67>j <br>";
if(open(STP,">> $fff"))
{
print STP "$GB->{FORM}->{'DMDM'}\t$GB->{FORM}->{'MDMD'}\t$IP\t$MP\n";
close(STP) ;
}
my $dn = @dmg + 1 ;
# my $td = $MP * $dn ;
my $td = $alldamege + $MP ;
$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD>̃X<CC83><58><EFBFBD><EFBFBD>$dn<64><6E><EFBFBD>ڂ̃_<CC83><5F><EFBFBD>[<5B>W<EFBFBD><57><EFBFBD>󂯂<EFBFBD> ($td/$MX)<br>";
# $GB->{FORM}->{'MESSAGE'} .= "($GB->{BEelite})<br>";
if($GB->{KABUU})
{
if(open(STP,">> $fff"))
{
print STP "$GB->{FORM}->{'DMDM'}\t$GB->{FORM}->{'MDMD'}\t$IP\t$MP\n";
close(STP) ;
}
$td += $MP ;
$dn++ ;
$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>΂‚<CE82><C282><EFBFBD><EFBFBD><EFBFBD>!! <20><><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982>̃X<CC83><58><EFBFBD><EFBFBD>$dn<64><6E><EFBFBD>ڂ̃_<CC83><5F><EFBFBD>[<5B>W<EFBFBD><57><EFBFBD>󂯂<EFBFBD> ($td/$MX)<br>";
}
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($GB->{NOWTIME});
if($sec < 10)
{
if(open(STP,">> $fff"))
{
print STP "$GB->{FORM}->{'DMDM'}\t$GB->{FORM}->{'MDMD'}\t$IP\t$MP\n";
close(STP) ;
}
$td += $MP ;$dn++ ;
$GB->{FORM}->{'MESSAGE'} .= "<22>ڂ<EFBFBD><DA82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͂<EFBFBD><CD82>܂<EFBFBD><DC82><EFBFBD>!! <20><><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982>̃X<CC83><58><EFBFBD><EFBFBD>$dn<64><6E><EFBFBD>ڂ̃_<CC83><5F><EFBFBD>[<5B>W<EFBFBD><57><EFBFBD>󂯂<EFBFBD> ($td/$MX)<br>";
}
if($PLUSATK > 0)
{
if(open(STP,">> $fff"))
{
$MP = $PLUSATK;
print STP "$GB->{FORM}->{'DMDM'}\t$GB->{FORM}->{'MDMD'}\t$IP\t$MP\n";
close(STP) ;
$td += $MP ;
$dn++ ;
$GB->{FORM}->{'MESSAGE'} .= "<22>lj<EFBFBD><C789>U<EFBFBD><55>!! <20><><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982>̃X<CC83><58><EFBFBD><EFBFBD>$dn<64><6E><EFBFBD>ڂ̃_<CC83><5F><EFBFBD>[<5B>W<EFBFBD><57><EFBFBD>󂯂<EFBFBD> ($td/$MX)<br>";
}
}
if($td >= $MX)
{
&VipQ2Saku($GB,$GB->{FORM}->{bbs},$GB->{FORM}->{key}) ;
$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD>̃X<CC83><58><EFBFBD>́E<CD81>E<EFBFBD>E<br><br><3E><><EFBFBD>~<7E><><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B<br>";
$GB->{VIPQ2STOP} = 1 ; #<23>X<EFBFBD><58><EFBFBD>X<EFBFBD>g
}
return 1;
}
sub gotoBobon
{
my ($GB,$log,$ipip,$mes) = @_ ;
if($ipip =~ /[^0-9\.]/) {return 0;}
#<23>g<EFBFBD><67>
#</b><3E>c<EFBFBD>̖<EFBFBD><CC96><EFBFBD>(<28>֓<EFBFBD>)<b><><>2008/09/29(<28><>) 17:04:10.76 xN47qM/8O<><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><3E><><EFBFBD>񂱂<EFBFBD><F182B182>
#<>wb35proxy04.ezweb.ne.jp(05001018144926_mi.ezweb.ne.jp)<>59.135.38.174<> (2dec14b8c0e2be97b74d845f3be5ced0 hardkitayo@yahoo.co.jp)<>KDDI-SH31 UP.Browser/6.2.0.10.3.5 (GUI) MMP/2.0
#P2
#</b><3E>l<EFBFBD>\<5C><>(<28><><EFBFBD>ʌ<EFBFBD>)<b><><>2008/09/29(<28><>) 16:28:58.51 UZXBNes+P<><3E>ynews<77>z<EFBFBD>j<EFBFBD><6A><EFBFBD>[<5B>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>^<5E>p<EFBFBD><70><EFBFBD><EFBFBD>13<><3E>p<EFBFBD>X<EFBFBD>ύX<CF8D>ɂ<EFBFBD><C982><EFBFBD>saku<6B><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ɓg<C681>܂<EFBFBD><DC82>́hIP<49><50><EFBFBD><EFBFBD><E782B3><EFBFBD><EFBFBD><E982A9><EFBFBD>A<EFBFBD>C<EFBFBD><43><EFBFBD>‚<EFBFBD><C282><EFBFBD><EFBFBD>I
#<>cw43.razil.jp(462143)219.182.232.16<>210.135.98.43<> (85c00438802bac3606f3a3edbd96bbe9 iressa01@yahoo.co.jp)<>Monazilla/1.00 (P2/p2.2ch.net; p2-client-ip:
$log =~ /\((\S+)\)[0-9\.]*<>[0-9\.]+<>/ ;
my $yaki = $1 ;
my $rhost = gethostbyaddr(pack('c4',split(/\./, $ipip)), 2) || $ipip;
if($rhost =~ /docomo.ne.jp$/) {return "<22>Ă<EFBFBD><C482>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD> docomo[$yaki]";}
if($rhost =~ /ezweb.ne.jp$/) {return "<22>Ă<EFBFBD><C482>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD> AU[$yaki]";}
if($rhost =~ /jp-\w.ne.jp$/) {return "<22>Ă<EFBFBD><C482>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD> softbank[$yaki]";}
if($rhost =~ /vodafone.ne.jp$/) {return "<22>Ă<EFBFBD><C482>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD> softbank[$yaki]";}
if($rhost =~ /\.razil.jp$/) {return "<22>Ă<EFBFBD><C482>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD> P2[$yaki]";}
if($rhost =~ /\.maido3.com$/) {return "<22><><EFBFBD><EFBFBD><EFBFBD>͏Ă<CD8F><C482>Ȃ<EFBFBD>1";}
if($rhost =~ /\.ibis.ne.jp$/) {return "ibis<69>͂܂<CD82><DC82>Ή<EFBFBD><CE89><EFBFBD><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD><C882>̂<EFBFBD>";}
if($rhost =~ /\.jig.jp$/) {return "jig<69>͂܂<CD82><DC82>Ή<EFBFBD><CE89><EFBFBD><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD><C882>̂<EFBFBD>";}
my $bburl = "http://qb6.2ch.net/test/asokin/kiri.cgi?ox=$ipip&key=$mes&cow=274";
my $ua = LWP::UserAgent->new();
$ua->agent('Mozilla/5.0 FOX(2ch.se)');
$ua->timeout(3);
my $request = HTTP::Request->new('GET', $bburl);
my $response = $ua->request($request) ;#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> GET <20><><EFBFBD><EFBFBD>
return "<22><><EFBFBD><EFBFBD>";
}
sub VipQ2Saku
{
my ($GB,$bbs,$key) = @_ ;
#$GB->{FORM}->{'MESSAGE'} .= "VipQ2Saku<br>";
my $logdat = "../../test/ggg/" . $bbs . "dat/" . $key . ".cgi";
if(!open(LXX,"$logdat")) {return 0;}
#$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><br>";
my @lxx = <LXX> ;
close(LXX) ;
my $gxx = $lxx[0] ;
#(0a9a9eea0582eb7fad96dcbb0333de29 yakin@80.kg)<>
$gxx =~ / \(([0-9a-z]+) (\S+)\)<>/;
my $gx1 = $1 ;
my $gx2 = $2 ;
if($gx1 && $gx2)
{
my $sp = 300 ; # <20><><EFBFBD>{<7B>l
$sp += int(rand(800)) ; # <20><><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD><EFBFBD>Z
if($GB->{KABUU}) {$sp *= 5;} # <20><><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD>҉<EFBFBD><D289>Z
if(&wasteBEx($GB,$gx2,$gx1,$sp))
{
$GB->{FORM}->{'MESSAGE'} .= "<font size=+1 face=\"Arial\" color=red><b>$sp</b></font> saku<6B><75><EFBFBD><EFBFBD><br>";
}
else
{#<23>p<EFBFBD>X<EFBFBD><58><EFBFBD>[<5B>h<EFBFBD>ύX<CF8D>œ<EFBFBD><C593><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ƃ<EFBFBD><C682>̓{<7B>{<7B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
my $bxx = $lxx[0] ;
$bxx =~ /<>([0-9\.]+)<>/ ;
my $ipip = $1 ;
my $rr = &gotoBobon($GB,$bxx,$ipip,"vip2:saku:($bbs)") ;
$GB->{FORM}->{'MESSAGE'} .= "<font color=red><3E>i<EFBFBD>P<EFBFBD>[<5B>P<EFBFBD>j<EFBFBD>j<EFBFBD><6A><EFBFBD><EFBFBD><EFBFBD>b</font> ($rr)<br>";
}
}
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
#$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?<br>";
my $mxx = $lxx[0] ;
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><><>2007/12/24(<28><>) 03:47:54.75 5vawQ6AY0<><3E><><EFBFBD><EFBFBD><EA82BD><>
#<23><><EFBFBD>̈ꎞ<CC88><EA8E9E><EFBFBD>~<7E>̃e<CC83>X<EFBFBD>g<>KD125055017119.ppp-bb.dion.ne.jp[tjuTdvdhyupQ06ao]<>125.55.17.119<>tjuTdvdhyupQ06ao ( )<>Monazilla/1.00 (JaneView/0.1.12.1)
#[tjuTdvdhyupQ06ao]
my ($d1,$d2,$d3,$d4,$d5,$d6,$d7,$d8,$d9) = split(/<>/,$mxx) ;
$d6 =~ /\[([a-zA-Z0-9]+)\]/;
my $mx1 = $1 ;
my $mx2 = $1 ;
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","d6=[$mx1][$d6][$mxx]");
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","d6=[$mx1][$d6]");
if(length($mx1) eq 16)
{
$mx1 =~ s/\//\)/g;
$mx1 =~ s/\./\(/g;
my $logdat = "../../test/ggg/" . $bbs . "dat/" . $mx1 . ".cgi";
if(open(YAKI,"> $logdat"))
{
print YAKI "$mx2";
close(YAKI) ;
}
$GB->{FORM}->{'MESSAGE'} .= "<br><font color=red><3E><><EFBFBD>́<EFBFBD><CC81>͂<EFBFBD><CD82>΂炭<CE82>̊ԃX<D483><58><EFBFBD><EFBFBD><EFBFBD>Ăł<C482><C582>Ȃ<EFBFBD><C882>Ȃ<EFBFBD><C882>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B</font><br><br>";
}
return 0;
}
sub VipQ2MaruyakiON
{
my ($GB) = @_ ;
if($GB->{FORM}->{bbs} ne 'news') {return 1;}
if($GB->{FORM}->{bbs} ne 'news4vip') {return 1;}
if($GB->{FORM}->{bbs} ne 'news4viptasu'){return 1;}
return 0 ;
}
sub VipQ2MaruyakiCheck
{
my ($GB) = @_ ;
if(!VipQ2MaruyakiON($GB)) {return 0;}
if(!$GB->{MARU}) {return 0;}
my $mx1 = $GB->{MARU} ;
$mx1 =~ s/\//\)/g;
$mx1 =~ s/\./\(/g;
my $logdat = "../../test/ggg/" . $GB->{FORM}->{bbs} . "dat/" . $mx1 . ".cgi";
if(-e $logdat)
{
my ($prsize,$prmtime)= ();
($prsize, $prmtime) = (local $_=stat($logdat)) ? ($_->size, $_->mtime) : (0, 0);
my $ctime = 0;
$ctime = time;
my $keika = $ctime - $prmtime ;
my $ato = 6*60*60 - $keika ;
if($ato > 0)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD>́<EFBFBD><CC81>͂<EFBFBD><CD82>΂炭<CE82>̊ԃX<D483><58><EFBFBD><EFBFBD><EFBFBD>Ăł<C482><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B[<5B><><EFBFBD><EFBFBD>$ato<74>b](saku<6B>S<EFBFBD><53>)");
}
else
{
unlink($logdat) ;
}
}
}
sub wasteBE()
{
my ($GB,$mp) = @_ ;
return &wasteBEx($GB,$GB->{FORM}->{'DMDM'},$GB->{FORM}->{'MDMD'},$mp);
}
sub wasteBEx()
{
my ($GB,$DMDM,$MDMD,$mp) = @_ ;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Status;
my $path = "d=$DMDM&m=$MDMD";
my $ua = LWP::UserAgent->new();
$ua->timeout(3);
my $request = HTTP::Request->new('GET', 'http://be.2ch.net/test/v.php?' . $path);
my $response = $ua->request($request) ;#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> GET <20><><EFBFBD><EFBFBD>
my $response_body = $response->content();#GET<45>̌<EFBFBD><CC8C>ʂ͂<CA82><CD82><EFBFBD><EFBFBD>ɓ<EFBFBD><C993><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
my $db_content = $response->content();
my ($user_points, $xxx) = split(/ /, $db_content);
if($xxx eq '')
{
$GB->{FORM}->{'MESSAGE'} .= "<22><><EFBFBD>O<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>ĂȂ<C482><C882>ł<EFBFBD><C582>B<br>";
return 0 ;
}
my $BEpoints = $user_points ;
my $BExxx = $xxx ;
if($BEpoints < $mp)
{
$GB->{FORM}->{'MESSAGE'} .= "MP<4D><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B($mp/$BEpoints)";
return 0 ;
}
my $uiui = &rulaPayCost($DMDM,$MDMD,$BExxx,$mp);
if($uiui eq '<27>ʐM<CA90>G<EFBFBD><47><EFBFBD>[')
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","be<62>T<EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>E<EFBFBD>E<EFBFBD>E");
}
if($uiui =~ /insufficient points/)
{
$GB->{FORM}->{'MESSAGE'} .= '<27>}<7D><><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>B<EFBFBD>B<EFBFBD>B<br>';
return 0 ;
}
return 1;
}
#########################################
# BE <20>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>
#########################################
sub rulaPayCost
{
my ($DMDM,$MDMD,$xxx,$ccc) = @_ ;
#http://be.2ch.net/test/delp.php?delp=1&i=570402296&d=1&poi=uirou1289&b=1
my $path = "delp=$ccc&i=$xxx&d=1&b=1&poi=uirou1289";
my $ua = LWP::UserAgent->new();
$ua->agent('Mozilla/5.0 Rula');
$ua->timeout(5);
my $request = HTTP::Request->new('GET', 'http://be.2ch.net/test/delp.php?' . $path);
$request -> header('Cookie' => "DMDM=$DMDM; MDMD=$MDMD; FOX=ehehe; ");
my $response = $ua->request($request) ;#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> GET <20><><EFBFBD><EFBFBD>
my $response_code = $response->code() ;#<23><><EFBFBD>ʂ͂<CA82><CD82><EFBFBD><EFBFBD>ɓ<EFBFBD><C993><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
my $response_body = $response->content() ;#GET<45>̌<EFBFBD><CC8C>ʂ͂<CA82><CD82><EFBFBD><EFBFBD>ɓ<EFBFBD><C993><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
# <20>G<EFBFBD><47><EFBFBD>[<5B>`<60>F<EFBFBD>b<EFBFBD>N
if ($response->is_error)
{
return "<22>ʐM<CA90>G<EFBFBD><47><EFBFBD>[";
}
return $response_body ;
}
#############################################################################
# <09><><EFBFBD><EFBFBD><EFBFBD>z -> <20>s<EFBFBD><73><EFBFBD>{<7B><><EFBFBD><EFBFBD>
#############################################################################
sub area47
{
my ($GB) = @_;
my @kenmei = () ;
@kenmei = (
'<27><><EFBFBD><EFBFBD>','<27>k<EFBFBD>C<EFBFBD><43>','<27>X<C290><58>','<27><><EFBFBD>茧','<27>{<7B>錧','<27>H<EFBFBD>c<EFBFBD><63>','<27>R<EFBFBD>`<60><>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>錧','<27>Ȗ،<C896>',
'<27>Q<EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD>ʌ<EFBFBD>','<27><><EFBFBD>t<EFBFBD><74>','<27><><EFBFBD><EFBFBD><EFBFBD>s','<27>_<EFBFBD>ސ쌧','<27>V<EFBFBD><56><EFBFBD><EFBFBD>','<27>x<EFBFBD>R<EFBFBD><52>','<27>ΐ쌧','<27><><EFBFBD>䌧','<27>R<EFBFBD><52><EFBFBD><EFBFBD>',
'<27><><EFBFBD>쌧','<27>򕌌<EFBFBD>','<27>É<EFBFBD><C389><EFBFBD>','<27><><EFBFBD>m<EFBFBD><6D>','<27>O<EFBFBD>d<EFBFBD><64>','<27><><EFBFBD>ꌧ','<27><><EFBFBD>s<EFBFBD>{','<27><><EFBFBD><EFBFBD><EFBFBD>{','<27><><EFBFBD>Ɍ<EFBFBD>','<27>ޗnj<DE97>',
'<27>a<EFBFBD>̎R<CC8E><52>','<27><><EFBFBD>挧','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>R<EFBFBD><52>','<27>L<EFBFBD><4C><EFBFBD><EFBFBD>','<27>R<EFBFBD><52><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>쌧','<27><><EFBFBD>Q<EFBFBD><51>','<27><><EFBFBD>m<EFBFBD><6D>',
'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>ꌧ','<27><><EFBFBD>茧','<27>F<EFBFBD>{<7B><>','<27><EFBFBD><E595AA>','<27>{<7B>茧','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>ꌧ','<27><><EFBFBD>p','<27>s<EFBFBD><73><EFBFBD><EFBFBD>softbank',
'<27><><EFBFBD>k<EFBFBD>n<EFBFBD><6E>','<27>֓<EFBFBD><D693>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>','<27>֐<EFBFBD><D690>n<EFBFBD><6E>','<27>l<EFBFBD><6C><EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD>B<EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>{','<27><><EFBFBD><EFBFBD><EFBFBD>{','CATV-infoweb',
'<27><>','<27><>','62','63','64','dion<6F>R','<27>c<EFBFBD>ɂ<EFBFBD><C982>ł<EFBFBD>','catv?','<27><><EFBFBD><EFBFBD>','<27>`<60>x<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',
'<27>k<EFBFBD><6B><EFBFBD>n<EFBFBD><6E>','<27>R<EFBFBD>A<EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD><6C>','73','74','75','76','<27>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>J','<27>L<EFBFBD><4C><EFBFBD>`<60><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>S<EFBFBD><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',
'USA','<27>J<EFBFBD>i<EFBFBD>_','82','83','84','85','86','87','<27>ɐ<EFBFBD>','<27>n<EFBFBD><6E>',
'<27>`<60><>') ;
if($GB->{FORM}->{bbs} eq 'news12345')
{
@kenmei = (
'<27><><EFBFBD>l','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>쌧','<27>Q<EFBFBD>n<EFBFBD><6E>','<27>{<7B>錧','<27><><EFBFBD>ꌧ','<27>{<7B>茧','<27><><EFBFBD>ꌧ','<27><><EFBFBD>錧','<27><><EFBFBD>m<EFBFBD><6D>',
'<27><><EFBFBD>R<EFBFBD><52>','<27><><EFBFBD><EFBFBD><EFBFBD>{','<27>H<EFBFBD>c<EFBFBD><63>','<27><><EFBFBD>ʌ<EFBFBD>','<27><><EFBFBD>m<EFBFBD><6D>','<27>V<EFBFBD><56><EFBFBD><EFBFBD>','<27><EFBFBD><E595AA>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>É<EFBFBD><C389><EFBFBD>','<27><><EFBFBD>茧',
'<27><><EFBFBD>쌧','<27><><EFBFBD>Q<EFBFBD><51>','<27><><EFBFBD>挧','<27>_<EFBFBD>ސ쌧','<27>O<EFBFBD>d<EFBFBD><64>','<27><><EFBFBD>Ɍ<EFBFBD>','<27><><EFBFBD>s<EFBFBD>{','<27><><EFBFBD><EFBFBD><EFBFBD>s','<27><><EFBFBD>ꌧ','<27>ޗnj<DE97>',
'<27>a<EFBFBD>̎R<CC8E><52>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>F<EFBFBD>{<7B><>','<27>R<EFBFBD>`<60><>','<27>ΐ쌧','<27>x<EFBFBD>R<EFBFBD><52>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>t<EFBFBD><74>','<27><><EFBFBD>䌧','<27>򕌌<EFBFBD>',
'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>k<EFBFBD>C<EFBFBD><43>','<27>R<EFBFBD><52><EFBFBD><EFBFBD>','<27>R<EFBFBD><52><EFBFBD><EFBFBD>','<27><><EFBFBD>茧','<27>L<EFBFBD><4C><EFBFBD><EFBFBD>','<27>Ȗ،<C896>','<27>X<C290><58>','<27><><EFBFBD>p','<27><><EFBFBD><EFBFBD>',
'<27>֓<EFBFBD><D693>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>','<27>֐<EFBFBD><D690>n<EFBFBD><6E>','<27>l<EFBFBD><6C><EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD>B<EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>{','<27><><EFBFBD><EFBFBD><EFBFBD>{','<27><><EFBFBD>k<EFBFBD>n<EFBFBD><6E>','CATV-infoweb',
'<27><>','<27><>','62','63','64','<27>v<EFBFBD><76><EFBFBD><EFBFBD>','<27>c<EFBFBD>ɂ<EFBFBD><C982>ł<EFBFBD>','<27>]<5D><>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>',
'<27>k<EFBFBD><6B><EFBFBD>n<EFBFBD><6E>','<27>R<EFBFBD>A<EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD><6C>','73','74','75','76','<27>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>J','<27>l<EFBFBD>u<EFBFBD><75><EFBFBD>X<EFBFBD>J<EFBFBD>B','<27>R<EFBFBD>l<EFBFBD>`<60>J<EFBFBD>b<EFBFBD>g<EFBFBD>B',
'USA','<27>J<EFBFBD>i<EFBFBD>_','82','83','84','85','86','87','88','<27>n<EFBFBD><6E>',
'<27>`<60><>') ;
}
if($GB->{FORM}->{bbs} eq 'campus')
{
@kenmei = (
'<27><><EFBFBD>l','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>쌧','<27>Q<EFBFBD>n<EFBFBD><6E>','<27>{<7B>錧','<27><><EFBFBD>ꌧ','<27>{<7B>茧','<27><><EFBFBD>ꌧ','<27><><EFBFBD>錧','<27><><EFBFBD>m<EFBFBD><6D>',
'<27><><EFBFBD>R<EFBFBD><52>','<27><><EFBFBD><EFBFBD><EFBFBD>{','<27>H<EFBFBD>c<EFBFBD><63>','<27><><EFBFBD>ʌ<EFBFBD>','<27><><EFBFBD>m<EFBFBD><6D>','<27>V<EFBFBD><56><EFBFBD><EFBFBD>','<27><EFBFBD><E595AA>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>É<EFBFBD><C389><EFBFBD>','<27><><EFBFBD>茧',
'<27><><EFBFBD>쌧','<27><><EFBFBD>Q<EFBFBD><51>','<27><><EFBFBD>挧','<27>_<EFBFBD>ސ쌧','<27>O<EFBFBD>d<EFBFBD><64>','<27><><EFBFBD>Ɍ<EFBFBD>','<27><><EFBFBD>s<EFBFBD>{','<27><><EFBFBD><EFBFBD><EFBFBD>s','<27><><EFBFBD>ꌧ','<27>ޗnj<DE97>',
'<27>a<EFBFBD>̎R<CC8E><52>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>F<EFBFBD>{<7B><>','<27>R<EFBFBD>`<60><>','<27>ΐ쌧','<27>x<EFBFBD>R<EFBFBD><52>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>t<EFBFBD><74>','<27><><EFBFBD>䌧','<27>򕌌<EFBFBD>',
'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>k<EFBFBD>C<EFBFBD><43>','<27>R<EFBFBD><52><EFBFBD><EFBFBD>','<27>R<EFBFBD><52><EFBFBD><EFBFBD>','<27><><EFBFBD>茧','<27>L<EFBFBD><4C><EFBFBD><EFBFBD>','<27>Ȗ،<C896>','<27>X<C290><58>','<27><><EFBFBD>p','<27><><EFBFBD><EFBFBD>',
'<27>֓<EFBFBD><D693>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>','<27>֐<EFBFBD><D690>n<EFBFBD><6E>','<27>l<EFBFBD><6C><EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD>B<EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>{','<27><><EFBFBD><EFBFBD><EFBFBD>{','<27><><EFBFBD>k<EFBFBD>n<EFBFBD><6E>','CATV-infoweb',
'<27><>','<27><>','62','63','64','<27>v<EFBFBD><76><EFBFBD><EFBFBD>','<27>c<EFBFBD>ɂ<EFBFBD><C982>ł<EFBFBD>','<27>]<5D><>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>',
'<27>k<EFBFBD><6B><EFBFBD>n<EFBFBD><6E>','<27>R<EFBFBD>A<EFBFBD>n<EFBFBD><6E>','<27><><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD><6C>','73','74','75','76','77','<27>l<EFBFBD>u<EFBFBD><75><EFBFBD>X<EFBFBD>J<EFBFBD>B','<27>R<EFBFBD>l<EFBFBD>`<60>J<EFBFBD>b<EFBFBD>g<EFBFBD>B',
'USA','<27>J<EFBFBD>i<EFBFBD>_','82','83','84','85','86','87','88','<27>n<EFBFBD><6E>',
'<27>`<60><>') ;
}
if($GB->{FORM}->{bbs} eq 'newsnewsnews')
{
@kenmei = (
'<27>Ζ<EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>񂱂<EFBFBD><F182B182><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂ڂ<DC82>','<27><><EFBFBD><EFBFBD><E882BD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27>Ȃ<EFBFBD><C882>Ƃ<EFBFBD>','<27><><EFBFBD><EFBFBD><E582A4>',
'<27><><EFBFBD><EFBFBD><EFBFBD>ɂႭ','<27><><EFBFBD>܂ނ<DC82>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>񂶂<EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD>','<27><><EFBFBD>ɂ<EFBFBD><C982><EFBFBD>','<27>Ԃ<EFBFBD>','<27><><EFBFBD>Ԃ炸<D482><E782B8>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>傤','<27>ق<EFBFBD><D982>Ƃ<EFBFBD>',
'<27><><EFBFBD>΃<EFBFBD><CE83><EFBFBD><EFBFBD>[','<27><><EFBFBD><EFBFBD>','<27>͂<EFBFBD><CD82>؂<EFBFBD>','<27><><EFBFBD>X<EFBFBD>J<EFBFBD>c','<27><><EFBFBD><EFBFBD><EFBFBD>ӂ<EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>i','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>₫','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>',
'<27><><EFBFBD>߂ڂ<DF82>','<27>Ȃ<EFBFBD>','<27>ǂ낦<C782><EB82A6>','<27><><EFBFBD>т<EFBFBD><D182><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>݂<EFBFBD><DD82>\<5C><>','<27>ӂ<EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>ǂ<EFBFBD>','<27>݂<EFBFBD><DD82><EFBFBD>','<27><><EFBFBD>‚<EFBFBD>',
'<27><><EFBFBD><EFBFBD>','<27>Ƃ<EFBFBD><C682><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۂ<EFBFBD>','<27>n<EFBFBD>h<EFBFBD><68>','<27>J<EFBFBD>{<7B>X','<27><><EFBFBD>̂܂<CC82><DC82><EFBFBD>','<27><><EFBFBD>|','<27>A<EFBFBD><41>','<27>΂Ȃ<CE82>','<27>L<EFBFBD><4C><EFBFBD>`',
'<27><><EFBFBD><EFBFBD>','<27><><EFBFBD>]','<27><><EFBFBD><EFBFBD>','<27>̉<EFBFBD>','<27><><EFBFBD>ԍ]','<27>C<EFBFBD><43>','<27>K<EFBFBD><4B><EFBFBD>]','<27><><EFBFBD><EFBFBD>','<27>t<EFBFBD><74>','<27>E<EFBFBD>C<EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD>',
'<27><EFBFBD><ED82BD><EFBFBD><EFBFBD>','<27>w<EFBFBD><77>','62','63','64','<27><>','<27>c<EFBFBD>ɂ<EFBFBD><C982>ł<EFBFBD>','<27>v<EFBFBD>[<5B>A<EFBFBD><41><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27>Ζk<CE96><6B>',
'<27><><EFBFBD><EFBFBD>','<27>`<60><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>~<7E><><EFBFBD>I<EFBFBD><49>','73','74','75','76','77','<27>ɔJ<C994><4A>','<27>Ïl<C38F><6C>',
'USA','<27>J<EFBFBD>i<EFBFBD>_','82','83','84','85','86','87','88','<27>n<EFBFBD><6E>',
'<27>|<7C><>') ;
}
my $xkenban = &area47s0($GB) ;
my $kenban = int($xkenban) ;
if($kenban >90000) {return "";}
if($kenban < 1)
{
if($xkenban) {return $xkenban;}
$kenban = 0 ;
}
if($kenban > 90) {$kenban = 90;}
return $kenmei[$kenban] ;
}
sub area47s0
{
my ($GB) = @_;
my $remo = $GB->{HOST29}; #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9838A><EFBFBD>z
#return "<22><><EFBFBD>͂<EFBFBD>";
#P2<50>̎<EFBFBD><CC8E>̓<EFBFBD><CD83>b<EFBFBD>N<EFBFBD>A<EFBFBD>b<EFBFBD>v
if($GB->{P22CH})
{
my $p2r = "";
#return "<22>A<EFBFBD>C<EFBFBD>_<EFBFBD>z<EFBFBD>B";X-P2-Mobile-Serial-BBM
if($ENV{HTTP_USER_AGENT} =~ /p2-client-ip: (\d+\.\d+\.\d+\.\d+)/)
{
$p2r = $1;
# <20><><EFBFBD><EFBFBD><EFBFBD>[<5B>g<EFBFBD>z<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD>^<5E><><EFBFBD><EFBFBD>(<28>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E682A4>)
$remo = gethostbyaddr(pack('C4',split(/\./, $p2r)), 2) || $p2r;
}
else
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>i<EFBFBD><69><EFBFBD>֎~");
}
##<23>g<EFBFBD>ьŗL<C597>ԍ<EFBFBD><D48D>
if(&mumumuIsIP4EZWeb($p2r))
{
my $ser = $ENV{HTTP_X_P2_MOBILE_SERIAL_BBM} ;
#if(open(LX,">> HOST29.000")){print LX "(P2:AU)$remo($ser)\n";close(LX);}
if($ser eq ''){&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>[<5B><><EFBFBD>ŗL<C597><4C><EFBFBD><EFBFBD><EFBFBD>𑗐M<F0919790><4D><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B");}
}
elsif(&mumumuIsIP4IMode($p2r))
{
my $ser = $ENV{HTTP_X_P2_MOBILE_SERIAL_BBM} ;
#if(open(LX,">> HOST29.000")){print LX "(P2:Docomo)$remo($ser)\n";close(LX);}
if($ser eq ''){&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>[<5B><><EFBFBD>ŗL<C597><4C><EFBFBD><EFBFBD><EFBFBD>𑗐M<F0919790><4D><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B");}
}
elsif(&mumumuIsIP4Vodafone($p2r))
{
my $ser = $ENV{HTTP_X_P2_MOBILE_SERIAL_BBM} ;
#if(open(LX,">> HOST29.000")){print LX "(P2:SB)$remo($ser)\n";close(LX);}
if($ser eq ''){&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>[<5B><><EFBFBD>ŗL<C597><4C><EFBFBD><EFBFBD><EFBFBD>𑗐M<F0919790><4D><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B");}
}
}
if($remo =~ /\.go\.jp$/) {return "<22>ɐ<EFBFBD>";}
if($remo =~ /\.tw$/) {return "<22><>";}
if($remo =~ /\.cn$/) {return "<22><>";}
if($remo =~ /\.kr$/) {return "<22><>";}
if($remo =~ /\.kp$/) {return "<22><>";}
if($remo =~ /\.de$/) {return "<22><>";}
if($remo =~ /\.us$/) {return "<22><>";}
if($remo =~ /\.fr$/) {return "<22><>";}
if($remo =~ /\.uk$/) {return "<22>p";}
if($remo =~ /\.is$/) {return "<22>A<EFBFBD>C<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>h";}
if($remo =~ /\.au$/) {return "<22><>";}
if($remo =~ /\.ca$/) {return "<22><>";}
if($remo =~ /\.br$/) {return "<22>u<EFBFBD><75><EFBFBD>W<EFBFBD><57>";}
if($remo =~ /\d+\.\d+\.\d+\.\d+$/) {return "<22>A<EFBFBD><41><EFBFBD>r<EFBFBD>A";}
# SB
if($remo =~ /jp-.\.ne\.jp/)
{
#J<>t<EFBFBD>H<EFBFBD><48><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{
if($remo =~ /jp-d\.ne\.jp/){return "<22>k<EFBFBD>C<EFBFBD><43>";}
if($remo =~ /jp-h\.ne\.jp/){return "<22><><EFBFBD>k<EFBFBD>E<EFBFBD>V<EFBFBD><56>";}
if($remo =~ /jp-t\.ne\.jp/){return "<22>֓<EFBFBD><D693>E<EFBFBD>b<EFBFBD>M<EFBFBD>z";}
#J<>t<EFBFBD>H<EFBFBD><48><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{
if($remo =~ /jp-k\.ne\.jp/){return "<22>֐<EFBFBD>";}
if($remo =~ /jp-r\.ne\.jp/){return "<22>k<EFBFBD><6B>";}
if($remo =~ /jp-s\.ne\.jp/){return "<22>l<EFBFBD><6C>";}
if($remo =~ /jp-n\.ne\.jp/){return "<22><><EFBFBD><EFBFBD>";}
if($remo =~ /jp-q\.ne\.jp/){return "<22><><EFBFBD>B<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD>";}
#<23>i<EFBFBD>t<EFBFBD>H<EFBFBD><48><EFBFBD><EFBFBD><EFBFBD>C jp-c.ne.jp
if($remo =~ /jp-c\.ne\.jp/){return "<22><><EFBFBD>C";}
return 77;
}
# AU
if($remo =~ /\.ezweb\.ne\.jp/)
{
if($GB->{IDNOTANE} =~ /^0500101/) {return "<22>֓<EFBFBD>";}
if($GB->{IDNOTANE} =~ /^0500103/) {return "<22><><EFBFBD>C";}
if($GB->{IDNOTANE} =~ /^0500401/) {return "<22>֓<EFBFBD><D693>E<EFBFBD>b<EFBFBD>M<EFBFBD>z";}
if($GB->{IDNOTANE} =~ /^0500403/) {return "<22><><EFBFBD>C";}
if($GB->{IDNOTANE} =~ /^0500405/) {return "-<2D><><EFBFBD><EFBFBD>";}
if($GB->{IDNOTANE} =~ /^050/) {return "<22><><EFBFBD>C<EFBFBD>E<EFBFBD>֓<EFBFBD>";}
if($GB->{IDNOTANE} =~ /^0700/) {return "<22>֐<EFBFBD><D690>E<EFBFBD>k<EFBFBD><6B>";}
if($GB->{IDNOTANE} =~ /^0701/) {return "<22><><EFBFBD>B";}
if($GB->{IDNOTANE} =~ /^07022/) {return "<22>R<EFBFBD>z";}
if($GB->{IDNOTANE} =~ /^0702/) {return "<22><><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>l<EFBFBD><6C>";}
if($GB->{IDNOTANE} =~ /^0703/) {return "<22>V<EFBFBD><56><EFBFBD>E<EFBFBD><45><EFBFBD>k";}
if($GB->{IDNOTANE} =~ /^0704/) {return "<22>k<EFBFBD><6B><EFBFBD>n<EFBFBD><6E>";}
if($GB->{IDNOTANE} =~ /^0705/) {return "<22>k<EFBFBD>C<EFBFBD><43>";}
if($GB->{IDNOTANE} =~ /^0706/) {return "<22>l<EFBFBD><6C>";}
if($GB->{IDNOTANE} =~ /^0707/) {return "<22><><EFBFBD>B<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD>";}
if($GB->{IDNOTANE} =~ /^070/) {return "au-<2D>֓<EFBFBD><D693>ȊO";}
#if(open(LX,">> HOST29.000")){print LX "(AU)$remo($GB->{IDNOTANE})\n";close(LX);}
return 78;
}
if($remo =~ /proxy(\d+)\.docomo\.ne\.jp/)
{
my $ppp = $1 ;
return 79 ;
}
#<23>g<EFBFBD>т̓X<CD83><58><EFBFBD>[
if($GB->{KEITAI})
{
return 78;
}
if($remo =~ /s(\d+)\.a(\d+)\.ap\.plala\.or\.jp$/)
{
my $pll = int($2);
if($pll eq 48) {return 68;}
return $pll;
}
# if($remo =~ /ap(\d+)\.ftth\.ucom\.ne\.jp$/) {return 32;}
if($remo =~ /\.eonet\.ne\.jp$/) {return 53;}
if($remo =~ /\.megaegg\.ne\.jp$/) {return 55;}
if($remo =~ /w\d+.eacc.dti.ne.jp$/) {return 57;}
if($remo =~ /e\d+.eacc.dti.ne.jp$/) {return 58;}
if($remo =~ /\.freed\.dti\.ne\.jp$/) {return 60;}
if($remo =~ /\.air-[a-z\d+-]+\.dti\.ne\.jp$/) {return 60;}
if($remo =~ /\.sec\.nifty\.com$/) {return 69;}
if($remo =~ /\.iij4u\.or\.jp$/) {return 69;}
if($remo =~ /\.bbexcite\.jp$/) {return 69;}
if($remo =~ /\.doubleroute\.jp$/) {return 69;}
if($remo =~ /\.prin\.ne\.jp$/) {return 69;}
if($remo =~ /\.ucom\.ne\.jp$/) {return 69;}
if($remo =~ /\.valley\.ne\.jp$/) {return 69;}
if($remo =~ /\.t-com\.ne\.jp$/) {return 69;}
if($remo =~ /\.yournet\.ne\.jp$/) {return 69;}
if($remo =~ /\.tiki\.ne\.jp$/) {return 69;}
if($remo =~ /\.atfreed\.alpha-net\.ne\.jp$/) {return 61;}
if($remo =~ /\.du\.alpha-net\.ne\.jp$/) {return 61;}
if($remo =~ /\.point\.ne\.jp$/) {return 51;}
if($remo =~ /userreverse\.dion\.ne\.jp$/) {return 65;}
# namazuplus<75>p(89 = <20>n<EFBFBD><6E>)
if($remo =~ /banana3104\.maido3\.com$/) {return 89;}
if($remo =~ /(\S+)\.(ppp|ppp\-bb)\.dion\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47dion($GB,$remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /(\S+)\.asahi-net\.or\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47asahinet($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /(\S+)\.rev\.home\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47home($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /(\S+)\.2iij\.net$/)
{
my $ken = $1 ;
my $kenban = &area472iij($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.(\S+)\.ocn\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47ocn($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.([\w-]+)\d\d\.ap\.so-net\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47sonet($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /-([a-z]+)-\d+\.[a-z\d\-]+\.enjoy\.ne\.jp$/)
{
my $ken = $1 ;
if(length($ken) eq 3)
{
my $kenban = &area47mesh($remo,$ken);
if($kenban) {return $kenban;}
}
elsif(length($ken) eq 4)
{
my $kenban = &area47sonet($remo,$ken);
if($kenban) {return $kenban;}
}
}
if($remo =~ /\.([a-z\d\-]+)\.enjoy\.ne\.jp$/)
{
my $ken = $1 ;
if(length($ken) eq 3)
{
my $kenban = &area47mesh($remo,$ken);
if($kenban) {return $kenban;}
}
elsif(length($ken) eq 4)
{
my $kenban = &area47sonet($remo,$ken);
if($kenban) {return $kenban;}
}
}
if($remo =~ /(\S+)\.ppp\.infoweb\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47infoweb($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /(\S+)\.odn\.(ad|ne)\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47odn($GB,$remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.([a-z\-]+)\.nttpc\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47nttpc($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.([a-z]+)\.sannet\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47dti($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.([a-z]+)\.acca\.dti\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47dti($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.([a-z]+)-ip\.dti\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47dti($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.([a-z]+)\.[a-z]+\.alpha-net\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47dti($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /([a-z]+)\d+-p\d+\.[a-z]+\.hi-ho\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47hiho($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.(\S+)\.mesh\.ad\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47mesh($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /(\S+)\.ppp\.u-netsurf\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47unetsurf($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /softbank(\d\d\d\d\d\d)\d+\.bbtec\.net$/)
{
my $ken = $1 ;
my $kenban = &area47sb($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.zaq\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47zaq($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.([a-zA-Z\d]+)\.vectant\.ne\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47vectant($remo,$ken);
if($kenban) {return $kenban;}
}
if($remo =~ /\.([\w-]+)\.ac\.jp$/)
{
my $ken = $1 ;
my $kenban = &area47ac($remo,$ken);
if($kenban) {return $kenban;}
}
# #catv
{
my $kenban = &area47catv($remo);
if($kenban) {return $kenban;}
}
return 99999;
}
sub area47dion
{
my ($GB,$remo,$ken) = @_;
if($ken =~ /^(KD\d\d\d\d\d\d\d\d\d)\d+/) {$ken = $1;}
elsif($ken =~ /^(KHP\d\d\d\d\d\d\d\d\d)\d+/) {$ken = $1;}
elsif($ken =~ /^([a-zA-Z]+\d\d\d)\d+/) {$ken = $1;}
my $r = int($FOX_KEN_DION{$ken}) ;
if(1 <= $r && $r <= 48)
{
#if(open(LX,">> HOST29.000")){print LX "(ooo)$remo($ken) = $r\n";close(LX);}
return $r ;
}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 65;}
#if(open(LX,">> HOST29.000")){print LX "(xxx)$remo($ken) = $r\n";close(LX);}
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>udion.ne.jp<6A>v<EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>̂<EFBFBD>!!<br><a href=\"http://qb5.2ch.net/test/read.cgi/operate/1175759037/l5n\"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD></a>fusianasan<61><6E><EFBFBD>Č<EFBFBD><C48C><EFBFBD><EFBFBD>񍐂<EFBFBD><F18D9082>ăl");
return 65;
}
sub area47asahinet
{
my ($remo,$ken) = @_;
if($ken =~ /^([a-z]\d\d\d)\d+\.ppp/) {$ken = $1;}
my $r = int($FOX_KEN_ASAHI{$ken}) ;
if(1 <= $r && $r <= 48)
{
#if(open(LX,">> HOST29.000")){print LX "(ooo)$remo($ken) = $r\n";close(LX);}
return $r ;
}
#if(open(LX,">> HOST29.000")){print LX "(xxx)$remo($ken) = $r\n";close(LX);}
return 69;
}
sub area47home
{
my ($remo,$ken) = @_;
if($ken =~ /^61-27-/) {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken =~ /^61-25-140-/) {return 8;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-26-231-/) {return 8;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^59-171-144-/) {return 10;} #<23>Q<EFBFBD>n
if($ken =~ /^61-24-20-/) {return 10;} #<23>Q<EFBFBD>n
if($ken =~ /^59-171-106-/) {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-21-248-/) {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-21-253-/) {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-23-223-/) {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^203-165-84-/) {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^203-165-244-/) {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^210-20-165-/) {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^210-20-196-/) {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-23-72-/) {return 12;} #<23><><EFBFBD>t
if($ken =~ /^61-23-94-/) {return 12;} #<23><><EFBFBD>t
if($ken =~ /^61-24-24-/) {return 12;} #<23><><EFBFBD>t
if($ken =~ /^203-165-164-/) {return 12;} #<23><><EFBFBD>t
if($ken =~ /^210-194-64-/) {return 12;} #<23><><EFBFBD>t
if($ken =~ /^210-194-66-/) {return 12;} #<23><><EFBFBD>t
if($ken =~ /^59-171-201-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^60-62-121-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-23-157-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-23-171-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-24-32-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-26-3-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-26-36-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-26-50-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-26-232-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^124-144-94-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^125-14-111-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^125-14-81-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^125-14-240-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^203-165-104-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^203-165-204-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^203-165-232-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^210-20-66-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^210-194-120-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^210-194-152-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^203-165-96-/) {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-21-73-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^59-171-234-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^61-24-194-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^61-24-194-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^61-26-205-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^61-26-246-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^61-26-253-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^124-144-103-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^125-14-212-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^124-144-137-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^210-20-154-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^210-194-19-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^210-194-62-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^210-194-184-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^210-194-240-/) {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken =~ /^60-62-34-/) {return 15;} #<23>V<EFBFBD><56>
if($ken =~ /^125-15-201-/) {return 25;} #<23><><EFBFBD><EFBFBD>
# if($ken =~ /^61-27-136-/) {return 31;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^60-62-47-/) {return 31;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-22-30-/) {return 35;} #<23>R<EFBFBD><52>
if($ken =~ /^61-22-45-/) {return 35;} #<23>R<EFBFBD><52>
if($ken =~ /^61-22-39-/) {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-22-235-/) {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken =~ /^61-26-232-/) {return 40;} #<23><><EFBFBD><EFBFBD>
# if(open(LX,">> HOST29.000")){print LX "(home)$remo($ken)\n";close(LX);}
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>uhome.ne.jp<6A>v<EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>̂<EFBFBD>!!<br><a href=\"http://qb5.2ch.net/test/read.cgi/operate/1173710224/l5n\"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD></a>fusianasan<61><6E><EFBFBD>Č<EFBFBD><C48C><EFBFBD><EFBFBD>񍐂<EFBFBD><F18D9082>ăl");
return 69;
}
sub area47sb
{
my ($remo,$ken) = @_;
if($ken eq '126068') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '218127') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '219041') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '219168') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '219181') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '221023') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '221030') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '221032') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '221036') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '221046') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '221062') {return 1;} #<23>k<EFBFBD>C<EFBFBD><43>
if($ken eq '221029') {return 2;} #<23>X
if($ken eq '221054') {return 2;} #<23>X
if($ken eq '219053') {return 3;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219173') {return 3;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221033') {return 3;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221039') {return 3;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221053') {return 3;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221054') {return 3;} #<23><><EFBFBD><EFBFBD>
if($ken eq '126098') {return 4;} #<23>{<7B><>
if($ken eq '218112') {return 4;} #<23>{<7B><>
if($ken eq '219057') {return 4;} #<23>{<7B><><EFBFBD>E<EFBFBD>H<EFBFBD>c
if($ken eq '219171') {return 4;} #<23>{<7B><>
if($ken eq '219208') {return 4;} #<23>{<7B><>
if($ken eq '221020') {return 4;} #<23>{<7B><>
if($ken eq '221026') {return 4;} #<23>{<7B><>
if($ken eq '221105') {return 4;} #<23>H<EFBFBD>c
if($ken eq '221058') {return 5;} #<23>{<7B><>
if($ken eq '219051') {return 7;} #<23><><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>{<7B><>
if($ken eq '219057') {return 7;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219172') {return 7;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221044') {return 7;} #<23><><EFBFBD><EFBFBD>
if($ken eq '060100') {return 8;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218137') {return 8;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219006') {return 8;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220005') {return 8;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220006') {return 8;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221040') {return 8;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221043') {return 8;} #<23><><EFBFBD><EFBFBD>
if($ken eq '060091') {return 9;} #<23>Ȗ<EFBFBD>
if($ken eq '126096') {return 9;} #<23>Ȗ<EFBFBD>
if($ken eq '219055') {return 9;} #<23>Ȗ<EFBFBD>
if($ken eq '219056') {return 9;} #<23>Ȗ<EFBFBD>
if($ken eq '219192') {return 9;} #<23>Ȗ<EFBFBD>
if($ken eq '220004') {return 9;} #<23>Ȗ<EFBFBD>
if($ken eq '221027') {return 9;} #<23>Ȗ<EFBFBD>
if($ken eq '221031') {return 9;} #<23>Ȗ<EFBFBD>
if($ken eq '220003') {return 11;} #<23>Q<EFBFBD>n
if($ken eq '220007') {return 11;} #<23>Q<EFBFBD>n
if($ken eq '060086') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218128') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218118') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218119') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218177') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219012') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219013') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219014') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219058') {return 11;} #<23><><EFBFBD>ʁE<CA81>Q<EFBFBD>n
if($ken eq '219181') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219182') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219183') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219193') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219194') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219199') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219201') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219214') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219200') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221018') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220001') {return 11;} #<23><><EFBFBD><EFBFBD>
if($ken eq '060088') {return 12;} #<23><><EFBFBD>t
if($ken eq '060089') {return 12;} #<23><><EFBFBD>t
if($ken eq '060101') {return 12;} #<23><><EFBFBD>t
if($ken eq '126064') {return 12;} #<23><><EFBFBD>t
if($ken eq '126112') {return 12;} #<23><><EFBFBD>t
if($ken eq '218135') {return 12;} #<23><><EFBFBD>t
if($ken eq '218178') {return 12;} #<23><><EFBFBD>t
if($ken eq '218180') {return 12;} #<23><><EFBFBD>t
if($ken eq '219010') {return 12;} #<23><><EFBFBD>t
if($ken eq '219011') {return 12;} #<23><><EFBFBD>t
if($ken eq '219016') {return 12;} #<23><><EFBFBD>t
if($ken eq '219174') {return 12;} #<23><><EFBFBD>t
if($ken eq '219176') {return 12;} #<23><><EFBFBD>t
if($ken eq '219189') {return 12;} #<23><><EFBFBD>t
if($ken eq '219190') {return 12;} #<23><><EFBFBD>t
if($ken eq '219191') {return 12;} #<23><><EFBFBD>t
if($ken eq '221022') {return 12;} #<23><><EFBFBD>t
if($ken eq '221025') {return 12;} #<23><><EFBFBD>t
if($ken eq '221038') {return 12;} #<23><><EFBFBD>t
if($ken eq '221056') {return 12;} #<23><><EFBFBD>t
if($ken eq '060076') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '060081') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '060085') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '126065') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '126080') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218130') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218132') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218133') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218134') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218138') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218176') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219000') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219001') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219002') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219003') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219004') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219005') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219007') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219008') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219009') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219011') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219015') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219018') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219017') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219019') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219036') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219037') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219169') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219176') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219184') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219185') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219186') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219187') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219188') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219195') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219196') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219197') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219198') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219215') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219218') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221016') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221021') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221028') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221034') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221041') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221106') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221108') {return 13;} #<23><><EFBFBD><EFBFBD>
if($ken eq '060082') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '060083') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '126067') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219204') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '218139') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '218140') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '218141') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '218144') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219035') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219038') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219039') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219042') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219043') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219044') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219045') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219046') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219052') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219175') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219177') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219178') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219179') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219180') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219202') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219205') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219206') {return 13;} #<23>_<EFBFBD>ސ<EFBFBD><DE90>E<EFBFBD><45><EFBFBD><EFBFBD>
if($ken eq '219207') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '221017') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '221019') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '221037') {return 14;} #<23>_<EFBFBD>ސ<EFBFBD>
if($ken eq '219040') {return 15;} #<23>V<EFBFBD><56>
if($ken eq '219058') {return 15;} #<23>V<EFBFBD><56>
if($ken eq '220008') {return 15;} #<23>V<EFBFBD><56>
if($ken eq '221052') {return 15;} #<23>V<EFBFBD><56>
if($ken eq '221060') {return 15;} #<23>V<EFBFBD><56>
if($ken eq '220021') {return 16;} #<23>x<EFBFBD>R
if($ken eq '220052') {return 16;} #<23>x<EFBFBD>R
if($ken eq '219213') {return 17;} #<23>ΐ<EFBFBD>
if($ken eq '221071') {return 17;} #<23>ΐ<EFBFBD>
if($ken eq '221081') {return 17;} #<23>ΐ<EFBFBD>
if($ken eq '221093') {return 17;} #<23>ΐ<EFBFBD>
if($ken eq '221095') {return 17;} #<23>ΐ<EFBFBD>
if($ken eq '219061') {return 18;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220024') {return 18;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220010') {return 19;} #<23>R<EFBFBD><52><EFBFBD>E<EFBFBD>É<EFBFBD>
if($ken eq '220009') {return 20;} #<23><><EFBFBD><EFBFBD>
if($ken eq '126069') {return 22;} #<23>É<EFBFBD>
if($ken eq '218131') {return 22;} #<23>É<EFBFBD>
if($ken eq '218143') {return 22;} #<23>É<EFBFBD>
if($ken eq '219047') {return 22;} #<23>É<EFBFBD>
if($ken eq '219048') {return 22;} #<23>É<EFBFBD>
if($ken eq '220023') {return 22;} #<23>É<EFBFBD><C389>E<EFBFBD><45><EFBFBD><EFBFBD>
if($ken eq '220000') {return 22;} #<23>É<EFBFBD>
if($ken eq '220002') {return 22;} #<23>É<EFBFBD>
if($ken eq '221024') {return 22;} #<23>É<EFBFBD><C389>E<EFBFBD>O<EFBFBD>d
if($ken eq '060096') {return 23;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220031') {return 23;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221035') {return 23;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221045') {return 23;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218122') {return 23;} #<23><><EFBFBD>m
if($ken eq '218142') {return 23;} #<23><><EFBFBD>m
if($ken eq '218179') {return 23;} #<23><><EFBFBD>m
if($ken eq '219032') {return 23;} #<23><><EFBFBD>m
if($ken eq '219033') {return 23;} #<23><><EFBFBD>m
if($ken eq '219049') {return 23;} #<23><><EFBFBD>m
if($ken eq '219050') {return 23;} #<23><><EFBFBD>m<EFBFBD>E<EFBFBD>O<EFBFBD>d
if($ken eq '219170') {return 23;} #<23><><EFBFBD>m
if($ken eq '219203') {return 23;} #<23><><EFBFBD>m
if($ken eq '219209') {return 23;} #<23><><EFBFBD>m
if($ken eq '219210') {return 23;} #<23><><EFBFBD>m
if($ken eq '220028') {return 23;} #<23><><EFBFBD>m
if($ken eq '220029') {return 23;} #<23><><EFBFBD>m
if($ken eq '220002') {return 23;} #<23><><EFBFBD>m
if($ken eq '220030') {return 23;} #<23><><EFBFBD>m
if($ken eq '221057') {return 23;} #<23><><EFBFBD>m
if($ken eq '221059') {return 23;} #<23><><EFBFBD>m
if($ken eq '221107') {return 23;} #<23><><EFBFBD>m
if($ken eq '219054') {return 24;} #<23>O<EFBFBD>d
if($ken eq '220026') {return 24;} #<23>O<EFBFBD>d
if($ken eq '220027') {return 24;} #<23>O<EFBFBD>d<EFBFBD>E<EFBFBD><45><EFBFBD>m
if($ken eq '218129') {return 25;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220051') {return 25;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221075') {return 25;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218121') {return 26;} #<23><><EFBFBD>s
if($ken eq '218123') {return 26;} #<23><><EFBFBD>s
if($ken eq '219025') {return 26;} #<23><><EFBFBD>s
if($ken eq '219029') {return 26;} #<23><><EFBFBD>s
if($ken eq '219030') {return 26;} #<23><><EFBFBD>s<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD>
if($ken eq '219092') {return 26;} #<23><><EFBFBD>s
if($ken eq '220041') {return 26;} #<23><><EFBFBD>s
if($ken eq '220037') {return 26;} #<23><><EFBFBD>s
if($ken eq '220046') {return 26;} #<23><><EFBFBD>s
if($ken eq '220047') {return 26;} #<23><><EFBFBD>s
if($ken eq '221055') {return 26;} #<23><><EFBFBD>s
if($ken eq '2210920') {return 26;} #<23><><EFBFBD>s
if($ken eq '060105') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218121') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218126') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218129') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218136') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218181') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218182') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219020') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219021') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219023') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219024') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219062') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220011') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220012') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220013') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220018') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220032') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220033') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220034') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220035') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220036') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220038') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220042') {return 27;} #<23><><EFBFBD><EFBFBD>
if($ken eq '060110') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218124') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218125') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218154') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219022') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219026') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219027') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220014') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220015') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220016') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220017') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220039') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220040') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220044') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221064') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221092') {return 28;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218183') {return 29;} #<23>ޗǁE<C781><45><EFBFBD>s
if($ken eq '126070') {return 29;} #<23>ޗ<EFBFBD>
if($ken eq '220043') {return 29;} #<23>ޗ<EFBFBD>
if($ken eq '221072') {return 29;} #<23>ޗ<EFBFBD>
if($ken eq '220050') {return 30;} #<23>a<EFBFBD>̎R
if($ken eq '060120') {return 31;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221079') {return 32;} #<23><><EFBFBD><EFBFBD>
if($ken eq '060118') {return 33;} #<23><><EFBFBD>R
if($ken eq '126087') {return 33;} #<23><><EFBFBD>R
if($ken eq '218115') {return 33;} #<23><><EFBFBD>R
if($ken eq '219063') {return 33;} #<23><><EFBFBD>R
if($ken eq '220056') {return 33;} #<23><><EFBFBD>R
if($ken eq '221084') {return 33;} #<23><><EFBFBD>R<EFBFBD>E<EFBFBD>L<EFBFBD><4C>
if($ken eq '221094') {return 33;} #<23><><EFBFBD>R<EFBFBD>E<EFBFBD>L<EFBFBD><4C>
if($ken eq '221097') {return 33;} #<23><><EFBFBD>R
if($ken eq '221100') {return 33;} #<23><><EFBFBD>R
if($ken eq '060116') {return 34;} #<23>L<EFBFBD><4C>
if($ken eq '218120') {return 34;} #<23>L<EFBFBD><4C>
if($ken eq '219060') {return 34;} #<23>L<EFBFBD><4C><EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD>
if($ken eq '220019') {return 34;} #<23>L<EFBFBD><4C>
if($ken eq '220020') {return 34;} #<23>L<EFBFBD><4C>
if($ken eq '220025') {return 34;} #<23>L<EFBFBD><4C>
if($ken eq '220053') {return 34;} #<23>L<EFBFBD><4C>
if($ken eq '219034') {return 35;} #<23>R<EFBFBD><52>
if($ken eq '221063') {return 35;} #<23>R<EFBFBD><52>
if($ken eq '221085') {return 35;} #<23>R<EFBFBD><52>
if($ken eq '221086') {return 36;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219028') {return 37;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219211') {return 37;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220045') {return 37;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221080') {return 37;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221096') {return 37;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221076') {return 38;} #<23><><EFBFBD>Q
if($ken eq '220048') {return 38;} #<23><><EFBFBD>Q
if($ken eq '221089') {return 39;} #<23><><EFBFBD>m
if($ken eq '126071') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '126071') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '060122') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218114') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218116') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '218117') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '219212') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220054') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220058') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220059') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220060') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220061') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221098') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221078') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221098') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221101') {return 40;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220020') {return 41;} #<23><><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD>
if($ken eq '221067') {return 41;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220055') {return 42;} #<23><><EFBFBD><EFBFBD>
if($ken eq '221083') {return 43;} #<23>F<EFBFBD>{
if($ken eq '221088') {return 43;} #<23>F<EFBFBD>{
if($ken eq '220022') {return 43;} #<23>F<EFBFBD>{
if($ken eq '060125') {return 44;} #<23>
if($ken eq '218113') {return 44;} #<23>
if($ken eq '220062') {return 44;} #<23>
if($ken eq '221077') {return 45;} #<23>{<7B><>
if($ken eq '220063') {return 46;} #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($ken eq '221065') {return 46;} #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($ken eq '221074') {return 46;} #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($ken eq '221082') {return 46;} #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($ken eq '221087') {return 46;} #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($ken eq '221091') {return 46;} #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($ken eq '219031') {return 47;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220057') {return 47;} #<23><><EFBFBD><EFBFBD>
if($ken eq '220049') {return 42;} #<23><><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD><6C>(<28><><EFBFBD>m)
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>u<EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD>softbank<6E>v<EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>̂<EFBFBD>!!<br><a href=\"http://qb5.2ch.net/test/read.cgi/operate/1173710224/\"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD></a>fusianasan<61><6E><EFBFBD>Č<EFBFBD><C48C><EFBFBD><EFBFBD>񍐂<EFBFBD><F18D9082>ăl");
return 49;
# if(open(LX,">> HOST29.000")){print LX "$remo($ken)\n";close(LX);}
return 0 ;
}
sub area47hiho
{
my ($remo,$ken) = @_;
if($ken eq 'west') {return 57;}
if($ken eq 'east') {return 58;}
if($ken eq 'nrm') {return 51;}
if($ken eq 'tky') {return 13;}
if($ken eq 'osk') {return 27;}
if($ken eq 'stm') {return 11;}
if($ken eq 'kwg') {return 11;}
if($ken eq 'kng') {return 14;}
if($ken eq 'ykh') {return 14;}
if($ken eq 'shg') {return 25;}
if($ken eq 'oky') {return 33;}
if($ken eq 'fks') {return 7;}
if($ken eq 'aic') {return 23;}
if($ken eq 'kgw') {return 37;}
if($ken eq 'hkd') {return 1;}
if($ken eq 'chb') {return 12;}
if($ken eq 'myg') {return 4;}
if($ken eq 'kyt') {return 26;}
if($ken eq 'gmm') {return 10;}
if($ken eq 'amr') {return 2;}
if($ken eq 'fkk') {return 40;}
if($ken eq 'mie') {return 24;}
if($ken eq 'hrs') {return 34;}
if($ken eq 'tcg') {return 9;}
if($ken eq 'ngs') {return 42;}
if($ken eq 'hyg') {return 28;}
if($ken eq 'akt') {return 5;}
if($ken eq 'szk') {return 22;}
if($ken eq 'ngt') {return 15;}
if($ken eq 'smn') {return 32;}
if($ken eq 'ymn') {return 19;}
if($ken eq 'okn') {return 47;}
if($ken eq 'fki') {return 18;}
if($ken eq 'ibr') {return 8;}
if($ken eq 'kch') {return 39;}
if($ken eq 'gif') {return 21;}
if($ken eq 'tks') {return 36;}
if($ken eq 'wky') {return 30;}
if($ken eq 'nar') {return 29;}
if($ken eq 'iwt') {return 3;}
if($ken eq 'ngn') {return 20;}
if($ken eq 'isk') {return 17;}
if($ken eq 'myz') {return 45;}
if($ken eq 'ymt') {return 6;}
if($ken eq 'saga') {return 41;}
if($ken eq 'yamaguchi') {return 35;}
if($ken eq 'oita') {return 44;}
if($ken eq 'toyama') {return 16;}
if($ken eq 'shiga') {return 25;}
if($ken eq 'kagoshima') {return 46;}
if($ken eq 'ehime') {return 38;}
if($ken eq 'kumamoto') {return 43;}
if($ken eq 'tottori') {return 31;}
#nrm1-p59.tepco.hi-ho.ne.jp(nrm)
if($ken eq 'snj') {return 13;} #
if($ken eq 'snt') {return 13;} #
if($ken eq 'wdb') {return 13;} #
if($ken eq 'hoj') {return 13;} #
if($ken eq 'edg') {return 60;} #
# if(open(LX,">> HOST29.000")){print LX "(hiho)$remo($ken)\n";close(LX);}
return 0 ;
}
sub area47infoweb
{
my ($remo,$ken) = @_;
if($remo =~ /oyma(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 9;} #<23>Ȗ،<C896>(09)
if($remo =~ /fnbs(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 12;} #<23><><EFBFBD>t<EFBFBD><74>(12)
if($remo =~ /nkno(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 13;} #<23><><EFBFBD><EFBFBD><EFBFBD>s(13)
if($remo =~ /ohta(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 13;} #
if($remo =~ /ktsk(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 13;} #
if($remo =~ /hcou(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 13;} #
if($remo =~ /tkbn(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 13;} #
if($remo =~ /odwr(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 14;} #<23>_<EFBFBD>ސ쌧(14)
if($remo =~ /youx(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 21;} #<23>򕌌<EFBFBD>(21)
if($remo =~ /ymgt(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 21;} #<23>򕌌<EFBFBD>(21)
if($remo =~ /hmmt(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 22;} #<23>É<EFBFBD><C389><EFBFBD>(22)
if($remo =~ /aksi(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 28;} #<23><><EFBFBD>Ɍ<EFBFBD>(28)
if($remo =~ /kkgw(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 28;} #
if($remo =~ /kihn(\d+|\d+n\d+)\.catv.ppp.infoweb.ne.jp$/) {return 28;} #
if($ken =~ /\.dup$/) {return 61;}
if($ken =~ /\.do$/) {return 60;}
# if($ken =~ /catv/) {return 59;}
if($ken =~ /\.(\w+)\.nt\./) {$ken = $1;}
elsif($ken =~ /\.(\w+)\.te\./) {$ken = $1;}
elsif($ken =~ /ea([a-z]+)\d+\.adsl$/) {$ken = $1;}
elsif($ken =~ /ac([a-z]+)\d+\.adsl$/) {$ken = $1;}
elsif($ken =~ /tc([a-z]+)\d+\.adsl$/) {$ken = $1;}
elsif($ken =~ /ct([a-z]+)\d+\.adsl$/) {$ken = $1;}
elsif($ken =~ /th([a-z]+)\d+\.adsl$/) {$ken = $1;}
elsif($ken =~ /st([a-z]+)\d+\.adsl$/) {$ken = $1;}
elsif($ken =~ /\.([a-z]+)\.fnt\.ftth$/) {$ken = $1;}
elsif($ken =~ /[a-z][a-z]([a-z]+)\d+\.adsl$/) {$ken = $1;}
if($ken =~ /air/i) {return 60;}
if($ken eq 'tkyo') {return 13;}
if($ken eq 'tckw') {return 13;}
if($ken eq 'atgi') {return 13;}
if($ken eq 'oska') {return 27;}
if($ken eq 'sitm') {return 11;}
if($ken eq 'urwa') {return 11;}
if($ken eq 'kngw') {return 14;}
if($ken eq 'ykhm') {return 14;}
if($ken eq 'siga') {return 25;}
if($ken eq 'okym') {return 33;}
if($ken eq 'fksm') {return 7;}
if($ken eq 'aich') {return 23;}
if($ken eq 'ngya') {return 23;}
if($ken eq 'kgwa') {return 37;}
if($ken eq 'tkmt') {return 37;}
if($ken eq 'ymgc') {return 35;}
if($ken eq 'hkid') {return 1;}
if($ken eq 'spro') {return 1;}
if($ken eq 'chba') {return 12;}
if($ken eq 'mygi') {return 4;}
if($ken eq 'sndi') {return 4;}
if($ken eq 'kyto') {return 26;}
if($ken eq 'gnma') {return 10;}
if($ken eq 'aomr') {return 2;}
if($ken eq 'fkok') {return 40;}
if($ken eq 'ooit') {return 44;}
if($ken eq 'miex') {return 24;}
if($ken eq 'hrsm') {return 34;}
if($ken eq 'tcgi') {return 9;}
if($ken eq 'ngsk') {return 42;}
if($ken eq 'hygo') {return 28;}
if($ken eq 'kube') {return 28;}
if($ken eq 'akta') {return 5;}
if($ken eq 'szok') {return 22;}
if($ken eq 'yizu') {return 22;}
if($ken eq 'nigt') {return 15;}
if($ken eq 'oknw') {return 47;}
if($ken eq 'fkui') {return 18;}
if($ken eq 'ibrk') {return 8;}
if($ken eq 'tyma') {return 16;}
if($ken eq 'kuch') {return 39;}
if($ken eq 'gifu') {return 21;}
if($ken eq 'tksm') {return 36;}
if($ken eq 'shga') {return 25;}
if($ken eq 'kgsm') {return 46;}
if($ken eq 'nara') {return 29;}
if($ken eq 'iwte') {return 3;}
if($ken eq 'ngno') {return 20;}
if($ken eq 'iskw') {return 17;}
if($ken eq 'knzw') {return 17;}
if($ken eq 'saga') {return 41;}
if($ken eq 'ehme') {return 38;}
if($ken eq 'kmmt') {return 43;}
if($ken eq 'ttri') {return 31;}
if($ken eq 'smne') {return 32;}
if($ken eq 'ymns') {return 19;}
if($ken eq 'wkym') {return 30;}
if($ken eq 'ymgt') {return 6;}
if($ken eq 'myzk') {return 45;}
# if(open(LX,">> HOST29.000")){print LX "$remo($ken)\n";close(LX);}
return 0 ;
}
sub area47mesh
{
my ($remo,$ken) = @_;
if($ken eq 'tky') {return 13;}
if($ken eq 'osk') {return 27;}
if($ken eq 'stm') {return 11;}
if($ken eq 'kng') {return 14;}
if($ken eq 'sig') {return 25;}
if($ken eq 'oky') {return 33;}
if($ken eq 'fks') {return 7;}
if($ken eq 'aic') {return 23;}
if($ken eq 'kgw') {return 37;}
if($ken eq 'ygc') {return 35;}
if($ken eq 'hkd') {return 1;}
if($ken eq 'chb') {return 12;}
if($ken eq 'myg') {return 4;}
if($ken eq 'kyt') {return 26;}
if($ken eq 'gnm') {return 10;}
if($ken eq 'aom') {return 2;}
if($ken eq 'fko') {return 40;}
if($ken eq 'oit') {return 44;}
if($ken eq 'mie') {return 24;}
if($ken eq 'hrs') {return 34;}
if($ken eq 'tcg') {return 9;}
if($ken eq 'ngs') {return 42;}
if($ken eq 'hyg') {return 28;}
if($ken eq 'szo') {return 22;}
if($ken eq 'nig') {return 15;}
if($ken eq 'ymn') {return 19;}
if($ken eq 'okn') {return 47;}
if($ken eq 'iba') {return 8;}
if($ken eq 'koc') {return 39;}
if($ken eq 'gif') {return 21;}
if($ken eq 'fki') {return 18;}
if($ken eq 'tks') {return 36;}
if($ken eq 'kgs') {return 46;}
if($ken eq 'wky') {return 30;}
if($ken eq 'nra') {return 29;}
if($ken eq 'iwa') {return 3;}
if($ken eq 'ngn') {return 20;}
if($ken eq 'isk') {return 17;}
if($ken eq 'sag') {return 41;}
if($ken eq 'ygt') {return 6;}
if($ken eq 'kmm') {return 43;}
if($ken eq 'myz') {return 45;}
if($ken eq 'tym') {return 16;}
if($ken eq 'ttr') {return 31;}
if($ken eq 'aki') {return 5;}
if($ken eq 'smn') {return 32;}
if($ken eq 'shiga') {return 25;}
if($ken eq 'ehm') {return 38;}
# if(open(LX,">> HOST29.000")){print LX "(mesh)$remo($ken)\n";close(LX);}
return 0 ;
}
sub area47zaq
{
my ($remo,$ken) = @_;
#<23><><EFBFBD>s<EFBFBD>{
if($remo =~ /zaq3d2e6[89a-f]..\.zaq.ne.jp/) {return 26;}
if($remo =~ /zaq3dc06[c-f]..\.zaq.ne.jp/) {return 26;}
if($remo =~ /zaqd37c8[0-5]..\.zaq.ne.jp/) {return 26;}
if($remo =~ /zaqd37c8[67]..\.zaq.ne.jp/) {return 26;}
if($remo =~ /zaqd37cc[0-9a-c]..\.zaq.ne.jp/) {return 26;}
if($remo =~ /zaqd37cc[d-f]..\.zaq.ne.jp/) {return 26;}
if($remo =~ /zaqd38730..\.zaq.ne.jp/) {return 26;}
if($remo =~ /zaqd3873[1-7]..\.zaq.ne.jp/) {return 26;}
#<23><><EFBFBD>Ɍ<EFBFBD>
if($remo =~ /zaq3d2e7...\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3d2ec[0-7]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3d2ec[89a-f]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3d2ef...\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3d738[0-9a]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3d738b..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3d739...\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3dc04[0-9]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3dc0(4[a-f]|5.)..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3dcd8...\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3dcdb[89a]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq3dcdb[b-f]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq7d04[ab]...\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaq7d04c...\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaqd37c(0[89a-f]|1.)..\.zaq.ne.jp/){return 28;}
if($remo =~ /zaqd37c7[0-9a-d]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaqd37c9[0-5]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaqd37c9[67]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaqd37c9[89ab]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaqd3875[89a-f]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaqdb73f[01]..\.zaq.ne.jp/) {return 28;}
if($remo =~ /zaqdb73f[2-9a-f]..\.zaq.ne.jp/) {return 28;}
#<23><><EFBFBD>
if($remo =~ /zaqd378b[4-7]..\.zaq.ne.jp/) {return 25;} #<23>c<EFBFBD><63><EFBFBD>͂<EFBFBD><CD82>ׂđ<D782><C491><EFBFBD><EFBFBD>{
#from whois & LogCounter(zaq.txt)
return 27;
}
sub area47sonet
{
my ($remo,$ken) = @_;
if($ken =~ /freedc$/) {return 901;}
elsif($ken =~ /ah$/) {return 901;}
elsif($ken =~ /te$/) {$ken =~ s/te$//;}
elsif($ken =~ /nt$/) {$ken =~ s/nt$//;}
elsif($ken =~ /ac$/) {$ken =~ s/ac$//;}
elsif($ken =~ /ea$/) {$ken =~ s/ea$//;}
elsif($ken =~ /us$/) {$ken =~ s/us$//;}
elsif($ken =~ /ff$/) {$ken =~ s/ff$//;}
if($ken eq 'tubems') {return 52;}
if($ken eq 'west') {return 57;}
if($ken eq 'east') {return 58;}
if($ken eq 'wpdabw') {return 60;}
if($ken eq 'tkyo') {return 13;}
if($ken eq 'toky') {return 13;}
if($ken eq 'ntky') {return 13;}
if($ken eq 'osak') {return 27;}
if($ken eq 'sitm') {return 11;}
if($ken eq 'uraw') {return 11;}
if($ken eq 'ykhm') {return 14;}
if($ken eq 'kngw') {return 14;}
if($ken eq 'siga') {return 25;}
if($ken eq 'okym') {return 33;}
if($ken eq 'fksm') {return 7;}
if($ken eq 'aici') {return 23;}
if($ken eq 'ngya') {return 23;}
if($ken eq 'kagw') {return 37;}
if($ken eq 'ymgc') {return 35;}
if($ken eq 'hkid') {return 1;}
if($ken eq 'sppr') {return 1;}
if($ken eq 'chib') {return 12;}
if($ken eq 'miyg') {return 4;}
if($ken eq 'sndi') {return 4;}
if($ken eq 'kyot') {return 26;}
if($ken eq 'gunm') {return 10;}
if($ken eq 'aomr') {return 2;}
if($ken eq 'fkok') {return 40;}
if($ken eq 'oita') {return 44;}
if($ken eq 'mie') {return 24;}
if($ken eq 'mie-') {return 24;}
if($ken eq 'hrsm') {return 34;}
if($ken eq 'tocg') {return 9;}
if($ken eq 'kobe') {return 28;}
if($ken eq 'hyog') {return 28;}
if($ken eq 'akit') {return 5;}
if($ken eq 'szok') {return 22;}
if($ken eq 'nigt') {return 15;}
if($ken eq 'ymns') {return 19;}
if($ken eq 'oknw') {return 47;}
if($ken eq 'fuki') {return 18;}
if($ken eq 'ibrk') {return 8;}
if($ken eq 'toym') {return 16;}
if($ken eq 'koci') {return 39;}
if($ken eq 'gifu') {return 21;}
if($ken eq 'tksm') {return 36;}
if($ken eq 'kgsm') {return 46;}
if($ken eq 'wkym') {return 30;}
if($ken eq 'nara') {return 29;}
if($ken eq 'iwat') {return 3;}
if($ken eq 'ngno') {return 20;}
if($ken eq 'iskw') {return 17;}
if($ken eq 'saga') {return 41;}
if($ken eq 'ymgt') {return 6;}
if($ken eq 'ehim') {return 38;}
if($ken eq 'kmmt') {return 43;}
if($ken eq 'myzk') {return 45;}
if($ken eq 'totr') {return 31;}
if($ken eq 'shiga') {return 25;}
if($ken eq 'ngsk') {return 42;}
if($ken eq 'shimane') {return 32;}
if($ken eq 'w032bw') {return 60;}
if($ken eq 'onenum') {return 61;}
if($ken eq 'tubehm') {return 72;}
# if(open(LX,">> HOST29.000")){print LX "(sonet)$remo($ken)\n";close(LX);}
return 0 ;
}
sub area47dti
{
my ($remo,$ken) = @_;
if($ken eq 'airedge') {return 60;}
if($ken eq 'west') {return 57;}
if($ken eq 'east') {return 58;}
if($ken eq 'otemachi') {return 13;}
if($ken eq 'iidabashi') {return 13;}
if($ken eq 'tokyo') {return 13;}
if($ken eq 'tachikawa') {return 13;}
if($ken eq 'osaka') {return 27;}
if($ken eq 'ohsaka') {return 27;}
if($ken eq 'saitama') {return 11;}
if($ken eq 'soka') {return 11;}
if($ken eq 'kuki') {return 11;}
if($ken eq 'urawa') {return 11;}
if($ken eq 'kanagawa') {return 14;}
if($ken eq 'yokohama') {return 14;}
if($ken eq 'kawasaki') {return 14;}
if($ken eq 'siga') {return 25;}
if($ken eq 'otsu') {return 25;}
if($ken eq 'okayama') {return 33;}
if($ken eq 'fukusima') {return 7;}
if($ken eq 'fukushima') {return 7;}
if($ken eq 'aichi') {return 23;}
if($ken eq 'nagoya') {return 23;}
if($ken eq 'yokkaichi') {return 23;}
if($ken eq 'kagawa') {return 37;}
if($ken eq 'takamatsu') {return 37;}
if($ken eq 'yamaguchi') {return 35;}
if($ken eq 'hokkaido') {return 1;}
if($ken eq 'sapporo') {return 1;}
if($ken eq 'osaka') {return 27;}
if($ken eq 'chiba') {return 12;}
if($ken eq 'ichikawa') {return 12;}
if($ken eq 'miyagi') {return 4;}
if($ken eq 'sendai') {return 4;}
if($ken eq 'kyoto') {return 26;}
if($ken eq 'gunma') {return 10;}
if($ken eq 'maebashi') {return 10;}
if($ken eq 'aomori') {return 2;}
if($ken eq 'fukuoka') {return 40;}
if($ken eq 'kurume') {return 40;}
if($ken eq 'oita') {return 44;}
if($ken eq 'mie') {return 24;}
if($ken eq 'hiroshima') {return 34;}
if($ken eq 'hirosima') {return 34;}
if($ken eq 'tochigi') {return 9;}
if($ken eq 'totigi') {return 9;}
if($ken eq 'utsunomiya'){return 9;}
if($ken eq 'nagasaki') {return 42;}
if($ken eq 'hyogo') {return 28;}
if($ken eq 'kobe') {return 28;}
if($ken eq 'akita') {return 5;}
if($ken eq 'shizuoka') {return 22;}
if($ken eq 'niigata') {return 15;}
if($ken eq 'shimane') {return 32;}
if($ken eq 'yamanashi') {return 19;}
if($ken eq 'kofu') {return 19;}
if($ken eq 'okinawa') {return 47;}
if($ken eq 'fukui') {return 18;}
if($ken eq 'ibaraki') {return 8;}
if($ken eq 'toyama') {return 16;}
if($ken eq 'kochi') {return 39;}
if($ken eq 'gifu') {return 21;}
if($ken eq 'tokushima') {return 36;}
if($ken eq 'shiga') {return 25;}
if($ken eq 'kagoshima') {return 46;}
if($ken eq 'wakayama') {return 30;}
if($ken eq 'nara') {return 29;}
if($ken eq 'iwate') {return 3;}
if($ken eq 'nagano') {return 20;}
if($ken eq 'ishikawa') {return 17;}
if($ken eq 'kanazawa') {return 17;}
if($ken eq 'saga') {return 41;}
if($ken eq 'yamagata') {return 6;}
if($ken eq 'ehime') {return 38;}
if($ken eq 'matsuyama') {return 38;}
if($ken eq 'kumamoto') {return 43;}
if($ken eq 'miyazaki') {return 45;}
if($ken eq 'tottori') {return 31;}
# if(open(LX,">> HOST29.000")){print LX "$remo($ken)\n";close(LX);}
return 0 ;
}
sub area47odn
{
my ($GB,$remo,$ken) = @_;
if($ken =~ /^([A-Z0-9]+)[a-z]+-/) {$ken = $1;}
if($ken eq 'AH1') {return 60;} # <20><>
if($ken eq 'TEP') {return 51;} # <20>֓<EFBFBD><D693>n<EFBFBD><6E>
if($ken eq 'CEP') {return 52;} # <20><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>
if($ken eq 'EAO') {return 57;} # <20><><EFBFBD><EFBFBD><EFBFBD>{
if($ken eq 'EAT') {return 58;} # <20><><EFBFBD><EFBFBD><EFBFBD>{
if($ken eq 'SAP') {return 1;} # <20>k<EFBFBD>C<EFBFBD><43>
if($ken eq 'SOD') {return 1;} # <20>k<EFBFBD>C<EFBFBD><43>
if($ken eq 'OKI') {return 2;} # <20>X
if($ken eq 'MRN') {return 3;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'AOB') {return 4;} # <20>{<7B><>
if($ken eq 'NKD') {return 5;} # <20>H<EFBFBD>c
if($ken eq 'IMZ') {return 6;} # <20>R<EFBFBD>`
if($ken eq 'HNZ') {return 7;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'FKH') {return 7;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'AKA') {return 8;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'HRD') {return 9;} # <20>Ȗ<EFBFBD>
if($ken eq 'KKR') {return 10;} # <20>Q<EFBFBD>n
if($ken eq 'SKN') {return 11;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'FNA') {return 12;} # <20><><EFBFBD>t
if($ken eq 'OFS') {return 13;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'HDO') {return 14;} # <20>_<EFBFBD>ސ<EFBFBD>
if($ken eq 'NGN') {return 15;} # <20>V<EFBFBD><56>
if($ken eq 'TYN') {return 16;} # <20>x<EFBFBD>R
if($ken eq 'KNZ') {return 17;} # <20>ΐ<EFBFBD>
if($ken eq 'KNN') {return 17;} # <20>ΐ<EFBFBD>
if($ken eq 'FKN') {return 18;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'KFN') {return 19;} # <20>R<EFBFBD><52>
if($ken eq 'SYD') {return 20;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'GFN') {return 21;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'SDD') {return 22;} # <20>É<EFBFBD>
if($ken eq 'SSJ') {return 23;} # <20><><EFBFBD>m
if($ken eq 'YKM') {return 24;} # <20>O<EFBFBD>d
if($ken eq 'OTU') {return 25;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'KYN') {return 26;} # <20><><EFBFBD>s
if($ken eq 'KYO') {return 26;} # <20><><EFBFBD>s
if($ken eq 'NWT') {return 27;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'OSA') {return 27;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'KBM') {return 28;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'DAJ') {return 29;} # <20>ޗ<EFBFBD>
if($ken eq 'WKN') {return 30;} # <20>a<EFBFBD>̎R
if($ken eq 'TTN') {return 31;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'SMN') {return 32;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'IMM') {return 33;} # <20><><EFBFBD>R
if($ken eq 'NIH') {return 34;} # <20>L<EFBFBD><4C>
if($ken eq 'YGN') {return 35;} # <20>R<EFBFBD><52>
if($ken eq 'TKN') {return 36;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'TMN') {return 37;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'TKH') {return 37;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'MYN') {return 38;} # <20><><EFBFBD>Q
if($ken eq 'KCN') {return 39;} # <20><><EFBFBD>m
if($ken eq 'FKC') {return 40;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'TGS') {return 41;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'SCO') {return 42;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'OBY') {return 43;} # <20>F<EFBFBD>{
if($ken eq 'OMC') {return 44;} # <20>
if($ken eq 'MZN') {return 45;} # <20>{<7B><>
if($ken eq 'KMI') {return 46;} # <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($ken eq 'YRM') {return 47;} # <20><><EFBFBD><EFBFBD>
if($ken eq 'ATU') {return 61;} # <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>b<EFBFBD>v
if($ken eq 'TYO') {return 61;} # <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>b<EFBFBD>v
if($ken eq 'CBC') {return 61;} # <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>b<EFBFBD>v
if($ken eq 'TBT') {return 61;} # <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>b<EFBFBD>v
if($ken eq 'KAJ') {return 61;} # <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>b<EFBFBD>v
if($ken eq 'PAX') {return 61;} # <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>b<EFBFBD>v
if($ken eq 'RIF') {return 61;} # <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>b<EFBFBD>v
if($ken eq 'NIG') {return 61;} # <20>_<EFBFBD>C<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>b<EFBFBD>v
# if(open(LX,">> HOST29.000")){print LX "(odn)$remo($ken)\n";close(LX);}
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>u<EFBFBD><75><EFBFBD>ł<EFBFBD><C582>v<EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>̂<EFBFBD>!!<br><a href=\"http://qb5.2ch.net/test/read.cgi/operate/1173710224/\"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD></a>fusianasan<61><6E><EFBFBD>Č<EFBFBD><C48C><EFBFBD><EFBFBD>񍐂<EFBFBD><F18D9082>ăl");
if($ken eq 'NOT') {return 66;}
# if(open(LX,">> HOST29.000")){print LX "(odn)$remo($ken)\n";close(LX);}
return 66;
}
sub area47unetsurf
{
my ($remo,$ken) = @_;
if($ken =~ /[a-zA-Z]+-([a-z][a-z])\.[\d-]+/) {$ken = $1;}
if($ken =~ /\.at$/) {return 13;}
if($ken eq 'es') {return 58;}
if($ken eq 'os') {return 57;}
if($ken eq 'tk') {return 58;}
# if(open(LX,">> HOST29.000")){print LX "(unetsurf)$remo($ken)\n";close(LX);}
return 0;
}
sub area472iij
{
my ($remo,$ken) = @_;
if($ken =~ /[a-zA-Z]+([a-z][a-z])\./) {$ken = $1;}
# if(open(LX,">> HOST29.000")){print LX "(2iij)$remo($ken)\n";close(LX);}
return 90;
}
sub area47ac
{
my ($remo,$ken) = @_;
if($ken eq 'hokkyodai') {return 1;}
if($ken eq 'hit') {return 1;}
if($ken eq 'midorigaoka') {return 1;}
if($ken eq 'hokusei') {return 1;}
if($ken eq 'hokudai') {return 1;}
if($ken eq 'iwate-pu') {return 1;}
if($ken eq 'ichinoseki') {return 3;}
if($ken eq 'ichinoseki') {return 3;}
if($ken eq 'tohoku') {return 4;}
if($ken eq 'shokei') {return 4;}
if($ken eq 'seiwa') {return 4;}
if($ken eq 'tohoku-gakuin') {return 4;}
if($ken eq 'sendai-ct') {return 4;}
if($ken eq 'akita-nct') {return 5;}
if($ken eq 'yamagata-u') {return 6;}
if($ken eq 'u-aizu') {return 7;}
if($ken eq 'fmu') {return 7;}
if($ken eq 'tsukuba') {return 8;}
if($ken eq 'ibaraki') {return 8;}
if($ken eq 'jichi') {return 9;}
if($ken eq 'utsunomiya-u') {return 9;}
if($ken eq 'dendai') {return 11;}
if($ken eq 'saitama-med') {return 11;}
if($ken eq 'dokkyo') {return 11;}
if($ken eq 'waseda') {return 13;}
if($ken eq 'tus') {return 13;}
if($ken eq 'uec') {return 13;}
if($ken eq 'titech') {return 13;}
if($ken eq 'jec') {return 13;}
if($ken eq 'nodai') {return 13;}
if($ken eq 'tuat') {return 13;}
if($ken eq 'jikei') {return 13;}
if($ken eq 'shobi') {return 13;}
if($ken eq 'keio') {return 13;}
if($ken eq 'gakushuin') {return 13;}
if($ken eq 'neec') {return 13;}
if($ken eq 'twmu') {return 13;}
if($ken eq 'icu') {return 13;}
if($ken eq 'toho-u') {return 13;}
if($ken eq 'kokugakuin') {return 13;}
if($ken eq 'u-tokyo') {return 13;}
if($ken eq 'nihon-u') {return 13;}
if($ken eq 'shobi-u') {return 13;}
if($ken eq 'chuo-u') {return 13;}
if($ken eq 'toyo') {return 13;}
if($ken eq 'kitasato-u') {return 13;}
if($ken eq 'teikyo-u') {return 13;}
if($ken eq 'kaiyodai') {return 13;}
if($ken eq 'ynu') {return 14;}
if($ken eq 'kanagawa-u') {return 14;}
if($ken eq 'toin') {return 14;}
if($ken eq 'niigata-u') {return 15;}
if($ken eq 'nagaokaut') {return 15;}
if($ken eq 'toyama-nct') {return 16;}
if($ken eq 'jaist') {return 17;}
if($ken eq 'fukui-nct') {return 18;}
if($ken eq 'shinshu-u') {return 20;}
if($ken eq 'iamas') {return 21;}
if($ken eq 'gifu-u') {return 21;}
if($ken eq 'shizuoka') {return 22;}
if($ken eq 'numazu-ct') {return 22;}
if($ken eq 'nig') {return 22;}
if($ken eq 'u-shizuoka-ken') {return 22;}
if($ken eq 'nitech') {return 23;}
if($ken eq 'nifs') {return 23;}
if($ken eq 'tut') {return 23;}
if($ken eq 'sozo') {return 23;}
if($ken eq 'chubu') {return 23;}
if($ken eq 'nanzan-u') {return 23;}
if($ken eq 'nagoya-u') {return 23;}
if($ken eq 'ims') {return 23;}
if($ken eq 'nibb') {return 23;}
if($ken eq 'tsudagakuen') {return 24;}
if($ken eq 'mie-u') {return 24;}
if($ken eq 'toba-cmt') {return 24;}
if($ken eq 'ritsumei') {return 26;}
if($ken eq 'kpu') {return 26;}
if($ken eq 'doshisha') {return 26;}
if($ken eq 'kyoto-u') {return 26;}
if($ken eq 'kit') {return 26;}
if($ken eq 'osaka-u') {return 27;}
if($ken eq 'kwansei') {return 28;}
if($ken eq 'kyoto-u') {return 28;}
if($ken eq 'kobedenshi') {return 28;}
if($ken eq 'hyo-med') {return 28;}
if($ken eq 'nara-su') {return 29;}
if($ken eq 'wakayama-u') {return 30;}
if($ken eq 'shimane-u') {return 32;}
if($ken eq 'ous') {return 33;}
if($ken eq 'kindai') {return 33;}
if($ken eq 'hiroshima-cu') {return 34;}
if($ken eq 'it-hiroshima') {return 34;}
if($ken eq 'yamaguchi-u') {return 35;}
if($ken eq 'tokushima-u') {return 36;}
if($ken eq 'shinonome') {return 38;}
if($ken eq 'kochi-u') {return 39;}
if($ken eq 'fit') {return 40;}
if($ken eq 'kyutech') {return 40;}
if($ken eq 'fukuoka-u') {return 40;}
if($ken eq 'kyushu-u') {return 40;}
if($ken eq 'nagasaki-u') {return 41;}
if($ken eq 'kumamoto-u') {return 43;}
if($ken eq 'miyazaki-u') {return 45;}
if($ken eq 'u-ryukyu') {return 47;}
if($ken eq 'kbc') {return 47;}
# if(open(LX,">> HOST29.001")){print LX "(ac.jp)$remo($ken)\n";close(LX);}
return 0;
}
sub area47vectant
{
my ($remo,$ken) = @_;
my $we = 57 ; #e=57 w=58
if($ken =~ /^e/) {$we = 57;}
if($ken =~ /^w/) {$we = 58;}
if($ken =~ /Bas1/) {return $we;}
if($ken =~ /IFL7/) {return $we;}
if($ken =~ /AFL/) {return $we;}
if($ken =~ /BFL/) {return $we;}
if($ken =~ /BN/) {return $we;}
if($ken =~ /BS/) {return $we;}
if($ken =~ /air/) {return 60;}
if($ken =~ /[A-Z]([a-z]+)FL\d+/) {$ken = $1;}
if($ken eq 'wide') {return 69;}
return &area47dti($remo,$ken) ;
}
sub area47nttpc
{
my ($remo,$ken) = @_;
if($ken =~ /[a-z]-([a-z]+)/) {$ken = $1;}
return &area47dti($remo,$ken) ;
}
sub area47ocn
{
my ($remo,$ken) = @_ ;
$ken =~ s/\.ovcs// ;
if($ken =~ /-/) {return 69;}
return &area47dti($remo,$ken) ;
}
sub area47catv
{
my ($remo) = @_;
if($remo =~ /\.seikyou\.ne\.jp$/) {return 68;}
if($remo =~ /\.wakwak\.ne\.jp$/) {return 68;}
if($remo =~ /\.eaccess\.ne\.jp$/) {return 68;}
if($remo =~ /\.highway\.ne\.jp$/) {return 68;}
if($remo =~ /\.bit-drive\.ne\.jp$/) {return 68;}
if($remo =~ /\.pwd\.ne\.jp$/) {return 68;}
if($remo =~ /\.([a-z\d]+)\.step\.ne\.jp$/)
{
my $ken = $1 ;
if($ken =~ /c5([a-z]+)/) {$ken = $1;}
return &area47mesh($remo,$ken) ;
}
if($remo =~ /\.bbiq\.jp$/) #bbiq.jp <20><><EFBFBD>B<EFBFBD>n<EFBFBD><6E>
{
if($remo =~ /hakata03/) {return 41;}
return 40;
}
if($remo =~ /\.ccnw\.ne\.jp$/) {return 23;} #.*.ccnw.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD>m<EFBFBD>E<EFBFBD>򕌁j
if($remo =~ /\.katch\.ne\.jp$/) {return 23;} #.*.katch.ne.jp$ KATCH-NET<45>i<EFBFBD><69><EFBFBD>m<EFBFBD>j
if($remo =~ /\.enat\.org$/) {return 21;} #.*.enat.org$ City.Ena'T.Org<72>i<EFBFBD>򕌌<EFBFBD><F2958C8C>b<EFBFBD>ߎs<DF8E>j
if($remo =~ /\.thn\.ne\.jp$/) {return 22;} #.*.thn.ne.jp$ THN CATV<54>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD>É<EFBFBD><C389>j
if($remo =~ /\.kitanet\.ne\.jp$/) {return 13;} #.*.kitanet.ne.jp$ <20>k<EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>k<EFBFBD><6B><EFBFBD>j
if($remo =~ /\.hot-cha\.tv$/) {return 35;} #.*.hot-cha.tv$ <20>ق<EFBFBD><D982><EFBFBD><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.across\.or\.jp$/) {return 22;} #.*.across.or.jp$ <20>h<EFBFBD><68><EFBFBD>[<5B><><EFBFBD>E<EFBFBD>F<EFBFBD>[<5B>u<EFBFBD>É<EFBFBD><C389>i<EFBFBD>É<EFBFBD><C389>j
if($remo =~ /\.cty-net\.ne\.jp$/) {return 24;} #.*.cty-net.ne.jp$ <20>V<EFBFBD>[<5B>E<EFBFBD>e<EFBFBD>B<EFBFBD>[<5B>E<EFBFBD><45><EFBFBD>C <20>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>ڑ<EFBFBD><DA91>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD>O<EFBFBD>d<EFBFBD>j
if($remo =~ /\.miyazaki-catv\.ne\.jp$/) {return 45;} #.*.miyazaki-catv.ne.jp$ MCN <20>{<7B><><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>{<7B><><EFBFBD>j
if($remo =~ /\.tac-net\.ne\.jp$/) {return 23;} #.*.tac-net.ne.jp$ <20>m<EFBFBD><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD>m<EFBFBD>j
if($remo =~ /\.orihime\.ne\.jp$/) {return 23;} #.*.orihime.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>Ђ߂˂<DF82><CB82>Ɓi<C681><69><EFBFBD>m<EFBFBD><6D><EFBFBD><EFBFBD><EFBFBD>{<7B>s<EFBFBD>j
if($remo =~ /\.starcat\.ne\.jp$/) {return 23;} #.*.starcat.ne.jp$ Starcat<61>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD><69><EFBFBD>m<EFBFBD><6D><EFBFBD><EFBFBD><EFBFBD>É<EFBFBD><C389>s<EFBFBD>j
if($remo =~ /\.nmt\.ne\.jp$/) {return 36;} #.*.nmt.ne.jp$ NMT<4D>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.tcn-catv\.ne\.jp$/) {return 13;} #.*.tcn-catv.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.kcv\.ne\.jp$/) {return 33;} #.*.kcv.ne.jp$ <20><><EFBFBD>߃l<DF83>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD>R<EFBFBD>j
if($remo =~ /\.csf\.ne\.jp$/) {return 40;} #.*.csf.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>X<EFBFBD>e<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.cts-net\.ne\.jp$/) {return 44;} #.*.cts-net.ne.jp$ CTS<54>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD><EFBFBD>j
if($remo =~ /\.scn-net\.ne\.jp$/) {return 14;} #.*.scn-net.ne.jp$ <20>Ó<EFBFBD><C393>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD>_<EFBFBD>ސ<EFBFBD><DE90>j
if($remo =~ /\.amigo\d?\.ne\.jp$/) {return 24;} #.*.amigo2.ne.jp$ <20>A<EFBFBD>~<7E>[<5B>S<EFBFBD>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD>O<EFBFBD>d<EFBFBD>j
if($remo =~ /\.catvy\.ne\.jp$/) {return 6;} #.*.catvy.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>R<EFBFBD>`<60>i<EFBFBD>R<EFBFBD>`<60>j
if($remo =~ /\.ztv\.ne\.jp$/) {return 24;} #.*.ztv.ne.jp$ Z-LAN<41>i<EFBFBD>O<EFBFBD>d<EFBFBD>j
if($remo =~ /\.actv\.ne\.jp$/) {return 2;} #.*.actv.ne.jp$ <20>X<C290>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>X<C290>j
if($remo =~ /\.hicat\.ne\.jp$/) {return 34;} #.*.hicat.ne.jp$ <20>L<EFBFBD><4C><EFBFBD>V<EFBFBD>e<EFBFBD>B<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r HICAT<41>i<EFBFBD>L<EFBFBD><4C><EFBFBD>j
if($remo =~ /\.kcn\.ne\.jp$/) {return 53;} #.*.kcn.ne.jp$ KCN-Net Service<63>i<EFBFBD>ߋE<DF8B>j
if($remo =~ /\.itscom\.jp$/) {return 13;} #.*.itscom.jp$ <20>C<EFBFBD>b<EFBFBD>c<EFBFBD>E<EFBFBD>R<EFBFBD>~<7E><><EFBFBD>j<EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ёi<D081><69><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>_<EFBFBD>ސ<EFBFBD><DE90>j
if($remo =~ /\.246\.ne\.jp$/) {return 13;} #.*.246.ne.jp$ <20>C<EFBFBD>b<EFBFBD>c<EFBFBD>E<EFBFBD>R<EFBFBD>~<7E><><EFBFBD>j<EFBFBD>P<EFBFBD>[<5B>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ёi<D081><69><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>_<EFBFBD>ސ<EFBFBD><DE90>j
if($remo =~ /\.aikis\.or\.jp$/) {return 30;} #.*.aikis.or.jp$ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>B<EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD>a<EFBFBD>̎R<CC8E>j
if($remo =~ /\.coara\.or\.jp$/) {return 40;} #.*.coara.or.jp$ <20>j<EFBFBD><6A><EFBFBD>[COARA<52>i<EFBFBD><EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.kumin\.ne\.jp$/) {return 40;} #.*.kumin.ne.jp$ <20><><EFBFBD>[<5B>݂<EFBFBD><DD82>u<EFBFBD><75><EFBFBD>[<5B>h<EFBFBD>o<EFBFBD><6F><EFBFBD>h<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.gujo-tv\.ne\.jp$/) {return 21;} #.*.gujo-tv.ne.jp$ <20>S<EFBFBD><53><EFBFBD>L<EFBFBD><4C><EFBFBD>A<EFBFBD><41><EFBFBD>i<EFBFBD>򕌁j
if($remo =~ /\.hcvnet.jp$/) {return 31;} #.*.hcvnet.jp$ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ё@<40>R<EFBFBD><52><EFBFBD>s<EFBFBD><73><EFBFBD>[<5B>^<5E>E<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.spacelan\.ne\.jp$/) {return 17;} #.*.spacelan.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD>ΐ<EFBFBD><CE90>j
if($remo =~ /\.ayu\.ne\.jp$/) {return 14;} #.*.ayu.ne.jp$ <20><><EFBFBD>؈ɐ<D888><C990><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD>_<EFBFBD>ސ<EFBFBD><DE90>j
if($remo =~ /\.cna\.ne\.jp$/) {return 5;} #.*.cna.ne.jp$ <20>H<EFBFBD>c<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>H<EFBFBD>c<EFBFBD>j
if($remo =~ /\.catvnet\.ne\.jp$/) {return 54;} #.*.catvnet.ne.jp$ CATV<54>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD>l<EFBFBD><6C><EFBFBD>j
if($remo =~ /\.m-net\.ne\.jp$/) {return 13;} #.*.m-net.ne.jp$ My TV<54>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.ncv\.ne\.jp$/) {return 1;} #.*.ncv.ne.jp$ NCV<43>i<EFBFBD>k<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>َs<D98E>j
if($remo =~ /\.adachi\.ne\.jp$/) {return 13;} #.*.adachi.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD><72><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.wac2\.net$/) {return 28;} #.*.wac2.net$ <20><EFBFBD><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD>Ɂj
if($remo =~ /\.net3-tv\.net$/) {return 16;} #.*.net3-tv.net$ Net3 Internet<65>i<EFBFBD>x<EFBFBD>R<EFBFBD>j
if($remo =~ /\.lcv\.ne\.jp$/) {return 20;} #.*.lcv.ne.jp$ LCV-Net<65>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.tontonme\.ne\.jp$/) {return 47;} #.*.tontonme.ne.jp$ <20>Ƃ<EFBFBD><C682>Ƃ<EFBFBD><C682>݁`<60>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.denkosekka\.ne\.jp$/) {return 51;} #.*.denkosekka.ne.jp$ <20>d<EFBFBD><64><EFBFBD>Ή΁i<CE81><69><EFBFBD><EFBFBD><EFBFBD>d<EFBFBD>d<EFBFBD>j
if($remo =~ /\.mecha\.ne\.jp$/) {return 24;} #.*.mecha.ne.jp$ MeCha<68>i<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><EFBFBD>j
if($remo =~ /\.oninet\.ne\.jp$/) {return 33;} #.*.oninet.ne.jp$ oni<6E>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD><69><EFBFBD>R<EFBFBD>j
if($remo =~ /\.rmc\.ne\.jp$/) {return 25;} #.*.rmc.ne.jp$ Rmc<6D>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.mco\.ne\.jp$/) {return 47;} #.*.mco.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ղ<EFBFBD><D582>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.aitai\.ne\.jp$/) {return 23;} #.*.aitai.ne.jp$ Aitai net<65>i<EFBFBD><69><EFBFBD>m<EFBFBD>E<EFBFBD>򕌁j
if($remo =~ /\.ocv\.ne\.jp$/) {return 51;} #.*.ocv.ne.jp$ <20><><EFBFBD>c<EFBFBD>}<7D>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD>
if($remo =~ /\.nns\.ne\.jp$/) {return 19;} #*.nns.ne.jp$ <20><><EFBFBD>{<7B>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD>R<EFBFBD><52><EFBFBD>j
if($remo =~ /\.cablenet\.ne\.jp$/) {return 11;} #.*.cablenet.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>
if($remo =~ /\.milare-tv\.ne\.jp$/) {return 16;} #.*.milare-tv.ne.jp$ <20>݂<EFBFBD><DD82>[<5B><>TV<54>i<EFBFBD>x<EFBFBD>R<EFBFBD>j
if($remo =~ /\.mni\.ne\.jp$/) {return 4;} #.*.mni.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r <20>L<EFBFBD><4C><EFBFBD>x<EFBFBD>c(<28>{<7B><>)
if($remo =~ /\.gallery\.ne\.jp$/) {return 39;} #.*.gallery.ne.jp$ <20>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>gGallery<72>i<EFBFBD><69><EFBFBD>m<EFBFBD>j
if($remo =~ /\.cans\.ne\.jp$/) {return 26;} #.*.cans.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD><4E><EFBFBD>ׁ̂i<D781><69><EFBFBD>s<EFBFBD>j
if($remo =~ /\.ict\.ne\.jp$/) {return 24;} #.*.ict.ne.jp$ <20>ɉ<EFBFBD><C989><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>O<EFBFBD>d<EFBFBD>j
if($remo =~ /\.ctk\.ne\.jp$/) {return 21;} #.*.ctk.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>Ž<EFBFBD><C28E>i<EFBFBD>򕌁j
if($remo =~ /\.ucatv\.ne\.jp$/) {return 9;} #.*.ucatv.ne.jp$ <20>F<EFBFBD>s<EFBFBD>{<7B>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>Ȗ؁j
if($remo =~ /\.cncm\.ne\.jp$/) {return 42;} #.*.cncm.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD><EFBFBD><EFBFBD>f<EFBFBD>B<EFBFBD>A<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.itakita\.net$/) {return 5;} #.*.itakita.net$ <20>H<EFBFBD>c<EFBFBD><63>IT<49><54><EFBFBD>Ջ<EFBFBD><D58B><EFBFBD>
if($remo =~ /\.ogaki-tv\.ne\.jp$/) {return 21;} #.*.ogaki-tv.ne.jp$ <20><><EFBFBD>_<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>򕌁j
if($remo =~ /\.t-net\.ne\.jp$/) {return 13;} #.*.t-net.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.fureai-ch\.ne\.jp$/) {return 34;} #.*.fureai-ch.ne.jp$ <20>ӂꂠ<D382><EA82A0><EFBFBD>`<60><><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD><6C><EFBFBD>i<EFBFBD>L<EFBFBD><4C><EFBFBD>j
if($remo =~ /\.synapse\.ne\.jp$/) {return 46;} #.*.synapse.ne.jp$ <20>V<EFBFBD>i<EFBFBD>v<EFBFBD>X<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.dokidoki\.ne\.jp$/) {return 38;} #.*.dokidoki.ne.jp$ <20>}<7D>W<EFBFBD>J<EFBFBD><4A><EFBFBD>T<EFBFBD>C<EFBFBD>g<EFBFBD>E<EFBFBD>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD><69><EFBFBD>Q<EFBFBD>j
if($remo =~ /\.shizuokanet\.ne\.jp$/) {return 22;} #.*.shizuokanet.ne.jp$ <20>É<EFBFBD><C389>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD>É<EFBFBD><C389>j
if($remo =~ /\.kyoto-inet\.or\.jp$/) {return 26;} #.*.kyoto-inet.or.jp$ <20><><EFBFBD>s<EFBFBD>A<EFBFBD>C<EFBFBD>l<EFBFBD>b<EFBFBD>gBB<42>i<EFBFBD><69><EFBFBD>s<EFBFBD>j
if($remo =~ /\.wainet\.ne\.jp$/) {return 45;} #.*.wainet.ne.jp$ <20>킢Wai<61>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD>{<7B><><EFBFBD>j
if($remo =~ /\.kcn-tv\.ne\.jp$/) {return 43;} #.*.kcn-tv.ne.jp$ <20>F<EFBFBD>{<7B>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD>F<EFBFBD>{<7B>j
if($remo =~ /\.d-b\.ne\.jp$/) {return 44;} #.*.d-b.ne.jp$ <20><EFBFBD><E595AA><EFBFBD><EFBFBD><EFBFBD>V<EFBFBD><56><EFBFBD>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD><EFBFBD>j
if($remo =~ /\.parkcity\.ne\.jp$/) {return 13;} #.*.parkcity.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD><4F><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.nirai\.ne\.jp$/) {return 47;} #.*.nirai.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.cosmos\.ne\.jp$/) {return 47;} #.*.cosmos.ne.jp$ COSMOS NET COMMUNICATIONS<4E>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.kct\.ne\.jp$/) {return 33;} #.*.kct.ne.jp$ <20>q<EFBFBD>~<7E>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>R<EFBFBD>j
if($remo =~ /\.me-h\.ne\.jp$/) {return 1;} #.*.me-h.ne.jp$ ME<4D>k<EFBFBD>C<EFBFBD><43><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD>k<EFBFBD>C<EFBFBD><43><EFBFBD>j
if($remo =~ /\.asagaotv\.ne\.jp$/) {return 17;} #.*.asagaotv.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>ΐ<EFBFBD><CE90>j
if($remo =~ /\.medias\.ne\.jp$/) {return 23;} #.*.medias.ne.jp$ <20>m<EFBFBD><6D><EFBFBD><EFBFBD><EFBFBD>f<EFBFBD>B<EFBFBD>A<EFBFBD>X<EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N
if($remo =~ /\.octv\.ne\.jp$/) {return 1;} #.*.octv.ne.jp$ <20>эL<D18D>V<EFBFBD>e<EFBFBD>B<EFBFBD>[<5B>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>i<EFBFBD>k<EFBFBD>C<EFBFBD><43><EFBFBD>j
if($remo =~ /\.wbs\.ne\.jp$/) {return 22;} #.*.wbs.ne.jp$ Web<65>É<EFBFBD>
if($remo =~ /\.commufa\.jp$/) {return 52;} #.*.commufa.jp$ <20>R<EFBFBD>~<7E><><EFBFBD>t<EFBFBD>@<40>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>d<EFBFBD>́j
if($remo =~ /\.sni\.ne\.jp$/) {return 41;} #.*.sni.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>V<EFBFBD><56><EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD>V<EFBFBD><56><EFBFBD>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.netwave\.or\.jp$/) {return 54;} #.*.netwave.or.jp$ Netwave<76>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD>l<EFBFBD><6C><EFBFBD>j
if($remo =~ /\.mopera\.ne\.jp$/) {return 60;} #.*.mopera.ne.jp$ <20><><EFBFBD>y<EFBFBD><79><EFBFBD>iFOMA<4D>̐ڑ<CC90><DA91>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>H<EFBFBD>j
if($remo =~ /\.koalanet\.ne\.jp$/) {return 12;} #.*.koalanet.ne.jp$ <20>R<EFBFBD>A<EFBFBD><41><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>t<EFBFBD>j
if($remo =~ /\.clovernet\.ne\.jp$/) {return 23;} #.*.clovernet.ne.jp$ <20>N<EFBFBD><4E><EFBFBD>[<5B>o<EFBFBD>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD><69><EFBFBD>m<EFBFBD>j
if($remo =~ /\.hottv\.ne\.jp$/) {return 25;} #.*.hottv.ne.jp$ <20>ߍ]<5D><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ёi<D081><69><EFBFBD><EFBFBD>ߍ]<5D><><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.tvk\.ne\.jp$/) {return 17;} #.*.tvk.ne.jp$ <20>e<EFBFBD><65><EFBFBD>r<EFBFBD><72><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>ΐ<EFBFBD><CE90>j
if($remo =~ /\.tcn\.ne\.jp$/) {return 36;} #.*.tcn.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.ccv\.ne\.jp$/) {return 34;} #.*.ccv.ne.jp$ <20>ӂꂠ<D382><EA82A0><EFBFBD>`<60><><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD><6C><EFBFBD>i<EFBFBD>L<EFBFBD><4C><EFBFBD>j
if($remo =~ /\.cnc\.jp$/) {return 12;} #.*.cnc.jp$ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ЃP<D083>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD><4E><EFBFBD>t
if($remo =~ /\.e-catv\.ne\.jp$/) {return 38;} #.*.e-catv.ne.jp$ <20><><EFBFBD>QCATV<54>i<EFBFBD><69><EFBFBD>Q<EFBFBD>j
if($remo =~ /\.wind\.ne\.jp$/) {return 10;} #.*.wind.ne.jp$ <20>Q<EFBFBD>n<EFBFBD>C<EFBFBD><43><EFBFBD>^<5E>[<5B>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD>Q<EFBFBD>n<EFBFBD>j
if($remo =~ /\.hit-5\.net$/) {return 32;} #.*.hit-5.net$ <20>_<EFBFBD>B<EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.yukiguni\.net$/) {return 15;} #.*.yukiguni.net$ <20><EFBFBD><E482AB><EFBFBD>Ƀl<C983>b<EFBFBD>g<EFBFBD>i<EFBFBD>V<EFBFBD><56><EFBFBD>j
if($remo =~ /\.kct\.ad\.jp$/) {return 33;} #.*.kct.ad.jp$ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Бq<D091>~<7E>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>R<EFBFBD>j
if($remo =~ /\.ictnet\.ne\.jp$/) {return 3;} #.*.ictnet.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.chikamatsu\.ne\.jp$/) {return 13;} #.*.chikamatsu.ne.jp$ PS/PLAZA <20>n<EFBFBD><6E><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD><63><EFBFBD>j
if($remo =~ /\.miracle\.ne\.jp$/) {return 55;} #.*.miracle.ne.jp$ San-inNet<65>i<EFBFBD>R<EFBFBD>A<EFBFBD>n<EFBFBD><6E><EFBFBD>j
if($remo =~ /\.avis\.ne\.jp$/) {return 71;} #.*.avis.ne.jp$ <20>A<EFBFBD><41><EFBFBD>B<EFBFBD>X<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.fcv\.ne\.jp$/) {return 30;} #.*.fcv.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD>
if($remo =~ /\.inacatv\.ne\.jp$/) {return 20;} #.*.inacatv.ne.jp$ <20>ɓ߃P<DF83>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD>
if($remo =~ /\.incl\.ne\.jp$/) {return 70;} #.*.incl.ne.jp$ <20>C<EFBFBD><43><EFBFBD>N<EFBFBD><4E><EFBFBD>i<EFBFBD>k<EFBFBD><6B><EFBFBD>n<EFBFBD><6E><EFBFBD>j
if($remo =~ /\.c-able\.ne\.jp$/) {return 35;} #.*.c-able.ne.jp$ <20>R<EFBFBD><52><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>R<EFBFBD><52><EFBFBD>j
if($remo =~ /\.tees\.ne\.jp$/) {return 23;} #.*.tees.ne.jp$ <20>L<EFBFBD><4C><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD>m<EFBFBD><6D><EFBFBD>L<EFBFBD><4C><EFBFBD>s<EFBFBD>E<EFBFBD>c<EFBFBD><63><EFBFBD>s<EFBFBD>j
if($remo =~ /\.cty8\.com$/) {return 16;} #.*.cty8.com$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD><72><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>x<EFBFBD>R<EFBFBD>j
if($remo =~ /\.bc9\.ne\.jp$/) {return 9;} #.*.bc9.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>Ȗ؎<C896><D88E><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.cc9\.ne\.jp$/) {return 9;} #.*.cc9.ne.jp$ <20>Ȗ؃P<D883>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>Ȗ؁E<D881>Q<EFBFBD>n<EFBFBD>j
if($remo =~ /\.cnh\.ne\.jp$/) {return 16;} #.*.cnh.ne.jp$ <20>X<EFBFBD><58><EFBFBD>E<EFBFBD>H<EFBFBD><48><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD>i<EFBFBD>x<EFBFBD>R<EFBFBD><52><EFBFBD>X<EFBFBD><58><EFBFBD>s<EFBFBD>E<EFBFBD>H<EFBFBD><48><EFBFBD>s<EFBFBD>j
if($remo =~ /\.catvmics\.ne\.jp$/) {return 23;} #.*.catvmics.ne.jp$ <20>~<7E>N<EFBFBD>X<EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD>m<EFBFBD><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.cts\.ne\.jp$/) {return 13;} #.*.cts.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.tcat\.ne\.jp$/) {return 11;} #.*.tcat.ne.jp$ <20>e<EFBFBD>v<EFBFBD>R<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>ʁj
if($remo =~ /\.tcnet\.ne\.jp$/) {return 16;} #.*.tcnet.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD>x<EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.winknet\.ne\.jp$/) {return 28;} #.*.winknet.ne.jp$ <20>P<EFBFBD>H<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>Ɍ<EFBFBD><C98C>P<EFBFBD>H<EFBFBD>s<EFBFBD>j
if($remo =~ /\.usennet\.ne\.jp$/) {return 25;} #.*.usennet.ne.jp$ <20><><EFBFBD>R<EFBFBD>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EA8CA7><EFBFBD>R<EFBFBD>s<EFBFBD>j
if($remo =~ /\.ictv\.ne\.jp$/) {return 11;} #.*.ictv.ne.jp$ <20><><EFBFBD>ԃP<D483>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>ʌ<EFBFBD><CA8C><EFBFBD><EFBFBD>Ԏs<D48E>j
if($remo =~ /\.otv\.ne\.jp$/) {return 10;} #.*.otv.ne.jp$ <20>Q<EFBFBD>n<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD><EFBFBD><EFBFBD>f<EFBFBD>B<EFBFBD>A<EFBFBD>i<EFBFBD>Q<EFBFBD>n<EFBFBD><6E><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD>s<EFBFBD>E<EFBFBD>ː<EFBFBD><CB90>s<EFBFBD>j
if($remo =~ /\.sdx\.ne\.jp$/) {return 11;} #.*.sdx.ne.jp$ <20><><EFBFBD>ʃf<CA83>[<5B>^<5E>G<EFBFBD>N<EFBFBD>X<EFBFBD>`<60>F<EFBFBD><46><EFBFBD>W<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>i<EFBFBD><69><EFBFBD>ʁj
if($remo =~ /\.tcv\.jp$/) {return 13;} #.*.tcv.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD>
if($remo =~ /\.h555\.net$/) {return 28;} #.*.h555.net$ h555.net<65>i<EFBFBD><69><EFBFBD>Ɍ<EFBFBD><C98C>j
if($remo =~ /\.lan-do\.ne\.jp$/) {return 1;} #.*.lan-do.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r <20>|<7C>e<EFBFBD>g<EFBFBD>i<EFBFBD>k<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.bbbn\.jp$/) {return 34;} #.*.bbbn.jp$ BBBN<42>i<EFBFBD>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.ctb\.ne\.jp$/) {return 44;} #.*.ctb.ne.jp$ CTB<54><42><EFBFBD>f<EFBFBD>B<EFBFBD>A<EFBFBD>i<EFBFBD><EFBFBD>j
if($remo =~ /\.intsurf\.ne\.jp$/) {return 24;} #.*.intsurf.ne.jp$ <20>C<EFBFBD><43><EFBFBD>g<EFBFBD>T<EFBFBD>[<5B>t<EFBFBD>i<EFBFBD>O<EFBFBD>d<EFBFBD><64><EFBFBD>K<EFBFBD><4B><EFBFBD>s<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.cvk\.ne\.jp$/) {return 19;} #.*.cvk.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>b<EFBFBD>`<60>s<EFBFBD>u<EFBFBD>i<EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>v<EFBFBD>X<EFBFBD>s<EFBFBD>j
if($remo =~ /\.omn\.ne\.jp$/) {return 6;} #.*.omn.ne.jp$ <20>j<EFBFBD>R<EFBFBD>j<EFBFBD>R<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>R<EFBFBD>`<60>j
if($remo =~ /\.kcv-net\.ne\.jp$/) {return 11;} #.*.kcv-net.ne.jp$ <20><><EFBFBD>z<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>ʌ<EFBFBD><CA8C><EFBFBD><EFBFBD>z<EFBFBD>s<EFBFBD>j
if($remo =~ /\.accsnet\.ne\.jp$/) {return 8;} #.*.accsnet.ne.jp$ ACCSnet<65>i<EFBFBD><69><EFBFBD><EFBFBD>‚<EFBFBD><C282>Ύs<CE8E>j
if($remo =~ /\.tst\.ne\.jp$/) {return 16;} #.*.tst.ne.jp$ <20>ƂȂ݉q<DD89><71><EFBFBD>ʐM<CA90>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>x<EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>E<EFBFBD><45><EFBFBD>v<EFBFBD>s<EFBFBD>E<EFBFBD>v<EFBFBD>g<EFBFBD>s<EFBFBD>j
if($remo =~ /\.ctt\.ne\.jp$/) {return 16;} #.*.ctt.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>x<EFBFBD>R<EFBFBD>i<EFBFBD>x<EFBFBD>R<EFBFBD><52><EFBFBD>x<EFBFBD>R<EFBFBD>s<EFBFBD>E<EFBFBD>M<EFBFBD><4D><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.fctv\.ne\.jp$/) {return 18;} #.*.fctv.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.izu\.co\.jp$/) {return 22;} #.*.izu.co.jp$ <20>ɓ<EFBFBD><C993>}<7D>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD>É<EFBFBD><C389><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.icnet\.ne\.jp$/) {return 12;} #.*.icnet.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD>t<EFBFBD><74><EFBFBD>s<EFBFBD><73><EFBFBD>s<EFBFBD>j
if($remo =~ /\.kyoto-inetbb\.jp$/) {return 26;} #.*.kyoto-inetbb.jp$ <20><><EFBFBD>s<EFBFBD>A<EFBFBD>C<EFBFBD>l<EFBFBD>b<EFBFBD>gBB<42>i<EFBFBD><69><EFBFBD>s<EFBFBD>j
if($remo =~ /\.cc22\.ne\.jp$/) {return 34;} #.*.cc22.ne.jp$ <20>ӂꂠ<D382><EA82A0><EFBFBD>`<60><><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD><6C><EFBFBD>i<EFBFBD>L<EFBFBD><4C><EFBFBD>s<EFBFBD>j
if($remo =~ /\.catv296\.ne\.jp$/) {return 12;} #.*.catv296.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g296<39>i<EFBFBD><69><EFBFBD>t<EFBFBD>j
if($remo =~ /\.ueda\.ne\.jp$/) {return 20;} #.*.ueda.ne.jp$ <20><><EFBFBD>c<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.toshima\.ne\.jp$/) {return 13;} #.*.toshima.ne.jp$ <20>L<EFBFBD><4C><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.ii-okinawa\.ne\.jp$/) {return 47;} #.*.ii-okinawa.ne.jp$ ii-okinawa<77>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.biwa\.ne\.jp$/) {return 25;} #.*.biwa.ne.jp$ BIWALOBE<42>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.tvkumagaya\.ne\.jp$/) {return 11;} #.*.tvkumagaya.ne.jp$ <20>F<EFBFBD>J<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>ʌ<EFBFBD><CA8C>F<EFBFBD>J<EFBFBD>s<EFBFBD>j
if($remo =~ /\.mable\.ne\.jp$/) {return 32;} #.*.mable.ne.jp$ <20>R<EFBFBD>A<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<5D>s<EFBFBD>j
if($remo =~ /\.tamatele\.ne\.jp$/) {return 33;} #.*.tamatele.ne.jp$ <20>ʓ<EFBFBD><CA93>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD>R<EFBFBD><52><EFBFBD>q<EFBFBD>~<7E>s<EFBFBD>j
if($remo =~ /\.ccnet-ai\.ne\.jp$/) {return 23;} #.*.ccnet-ai.ne.jp$ CCNet<65>L<EFBFBD><4C><EFBFBD>ǁi<C781><69><EFBFBD>m<EFBFBD><6D><EFBFBD>L<EFBFBD><4C><EFBFBD>s<EFBFBD>j
if($remo =~ /\.infoaomori\.ne\.jp$/) {return 2;} #.*.infoaomori.ne.jp$ 7-dj.com<6F>i<EFBFBD>X<C290>j
if($remo =~ /\.7-dj\.ne\.jp$/) {return 2;} #.*.infoaomori.ne.jp$ 7-dj.com<6F>i<EFBFBD>X<C290>j
if($remo =~ /\.btvm\.ne\.jp$/) {return 46;} #.*.btvm.ne.jp$ BTV<54>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.kbn\.ne\.jp$/) {return 37;} #.*.kbn.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD><72><EFBFBD><EFBFBD><EFBFBD>ԁi<D481><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.rcn\.ne\.jp$/) {return 18;} #.*.rcn.ne.jp$ menet<65>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.hearts\.ne\.jp$/) {return 38;} #.*.hearts.ne.jp$ HEART NET<45>i<EFBFBD><69><EFBFBD>Q<EFBFBD>j
if($remo =~ /\.yct\.ne\.jp$/) {return 33;} #.*.yct.ne.jp$ <20><><EFBFBD>|<7C><><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD>S<EFBFBD><53><EFBFBD>|<7C><><EFBFBD>j
if($remo =~ /\.c3-net\.ne\.jp$/) {return 14;} #.*.c3-net.ne.jp$ JCN<43>`<60><><EFBFBD>i<EFBFBD>_<EFBFBD>ސ쌧<DE90><EC8CA7><EFBFBD>l<EFBFBD>s<EFBFBD>j
if($remo =~ /\.ginga-net\.ne\.jp$/) {return 3;} #.*.ginga-net.ne.jp$ <20>k<EFBFBD><6B><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD>k<EFBFBD><6B><EFBFBD>s<EFBFBD>j
if($remo =~ /\.icn-net\.ne\.jp$/) {return 3;} #.*.icn-net.ne.jp$ <20><><EFBFBD>փP<D683>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>[<5B>N<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><E88CA7><EFBFBD>֎s<D68E>j
if($remo =~ /\.canet\.ne\.jp$/) {return 16;} #.*.canet.ne.jp$ <20>ː<EFBFBD><CB90>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>x<EFBFBD>R<EFBFBD><52><EFBFBD>ː<EFBFBD><CB90>s<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.kamakuranet\.ne\.jp$/) {return 14;} #.*.kamakuranet.ne.jp$ <20><><EFBFBD>q<EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>_<EFBFBD>ސ쌧<DE90><EC8CA7><EFBFBD>q<EFBFBD>s<EFBFBD>j
if($remo =~ /\.s-cnet\.ne\.jp$/) {return 22;} #.*.s-cnet.ne.jp$ <20>h<EFBFBD><68><EFBFBD>[<5B><><EFBFBD>E<EFBFBD>F<EFBFBD>[<5B>u<EFBFBD>É<EFBFBD><C389>i<EFBFBD>É<EFBFBD><C389><EFBFBD><EFBFBD>É<EFBFBD><C389>s<EFBFBD>j
if($remo =~ /\.c-marinet\.ne\.jp$/) {return 4;} #.*.c-marinet.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>{<7B><EFBFBD><E98CA7><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>E<EFBFBD><45><EFBFBD>{<7B><><EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD><6C><EFBFBD>j
if($remo =~ /\.himawarinet\.ne\.jp$/) {return 42;} #.*.himawarinet.ne.jp$ <20>Ђ܂<D082><DC82><EFBFBD><EFBFBD>Ă<EFBFBD><C482>сi<D181><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.ccsnet\.ne\.jp$/) {return 35;} #.*.ccsnet.ne.jp$ <20>V<EFBFBD>e<EFBFBD>B<EFBFBD>[<5B>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.sakura-catv\.ne\.jp$/) {return 13;} #.*.sakura-catv.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>n<EFBFBD>c<EFBFBD><63><EFBFBD>j
if($remo =~ /\.hinocatv\.ne\.jp$/) {return 13;} #.*.hinocatv.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.watv\.ne\.jp$/) {return 9;} #.*.watv.ne.jp$ <20><EFBFBD><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>Ȗ،<C896><D88C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.mctv\.ne\.jp$/) {return 24;} #.*.mctv.ne.jp$ MCTV<54><56><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD>O<EFBFBD>d<EFBFBD><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.tmtv\.ne\.jp$/) {return 14;} #.*.tmtv.ne.jp$ <20>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>l<EFBFBD>b<EFBFBD>g<EFBFBD>‚Â<C282><C382>̐X<CC90>i<EFBFBD><69><EFBFBD>l<EFBFBD>s<EFBFBD>s<EFBFBD>}<7D><><EFBFBD>j
if($remo =~ /\.ttv\.ne\.jp$/) {return 13;} #.*.ttv.ne.jp$ <20><><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD><65><EFBFBD>r<EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD>q<EFBFBD>s<EFBFBD>E<EFBFBD><45><EFBFBD>c<EFBFBD>s<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.sopia\.or\.jp$/) {return 8;} #.*.sopia.or.jp$ <20>\<5C>s<EFBFBD>A<EFBFBD>t<EFBFBD>H<EFBFBD><48><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ёi<D081><69><EFBFBD><EFBFBD><E98CA7><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>j
if($remo =~ /\.nice-tv\.jp$/) {return 16;} #.*.nice-tv.jp$ NICE TV<54>i<EFBFBD>x<EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>Îs<C38E>j
if($remo =~ /\.iwamicatv\.jp$/) {return 32;} #.*.iwamicatv.jp$ <20>Ό<EFBFBD><CE8C>P<EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>r<EFBFBD>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD>c<EFBFBD>s<EFBFBD>E<EFBFBD>]<5D>Îs<C38E>j
if($remo =~ /\.cac-net\.ne\.jp$/) {return 23;} #.*.cac-net.ne.jp$ CATV<54><56><EFBFBD>m<EFBFBD>i<EFBFBD><69><EFBFBD>m<EFBFBD><6D><EFBFBD><EFBFBD><EFBFBD>c<EFBFBD>s<EFBFBD>j
if($remo =~ /\.inforyoma\.or\.jp$/) {return 39;} #inforyoma.or.jp <20><><EFBFBD>m
if($remo =~ /\.joetsu\.ne\.jp$/) {return 15;} #joetsu.ne.jp <20>V<EFBFBD><56>
if($remo =~ /\.cable-net\.ne\.jp$/) {return 25;} #cable-net.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.icc\.ne\.jp$/) {return 14;} #icc.ne.jp <20>_<EFBFBD>ސ<EFBFBD>
if($remo =~ /\.bai\.ne\.jp$/) {return 28;} #bai.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.people-i\.ne\.jp$/) {return 41;} #people-i.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.fruits\.ne\.jp$/) {return 19;} #fruits.ne.jp <20>R<EFBFBD><52>
if($remo =~ /\.viplt\.ne\.jp$/) {return 70;} #viplt.ne.jp <20>k<EFBFBD><6B>
if($remo =~ /\.taku\.ne\.jp$/) {return 41;} #taku.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.htv-net\.ne\.jp$/) {return 2;} #htv-netne.jp <20>X
if($remo =~ /\.gol\.ne\.jp$/) {return 68;} #'gol.ne.jp'
if($remo =~ /\.kinet-tv\.ne\.jp$/) {return 26;} #'kinet-tv.ne.jp'<27><><EFBFBD>s
if($remo =~ /\.cyberbb\.ne\.jp$/) {return 68;} #'cyberbb.ne.jp'
if($remo =~ /\.tribe\.ne\.jp$/) {return 68;} #'tribe.ne.jp'
if($remo =~ /\.janis\.or\.jp$/) {return 20;} #janis.or.jp<6A>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.valley\.ne\.jp$/) {return 20;} #valley.ne.jp<6A>i<EFBFBD><69><EFBFBD><EFBFBD><EFBFBD>j
if($remo =~ /\.tnc\.ne\.jp$/) {return 22;} #tnc.ne.jp<6A>@<40>É<EFBFBD>
if($remo =~ /\.tokai\.or\.jp$/) {return 22;} #tokai.or.jp<6A>@<40>É<EFBFBD>
if($remo =~ /\.chukai\.ne\.jp$/) {return 31;} #chukai.ne.jp<6A>@<40><><EFBFBD><EFBFBD>
if($remo =~ /\.nasicnet\.ne\.jp$/) {return 27;} #nasicnet.ne.jp<6A>@<40><><EFBFBD><EFBFBD>
if($remo =~ /\.namikata\.ne\.jp$/) {return 38;} #namikata.ne.jp<6A>@<40><><EFBFBD>Q
if($remo =~ /\.bunbun\.ne\.jp$/) {return 41;} #bunbun.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.harenet\.ne\.jp$/) {return 33;} #harenet.ne.jp <20><><EFBFBD>R
if($remo =~ /\.yomogi\.or\.jp$/) {return 9;} #yomogi.or.jp <20>Ȗ<EFBFBD>
if($remo =~ /\.ttn\.ne\.jp$/) {return 18;} #ttn.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.rosenet\.ne\.jp$/) {return 13;} #rosenet.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.ctktv\.ne\.jp$/) {return 14;} #ctktv.ne.jp <20>_<EFBFBD>ސ<EFBFBD>
if($remo =~ /\.gctv\.ne\.jp$/) {return 23;} #gctv.ne.jp <20><><EFBFBD>É<EFBFBD>
if($remo =~ /\.kamon\.ne\.jp$/) {return 34;} #kamon.ne.jp <20>L<EFBFBD><4C>
if($remo =~ /\.canvas\.ne\.jp$/) {return 68;} #canvas.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.i-chubu\.ne\.jp$/) {return 52;} #i-chubu.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.oct-net\.ne\.jp$/) {return 44;} #oct-net.ne.jp <20>
if($remo =~ /\.megax\.ne\.jp$/) {return 56;} #megax.ne.jp <20><><EFBFBD>B
if($remo =~ /\.icntv\.ne\.jp$/) {return 12;} #icntv.ne.jp <20><><EFBFBD>t
if($remo =~ /\.cyberhome\.ne\.jp$/) {return 68;} #cyberhome.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.pcsitebrowser\.ne\.jp$/) {return 60;} #pcsitebrowser.ne.jp <20><>
if($remo =~ /\.nava21\.ne\.jp$/) {return 24;} #nava21.ne.jp <20>O<EFBFBD>d
if($remo =~ /\.catv-mic\.ne\.jp$/) {return 3;} #catv-mic.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.edit\.ne\.jp$/) {return 13;} #edit.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.mto\.ne\.jp$/) {return 33;} #mto.ne.jp <20><><EFBFBD>R
if($remo =~ /\.seaple\.ne\.jp$/) {return 12;} #seaple.ne.jp <20><><EFBFBD>t
if($remo =~ /\.firstserver\.ne\.jp$/) {return 27;} #firstserver.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.anc-tv\.ne\.jp$/) {return 20;} #.anc-tv.ne.jp <20><><EFBFBD><EFBFBD>@20
if($remo =~ /\.attmil\.ne\.jp$/) {return 68;} #.attmil.ne.jp
if($remo =~ /\.attnet\.ne\.jp$/) {return 68;} #.attnet.ne.jp
if($remo =~ /\.bias\.ne\.jp$/) {return 68;} #.bias.ne.jp <20>z<EFBFBD>X<EFBFBD>e<EFBFBD>B<EFBFBD><42><EFBFBD>O<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>H
if($remo =~ /\.bb-west\.ne\.jp$/) {return 57;} #.bb-west.ne.jp <20>֐<EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>B
if($remo =~ /\.cableone\.ne\.jp$/) {return 68;} #.cableone.ne.jp <20><><EFBFBD>ꌧ 41
if($remo =~ /\.dsnw\.ne\.jp$/) {return 41;} #.dsnw.ne.jp <20>S<EFBFBD><53><EFBFBD><EFBFBD><EFBFBD>@<40>s<EFBFBD><73><EFBFBD>{<7B><><EFBFBD>ʉ”\<5C><><EFBFBD>H
if($remo =~ /\.eagle-net\.ne\.jp$/) {return 17;} #.eagle-net.ne.jp <20>ΐ쌧<CE90>@17
if($remo =~ /\.eastcom\.ne\.jp$/) {return 12;} #.eastcom.ne.jp <20><><EFBFBD>t<EFBFBD><74><EFBFBD>@12
if($remo =~ /\.icn-tv\.ne\.jp$/) {return 35;} #.icn-tv.ne.jp <20>R<EFBFBD><52><EFBFBD><EFBFBD> 35
if($remo =~ /\.em-net\.ne\.jp$/) {return 68;} #.em-net.ne.jp <20>S<EFBFBD><53><EFBFBD><EFBFBD>
if($remo =~ /\.hachigamenet\.ne\.jp$/) {return 41;} #.hachigamenet.ne.jp <20><><EFBFBD>
if($remo =~ /\.hagakure\.ne\.jp$/) {return 41;} #.hagakure.ne.jp <20><><EFBFBD>
if($remo =~ /\.hal\.ne\.jp$/) {return 68;} #.hal.ne.jp <20>S<EFBFBD><53><EFBFBD><EFBFBD>
if($remo =~ /\.i-younet\.ne\.jp$/) {return 22;} #.i-younet.ne.jp <20>É<EFBFBD><C389><EFBFBD>
if($remo =~ /\.ip-link\.ne\.jp$/) {return 51;} #.ip-link.ne.jp <20>֓<EFBFBD><D693>n<EFBFBD><6E>
if($remo =~ /\.iprevolution\.ne\.jp$/) {return 68;} #.iprevolution.ne.jp <20>S<EFBFBD><53><EFBFBD><EFBFBD>
if($remo =~ /\.ium\.ne\.jp$/) {return 13;} #.ium.ne.jp <20><><EFBFBD><EFBFBD><EFBFBD>ۂ<EFBFBD>(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.ktv\.ne\.jp$/) {return 10;} #.ktv.ne.jp <20>Q<EFBFBD>n<EFBFBD><6E>
if($remo =~ /\.matsumoto\.ne\.jp$/) {return 20;} #.matsumoto.ne.jp <20><><EFBFBD>
if($remo =~ /\.nsk\.ne\.jp$/) {return 71;} #.nsk.ne.jp <20>x<EFBFBD>R<EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>ΐ<EFBFBD>
if($remo =~ /\.pikara\.ne\.jp$/) {return 14;} #.pikara.ne.jp <20>l<EFBFBD><6C>
if($remo =~ /\.raidway\.ne\.jp$/) {return 68;} #.raidway.ne.jp <20>_<EFBFBD>ސ<EFBFBD>
if($remo =~ /\.rnac\.ne\.jp$/) {return 5;} #.rnac.ne.jp <20>H<EFBFBD>c<EFBFBD>E<EFBFBD><45><EFBFBD><EFBFBD>
if($remo =~ /\.rurbannet\.ne\.jp$/) {return 12;} #.rurbannet.ne.jp <20><><EFBFBD>t
if($remo =~ /\.sensyu\.ne\.jp$/) {return 27;} #.sensyu.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.speednet\.ne\.jp$/) {return 68;} #.speednet.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.tctv\.ne\.jp$/) {return 13;} #.tctv.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.ttmy\.ne\.jp$/) {return 14;} #.ttmy.ne.jp <20>_<EFBFBD>ސ<EFBFBD>
if($remo =~ /\.tvm\.ne\.jp$/) {return 20;} #.tvm.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.urban\.ne\.jp$/) {return 68;} #.urban.ne.jp
if($remo =~ /\.goennet\.ne\.jp$/) {return 32;} #.goennet.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.ictweb\.ne\.jp$/) {return 47;} #.ictweb.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.tns\.ne\.jp$/) {return 68;} #.tns.ne.jp <20>g<EFBFBD><67><EFBFBD>^<5E><><EFBFBD><EFBFBD><EFBFBD>Ԋ֘A<D698>@<40>S<EFBFBD><53><EFBFBD><EFBFBD>
if($remo =~ /\.warabi\.ne\.jp$/) {return 11;} #.warabi.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.stnet\.ne\.jp$/) {return 68;} #.stnet.ne.jp <20>S<EFBFBD><53><EFBFBD>@(<28>t<EFBFBD><74><EFBFBD>b<EFBFBD>c)
if($remo =~ /\.bmobile\.ne\.jp$/) {return 60;} #.bmobile.ne.jp <20>S<EFBFBD><53><EFBFBD>@(PHS)
if($remo =~ /\.meon\.ne\.jp$/) {return 55;} #.meon.ne.jp <20>R<EFBFBD><52> <20><><EFBFBD>R<EFBFBD><52><EFBFBD>E<EFBFBD><45><EFBFBD>
if($remo =~ /\.hinanet\.ne\.jp$/) {return 6;} #.hinanet.ne.jp <20>R<EFBFBD>`
if($remo =~ /\.nima-cho\.ne\.jp$/) {return 32;} #.nima-cho.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.nus\.ne\.jp$/) {return 19;} #.nus.ne.jp <20>R<EFBFBD><52>
if($remo =~ /\.tv-naruto\.ne\.jp$/) {return 36;} #.tv-naruto.ne.jp <20><><EFBFBD><EFBFBD>
if($remo =~ /\.access-internet\.ne\.jp$/) {return 60;} #.access-internet.ne.jp <20>\<5C>t<EFBFBD>g<EFBFBD>o<EFBFBD><6F><EFBFBD>N<EFBFBD><4E><EFBFBD>o<EFBFBD>C<EFBFBD><43><EFBFBD>̃T<CC83>[<5B>r<EFBFBD>X
if($remo =~ /\.cat-v\.ne\.jp$/) {return 4;} #.cat-v.ne.jp <20>{<7B><>
if($remo =~ /\.mct\.ne\.jp$/) {return 46;} #.mct.ne.jp <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($remo =~ /\.iam\.ne\.jp$/) {return 68;} #.iam.ne.jp
if($remo =~ /\.arena\.ne\.jp$/) {return 68;} #.arena.ne.jp
if($remo =~ /\.comcast\.net$/) {return 80;} #.comcast.net <20>č<EFBFBD>
if($remo =~ /\.cilas\.net$/) {return 68;} #.cilas.net <20>S<EFBFBD><53><EFBFBD>}<7D><><EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>
if($remo =~ /\.fiberbit\.net$/) {return 68;} #.fiberbit.net <20>S<EFBFBD><53>
if($remo =~ /\.hawaiiantel\.net$/) {return 80;} #.hawaiiantel.net <20>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J <20>n<EFBFBD><6E><EFBFBD>C
if($remo =~ /\.hinet\.net$/) {return 68;} #.hinet.net <20><><EFBFBD>p
if($remo =~ /\.imouto\.net$/) {return 48;} #.imouto.net <20>S<EFBFBD><53>
if($remo =~ /\.isao\.net$/) {return 68;} #.isao.net <20>n<EFBFBD><6E><EFBFBD>ʉ”\<5C>H
if($remo =~ /\.mediatti\.net$/) {return 68;} #.mediatti.net catv<74>@<40>S<EFBFBD><53>
if($remo =~ /\.solteria\.net$/) {return 68;} #.solteria.net IP-VPN<50>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD>@<40>\<5C>t<EFBFBD>g<EFBFBD>o<EFBFBD><6F><EFBFBD>N<EFBFBD>e<EFBFBD><65><EFBFBD>R<EFBFBD><52><EFBFBD>n
if($remo =~ /\.zero-isp\.net$/i) {return 68;} #.zero-isp.net <20>S<EFBFBD><53><EFBFBD>E<EFBFBD>n<EFBFBD><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>\
if($remo =~ /\.ibara\.ne\.jp$/) {return 33;} #.ibara.ne.jp <20><><EFBFBD>R
if($remo =~ /\.rak-rak\.ne\.jp$/) {return 52;} #.rak-rak.ne.jp <20><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>
if($remo =~ /\.cypress\.ne\.jp$/) {return 30;} #.cypress.ne.jp <20>a<EFBFBD>̎R
if($remo =~ /\.seiryu\.ne\.jp$/) {return 21;} #.seiryu.ne.jp <20>򕌌<EFBFBD>
if($remo =~ /\.wings\.ne\.jp$/) {return 68;} #.wings.ne.jp <20>S<EFBFBD><53>
if($remo =~ /\.jyaken\.ne\.jp$/) {return 34;} #.jyaken.ne.jp <20>L<EFBFBD><4C>
if($remo =~ /\.bb4u\.ne\.jp$/) {return 68;} #.bb4u.ne.jp <20>S<EFBFBD><53><EFBFBD>@<40>}<7D><><EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>
if($remo =~ /\.n-cube\.ne\.jp$/) {return 68;} #.n-cube.ne.jp <20>S<EFBFBD><53>
if($remo =~ /\.ont\.ne\.jp$/) {return 5;} #.ont.ne.jp <20>H<EFBFBD>c<EFBFBD><63>
if($remo =~ /\.awaikeda\.ne\.jp$/) {return 36;} #.awaikeda.net <20><><EFBFBD><EFBFBD>
if($remo =~ /\.ccjnet\.ne\.jp$/) {return 34;} #.ccjnet.ne.jp <20>L<EFBFBD><4C>
if($remo =~ /\.hotspot\.ne\.jp$/) {return 60;} #.hotspot.ne.jp <20>z<EFBFBD>b<EFBFBD>g<EFBFBD>X<EFBFBD>|<7C>b<EFBFBD>g
if($remo =~ /\.brew\.ne\.jp$/) {return 60;} #.brew.ne.jp ezweb<65>̃t<CC83><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U
if($remo =~ /\.openmobile\.ne\.jp$/) {return 68;} #.openmobile.ne.jp(<28>S<EFBFBD><53>)<29>\<5C>t<EFBFBD>g<EFBFBD>o<EFBFBD><6F><EFBFBD>N<EFBFBD><4E><EFBFBD>o<EFBFBD>C<EFBFBD><43><EFBFBD>H
if($remo =~ /\.jet\.ne\.jp$/) {return 58;} #.jet.ne.jp(<28><><EFBFBD><EFBFBD><EFBFBD>{)
if($remo =~ /\.icv\.ne\.jp$/) {return 32;} #.icv.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.kagacable\.ne\.jp$/) {return 17;} #.kagacable.ne.jp(<28>ΐ<EFBFBD>)
if($remo =~ /\.icv-net\.ne\.jp$/) {return 42;} #.icv-net.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.izumo\.ne\.jp$/) {return 32;} #.izumo.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.ch-you\.ne\.jp$/) {return 20;} #.ch-you.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.hotcn\.ne\.jp$/) {return 1;} #.hotcn.ne.jp(<28>k<EFBFBD>C<EFBFBD><43>)
if($remo =~ /\.nct\.ne\.jp$/) {return 7;} #.nct.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.otc\.ne\.jp$/) {return 47;} #.otc.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.shawcable\.net$/) {return 81;} #.shawcable.net(<28>J<EFBFBD>i<EFBFBD>_)
if($remo =~ /\.verizon\.net$/) {return 80;} #.verizon.net(<28>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J)
if($remo =~ /\.i-products\.net$/) {return 68;} #.i-products.net(<28>S<EFBFBD><53>)ibisBrowser?
if($remo =~ /\.awaikeda\.net$/) {return 36;} #.awaikeda.net(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.bitcat\.net$/) {return 51;} #.bitcat.net(bitcat<61>͎O<CD8E><4F><EFBFBD>s<EFBFBD><73><EFBFBD>Y<EFBFBD>}<7D><><EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>C<EFBFBD>u<EFBFBD>h<EFBFBD>A<EFBFBD>ɋz<C98B><7A><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>œ<EFBFBD><C593><EFBFBD><EFBFBD>E<EFBFBD>_<EFBFBD>ސ<EFBFBD><DE90>E<EFBFBD><45><EFBFBD>ʂ<EFBFBD><CA82>ȂƎv<C68E><76><EFBFBD>܂<EFBFBD>)
if($remo =~ /\.Level3\.net$/) {return 80;} #.Level3.net(<28>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J)
if($remo =~ /\.edu$/) {return 80;} #.edu(<28>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J)
if($remo =~ /\.awacco\.ne\.jp$/) {return 36;} #.awacco.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.ccnetmie\.ne\.jp$/) {return 24;} #.ccnetmie.ne.jp(<28>O<EFBFBD>d)
if($remo =~ /\.ciaotv\.ne\.jp$/) {return 24;} #.ciaotv.ne.jp(<28>O<EFBFBD>d)
if($remo =~ /\.firnet\.ne\.jp$/) {return 43;} #.firnet.ne.jp(<28>F<EFBFBD>{)
if($remo =~ /\.fnj\.ne\.jp$/) {return 68;} #.fnj.ne.jp(<28>S<EFBFBD><53>)
if($remo =~ /\.haginet\.ne\.jp$/) {return 35;} #.haginet.ne.jp(<28>R<EFBFBD><52>)
if($remo =~ /\.i-berry\.ne\.jp$/) {return 9;} #.i-berry.ne.jp(<28>Ȗ<EFBFBD>)
if($remo =~ /\.i-yume\.ne\.jp$/) {return 32;} #.i-yume.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.icknet\.ne\.jp$/) {return 38;} #.icknet.ne.jp(<28><><EFBFBD>Q)
if($remo =~ /\.infoeddy\.ne\.jp$/) {return 57;} #.infoeddy.ne.jp(<28><><EFBFBD><EFBFBD><EFBFBD>{)
if($remo =~ /\.jctv\.ne\.jp$/) {return 36;} #.jctv.ne.jp<6A>@<40><><EFBFBD><EFBFBD>
if($remo =~ /\.jway\.ne\.jp$/) {return 8;} #.jway.ne.jp<6A>@<40><><EFBFBD><EFBFBD>
if($remo =~ /\.kcb-net\.ne\.jp$/) {return 39;} #.kcb-net.ne.jp<6A>@<40><><EFBFBD>m
if($remo =~ /\.kctvnet\.ne\.jp$/) {return 1;} #.kctvnet.ne.jp<6A>@<40>k<EFBFBD>C<EFBFBD><43>
if($remo =~ /\.kkm\.ne\.jp$/) {return 32;} #.kkm.ne.jp<6A>@<40><><EFBFBD><EFBFBD>
if($remo =~ /\.nkoutokuji\.ne\.jp$/) {return 46;} #.koutokuji.ne.jp<6A>@<40><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($remo =~ /\.kyt-net\.ne\.jp$/) {return 26;} #.kyt-net.ne.jp<6A>@<40><><EFBFBD>s
if($remo =~ /\.kvision\.ne\.jp$/) {return 35;} #.kvision.ne.jp<6A>@<40>R<EFBFBD><52>
if($remo =~ /\.maotv\.ne\.jp$/) {return 22;} #.maotv.ne.jp<6A>@<40>É<EFBFBD>
if($remo =~ /\.mcbnet\.ne\.jp$/) {return 37;} #.mcbnet.ne.jp<6A>@<40><><EFBFBD><EFBFBD>
if($remo =~ /\.nanmoku\.ne\.jp$/) {return 10;} #.nanmoku.ne.jp(<28>Q<EFBFBD>n)
if($remo =~ /\.nct9\.ne\.jp$/) {return 15;} #.nct9.ne.jp(<28>V<EFBFBD><56>)
if($remo =~ /\.netfour\.ne\.jp$/) {return 41;} #.netfour.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.nkansai\.ne\.jp$/) {return 57;} #.nkansai.ne.jp(<28><><EFBFBD><EFBFBD><EFBFBD>{)
if($remo =~ /\.octp-net\.ne\.jp$/) {return 42;} #.octp-net.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.okuizumo\.ne\.jp$/) {return 32;} #.okuizumo.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.pcm\.ne\.jp$/) {return 25;} #.pcm.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.qtnet\.ne\.jp$/) {return 56;} #.qtnet.ne.jp(<28><><EFBFBD>B<EFBFBD>n<EFBFBD><6E>)
if($remo =~ /\.ryucom\.ne\.jp$/) {return 47;} #.ryucom.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.sakura\.ne\.jp$/) {return 68;} #.sakura.ne.jp(<28><><EFBFBD><EFBFBD><EFBFBD>^<5E><><EFBFBD>T<EFBFBD>[<5B>o)
if($remo =~ /\.sanuki\.ne\.jp$/) {return 37;} #.sanuki.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.scatv\.ne\.jp$/) {return 39;} #.scatv.ne.jp(<28><><EFBFBD>m)
if($remo =~ /\.shiojiri\.ne\.jp$/) {return 20;} #.shiojiri.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.snowman\.ne\.jp$/) {return 1;} #.snowman.ne.jp(<28>k<EFBFBD>C<EFBFBD><43>)
if($remo =~ /\.sub\.ne\.jp$/) {return 68;} #.sub.ne.jp(<28>S<EFBFBD><53>)dti<74>@<40>l<EFBFBD><6C><EFBFBD><EFBFBD>
if($remo =~ /\.tvt\.ne\.jp$/) {return 33;} #.tvt.ne.jp(<28><><EFBFBD>R)
if($remo =~ /\.webone\.ne\.jp$/) {return 1;} #.webone.ne.jp(<28>k<EFBFBD>C<EFBFBD><43>)
if($remo =~ /\.yappo\.ne\.jp$/) {return 68;} #.yappo.ne.jp(<28>S<EFBFBD><53>)<29>P<EFBFBD>[<5B>^<5E>C<EFBFBD>Q<EFBFBD>[<5B>g<EFBFBD>E<EFBFBD>F<EFBFBD>C<EFBFBD>T<EFBFBD>[<5B>r<EFBFBD>Xbydocomo
if($remo =~ /\.leo-net\.jp$/) {return 67;} #.leo-net.jp
if($remo =~ /\.bb-niigata\.jp$/) {return 15;} #.bb-niigata.jp(<28>V<EFBFBD><56>)
if($remo =~ /\.lbdsl\.net$/) {return 80;} #.lbdsl.net<65>@<40>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J
if($remo =~ /\.cox\.net$/) {return 80;} #.cox.net<65>@<40>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J
if($remo =~ /\.vrtc\.net$/) {return 21;} #.vrtc.net<65>@<40>򕌌<EFBFBD><F2958C8C>b<EFBFBD>ߎs<DF8E><EFBFBD><E291BA>
if($remo =~ /\.pacbell\.net$/) {return 80;} #.pacbell.net<65>@<40>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J
if($remo =~ /\.iowatelecom\.net$/) {return 80;} #.iowatelecom.net<65>@<40>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J
if($remo =~ /\.ms246\.net$/) {return 13;} #.ms246.net<65>@<40><><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>_<EFBFBD>ސ<EFBFBD>
if($remo =~ /\.gujocity\.net$/) {return 21;} #.gujocity.net<65>@<40>򕌌<EFBFBD><F2958C8C>S<EFBFBD><EFBFBD><E394AA>
if($remo =~ /\.gru\.net$/) {return 80;} #.gru.net<65>@<40>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J
if($remo =~ /\.ovh\.net$/) {return 80;} #.ovh.net<65>@<40>t<EFBFBD><74><EFBFBD><EFBFBD><EFBFBD>X
if($remo =~ /\.axelmark\.net$/) {return 68;} #.axelmark.net<65>@sv0134.dc01.axel
if($remo =~ /\.bitcat\.net$/) {return 68;} #.bitcat.net(<28>S<EFBFBD><53><EFBFBD>}<7D><><EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>H)
if($remo =~ /\.dsl\.net$/) {return 80;} #.dsl.net(<28>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J)
if($remo =~ /\.e-awa\.net$/) {return 36;} #.e-awa.net(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.e-nt\.net$/) {return 80;} #.e-nt.net(<28>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J)
if($remo =~ /\.proxad\.net$/) {return 80;} #.proxad.net(<28>t<EFBFBD><74><EFBFBD><EFBFBD><EFBFBD>X)
if($remo =~ /\.arcor-ip\.net$/) {return 80;} #.arcor-ip.net(<28>h<EFBFBD>C<EFBFBD>c)
if($remo =~ /\.fastres\.net$/) {return 80;} #.fastres.net(<28>C<EFBFBD>^<5E><><EFBFBD>A)
if($remo =~ /\.t-dialin\.net$/) {return 80;} #.t-dialin.net(<28>h<EFBFBD>C<EFBFBD>c)
if($remo =~ /\.nameservices\.net$/) {return 80;} #.nameservices.net(<28>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J)
if($remo =~ /\.sbcglobal\.net$/) {return 80;} #.sbcglobal.net(<28>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>J)
if($remo =~ /\.fctv-net\.net$/) {return 42;} #.fctv-net.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.kwins\.net$/) {return 60;} #.kwins.net(<28><><EFBFBD>o<EFBFBD>C<EFBFBD><43>)
if($remo =~ /\.ycix\.net$/) {return 19;} #.ycix.net(<28>R<EFBFBD><52>)
if($remo =~ /\.nasicnet\.com$/) {return 68;} #.nasicnet.com(<28>S<EFBFBD><53><EFBFBD>}<7D><><EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>)
if($remo =~ /\.xiando\.com$/) {return 68;} #.xiando.com(<28>C<EFBFBD>O<EFBFBD>Z<EFBFBD>C<EFBFBD>V<EFBFBD>F<EFBFBD><46>)
if($remo =~ /\.george24\.com$/) {return 68;} #.george24.com(<28>S<EFBFBD><53><EFBFBD>}<7D><><EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>)
if($remo =~ /\.kaga-tv\.com$/) {return 17;} #.kaga-tv.com(<28>ΐ<EFBFBD>)
if($remo =~ /\.takamori\.ne\.jp$/) {return 20;} #.takamori.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.hctv\.ne\.jp$/) {return 11;} #.hctv.ne.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.dcn\.ne\.jp$/) {return 51;} #.dcn.ne.jp(<28>֓<EFBFBD><D693>n<EFBFBD><6E>)
if($remo =~ /\.icn\.ne\.jp$/) {return 15;} #.icn.ne.jp(<28>V<EFBFBD><56>)
if($remo =~ /\.au-net\.ne\.jp$/) {return 68;} #.au-net.ne.jp(<28>S<EFBFBD><53>)
if($remo =~ /\.knc\.ne\.jp$/) {return 1;} #.knc.ne.jp(<28>k<EFBFBD>C<EFBFBD><43>)
if($remo =~ /\.coralnet\.or\.jp$/) {return 70;} #.coralnet.or.jp(<28>k<EFBFBD><6B>)
if($remo =~ /\.mitene\.or\.jp$/) {return 68;} #.mitene.or.jp(<28>S<EFBFBD><53>)
if($remo =~ /\.din\.or\.jp$/) {return 68;} #.din.or.jp(<28>S<EFBFBD><53>)
if($remo =~ /\.zoot\.jp$/) {return 68;} #.zoot.jp<6A>@<40>S<EFBFBD><53>
if($remo =~ /\.gmo-access\.jp$/) {return 68;} #.gmo-access.jp<6A>@<40>S<EFBFBD><53>
if($remo =~ /\.dsn\.jp$/) {return 68;} #.dsn.jp <20>S<EFBFBD><53>
if($remo =~ /\.withe\.ne\.jp$/) {return 68;} #.withe.ne.jp <20>}<7D><><EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>
if($remo =~ /\.supercsi\.jp$/) {return 72;} #.supercsi.jp<6A>@<40><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E><EFBFBD>H(<28>l<EFBFBD><6C><EFBFBD><EFBFBD>)
if($remo =~ /\.banban\.jp$/) {return 28;} #.banban.jp(<28><><EFBFBD><EFBFBD>)
if($remo =~ /\.viplt\.ne\.jp$/) {return 71;} #.viplt.ne.jp <20>k<EFBFBD><6B><EFBFBD><EFBFBD><EFBFBD>S<EFBFBD><53><EFBFBD><EFBFBD><EFBFBD>ǃt<C783><74><EFBFBD>b<EFBFBD>c<EFBFBD>͈̔͂͐<CD82><CD90><EFBFBD><EFBFBD>{
if($remo =~ /\.iwami\.or\.jp$/) {return 28;} #.iwami.or.jp
if($remo =~ /\.optonline\.net$/) {return 28;} #.optonline.net
if($remo =~ /\.zakkaz\.ne\.jp$/) {return 28;} #.zakkaz.ne.jp
if($remo =~ /\.katsunuma\.ne\.jp$/) {return 28;} #.katsunuma.ne.jp
if($remo =~ /\.tgn\.or\.jp$/) {return 28;} #.tgn.or.jp
#.voice-factory.net
#.info.net
#.speakeasy.net
#.kagoya.net
#.qwest.net
#.ksp.or.jp
#.sala.or.jp
#.rim.or.jp
#.fureai.or.jp
#.fitweb.or.jp
#.ose.ne.jp
#.tocn.ne.jp
#.myt.ne.jp
#.hibikino.ne.jp
#.speedway.ne.jp
#.kamitv.ne.jp
#.chun2.ne.jp
#.inetpia.ne.jp
#.satsuma.ne.jp
#.aso.ne.jp
#.kiso.ne.jp
#.gotemba.ne.jp
#CCCCC
#'50<35><30><EFBFBD>k<EFBFBD>n<EFBFBD><6E>','51<35>֓<EFBFBD><D693>n<EFBFBD><6E>','52<35><32><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>','53<35>֐<EFBFBD><D690>n<EFBFBD><6E>','54<35>l<EFBFBD><6C><EFBFBD>n<EFBFBD><6E>','55<35><35><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD><6E>','56<35><36><EFBFBD>B<EFBFBD>n<EFBFBD><6E>','57<35><37><EFBFBD><EFBFBD><EFBFBD>{','58<35><38><EFBFBD><EFBFBD><EFBFBD>{','',
my $ken = ''; #<23><><EFBFBD><EFBFBD><EFBFBD>̃u<CC83><75><EFBFBD>b<EFBFBD>N<EFBFBD>Œ<EFBFBD><C592>`<60><><EFBFBD><EFBFBD><EFBFBD>ĂȂ<C482>
if($remo =~ /\.ezweb\.ne\.jp$/) {return 60;}
if($remo =~ /\.enjoy\.ne\.jp$/) {return 0;}
# if($remo =~ /\.net$/) {if(open(LX,">> HOST29.000")){print LX "(ne.jp)$remo($ken)\n";close(LX);}}
# if($remo =~ /\.ne\.jp$/) {if(open(LX,">> HOST29.000")){print LX "(ne.jp)$remo($ken)\n";close(LX);}}
# if($remo =~ /\.go\.jp$/) {if(open(LX,">> HOST29.000")){print LX "(ne.jp)$remo($ken)\n";close(LX);}}
# if($remo =~ /\.or\.jp$/) {if(open(LX,">> HOST29.000")){print LX "(ne.jp)$remo($ken)\n";close(LX);}}
#{if(open(LX,">> HOST29.000")){print LX "(?????)$remo($ken)\n";close(LX);}}
return 67 ;
}
#############################################################################
# <09>X<EFBFBD><58><EFBFBD>‚Ԃ<C282><D482><EFBFBD><EFBFBD><EFBFBD>(<28>o<EFBFBD>C<EFBFBD>o<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><E982B3>)
#############################################################################
sub bybySaruON
{
my ($GB) = @_ ;
if($ENV{'SERVER_NAME'} =~ /hayabusa/) {return 0;}
if($GB->{FORM}->{bbs} eq 'goki') {return 1;}
#return 0;
if($GB->{FORM}->{bbs} eq 'doujin') {return 0;}
if($GB->{FORM}->{bbs} eq 'dataroom') {return 0;}
if($ENV{'SERVER_NAME'} =~ /qb/) {return 0;}
# if($ENV{'SERVER_NAME'} =~ /bbspink/) {return 0;}
if($GB->{FORM}->{bbs} eq 'news4viptasu') {return 0;}
# if($GB->{FORM}->{bbs} eq 'campus') {return 0;}
#return 1;
if($GB->{FORM}->{bbs} eq 'aastory') {return 0;}
if($GB->{FORM}->{bbs} eq 'aasaloon') {return 0;}
if($GB->{FORM}->{bbs} eq 'nida') {return 0;}
if($GB->{FORM}->{bbs} eq 'mona') {return 0;}
if($GB->{FORM}->{bbs} eq 'kao') {return 0;}
if($GB->{FORM}->{bbs} eq 'nanminhis') {return 0;}
if($GB->{FORM}->{bbs} eq 'eroparo') {return 0;}
if($GB->{FORM}->{bbs} eq 'intro') {return 0;}
if($GB->{FORM}->{bbs} eq 'warhis') {return 0;}
if($GB->{FORM}->{bbs} eq 'kitchen') {return 0;}
if($GB->{FORM}->{bbs} eq 'ume') {return 0;}
if($GB->{FORM}->{bbs} eq 'mog2') {return 0;}
if($GB->{FORM}->{bbs} eq 'liveanime') {return 0;}
return 1;
if($GB->{FORM}->{bbs} eq 'operate') {return 1;}
return 0;
if($GB->{FORM}->{bbs} eq 'news4vip') {return 1;}
if($GB->{FORM}->{bbs} eq 'morningcoffee') {return 1;}
if($GB->{FORM}->{bbs} eq 'ana') {return 1;}
if($GB->{FORM}->{bbs} eq 'doujin') {return 1;}
if($GB->{FORM}->{bbs} eq 'morningcoffee') {return 1;}
return 0;
if($GB->{FORM}->{bbs} eq 'wcomic') {return 1;}
if($GB->{FORM}->{bbs} eq 'kouri') {return 1;}
if($ENV{'SERVER_NAME'} =~ /ex/) {return 1;}
if($ENV{'SERVER_NAME'} =~ /game/) {return 1;}
return 0 ;
}
sub bybySaru
{
my ($GB) = @_ ;
local $_ ;
my $dfile = $GB->{DATPATH} . $GB->{FORM}->{'key'} . '.dat';
my $prsize = IsSnowmanServer == BBSD->{REMOTE}
? ($_ = bbsd($dfile, 'getfilesize', 'nolog')) !~ /\D/ ? $_ : 0
: ($_ = stat($dfile)) ? $_->size : 0;
#if(open(UUU,">> loglog.cgi")){print UUU "$dfile=$prsize\n";close(UUU);}
if($prsize < 2048*20) {return 0;}
if(!bybySaruON($GB))
{
$GB->{version} .= " +ByeSaru=OFF";
return 0;
}
else
{
;
$GB->{version} .= " +ByeSaru=ON";
}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
# if($GB->{MARU}) {return 0;}
#<23><><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD>҂̓X<CD83><58><EFBFBD>[
if($GB->{KABUU}) {return 0;}
if($GB->{KABUUP}) {return 0;}
my $kaimadeOK = 10 ; #M<><4D><EFBFBD>܂<EFBFBD>ok
my $kaiChu = 18 ; #N<>񒆁@<40><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
my $host = $ENV{'REMOTE_ADDR'} ; #IP
if($GB->{P22CH}) {$host = $GB->{HOST2} ;} #IP from p2
$host =~ /(\d+)\.(\d+)\.(\d+)\.(\d+)/;
$host = "$1.$2.$3" ;
if($GB->{KEITAI}) {$host = $GB->{IDNOTANE};} #<23>g<EFBFBD>ьŗL<C597>ԍ<EFBFBD>
my $remo = $GB->{HOST29}; #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9838A><EFBFBD>z
#p57b2fd.szoknt01.ap.so-net.ne.jp
if($remo =~ /\.(\S+\.ap\.so-net\.ne\.jp)/)
{
$host = $1 ;
$host =~ s/\d/\#/g ;
#if(open(UUU,">> loglog.cgi")){print UUU "$host\n";close(UUU);}
}
#p7042-adsau04sappo2-acca.hokkaido. .ne.jp
if($remo =~ /\S+-(\S+\d+\S+\S+\.\S+\.ocn\.ne\.jp)/)
{
$host = $1 ;
$host =~ s/\d/\#/g ;
#if(open(UUU,">> loglog.cgi")){print UUU "$host\n";close(UUU);}
}
# <20><EFBFBD><E182BE><EFBFBD>܂͂<DC82><CD82><EFBFBD><EFBFBD>[
if($ENV{SERVER_NAME} =~ /^live2[34]\./) {return 0;}
# live<76>n<EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
# if($ENV{'SERVER_NAME'} !~ /live/) {return 0;}
# if($ENV{'SERVER_NAME'} !~ /ex15/) {return 0;}
# if($ENV{'SERVER_NAME'} !~ /ex16/) {return 0;}
my ($saruPath, @saruList, %kai);
if(IsSnowmanServer)
{
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂̂<CC82><DD82>̉<EFBFBD><CC89><EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD>ȊO 0) <20><><EFBFBD>Ԃ<EFBFBD>
# age <20>͖<EFBFBD><CD96><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ăN<C483><4E><EFBFBD>A<EFBFBD>̋<EFBFBD><CC8B><EFBFBD><EFBFBD>ɂ<EFBFBD><C982>ׂ<EFBFBD><D782><EFBFBD><EFBFBD><EFBFBD>
$kai{$host} = bbsd($GB->{FORM}{bbs}, 'chkthrtimecount', $GB->{FORM}{key}, $GB->{NOWTIME} % 3600, $kaiChu, $kaimadeOK + 1, $host, 'nolog');
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD>G<EFBFBD><47><EFBFBD>[<5B>̏ꍇ<CC8F>̓X<CD83>L<EFBFBD>b<EFBFBD>v
$kai{$host} = 0 if($kai{$host} =~ /\D/);
}
else
{
# $saruPath = "./book/$GB->{FORM}->{bbs}/";
$saruPath = "$FOX->{BOOK}/book/$GB->{FORM}->{bbs}/";
mkdir($saruPath, 0777) ;
$saruPath .= $GB->{FORM}->{key} ;
$saruPath .= '.cgi' ;
@saruList = ();
if(open(SARU, $saruPath))
{
@saruList = <SARU> ;
close(SARU) ;
}
%kai = () ;
foreach my $see (@saruList)
{
chomp($see) ;
$kai{$see} ++ ;
}
$kai{$host} ++ ;
}
if(!$GB->{CAP} && !$GB->{MARU} && $kai{$host} > $kaimadeOK)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD>͂<EFBFBD><CD82>M<EFBFBD><4D><EFBFBD>͓<EFBFBD><CD93>e<EFBFBD><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>B<EFBFBD>o<EFBFBD>C<EFBFBD>o<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><E982B3><EFBFBD>B<BR><3E><><EFBFBD><EFBFBD><EFBFBD>t=<3D>D<EFBFBD><44><EFBFBD>ȎԂ́H");
}
# $GB->{FORM}->{'MESSAGE'} .= "<hr>$kai{$host}";
if(!IsSnowmanServer)
{
if(!open(SARU,"> $saruPath")) {return 0;}
print SARU "$host\n";
my $ccc = 0;
foreach my $see (@saruList)
{
chomp($see) ;
print SARU "$see\n";
$ccc ++ ;
if($ccc > $kaiChu) {last;}
}
close(SARU) ;
}
return 0 ;
}
########################################################################
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD>(<28>n<EFBFBD>k<EFBFBD>֘A<D698><41>)
########################################################################
sub EQfromWhereON
{
my ($GB) = @_;
# if($GB->{FORM}->{bbs} eq 'news') {return 1;}
if($GB->{FORM}->{bbs} eq 'eq') {return 1;}
if($GB->{FORM}->{bbs} eq 'eqplus') {return 1;}
if($GB->{FORM}->{bbs} eq 'namazuplus') {return 1;}
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_JP_CHECK'} eq "checked") {return 1;}
return 0 ;
}
sub EQfromWhere
{
my ($GB) = @_;
if(!&EQfromWhereON($GB)) {return 0;}
my $a47 = &area47($GB) ;
if($a47 eq '') {return 0;}
$GB->{FORM}->{'FROM'} = "$GB->{FORM}->{'FROM'}<\/b>($a47)<b>" ;
return 1;
}
########################################################################
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD>(vip<69><70><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><5F>)
########################################################################
sub NanashiReplace4vipON
{
my ($GB) = @_;
if($GB->{FORM}->{bbs} eq 'poverty') {return 1;}
if($GB->{FORM}->{bbs} eq 'news') {return 1;}
# if($GB->{FORM}->{bbs} eq 'anime4vip') {return 1;}
if($GB->{FORM}->{bbs} eq 'asaloon') {return 1;}
# if($GB->{FORM}->{bbs} eq 'campus') {return 1;}
# if($GB->{FORM}->{bbs} eq 'news4vip') {return 1;}
# if($GB->{FORM}->{bbs} eq 'operate2') {return 1;}
return 0 ;
}
sub NanashiReplace4vip
{
my ($GB) = @_;
if(!&NanashiReplace4vipON($GB)) {return 0;}
if($GB->{FORM}->{'FROM'} ne '' || defined $GB->{TRIPKEY})
{
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
if($GB->{KABUU}) {return 0;}
if($GB->{BEelite} eq 'SOL') {return 0;}
if($GB->{BEelite} eq 'DIA') {return 0;}
}
my $fusi = "" ;
if($GB->{FORM}->{'FROM'} =~ /fusianasan/) {$fusi="fusianasan";}
my $kab = "" ;
if($GB->{FORM}->{'FROM'} =~ /(!kab[a-z\d\-\%\:]+)/) {$kab = $1;}
elsif($GB->{FORM}->{'FROM'} =~ /(!kab)/) {$kab = $1;}
$ENV{REMOTE_ADDR} =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/ ;
my $kk = $1 ;
my $mm = $2 ;
my $iq = $3 ;
my $nm = $4 ;
if($GB->{KEITAI})
{
$GB->{IDNOTANE} =~ /\S*(\d+)\S*/ ;
$nm = $1;
}
my ($sec, $min, $hhh, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($GB->{NOWTIME});
$iq *= 255 ;
$nm += $iq ;
# my $off = (($mon*31 + $mday)*24 + $hhh) ; #<23>@<40><><EFBFBD><EFBFBD><EFBFBD>ύX
my $off = ($mon*31 + $mday) ; #<23>@<40><><EFBFBD><EFBFBD><EFBFBD>ύX
$nm += $off ;
my $sss = (scalar @FOX_774) ;
if($sss < 1) {return 0;}
my $omikuji2 = $nm % $sss ;
my $omikuji3 = $FOX_774[$omikuji2] ;
if($GB->{FORM}->{bbs} eq 'poverty') {$omikuji3 = $FOX->{$GB->{FORM}->{bbs}}->{'BBS_NONAME_NAME'} ;}
my $a47 = &area47($GB) ;
# if($GB->{FORM}->{bbs} eq 'news')
# {
# my $yy = ($nm % 70) + 38 ;
# $a47 = "$yy<79><79>";
# }
if($GB->{FORM}->{bbs} eq 'campus')
{
my $yy = ($nm % 20) + 25 ;
$a47 = "SS$yy";
}
if($GB->{FORM}->{bbs} eq 'poverty')
{
if($a47 ne '')
{
$omikuji3 =~ s/\(\S+\)/<\/b>\($a47\)<b>/;
}
else
{
$omikuji3 =~ s/\(\S+\)/<\/b>\(<28>`<60><>\)<b>/;
}
$GB->{FORM}->{'FROM'} = "$fusi$kab $omikuji3" ;
undef $GB->{TRIPKEY};
return 1;
}
else
{
if($a47 ne '')
{
$omikuji3 =~ s/\(\S+\)/\($a47\)/;
}
else
{
$omikuji3 =~ s/\(\S+\)/\(<28>`<60><>\)/;
}
}
$GB->{FORM}->{'FROM'} = "$fusi$kab <\/b>$omikuji3<b>" ;
# $GB->{FORM}->{'FROM'} = "$GB->{FORM}->{'FROM'}<\/b>$omikuji3<b>" ;
# $GB->{FORM}->{'FROM'} = "<\/b>$FOX_774[$sss]<b>" ;
undef $GB->{TRIPKEY};
return 1;
}
#############################################################################
# vip<69>L<EFBFBD><4C>
#############################################################################
sub vip931
{
my ($GB) = @_ ;
# return 0 ;
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_VIP931'} ne "checked") {return 0;}
#my $eee = $GB->{FORM}->{bbs} . "+" . $FOX->{$GB->{FORM}->{bbs}}->{'BBS_VIP931'};
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","checked $eee");
#<23>g<EFBFBD>т̓X<CD83><58><EFBFBD>[
if($GB->{KEITAI}) {return 0;}
if($GB->{KEITAIBROWSER}) {return 0;}
# <20>g<EFBFBD>сE<D181><45><EFBFBD>ۂ<EFBFBD><DB82>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if(&IsIP4Mobile($ENV{REMOTE_ADDR})) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
#<23><><EFBFBD><EFBFBD>p2<70>̓X<CD83><58><EFBFBD>[
if($GB->{P22CH}) {return 0;}
use LWP::UserAgent;
my $fff = "1111222233334440" ;
if($GB->{FORM}->{bbs} eq 'news4vip' || $GB->{FORM}->{bbs} eq 'campus')
{
$fff = "1111222233334441" ;
}
my $x = "http://cook81.2ch.net/931/vip931.so?$fff-$ENV{REMOTE_ADDR}";
my $ua = LWP::UserAgent->new();
$ua->timeout(3);
my $request = HTTP::Request->new('GET', $x);
my $response = $ua->request($request) ;
my $response_body = $response->content();
my $response_code = $response->code();
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>G<EFBFBD><47><EFBFBD>[<5B>Ȃ<EFBFBD><C882>L<EFBFBD><4C><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>Ƃɂ<C682><C982><EFBFBD>
if ($response->is_error) {return 0;}
$response_body =~ /VIP931\[([0-9]+)\]/;
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","vip<69>L<EFBFBD><4C><EFBFBD>ł<EFBFBD>($1,$response_code)<br><br><a target=\"_blank\" href=\"http://cook81.2ch.net/\"><3E>ڂ<EFBFBD><DA82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></a>");
$GB->{V931} = $1 ;
if($GB->{V931} ne "0")
{
# <20><><EFBFBD><EFBFBD><EFBFBD>̔‚ł<C282>vipper<65>}<7D>[<5B>N<EFBFBD><4E><EFBFBD>‚<EFBFBD><C282>ċ<EFBFBD><C48B><EFBFBD>
if($GB->{FORM}->{'bbs'} eq "operate2" ||
$GB->{FORM}->{'bbs'} eq "sec2chd")
{
$GB->{FORM}->{'FROM'} = ' </b>[<5B>@<40>O<EFBFBD>ցO]<b> ' . $GB->{FORM}->{'FROM'};
return 0;
}
# <20><><EFBFBD><EFBFBD><EFBFBD>ȊO
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD>L<EFBFBD><4C><EFBFBD>ł<EFBFBD>($1,$response_code)<br><br><a target=\"_blank\" href=\"http://cook81.2ch.net/\"><3E>ڂ<EFBFBD><DA82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></a>");
}
return 0 ;
}
#############################################################################
# P2<50><32><EFBFBD>ǂ<EFBFBD><C782><EFBFBD>
#############################################################################
sub IsP2
{
my ($GB) = @_ ;
#<23><><EFBFBD><EFBFBD>p2<70>̓X<CD83><58><EFBFBD>[
if($GB->{P22CH}) {return 0;}
if($GB->{HOST999} =~ //) {return 0;}
if($ENV{'HTTP_USER_AGENT'} !~ /^Monazilla\/1/) {return 0;}
if($GB->{HOST999} =~ /lolipop\.jp/) {return 1;}
if($GB->{HOST999} =~ /land\.to/) {return 1;}
if($ENV{'HTTP_USER_AGENT'} =~ /[Pp]2/) {return 1;}
if($ENV{'HTTP_USER_AGENT'} =~ /[Pp]\+\+/) {return 1;}
return 0;
}
#############################################################################
# <20><><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>B<EFBFBD><42><EFBFBD>X<EFBFBD>΍<EFBFBD>
#############################################################################
##### Mozilla/4.0 (compatible; ICS)
sub Saga
{
my ($GB) = @_ ;
if($ENV{'HTTP_USER_AGENT'} =~ /Mozilla\/4\.0 \(compatible; ICS\)/)
{
&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><><EFBFBD>@<40><><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>B<EFBFBD><42><EFBFBD>X</font><br><br><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<EFBFBD>B<EFBFBD>B");
}
return 0;
}
#############################################################################
# <20>R<EFBFBD>c<EFBFBD>E<EFBFBD>B<EFBFBD><42><EFBFBD>X<EFBFBD>΍<EFBFBD>
#############################################################################
##### Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
sub Yamada
{
my ($GB) = @_ ;
#if($ENV{'HTTP_USER_AGENT'} !~ /Mozilla\/4\.0/){return 0;}
my $mss = substr($GB->{FORM}->{'MESSAGE'}, 0, 30);
# $mss =~ s/</&lt;/g; $mss =~ s/>/&gt;/g;
#if($ENV{'SERVER_NAME'} =~ /tmp4/ && $GB->{FORM}->{'MESSAGE'} =~ /<2F><><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD>/)
{#cookie
#if(open(ABCD,">>./yamada.txt")){print ABCD "[$ENV{'HTTP_COOKIE'}]\n";close(ABCD);}
#if(open(ABCD,">>./yamada.txt")){print ABCD "[$ENV{'HTTP_COOKIE'}]$mss\n";close(ABCD);}
#if(open(ABCD,">>./yamada.txt")){print ABCD "[$ENV{HTTP_ACCEPT_LANGUAGE}]$mss\n";close(ABCD);}
if(open(ABCD,">>./yamada.txt")){print ABCD "[$ENV{'HTTP_USER_AGENT'}]\n";close(ABCD);}
#if(open(ABCD,">>./yamada.txt")){print ABCD "[$ENV{'HTTP_USER_AGENT'}]$mss\n";close(ABCD);}
}
if($ENV{'HTTP_COOKIE'} =~ /^NAME\=\; MAIL\=sage\; PON\=/
&& $ENV{'HTTP_USER_AGENT'} !~ /^Monazilla\/1/
&& $ENV{'HTTP_USER_AGENT'} !~ /Opera/
&& $ENV{'HTTP_USER_AGENT'} !~ /DDIPOCKET/
&& $ENV{HTTP_ACCEPT_LANGUAGE} eq '')
{
#if($ENV{'SERVER_NAME'} =~ /tmp4/ && $GB->{FORM}->{'MESSAGE'} =~ /<2F><><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD>/)
{#cookie
#if(open(ABCD,">>./yamada.txt")){print ABCD "$ENV{'HTTP_COOKIE'}\n";close(ABCD);}
#if(open(ABCD,">>./yamada.txt")){print ABCD "[$ENV{HTTP_ACCEPT_LANGUAGE}]\n";close(ABCD);}
if(open(ABCD,">>./yamada.txt")){print ABCD "[$ENV{'HTTP_USER_AGENT'}]\n";close(ABCD);}
}
{
my $mss = substr($GB->{FORM}->{'MESSAGE'}, 0, 30); $mss =~ s/</&lt;/g; $mss =~ s/>/&gt;/g;
my $outdat = "$GB->{FORM}->{'FROM'}<>$GB->{FORM}->{'mail'}<>$GB->{DATE}<>$mss<>$GB->{FORM}->{'subject'}<>$GB->{HOST999}<>$ENV{'REMOTE_ADDR'}<><>$ENV{'HTTP_USER_AGENT'}";
#<23><><EFBFBD>t<EFBFBD>Ǝ<EFBFBD><C68E>Ԃ<EFBFBD><D482><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD>
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($GB->{NOWTIME});
my $fff = sprintf("../_service/Yamada%04d%02d%02d.txt",$year+1900,$mon+1,$mday) ;
open(OUT2, ">>$fff");
print OUT2 "$outdat\n";
close(OUT2);
}
&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><><EFBFBD>@<40>R<EFBFBD>c<EFBFBD>E<EFBFBD>B<EFBFBD><42><EFBFBD>X</font><br><br><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<EFBFBD>B<EFBFBD>B");
}
}
#############################################################################
# <20>N<EFBFBD>b<EFBFBD>L<EFBFBD>[<5B><><EFBFBD>s
#############################################################################
sub PutCookie
{
my ($GB) = @_;
#<23>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>‚<EFBFBD><C282><EFBFBD>
my $exp = 24 * 60 * 60;
$exp *= 30; #<23>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E682B6>
my ($dmy,$mdc,$monc,$yrc,$wdayc,$mc,$yc,$times);
($dmy,$dmy,$dmy,$mdc,$monc,$yrc,$wdayc,$dmy,$dmy) = gmtime($GB->{NOWTIME} + $exp);
$yc = ('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday') [$wdayc];
$mc = ('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec') [$monc];
$yrc = $yrc+1900;
$mdc = "0$mdc" if ($mdc < 10);
my ($cname, $cmail);
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_NAMECOOKIE_CHECK'} eq "checked"){
$cname = "$GB->{FORM}->{'FROM'}";
}
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_MAILCOOKIE_CHECK'} eq "checked"){
$cmail = "$GB->{FORM}->{'mail'}";
}
if($ENV{'HTTP_USER_AGENT'} =~ /[Mm][Aa][Cc]/ ){
$cname =~ s/(\W)/'%' . unpack('H2', $1)/eg;
$cmail =~ s/(\W)/'%' . unpack('H2', $1)/eg;
}
print "Set-Cookie: NAME=$cname; expires=$yc, $mdc-$mc-$yrc 00:00:00 GMT; path=/\n";
print "Set-Cookie: MAIL=$cmail; expires=$yc, $mdc-$mc-$yrc 00:00:00 GMT; path=/\n";
return 0;
}
#############################################################################
# <20><><EFBFBD>e<EFBFBD>m<EFBFBD>F<EFBFBD><46><EFBFBD><EFBFBD>
#############################################################################
sub ToukouKakunin
{
my ($GB) = @_;
my $mdc = '';
my $msg = $GB->{FORM}->{'MESSAGE'};
my $sbj = $GB->{FORM}->{'subject'};
$msg =~ s/<[Bb][Rr]>/\n/g;
$msg =~ s/&/&amp;/g;
$msg =~ s/"/&quot;/g;
$sbj =~ s/&/&amp;/g;
$sbj =~ s/"/&quot;/g;
#<23>m<EFBFBD>F<EFBFBD><46><EFBFBD>ʂ<EFBFBD><CA82>o<EFBFBD><6F>
print "Content-type: text/html; charset=shift_jis\n\n";
print <<EOF;
<html lang="ja">
<head>
<title><3E><><EFBFBD>e<EFBFBD>m<EFBFBD>F</title>
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.6,user-scalable=yes" />
</head>
<body bgcolor="#FFFFFF">
<font size=+1 color=#FF0000><b><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݊m<DD8A>F</b></font><ul><br><br>
<b>$GB->{FORM}->{'subject'} </b><br><3E><><EFBFBD>O<EFBFBD>F $GB->{FORM}->{'FROM'}<br>E-mail<69>F $GB->{FORM}->{'mail'}<br><3E><><EFBFBD>e<EFBFBD>F<br>
$GB->{FORM}->{'MESSAGE'}<br><br>$ENV{HTTP_USER_AGENT}<br><br></ul><b>
<EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>m<EFBFBD>F(2)<br>
<EFBFBD>E<EFBFBD><EFBFBD><EFBFBD>e<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>̓R<EFBFBD>s<EFBFBD>[<5B>A<EFBFBD>ۑ<EFBFBD><DB91>A<EFBFBD><41><EFBFBD>p<EFBFBD>A<EFBFBD>]<5D>ړ<EFBFBD><DA93><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EA8D87><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B<br>
<EFBFBD>E<EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>Ɋւ<EFBFBD><EFBFBD>Ĕ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӔC<EFBFBD>͑S<EFBFBD>ē<EFBFBD><EFBFBD>e<EFBFBD>҂ɋA<EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><EFBFBD>B<br></b>
<form method=POST action="../test/bbs.cgi?guid=ON"><input type=hidden name="subject" value="$sbj">
<input type=hidden name=FROM value="$GB->{FORM}->{'FROM'}">
<input type=hidden name=mail value="$GB->{FORM}->{'mail'}">
<input type=hidden name=get value="1$mdc">
<input type=hidden name=MESSAGE value="$msg">
<br><input type=hidden name=bbs value=$GB->{FORM}->{'bbs'}>
<input type=hidden name=time value=$GB->{NOWTIME}>
<input type=hidden name=key value=$GB->{FORM}->{'key'}>
<input type=submit value="<22>S<EFBFBD>ӔC<D394>𕉂<EFBFBD><F0958982><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ď<EFBFBD><C48F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" name="submit"><br></form>
<EFBFBD>ύX<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͖߂<EFBFBD><EFBFBD>{<7B>^<5E><><EFBFBD>Ŗ߂<C596><DF82>ď<EFBFBD><C48F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĉ<EFBFBD><C489><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<font size=-1>(cookie<69><65><EFBFBD>ݒ肷<DD92><E882B7><EFBFBD>Ƃ<EFBFBD><C682>̉<EFBFBD><CC89>ʂ͂łȂ<C582><C882>Ȃ<EFBFBD><C882>܂<EFBFBD><DC82>B)</font><br></body></html>
EOF
return 0;
}
#############################################################################
# <20><><EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
# <20>Z<EFBFBD>b<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>ID<49>𓾂<EFBFBD>HOST999<39>ɕۑ<C995><DB91><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD>C<EFBFBD><43><EFBFBD>t<EFBFBD><74><EFBFBD>O<EFBFBD>𗧂Ă<F097A782>
# p2+<2B><><EFBFBD>́u<CD81><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<5B><><EFBFBD>v<EFBFBD>ɂ<EFBFBD><C982><EFBFBD>
#############################################################################
sub ProcessMaru
{
my ($GB) = @_;
#<23><><EFBFBD>̃Z<CC83>b<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>ID<49>𓾂<EFBFBD>
$GB->{MARU} = &IsMonazilla($GB->{FORM}->{sid});
#p2+<2B><>=p2
if($GB->{P22CH}) { $GB->{MARU} = ""; }
if($GB->{MARU} eq $FOX->{OTAMESHIMARU})
{
if($GB->{FORM}->{'bbs'} eq 'sec2chd'
|| $GB->{FORM}->{'bbs'} eq 'saku'
|| $GB->{FORM}->{'bbs'} eq 'saku2ch'
)
{
&endhtml($GB) ;
$GB->{MARU} = 1 ;
}
}
#<23>Z<EFBFBD>b<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>؂<EFBFBD><D882>Ȃ<EFBFBD><C882>ă<EFBFBD><C483>O<EFBFBD>C<EFBFBD><43><EFBFBD>𑣂<EFBFBD><F091A382>ďI<C48F><49>
if($GB->{MARU} eq "1")
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>ēx<C493><78><EFBFBD>O<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>ĂˁB<CB81>B<EFBFBD>B");
}
#HOST999<39>Ɂ<EFBFBD><C981>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($GB->{MARU})
{
$GB->{HOST999} .= "[$GB->{MARU}]";
# <20><><EFBFBD><EFBFBD>p2<70>ȊO<C88A><4F>p2+<2B><><EFBFBD>́u<CD81><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<5B><><EFBFBD>v
if(!$GB->{P22CH})
{
if($ENV{HTTP_USER_AGENT} =~ /p2\-client\-ip\:/)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<5B><>");
}
}
}
#2009/05/02 07022420477712_eg[nJu0xsHmrC2U5G/K]
# if($GB->{MARU} =~ /rC2U5G\/K$/ || $GB->{MARU} =~ /mkladyWF$/)
# {
# $GB->{MARU} = "";
# }
return 0;
}
#############################################################################
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><E795B6><EFBFBD><EFBFBD>2<EFBFBD><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E895A5>
# <20><><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2, <20>t<EFBFBD><74><EFBFBD>O
# <20>߂<EFBFBD><DF82>l: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD>
#
# usuusubonbon <20>̂悤<CC82>Ȍ`<60><><EFBFBD>Ή<EFBFBD>
# <20>t<EFBFBD><74><EFBFBD>O<EFBFBD><4F>1<EFBFBD>̎<EFBFBD><CC8E>ɂ͂<C982><CD82><EFBFBD><E782A9><EFBFBD>ߕ<EFBFBD><DF95><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31>8<EFBFBD>r<EFBFBD>b<EFBFBD>g<EFBFBD>ڂ<EFBFBD><DA82>}<7D>X<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŕ<EFBFBD><C594>r<EFBFBD><72><EFBFBD><EFBFBD>
#############################################################################
sub StripStr
{
my ($str1, $str2, $flag) = @_;
my $savestr = $str1; # 8<>r<EFBFBD>b<EFBFBD>g<EFBFBD>ڂ<EFBFBD><DA82>J<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
# <20>t<EFBFBD><74><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>A8<41>r<EFBFBD>b<EFBFBD>g<EFBFBD>ڂ<EFBFBD><DA82>J<EFBFBD>b<EFBFBD>g
# <20><EFBFBD>I<EFBFBD>ɃJ<C983>b<EFBFBD>g<EFBFBD><67><EFBFBD>I<EFBFBD>t by <20><>
#if($flag)
#{
# $str1 =~ tr/\x80-\xFF/\x00-\x7F/;
#}
# <20><><EFBFBD><EFBFBD><EFBFBD>񂪂Ȃ<F182AA82><C882><EFBFBD><EFBFBD>΂΂<CE82><CE82>΂<EFBFBD>
if($str1 !~ $str2) { return $savestr; }
# <20><><EFBFBD><EFBFBD><EFBFBD>񂪑<EFBFBD><F182AA91>݂<EFBFBD><DD82>Ȃ<EFBFBD><C882>Ȃ<EFBFBD><C882>܂ŕϊ<C595><CF8A><EFBFBD><EFBFBD>J<EFBFBD><4A><EFBFBD>Ԃ<EFBFBD><D482>āA<C481>A<EFBFBD>A
while($str1 =~ $str2)
{
$str1 =~ s/$str2//g;
}
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʂ<EFBFBD><CA82>Ԃ<EFBFBD>
return $str1;
}
########################################################################
# <20><><EFBFBD>O<EFBFBD><4F><EFBFBD>ƃ<EFBFBD><C683>[<5B><><EFBFBD><EFBFBD><EFBFBD>̋֎~<7E><><EFBFBD>[<5B>h<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
########################################################################
sub NGNameReplace
{
my ($GB) = @_;
# NG<4E><47><EFBFBD>[<5B>h
$GB->{FORM}->{'FROM'} =~ s/mail/ /g;
$GB->{FORM}->{'FROM'} =~ s/MAIL/ /g;
$GB->{FORM}->{'FROM'} =~ s/<2F>Ǘ<EFBFBD>/<2F>h<EFBFBD>Ǘ<EFBFBD><C797>h/g;
$GB->{FORM}->{'FROM'} =~ s/<2F>ǒ<EFBFBD>/<2F>h<EFBFBD>ǒ<EFBFBD><C792>h/g;
$GB->{FORM}->{'FROM'} =~ s/<2F><><EFBFBD><EFBFBD>/<2F>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>h/g;
$GB->{FORM}->{'FROM'} =~ s/<2F>폜/<2F>h<EFBFBD><EFBFBD>h/g;
$GB->{FORM}->{'FROM'} =~ s/<2F><><EFBFBD>A/<2F>h<EFBFBD><68><EFBFBD>A<EFBFBD>h/g;
$GB->{FORM}->{'FROM'} =~ s/sakujyo/<2F>hsakujyo<79>h/g;
$GB->{FORM}->{'FROM'} =~ s/<2F><>/<2F><>/g;
$GB->{FORM}->{'FROM'} =~ s/<2F><>/<2F><>/g;
$GB->{FORM}->{'FROM'} =~ s/<2F>R<EFBFBD><52><EFBFBD><EFBFBD>/fusianasan/g;
# BadTripCheck <20><><EFBFBD>V<EFBFBD>݂<EFBFBD><DD82><EFBFBD><EFBFBD>̂ŕs<C595>v by <20><>
#$GB->{FORM}->{'FROM'} = &StripStr($GB->{FORM}->{'FROM'}, "usubon", 1);
$GB->{FORM}->{'mail'} =~ s/<2F>폜/<2F>h<EFBFBD><EFBFBD>h/g;
$GB->{FORM}->{'mail'} =~ s/sakujyo/<2F>hsakujyo<79>h/g;
$GB->{FORM}->{'mail'} =~ s/<2F><>/<2F><>/g;
$GB->{FORM}->{'mail'} =~ s/<2F><>/<2F><>/g;
$GB->{FORM}->{'MESSAGE'}=~ s/sssp:/http:/g;;
if(!$GB->{MARU})
{
$GB->{FORM}->{'FROM'} =~ s/<2F><>/<2F><>/g;
}
if($GB->{FORM}->{'bbs'} eq 'ihou' && $GB->{KEITAI})
{
$GB->{FORM}->{'FROM'} = "tasukeruyo$GB->{FORM}->{'FROM'}" ;
}
# if($GB->{FORM}->{'bbs'} eq 'campus' && rand(100) > 90)
# {
# $GB->{FORM}->{'FROM'} = "fusianasan" ;
# }
return 0;
}
########################################################################
# <20>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
# $GB->{TRIPSTRING} <20>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʂ<EFBFBD><CA82><EFBFBD><EFBFBD><EFBFBD>
########################################################################
sub ProcessTrip
{
my ($GB, $main_message, $handle_pass) = @_;
length $handle_pass > 1024
and &DispError2($GB,'<27>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I','<27>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>I');
if (length $handle_pass >= 12)
{
my $mark = substr($handle_pass, 0, 1);
if ($mark eq '#' || $mark eq '$')
{
if ($handle_pass =~ m|^#([[:xdigit:]]{16})([./0-9A-Za-z]{0,2})$|)
{
$GB->{TRIPSTRING} = substr(crypt(pack('H*', $1), "$2.."), -10);
}
else
{
# <20><><EFBFBD><EFBFBD><EFBFBD>̊g<CC8A><67><EFBFBD>p
$GB->{TRIPSTRING} = '???';
}
}
else
{
use Digest::SHA1 qw(sha1_base64);
$GB->{TRIPSTRING} = substr(sha1_base64($handle_pass), 0, 12);
$GB->{TRIPSTRING} =~ tr/+/./;
}
}
else
{
my $change_salt = substr($handle_pass, , 1) . "H";
$change_salt =~ tr/\x3A-\x40\x5B-\x60\x00-\x2D\x7B-\xFF/A-Ga-f./;
$GB->{TRIPSTRING} = substr(crypt($handle_pass, $change_salt), -10);
}
$GB->{FORM}->{'FROM'} = "$main_message </b><3E><>$GB->{TRIPSTRING} <b>";
return 0;
}
########################################################################
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N
# $GB->{TRIPSTRING} <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>G<EFBFBD><47><EFBFBD>[
########################################################################
sub BadTripCheck
{
my ($GB) = @_;
our %BadTripList;
BEGIN {
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҏW<D28F><57><EFBFBD><EFBFBD>
%BadTripList = map +($_ => 1), (
"3SHRUNYAXA"
);
}
if($BadTripList{$GB->{TRIPSTRING}})
{
&DispError2($GB, "<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I", "<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B");
}
return 0;
}
########################################################################
# <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
########################################################################
sub ProcessCap
{
my ($GB, $mail_message, $handle_pass) = @_;
# <20>‚<EFBFBD><C282>ƃL<C683><4C><EFBFBD>b<EFBFBD>v<EFBFBD>t<EFBFBD><74><EFBFBD>O
my $bflag = 0;
# <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>Ԃ<EFBFBD><D482>o<EFBFBD><6F><EFBFBD>t<EFBFBD><74><EFBFBD>O
my $tflag = 0;
# <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD>
my $handle = "";
# <20>•ʃL<CA83><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD>?
if(&IsItabetsuCap($GB))
{
$bflag = 1;
}
# plus/news<77>̐V<CC90>X<EFBFBD><58><EFBFBD>͂<EFBFBD><CD82>Ԃ<EFBFBD><D482>o<EFBFBD><6F>
if($GB->{NEWTHREAD} ne 0 && ($GB->{FORM}->{'bbs'} =~ /plus$/ || $GB->{FORM}->{'bbs'} eq 'news'))
{
$tflag = 1;
}
# <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><E982A9>?
$handle = &FindCap($GB, $handle_pass, $bflag, $tflag);
if($handle ne "")
{
# <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>܂<EFBFBD><DC82>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>t<EFBFBD><74><EFBFBD>O<EFBFBD>𗧂Ă<F097A782>
$GB->{CAP} = 1;
# <20><><EFBFBD>ɃL<C983><4C><EFBFBD>b<EFBFBD>v<EFBFBD>̎<EFBFBD><CC8E>ʂ<EFBFBD><CA82>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
if($handle =~ /<2F><>$/)
{
# <20><><EFBFBD>‚<EFBFBD><C282>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>(<28><><EFBFBD>̓L<CD83><4C><EFBFBD>b<EFBFBD>v)
$GB->{STRONGCAP} = 1;
$handle =~ s/<2F><>.*//;
}
elsif($handle =~ /<2F><>$/)
{
# <20><><EFBFBD>‚<EFBFBD><C282>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68>(<28><><EFBFBD>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v)
# <20><><EFBFBD>݂ł͒ʏ<CD92><CA8F>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>Ƌ<EFBFBD><C68B>ʂȂ<CA82>
$GB->{WHITECAP} = 1;
$handle =~ s/<2F><>.*//;
}
# <20><><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>O<EFBFBD><4F><EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68> <20><>
# <20><><EFBFBD>O<EFBFBD>Ȃ<EFBFBD><C882>̎<EFBFBD><CC8E><EFBFBD> <20>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68> <20><>
if($GB->{FORM}->{'FROM'})
{
$GB->{FORM}->{'FROM'} = "$GB->{FORM}->{'FROM'}<7D><>$handle <20><>";
}
else
{
$GB->{FORM}->{'FROM'} = "$handle <20><>";
}
}
# <20><><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>̕⊮ (#<23><><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD>)
$GB->{FORM}->{'mail'} = $mail_message;
#&DispError2($GB,"root <20><>","<22>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>t<EFBFBD><74><EFBFBD>O:$GB->{CAP} <20><><EFBFBD>t<EFBFBD><74><EFBFBD>O:$GB->{WHITECAP} <20><><EFBFBD>t<EFBFBD><74><EFBFBD>O:$GB->{STRONGCAP}");
return 0;
}
########################################################################
# <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ׁA<D781><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃L<CC83><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>Ԃ<EFBFBD>
# <20><><EFBFBD><EFBFBD>: $GB, <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>p<EFBFBD>X, <20>t<EFBFBD><74><EFBFBD>O1, <20>t<EFBFBD><74><EFBFBD>O2
# <20>t<EFBFBD><74><EFBFBD>O1<4F><31><EFBFBD>^<5E>̏ꍇ<CC8F>A<EFBFBD>•ʃL<CA83><4C><EFBFBD>b<EFBFBD>v<EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73>
# <20>t<EFBFBD><74><EFBFBD>O2<4F><32><EFBFBD>^<5E>̏ꍇ<CC8F>A<EFBFBD>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>Ԃ肾<D482><E882BE><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73>
# <20>߂<EFBFBD><DF82>l: <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD> <20>܂<EFBFBD><DC82><EFBFBD> ""(<28>Y<EFBFBD><59><EFBFBD>Ȃ<EFBFBD><C882>̏ꍇ)
########################################################################
sub FindCap
{
my ($GB, $pass, $bflag, $tflag) = @_;
my $board = $GB->{FORM}->{'bbs'};
my $handle_file = "../handle/";
my $handle_name = "";
$pass =~ s/[\.\/]//gi;
$pass .= ".cgi";
#bflag<61><67><EFBFBD>^<5E>̎<EFBFBD><CC8E>́A<CD81>•ʃL<CA83><4C><EFBFBD>b<EFBFBD>v<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
if($bflag)
{
$handle_file .= $board . "/";
}
$handle_file .= $pass;
# <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E982A9><EFBFBD>ׂ<EFBFBD>
if(-e $handle_file)
{
#tflag<61><67><EFBFBD>^<5E>̎<EFBFBD><CC8E>́A<CD81>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>̂<EFBFBD><CC82>Ԃ肾<D482><E882BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($tflag)
{
# Perl 5.7.2 <20>ȍ~<7E><> utime <20><> undef <20>ł<EFBFBD><C582><EFBFBD>
my $now = $^V lt v5.7.2 ? time : undef;
# <20>Ȃ񂾂<C882><F182BE82><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>̂łƂ肠<C682><E882A0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɖ߂<C996><DF82><EFBFBD> by <20><>
# my $now = time;
# <20><EFBFBD><E182BE><EFBFBD>܂ł́Abbsd<73>ɂ<EFBFBD><C982>Ԃ肾<D482><E882BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˗<EFBFBD>
if(IsSnowmanServer == BBSD->{REMOTE})
{
# bbsd <20><> touch <20>ł<EFBFBD> undef <20>̑<EFBFBD><CC91><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0
my $cmd = 'touch';
my $errmsg = bbsd($handle_file, $cmd, $now || 0, 'dummy');
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
if(&bbsd_TimeoutCheck($GB, $errmsg))
{
&bbsd_TimeoutError($GB, $cmd);
}
}
else
{
# undef <20>͕ϐ<CD95><CF90>łȂ<C582><C882><EFBFBD><EFBFBD>ڋL<DA8B>q<EFBFBD>łȂ<C582><C882>ƃ_<C683><5F>
utime $now || undef, $now || undef, $handle_file;
}
}
#<23>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD><4A><EFBFBD>Ē<EFBFBD><C492>g(<28>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD>)<29>𓾂<EFBFBD>
open(HANDLE, $handle_file);
$handle_name = <HANDLE>;
close(HANDLE);
chomp($handle_name);
}
return $handle_name;
}
########################################################################
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD>(heaven4vip<69>ł<EFBFBD><C582><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>BE<42>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>•ϖ<C295><CF96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
########################################################################
sub NanashiReplace4Heaven
{
my ($GB) = @_;
if($GB->{BEpoints} > 999) {$GB->{FORM}->{'FROM'} = "<font color=#9933CC><3E><><EFBFBD><EFBFBD><EFBFBD>H</font>" ;}
elsif($GB->{BEpoints} > 499) {$GB->{FORM}->{'FROM'} = "<font color=#9966CC><3E><><EFBFBD><EFBFBD></font>" ;}
elsif($GB->{BEpoints} > 99) {$GB->{FORM}->{'FROM'} = "<font color=#9999CC><3E><><EFBFBD>c</font>" ;}
elsif($GB->{BEpoints} > 29) {$GB->{FORM}->{'FROM'} = "<span style=\"background-color: #6600cc; color: #ffffff; padding-left: 4px; padding-right: 4px;\"><3E>L<EFBFBD><4C></span>" ;}
elsif($GB->{BEpoints} eq 20) {$GB->{FORM}->{'FROM'} = "<font color=#99CCCC><3E><><EFBFBD><EFBFBD></font>" ;}
elsif($GB->{BEpoints} eq 10) {$GB->{FORM}->{'FROM'} = "<font color=#99CCCC><3E>^<5E><></font>" ;}
elsif($GB->{BEpoints} > 9) {$GB->{FORM}->{'FROM'} = "<font color=#99CCCC><3E>R<EFBFBD>c</font>" ;}
elsif($GB->{BEpoints} > 1) {$GB->{FORM}->{'FROM'} = "<font color=#99FFCC><3E><><EFBFBD><EFBFBD></font>" ;}
return 0;
}
#############################################################################
# <20><><EFBFBD>O<EFBFBD><4F><EFBFBD>̓`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ə<EFBFBD><C68F><EFBFBD><EFBFBD>Aheaven4vip<69>̖<EFBFBD><CC96><EFBFBD><EFBFBD><EFBFBD><EFBFBD>u<EFBFBD><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub ProcessNanashi
{
my ($GB) = @_;
# <20><><EFBFBD>O<EFBFBD><4F><EFBFBD>̓`<60>F<EFBFBD>b<EFBFBD>N
if($FOX->{$GB->{FORM}->{bbs}}->{'NANASHI_CHECK'})
{
unless($GB->{FORM}->{'FROM'})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>B<EFBFBD>B<EFBFBD>B");
}
}
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̕⊮<CC95>Ə<EFBFBD><C68F><EFBFBD>
unless($GB->{FORM}->{'FROM'})
{
if(!$GB->{KEITAI} && $FOX->{$GB->{FORM}->{bbs}}->{'BBS_RAWIP_CHECK'} eq "checked" && $GB->{COOKIES}{PREN} ne '')
{ # <20>ȑO<C891>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>񂾔‚̖<C282><CC96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#$GB->{FORM}->{'MESSAGE'} .= "<hr>PREN=$GB->{COOKIES}{PREN} // $FOX->{$GB->{FORM}->{bbs}}->{'BBS_NONAME_NAME'}";
my $prep = $GB->{COOKIES}{PREN} ;
#use URI::Escape;
#$prep = uri_escape($prep);
$prep =~ s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2', $1)/eg;
if($prep =~ /[<>\t\n\#\&]/) {&endhtml($GB);}
if(length($prep) > 48) {&endhtml($GB);}
# NG<4E><47><EFBFBD>[<5B>h
$prep =~ s/mail/ /g;
$prep =~ s/MAIL/ /g;
$prep =~ s/<2F>Ǘ<EFBFBD>/<2F>h<EFBFBD>Ǘ<EFBFBD><C797>h/g;
$prep =~ s/<2F>ǒ<EFBFBD>/<2F>h<EFBFBD>ǒ<EFBFBD><C792>h/g;
$prep =~ s/<2F><><EFBFBD><EFBFBD>/<2F>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>h/g;
$prep =~ s/<2F>폜/<2F>h<EFBFBD><EFBFBD>h/g;
$prep =~ s/<2F><><EFBFBD>A/<2F>h<EFBFBD><68><EFBFBD>A<EFBFBD>h/g;
$prep =~ s/sakujyo/<2F>hsakujyo<79>h/g;
$prep =~ s/<2F><>/<2F><>/g;
$prep =~ s/<2F><>/<2F><>/g;
$prep =~ s/<2F>R<EFBFBD><52><EFBFBD><EFBFBD>/fusianasan/g;
if($prep ne $FOX->{$GB->{FORM}->{bbs}}->{'BBS_NONAME_NAME'})
{
if($prep !~ /fusianasan/ && $prep !~ /tasukeruyo/)
{
$GB->{FORM}->{'FROM'} = "<\/b>$prep <b>" ;
}
else
{
$GB->{FORM}->{'FROM'} = "$prep" ;
}
}
}
}
unless($GB->{FORM}->{'FROM'})
{
$GB->{FORM}->{'FROM'} = $FOX->{$GB->{FORM}->{bbs}}->{'BBS_NONAME_NAME'};
if($GB->{FORM}->{bbs} eq 'heaven4vip')
{
&NanashiReplace4Heaven($GB);
}
}
return 0;
}
########################################################################
# tasukeruyo<79>̏<EFBFBD><CC8F><EFBFBD>
########################################################################
sub Tasukeruyo
{
my ($GB) = @_;
if(length($GB->{FORM}->{'MESSAGE'}) == 0){
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>{<7B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>I");
}
my $user_agent = $ENV{'HTTP_USER_AGENT'};
# $user_agent =~ s/"/&quot;/g;
$user_agent =~ s/</&lt;/g;
$user_agent =~ s/>/&gt;/g;
$user_agent =~ tr/\t/ /;
# [\x00\n\r] <20><> [[:cntrl:]]
$user_agent =~ s/[[:cntrl:]]//g;
$user_agent =~ s/(?<=[\x80-\xFF])$/ /g;
#$user_agent =~ s/;icc[\w]{20}/;icc********************/g;
my $tasu = "$GB->{HOST}($GB->{IDNOTANE})";
$tasu =~ s/<([^>]+)>/<!--$1-->/g;
&jcode::tr(\$GB->{FORM}->{'FROM'}, 't', '"');
$GB->{FORM}->{'FROM'} =~ s/"asukeruyo/ <\/b>$tasu<b>/g;
&jcode::tr(\$GB->{FORM}->{'FROM'}, '"', 't');
$GB->{FORM}->{'FROM'} =~ s/(?:^|(?<=[\x20-\x7E])) </</;
$GB->{FORM}->{'MESSAGE'} .= " <hr><font color=\"blue\">$user_agent</font>";
$GB->{FORM}->{'FROM'} =~ s/fusianasan//g;
return 0;
}
########################################################################
# fusianasan<61>̏<EFBFBD><CC8F><EFBFBD>
########################################################################
sub Fusianasan
{
my ($GB) = @_;
my $fusi = $GB->{HOST} ;
if($GB->{KEITAI}) {$fusi = $GB->{IDNOTANE};}
if($GB->{KEITAIBROWSER}) {$fusi = $GB->{IDNOTANE};}
if($GB->{P22CH})
{
$fusi = "p2-user: " . $GB->{IDNOTANE};
$fusi .= " p2-client-ip: " . $GB->{HOST2};
}
$fusi =~ s/<([^>]+)>/<!--$1-->/g;
&jcode::tr(\$GB->{FORM}->{'FROM'}, 'f', '"');
$GB->{FORM}->{'FROM'} =~ s/"usianasan/ <\/b>$fusi<b>/g;
&jcode::tr(\$GB->{FORM}->{'FROM'}, '"', 'f');
$GB->{FORM}->{'FROM'} =~ s/(?:^|(?<=[\x20-\x7E])) </</;
return 0;
}
##############################################################################
# <20>t<EFBFBD>H<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N(<28>–<EFBFBD><C296>ɕςȕ<CF82><C895><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>Ԃ<EFBFBD><D482>ǂ߂Ȃ<DF82>)
##############################################################################
sub FormInfoCheck
{
my ($GB) = @_;
#<23>a<EFBFBD>a<EFBFBD>r<EFBFBD><72><EFBFBD>ɕs<C995><73><EFBFBD>ȕ<EFBFBD><C895><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EA8D87><EFBFBD>΂<EFBFBD><CE82>΂<EFBFBD>
if($GB->{FORM}->{'bbs'} =~ /[^a-zA-Z0-9]/)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>a<EFBFBD>a<EFBFBD>r<EFBFBD><72><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>ł<EFBFBD><C582>I");
}
#<23><><EFBFBD>Ԃ<EFBFBD><D482>ǂݍ<C782><DD8D>߂Ȃ<DF82><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>΂<EFBFBD><CE82>΂<EFBFBD>
unless($GB->{FORM}->{'time'})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>t<EFBFBD>H<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>񂪕s<F182AA95><73><EFBFBD>ł<EFBFBD><C582>I");
}
return 0;
}
########################################################################
# <20><><EFBFBD>t<EFBFBD>@<40><><EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N(<28>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>ςł<CF82><C582><EFBFBD><EFBFBD><EFBFBD>)
########################################################################
sub BraHen
{
my ($GB) = @_;
# <20>g<EFBFBD>сE<D181><45><EFBFBD>ۂ<EFBFBD><DB82>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if(&IsIP4Mobile($ENV{REMOTE_ADDR})) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
# UA<55><41><EFBFBD>Ȃ<EFBFBD><C882>̂̓u<CD83><75><EFBFBD><EFBFBD>
#if(!$ENV{'HTTP_USER_AGENT'})
#{
# &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>ςł<CF82><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B(ua)$ENV{'HTTP_REFERER'}");
#}
# if($ENV{'HTTP_USER_AGENT'} =~ /gikoNavi\/beta50/)
if($ENV{'HTTP_USER_AGENT'} =~ /gikoNavi\/beta50\/1\.50\.2\.606/)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>ςł<CF82><C582><EFBFBD><EFBFBD><EFBFBD>-2<>B(ua)$ENV{'HTTP_REFERER'}");
}
# *.ula.cc <20>̓X<CD83><58><EFBFBD>[
if($ENV{'HTTP_REFERER'} =~ /^http:\/\/\w+\.u\.la\//) {return 0;}
if($ENV{'HTTP_REFERER'} =~ /^http:\/\/\w+\.ula\.cc\//) {return 0;}
# orz.2ch.io <20>̓X<CD83><58><EFBFBD>[
if($ENV{'HTTP_REFERER'} =~ /^http:\/\/orz\.2ch\.io\//) {return 0;}
if($ENV{'HTTP_REFERER'} !~ /^http:\/\/$ENV{'HTTP_HOST'}\//)
{
#c<><63><EFBFBD>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD>p<EFBFBD><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɑΉ<C991>
if($ENV{'HTTP_REFERER'} !~ /^http:\/\/c\.2ch\.net\//)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>ςł<CF82><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B(referer1)$ENV{'HTTP_REFERER'}");
}
}
if($ENV{'HTTP_HOST'} ne $ENV{'SERVER_NAME'})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>ςł<CF82><C582><EFBFBD><EFBFBD><EFBFBD>(host)<29>B$ENV{'HTTP_REFERER'}");
}
return 0;
}
########################################################################
# <20>X<EFBFBD><58><EFBFBD>^<5E>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>h<EFBFBD>A<EFBFBD>{<7B><><EFBFBD>̒<EFBFBD><CC92><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
########################################################################
sub FieldSizeCheck
{
my ($GB) = @_;
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{STRONGCAP}) {return 0;}
if(length($GB->{FORM}->{'subject'}) > $FOX->{$GB->{FORM}->{bbs}}->{"BBS_SUBJECT_COUNT"})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>T<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");
}
if(length($GB->{FORM}->{'FROM'}) > $FOX->{$GB->{FORM}->{bbs}}->{"BBS_NAME_COUNT"})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");
}
if(length($GB->{FORM}->{'mail'}) > $FOX->{$GB->{FORM}->{bbs}}->{"BBS_MAIL_COUNT"})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>[<5B><><EFBFBD>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");
}
if(length($GB->{FORM}->{'MESSAGE'}) > $FOX->{$GB->{FORM}->{bbs}}->{"BBS_MESSAGE_COUNT"})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>{<7B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I==$FOX->{$GB->{FORM}->{bbs}}->{BBS_MESSAGE_COUNT}==");
}
if(length($GB->{FORM}->{'MESSAGE'}) == 0)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>{<7B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>I");
}
return 0;
}
########################################################################
# <20>{<7B><><EFBFBD>̍s<CC8D><73><EFBFBD>ƒ<EFBFBD><C692><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N
########################################################################
sub FieldLineCheck
{
my ($GB) = @_;
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{STRONGCAP}) {return 0;}
#<23>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
my @msg = split(/<br>/, $GB->{FORM}->{'MESSAGE'});
my $cnt = @msg;
if($cnt > ($FOX->{$GB->{FORM}->{bbs}}->{'BBS_LINE_NUMBER'} * 2))
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");
}
foreach(@msg)
{
#$cnt = tr/[\041-\177]//;
if(length > 256)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");
}
}
return 0;
}
##############################################################################
# <20>•ʂ̓<CA82><CC93><EFBFBD><EA8F88>(sec2ch<63>ł͈<C582><CD88>ʏ<EFBFBD><CA8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݋֎~<7E>Ƃ<EFBFBD>plus<75>ł́<C582><CD81><EFBFBD><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ĉ”\<5C>Ƃ<EFBFBD>)
##############################################################################
sub ItabetsuSpecial
{
my ($GB) = @_;
#<23>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>‚͈<C282><CD88>ʏ<EFBFBD><CA8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݋֎~
if($GB->{FORM}->{'bbs'} eq "sec2ch")
{
if(!$GB->{STRONGCAP})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>‚͈<C282><CD88>ʏ<EFBFBD><CA8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݋֎~<7E>ł<EFBFBD>");
}
}
#<23><><EFBFBD>‚̓<C282><CD83>O<EFBFBD>C<EFBFBD><43><EFBFBD>̂<EFBFBD>
if($GB->{FORM}->{'bbs'} =~ /maru$/)
{
if(!$GB->{MARU})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>‚́<C282><CD81><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>ł<EFBFBD><C582>B");
}
}
#<23>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>p<EFBFBD>j<EFBFBD><6A><EFBFBD>[<5B>X<EFBFBD>‚ł̓L<CD83><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>̂ݏ<CC82><DD8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݉”\
if($GB->{FORM}->{'bbs'} =~ /plus$/ && $GB->{FORM}->{'subject'} ne "")
{
if($GB->{FORM}->{'bbs'} =~ /liveplus/)
{
;# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<EFBFBD>B<EFBFBD>B plus <20>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>A<EFBFBD>A<EFBFBD>A
}
elsif(!$GB->{CAP})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>̌f<CC8C><66><EFBFBD>‚́<C282><CD81>t<EFBFBD><74><EFBFBD>̋L<CC8B>҂<EFBFBD><D282><EFBFBD><EFBFBD>̂݃X<DD83><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>܂<EFBFBD>");
}
}
# saku/saku2ch/sakud<75>͒ʏ<CD92><CA8F>̃X<CC83><58><EFBFBD><EFBFBD><EFBFBD>ċ֎~
if($GB->{FORM}->{'bbs'} eq "saku" || $GB->{FORM}->{'bbs'} eq "saku2ch" || $GB->{FORM}->{'bbs'} eq "sakud")
{
if (!$GB->{CAP})
{
if($GB->{FORM}->{'subject'} ne "" && $GB->{FORM}->{'bbs'} ne "sakud")
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD><EFBFBD><EFBFBD>̓X<CD83><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD>ċ֎~<7E>ł<EFBFBD><C582>I<EFBFBD>I");
}
}
}
#Be<42>‚̓<C282><CD83>O<EFBFBD>C<EFBFBD><43><EFBFBD>̂<EFBFBD>
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_BE_ID'})
{
if(!$GB->{CAP})
{
if($GB->{FORM}->{'DMDM'} eq '')
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<a href=\"http://be.2ch.net/\">be.2ch.net</a><3E>Ń<EFBFBD><C583>O<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>ĂȂ<C482><C882>Ə<EFBFBD><C68F><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B");
}
}
}
#IPv6<76>‚<EFBFBD>IPv6<76>ڑ<EFBFBD><DA91><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Be<42>̂悤<CC82><E682A4>SETTING.TXT<58><54><EFBFBD><EFBFBD><E682B3>)
if($GB->{FORM}->{'bbs'} eq "ipv6")
{
# <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>ł͏<C582><CD8F><EFBFBD><EFBFBD><EFBFBD>
if(!$GB->{CAP})
{
if(!$GB->{IPv6})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>FIPv6<76>Őڑ<C590><DA91><EFBFBD><EFBFBD>Ă<EFBFBD><C482>Ȃ<EFBFBD><C882>Ə<EFBFBD><C68F><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B");
}
}
}
return 0;
}
#############################################################################
# <20>e<EFBFBD><65><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ă`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>܂Ƃ߂čs<C48D><73>
#############################################################################
sub SuretateTotalCheck
{
my ($GB) = @_;
# <20>̂<EFBFBD><CC82>т<EFBFBD><D182>K<EFBFBD><4B>
my $violation = &Check_Speed($GB);
if($violation)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>̂<EFBFBD><CC82>т<EFBFBD><D182>s<EFBFBD><73><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B<br><3E><><EFBFBD>̔ƒX<C283><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B");
}
# <20>V<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ċK<C48B><4B>
my $tatetate = &Check_SURETATE($GB);
if($tatetate ne 0)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>V<EFBFBD><56><EFBFBD>̃z<CC83>X<EFBFBD>g<EFBFBD>ł́A<CD81><41><EFBFBD>΂炭<CE82>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B<br><3E>܂<EFBFBD><DC82>̋@<40><><EFBFBD>ɂǂ<C982><C782><EFBFBD><EFBFBD>B<EFBFBD>B<EFBFBD>B<br><br><a href=http://info.2ch.net/wiki/index.php?BELucky><3E>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ċK<C48B><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD></a><br><br>$GB->{FORM}->{'FROM'} ($tatetate)");
}
# <20><><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ă<EFBFBD><C483>~<7E>b<EFBFBD>^<5E>[
# <20><><EFBFBD>~ by FOX
# news <20>ȊO<C88A>ėL<C497><4C><EFBFBD><EFBFBD> by <20><> 2006/8/3
# <20><><EFBFBD>~ by FOX <20>t<EFBFBD><74><EFBFBD>Ǝv<C68E><76> news <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂Ȃ̂<C882> 2007/4/8
# news <20>͌<EFBFBD><CD8C><EFBFBD><EFBFBD><EFBFBD>
# if($GB->{FORM}->{'bbs'} eq 'news')
{
if($GB->{MARU})
{
# <20><><EFBFBD>ł̒P<CC92>ʎ<EFBFBD><CA8E>Ԃ<EFBFBD><D482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃X<CC83><58><EFBFBD><EFBFBD><EFBFBD>Đ<EFBFBD><C490>𒲂ׁA
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŋK<C58B><EFBFBD>ȏゾ<C88F><E382BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>Ă͂<C482><CD82>f<EFBFBD><EFBFBD><E882B7>
my $tcount = $FOX->{KUROMARUTCOUNT};# <20>f<EFBFBD>t<EFBFBD>H<EFBFBD><48><EFBFBD>g<EFBFBD>l(6)
#<23>ȉ<EFBFBD><C889>̃T<CC83>[<5B>o<EFBFBD>E<EFBFBD>‚ł͏<C582><CD8F>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD>
# if($GB->{FORM}->{bbs} eq 'news') { $tcount = 3; }
if(&mumumuKuromaruSuretateCount($GB, $tcount))
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>ŃX<C583><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD>ĉ߂<C489><DF82>ł<EFBFBD><C582>B<EFBFBD>܂<EFBFBD><DC82>ɂ<EFBFBD><C982>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B");
}
}
}
# <20><><EFBFBD>߂<EFBFBD><DF82>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>~<7E>b<EFBFBD>^<5E>[
if (&mumumuThreadNumExceededCheck($GB))
{
#<23>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>f<EFBFBD><EFBFBD><E882B7>
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>̔‚͍<C282><CD8D>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><EFBFBD>ł<EFBFBD><C582>B<EFBFBD><42><EFBFBD>߂<EFBFBD><DF82>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>B");
}
# <20><><EFBFBD><EFBFBD><EFBFBD>܂ŗ<DC82><C597><EFBFBD><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD>[
return 0;
}
#############################################################################
# <20><><EFBFBD>X<EFBFBD>A<EFBFBD><41><EFBFBD>J<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD>ɂ<EFBFBD><C982><EFBFBD>
#############################################################################
sub ResAnchor
{
my ($GB) = @_;
# >>nnn
$GB->{FORM}->{'MESSAGE'} =~ s/&gt;&gt;([0-9]+)(?![-\d])/<a href="..\/test\/read.cgi\/$GB->{FORM}->{'bbs'}\/$GB->{FORM}->{'key'}\/$1" target="_blank">&gt;&gt;$1<\/a>/g;
# >>nnn-nnn
$GB->{FORM}->{'MESSAGE'} =~ s/&gt;&gt;([0-9]+)\-([0-9]+)/<a href="..\/test\/read.cgi\/$GB->{FORM}->{'bbs'}\/$GB->{FORM}->{'key'}\/$1-$2" target="_blank">&gt;&gt;$1-$2<\/a>/g;
# <20><><EFBFBD><EFBFBD><EFBFBD>̌<EFBFBD><CC8C><EFBFBD>1.2<EFBFBD>{<7B>𒴂<EFBFBD><F092B482><EFBFBD><EFBFBD><EFBFBD><E782BE>(<28>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>̓X<CD83><58><EFBFBD>[)
if(!$GB->{CAP})
{
if(length($GB->{FORM}->{'MESSAGE'}) > ($FOX->{$GB->{FORM}->{bbs}}->{"BBS_MESSAGE_COUNT"} * 1.2)){
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>{<7B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");
}
}
return 0;
}
#############################################################################
# BE<42>p<EFBFBD>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĂԂ<C482><D482>Ƃɂ<C682><C982><EFBFBD><EFBFBD>A$GB->{xBE} <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub MakeBEString
{
my ($GB) = @_;
my $user_status = $GB->{BEelite};
my $user_points_mark = '';
my $xxx = $GB->{BExxx} ;
my $ppp = $GB->{BEpoints};
# BE<42><45><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD>ɉ<EFBFBD><C989><EFBFBD><EFBFBD><EFBFBD> # <20>}<7D>[<5B>N<EFBFBD>̑Ή<CC91><CE89><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#if($user_status eq "SOL") { $user_points_mark = 'S<font color=red><3E><></font>'; }
if($user_status eq "SOL") { $user_points_mark = 'S<><53>'; }
elsif($user_status eq "DIA") { $user_points_mark = $user_status; }
elsif($user_status eq "PLT") { $user_points_mark = $user_status; }
elsif($user_status eq "BRZ") { $user_points_mark = $user_status; }
else { $user_points_mark = $user_status; }
if($user_points_mark ne '')
{
$GB->{xBE} = " BE:$xxx-$user_points_mark($ppp)";
}
# <20>u<EFBFBD>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD>T<EFBFBD>v<EFBFBD>̕\<5C><>
if($FOX->{$GB->{FORM}->{bbs}}->{"BBS_BE_TYPE2"} && $GB->{NEWTHREAD})
{
# news poverty <20><><EFBFBD><EFBFBD>
if($GB->{FORM}->{'bbs'} eq 'news' || $GB->{FORM}->{'bbs'} eq 'poverty')
{
if($GB->{BELucky})
{
$GB->{xBE} .= " <20>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD>T";
}
}
}
# heaven4vip<69>͓<EFBFBD><CD93>ʏ<EFBFBD><CA8F><EFBFBD>(BE<42>o<EFBFBD><6F><EFBFBD>Ȃ<EFBFBD>)
if($GB->{FORM}->{bbs} eq 'heaven4vip') {$GB->{xBE} = "";}
#<23>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>Ď<EFBFBD><C48E>̓X<CD83>e<EFBFBD><65><EFBFBD>X<EFBFBD><58><EFBFBD>Ȃ<EFBFBD><C882>Abe<62><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($GB->{NEWTHREAD} && $GB->{FORM}->{bbs} eq 'news')
{
$GB->{NINNIN} = 0 ;
}
#<23><><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD>҃v<D283>`
if($GB->{KABUUP})
{
if($GB->{NINNIN} && !$FOX->{$GB->{FORM}->{bbs}}->{'BBS_BE_ID'})
{
$GB->{xBE} = "";
}
else
{
$GB->{xBE} .= " $GB->{KABUX}";
}
return 1;
}
if($GB->{KABUU})
{
# $GB->{xBE} = "" ;
if($GB->{NEWTHREAD})
{
$GB->{xBE} .= " $GB->{KABUX}";
}
else
{
if($GB->{NINNIN} && !$FOX->{$GB->{FORM}->{bbs}}->{'BBS_BE_ID'})
{
$GB->{xBE} = "";
}
}
return 1;
}
return 0;
}
########################################################################
# PC/<2F>g<EFBFBD><67>/<2F><><EFBFBD>ۂ<EFBFBD>/p2/<2F>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U <20><><EFBFBD>ʃ}<7D>[<5B>N<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
# <20>߂<EFBFBD><DF82>l: <20><><EFBFBD>ʃ}<7D>[<5B>N "" "0" "O" "o" "P" "Q"
########################################################################
sub ShikibetsuMark
{
my ($GB) = @_;
# BBS_SLIP=checked <20>ł͂Ȃ<CD82><C882><EFBFBD>͂Ȃ<CD82>
if(!$FOX->{$GB->{FORM}->{'bbs'}}->{BBS_SLIP}) { return ""; }
# <20><><EFBFBD><EFBFBD><EFBFBD>@iPhone
# iPhone 3G<33>o<EFBFBD>R<EFBFBD>AIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD>Ŕ<EFBFBD><C594>f
if(&IsIP4iPhone($ENV{'REMOTE_ADDR'})) { return "i"; }
# iPhone Wifi<66>o<EFBFBD>R<EFBFBD>A<EFBFBD>Ƃ肠<C682><E882A0><EFBFBD><EFBFBD>UA<55>Ŕ<EFBFBD><C594>f<EFBFBD>A<EFBFBD>U<EFBFBD><55><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͍̂<CC82><CD8D>̂Ƃ<CC82><C682><EFBFBD><EFBFBD>d<EFBFBD><64><EFBFBD>Ȃ<EFBFBD>
if($ENV{'HTTP_USER_AGENT'} =~ /iPhone/) { return "I"; }
# <20><><EFBFBD><EFBFBD><EFBFBD>@Docomo <20><>$ENV{HTTP_X_DCMGUID}
# if($GB->{KEITAI} eq 1)
# {
# if($ENV{HTTP_X_DCMGUID})
# {
# return "I";
# }
# return "i";
# }
# <20>g<EFBFBD>т<EFBFBD> O
if($GB->{KEITAI}) { return "O"; }
# <20><><EFBFBD><EFBFBD>p2<70><32> P
if($GB->{P22CH}) { return "P"; }
# AIR-EDGE PHONE<4E>Z<EFBFBD><5A><EFBFBD>^<5E>[<5B>o<EFBFBD>R<EFBFBD>̖<EFBFBD><CC96>ۂ<EFBFBD><DB82><EFBFBD> o
if(&mumumuIsAjipon($ENV{'REMOTE_ADDR'}))
{ return "o"; }
# <20>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55> Q
if($GB->{KEITAIBROWSER}) { return "Q"; }
# <20><><EFBFBD>L<EFBFBD>̂<EFBFBD><CC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>̂<EFBFBD> 0
return "0";
}
#############################################################################
# ID<49>̂Ƃ<CC82><C682><EFBFBD><EFBFBD>ɕ\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E995B6><EFBFBD><EFBFBD><EFBFBD>ƁA<C681><41><EFBFBD>@<40><><EFBFBD>̈<EFBFBD><CC88>̎<EFBFBD><CC8E><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD>
# ID<49>̂Ƃ<CC82><C682><EFBFBD><EFBFBD>ɕ\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E995B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD> $GB->{xID} <20>Ɋi<C98A>[<5B><><EFBFBD><EFBFBD><EFBFBD>A
# <20><><EFBFBD>@<40><><EFBFBD>̈<EFBFBD><CC88><EFBFBD> $GB->{LOGDAT} <20>Ɋi<C98A>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub MakeIdStringAndLogdat
{
my ($GB) = @_;
#ID<49>𐶐<EFBFBD><F090B690><EFBFBD><EFBFBD><EFBFBD>
my $idcrypt = undef;
#IPv6<76>ł́u<CD81><75>48<34>v<EFBFBD>Ɓu<C681><75>64<36>v<EFBFBD>Ɓu<C681>S128<32>v<EFBFBD><76><EFBFBD><EFBFBD><E790B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>24<32><34><EFBFBD><EFBFBD>ID
if ($GB->{IPv6})
{
use Net::IP;
my $ip = new Net::IP($ENV{REMOTE_ADDR});
my $ip_number = $ip->intip();
# <20><>48bit
my $ip_number_h = $ip_number >> 80;
# <20><>64bit
my $ip_number_m = $ip_number >> 64;
my $idcrypt_h = &foxGetMD5id(
$GB->{FORM}->{'bbs'}, #bbs
$GB->{MD5DATE}, #<23><><EFBFBD>t
$FOX->{$GB->{FORM}->{'bbs'}}->{MD5NUMBER}, #
$ip_number_h #
) ;
my $idcrypt_m = &foxGetMD5id(
$GB->{FORM}->{'bbs'}, #bbs
$GB->{MD5DATE}, #<23><><EFBFBD>t
$FOX->{$GB->{FORM}->{'bbs'}}->{MD5NUMBER}, #
$ip_number_m #
) ;
my $idcrypt_f = &foxGetMD5id(
$GB->{FORM}->{'bbs'}, #bbs
$GB->{MD5DATE}, #<23><><EFBFBD>t
$FOX->{$GB->{FORM}->{'bbs'}}->{MD5NUMBER}, #
$ip_number #
) ;
$idcrypt = $idcrypt_h . '_' . $idcrypt_m . '_' . $idcrypt_f;
}
else
{
$idcrypt = &foxGetMD5id(
$GB->{FORM}->{'bbs'}, #bbs
$GB->{MD5DATE}, #<23><><EFBFBD>t
$FOX->{$GB->{FORM}->{'bbs'}}->{MD5NUMBER}, #
$GB->{IDNOTANE} #
) ;
}
#siberia<69>ŕ\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X
my $ipipip = $ENV{REMOTE_ADDR}; #$GB->{HOST29};
#<23><><EFBFBD>ʃ}<7D>[<5B>N<EFBFBD>𓾂<EFBFBD> (O o P Q 0)
my $baribari = &ShikibetsuMark($GB);
#ID<49>p<EFBFBD><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# siberia<69>͔<EFBFBD><CD94>M<EFBFBD><4D>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>\<5C><>
# if($GB->{FORM}->{'bbs'} eq "siberia")
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_DISP_IP'} eq "siberia")
{
$GB->{xID} = "<22><><EFBFBD>M<EFBFBD><4D>:$ipipip $baribari";
}
elsif($FOX->{$GB->{FORM}->{bbs}}->{'BBS_DISP_IP'} eq "sakhalin")
{
$GB->{xID} = "<22><><EFBFBD>M<EFBFBD><4D>:$ipipip $baribari";
if($GB->{P22CH}) {$GB->{xID} = "<22><><EFBFBD>M<EFBFBD><4D>:$ipipip ($GB->{IDNOTANE}) $baribari";}
if($GB->{KEITAI}) {$GB->{xID} = "<22><><EFBFBD>M<EFBFBD><4D>:$ipipip ($GB->{IDNOTANE}) $baribari";}
if($GB->{CAP}) {$GB->{xID} = "<22><><EFBFBD>M<EFBFBD><4D>:??? $baribari";}
}
# ID<49>Ȃ<EFBFBD><C882>̔<EFBFBD>
elsif($FOX->{$GB->{FORM}->{bbs}}->{'BBS_NO_ID'} eq "checked")
{
$GB->{xID} = "$baribari";
}
# <20>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>Ńg<C583><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EA8D87>ID:???
elsif($GB->{CAP} && !$GB->{TBACK})
{
$GB->{xID} = "ID:???$baribari";
}
# <20><><EFBFBD><EFBFBD>ID<49>̔<EFBFBD>
elsif($FOX->{$GB->{FORM}->{bbs}}->{'BBS_FORCE_ID'} eq "checked")
{
$GB->{xID} = "ID:$idcrypt$baribari";
}
# <20>C<EFBFBD><43>ID<49>̔‚̓<C282><CD83>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󂶂<EFBFBD><F382B682>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD>ID:???
elsif($GB->{FORM}->{'mail'} ne "")
{
$GB->{xID} = "ID:???$baribari";
}
# <20>C<EFBFBD><43>ID<49>̔‚Ń<C282><C583>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
else
{
$GB->{xID} = "ID:$idcrypt$baribari";
}
# BE_TYPE2<45>̔‚ł́A<CD81><41><EFBFBD>łȂ<C582><C882><EFBFBD><EFBFBD>݂̐V<CC90>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ɂ́<C982><CD81>}<7D>[<5B>N<EFBFBD><4E><EFBFBD>‚<EFBFBD>
if($FOX->{$GB->{FORM}->{bbs}}->{"BBS_BE_TYPE2"} && $GB->{NEWTHREAD})
{
if($GB->{MARU} && !$GB->{CAP})
{
$GB->{xID} .= "<22><>";
}
}
# <20><><EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
if($GB->{FORM}->{'mail'} =~ /\!stock/)
{
my $ksu = &foxGetKabusu($GB,$GB->{FORM}->{'bbs'}) ;
if($ksu > 0)
{
$GB->{FORM}->{'mail'} =~ s/\!stock// ;
my $kbkb = "<22><>";
if ($ksu >= 300) {$kbkb="<22>_";}
elsif($ksu >= 119) {$kbkb="<22><>";}
elsif($ksu >= 109) {$kbkb="<22>~";}
elsif($ksu >= 99) {$kbkb="<22><>";}
elsif($ksu >= 90) {$kbkb="<22><>";}
elsif($ksu >= 88) {$kbkb="<22><>";}
elsif($ksu >= 80) {$kbkb="<22>P";}
elsif($ksu >= 77) {$kbkb="<22><>";}
elsif($ksu >= 60) {$kbkb="<22><>";}
elsif($ksu >= 40) {$kbkb="<22><>";}
elsif($ksu >= 20) {$kbkb="<22><>";}
$GB->{xID} = " <a href=\"http://2ch.se/\">$kbkb</a> " . $GB->{xID};
}
}
#if(IsP2($GB))
#{
# $GB->{xID} .= ' P2@';
# if($GB->{MARU})
# {
# $GB->{xID} .= "<22><>$GB->{MARU}";
# }
# $GB->{xID} .= " $ENV{REMOTE_ADDR}($GB->{HOST})";
#}
# vip <20>L<EFBFBD><4C><EFBFBD>̃e<CC83>X<EFBFBD>g&<26>f<EFBFBD>o<EFBFBD>b<EFBFBD>O
# my $v931 = "(" . $GB->{V931} . ")";
# $GB->{xID} .= $v931;
# <20><><EFBFBD>@<40><><EFBFBD>p<EFBFBD>̈<EFBFBD><CC88><EFBFBD><EFBFBD><EFBFBD>
&MakeLogdat($GB, $idcrypt, $baribari);
#$GB->{xID} .= " DISP_IP=[$FOX->{$GB->{FORM}->{bbs}}->{'BBS_DISP_IP'}]";
return 0;
}
#############################################################################
# 1<><31><EFBFBD>j<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>̃<EFBFBD><CC83>O<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43>(<28><><EFBFBD>@<40><><EFBFBD>̈<EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# ID<49>Ǝ<EFBFBD><C68E>ʃ}<7D>[<5B>N<EFBFBD><4E><EFBFBD>K<EFBFBD>v<EFBFBD>Ȃ̂ŁAMakeIdStringAndLogdat <20><><EFBFBD><EFBFBD><EFBFBD>Ă΂<C482><CE82><EFBFBD>ƂɂȂ<C982>
# <20><><EFBFBD>@<40><><EFBFBD>̈<EFBFBD><CC88><EFBFBD> $GB->{LOGDAT} <20>Ɋi<C98A>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub MakeLogdat
{
my ($GB, $idcrypt, $baribari) = @_;
# <20><><EFBFBD>@<40><><EFBFBD>̈<EFBFBD><CC88>ɓ<EFBFBD><C993><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD>̓<EFBFBD>30<33>o<EFBFBD>C<EFBFBD>g<EFBFBD>𒊏o
my $mss = substr($GB->{FORM}->{'MESSAGE'}, 0, 30);
$mss =~ s/</&lt;/g; $mss =~ s/>/&gt;/g;
# 1<><31><EFBFBD>j<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD>̃<EFBFBD><CC83>O<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43>(<28><><EFBFBD>@<40><><EFBFBD>̈<EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
my $CID = "" ;
if($ENV{HTTP_X_DCMGUID}) {$CID = "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>($ENV{HTTP_X_DCMGUID})<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";}
if($GB->{NEWTHREAD})
{
$GB->{LOGDAT} = "$GB->{FORM}->{'FROM'}<>$GB->{FORM}->{'mail'}<>$GB->{DATE} $idcrypt$baribari<>$mss<>$GB->{FORM}->{'subject'}<>$GB->{HOST999}<>$ENV{'REMOTE_ADDR'}<>$GB->{MARU} ($GB->{FORM}->{'MDMD'} $GB->{FORM}->{'DMDM'})<>$ENV{'HTTP_USER_AGENT'}$CID $GB->{BExxx}"; #($ENV{'HTTP_COOKIE'})
}
else
{
$GB->{LOGDAT} = "$GB->{FORM}->{'FROM'}<>$GB->{FORM}->{'mail'}<>$GB->{DATE} $idcrypt$baribari<>$mss<>$GB->{FORM}->{'subject'}<>$GB->{HOST999}<>$ENV{'REMOTE_ADDR'}<>$GB->{MARU}<>$ENV{'HTTP_USER_AGENT'}$CID $GB->{BExxx}"; #($ENV{'HTTP_COOKIE'})
}
# $GB->{LOGDAT} = "$GB->{FORM}->{'FROM'}<>$GB->{FORM}->{'mail'}<>$GB->{DATE} $idcrypt$baribari<>$mss<>$GB->{FORM}->{'subject'}<>$GB->{HOST999}<>$ENV{'REMOTE_ADDR'}<>$GB->{MARU}<>$ENV{'HTTP_USER_AGENT'}"; #($ENV{'HTTP_COOKIE'})
# $GB->{LOGDAT} = "$GB->{FORM}->{'FROM'}<>$GB->{FORM}->{'mail'}<>$GB->{DATE} $idcrypt$baribari<>$mss<>$GB->{FORM}->{'subject'}<>$GB->{HOST999}<>$ENV{'REMOTE_ADDR'}<>$GB->{MARU}<>$ENV{'HTTP_USER_AGENT'}$CID"; #($ENV{'HTTP_COOKIE'})
return 0;
}
#############################################################################
# 1<><31><EFBFBD>j<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>dat<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub MakeOutdat
{
my ($GB) = @_;
my $hoshos = "";
# my $message = $GB->{FORM}->{'MESSAGE'};
# $message =~ s/sssp\:\/\/img\.2ch\.net\/([\w|\:\!\#\$\%\=\&\-\^\`\\\|\@\~\[\{\]\}\;\+\*\,\.\?\/]+)/<img src="http:\/\/img\.2ch\.net\/$1">/g;
if(&dispIconSssp($GB)) {$GB->{FORM}->{'MESSAGE'} = 'sssp://img.2ch.net/ico/' . $GB->{icon} .' <br> '. $GB->{FORM}->{'MESSAGE'} ;}
# 1<><31><EFBFBD>j<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>dat<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
$GB->{OUTDAT} = "$GB->{FORM}->{'FROM'}<>$GB->{FORM}->{'mail'}<>$GB->{DATE} $GB->{xID}$GB->{xBE}<> $GB->{FORM}->{'MESSAGE'} <>$GB->{FORM}->{'subject'}";
# saku/saku2ch/sakud<75>͓<EFBFBD><CD93><EFBFBD><EA8F88>(HOST: <20>z<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>\<5C><><EFBFBD>AID<49>EBE<42>\<5C><><EFBFBD>Ȃ<EFBFBD>)
if($GB->{FORM}->{'bbs'} eq "saku" || $GB->{FORM}->{'bbs'} eq "saku2ch" || $GB->{FORM}->{'bbs'} eq "sakud")
{
if (!$GB->{CAP})
{
$hoshos = $GB->{HOST};
# <20>g<EFBFBD>тł͌ŗL<C597>ԍ<EFBFBD><D48D><EFBFBD><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($GB->{KEITAI})
{
$hoshos = "$GB->{IDNOTANE} $GB->{HOST}";
}
if($GB->{KEITAIBROWSER})
{
$hoshos = "$GB->{IDNOTANE} $GB->{HOST}";
}
# <20><><EFBFBD><EFBFBD>p2<70>ł̓<C582><CD83>[<5B>U<EFBFBD>ԍ<EFBFBD><D48D><EFBFBD> p2-client-ip: <20>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# foxSetHost<73>ŁA$GB->{HOST2} <20>ɓ<EFBFBD><C993><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
elsif($GB->{P22CH})
{
$hoshos = "$GB->{IDNOTANE} $GB->{HOST} ($GB->{HOST2})";
}
$GB->{OUTDAT} = "$GB->{FORM}->{'FROM'}<>$GB->{FORM}->{'mail'}<>$GB->{DATE} HOST:$hoshos<> $GB->{FORM}->{'MESSAGE'} <>$GB->{FORM}->{'subject'}";
}
}
return 0;
}
#############################################################################
# <20>X<EFBFBD><58><EFBFBD>b<EFBFBD>h924<32>̓<EFBFBD><CC93>t<EFBFBD>X<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>)<29><><EFBFBD>s<EFBFBD><73>
# <20><><EFBFBD><EFBFBD>: 924<32>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68>dat<61>t<EFBFBD><74><EFBFBD>p<EFBFBD>X<EFBFBD><58>
#############################################################################
sub Update924
{
my ($GB, $DATAFILE) = @_;
# Perl 5.7.2 <20>ȍ~<7E><> utime <20><> undef <20>ł<EFBFBD><C582><EFBFBD>
my $now = $^V lt v5.7.2 ? time : undef;
# <20><EFBFBD><E182BE><EFBFBD>܂ł<DC82>bbsd<73><64>age<67>̃R<CC83>}<7D><><EFBFBD>h<EFBFBD>𑗂<EFBFBD>
if(IsSnowmanServer == BBSD->{REMOTE} || IsSnowmanServer && $GB->{FORM}{mail} !~ /sage/)
{
# sage<67>Ȃ<EFBFBD>touch<63><68><EFBFBD><EFBFBD>
if($GB->{FORM}->{'mail'} =~ /sage/)
{
# bbsd <20><> touch <20>ł<EFBFBD> undef <20>̑<EFBFBD><CC91><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0
my $cmd = 'touch';
my $errmsg = bbsd($DATAFILE, $cmd, $now || 0, 'dummy');
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
if(&bbsd_TimeoutCheck($GB, $errmsg))
{
&bbsd_TimeoutError($GB, $cmd);
}
}
# age<67><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Aage<67><65><EFBFBD>R<EFBFBD>}<7D><><EFBFBD>h<EFBFBD>𑗂<EFBFBD>
else
{
my $cmd = 'raise';
my $errmsg = bbsd($GB->{FORM}->{'bbs'}, $cmd, $GB->{FORM}->{'key'}, 'dummy');
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
if(&bbsd_TimeoutCheck($GB, $errmsg))
{
&bbsd_TimeoutError($GB, $cmd);
}
}
}
else
{
# dat<61>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>ւ̒NjL<C78B><4C><EFBFBD>s<EFBFBD><EFBFBD>Atouch<63><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{
# undef <20>͕ϐ<CD95><CF90>łȂ<C582><C882><EFBFBD><EFBFBD>ڋL<DA8B>q<EFBFBD>łȂ<C582><C882>ƃ_<C683><5F>
utime $now || undef, $now || undef, $DATAFILE;
# <20>p<EFBFBD>[<5B>~<7E>b<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͕s<CD95>v
#chmod(0666, $DATAFILE);
}
return 0;
}
#############################################################################
# dat<61>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>1<EFBFBD>s<EFBFBD><73><EFBFBD>lj<EFBFBD><C789>ŏ<EFBFBD><C58F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD>: $GB<47>A<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>f<EFBFBD>[<5B>^1<>s<EFBFBD><73>(<28><><EFBFBD>s<EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>Ȃ<EFBFBD>)<29>A<EFBFBD>t<EFBFBD><74><EFBFBD>O
# <20>t<EFBFBD><74><EFBFBD>O 0: dat<61><74><EFBFBD><EFBFBD><EFBFBD>A1:<3A><><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD>
#############################################################################
sub WriteDatFile
{
my ($GB, $filename, $filedata, $flag) = @_;
use Fcntl;
# dat<61>̏<EFBFBD><CC8F><EFBFBD><EFBFBD>̏ꍇ<CC8F>A<EFBFBD>V<EFBFBD>X<EFBFBD><58><EFBFBD>ƃ<EFBFBD><C683>X<EFBFBD>ŏꍇ<C58F><EA8D87><EFBFBD><EFBFBD>
if (!$flag)
{
# <20>V<EFBFBD>X<EFBFBD><58><EFBFBD>̏ꍇ<CC8F>Adat<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>G<EFBFBD><47><EFBFBD>[
if($GB->{NEWTHREAD})
{
sysopen(OUT, $filename, O_WRONLY|O_CREAT|O_EXCL, 0666)
or &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>”<EFBFBD><C294>т<EFBFBD><D182><EFBFBD><EFBFBD>Ȃ̂ŁA<C581>܂<EFBFBD><DC82>̋@<40><><EFBFBD>ɂǂ<C982><C782><EFBFBD><EFBFBD>B<EFBFBD>B<EFBFBD>B");
}
# <20><><EFBFBD>X<EFBFBD>̏ꍇ<CC8F>Adat<61>ɒNjL<C78B>ł<EFBFBD><C582>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>G<EFBFBD><47><EFBFBD>[
else
{
sysopen(OUT, $filename, O_WRONLY|O_APPEND, 0666)
or &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD>dat<61>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>B<EFBFBD><42>dat<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>B");
}
}
else
# <20><><EFBFBD>O<EFBFBD>̏ꍇ<CC8F>A<EFBFBD><41><EFBFBD>ɒlj<C992><C789><EFBFBD><EFBFBD>[<5B>h
{
sysopen(OUT, $filename, O_WRONLY|O_APPEND|O_CREAT, 0666)
or &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>O<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>B");
}
print OUT "$filedata\n";
close(OUT);
# <20>O<EFBFBD><4F><EFBFBD><EFBFBD>umask<73><6B><EFBFBD><EFBFBD>sysopen<65>Ŏw<C58E><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>̂ŁA<C581>p<EFBFBD>[<5B>~<7E>b<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͕s<CD95>v
#chmod(0666, $filename);
return 0;
}
########################################################################
#
########################################################################
#<23>Q<EFBFBD><51><EFBFBD>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD>h<EFBFBD>~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
sub GeroTrap
{
my ($GB) = @_ ;
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
# if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
#TBACK<43>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if($GB->{TBACK}) {return 0;}
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
# if($GB->{FORM}->{'bbs'} eq "siberia") {return 0;}
# <20>g<EFBFBD>сE<D181><45><EFBFBD>ۂ<EFBFBD><DB82>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if(&IsIP4Mobile($ENV{REMOTE_ADDR})) {return 0;}
# iPhone<6E>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if($ENV{'HTTP_USER_AGENT'} =~ /iPhone/) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
unless(
$ENV{'HTTP_REFERER'} eq ''
|| $ENV{'HTTP_REFERER'} =~ /^http:\/\/[-\w]+\.2ch\.net\//
|| $ENV{'HTTP_REFERER'} =~ /^http:\/\/\w+\.bbspink\.com\//
|| $ENV{'HTTP_REFERER'} =~ /^http:\/\/\w+\.ula\.cc\//
|| $ENV{'HTTP_REFERER'} =~ /^http:\/\/\w+\.u\.la\//
|| $ENV{'HTTP_REFERER'} =~ /^http:\/\/\w+\.s2ch\.net\//
|| $ENV{'HTTP_REFERER'} =~ /^http:\/\/orz\.2ch\.io\//
)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>Ȃ<EFBFBD><C882>x<EFBFBD><78><EFBFBD><EFBFBD><EFBFBD>Ă܂<C482><DC82><EFBFBD><EFBFBD>H");
}
if($ENV{'HTTP_REFERER'} eq '')
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>t<EFBFBD>@<40><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E782A2><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
}
return 0;
}
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD>
#############################################################################
# <20>g<EFBFBD>т<EFBFBD><D182><EFBFBD><EFBFBD><EFBFBD><EFBFBD>łȂ<C582><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
# 0: <20>g<EFBFBD><67>/AIR-EDGE<47>̖<EFBFBD><CC96>ۂ<EFBFBD><DB82>ȊO<C88A>A1: i<><69><EFBFBD>[<5B>h<EFBFBD>A2: EZweb<65>A3: <20>{<7B>[<5B>_<EFBFBD>t<EFBFBD>H<EFBFBD><48>!<21><><EFBFBD>C<EFBFBD>u
# 4: AIR-EDGE PHONE<4E>Z<EFBFBD><5A><EFBFBD>^<5E>[<5B>o<EFBFBD>R<EFBFBD>̖<EFBFBD><CC96>ۂ<EFBFBD>
# 5: emobile EMnet
#############################################################################
sub IsIP4Mobile
{
my ($raddr) = @_;
# i<><69><EFBFBD>[<5B>h
if(&mumumuIsIP4IMode($raddr)) { return 1; }
# EZweb
elsif(&mumumuIsIP4EZWeb($raddr)) { return 2; }
# Vodafone!<21><><EFBFBD>C<EFBFBD>u
elsif(&mumumuIsIP4Vodafone($raddr)) { return 3; }
# AIR-EDGE PHONE<4E>Z<EFBFBD><5A><EFBFBD>^<5E>[<5B>o<EFBFBD>R<EFBFBD>̖<EFBFBD><CC96>ۂ<EFBFBD>
elsif(&mumumuIsAjipon($raddr)) { return 4; }
# emobile EMnet
elsif(&mumumuIsIP4EMnet($raddr)) { return 5; }
# <20><><EFBFBD>L<EFBFBD>̂ǂ<CC82><C782>ł<EFBFBD><C582>Ȃ<EFBFBD>
else { return 0; }
}
#############################################################################
# iPhone<6E><65>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub IsIP4iPhone
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{IPHONECIDR}->find($raddr);
}
#############################################################################
# i<><69><EFBFBD>[<5B>h<EFBFBD>Z<EFBFBD><5A><EFBFBD>^<5E><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub mumumuIsIP4IMode
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{IMODECIDR}->find($raddr);
}
#############################################################################
# EZ<45>T<EFBFBD>[<5B>o<EFBFBD><6F>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub mumumuIsIP4EZWeb
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{EZWEBCIDR}->find($raddr);
}
#############################################################################
# <20>{<7B>[<5B>_<EFBFBD>t<EFBFBD>H<EFBFBD><48><EFBFBD><EFBFBD><EFBFBD>C<EFBFBD>u<EFBFBD>I<EFBFBD>T<EFBFBD>[<5B>o<EFBFBD><6F>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub mumumuIsIP4Vodafone
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{SOFTBANKCIDR}->find($raddr);
}
#############################################################################
# emobile EMnet<65><74>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub mumumuIsIP4EMnet
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{EMNETCIDR}->find($raddr);
}
#############################################################################
# AIR-EDGE PHONE<4E>Z<EFBFBD><5A><EFBFBD>^<5E>[<5B><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub mumumuIsIP4AirEdgePhone
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{AIREDGECIDR}->find($raddr);
}
#############################################################################
# AIR-EDGE MEGAPLUS<55><53>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub mumumuIsIP4MegaPlus
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{MEGAPLUSCIDR}->find($raddr);
}
#############################################################################
# AIR-EDGE PHONE<4E>Z<EFBFBD><5A><EFBFBD>^<5E>[<5B>o<EFBFBD>R<EFBFBD>̖<EFBFBD><CC96>ۂ񂩂ǂ<F182A982><C782><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ׂ<EFBFBD>
# AIR-EDGE PHONE<4E>Z<EFBFBD><5A><EFBFBD>^<5E>[<5B><><EFBFBD><EFBFBD><EFBFBD>̐ڑ<CC90><DA91>Ń<EFBFBD><C583>t<EFBFBD>@<40><><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD>ɂ̂ݐ^
#############################################################################
sub mumumuIsAjipon
{
my ($raddr) = @_;
if(&mumumuIsIP4AirEdgePhone($raddr) &&
$ENV{'HTTP_REFERER'} eq '') {return 1;}
else {return 0;}
}
#############################################################################
# <20><><EFBFBD><EFBFBD>p2<70><32>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub mumumuIsIP4P22ch
{
my ($raddr) = @_;
our @P22chIPAddrs;
BEGIN {
# IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD>ɕω<C995><CF89><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҏW<D28F><57><EFBFBD><EFBFBD>
@P22chIPAddrs = map { local $_ = $_; s/\./\\./g; qr/$_/; }
( "210.135.100.132", "210.135.98.43",
"210.135.99.5", "210.135.99.6" );
}
foreach(@P22chIPAddrs)
{
if($raddr =~ $_) {return 1;}
}
return 0;
}
#############################################################################
# <20><><EFBFBD><EFBFBD>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
# 0: <20>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD>
# 1: ibisBrowser
# 2: jig Browser
# 3: SoftBank PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U
# 4: docomo <20>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U
# 5: au PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>A<EFBFBD>[
# ...
#############################################################################
sub mumumuIsKeitaiBrowser
{
my ($GB) = @_;
my $raddr = $ENV{'REMOTE_ADDR'};
# ibisBrowser
if(&mumumuIsIP4ibisBrowser($raddr)) {return 1;}
# jig Browser
if(&mumumuIsIP4jigBrowser($raddr)) {return 2;}
# <20><><EFBFBD>W<EFBFBD>F<EFBFBD><46><EFBFBD>k<EFBFBD><6B><EFBFBD>񂩂<EFBFBD><F182A982>̎w<CC8E>߂ɂ<DF82><C982><EFBFBD><EFBFBD>Anewservant<6E><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD>
if($GB->{FORM}->{'bbs'} ne "newservant")
{
# SoftBank PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U
if(&mumumuIsIP4pcsiteBrowser($raddr)) {return 3;}
}
# docomo<6D>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U
if(&mumumuIsIP4imodefullBrowser($raddr)) {return 4;}
# au PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>A<EFBFBD>[
if(&mumumuIsIP4pcsiteViewer($raddr)) {return 5;}
# <20><><EFBFBD>L<EFBFBD>̂ǂ<CC82><C782>ł<EFBFBD><C582>Ȃ<EFBFBD>
return 0;
}
#############################################################################
# ibisBrowser (one of <20>g<EFBFBD>їp<D197>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U)<29><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub mumumuIsIP4ibisBrowser
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{IBISBROWSERCIDR}->find($raddr);
}
#############################################################################
# jigBrowser (one of <20>g<EFBFBD>їp<D197>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U)<29><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#############################################################################
sub mumumuIsIP4jigBrowser
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{JIGBROWSERCIDR}->find($raddr);
}
#############################################################################
# PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U (<28>\<5C>t<EFBFBD>g<EFBFBD>o<EFBFBD><6F><EFBFBD>N<EFBFBD>g<EFBFBD>уt<D183><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U)<29><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD>
#############################################################################
sub mumumuIsIP4pcsiteBrowser
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{PCSITEBROWSERCIDR}->find($raddr);
}
#############################################################################
# <20>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U (<28>h<EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD>уt<D183><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U)<29><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD>
#############################################################################
sub mumumuIsIP4imodefullBrowser
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{IMODEFULLBROWSERCIDR}->find($raddr);
}
#############################################################################
# PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>A<EFBFBD>[ (au<61>g<EFBFBD>уt<D183><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U)<29><>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>ǂ<EFBFBD><C782><EFBFBD>
#############################################################################
sub mumumuIsIP4pcsiteViewer
{
my ($raddr) = @_;
# CIDR<44><52><EFBFBD>X<EFBFBD>g<EFBFBD>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
return $FOX->{PCSITEVIEWERCIDR}->find($raddr);
}
#############################################################################
#
#############################################################################
sub checkPragma
{
my ($GB) = @_ ;
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_4WORLD'} eq "checked") {return 0;}
#<23>g<EFBFBD>т̓X<CD83><58><EFBFBD>[
if($GB->{KEITAI}) {return 0;}
if($GB->{KEITAIBROWSER}) {return 0;}
#AIR-EDGE PHONE<4E>Z<EFBFBD><5A><EFBFBD>^<5E>[<5B><><EFBFBD><EFBFBD><EFBFBD>̐ڑ<CC90><DA91>̓X<CD83><58><EFBFBD>[
if(&mumumuIsIP4AirEdgePhone($ENV{'REMOTE_ADDR'})) {return 0;}
#news<77>̓X<CD83><58><EFBFBD>[
if($GB->{FORM}->{'bbs'} eq "news") {return 0;}
#operate/sec2chd<68>̓X<CD83><58><EFBFBD>[
if($GB->{FORM}->{'bbs'} eq "operate") {return 0;}
if($GB->{FORM}->{'bbs'} eq "sec2chd") {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
#mac <20>̓X<CD83><58><EFBFBD>[
if($ENV{HTTP_USER_AGENT} =~ /PDA/) {return 0;}
if($ENV{HTTP_USER_AGENT} =~ /Mac/) {return 0;}
if($ENV{HTTP_USER_AGENT} =~ /^Monazilla\/1/) {return 0;}
if($ENV{HTTP_ACCEPT_LANGUAGE} =~ /ja/) {return 0;}
#NetFront<6E><74> Pragma: <20><><EFBFBD>f<EFBFBD><66><EFBFBD>ė<EFBFBD><C497>Ȃ<EFBFBD>
if($ENV{HTTP_USER_AGENT} =~ /NetFront/) {return 0;}
if($ENV{HTTP_PRAGMA})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>ςł<CF82><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B$ENV{'HTTP_REFERER'}");
}
}
#############################################################################
#
#############################################################################
sub ToolGekitai0
{
my ($GB) = @_ ;
my $span = $FOX->{$GB->{FORM}->{'bbs'}}->{SAMBA24} ;
#<23>ȉ<EFBFBD><C889>̔‚̓X<CD83><58><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
# if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
if(&IsIP4Mobile($ENV{REMOTE_ADDR}))
{$span += $FOX->{SambaOffset_KEITAI} ;}
if($GB->{P22CH}) {$span += $FOX->{SambaOffset_P22CH} ;}
$GB->{version} .= " +Samba24=" ;
$GB->{version} .= $FOX->{$GB->{FORM}->{'bbs'}}->{SAMBA24};
#<23><><EFBFBD>Ńg<C583><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP} && !$GB->{TBACK}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[ => <20><><EFBFBD>͐<EFBFBD><CD90>p<EFBFBD><70>samba
if($GB->{MARU})
{
&foxViva($GB,$GB->{MARU}) ;
return 0;
}
my $tane = $ENV{'REMOTE_ADDR'} ;
if($GB->{KEITAI} eq 1) {$tane = $GB->{IDNOTANE};}
if($GB->{KEITAI} eq 2) {$tane = $GB->{IDNOTANE};}
if($GB->{KEITAI} eq 3) {$tane = $GB->{IDNOTANE};}
if($GB->{KEITAI} eq 5) {$tane = $GB->{IDNOTANE};}
if($GB->{KEITAIBROWSER}) {$tane = $GB->{IDNOTANE};}
if($GB->{P22CH}) {$tane = $GB->{IDNOTANE};}
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_PROXY_CHECK'} && $GB->{BURNEDPROXY} eq 1) {$tane = "burned";}
&foxSamba24($GB, $tane, $span) ;
}
#############################################################################
#
#############################################################################
sub CheckDomain
{
my ($GB) = @_ ;
my $remo = $GB->{HOST29} ; #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9838A><EFBFBD>z
my $ita = $GB->{FORM}->{bbs} ;
# &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>C<EFBFBD>O<EFBFBD>h<EFBFBD><68><EFBFBD>C<EFBFBD><43><EFBFBD>K<EFBFBD><4B>($ita)<29>B");
if($GB->{KEITAI}) {return 1;}
if($GB->{KEITAIBROWSER}) {return 1;}
if($ita eq 'accuse') {return 1;}
if($ita eq 'siberia') {return 1;}
if($ita eq 'world') {return 1;}
if($ita eq 'northa') {return 1;}
if($ita eq 'oversea') {return 1;}
if($ita eq 'wine') {return 1;}
if($ita eq 'bizplus') {return 1;}
if($ita eq 'comic') {return 1;}
if($ita eq 'bicycle') {return 1;}
if($ita eq 'airline') {return 1;}
if($ita eq 'baby') {return 1;}
if($ita eq 'space') {return 1;}
if($ita eq 'life') {return 1;}
if($ita eq 'news2') {return 1;}
if($ita eq 'newsplus') {return 1;}
if($ita eq 'sake') {return 1;}
if($ita eq 'ski') {return 1;}
if($ita eq 'operate2') {return 1;}
if($FOX->{$ita}->{'BBS_4WORLD'} eq "checked")
{return 1;}
# &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>C<EFBFBD>O<EFBFBD>h<EFBFBD><68><EFBFBD>C<EFBFBD><43><EFBFBD>K<EFBFBD><4B>($remo)<29>B");
if($remo =~ /\.jp$/) {return 1;}
if($remo =~ /awaikeda\.com$/) {return 1;}
if($remo =~ /ccccc5\.com$/) {return 1;}
if($remo =~ /cty8\.com$/) {return 1;}
if($remo =~ /george24\.com$/) {return 1;}
if($remo =~ /ja-hc\.com$/) {return 1;}
if($remo =~ /kaga-tv\.com$/) {return 1;}
if($remo =~ /nasicnet\.com$/) {return 1;}
if($remo =~ /quolia\.com$/) {return 1;}
if($remo =~ /tigers-net\.com$/) {return 1;}
if($remo =~ /tonotv\.com$/) {return 1;}
if($remo =~ /e-sadonet\.tv$/) {return 1;}
if($remo =~ /shimanto\.tv$/) {return 1;}
if($remo =~ /telenet\.tv$/) {return 1;}
my @cDom = ('ro','to','us','hr','at','biz','be','lt','ca','uk','fr','ma','nu','mx','bg','se','cz','co','pt','by','ar','br','it','ru','il','nl','cl','in','info','asia','name','tv','th','hu','pl','es');
foreach(@cDom)
{
my $dom = $_ ;
my $dxx = '\.' . $_ . '$' ;
if($remo =~ /$dxx/i) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>C<EFBFBD>O<EFBFBD>h<EFBFBD><68><EFBFBD>C<EFBFBD><43><EFBFBD>K<EFBFBD><4B>($dom)<29>B<a href=\"http://2ch.tora3.net/\"><3E>Q<EFBFBD><51><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˂<EFBFBD><CB82>r<EFBFBD><72><EFBFBD>[<5B>A</a><3E><><EFBFBD>g<EFBFBD><67><EFBFBD>Ə<EFBFBD><C68F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂܂<DF82><DC82>B");}
}
return 0 ;
}
#############################################################################
#
#############################################################################
sub checkDenyList
{
my ($GB) = @_ ;
my $pxck;
#<23>ȉ<EFBFBD><C889>̔‚̓X<CD83><58><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
if($GB->{FORM}->{'bbs'} eq "pinknanmin"){return 0;}
if($GB->{FORM}->{'bbs'} eq "servant") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
if($GB->{FORM}->{'bbs'} eq "trafficinfo" && $GB->{KEITAI}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̔<EFBFBD><CC94><EFBFBD>
if($GB->{MARU})
{
my @PIP = @FOX_K998 ;
#<23><><EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>g<EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
foreach(@PIP)
{
chomp ;
if(/^\#/) {next;}
if(eval { $GB->{MARU} =~ /$_/; })
{
# operate2/sec2chd<68>ł́<C582><CD81><EFBFBD>ID<49><44><EFBFBD>G<EFBFBD><47><EFBFBD>[<5B>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($GB->{FORM}->{'bbs'} eq "operate2" ||
$GB->{FORM}->{'bbs'} eq "housekeeping" ||
$GB->{FORM}->{'bbs'} eq "sec2chd")
{
# return 0;
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD>N<EFBFBD>Z<EFBFBD>X<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>I<EFBFBD>I(<28><>=$GB->{MARU})");
}
else
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD>N<EFBFBD>Z<EFBFBD>X<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>I<EFBFBD>I(<28><>)");
}
}
}
#<23>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>g<EFBFBD>ɍڂ<C98D><DA82>Ă<EFBFBD><C482>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>̓X<CD83><58><EFBFBD>[
return 0;
}
#p2<70>K<EFBFBD><4B>
if($ENV{'REMOTE_ADDR'} =~ /^61\.165\./) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD>N<EFBFBD>Z<EFBFBD>X<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>I<EFBFBD>I(9)");}
if($ENV{'REMOTE_ADDR'} =~ /^202\.181\.96\./) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD>N<EFBFBD>Z<EFBFBD>X<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>I<EFBFBD>I(9)");}
if($ENV{'REMOTE_ADDR'} =~ /^202\.222\.16\./) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD>N<EFBFBD>Z<EFBFBD>X<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>I<EFBFBD>I(9)");}
if($ENV{'REMOTE_ADDR'} =~ /^21\.240\./) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD>N<EFBFBD>Z<EFBFBD>X<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>I<EFBFBD>I(9)");}
if($ENV{'REMOTE_ADDR'} =~ /^69\.56\./) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD>N<EFBFBD>Z<EFBFBD>X<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>I<EFBFBD>I(9)");}
if($ENV{'REMOTE_ADDR'} =~ /^211\.8\.35\./) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD>N<EFBFBD>Z<EFBFBD>X<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>I<EFBFBD>I(9)");}
#<23><EFBFBD>n<EFBFBD>̔‚́<C282><CD81>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{FORM}->{'bbs'} eq "saku") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "sakud") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "saku2ch") {return 0;}
#<23><EFBFBD>̔‚̓X<CD83><58><EFBFBD>[
# if($ENV{'SERVER_NAME'} =~ /hayabusa/) {return 0;}
# if($GB->{FORM}->{'bbs'} eq "news") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "neet4pink") {return 0;}
if($GB->{FORM}->{'bbs'} eq "siberia") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "liveplus") {return 0;}
if($GB->{FORM}->{'bbs'} eq "liveanime") {return 0;}
if($GB->{FORM}->{'bbs'} eq "dejima") {return 0;}
if($GB->{FORM}->{'bbs'} eq "senji") {return 0;}
if($GB->{FORM}->{'bbs'} eq "operate2") {return 0;}
#???
if($GB->{HOST4} eq '')
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>͏<EFBFBD><CD8F><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B");
}
#<23>g<EFBFBD>шȊO<C88A>̓<EFBFBD><CD83><EFBFBD><EFBFBD>z<EFBFBD>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
if(!($GB->{KEITAI} || $GB->{KEITAIBROWSER}))
{
if($GB->{HOST999} =~ /proxy/) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>ςȃz<C883>X<EFBFBD>g<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>I<EFBFBD>@<40>ςȃz<C883>X<EFBFBD>g<EFBFBD>ł<EFBFBD><C582>B");}
if($GB->{HOST999} =~ /cache/) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>ςȃz<C883>X<EFBFBD>g<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>I<EFBFBD>@<40>ςȃz<C883>X<EFBFBD>g<EFBFBD>ł<EFBFBD><C582>B");}
if($GB->{HOST999} =~ /^tor\./) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>ςȃz<C883>X<EFBFBD>g<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>I<EFBFBD>@<40>ςȃz<C883>X<EFBFBD>g<EFBFBD>ł<EFBFBD><C582>B");}
if($GB->{HOST999} =~ /^tor\d+\./) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>ςȃz<C883>X<EFBFBD>g<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>I<EFBFBD>@<40>ςȃz<C883>X<EFBFBD>g<EFBFBD>ł<EFBFBD><C582>B");}
# if($GB->{HOST999} =~ /^gw/) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>ςȃz<C883>X<EFBFBD>g<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>I<EFBFBD>@<40>ςȃz<C883>X<EFBFBD>g<EFBFBD>ł<EFBFBD><C582>B");}
}
#<23>C<EFBFBD>O<EFBFBD>h<EFBFBD><68><EFBFBD>C<EFBFBD><43><EFBFBD>K<EFBFBD><4B>
&CheckDomain($GB) ;
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݋<EFBFBD><DD8B>ۃ<EFBFBD><DB83>X<EFBFBD>g<EFBFBD>Ŕ<EFBFBD><C594><EFBFBD>
my @PIP = @FOX_K999 ;
foreach(@PIP)
{
chomp;
if($_ eq '') {next;}
if(/^\#/) {next;}
if(/^_2CH_/)
{
if($ENV{'SERVER_NAME'} !~ /2ch.net/) {next;}
s/^_2CH_// ;
}
if(/^_PINK_/)
{
if($ENV{'SERVER_NAME'} !~ /bbspink.com/) {next;}
s/^_PINK_// ;
}
if(/^_BBS_(\S+)_/)
{
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","BBS = [$1]");
if($GB->{FORM}->{'bbs'} ne $1) {next;}
s/^_BBS_\S+_// ;
}
if(/^_SRV_(\S+)_/)
{
if($ENV{'SERVER_NAME'} !~ $1) {next;}
s/^_SRV_\S+_// ;
}
if(/^_HANA_/)
{
if(IsSenmon($GB)) {next;}
s/^_HANA_// ;
}
$GB->{DEBUG} .= "<22><><EFBFBD>X<EFBFBD>g<EFBFBD>Ŕ<EFBFBD><C594><EFBFBD> ($_) <br>";
# <20><EFBFBD><E595B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʂ<EFBFBD><CA82><EFBFBD><EFBFBD>̂Œ<CC82><C592><EFBFBD>
if(eval { $GB->{HOST999} =~ /$_/; })
{# <20><><EFBFBD>X<EFBFBD>g<EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD>
# <20><><EFBFBD>ۂ<EFBFBD><DB82><EFBFBD><EFBFBD>}<7D>[<5B>N<EFBFBD><4E><EFBFBD>‚<EFBFBD><C282><EFBFBD><EFBFBD>t<EFBFBD><74><EFBFBD>O
my $deniedmark = 0;
# accuse/operate/sec2chd <20><> fusianasan <20><><EFBFBD>Ă<EFBFBD>
# <20>V<EFBFBD>X<EFBFBD><58><EFBFBD>ł͂Ȃ<CD82><C882><EFBFBD>́A<CD81>A<EFBFBD>A
if($GB->{FORM}->{'bbs'} eq "accuse" && $GB->{FORM}->{'FROM'} =~ /$GB->{HOST}/ && $GB->{FORM}->{'subject'} eq "") { $deniedmark = 1; }
if($GB->{FORM}->{'bbs'} eq "operate" && $GB->{FORM}->{'FROM'} =~ /$GB->{HOST}/ && $GB->{FORM}->{'subject'} eq "") { $deniedmark = 1; }
# if($GB->{FORM}->{'bbs'} eq "operate2" && $GB->{FORM}->{'FROM'} =~ /$GB->{HOST}/ && $GB->{FORM}->{'subject'} eq "") { $deniedmark = 1; }
#if($GB->{HOST999} =~ /ocn\.ne\.jp/)
if($GB->{HOST999} =~ /xxx\.ne\.jp/)
{
if($GB->{FORM}->{'bbs'} eq "siberia") { $deniedmark = 0; }
if($GB->{FORM}->{'bbs'} eq "sec2chd") { $deniedmark = 0; }
if($GB->{FORM}->{'bbs'} eq "accuse") { $deniedmark = 0; }
}
# <20><><EFBFBD>ۂ<EFBFBD><DB82><EFBFBD><EFBFBD>}<7D>[<5B>N<EFBFBD><4E><EFBFBD>‚<EFBFBD><C282><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŏ<EFBFBD><C58F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82><EFBFBD><EFBFBD>‚<EFBFBD><C282><EFBFBD>
if($deniedmark)
{
# [<5B>\{}@{}@{}-] <20>ƈꏏ<C688>ɏo<C98F><EFBFBD><E98E9E>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD>
if($GB->{BURNEDPROXY})
{
$GB->{FORM}->{'FROM'} = ' </b><3E>S[<5B>L<EFBFBD>E<EFBFBD>ցE<D681>M]<5D>|<b> ' . $GB->{FORM}->{'FROM'};
}
else
{
$GB->{FORM}->{'FROM'} = ' </b>[<5B>L<EFBFBD>E<EFBFBD>ցE<D681>M]<b> ' . $GB->{FORM}->{'FROM'};
}
return 1;
}
else
{
# <20><><EFBFBD>L<EFBFBD>̂<EFBFBD><CC82>̈ȊO<C88A>̓G<CD83><47><EFBFBD>[
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD>N<EFBFBD>Z<EFBFBD>X<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>I<EFBFBD>I($_)<br><a href=\"http://qb5.2ch.net/sec2chd/\"><3E><><EFBFBD><EFBFBD><EFBFBD>ō<EFBFBD><C58D>m<EFBFBD><6D><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B</a>");
}
}
}
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40>ǂ<EFBFBD><br>");
return 1;
}
#############################################################################
#
#############################################################################
sub foxMARUsuru
{
my ($GB) = @_ ;
if(!$GB->{MARU}) {return 0;}
if($GB->{MARU} eq $FOX->{OTAMESHIMARU}) {return 0;}
if($GB->{NEWTHREAD})
{#<23>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>Ď<EFBFBD><C48E>́<EFBFBD><CD81>ł<EFBFBD><C582>`<60>F<EFBFBD>b<EFBFBD>N
if($ENV{'SERVER_NAME'} =~ /qb/)
{#qb<71>n
return 0;
}
else
{#qb<71>n<EFBFBD>ȊO
return 1; #<23><><EFBFBD>ŃX<C583><58><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă݂<C482>
}
}
else
{#<23><><EFBFBD>X<EFBFBD><58><EFBFBD>́<EFBFBD><CD81>ł<EFBFBD><C582><EFBFBD><EFBFBD>[
return 1;
}
return 0 ;
}
sub checkProxyAtAll
{
my ($GB) = @_ ;
# news4vip<69>ł<EFBFBD>BBQ<42>L<EFBFBD><4C>(<28>C<EFBFBD>I<EFBFBD>i<EFBFBD>Y<EFBFBD><59><EFBFBD>΍<EFBFBD>)
#if($ENV{'SERVER_NAME'} =~ /bbspink/) {return 0;}
#if($GB->{FORM}->{'bbs'} eq "news4vip") {return 0;}
#if($GB->{FORM}->{'bbs'} eq "news") {return 0;}
#if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
# IPv6<76>‹<EFBFBD><C28B>ł<EFBFBD>BBQ<42><51>(<28>܂<EFBFBD>)<29>Ȃ<EFBFBD>
if($GB->{IPv6}) {return 0;}
# BBQ<42><51><EFBFBD><EFBFBD><EFBFBD><EFBFBD>version<6F>ɒlj<C992>
$GB->{version} .= " +<a href=\"http://bbq.uso800.net/\">BBQ</a>";
# BBQ <20>ɕ<EFBFBD><C995><EFBFBD><EFBFBD>Ă݂<C482>
$GB->{BURNEDPROXY} = &checkProxyList($GB) ;
# <20><><EFBFBD><EFBFBD>p2<70>ł<EFBFBD>Proxy<78>̎<EFBFBD><CC8E>͑S<CD91>‚˂<C282><CB82>܂‚<DC82><C282><EFBFBD>BBQ<42>X<EFBFBD><58><EFBFBD>[
# http://qb5.2ch.net/test/read.cgi/operate/1202007319/757-768
if($GB->{P22CH} && $GB->{BURNEDPROXY})
{
$GB->{FORM}->{'FROM'} = ' </b>[<5B>\{}@{}@{}-]<b> ' . $GB->{FORM}->{'FROM'};
return 0;
}
# <20><><EFBFBD><EFBFBD><EFBFBD>̔‚ł͂˂<CD82><CB82>܂<EFBFBD><DC82>‚<EFBFBD><C282><EFBFBD>
if($GB->{FORM}->{'bbs'} eq "operate2" && $GB->{BURNEDPROXY}) {$GB->{FORM}->{'FROM'} = ' </b>[<5B>\{}@{}@{}-]<b> ' . $GB->{FORM}->{'FROM'};}
if($GB->{FORM}->{'bbs'} eq "operate" && $GB->{BURNEDPROXY}) {$GB->{FORM}->{'FROM'} = ' </b>[<5B>\{}@{}@{}-]<b> ' . $GB->{FORM}->{'FROM'};}
if($GB->{FORM}->{'bbs'} eq "sec2chd" && $GB->{BURNEDPROXY}) {$GB->{FORM}->{'FROM'} = ' </b>[<5B>\{}@{}@{}-]<b> ' . $GB->{FORM}->{'FROM'};}
if($GB->{FORM}->{'bbs'} eq "goki" && $GB->{BURNEDPROXY}) {$GB->{FORM}->{'FROM'} = ' </b>[<5B>\{}@{}@{}-]<b> ' . $GB->{FORM}->{'FROM'};}
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if($GB->{FORM}->{'bbs'} eq "siberia" && !$GB->{NEWTHREAD})
{
my $bFile = "../$GB->{FORM}->{'bbs'}/BBQ/index.html";
if(!(-e $bFile)) {return 0;}
}
#<23><><EFBFBD>Ńg<C583><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP} && !$GB->{TBACK}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
#<23>P<EFBFBD>ށ@2010/5/5
#if(&foxMARUsuru($GB) && !$GB->{NEWTHREAD}) {return 0;}
# <20><><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>z<EFBFBD>X<EFBFBD>g
#<23>g<EFBFBD>шȊO<C88A>̓<EFBFBD><CD83><EFBFBD><EFBFBD>z<EFBFBD>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
if(!($GB->{KEITAI} || $GB->{KEITAIBROWSER}))
{
if($GB->{HOST4} =~ /^ns\d?\.|mail|www|^ftp|^smtp|^news/ || $GB->{HOST2} =~ /^ns\d?\.|mail|www|^ftp|^smtp|^news/)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>ςȃz<C883>X<EFBFBD>g<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>I<EFBFBD>@<40>ςȃz<C883>X<EFBFBD>g<EFBFBD>ł<EFBFBD><C582>B");
}
}
#operate2/operate/sec2chd <20><> fusianasan <20>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if($GB->{FORM}->{'bbs'} eq "operate2" && $GB->{FORM}->{'FROM'} =~ /$GB->{HOST}/ && $GB->{FORM}->{'subject'} eq "") {return 0;}
# <20><><EFBFBD><EFBFBD><EFBFBD>p<EFBFBD>̖<EFBFBD><CC96>ߗ<EFBFBD><DF97>čr<C48D><EFBFBD><E782B5><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD><CC82>߁A
# <20><EFBFBD>I<EFBFBD><49> operate <20><> [<5B>\{}@{}@{}-] <20>X<EFBFBD><58><EFBFBD>[<5B><><EFBFBD>X<EFBFBD>g<EFBFBD>b<EFBFBD>v -- 2006/3/17 by <20><>
# if($GB->{FORM}->{'bbs'} eq "operate" && $GB->{FORM}->{'FROM'} =~ /$GB->{HOST}/ && $GB->{FORM}->{'subject'} eq "") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "sec2chd" && $GB->{FORM}->{'FROM'} =~ /$GB->{HOST}/ && $GB->{FORM}->{'subject'} eq "") {return 0;}
if($GB->{FORM}->{'bbs'} eq "goki" && $GB->{FORM}->{'FROM'} =~ /$GB->{HOST}/ && $GB->{FORM}->{'subject'} eq "") {return 0;}
#<23><><EFBFBD>ʓI<CA93>ȏ<EFBFBD><C88F><EFBFBD>
if($GB->{BURNEDPROXY} eq 1)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>J<EFBFBD>o<EFBFBD>q<EFBFBD>n<EFBFBD>w<EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93>e<EFBFBD>͎󂯕t<F382AF95><74><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82><EFBFBD><EFBFBD>I<EFBFBD>I(1)");
}
}
############################################################################
# vip<69>N<EFBFBD>I<EFBFBD><49><EFBFBD>e<EFBFBD>B<EFBFBD>̊e<CC8A><EFBFBD><ED8F88><EFBFBD><EFBFBD><EFBFBD>[<5B>`<60><><EFBFBD>Q
############################################################################
sub ReplIQ
{
my ($GB) = @_ ;
#return 0;
if($GB->{FORM}->{bbs} ne 'news4viptasu' && $GB->{FORM}->{bbs} ne 'heaven4vip' && $GB->{FORM}->{bbs} ne 'operate2') {return 0;}
$ENV{REMOTE_ADDR} =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/ ;
my $kk = $1 ;
my $mm = $2 ;
my $iq = $3 ;
my $nm = $4 ;
$GB->{FORM}->{'FROM'} =~ s/(\!IQ)/ <\/b><3E>yIQ$iq<69>z<b> /;
my $bill = $iq * 10 + int(rand(10000)) ;
if($bill < 1000000) {$bill =~ s/(\d)(\d\d\d)(?!\d)/$1,$2/g;}
else {$bill =~ s/(\d)(\d\d\d)(\d\d\d)(?!\d)/$1,$2,$3/g;}
$GB->{FORM}->{'FROM'} =~ s/(\!bill)/ <\/b><3E>{<7B><><EFBFBD>̗<EFBFBD><CC97>p<EFBFBD><70> $bill<6C>~<b> /;
my @omikuji = ('<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>ς<EFBFBD>','<27>΂<EFBFBD><CE82><EFBFBD><EFBFBD><EFBFBD>','<27>ł<EFBFBD>','<27><><EFBFBD><EFBFBD><E382A4><EFBFBD><EFBFBD>',
'<27>ۂ<EFBFBD>','<27>݂<EFBFBD><DD82>[<5B>܂<EFBFBD>','<27><><EFBFBD>ɂ<EFBFBD>','<27>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><EFBFBD><E682BE>','<27>€','<27>Ђ<EFBFBD>',
'<27>n<EFBFBD>`<60>x<EFBFBD>G','<27><><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>P<EFBFBD>j<EFBFBD>A','<27>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>{','<27><>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>R<EFBFBD>u<EFBFBD><75>','<27>|<7C>j<EFBFBD>[',
'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>܂<EFBFBD><DC82><EFBFBD><EFBFBD><EFBFBD>','<27>J<EFBFBD>r','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[','<27>Ԃ<EFBFBD><D482>Ԃ<EFBFBD>','<27>o<EFBFBD>P<EFBFBD>c','<27><><EFBFBD><EFBFBD><EFBFBD>ׂ<EFBFBD>','<27><><EFBFBD>d<EFBFBD>{',
'<27><><EFBFBD><EFBFBD><EFBFBD>ӂ<EFBFBD>','<27>͂ɂ<CD82>','<27>܂񂰂<DC82>','<27>S<EFBFBD><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>a<EFBFBD><61>','<27>}<7D>J<EFBFBD><4A><EFBFBD>j','<27><><EFBFBD>[<5B>_<EFBFBD>[','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',
'<27><><EFBFBD><EFBFBD>','<27><EFBFBD><E682B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>Ӂ[<5B><><EFBFBD><EFBFBD>','<27>ψ<EFBFBD><CF88><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27>ӂ<EFBFBD>','<27><><EFBFBD><EFBFBD>',
'<27>C<EFBFBD><43><EFBFBD>h<EFBFBD>l','<27>͔|<7C>}<7D><>','<27><><EFBFBD><EFBFBD><EFBFBD>炵','<27>߂<EFBFBD><DF82><EFBFBD>','<27>ԁ[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>˂<EFBFBD><CB82><EFBFBD>','<27>o<EFBFBD><6F><EFBFBD><EFBFBD>','<27>K<EFBFBD><4B>',
'<27><><EFBFBD>L<EFBFBD>\<5C>o<EFBFBD><6F>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>]<5D>E<EFBFBD><45><EFBFBD><EFBFBD><EFBFBD>V','<27>_<EFBFBD><5F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>S<EFBFBD>b<EFBFBD>h','<27>n<EFBFBD>J<EFBFBD>Z','<27><><EFBFBD>[<5B>`<60><><EFBFBD><EFBFBD>','<27><><EFBFBD>C','<27>n<EFBFBD>G');
my $omikuji2 = $nm % 64 ;
my $omikuji3 = $omikuji[$omikuji2];
$GB->{FORM}->{'FROM'} =~ s/(\!kote)/ <\/b><3E>y$omikuji3<69>z<b> /;
$omikuji2 = int(rand(scalar @omikuji));
$omikuji3 = $omikuji[$omikuji2];
if(rand(800) < 1) {$omikuji3 = "<22>_";}
if(rand(4000) < 1) {$omikuji3 = "<22><><EFBFBD>_";}
$GB->{FORM}->{'FROM'} =~ s/(\!sute)/ <\/b><3E>s$omikuji3<69>t<b> /;
my @kz;
my @k0 = ('<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W','<27><><EFBFBD>ŒW','<27><><EFBFBD>H<EFBFBD>W','<27>|<7C><><EFBFBD>W','<27>f<EFBFBD><66><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD>W','<27>̈<EFBFBD><CC88>W','<27><><EFBFBD>y<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>ی<EFBFBD><DB8C>W','<27>X<EFBFBD>g<EFBFBD>[<5B>u<EFBFBD>W') ;
my @k1 = ('<27><><EFBFBD><EFBFBD>','<27><><EFBFBD>ŒW','<27><><EFBFBD>H<EFBFBD>W','<27>|<7C><><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD>W','<27>̈<EFBFBD><CC88>W','<27><><EFBFBD>y<EFBFBD>W','<27>f<EFBFBD><66><EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>ی<EFBFBD><DB8C>W','<27>X<EFBFBD>g<EFBFBD>[<5B>u<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W') ;
my @k2 = ('<27><><EFBFBD><EFBFBD>','<27><><EFBFBD>H<EFBFBD>W','<27>|<7C><><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W','<27><><EFBFBD>ŒW','<27>̈<EFBFBD><CC88>W','<27><><EFBFBD>y<EFBFBD>W','<27>f<EFBFBD><66><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD>W','<27>ی<EFBFBD><DB8C>W','<27>X<EFBFBD>g<EFBFBD>[<5B>u<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W') ;
my @k3 = ('<27><><EFBFBD><EFBFBD>','<27>|<7C><><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W','<27><><EFBFBD>ŒW','<27><><EFBFBD>H<EFBFBD>W','<27><><EFBFBD>y<EFBFBD>W','<27>f<EFBFBD><66><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD>W','<27>̈<EFBFBD><CC88>W','<27>X<EFBFBD>g<EFBFBD>[<5B>u<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>ی<EFBFBD><DB8C>W') ;
my @k4 = ('<27><><EFBFBD><EFBFBD>','<27>f<EFBFBD><66><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD>W','<27>̈<EFBFBD><CC88>W','<27><><EFBFBD>y<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>ی<EFBFBD><DB8C>W','<27>X<EFBFBD>g<EFBFBD>[<5B>u<EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W','<27><><EFBFBD>ŒW','<27><><EFBFBD>H<EFBFBD>W','<27>|<7C><><EFBFBD>W') ;
my @k5 = ('<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>W','<27>̈<EFBFBD><CC88>W','<27><><EFBFBD>y<EFBFBD>W','<27>f<EFBFBD><66><EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>ی<EFBFBD><DB8C>W','<27>X<EFBFBD>g<EFBFBD>[<5B>u<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W','<27><><EFBFBD>ŒW','<27><><EFBFBD>H<EFBFBD>W','<27>|<7C><><EFBFBD>W') ;
my @k6 = ('<27><><EFBFBD><EFBFBD>','<27>̈<EFBFBD><CC88>W','<27><><EFBFBD>y<EFBFBD>W','<27>f<EFBFBD><66><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD>W','<27>ی<EFBFBD><DB8C>W','<27>X<EFBFBD>g<EFBFBD>[<5B>u<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W','<27><><EFBFBD>ŒW','<27><><EFBFBD>H<EFBFBD>W','<27>|<7C><><EFBFBD>W') ;
my @k7 = ('<27><><EFBFBD><EFBFBD>','<27><><EFBFBD>y<EFBFBD>W','<27>f<EFBFBD><66><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD>W','<27>̈<EFBFBD><CC88>W','<27>X<EFBFBD>g<EFBFBD>[<5B>u<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>x<EFBFBD><78><EFBFBD>}<7D>[<5B>N<EFBFBD>W','<27>ی<EFBFBD><DB8C>W','<27>|<7C><><EFBFBD>W','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>W','<27><><EFBFBD>ŒW','<27><><EFBFBD>H<EFBFBD>W') ;
my @k8 = @k0 ;
if(($GB->{JIKAN} % 8) eq 1) {@kz = @k1;}
if(($GB->{JIKAN} % 8) eq 2) {@kz = @k2;}
if(($GB->{JIKAN} % 8) eq 3) {@kz = @k3;}
if(($GB->{JIKAN} % 8) eq 4) {@kz = @k4;}
if(($GB->{JIKAN} % 8) eq 5) {@kz = @k5;}
if(($GB->{JIKAN} % 8) eq 6) {@kz = @k6;}
if(($GB->{JIKAN} % 8) eq 7) {@kz = @k7;}
my $kaka = $kz[0] ;
if($kk < 60) {$kaka = $kz[1];}
elsif($kk < 128) {$kaka = $kz[2];}
elsif($kk < 150) {$kaka = $kz[3];}
elsif($kk < 200) {$kaka = $kz[4];}
elsif($kk < 205) {$kaka = $kz[5];}
elsif($kk < 210) {$kaka = $kz[6];}
elsif($kk < 215) {$kaka = $kz[7];}
elsif($kk < 220) {$kaka = $kz[8];}
$GB->{FORM}->{'FROM'} =~ s/(\!kakari)/ <\/b>$kaka<b> /;
while($GB->{FORM}->{'FROM'} =~ /\!mibun/)
{
$omikuji3 = &GetMibun ;
$GB->{FORM}->{'FROM'} =~ s/(\!mibun)/ <\/b>$omikuji3<b> /;
}
#<23>{<7B><>
my $vipMax = 12 ;
$GB->{VIP} = 0 ;
while($GB->{FORM}->{'MESSAGE'} =~ /\!mibun/)
{
if(++$GB->{VIP} > $vipMax) {return 0;}
if($GB->{BEpoints} > 499) {$omikuji3 = &GetMibunBe;}
else {$omikuji3 = &GetMibun ;}
$GB->{FORM}->{'MESSAGE'} =~ s/(\!mibun)/ <b>$omikuji3<\/b> /;
}
while($GB->{FORM}->{'MESSAGE'} =~ /\!where/)
{
if(++$GB->{VIP} > $vipMax) {return 0;}
$omikuji3 = &GetWhere ;
$GB->{FORM}->{'MESSAGE'} =~ s/(\!where)/ <b>$omikuji3<\/b> /;
}
while($GB->{FORM}->{'MESSAGE'} =~ /\!card/)
{
if(++$GB->{VIP} > $vipMax) {return 0;}
$omikuji3 = &GetCard ;
$GB->{FORM}->{'MESSAGE'} =~ s/(\!card)/ <b>$omikuji3<\/b> /;
}
while($GB->{FORM}->{'MESSAGE'} =~ /\!do/)
{
if(++$GB->{VIP} > $vipMax) {return 0;}
$omikuji3 = &GetDo ;
$GB->{FORM}->{'MESSAGE'} =~ s/(\!do)/ <b>$omikuji3<\/b> /;
}
while($GB->{FORM}->{'MESSAGE'} =~ /\!food/)
{
if(++$GB->{VIP} > $vipMax) {return 0;}
$omikuji3 = &GetFood ;
$GB->{FORM}->{'MESSAGE'} =~ s/(\!food)/ <b>$omikuji3<\/b> /;
}
while($GB->{FORM}->{'MESSAGE'} =~ /\!drink/)
{
if(++$GB->{VIP} > $vipMax) {return 0;}
$omikuji3 = &GetDrink ;
$GB->{FORM}->{'MESSAGE'} =~ s/(\!drink)/ <b>$omikuji3<\/b> /;
}
while($GB->{FORM}->{'MESSAGE'} =~ /\!animal/)
{
if(++$GB->{VIP} > $vipMax) {return 0;}
$omikuji3 = &GetAnimal ;
$GB->{FORM}->{'MESSAGE'} =~ s/(\!animal)/ <b>$omikuji3<\/b> /;
}
while($GB->{FORM}->{'MESSAGE'} =~ /\!jinsei/)
{
if(++$GB->{VIP} > $vipMax) {return 0;}
$omikuji3 = &GetJinsei ;
$GB->{FORM}->{'MESSAGE'} =~ s/(\!jinsei)/ <b>$omikuji3<\/b> /;
}
}
sub GoShip
{
my ($GB) = @_ ;
if($GB->{FORM}->{bbs} eq 'neet4vip') {return 1;}
if($GB->{FORM}->{bbs} eq 'heaven4vip') {return 1;}
if($GB->{FORM}->{bbs} eq 'news4viptasu') {return 1;}
if($GB->{FORM}->{bbs} eq 'news4vip') {return 1;}
# if($GB->{FORM}->{bbs} eq 'morningcoffee') {return 1;}
# if($GB->{FORM}->{bbs} eq 'campus') {return 1;}
if($GB->{FORM}->{bbs} eq 'operate2') {return 1;}
return 0 ;
}
sub ReplShip
{
my ($GB) = @_ ;
if(!&GoShip($GB)) {return 0;}
$ENV{REMOTE_ADDR} =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/ ;
my $kk = $1 ;
my $mm = $2 ;
my $iq = $3 ;
my $nm = $4 ;
my $shipPath = "$GB->{PATH}/ship" ;
if($GB->{FORM}->{'MESSAGE'} =~ /\!list/)
{
if($GB->{FORM}->{'MESSAGE'} =~ /\!list ([a-z0-9]+)/)
{
my $omikuji3 = &ListShip($1) ;
$omikuji3 .= &ListShip($GB->{FORM}->{bbs}) ;
$GB->{FORM}->{'MESSAGE'} =~ s/\!list ([a-z0-9]+)/$omikuji3/;
}
else
{
my $omikuji3 = &ListShip($GB->{FORM}->{bbs}) ;
$GB->{FORM}->{'MESSAGE'} =~ s/\!list/$omikuji3/ ;
}
}
if($GB->{FORM}->{'MESSAGE'} =~ /\!create ([A-Za-z0-9]+)/)
{
my $omikuji3 = &GetShip($shipPath,$1,$iq,$GB->{BEpoints}) ;
$GB->{FORM}->{'MESSAGE'} =~ s/(\!create [A-Za-z0-9]+)/$omikuji3/;
}
elsif($GB->{FORM}->{'MESSAGE'} =~ /\!attack ([A-Za-z0-9@]+)/)
{
my $omikuji3 = &AttackShip($GB->{FORM}->{bbs},$1,$iq) ;
$GB->{FORM}->{'MESSAGE'} =~ s/(\!attack [A-Za-z0-9@]+)/$omikuji3/;
}
return 0;
}
sub AttackShip
{
my ($path,$nameXXX,$iq) = @_ ;
my ($name,$gun) = split(/@/,$nameXXX) ;
if(!$gun) {$gun = $path;}
my $folder = "../$gun/ship" ;
my $poi = 0 ;
if(!open(SHIP,"$folder/$name.ship"))
{
return "Attack $1 ---> Missed." ;
}
$poi=<SHIP>;
chomp($poi);
close(SHIP);
my $hp = (255 - $iq) * 3 + int(rand(200)) ;
if(rand(3) < 1) {$hp += 50;}
if(rand(8) < 1) {$hp += 500;}
if(rand(50) < 1) {$hp += 5000;}
$poi -= $hp ;
if($poi < 1)
{
unlink("$folder/$name.ship") ;
return "Attack $1 ---> Success. <font color=red><3E><><EFBFBD><EFBFBD>!!</font>" ;
}
if(open(SHIP,"> $folder/$name.ship")){print SHIP "$poi\n";close(SHIP);}
return "<font color=blue>Attack $1 ---> Success. (-$hp)</font>" ;
}
sub ListShip
{
my ($path) = @_ ;
$path =~ s/ //g;
my $folder = "../$path/ship" ;
my @ds = () ;
if(opendir(DIR, $folder))
{
@ds = grep(!/^\./ && -f "$folder/$_", readdir(DIR));
closedir DIR ;
}
my $nnn = @ds ;
my $ships = "<font color=green face=\"Arial\"><b>current ships</b></font>($nnn) $path<74>R<br>";
foreach(@ds)
{
my $poi = 0 ;
my $name = $_ ;
$name =~ s/\.ship// ;
if(open(SHIP,"$folder/$name.ship")){$poi=<SHIP>;chomp($poi);close(SHIP);}
$ships .= "# <font color=blue>$name</font> $poi<br>" ;
}
return $ships ;
}
sub GetShip
{
my ($path,$name,$iq,$be) = @_ ;
if($iq < 150) {return '<font color=green><3E>m<EFBFBD>\<5C><><EFBFBD><EFBFBD>Č<EFBFBD><C48C><EFBFBD><EFBFBD>ł<EFBFBD><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>B</font>' . "($name)";};
if(length($name) >16) {return '<font color=green><3E>D<EFBFBD><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B</font>' . "($name)";};
my $folder = "$path" ;
if(-e "$folder/$name.ship") {return '<font color=green><3E><><EFBFBD><EFBFBD><EFBFBD>̑D<CC91><44><EFBFBD><EFBFBD><EFBFBD>ɑ<EFBFBD><C991>݂<EFBFBD><DD82>܂<EFBFBD><DC82>B</font>' . "($name)";};
my @ds = () ;
if(opendir(DIR, $folder))
{
@ds = grep(!/^\./ && -f "$folder/$_", readdir(DIR));
closedir DIR ;
}
my $nnn = @ds ;
if($nnn >= 5)
{
return '<font color=green><3E><><EFBFBD><EFBFBD><EFBFBD>ȏ㌚<C88F><E38C9A><EFBFBD>ł<EFBFBD><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B</font>' . "($name)" ;
}
if($name =~ /\d/)
{
return '<font color=green><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD><67><EFBFBD>Ȃ<EFBFBD><C882>Ȃ<EFBFBD><C882>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B</font>' . "($name)" ;
}
my $hp = 5000 ;
$hp *= int(rand(8)+1) ;
$be *= 5 ;
if($be > 50000) {$be = 50000;}
$hp += $be ;
mkdir("$path/",0777) ;
if(open(SHIP,"> $folder/$name.ship")){print SHIP "$hp\n";close(SHIP);}
return "<font color=blue><b>$name</b> created. (HP $hp)</font>" ;
}
sub GetMibun
{
my @m0 = ('<27>j<EFBFBD>[<5B>g','<27>z<EFBFBD><7A>','<27><><EFBFBD>g','<27>r<EFBFBD><72><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27>C<EFBFBD><43><EFBFBD>m','<27>C<EFBFBD><43><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27>n<EFBFBD><6E>','<27>M<EFBFBD><4D><EFBFBD><EFBFBD>','<27><><EFBFBD>t',
'<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>ނ<EFBFBD><DE82>t','<27>e<EFBFBD><65><EFBFBD><EFBFBD>','<27><><EFBFBD>y','<27>X<EFBFBD>p<EFBFBD>C','<27>E<EFBFBD><45><EFBFBD>b','<27>ޒ<EFBFBD>','<27>p<EFBFBD>V<EFBFBD><56>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>',
'<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27><><EFBFBD>r','<27>؂<EFBFBD><D882><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>t','<27>}<7D>M<EFBFBD>[','<27><><EFBFBD><EFBFBD><EFBFBD>s','<27>ԓ<EFBFBD>','<27>j<EFBFBD><6A>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',
'<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>X<EFBFBD><58><EFBFBD>t','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>E<EFBFBD><45>','<27>d<EFBFBD><64>','<27><><EFBFBD><EFBFBD>','<27>d<EFBFBD><64>','<27><><EFBFBD>b','<27>e<EFBFBD><65>','<27>Ǘ<EFBFBD><C797>l','<27><><EFBFBD>V<EFBFBD><56><EFBFBD>l',
'<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27><><EFBFBD><EFBFBD>',
'<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>',
'<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27><><EFBFBD>H','<27><><EFBFBD><EFBFBD>','<27>w<EFBFBD><77><EFBFBD><EFBFBD>','<27>b<EFBFBD>艮','<27>d<EFBFBD><64><EFBFBD><EFBFBD>','<27><><EFBFBD>\<5C>t','<27><><EFBFBD>l<EFBFBD><6C>','<27>V<EFBFBD><56>','<27><><EFBFBD>㊯','<27><><EFBFBD><EFBFBD><EFBFBD>{',
'<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27>e<EFBFBD><65>','<27>q<EFBFBD><71>','<27>S<EFBFBD>g<EFBFBD>t','<27>M<EFBFBD><4D><EFBFBD><EFBFBD><EFBFBD>u<EFBFBD><75><EFBFBD>[','<27>}<7D>t<EFBFBD>B<EFBFBD>A','<27>M<EFBFBD><4D><EFBFBD><EFBFBD><EFBFBD>O','<27><><EFBFBD>V','<27><><EFBFBD><EFBFBD><EFBFBD>l','<27>s<EFBFBD><73>','<27><><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD>[',
'<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>}<7D>}','<27><><EFBFBD><EFBFBD><EFBFBD>l','<27><><EFBFBD>m','<27>V<EFBFBD><56>','<27>^<5E>щ<EFBFBD>','<27>֎g<D68E><67>','1,000<30>~<7E><><EFBFBD><EFBFBD>','<27>i<EFBFBD>[<5B>X','DQN',
'<27><><EFBFBD>X<EFBFBD><58><EFBFBD>[','<font color=tomato><3E>X<EFBFBD>[<5B>p<EFBFBD>[<5B>n<EFBFBD>J<EFBFBD>[</font>','<27><><EFBFBD>[<5B>}<7D><>','<27>ʉَq<D98E><71>','<27>s<EFBFBD><73>','<27>X<EFBFBD>g<EFBFBD>[<5B>J<EFBFBD>[','<27>T<EFBFBD><54>','<27>h<EFBFBD><68><EFBFBD>[<5B>t','<27><><EFBFBD>l','<27>q<EFBFBD>b<EFBFBD>L<EFBFBD>[',
'<27><><EFBFBD>ێЈ<DB8E>','<27>l<EFBFBD><6C><EFBFBD>l<EFBFBD><6C>',
#'','','','','','','','',
'<27>z<EFBFBD><7A>','<27>z<EFBFBD><7A>','<27><><EFBFBD>C<EFBFBD>h') ;
# '','','','','','','','','','',
my $omikuji2 = int(rand(scalar @m0));
my $omikuji3 = $m0[$omikuji2];
if(rand(200) < 1) {$omikuji3 = "<22><>";}
if(rand(400) < 1) {$omikuji3 = "AV<41>ē<EFBFBD>";}
return $omikuji3 ;
}
sub GetMibunBe
{
my @m0 = ('<27>m<EFBFBD><6D>','<27><><EFBFBD>b','<27><><EFBFBD><EFBFBD>','<27>i<EFBFBD>C<EFBFBD>g','<27><><EFBFBD>m','<27><><EFBFBD>@<40>g<EFBFBD><67>','<27>V<EFBFBD>g',
'<27><><EFBFBD>m','<27>E','<27><><EFBFBD>̂<EFBFBD><CC82><EFBFBD>','<27>搶','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27>햱','<27>ꖱ',
'<27>卲','<27>{<7B><><EFBFBD><EFBFBD>','<27><><EFBFBD>@<40><>','<27>h<EFBFBD>N<EFBFBD>^<5E>[','<27>w<EFBFBD><77>','<27>ψ<EFBFBD><CF88><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27>@<40><>',
#'','','','','','','','',
#'','','','','','','','',
'<27><><EFBFBD>l','<27><><EFBFBD>l','<27><><EFBFBD>l') ;
my $omikuji2 = int(rand(scalar @m0));
my $omikuji3 = $m0[$omikuji2];
# if(rand(200) < 1) {$omikuji3 = "<22><>";}
# if(rand(400) < 1) {$omikuji3 = "AV<41>ē<EFBFBD>";}
return $omikuji3 ;
}
sub GetJinsei
{
my @m0 = (
'<27><>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD>C','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>삯','<27><EFBFBD><EC82AF><EFBFBD><EFBFBD>','<27><><EFBFBD>H','<27><><EFBFBD>z<EFBFBD><7A>',
'<27><><EFBFBD>w','<27>C<EFBFBD>O<EFBFBD><4F><EFBFBD>w','1,000<30><30><EFBFBD>n<EFBFBD><6E><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD>','<27>󂭂<EFBFBD><F382AD82><EFBFBD><EFBFBD><EFBFBD>','<27>Ўv<D08E><76>','<27><EFBFBD><E282B9>','<27><><EFBFBD>@','<27>̎<EFBFBD><CC8E>f<EFBFBD>r<EFBFBD><72><EFBFBD>[',
'<27><><EFBFBD><EFBFBD>','<27>o<EFBFBD>Y','<27><><EFBFBD>R<EFBFBD>q<EFBFBD>a<EFBFBD><61>','<27>‚<EFBFBD><C282>ɐ<EFBFBD><C990><EFBFBD>','<27>ߕ<EFBFBD>','<27><><EFBFBD>@','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>',
'<27>o<EFBFBD><6F><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EA82A8><EFBFBD>Ɉ<EFBFBD><C988><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>z<EFBFBD><7A><EFBFBD>Ƃ<EFBFBD>','<27><><EFBFBD>]<5D>ԓ<EFBFBD><D493>܂<EFBFBD><DC82><EFBFBD>','<27><><EFBFBD>񂱓<EFBFBD><F182B193><EFBFBD>','<27><><EFBFBD>񂱂<EFBFBD><F182B182><EFBFBD><EFBFBD><EFBFBD>','<27>G<EFBFBD><47><EFBFBD>`<60><>','<27>܂<EFBFBD><DC82><EFBFBD><EFBFBD>I',
'<27><><EFBFBD>Ȕj<C894>Y','<27>ڂ<EFBFBD><DA82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>ƌ<EFBFBD><C68C>Ă<EFBFBD>','<27>󂫑<EFBFBD><F382AB91>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>܂<EFBFBD><DC82><EFBFBD><EFBFBD>l','<27><><EFBFBD>E','2ch<63><68><EFBFBD><EFBFBD>','<27>Ђ<EFBFBD><D082><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',
'<27>Əo<C68F><6F><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>',
# '<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>',
#'','','','','','','','',
'<27><><EFBFBD><EFBFBD>','<27><><EFBFBD>X<EFBFBD>g<EFBFBD><67>','<27>A<EFBFBD>E') ;
my $omikuji2 = int(rand(scalar @m0));
my $omikuji3 = $m0[$omikuji2];
if(rand(200) < 1) {$omikuji3 = "<22><><EFBFBD>z<EFBFBD><7A><EFBFBD><EFBFBD>";}
if(rand(400) < 1) {$omikuji3 = "<22>O<EFBFBD><4F><EFBFBD>~<7E>[<5B>܎<EFBFBD><DC8E><EFBFBD>";}
return $omikuji3 ;
}
sub GetAnimal
{
my @m0 = ('<27><><EFBFBD><EFBFBD><EFBFBD>񂳂<EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>R<EFBFBD><52>','<27><>','<27>L','<27><>',
'<27>ނ<EFBFBD><DE82><EFBFBD><EFBFBD><EFBFBD>','<27>n<EFBFBD><6E><EFBFBD>L<EFBFBD>Q<EFBFBD>j<EFBFBD>A','<27>}<7D><><EFBFBD><EFBFBD><EFBFBD>X','<27>Ƃ<EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>炵','<27>͓<EFBFBD>','<27>͔n','<27>C<EFBFBD><43>',
'<27>E<EFBFBD>B<EFBFBD><42><EFBFBD>X','<27>d<EFBFBD><64>','<27>G<EFBFBD>C<EFBFBD><43><EFBFBD>A<EFBFBD><41>','E.T','<27><><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD>[','<27><><EFBFBD>΂<EFBFBD><CE82><EFBFBD>','<27>Z<EFBFBD>C<EFBFBD>E<EFBFBD>`','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',
'<27><><EFBFBD>j','<27>`<60><><EFBFBD>p<EFBFBD><70><EFBFBD>W<EFBFBD>[','<27>Ȃ܂<C882><DC82><EFBFBD><EFBFBD><EFBFBD>','<27>܂<EFBFBD><DC82>ƂЂ<C682>','<27><><EFBFBD><EFBFBD>[<5B><><EFBFBD><EFBFBD>','<27><EFBFBD><E882B7><EFBFBD><EFBFBD>','<27>T','<27><><EFBFBD><EFBFBD><EB82AD>',
'<27>c<EFBFBD>`<60>m<EFBFBD>R','<27>u<EFBFBD>^','<27>u<EFBFBD>^','<27>u<EFBFBD>^','<27>u<EFBFBD>^','<27>u<EFBFBD>^','<27>u<EFBFBD>^','<27>u<EFBFBD>^',
'<27>Ԃ<EFBFBD>','<27><>','<27>u<EFBFBD>^') ;
my $omikuji2 = int(rand(scalar @m0));
my $omikuji3 = $m0[$omikuji2];
if(rand(200) < 1) {$omikuji3 = "<22>f<EFBFBD>u";}
# if(rand(400) < 1) {$omikuji3 = "AV<41>ē<EFBFBD>";}
return $omikuji3 ;
}
sub GetFood
{
my @m0 = ('<27>L<EFBFBD><4C><EFBFBD>x<EFBFBD>c','<27>V<EFBFBD><56>','<27>J<EFBFBD>c<EFBFBD>ǂ<EFBFBD>','<27><><EFBFBD>ȏd','<27>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>C<EFBFBD>X','<27>[<5B><>','<27>^<5E>c<EFBFBD>^<5E>T<EFBFBD><54><EFBFBD>h',
'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD>','<27><>','<27>݂݂<DD82>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>i','<27><><EFBFBD><EFBFBD>',
'<27><><EFBFBD><EFBFBD>','<27>C<EFBFBD>J<EFBFBD>[<5B><>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><E882BD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>X<EFBFBD>e<EFBFBD>[<5B>L','<27>}<7D>b<EFBFBD>N','<27>t<EFBFBD><74><EFBFBD><EFBFBD><EFBFBD>`<60>t<EFBFBD><74><EFBFBD>C',
'<27><><EFBFBD>܂<EFBFBD><DC82>_','<27>p<EFBFBD><70>','<27>p<EFBFBD><70>','<27>p<EFBFBD><70>','<27>p<EFBFBD><70>','<27>p<EFBFBD><70>','<27>p<EFBFBD><70>','<27>p<EFBFBD><70>',
'<27>J<EFBFBD><4A><EFBFBD>[<5B>p<EFBFBD><70>','<27><><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD>','<27><><EFBFBD>̂<EFBFBD>','<27><EFBFBD>}<7D>O<EFBFBD><4F>','<27>p<EFBFBD><70>','<27>p<EFBFBD><70>','<27>p<EFBFBD><70>','<27>p<EFBFBD><70>',
#'','','','','','','','',
'<27><><EFBFBD>ǂ<EFBFBD>','<27><><EFBFBD>[<5B>߂<EFBFBD>','<27><EFBFBD><ED82A9>') ;
my $omikuji2 = int(rand(scalar @m0));
my $omikuji3 = $m0[$omikuji2];
if(rand(200) < 1) {$omikuji3 = "<22>s<EFBFBD>U";}
# if(rand(400) < 1) {$omikuji3 = "AV<41>ē<EFBFBD>";}
return $omikuji3 ;
}
sub GetDrink
{
my @m0 = ('<27><><EFBFBD>X<EFBFBD>`','<27>y<EFBFBD>v<EFBFBD>V',
'<27><>','<27>o<EFBFBD>[<5B>{<7B><>','<27>X<EFBFBD>R<EFBFBD>b<EFBFBD>`','<27>Ē<EFBFBD>','<27>A<EFBFBD><41>','<27>e<EFBFBD>L<EFBFBD>[<5B><>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>',
'<27><><EFBFBD>C<EFBFBD><43>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>u<EFBFBD><75><EFBFBD><EFBFBD><EFBFBD>f<EFBFBD>[','<27>݂͂<CD82>','<27>g<EFBFBD><67>','<27>ʃR<CA83>[<5B>q<EFBFBD>[','<27>r<EFBFBD>[<5B><>','<27>}<7D><><EFBFBD>K<EFBFBD><4B><EFBFBD>[<5B>^',
#'','','','','','','','',
'<27>V<EFBFBD>R<EFBFBD><52>','<27>J','<27>C<EFBFBD><43>') ;
my $omikuji2 = int(rand(scalar @m0));
my $omikuji3 = $m0[$omikuji2];
return $omikuji3 ;
}
sub GetWhere
{
my @m0 = (
'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>B<EFBFBD><42><EFBFBD><EFBFBD>','<27>剜','<27>K<EFBFBD>i','<27><><EFBFBD>Z','<27><><EFBFBD><EFBFBD>','<27>ے<EFBFBD>','<27>ߏ<EFBFBD>','<27>N<EFBFBD><4E><EFBFBD>[<5B>U<EFBFBD>[','<27>{<7B>[<5B>g',
'<27><><EFBFBD><EFBFBD>','<27>a<EFBFBD>̎R','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD>s','<27>ޗ<EFBFBD>','<27>V<EFBFBD><56>','<27><><EFBFBD><EFBFBD>','<27>H<EFBFBD>c','<27><><EFBFBD><EFBFBD>',
'<27>C<EFBFBD>M<EFBFBD><4D><EFBFBD>X','<27>t<EFBFBD><74><EFBFBD><EFBFBD><EFBFBD>X','<27>h<EFBFBD>C<EFBFBD>c','<27>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>_','<27>X<EFBFBD>y<EFBFBD>C<EFBFBD><43>','<27>f<EFBFBD><66><EFBFBD>}<7D>[<5B>N','<27>t<EFBFBD>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>h','<27><><EFBFBD><EFBFBD>','<27>؍<EFBFBD>','<27>k<EFBFBD><6B><EFBFBD>N',
'<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27>c<EFBFBD><63>','<27>s<EFBFBD><73>','<27>ԉ<EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27>J<EFBFBD>t<EFBFBD>F','<27>v<EFBFBD>[<5B><>','<27>ߏ<EFBFBD>',
'<27>x<EFBFBD>b<EFBFBD>g','<27><><EFBFBD><EFBFBD>','<27>n<EFBFBD><6E>','<27><>','<27>x<EFBFBD><78><EFBFBD><EFBFBD><EFBFBD>_','<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27>n<EFBFBD><6E><EFBFBD><EFBFBD>','<27>G<EFBFBD><47><EFBFBD>x<EFBFBD>[<5B>^<5E>[',
'<27>J<EFBFBD>U<EFBFBD>t<EFBFBD>X<EFBFBD>^<5E><>','<27><><EFBFBD><EFBFBD><EFBFBD>b<EFBFBD>R','<27>䏊') ;
# '','','','','','','','','','',
my $omikuji2 = int(rand(scalar @m0));
my $omikuji3 = $m0[$omikuji2];
if(rand(200) < 1) {$omikuji3 = '<27>V<EFBFBD><56>';}
if(rand(400) < 1) {$omikuji3 = '<27>\<5C>[<5B>v';}
return $omikuji3 ;
}
sub GetDo
{
my @m0 = (
'<27>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>v','<27>u<EFBFBD>[<5B><>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD><EFBFBD>','<27><><EFBFBD>˂<EFBFBD>','<27>ϐg','<27>t<EFBFBD><74><EFBFBD><EFBFBD>','<27>̓<EFBFBD><CC93><EFBFBD><EFBFBD><EFBFBD>',
'<27>ǂ<EFBFBD><C782>ǂ<EFBFBD>','<27>q<EFBFBD><71><EFBFBD><EFBFBD>','<27>Z<EFBFBD>b<EFBFBD>N<EFBFBD>X','<27><><EFBFBD>V','<27><><EFBFBD>i','<27>ώ@','<27><><EFBFBD>p','<27><><EFBFBD>`','<27><EFBFBD><E99487>','<27><EFBFBD><E993A6>',
'<27><><EFBFBD><EFBFBD><E882AE>','<27><><EFBFBD><EFBFBD>','<27>^<5E>b<EFBFBD>`','<27>L<EFBFBD>X','<27><><EFBFBD>C<EFBFBD>N<EFBFBD><4E><EFBFBD>u','<27><><EFBFBD>C<EFBFBD>N<EFBFBD>~<7E><><EFBFBD>N<EFBFBD><4E>','<27><><EFBFBD><EFBFBD>','<27>׋<EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>񂯂<EFBFBD>','<27>s<EFBFBD><73>',
'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>񂠂<EFBFBD>','<27><><EFBFBD><EFBFBD><EB82BF>','<27>؂<EFBFBD><D882>؂<EFBFBD>','<27>ׂ<EFBFBD><D782>ׂ<EFBFBD>','<27>ɂ<EFBFBD><C982>ɂ<EFBFBD>','<27><><EFBFBD>񂭂<EFBFBD>','<27><><EFBFBD>񂮂<EFBFBD>','<27><><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD>','<27>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD>',
'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>','<27><><EFBFBD>݂<EFBFBD><DD82><EFBFBD>','<27><><EFBFBD><EFBFBD>') ;
# '','','','','','','','','','',
my $omikuji2 = int(rand(scalar @m0));
my $omikuji3 = $m0[$omikuji2];
if(rand(200) < 1) {$omikuji3 = "<22>ؕ<EFBFBD>";}
if(rand(400) < 1) {$omikuji3 = "<22><><EFBFBD>̌<EFBFBD>";}
return $omikuji3 ;
}
sub GetCard
{
my @c0 = ('&hearts;','&clubs;','&spades;','&diams;') ;
my @c1 = ('A','2','3','4','5','6','7','8','9','10','J','Q','K') ;
my $omikuji2 = int(rand(scalar @c0));
my $omikuji3 = $c0[$omikuji2];
my $omikuji4 = int(rand(scalar @c1));
my $omikuji5 = $c1[$omikuji4];
return $omikuji3 . $omikuji5 ;
}
sub ReplKabuka
{
my ($GB) = @_ ;
if(!$GB->{KABU}) {return 0;}
$GB->{FORM}->{'FROM'} =~ s/!!kab(?::[a-zA-Z0-9]+|%|)//;
if($GB->{FORM}->{'FROM'} =~ /\!kab\:[a-zA-Z0-9]+/)
{
$GB->{FORM}->{'FROM'} =~ s/\!kab\:[a-zA-Z0-9]+/ <\/b><3E>y$GB->{MEIGARA}:$GB->{KABUSU}<7D>z<b> /;
}
elsif($GB->{FORM}->{'FROM'} =~ /\!kab\%/)
{
$GB->{FORM}->{'FROM'} =~ s/(\!kab\%)/ <\/b><3E><><EFBFBD><EFBFBD><EFBFBD>y$GB->{ZENKABU}<7D>z<b> /;
}
else
{
$GB->{FORM}->{'FROM'} =~ s/(\!kab)/ <\/b><3E><><EFBFBD><EFBFBD><EFBFBD>y$GB->{KABUKA}<7D>z<b> /;
}
return 1;
}
sub GoOmikuji
{
my ($GB) = @_ ;
if($GB->{MDAY} ne 1) {return 0;}
if($GB->{MON} eq 1) {return 1;}
if($ENV{SERVER_NAME} =~ /kamome/) {return 1;}
if($ENV{SERVER_NAME} =~ /toki/) {return 1;}
if($ENV{SERVER_NAME} =~ /yuzuru/) {return 1;}
if($ENV{SERVER_NAME} =~ /raicho/) {return 1;}
if($ENV{SERVER_NAME} =~ /hato/) {return 1;}
return 0 ;
}
sub ReplOmikuji
{
my ($GB) = @_ ;
#$GB->{MDAY}\/$GB->{MDAY}
if(!&GoOmikuji($GB)) {return 0;}
my @omikuji = ("<22><><EFBFBD>g","<22><><EFBFBD>g","<22><><EFBFBD>g","<22><><EFBFBD>g","<22><><EFBFBD>g","<22>g","<22><><EFBFBD>g","<22><><EFBFBD>g","<22><><EFBFBD>g","<22><>","<22>勥","<22>҂<EFBFBD><D282><EFBFBD><EFBFBD>g","<22><><EFBFBD><EFBFBD><EFBFBD>g","<22><>");
my $omikuji2 = int(rand(scalar @omikuji));
my $omikuji3 = $omikuji[$omikuji2];
if(rand(800) < 1) {$omikuji3 = "<22>_";}
if(rand(10000) < 1) {$omikuji3 = "<22><><EFBFBD>_";}
$GB->{FORM}->{'FROM'} =~ s/(\!omikuji)/ <\/b><3E>y$omikuji3<69>z<b> /;
return 0;
}
sub ReplOtoshidama
{
my ($GB) = @_ ;
if($GB->{MON} ne 1) {return 0;}
if($GB->{MDAY} ne 1) {return 0;}
my $omikuji2 = int(rand(2000));
if(rand(400) < 1) {$omikuji2 *= 11;}
if(rand(1000) < 1) {$omikuji2 *= 111;}
my $omikuji3 = "$omikuji2<69>~";
$GB->{FORM}->{'FROM'} =~ s/(\!dama)/ <\/b><3E>y$omikuji3<69>z<b> /;
return 0;
}
#############################################################################
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dat<61>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD>$GB<47>ɃZ<C983>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD>: $GB, <20>^<5E>[<5B>Q<EFBFBD>b<EFBFBD>g<EFBFBD>ƂȂ<C682>dat<61><74>$key
# $GB->{DATNUM}, $GB->{DAT1}, $GB->{DATLAST}[N]
#############################################################################
sub GetDatInfo
{
my ($GB, $key) = @_;
my $datfile = $GB->{DATPATH} . $key . ".dat";
my $datlastnum = $FOX->{$GB->{FORM}->{bbs}}->{"BBS_CONTENTS_NUMBER"};
if($GB->{NEWTHREAD})
{
# <20>V<EFBFBD>X<EFBFBD><58><EFBFBD>̏ꍇ
$GB->{DAT1} = $GB->{OUTDAT};
$GB->{DATNUM} = 1;
@{$GB->{DATLAST}} = ();
}
else
{
# <20><><EFBFBD>X<EFBFBD>̏ꍇ
open(DAT,"<$datfile");
$GB->{DAT1} = <DAT>;
@{$GB->{DATLAST}} = <DAT>;
$GB->{DATNUM} = $.;
close(DAT);
if (@{$GB->{DATLAST}} > $datlastnum)
{
@{$GB->{DATLAST}} = splice(@{$GB->{DATLAST}}, -$datlastnum);
}
}
return 0;
}
#############################################################################
# <20>ŏI<C58F>ً}<7D><><EFBFBD>h
# <20><><EFBFBD>́A$GB, dat<61>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>
#############################################################################
sub EmergOver1000Final
{
use File::Copy;
my ($GB, $dat) = @_;
if(-w $dat)
{
my $tmpdat = $GB->{DATPATH} . $GB->{FORM}{key} . ".tmp";
copy($dat, $tmpdat);
chmod(0555, $tmpdat);
&TryRename($tmpdat, $dat);
}
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I", "<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD>ɂ͏<C982><CD8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂܂<DF82><DC82><EFBFBD><EFBFBD>B<EFBFBD>Ō<EFBFBD><C58C>̎<EFBFBD><CC8E>i!!");
return 0;
}
#############################################################################
# <20>ً}<7D><><EFBFBD>h
# <20><><EFBFBD>́A$GB, dat<61>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>
#############################################################################
sub EmergOver1000
{
my ($GB, $dat) = @_;
chmod(0555, $dat);
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I", "<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD>ɂ͏<C982><CD8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂܂<DF82><DC82><EFBFBD><EFBFBD>B<EFBFBD>ً}<7D>ً}<7D>ً}!!");
return 0;
}
#############################################################################
# 1000<30><30><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# <20><><EFBFBD>́A$GB, dat<61>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dat<61><74>chmod 555<35><35><EFBFBD><EFBFBD><EFBFBD>āA<C481><41><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ȃ<EFBFBD>
#############################################################################
sub Over1000
{
my ($GB, $dat) = @_;
my $b1000 = "<22><><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD>͂P<CD82>O<EFBFBD>O<EFBFBD>O<EFBFBD>𒴂<EFBFBD><F092B482>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B <br> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>̂ŁA<C581>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>𗧂ĂĂ<C482><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>B<EFBFBD>B<EFBFBD>B ";
# my $p1000 = $GB->{PATH} . "1000.txt" ;
my $r1000 = $GB->{NOWTIME} % 10 ; # <20><><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><5F>1000.txt
my $p1000 = $GB->{PATH} . "100" . $r1000 . ".txt" ;
if(!(-e $p1000)) {$p1000 = $GB->{PATH} . "1000.txt" ;}
my $lastdat = "";
if(-s $p1000 && open(PDATA1000,"$p1000"))
{
$b1000 = "" ;
foreach(<PDATA1000>)
{
my $bbb = $_ ;
chomp($bbb) ;
$bbb =~ s/\n//g ;
$bbb =~ s/\r//g ;
$b1000 .= $bbb ;
}
close(PDATA1000) ;
}
$lastdat = "<22>P<EFBFBD>O<EFBFBD>O<EFBFBD>P<><>Over 1000 Thread<> $b1000 <>\n";
# <20><><EFBFBD>ɂP<C982>O<EFBFBD>O<EFBFBD>P<EFBFBD><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD><CC82><EFBFBD><EFBFBD>߂<EFBFBD>
if ($GB->{DATLAST}[-1] ne $lastdat)
{
# <20>P<EFBFBD>O<EFBFBD>O<EFBFBD>P<EFBFBD><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݏ<EFBFBD><DD8F><EFBFBD>
if(open(OUT,">>$dat"))
{
print OUT $lastdat;
close(OUT);
# $GB<47>̏<EFBFBD><CC8F><EFBFBD>
# dat<61>̔ԍ<CC94><D48D><EFBFBD><EFBFBD>ЂƂ‚<C682><C282><EFBFBD><EFBFBD>߂<EFBFBD>
++$GB->{DATNUM};
# $GB->{DATLAST}<7D><><EFBFBD>ЂƂ‰<C682><C289><EFBFBD><EFBFBD>o<EFBFBD><6F>
shift(@{$GB->{DATLAST}});
push(@{$GB->{DATLAST}}, $lastdat);
}
}
# dat<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD>
chmod(0555, $dat);
return 0;
}
#############################################################################
# BBY<42>ɐV<C990>X<EFBFBD><58><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60><><EFBFBD><EFBFBD>
#############################################################################
sub NotifyBBY
{
my ($GB) = @_;
my $AHOST; # BBY<42>ւ<EFBFBD>DNSquery<72>z<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>w<EFBFBD><77><EFBFBD>p<EFBFBD>ϐ<EFBFBD>
my $DNSbby; # BBY<42><59>DNS<4E>T<EFBFBD>[<5B>o<EFBFBD>w<EFBFBD><77><EFBFBD>p<EFBFBD>ϐ<EFBFBD>
if($ENV{'SERVER_NAME'} =~ /bbspink\.com/)
{# bbspink.com<6F>̏ꍇ
$DNSbby = $FOX->{DNSSERVER}->{BBYP};
$AHOST = "$GB->{NEWTHREAD}.$GB->{FORM}->{'bbs'}.$ENV{'SERVER_NAME'}.bby.bbspink.com.";
}
else
{# 2ch<63>̏ꍇ
$DNSbby = $FOX->{DNSSERVER}->{BBY};
$AHOST = "$GB->{NEWTHREAD}.$GB->{FORM}->{'bbs'}.$ENV{'SERVER_NAME'}.bby.2ch.net.";
}
if($FOX->{BBY})
{
$FOX->{BBY} = &foxDNSquery($AHOST, $DNSbby);
}
return 0;
}
#############################################################################
# BBS<42>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂̏<DD82><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60><><EFBFBD><EFBFBD>
#############################################################################
sub NotifyBBS
{
my ($GB) = @_;
my $BYTES = length($GB->{FORM}->{'MESSAGE'});
my $BHOST = "$GB->{NOWTIME}.$$.$ENV{'REMOTE_ADDR'}.$GB->{NEWTHREAD}.$BYTES.$GB->{FORM}->{'key'}.$GB->{FORM}->{'bbs'}.$ENV{'SERVER_NAME'}.bbs.bbs.2ch.net.";
if($FOX->{BBS})
{
$FOX->{BBS} = &foxDNSquery($BHOST, $FOX->{DNSSERVER}->{BBS});
}
#my $aaa = $FOX->{BBS} ;
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font> ($aaa)");
return 0;
}
#############################################################################
# <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̃<EFBFBD><CC83>l<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73>
# <20><><EFBFBD><EFBFBD>: $src<72>A$dst
# <20>߂<EFBFBD><DF82>l: 0<>܂<EFBFBD><DC82>̓G<CD83><47><EFBFBD>[<5B><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W
#############################################################################
sub TryRename
{
my ($src, $dst) = @_;
my $status = undef;
my $count = 1000;
# rename<6D><65><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD>Ă݂<C482>
for (1..$count)
{
rename($src, $dst) and return 0;
}
# <20>X<EFBFBD>e<EFBFBD>[<5B>^<5E>X<EFBFBD><58><EFBFBD>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD><EFBFBD>
$status = $!;
unlink($src);
return $status;
}
#######################################################################
# subject.txt<78><74><EFBFBD>X<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĂԂ<C482><D482>Ƃɂ<C682><C982><EFBFBD><EFBFBD>A@{$GB->{NEWSUB}} <20><>subject.txt<78><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD>
# $GB->{SUBLINE} <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŏ<EFBFBD><C58F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# $GB->{FILENUM} <20>ɂ͂<C982><CD82><EFBFBD><EFBFBD><EFBFBD>subject.txt<78>̍s<CC8D><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E682A4>
#######################################################################
sub UpdateSubject
{
my ($GB) = @_;
my @newsub = (); # <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> @newsub <20>̓<EFBFBD><CD83>[<5B>J<EFBFBD><4A><EFBFBD>ϐ<EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
#<23>T<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD>p<EFBFBD>X
my $subject = $GB->{PATH} . "subject.txt";
my $rnd = int(rand(99999));
my $subtemp = $GB->{PATH} . $rnd . $GB->{FORM}->{'time'} . ".tmp";
my $keyfile = $GB->{FORM}->{'key'} . ".dat";
#subject.txt<78><74><EFBFBD><EFBFBD>ݗp
my (@SUBJ1, @SUBJ2);
#<23>X<EFBFBD><58><EFBFBD>^<5E>C<EFBFBD><43><EFBFBD>o<EFBFBD>p
my $dat1 = "";
my $title = "";
#subject.txt<78><74><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD><45><EFBFBD>ёւ<D191><D682>p
my ($i, $subtm);
{
# slurp mode; <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>͒P<CD92><EFBFBD><EA95B6><EFBFBD><EFBFBD><EFBFBD>ɑS<C991><53><EFBFBD>ǂݍ<C782><DD8D><EFBFBD>
local $/;
#<23>T<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>ǂݍ<C782><DD8D><EFBFBD>
open(SUBR, $subject); #SUBJECT<43><54><EFBFBD>J<EFBFBD><4A>
$subtm = <SUBR>; #<23><><EFBFBD>e<EFBFBD><65><EFBFBD>S<EFBFBD>ēǂݍ<C782><DD8D><EFBFBD>
close(SUBR); #<23>‚<EFBFBD><C282><EFBFBD>
}
# $SUBJ2[0] <20><> $keyfile <20>̃X<CC83><58><EFBFBD>ɂȂ<C982><C882><EFBFBD><E682A4>
# <20>Ȃ<EFBFBD><C882><EFBFBD><EA8D87> @SUBJ1 <20>ɑS<C991><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (substr($subtm, 0, length($keyfile) + 2) eq "$keyfile<>") {
@SUBJ2 = split(/^/m, $subtm);
}
elsif (($i = index($subtm, "\n$keyfile<>")) >= 0) {
@SUBJ1 = split(/^/m, substr($subtm, 0, ++$i));
@SUBJ2 = split(/^/m, substr($subtm, $i));
}
else {
@SUBJ1 = split(/^/m, $subtm);
}
$GB->{FILENUM} = @SUBJ1 + @SUBJ2;
#$GB->{SUBLINE} <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#dat<61><74>1<EFBFBD>s<EFBFBD>ڂ̗v<CC97>f<EFBFBD><66><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD>^<5E>C<EFBFBD>𓾂<EFBFBD>
$dat1 = $GB->{DAT1};
#<23><><EFBFBD>s<EFBFBD>J<EFBFBD>b<EFBFBD>g
chomp($dat1);
#1<>–ڂ̗v<CC97>f<EFBFBD><66><EFBFBD><EFBFBD><EFBFBD>H<EFBFBD><48><EFBFBD><EFBFBD>
$title = (split(/<>/, $dat1))[4];
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŏ<EFBFBD><C58F><EFBFBD>$GB->{SUBLINE}<7D>Ƃ<EFBFBD><C682>Ďg<C48E>p<EFBFBD><70><EFBFBD><EFBFBD>
$GB->{SUBLINE} = "$title ($GB->{DATNUM})\n";
if($GB->{NEWTHREAD})
{
#<23>V<EFBFBD>X<EFBFBD><58><EFBFBD>̏ꍇ<CC8F>A<EFBFBD><41><EFBFBD>ԏ<EFBFBD><D48F>ɂ̂<C982><CC82><EFBFBD><EFBFBD><EFBFBD>
$subtm = "$keyfile<>$GB->{FORM}->{'subject'} (1)\n";
# @SUBJ2 <20>͋<EFBFBD><CD8B>̂͂<CC82><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD>̂<EFBFBD><CC82><EFBFBD>
@newsub = ($subtm, @SUBJ1, @SUBJ2);
++$GB->{FILENUM};
}
else
{
if($GB->{FORM}->{'mail'} =~ /sage/)
{
### sage<67>̏ꍇ<CC8F>̏<EFBFBD><CC8F><EFBFBD> ###
$SUBJ2[0] = "$keyfile<>$GB->{SUBLINE}";
@newsub = (@SUBJ1, @SUBJ2);
}
else
{
### <20>ʏ<EFBFBD><CA8F>̏ꍇ<CC8F>̏<EFBFBD><CC8F><EFBFBD> ###
shift @SUBJ2;
$subtm = "$keyfile<>$GB->{SUBLINE}";
@newsub = ($subtm, @SUBJ1, @SUBJ2);
}
}
# subject.txt <20>ւ̎<D682><CC8E>ۂ̏<DB82><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݏ<EFBFBD><DD8F><EFBFBD>
if(@newsub)
{
#SUBJECT<43>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
open(SUBT, ">$subtemp");
#flock(SUBT, 2);
&PutLines(*SUBT, @newsub);
#flock(SUBT,8);
close(SUBT);
&TryRename($subtemp, $subject);
}
else
{
@newsub = (@SUBJ1, @SUBJ2);
}
# @{$GB->{NEWSUB}} <20>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʂ<EFBFBD><CA82><EFBFBD><EFBFBD><EFBFBD>
@{$GB->{NEWSUB}} = @newsub;
return 0;
}
#######################################################################
# subback.html<6D><6C><EFBFBD>X<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>
# UpdateSubject<63>̌<EFBFBD><CC8C>ŌĂԂ<C482><D482><EFBFBD>
#######################################################################
sub UpdateSubback
{
my ($GB) = @_;
my $sub = $GB->{PATH} . "subback.html";
$GB->{base} = "http://$ENV{'SERVER_NAME'}$ENV{'SCRIPT_NAME'}";
$GB->{base} =~ s/[^\/]*\.cgi/read\.cgi\/$GB->{FORM}->{'bbs'}\//;
open(HED,">$sub");
#flock(HED,2);
# subback<63><6B>HTML<4D>w<EFBFBD>b<EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD>1
my @subbackhead1 = (
qq|<html lang="ja">|,
qq|<head>|,
qq|<title>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}<7D><><EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>ꗗ</title>|,
qq|<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">|,
qq|<base href="$GB->{base}" target="body">|,
qq|<script type="text/javascript" src="http://www2.2ch.net/snow/index.js" defer></script>|
);
&PutLines(*HED, @subbackhead1);
my @subbackhead2 = (
qq|<style type="text/css"><!--\n|,
qq|a { margin-right: 1em; }|,
qq|div.floated { border: 1px outset honeydew; float: left; height: 20em; line-height: 1em; margin: 0 0 .5em 0; padding: .5em; }|,
qq|div.floated, div.block { background-color: honeydew; }|,
qq|div.floated a, div.block a { display: block; margin-right: 0; text-decoration: none; white-space: nowrap; }|,
qq|div.floated a:hover, div.block a:hover { background-color: cyan; }|,
qq|div.floated a:active, div.block a:active { background-color: gold; }|,
qq|div.right { clear: left; text-align: right; }|,
qq|div.right a { margin-right: 0; }|,
qq|div.right a.js { background-color: dimgray; border: 1px outset dimgray; color: palegreen; text-decoration: none; }|,
qq|\n|,
qq|--></style>|,
qq|</head>|,
qq|<body>|,
qq|<div><small id="trad">\n|
);
&PutLines(*HED, @subbackhead2);
# subback<63>̒<EFBFBD><CC92>g<EFBFBD><67><EFBFBD><EFBFBD>
my $i = 0;
foreach(@{$GB->{NEWSUB}})
{
chomp;
++$i;
/^(\w+)\.dat<>(.*)/;
my ($key, $value) = ($1, $2);
&Put1Line(*HED, "<a href=\"$key/l50\">$i: $value</a>\n");
}
# subback<63>̂<EFBFBD><CC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̕<EFBFBD><CC95><EFBFBD>
my @subbackfoot = (
qq|</small></div><div class="right"><small>|,
qq|<a href="javascript:changeSubbackStyle();" target="_self" class="js"><3E>\\<5C><><EFBFBD>X<EFBFBD>^<5E>C<EFBFBD><43><EFBFBD>ؑ<EFBFBD></a>&nbsp;\n|,
&IsReadHtml($GB) ? qq|<a href="javascript:switchReadJsMode();" target="_self" class="js">read.cgi <20><><EFBFBD>[<5B>h<EFBFBD>ؑ<EFBFBD></a>&nbsp;\n| : qq||,
qq|<a href="../../../$GB->{FORM}->{'bbs'}/kako/"><b><3E>ߋ<EFBFBD><DF8B><EFBFBD><EFBFBD>O<EFBFBD>q<EFBFBD>ɂ͂<C982><CD82><EFBFBD><EFBFBD><EFBFBD></b></a></small></div>\n|,
qq|</body>|,
qq|</html>|
);
&PutLines(*HED, @subbackfoot);
#flock(HED,8);
close(HED);
return 0;
}
#######################################################################
# <20>ƒg<C283>b<EFBFBD>v(index.html)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# UpdateSubject<63>̌<EFBFBD><CC8C>ŌĂԂ<C482><D482><EFBFBD>
#######################################################################
sub MakeIndex4PC
{
my ($GB) = @_;
my $rnd = int(rand(99999));
my $INDEXtemp = $GB->{PATH} . $rnd . $GB->{FORM}->{'time'} . ".tmps";
#open(HTM,">$GB->{INDEXFILE}");
open(HTM,">$INDEXtemp");
#--------<2D>܂<EFBFBD><DC82>w<EFBFBD>b<EFBFBD>_<EFBFBD><5F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
my @index_header1 = (
qq|<html lang="ja">|,
qq|<head>|,
qq|<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">|,
#<23>N<EFBFBD>b<EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂<EFBFBD> JavaScript
qq|<script type="text/javascript" src="http://www2.2ch.net/snow/index.js" defer></script>|,
);
&PutLines(*HTM, @index_header1);
# JavaScript <20>ł<EFBFBD><C582><EFBFBD>(<28>Ƃ肠<C682><E882A0><EFBFBD><EFBFBD>)
if(&IsReadHtml($GB))
{
# BE <20>֘A JavaScript
my @index_scriptheader = (
qq|<script type="text/javascript" src="http://www2.2ch.net/snow/be.js" defer></script>|
);
&PutLines(*HTM, @index_scriptheader);
}
my @index_header2 = (
qq|<title>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}</title>|,
qq|<style>body{ margin:0; padding:0;}</style>|,
qq|</head>|,
qq|<body text=$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TEXT_COLOR'} link=$FOX->{$GB->{FORM}->{bbs}}->{'BBS_LINK_COLOR'} alink=$FOX->{$GB->{FORM}->{bbs}}->{'BBS_ALINK_COLOR'} vlink=$FOX->{$GB->{FORM}->{bbs}}->{'BBS_VLINK_COLOR'} background=$FOX->{$GB->{FORM}->{bbs}}->{'BBS_BG_PICTURE'}>|,
qq|<script type="text/javascript" src="http://www.ff.iij4u.or.jp/~ch2/js/2chtop.js"></script>|
);
&PutLines(*HTM, @index_header2);
#<23>e<EFBFBD>[<5B>}<7D>\<5C><><EFBFBD>O
#if($FOX->{$GB->{FORM}->{bbs}}->{BBS_BG_SOUND})
#{
# &Put1Line(*HTM, "<bgsound src=\"$FOX->{$GB->{FORM}->{bbs}}->{BBS_BG_SOUND}\" autostart=\"true\">");
#}
#--------<2D>^<5E>C<EFBFBD>g<EFBFBD><67><EFBFBD>
$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'}=~ s/http:\/\/info.2ch.net\/info.html/http:\/\/info.2ch.net\/guide/g;
if($FOX->{$GB->{FORM}->{bbs}}->{BBS_TITLE_PICTURE})
{
&Put1Line(*HTM, "<div align=center>");
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'})
{
&Put1Line(*HTM, "<a href=\"$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'}\" border=0>");
}
if($FOX->{$GB->{FORM}->{bbs}}->{BBS_TITLE_PICTURE} =~/js/)
{
&Put1Line(*HTM, "<script src=$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_PICTURE'}></script>");
}
else
{
&Put1Line(*HTM, "<img src=\"$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_PICTURE'}\" border=0>");
}
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'})
{
&Put1Line(*HTM, "</a>");
}
&Put1Line(*HTM, "</div>");
}
else
{
&Put1Line(*HTM, "<div align=center>");
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'})
{
&Put1Line(*HTM, "<a href=\"$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'}\" border=0>");
}
&Put1Line(*HTM, "<font color=\"$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_COLOR'}\"><h1>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}</h1></font>");
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'})
{
&Put1Line(*HTM, "</a>");
}
&Put1Line(*HTM, "</div>");
}
#--------<2D>f<EFBFBD><66><EFBFBD>ƒ^<5E>C<EFBFBD>g<EFBFBD><67>
my @index_title1 = (
qq|<table border=1 cellspacing=7 cellpadding=3 width=95% bgcolor=$FOX->{$GB->{FORM}->{bbs}}->{"BBS_MAKETHREAD_COLOR"} align=center>|,
qq|<tr>|,
qq|<td align=center>|,
qq|<table border=0 cellpadding=1 width=100%>|,
qq|<tr>|,
qq|<td nowrap COLSPAN=2>|,
qq|<font size=+1><b>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}</b></font><br>|,
qq|</td>|,
qq|<td nowrap width=5% align=right valign=top>|,
&IsReadHtml($GB) ? qq|<a href="javascript:switchReadJsMode();" style="background-color:dimgray;border:1px outset dimgray;color:palegreen;text-decoration:none;">read.cgi <20><><EFBFBD>[<5B>h<EFBFBD>ؑ<EFBFBD></a>&nbsp; | : qq||,
qq|<a href=#menu><3E><></a>|,
qq|<a href=#1><3E><></a>|,
qq|</td>|,
qq|</tr>|,
qq|<tr>|,
qq|<td colspan=3>|
);
&PutLines(*HTM, @index_title1);
# <20>uBBx<42><78><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD><DC82>v<EFBFBD>\<5C><>
if(!$FOX->{BBM}) { &Put1Line(*HTM, "<font color=red size=+2>BBM <20><><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD></font><br>\n"); }
if(!$FOX->{BBM2}) { &Put1Line(*HTM, "<font color=red size=+2>BBM2 <20><><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD></font><br>\n"); }
if(!$FOX->{BBQ}) { &Put1Line(*HTM, "<font color=red size=+2>BBQ <20><><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD></font><br>\n"); }
if(!$FOX->{BBX}) { &Put1Line(*HTM, "<font color=red size=+2>BBX <20><><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD></font><br>\n"); }
if(!$FOX->{BBN}) { &Put1Line(*HTM, "<font color=red size=+2>BBN <20><><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD></font><br>\n"); }
if(!$FOX->{BBY}) { &Put1Line(*HTM, "<font color=red size=+2>BBY <20><><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD></font><br>\n"); }
if(!$FOX->{BBS}) { &Put1Line(*HTM, "<font color=red size=+2>BBS <20><><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD></font><br>\n"); }
if(!$FOX->{BBR}) { &Put1Line(*HTM, "<font color=red size=+2>BBR <20><><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD></font><br>\n"); }
if(!$FOX->{BBE}) { &Put1Line(*HTM, "<font color=red size=+2>BBE <20><><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD></font><br>\n"); }
#--------<2D>J<EFBFBD>X<EFBFBD>^<5E><><EFBFBD>t<EFBFBD><74><EFBFBD>b<EFBFBD>V<EFBFBD><56><EFBFBD>iflash.txt<78>j
my $CUSTOM_FLASH_HTML = "./flash.txt";
if(open(READ, $CUSTOM_FLASH_HTML))
{
local $/;
&Put1Line(*HTM, <READ>);
close(READ);
}
#--------<2D>J<EFBFBD>X<EFBFBD>^<5E><><EFBFBD>w<EFBFBD>b<EFBFBD>_(<28><><EFBFBD>[<5B>J<EFBFBD><4A><EFBFBD><EFBFBD><EFBFBD>[<5B><>)<29>ihead.txt<78>j
my $CUSTOM_HEAD_HTML = $GB->{PATH} . "head.txt";
if(open(READ, $CUSTOM_HEAD_HTML))
{
local $/;
#&Put1Line(*HTM, "<center><font size=+2><b><3E><><EFBFBD><EFBFBD><EFBFBD>P<EFBFBD><50><EFBFBD><EFBFBD><EFBFBD>{<7B><><EFBFBD>B<EFBFBD>B<EFBFBD>B<a href=\"http://yy12.kakiko.com/emg2ch/\"><3E><><EFBFBD></a></b></font></center><p>");
&Put1Line(*HTM, <READ>);
close(READ);
}
#--------<2D>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_PASSWORD_CHECK'} eq "checked")
{
my @index_title2 = (
qq|<br>|,
qq|</td>|,
qq|</tr>|,
qq|<tr>|,
qq|<td nowrap colspan=5 align=center>|,
qq|</td>|,
qq|</tr>|,
qq|</table>|,
qq|<b><a href=http://info.2ch.net/before.html><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޑO<DE91>ɓǂ<C993><C782>ł<EFBFBD></a> <20>b |,
qq|<a href=http://info.2ch.net/guide/><3E>Q<EFBFBD><51><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˂<EFBFBD><CB82>K<EFBFBD>C<EFBFBD>h</a>|,
qq|$FOX->{specialad} \| |,
qq|<a href=\"http://info.2ch.net/guide/faq.html\"><3E>e<EFBFBD>`<60>p</a></b>|
);
&PutLines(*HTM, @index_title2);
}
else
{
my @index_title2 = (
qq|<br>|,
qq|</td>|,
qq|</tr>|,
qq|<tr>|,
qq|<td nowrap align=right>|,
qq|</td>|,
qq|</tr>|,
qq|</table>|,
qq|<b><a href=http://info.2ch.net/before.html><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޑO<DE91>ɓǂ<C993><C782>ł<EFBFBD></a> <20>b |,
qq|<a href=http://info.2ch.net/guide/><3E>Q<EFBFBD><51><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˂<EFBFBD><CB82>K<EFBFBD>C<EFBFBD>h</a> \| |,
qq|<a href=\"http://info.2ch.net/guide/faq.html\"><3E>e<EFBFBD>`<60>p</a>|,
qq|$FOX->{specialad}</b>|
);
&PutLines(*HTM, @index_title2);
}
#--------<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD><EFBFBD>N
# pageview.cgi<67>͔p<CD94>~<7E><><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
#use integer;
#my $lp = $GB->{FILENUM} / $FOX->{$GB->{FORM}->{bbs}}->{"BBS_THREAD_NUMBER"};
#if($GB->{FILENUM} != $lp * $FOX->{$GB->{FORM}->{bbs}}->{"BBS_THREAD_NUMBER"})
#{
# $lp++;
#}
#if($lp > 1)
#{
# &Put1Line(*HTM, "<a href=\"../test/pageview.cgi?page=$lp&bbs=$GB->{FORM}->{'bbs'}\"><3E>Ō<EFBFBD><C58C>̃y<CC83>[<5B>W</a>");
#}
#if($GB->{FILENUM} > $FOX->{$GB->{FORM}->{bbs}}->{"BBS_THREAD_NUMBER"})
#{
# &Put1Line(*HTM, "<22>@<a href=\"../test/pageview.cgi?page=2&bbs=$GB->{FORM}->{'bbs'}\"><3E><><EFBFBD>̃y<CC83>[<5B>W</a>");
#}
my @index_title3 = (
qq|</td>|,
qq|</tr>|,
qq|<tr>|,
qq|<td>|,
qq|<font size=2>$FOX->{links}</font>|,
qq|</td>|,
qq|</tr>|,
qq|</table><br>|
);
&PutLines(*HTM, @index_title3);
#--------<2D>L<EFBFBD><4C><EFBFBD><EFBFBD>
my @index_ad = (
qq|<table border=1 cellspacing=7 cellpadding=3 width=95% bgcolor=$FOX->{$GB->{FORM}->{bbs}}->{'BBS_MAKETHREAD_COLOR'} align=center>|,
qq|<tr>|,
qq|<td>|,
qq|$FOX->{headad}|,
qq|</tr>|,
qq|</td>|,
qq|</table>|,
qq|$FOX->{putad}|
);
&PutLines(*HTM, @index_ad);
#<23>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>f<EFBFBD><66><EFBFBD>o<EFBFBD><6F><EFBFBD>p<EFBFBD>Ƀt<C983>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>𒲐<EFBFBD>
my $menumin = $FOX->{$GB->{FORM}->{bbs}}->{"BBS_THREAD_NUMBER"};
my $menumax = $FOX->{$GB->{FORM}->{bbs}}->{"BBS_MAX_MENU_THREAD"};
if($GB->{FILENUM} < $FOX->{$GB->{FORM}->{bbs}}->{"BBS_THREAD_NUMBER"})
{
$menumin = $GB->{FILENUM};
}
if($GB->{FILENUM} < $FOX->{$GB->{FORM}->{bbs}}->{"BBS_MAX_MENU_THREAD"})
{
$menumax = $GB->{FILENUM};
}
#--------<2D>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>
my @index_list = (
qq|<a name="menu"></a>|,
qq|<table border=1 cellspacing=7 cellpadding=3 width=95% bgcolor="$FOX->{$GB->{FORM}->{bbs}}->{"BBS_MENU_COLOR"}"align=center>|,
qq|<tr>|,
qq|<td>|,
qq|<font size=2>|
);
&PutLines(*HTM, @index_list);
#<23>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><EFBFBD><EA9797><EFBFBD>f<EFBFBD><66><EFBFBD>o<EFBFBD><6F>
# <20>ŏ<EFBFBD><C58F><EFBFBD>$menumin<69>•<EFBFBD>
for(my $SubCount = 1; $SubCount <= $menumin; $SubCount++)
{
my $file = @{$GB->{NEWSUB}}[$SubCount-1];
chomp($file);
$file =~ /^(\w+)\.dat<>(.*)/;
my ($key, $value) = ($1, $2);
# <20><><EFBFBD><EFBFBD><EFBFBD>ł͖<C582><CD96><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>html<6D><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD>(<28>{<7B><><EFBFBD>ɕK<C995>v<EFBFBD>ɂȂ钼<C882>O<EFBFBD>܂ŕۗ<C595>)
#unless(-e "$GB->{TEMPPATH}$key.html")
#{
# &MakeWorkFile($GB, $key);
#}
&Put1Line(*HTM, "<a href=\"../test/read.cgi/$GB->{FORM}->{'bbs'}/$key/l50\" target=\"body\">$SubCount:</a> <a href=\"#$SubCount\">$value</a><3E>@");
}
# <20><><EFBFBD><EFBFBD><EFBFBD>ȍ~
for(my $SubCount = $menumin + 1; $SubCount <= $menumax; $SubCount++)
{
my $file = @{$GB->{NEWSUB}}[$SubCount-1];
chomp($file);
$file =~ /^(\w+)\.dat<>(.*)/;
my ($key, $value) = ($1, $2);
&Put1Line(*HTM, "<a href=\"../test/read.cgi/$GB->{FORM}->{'bbs'}/$key/l50\" target=\"body\">$SubCount: $value</a><3E>@");
}
# <20>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>ꗗ(subback.html)<29>ւ̃<D682><CC83><EFBFBD><EFBFBD>N
&Put1Line(*HTM, "<div align=\"right\"><a href=\"subback.html\"><b><3E>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD><EFBFBD></b></a></font></td></tr></table>");
#--------<2D>L<EFBFBD><4C><EFBFBD><EFBFBD>(<28><><EFBFBD>΂<EFBFBD><CE82><EFBFBD><EFBFBD>̃X<CC83>y<EFBFBD>[<5B>X)
# XXX <20><><EFBFBD>̂<EFBFBD> bbs-yakin.cgi <20>̒<EFBFBD><CC92>ɂ<EFBFBD><C982><EFBFBD>
# <20><><EFBFBD>̃T<CC83>u<EFBFBD><75><EFBFBD>[<5B>`<60><><EFBFBD><EFBFBD><EFBFBD>Ńt<C583>@<40>C<EFBFBD><43><EFBFBD>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>uHTM<54>v<EFBFBD><76><EFBFBD><EFBFBD>
# <20>v<EFBFBD><76><EFBFBD>؂茈<D882>ߑł<DF91><C582>Ă<EFBFBD><C482><EFBFBD><EFBFBD>̂ŗv<C597><76><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͈<EFBFBD><CD88><EFBFBD><EFBFBD>œn<C593><6E><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǝv<C68E><76> -- 11/22/2005 by <20><>
# IPv6.2ch.net<65><74>maido3<6F>̃T<CC83>[<5B>o<EFBFBD>ł͂Ȃ<CD82><C882>̂ŁA<C581>L<EFBFBD><4C><EFBFBD>͏o<CD8F><6F><EFBFBD>Ȃ<EFBFBD>
if($ENV{SERVER_NAME} ne "ipv6.2ch.net")
{
&YakinCounterCode($GB->{FORM}->{bbs});
}
#--------<2D>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD>f<EFBFBD><66><EFBFBD>o<EFBFBD><6F>
my $front = $menumin;
my $next = 2;
for(my $ancnum = 1; $ancnum <= $menumin; $ancnum++)
{
my $file = @{$GB->{NEWSUB}}[$ancnum-1];
$file =~ /^(\w+)\.dat/;
my ($key) = ($1);
my @log = ();
my $count = 0;# <09>J<EFBFBD><4A><EFBFBD>Ԃ<EFBFBD><D482>J<EFBFBD>E<EFBFBD><45><EFBFBD>g
# subject.txt<78>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>̂ɁA<C981>\<5C><><EFBFBD><EFBFBD>html<6D><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĂȂ<C482><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD>1<EFBFBD>񎎂<EFBFBD><F18E8E82>Ă݂<C482><DD82>A<EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD>̂<EFBFBD><CC82>A100<30>񂮂炢<F182AE82><E782A2><EFBFBD><EFBFBD><EFBFBD>Ă݂<C482>
# (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ƃ<EFBFBD>100<30><30><EFBFBD><EFBFBD><EFBFBD>m<EFBFBD><6D><EFBFBD><EFBFBD><EFBFBD>Aneet4vip<69>Ō<EFBFBD><C58C>\<5C><><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
for ($count = 1; $count <= 100; $count++)
{
open(IN, "$GB->{TEMPPATH}$key.html");
@log = <IN>;
close(IN);
if(@log >= 2)
{
next;
}
}
# <20><><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>߂<EFBFBD><DF82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><E582A4><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD>MakeWorkFile<6C><65><EFBFBD>āA
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂݒ<C782><DD92><EFBFBD>
if($count == 101)
{
&MakeWorkFile($GB, $key);
open(IN, "$GB->{TEMPPATH}$key.html");
@log = <IN>;
close(IN);
}
# <20>X<EFBFBD><58><EFBFBD>̍ŏ<CC8D><C58F>̂Ƃ<CC82><C682><EFBFBD>
my $first = shift(@log);
$first =~ s/\$ANCOR/$ancnum/g;
$first =~ s/\$FRONT/$front/g;
$first =~ s/\$NEXT/$next/g;
&Put1Line(*HTM, "\n" . $first);
# <20>X<EFBFBD><58><EFBFBD><EFBFBD>html<6D>{<7B><>
&PutLines(*HTM, @log);
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>‚<EFBFBD><C282><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̓t<CD83>H<EFBFBD>[<5B><>
my @index_surefoot = (
qq|<dd>|,
qq|<form method=POST action="../test/bbs.cgi?guid=ON">|,
qq|<input type=hidden name=bbs value=$GB->{FORM}->{'bbs'}>|,
qq|<input type=hidden name=key value=$key>|,
qq|<input type=hidden name=time value=$GB->{NOWTIME}>|,
qq|<input type=submit value="<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" name="submit">|,
qq| <20><><EFBFBD>O<EFBFBD>F |,
qq|<input type=text name=FROM size=19>|,
qq| E-mail<69>F|,
qq|<input type=text name=mail size=19>|,
qq|<ul>|,
qq|<textarea rows=5 cols=64 wrap=OFF name=MESSAGE></textarea><br>|,
qq|<b>|,
qq|<a href="../test/read.cgi/$GB->{FORM}->{'bbs'}/$key/"><3E>S<EFBFBD><53><EFBFBD>ǂ<EFBFBD></a> |,
qq|<a href="../test/read.cgi/$GB->{FORM}->{'bbs'}/$key/l50"><3E>ŐV50</a> |,
qq|<a href="../test/read.cgi/$GB->{FORM}->{'bbs'}/$key/-100">1-100</a> |,
#qq|<a href="http://info.2ch.net/test/tb.cgi?__mode=list&tb_id=http://$ENV{'SERVER_NAME'}/test/read.cgi/$GB->{FORM}->{'bbs'}/$key"><3E>֘A<D698>y<EFBFBD>[<5B>W</a> |,
qq|<a href="#menu"><3E>‚̃g<CC83>b<EFBFBD>v</a> <a href="$GB->{PATH}./index.html"><3E><><EFBFBD><EFBFBD><EFBFBD>[<5B>h</a>|,
qq|</b>|,
qq|</ul>|,
qq|</form>|,
qq|</dl>|,
qq|</td>|,
qq|</tr>|,
qq|</table><br>|
);
&PutLines(*HTM, @index_surefoot);
$front++;
if($front > $menumin)
{
$front = 1;
}
$next++;
if($next > $menumin)
{
$next = 1;
}
}
#--------<2D>t<EFBFBD>b<EFBFBD>^<5E>[<5B>ŕ‚߂<C282><DF82><EFBFBD><EFBFBD><EFBFBD>
&Put1Line(*HTM, "<center>");
# pageview.cgi<67>͔p<CD94>~<7E><><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
#if($menumin < $menumax)
#{
# &Put1Line(*HTM, "<a href=\"../test/pageview.cgi?page=2&bbs=$GB->{FORM}->{'bbs'}\"><font size=5><b><3E><><EFBFBD>̃y<CC83>[<5B>W</b></font></a>");
#}
#--------<2D>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><EFBFBD>̂Ƃ<CC82><C682><EFBFBD>
my @index_newthread1 = (
qq|<table border=1 cellspacing=7 cellpadding=3 width=95% bgcolor=$FOX->{$GB->{FORM}->{bbs}}->{"BBS_MAKETHREAD_COLOR"} align=center>|,
qq|<tr>|,
qq|<td>|,
qq|<form method=POST action="../test/bbs.cgi?guid=ON">|
);
&PutLines(*HTM, @index_newthread1);
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_PASSWORD_CHECK'} eq "checked")
{
my @index_newthread2 = (
qq|<br><input type=submit value="<22>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><EFBFBD><EC90AC><EFBFBD>ʂ<EFBFBD>" name=submit>|,
qq|<input type=hidden name=bbs value=$GB->{FORM}->{'bbs'}>|,
qq|<input type=hidden name=time value=$GB->{NOWTIME}>|,
qq|</td>|,
qq|</tr>|,
qq|</table>|,
qq|</form>|,
qq|</table>|
);
&PutLines(*HTM, @index_newthread2);
}
else
{
my @index_newthread2 = (
qq|<td nowrap>|,
qq|<7C>^<5E>C<EFBFBD>g<EFBFBD><67><EFBFBD>F|,
qq|<input type=text name=subject size=40>|,
qq|<input type=submit value="<22>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>쐬" name=submit><br>|,
qq|<7C><><EFBFBD>O<EFBFBD>F|,
qq|<input type=text name=FROM size=19>|,
qq| E-mail<69>F|,
qq|<input type=text name=mail size=19><br>|,
qq|<7C><><EFBFBD>e<EFBFBD>F|,
qq|<textarea rows=5 cols=60 wrap=OFF name=MESSAGE></textarea>|,
qq|<input type=hidden name=bbs value=$GB->{FORM}->{'bbs'}>|,
qq|<input type=hidden name=time value=$GB->{NOWTIME}>|,
qq|</td>|,
qq|</tr>|,
qq|</form>|,
qq|</table>|
);
&PutLines(*HTM, @index_newthread2);
}
# <20>L<EFBFBD><4C>(footad)<29>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD>E<EFBFBD><45><EFBFBD>^<5E>[
# <20>ǂ̂悤<CC82>Ȍ`<60>̍폜<CC8D>˗<EFBFBD><CB97>ł<EFBFBD><C582><EFBFBD><EFBFBD>A<EFBFBD>A<EFBFBD>A
# <20>o<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD><EFBFBD>(<28>ƍL<C68D><4C>)
my $foot = $FOX->{footad} . "<a href=http://count.2ch.net/?$GB->{FORM}->{'bbs'}><img src=http://count.2ch.net/ct.php/$GB->{FORM}->{'bbs'} BORDER=0></a><br><b><3E>ǂ̂悤<CC82>Ȍ`<60>̍폜<CC8D>˗<EFBFBD><CB97>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD><4A><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD></b><br>";
&Put1Line(*HTM, "<br><br>$foot</center><br>");
# <20>Ō<EFBFBD><C58C>̕<EFBFBD><CC95><EFBFBD>
&Put1Line(*HTM, "$GB->{version}");
&Put1Line(*HTM, "<br>" . $FOX->{lastad});
# <20><><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD>
&Put1Line(*HTM, "</body></html>");
#flock(HTM,8);
close(HTM);
&TryRename($INDEXtemp, $GB->{INDEXFILE});
return 0;
}
#############################################################################
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂܂<DD82><DC82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\<5C><><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
#############################################################################
sub endhtml
{
my ($GB) = @_ ;
# <20>X<EFBFBD><58><EFBFBD>b<EFBFBD>h924<32>̃G<CC83><47><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD>(<28>Ō<EFBFBD><C58C>̍Ō<CC8D>)
# <20>ŋ<EFBFBD><C58B>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>ł́A924<32>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>X<EFBFBD>”\
if($GB->{FORM}->{'key'} =~ /^924/ && !$GB->{STRONGCAP})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD>ɂ͏<C982><CD8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂܂<DF82><DC82><EFBFBD><EFBFBD>B");
}
if($GB->{TBACK}) {&TBacksuperEnd;}
# <20>͂Ȃ<CD82><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD>b<EFBFBD>L<EFBFBD>[(<28><><EFBFBD>e<EFBFBD><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̂ݑ<CC82><DD91><EFBFBD><EFBFBD>N<EFBFBD>b<EFBFBD>L<EFBFBD>[)<29>𑗂<EFBFBD>
if(($GB->{COOKIES}{$GB->{PIN1}} || '') ne $GB->{PIN2})
{
# <20>N<EFBFBD>b<EFBFBD>L<EFBFBD>[<5B>̓g<CD83><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N<EFBFBD>łȂ<C582><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(!$GB->{TBACK})
{
print "Set-Cookie: $GB->{PIN}; expires=$FOX->{COOKIEEXPIRES}; path=/\n";
}
}
my $nana = "$FOX->{$GB->{FORM}->{bbs}}->{'BBS_NONAME_NAME'}";
$nana =~ s/(\W)/'%' . unpack('H2', $1)/eg;
print "Set-Cookie: PREN=$nana; expires=$FOX->{COOKIEEXPIRES}; path=/\n";
print "Content-type: text/html; charset=shift_jis\n\n";
#-----------------------------------------------------------------------
if($ENV{'HTTP_USER_AGENT'} =~ /iPhone/)
{
print <<EOF;
<html lang="ja">
<head>
<title><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂܂<DD82><DC82><EFBFBD><EFBFBD>B</title>
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.6,user-scalable=yes" />
</head>
<body><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B(iPhone)<br><br>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŗ߂<EFBFBD><EFBFBD>Ă<EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<br><br>
<br><br><br><br><br>
<center>
</center>
</body>
</html>
EOF
}
else
{
print <<EOF;
<html lang="ja">
<head>
<title><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂܂<DD82><DC82><EFBFBD><EFBFBD>B</title>
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
<meta content=5;URL=$GB->{INDEXFILE} http-equiv=refresh>
</head>
<body><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B<br><br>
<EFBFBD><EFBFBD><EFBFBD>ʂ<EFBFBD><EFBFBD>؂<EFBFBD><EFBFBD>ւ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂ł<EFBFBD><EFBFBD>΂炭<EFBFBD><EFBFBD><EFBFBD>҂<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<br><br>
<br><br><br><br><br>
<center>
</center>
</body>
</html>
EOF
}
#<img width=160 height=120 src="http://www2.2ch.net/img/Hello-502index.gif" border=1 alt="Hello 502">
#<br><br>$FOX->{putad}
#<23><><EFBFBD><EFBFBD><EFBFBD>܁[<5B><>!!
exit;
}
#############################################################################
#<23>@<40>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>ʉ<EFBFBD><CA89><EFBFBD>
#############################################################################
sub newbbs
{
my ($GB) = @_;
print "Content-type: text/html; charset=shift_jis\n\n";
my @newbbshtml1 = (
qq|<html lang="ja">|,
qq|<head>|,
qq|<meta http-equiv="Content-Type" content="text/html; charset=x-sjis">|,
#<23>N<EFBFBD>b<EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂<EFBFBD> JavaScript
qq|<script type="text/javascript" src="http://www2.2ch.net/snow/index.js" defer></script>|,
qq|<title>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}</title>|,
qq|</head>|,
qq|<body text="$FOX->{$GB->{FORM}->{bbs}}->{"BBS_TEXT_COLOR"}" BGCOLOR="$FOX->{$GB->{FORM}->{bbs}}->{"BBS_BG_COLOR"}" link="$FOX->{$GB->{FORM}->{bbs}}->{"BBS_LINK_COLOR"}" alink="$FOX->{$GB->{FORM}->{bbs}}->{"BBS_ALINK_COLOR"}" vlink="$FOX->{$GB->{FORM}->{bbs}}->{"BBS_VLINK_COLOR"}" background="$FOX->{$GB->{FORM}->{bbs}}->{"BBS_BG_PICTURE"}">|
);
print @newbbshtml1;
#--------<2D>^<5E>C<EFBFBD>g<EFBFBD><67><EFBFBD>
if($FOX->{$GB->{FORM}->{bbs}}->{BBS_TITLE_PICTURE})
{
print "<div align=center>";
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'})
{
print "<a href=\"$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'}\" border=0>";
}
print "<img src=\"$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_PICTURE'}\" border=0>";
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'})
{
print "</a>";
}
print "</div>";
}
else
{
print "<div align=center>";
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'})
{
print "<a href=\"$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'}\" border=0>";
}
print "<font color=\"$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_COLOR'}\"><h1>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}</h1></font>";
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE_LINK'})
{
print "</a>";
}
print "</div>";
}
#--------<2D>f<EFBFBD><66><EFBFBD>ƒ^<5E>C<EFBFBD>g<EFBFBD><67>
my @newbbshtml2 = (
qq|<br>|,
qq|<table border=1 cellspacing=7 cellpadding=3 width=95% bgcolor=$FOX->{$GB->{FORM}->{bbs}}->{"BBS_MAKETHREAD_COLOR"} align=center>|,
qq|<tr>|,
qq|<td align="center">|,
qq|<form method=POST action="../test/bbs.cgi?guid=ON">|,
qq|<table border="0" cellpadding="1" width="100%">|,
qq|<tr>|,
qq|<td nowrap colspan="3">|,
qq|<font +1><b>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}</b></font><br>|,
qq|</td>|,
qq|</tr>|,
qq|<tr>|,
qq|<td colspan="4">|
);
print @newbbshtml2;
#--------<2D>J<EFBFBD>X<EFBFBD>^<5E><><EFBFBD>w<EFBFBD>b<EFBFBD>_(<28><><EFBFBD>[<5B>J<EFBFBD><4A><EFBFBD><EFBFBD><EFBFBD>[<5B><>)<29>ihead.txt<78>j
my $CUSTOM_HEAD_HTML = "$GB->{PATH}head.txt";
if(open(READ, $CUSTOM_HEAD_HTML))
{
local $/;
print <READ>;
close(READ);
}
#--------<2D>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h
my @newbbshtml3 = (
qq|<br>|,
qq|</td>|,
qq|</tr>|,
qq|<tr>|,
qq|<td nowrap align="right">|,
qq|<7C>^<5E>C<EFBFBD>g<EFBFBD><67><EFBFBD>F|,
qq|</td>|,
qq|<td>|,
qq|<input type="text" name="subject" size="40">|,
qq|</td>|,
qq|<td>|,
qq|<input type=submit value="<22>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>쐬" name="submit">|,
qq|</td>|,
qq|</tr>|,
qq|<tr>|,
qq|<td nowrap align="right">|,
qq|<7C><><EFBFBD>O<EFBFBD>F|,
qq|</td>|,
qq|<td nowrap colspan="2">|,
qq|<input type=text name=FROM size=19> E-mail<69>F|,
qq|<input type=text name=mail size=19>|,
qq|</td>|,
qq|</tr><tr>|,
qq|<td nowrap align="right" valign="top">|,
qq|<7C><><EFBFBD>e<EFBFBD>F|,
qq|</td>|,
qq|<td colspan="3">|,
qq|<textarea rows=5 cols=60 wrap=OFF name=MESSAGE></textarea>|,
qq|<input type=hidden name=bbs value=$GB->{FORM}->{'bbs'}>|,
qq|<input type=hidden name=time value=$GB->{NOWTIME}>|,
qq|</td>|,
qq|</tr>|,
qq|</table>|,
qq|<b><a href="http://info.2ch.net/before.html"><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޑO<DE91>ɓǂ<C993><C782>ł<EFBFBD></a> <20>b <a href="http://info.2ch.net/guide/"><3E>Q<EFBFBD><51><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˂<EFBFBD><CB82>K<EFBFBD>C<EFBFBD>h</a>$FOX->{specialad}</b><br><br>|,
qq|</form>|,
qq|</td>|,
qq|</tr>|,
qq|</table><br>|,
qq|</body>|,
qq|</html>|
);
print @newbbshtml3;
# <20><><EFBFBD>ʂ<EFBFBD><CA82>\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>exit
exit;
}
#############################################################################
#<23>@<40>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>u<EFBFBD><75><EFBFBD>b<EFBFBD>N
#############################################################################
#sub subbbs
#{
# my ($GB) = @_ ;
#
# my $msg = $GB->{FORM}->{'MESSAGE'};
# my $sbj = $GB->{FORM}->{'subject'};
# $msg =~ s/<[Bb][Rr]>/\n/g;
# $msg =~ s/&/&amp;/g;
# $msg =~ s/"/&quot;/g;
# $sbj =~ s/&/&amp;/g;
# $sbj =~ s/"/&quot;/g;
#
# print "Content-type: text/html; charset=shift_jis\n\n";
# print <<EOF;
#<html>
#<head>
#<meta http-equiv="Content-Type" content="text/html; charset=x-sjis">
#<TITLE>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}</TITLE>
#</HEAD><body bgcolor="#FFFFFF">
#<font size=+1 color=#FF0000><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݊m<DD8A>F<EFBFBD>B</font><br><br>
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂Ɋւ<C98A><D682>ėl<C497>X<EFBFBD>ȃ<EFBFBD><C883>O<EFBFBD><4F><EFBFBD>񂪋L<F182AA8B>^<5E><><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B<br>
#<23><><EFBFBD><EFBFBD><EFBFBD>Ǒ<EFBFBD><C791>ɔ<EFBFBD><C994><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>l<EFBFBD>ɖ<EFBFBD><C996>f<EFBFBD><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E98F91><EFBFBD><EFBFBD><EFBFBD>݂͍T<CD8D><54><EFBFBD>ĉ<EFBFBD><C489><EFBFBD><EFBFBD><EFBFBD><br>
# <form method=POST action="../test/subbbs.cgi">
# <09>^<5E>C<EFBFBD>g<EFBFBD><67><EFBFBD>F$GB->{FORM}->{'subject'}
# <input type="hidden" name="subject" value="$sbj" size="40"><br>
# <09><><EFBFBD>O<EFBFBD>F$GB->{FORM}->{'FROM'}
# <INPUT TYPE=hidden NAME=FROM SIZE=19 value="$GB->{FORM}->{'FROM'}"><br>
# E-mail <20>F $GB->{FORM}->{'mail'}
# <INPUT TYPE=hidden NAME=mail SIZE=19 value="$GB->{FORM}->{'mail'}"><br>
# <09><><EFBFBD>e<EFBFBD>F<ul>$GB->{FORM}->{'MESSAGE'}
# <input type=hidden name=MESSAGE value="$msg"></ul>
#<br>
#<input type=hidden name=bbs value=$GB->{FORM}->{'bbs'}>
#<input type=hidden name=time value=$GB->{NOWTIME}>
#<input type=submit value="<22>S<EFBFBD>ӔC<D394>𕉂<EFBFBD><F0958982><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ď<EFBFBD><C48F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" name="submit"><br>
#</form>
#<23>ύX<CF8D><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͖߂<CD96><DF82>{<7B>^<5E><><EFBFBD>Ŗ߂<C596><DF82>ď<EFBFBD><C48F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĉ<EFBFBD><C489><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<br>
#
#EOF
# exit;
#}
#############################################################################
#index.html<6D><EFBFBD>p<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD>: $GB, <20>ΏۂƂȂ<C682>dat<61>̃L<CC83>[$key
# $key<65><79>$GB->{FORM}->{'key'}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>AGetDatInfo<66>œǂ񂾂<C782><F182BE82>̂<EFBFBD><CC82>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub MakeWorkFile
{
my ($GB, $key) = @_;
my $workfile = $GB->{TEMPPATH} . $key . ".html";
my (@messx, @content);
my ($mailto, $time, $brmax, $topnum, $firstlog, $name, $mail, $subject, $message);
my $datnum = 0; # <20><><EFBFBD><EFBFBD>dat<61>̍s<CC8D><73>
# <20>ΏۂƂȂ<C682>dat<61>ɑ΂<C991><CE82>AMakeWorkFile<6C><65><EFBFBD><EFBFBD>$GB<47>̂悤<CC82>Ɏg<C98E><67><EFBFBD><EFBFBD><EFBFBD>ϐ<EFBFBD>
# $key<65><79>$GB->{FORM}->{'key'}<7D><><EFBFBD><EFBFBD><E182A4><EFBFBD>Ɏg<C98E>p<EFBFBD><70><EFBFBD><EFBFBD>
my $TMPGB = {};
$GB->{DEBUG} .= "IN MakeWorkFile($key) file=$workfile<br>";
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dat<61>ƃL<C683>[<5B><><EFBFBD><EFBFBD><E182A4><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>𒲂ׂ<F092B282>
if($GB->{FORM}->{'key'} != $key)
{
# <20>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>K<EFBFBD>v<EFBFBD><76> $TMPGB <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# GetDatInfo <20>̑O<CC91>ɁA<C981><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Z<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>ĂȂ<C482><C882>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD>Ȃ<EFBFBD>
$TMPGB->{NEWTHREAD} = 0;
$TMPGB->{DATPATH} = $GB->{DATPATH};
$TMPGB->{FORM}->{bbs} = $GB->{FORM}->{bbs};
$TMPGB->{DAT1} = "";
$TMPGB->{DATNUM} = 0;
$TMPGB->{DATLAST} = ();
# $TMPGB <20><> dat <20>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂݍ<C782><DD8D><EFBFBD>
&GetDatInfo($TMPGB, $key);
# <20><><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>l<EFBFBD><6C><EFBFBD>Z<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>
$firstlog = $TMPGB->{DAT1};
$datnum = $TMPGB->{DATNUM};
@content = @{$TMPGB->{DATLAST}};
}
else
{
# <20>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD><CC82>Z<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>
$firstlog = $GB->{DAT1};
$datnum = $GB->{DATNUM};
@content = @{$GB->{DATLAST}};
}
# <20><><EFBFBD>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>A
# $firstlog<6F><67>dat<61><74>>>1<>̗v<CC97>f
# $datnum<75>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dat<61>̍s<CC8D><73>
# @content<6E>ɊY<C98A><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD>dat<61>̍ŐV<C590><56><EFBFBD>X<EFBFBD><58>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#<23><><EFBFBD>s<EFBFBD>J<EFBFBD>b<EFBFBD>g
chomp($firstlog);
#>>1<>̗v<CC97>f<EFBFBD><66><EFBFBD><EFBFBD><EFBFBD>H<EFBFBD><48><EFBFBD><EFBFBD>
($name,$mail,$time,$message,$subject) = split(/<>/,$firstlog);
$GB->{DEBUG} .= "MakeWorkFile($key) file=$workfile<br>";
open(SHTM,">$workfile"); #<23><><EFBFBD>O<EFBFBD>e<EFBFBD><65><EFBFBD>|<7C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD><4A>
# flock(SHTM,2);
#<23>T<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD>e<EFBFBD>[<5B>u<EFBFBD><75>(<28>X<EFBFBD><58><EFBFBD>^<5E>C<EFBFBD>̃A<CC83><41><EFBFBD>J<EFBFBD>[<5B>̂Ƃ<CC82><C682><EFBFBD>)<29><><EFBFBD>f<EFBFBD><66><EFBFBD>o<EFBFBD><6F>
my @subjecttable = (
qq|<table border=1 cellspacing=7 cellpadding=3 width=95% bgcolor="$FOX->{$GB->{FORM}->{bbs}}->{"BBS_THREAD_COLOR"}" align=center>|,
qq|<tr>|,
qq|<td>|,
qq|<dl class="thread">|,
qq|<a name="\$ANCOR"></a>|,
qq|<div align="right"><a href ="#menu"><3E><></a>|,
qq|<a href="#\$FRONT"><3E><></a>|,
qq|<a href="#\$NEXT"><3E><></a>|,
qq|</div>|,
qq|<b><3E>y\$ANCOR:$datnum<75>z<font size=5 color="$FOX->{$GB->{FORM}->{bbs}}->{'BBS_SUBJECT_COLOR'}">$subject</font></b>|
);
&PutLines(*SHTM, @subjecttable);
#>>1<>̃n<CC83>C<EFBFBD>p<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD><EFBFBD>Ɠf<C693><66><EFBFBD>o<EFBFBD><6F>
#-----------------------------------------------------------------------
# http:// <20><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD>C<EFBFBD>p<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD>ɂ<EFBFBD><C982><EFBFBD>
$message = &MakeHyperLink($GB, $message);
# <20><><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD>mailto:<3A>̃<EFBFBD><CC83><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
$mailto = &MakeMailto($GB, $mail, $name);
#BE:<3A>̃<EFBFBD><CC83><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#$time =~ s/BE:(\d+)-([^ ]*)/<a href="javascript:be($1);">?$2<\/a>/;
$time =~ s{BE:(\d+)-(.*)$}{<a href="javascript:be($1);">?$2</a>};
#>>1<><31><EFBFBD>f<EFBFBD><66><EFBFBD>o<EFBFBD><6F>
&Put1Line(*SHTM, "<dt>1 <20><><EFBFBD>O<EFBFBD>F$mailto $time<dd>$message <br><br><br>");
#<23>ŐVBBS_CONTENTS_NUMBER<45>‚̃<C282><CC83>X<EFBFBD>̃n<CC83>C<EFBFBD>p<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD><EFBFBD>Ɠf<C693><66><EFBFBD>o<EFBFBD><6F>
#-----------------------------------------------------------------------
#<23><><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>\<5C><><EFBFBD>R<EFBFBD><52><EFBFBD>e<EFBFBD><65><EFBFBD>c<EFBFBD><63><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
if($datnum > $FOX->{$GB->{FORM}->{bbs}}->{"BBS_CONTENTS_NUMBER"})
{
$topnum = $datnum - ($FOX->{$GB->{FORM}->{bbs}}->{"BBS_CONTENTS_NUMBER"} - 1);
}
else
{
$topnum = 2;
}
# <20>ŐV<C590><56><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>‚<EFBFBD><C282><EFBFBD><C28F><EFBFBD>
foreach(@content)
{
chomp; #<23><><EFBFBD>s<EFBFBD><73><EFBFBD>J<EFBFBD>b<EFBFBD>g
#<23>v<EFBFBD>f<EFBFBD><66><EFBFBD><EFBFBD><EFBFBD>H<EFBFBD><48><EFBFBD><EFBFBD>
($name,$mail,$time,$message,$subject) = split(/<>/);
unless($_)
{
$topnum++;
next;
}
# http:// <20><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD>C<EFBFBD>p<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD>ɂ<EFBFBD><C982><EFBFBD>
$message = &MakeHyperLink($GB, $message);
# <20><><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD>mailto:<3A>̃<EFBFBD><CC83><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
$mailto = &MakeMailto($GB, $mail, $name);
#BE:<3A>̃<EFBFBD><CC83><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#$time =~ s/BE:(\d+)-([^ ]*)/<a href="javascript:be($1);">?$2<\/a>/;
$time =~ s{BE:(\d+)-(.*)$}{<a href="javascript:be($1);">?$2</a>};
#<23>f<EFBFBD><66><EFBFBD>o<EFBFBD><6F>
&Put1Line(*SHTM, "<dt>$topnum <20><><EFBFBD>O<EFBFBD>F$mailto <20>F$time<dd>");
#<23>u<EFBFBD>ȗ<EFBFBD><C897><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>v<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
my @messx = split(/<br>/,$message); #<23><><EFBFBD>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD>s<EFBFBD>ŃJ<C583>b<EFBFBD>g
my $messy = @messx; #<23>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD>Z
# BBS_LINE_NUMBER<45><52><EFBFBD><EFBFBD><E891BD><EFBFBD>A<EFBFBD>ȗ<EFBFBD><C897>K<EFBFBD>v
if($messy > $FOX->{$GB->{FORM}->{bbs}}->{"BBS_LINE_NUMBER"})
{
my $messz = join('<br>',@messx[0 .. $FOX->{$GB->{FORM}->{bbs}}->{'BBS_LINE_NUMBER'}-1]);
&Put1Line(*SHTM, "$messz <br>");
&Put1Line(*SHTM, "<font color=\"$FOX->{$GB->{FORM}->{bbs}}->{'BBS_NAME_COLOR'}\"><3E>i<EFBFBD>ȗ<EFBFBD><C897><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>E<EFBFBD>E<EFBFBD>S<EFBFBD>Ă<EFBFBD><C482>ǂނɂ<DE82><a href=\"../test/read.cgi/$GB->{FORM}->{'bbs'}/$key/$topnum\" target=\"_blank\"><3E><><EFBFBD><EFBFBD></a><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>j</font><br>");
}
# <20>ȗ<EFBFBD><C897>s<EFBFBD>v
else
{
my $messz = join('<br>',@messx[0 .. $messy-1]);
&Put1Line(*SHTM, "$messz <br>");
}
$topnum++;
# <20>Ō<EFBFBD><C58C><EFBFBD><br><3E><><EFBFBD>o<EFBFBD>͂<EFBFBD><CD82>Ă<EFBFBD><C482><EFBFBD><EFBFBD>܂<EFBFBD>
&Put1Line(*SHTM, "<br>\n");
}
#-----------------------------------------------------------------------
# flock(SHTM,8);
close(SHTM);
# <20>p<EFBFBD>[<5B>~<7E>b<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͕s<CD95>v
#chmod(0666,$workfile);
}
#############################################################################
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>URI<52><49><EFBFBD>T<EFBFBD><54><EFBFBD>āA<C481>n<EFBFBD>C<EFBFBD>p<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD>ɂ<EFBFBD><C982><EFBFBD>
# <20><><EFBFBD><EFBFBD>: $GB, $message
# <20>߂<EFBFBD><DF82>l: <20><><EFBFBD>H<EFBFBD><48><EFBFBD><EFBFBD>$message
#############################################################################
sub MakeHyperLink
{
my ($GB, $message) = @_;
#https/ftp<74>͉<EFBFBD><CD89>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD>Ɋ֌W<D68C>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#https://<2F><>ftp://<2F>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD>Saborin<69>t<EFBFBD><74><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD>ڂ<EFBFBD>
if(!$GB->{SABORIN})
{
$message =~ s/(https|ftp)\:\/\/([\w|\:\!\#\$\%\=\&\-\^\`\\\|\@\~\[\{\]\}\;\+\*\,\.\?\/]+)/<a href="$1:\/\/$2" target="_blank">$1:\/\/$2<\/a>/g;
}
#http<74>̏ꍇ
if($message =~ /2ch\.net/ || $message =~ /bbspink\.com/)
{
# $message =~ s/http\:\/\/img\.2ch\.net/sssp\:\/\/img\.2ch\.net/g;
#2ch/bbspink<6E><6B><EFBFBD>͒<EFBFBD><CD92><EFBFBD><EFBFBD><EFBFBD>
$message =~ s/http\:\/\/([\w|\:\!\#\$\%\=\&\-\^\`\\\|\@\~\[\{\]\}\;\+\*\,\.\?\/]+)/<a href="http:\/\/$1" target="_blank">http:\/\/$1<\/a>/g;
}
elsif($message =~ /maido3\.com/)
{
#maido3.com<6F>͒<EFBFBD><CD92><EFBFBD><EFBFBD><EFBFBD>
$message =~ s/http\:\/\/([\w|\:\!\#\$\%\=\&\-\^\`\\\|\@\~\[\{\]\}\;\+\*\,\.\?\/]+)/<a href="http:\/\/$1" target="_blank">http:\/\/$1<\/a>/g;
}
else
{
#<23>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>N
if($ENV{'SERVER_NAME'} =~ /bbspink\.com/)
{
#bbspink<6E><6B>pinktower<65>o<EFBFBD>R
$message =~ s/http\:\/\/([\w|\:\!\#\$\%\=\&\-\^\`\\\|\@\~\[\{\]\}\;\+\*\,\.\?\/]+)/<a href="http:\/\/pinktower.com\/$1" target="_blank">http:\/\/$1<\/a>/g;
}
else
{
#2ch<63><68>ime.nu<6E>o<EFBFBD>R
$message =~ s/http\:\/\/([\w|\:\!\#\$\%\=\&\-\^\`\\\|\@\~\[\{\]\}\;\+\*\,\.\?\/]+)/<a href="http:\/\/ime.nu\/$1" target="_blank">http:\/\/$1<\/a>/g;
}
}
# sssp<73>̏<EFBFBD><CC8F><EFBFBD>(BE<42>̃A<CC83>C<EFBFBD>R<EFBFBD><52>)
$message =~ s/sssp\:\/\/img\.2ch\.net\/([\w|\:\!\#\$\%\=\&\-\^\`\\\|\@\~\[\{\]\}\;\+\*\,\.\?\/]+)/<img src="http:\/\/img\.2ch\.net\/$1">/g;
#$message =~ s/sssp/http/g;
return $message;
}
#############################################################################
# <20><><EFBFBD>O<EFBFBD>̂Ƃ<CC82><C682><EFBFBD><EFBFBD><EFBFBD>mailto:<3A><><EFBFBD><EFBFBD><EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD>: $GB, $mail: <20><><EFBFBD>[<5B><><EFBFBD>A<EFBFBD>h<EFBFBD><68><EFBFBD>X, $name: <20><><EFBFBD>O
# <20>߂<EFBFBD><DF82>l: <20>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD><4F><EFBFBD>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub MakeMailto
{
my ($GB, $mail, $name) = @_;
my $mailto = "";
#<23><><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>ɓ<EFBFBD><C993>͂<EFBFBD><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Amailto:<3A>̃<EFBFBD><CC83><EFBFBD><EFBFBD>N<EFBFBD>ɂ<EFBFBD><C982><EFBFBD>
if($mail ne "")
{
$mailto = "<a href=\"mailto:$mail \"><b>$name </b></a>";
}
else
{
$mailto = "<font color=$FOX->{$GB->{FORM}->{bbs}}->{'BBS_NAME_COLOR'}><b>$name </b></font>";
}
return $mailto;
}
#############################################################################
# <20>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ċK<C48B><4B><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
# IN: <20>Ȃ<EFBFBD>
# OUT: 0 <20>X<EFBFBD><58><EFBFBD>[ 1 <20>񐶒<EFBFBD>
#############################################################################
sub Check_SURETATE
{
my ($GB) = @_ ;
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
# if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
# <20><><EFBFBD>̓X<CD83><58><EFBFBD>[
if(!$FOX->{$GB->{FORM}->{bbs}}->{"BBS_BE_TYPE2"} && $GB->{MARU}) {return 0;}
# <20><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD><EFBFBD>p2<70>͈ȉ<CD88><C889>̔ƒX<C283><58><EFBFBD><EFBFBD><EFBFBD>ĕs<C495><73>
if($GB->{P22CH})
{
if($GB->{FORM}->{'bbs'} eq "slot") {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>̔‚<CC94>p2<70>ł̃X<CC83><58><EFBFBD><EFBFBD><EFBFBD>Ă͏o<CD8F><6F><EFBFBD>Ȃ<EFBFBD><C882>̂<EFBFBD><CC82>B");}
}
# <20><><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD><44>
#if($GB->{FORM}->{'bbs'} eq "news" || $GB->{FORM}->{'bbs'} eq "poverty")
#{
# if(!$GB->{P22CH} && $GB->{KABUU} && $GB->{BEpoints} > 3000) {return 0;}
#}
#else
#{
# if(!$GB->{P22CH} && $GB->{KABUU}) {return 0;}
#}
# <20>ȉ<EFBFBD><C889>A<EFBFBD><41><EFBFBD>L<EFBFBD>̗D<CC97><44><EFBFBD>[<5B>u<EFBFBD><75><EFBFBD>󂯂Ȃ<F382AF82><C882>
# Type2<65><32>be<62>K<EFBFBD>{
if($FOX->{$GB->{FORM}->{bbs}}->{"BBS_BE_TYPE2"})
{
if(!$GB->{isBE})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>FBe<42><65><EFBFBD>O<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(t)<29>B<a href=\"http://be.2ch.net/\">be.2ch.net</a>");
}
}
# $GB->{FORM}->{'MESSAGE'} = 'sssp://img.2ch.net/ico/' . $GB->{icon} .' <br>'. $GB->{FORM}->{'MESSAGE'} ;
# Type2<65><32>Be<42>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>ƃX<C683><58><EFBFBD><EFBFBD><EFBFBD>ĕs<C495><73>
if($FOX->{$GB->{FORM}->{bbs}}->{"BBS_BE_TYPE2"})
{
# 1000 <20>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD>ȏ<EFBFBD><C88F>Ȃ<EFBFBD><C882>Ƃ<EFBFBD><C682><EFBFBD>
my $pointlimit = 1000;
# news <20><><EFBFBD><EFBFBD> 6000 <20>|<7C>C<EFBFBD><43><EFBFBD>g
if($GB->{FORM}->{'bbs'} eq 'news') {$pointlimit = 18000;}
# if($GB->{FORM}->{'bbs'} eq "poverty") {$pointlimit = 3000;}
if($GB->{BEpoints} < $pointlimit)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>FBe<42>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B($pointlimit)");
}
}
# Type2<65>̓|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD>T<EFBFBD>Ώێ҂͖<D282><CD96><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɃX<C983><58><EFBFBD><EFBFBD><EFBFBD>ĉ”\
#<23>Ƃ肠<C682><E882A0><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>S<EFBFBD>‚ɂ<C282><C982>Ă݂<C482><DD82>̊<EFBFBD><CC8A>B
if($FOX->{$GB->{FORM}->{bbs}}->{"BBS_BE_TYPE2"})
{
# news <20><><EFBFBD><EFBFBD>
if($GB->{FORM}->{'bbs'} eq 'news')
{
# BE<42>u<EFBFBD>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD>g<EFBFBD>v<EFBFBD>ɂȂ<C982><C882><EFBFBD>ɂ̂ݓ<CC82><DD93>T<EFBFBD>𗘗p<F0979897>”\
if(!&Check_BEBlack($GB))
{
if($GB->{BELucky}) {return 0;}
}
}
}
# <20><><EFBFBD><EFBFBD><EFBFBD>z<EFBFBD>Ȃ<EFBFBD><C882>̂̓X<CD83><58><EFBFBD><EFBFBD><EFBFBD>ĕs<C495><73>
my $remo = $GB->{HOST29} ; #<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E9838A><EFBFBD>z
my $ipip = $ENV{REMOTE_ADDR} ;
if($remo eq $ipip) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>Ắ<C482><CD81><EFBFBD><EFBFBD>g<EFBFBD><67><EFBFBD>Əo<C68F><6F><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B");}
# <20>g<EFBFBD>тƌ<D182><C68C><EFBFBD>p2<70>ł́A<CD81><41><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD>^<5E><><EFBFBD><EFBFBD>
my $kiroku = "";
# if($GB->{KEITAI}) { $kiroku = "$GB->{HOST}($GB->{IDNOTANE})"; }
# elsif($GB->{KEITAIBROWSER})
# { $kiroku = "$GB->{HOST}($GB->{IDNOTANE})"; }
# elsif($GB->{P22CH}) { $kiroku = "$GB->{HOST}($GB->{IDNOTANE})"; }
# else { $kiroku = "$GB->{HOST}($GB->{MARU})"; }
if($GB->{KEITAI}) { $kiroku = "$GB->{IDNOTANE}"; }
elsif($GB->{KEITAIBROWSER})
{ $kiroku = "$GB->{HOST}($GB->{IDNOTANE})"; }
elsif($GB->{P22CH}) { $kiroku = "P2-$GB->{IDNOTANE}"; }
else { $kiroku = "$GB->{HOST}"; }
my $IP_number = 0;
if($GB->{IPv6})
{
use Net::IP;
my $ip = new Net::IP($ENV{REMOTE_ADDR});
$IP_number = $ip->intip();
# <20><>64bit<69>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>I<EFBFBD>ɂ<EFBFBD>48bit( >> 80 )<29>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
$IP_number = $IP_number >> 64;
}
else
{
# IP <20>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><E79094><EFBFBD><EFBFBD><EFBFBD>擾(<28>E<EFBFBD>́E)<29>j<EFBFBD><6A><EFBFBD>j<EFBFBD><6A> 65025 <20>ʂ<EFBFBD>
# $IP_number = eval { $ENV{REMOTE_ADDR} =~ s/^(\d+)\.(\d+)/return $1 * $2/e };
# $IP_number = eval { $ENV{REMOTE_ADDR} =~ s/^(\d+)\.(\d+)/return $2/e };
$IP_number = eval { $ENV{REMOTE_ADDR} =~ s/^(\d+)\.(\d+)/return ($1 % 4) * 256 + $2/e };
}
my $ripfile = "$GB->{WPATH}RIP.cgi";
# <20><><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>p<EFBFBD>o<EFBFBD>b<EFBFBD>t<EFBFBD>@<40>݂<EFBFBD><DD82><EFBFBD><EFBFBD>Ȃ́B
my @diff_list = ();
push @diff_list, sprintf qq|%s,%s,%d\n|, $IP_number, $kiroku, $GB->{FORM}->{key};
# <20><EFBFBD><E182BE><EFBFBD>܂ł<DC82>bbsd<73>ɖ₢<C996><E282A2><EFBFBD><EFBFBD><ED82B9>
if(IsSnowmanServer)
{
my $cmd = 'chkthr';
my $rcode = bbsd($GB->{FORM}->{bbs}, $cmd, 'RIP.cgi', $IP_number, $kiroku, 'dummy');
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
if(&bbsd_TimeoutCheck($GB, $rcode))
{
&bbsd_TimeoutError($GB, $cmd);
}
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>󕶎<EFBFBD><F395B68E><EFBFBD><EFBFBD>ȊO)<29>A<EFBFBD><41><EFBFBD><EFBFBD>
if($rcode ne '')
{
return 1;
}
}
# <20>ʏ<EFBFBD><CA8F>T<EFBFBD>[<5B>o<EFBFBD>ł̓<C582><CD83>X<EFBFBD>g<EFBFBD><67><EFBFBD>ǂ<EFBFBD><C782>Ń}<7D>b<EFBFBD>`<60><><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD>
else
{
# <20>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ċK<C48B><4B><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>g<EFBFBD>ǂݍ<C782><DD8D><EFBFBD>
local *Deny_list;
open Deny_list, '<', $ripfile; # $ripfile <20>̓O<CD83><4F><EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
my @Deny = <Deny_list>;
close Deny_list;
# IP <20>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD>ŏ<EFBFBD><C58F><EFBFBD>
# <20><><EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><E78C9F><EFBFBD>B<EFBFBD><42><EFBFBD>݂<EFBFBD><DD82><EFBFBD><EFBFBD><EFBFBD> 1 <20><><EFBFBD>Ԃ<EFBFBD><D482>Ă΂<C482><CE82>΂<EFBFBD><CE82>B
foreach (@Deny){
return 1 if $IP_number == (split /,/)[0];
}
# <20>X<EFBFBD><58><EFBFBD>[<5B>Ȃ̂ŃX<C583><58><EFBFBD><EFBFBD><EFBFBD>ċK<C48B><4B><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>g<EFBFBD>ɓo<C993>^
if (@diff_list) {
unshift @Deny, @diff_list;
splice @Deny, $FOX->{$GB->{FORM}->{bbs}}->{'BBS_THREAD_TATESUGI'};
# <20>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ċK<C48B><4B><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD>g<EFBFBD>̍X<CC8D>V
open Deny_list, '>', "$ripfile.tmp"; # <20><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD>o<EFBFBD><6F>
print Deny_list @Deny;
close Deny_list;
&TryRename("$ripfile.tmp", $ripfile); # <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɖ߂<C996>
}
}
return 0; # <20>X<EFBFBD><58><EFBFBD>[<5B><><EFBFBD><EFBFBD>
}
#############################################################################
# BE <20>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD>g<EFBFBD>ɓo<C993>^<5E><><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD>: <20>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD>g<EFBFBD>̃t<CC83>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>o<EFBFBD>^<5E><><EFBFBD><EFBFBD>
# <20>߂<EFBFBD><DF82>l: 0: <20>o<EFBFBD>^<5E><><EFBFBD><EFBFBD><EFBFBD>A1: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub Record_BEBlack
{
my ($recordfile, $dmdm) = @_;
# <20><EFBFBD><E182BE><EFBFBD>܃T<DC83>[<5B>o<EFBFBD>ł͉<C582><CD89><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD>(<28>Q<EFBFBD>Ǝ<EFBFBD><C68E>ɓo<C993>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E982BD>)
if(IsSnowmanServer) {return 0;}
if(open(REC, ">>$recordfile"))
{
print REC $dmdm, "\n";
close(REC);
}
else
{
return 1;
}
return 0;
}
#############################################################################
# BE <20>́u<CC81>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD>g<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>ւ̓o<CC93>^<5E>E<EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
# <20><EFBFBD><E182BE><EFBFBD>܂ł́Abbsd <20><>DB<44>ɋL<C98B>^<5E><><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD>: $GB
# <20>߂<EFBFBD><DF82>l: 0: <20>o<EFBFBD>^<5E>Ȃ<EFBFBD><C882>A1: <20>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>X<EFBFBD>g<EFBFBD>o<EFBFBD>^<5E><><EFBFBD><EFBFBD>
#############################################################################
sub Check_BEBlack
{
my ($GB) = @_;
my $dmdm = $GB->{FORM}->{'DMDM'}; # email address
my $recordfile = "./book/.RIP_BE.cgi";
my @badbe = ();
my $match = 0;
# <20>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD><67><EFBFBD>T<EFBFBD>̎<EFBFBD><CC8E>͋L<CD8B>^<5E><><EFBFBD>Ȃ<EFBFBD>
if($GB->{BELucky}) {return 0;}
# <20><EFBFBD><E182BE><EFBFBD>܂ł͂Ȃ<CD82><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# <20><EFBFBD><E182BE><EFBFBD>܂̎<DC82><CC8E>́A<CD81><41><EFBFBD>̉<EFBFBD><CC89>̃<EFBFBD><CC83>b<EFBFBD>N<EFBFBD>A<EFBFBD>b<EFBFBD>v<EFBFBD>ŐV<C590>K<EFBFBD>o<EFBFBD>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(!IsSnowmanServer)
{
# <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>A<EFBFBD>L<EFBFBD>^<5E><><EFBFBD>Ė߂<C496>
if(!(-e $recordfile))
{
&Record_BEBlack($recordfile, $dmdm);
return 0;
}
}
# <20>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>g<EFBFBD><67><EFBFBD>}<7D>b<EFBFBD>`<60><><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD>
# <20><EFBFBD><E182BE><EFBFBD>܂ł<DC82>bbsd<73>ɖ₢<C996><E282A2><EFBFBD><EFBFBD><ED82B9>
if(IsSnowmanServer)
{
my $errmsg = "";
my $statnum = 0;
my $cmd = 'chkid';
$errmsg = bbsd_db($GB->{FORM}->{'bbs'}, $cmd, 'beblack', $dmdm, 3600, 1, 1, 'dummy');
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD>[<5B><><EFBFBD><EFBFBD>
if(&bbsd_TimeoutCheck($GB, $errmsg))
{
return 0;
}
# <20><><EFBFBD>ʂ<EFBFBD><CA82>؂<EFBFBD><D882>o<EFBFBD><6F>
$statnum = (split(/,/, $errmsg))[0];
# <20>o<EFBFBD>^<5E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>E<EFBFBD>g
if($statnum != 0) {return 1;}
# <20>o<EFBFBD>^<5E><><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>΃X<CE83><58><EFBFBD>[<5B><><EFBFBD><EFBFBD>
return 0;
}
else
{
open(REC, $recordfile);
@badbe = <REC>;
close(REC);
foreach(@badbe)
{
chomp;
if($_ eq $dmdm)
{
$match = 1;
next;
}
}
}
# <20>}<7D>b<EFBFBD>`<60><><EFBFBD><EFBFBD><EFBFBD>
if($match) {return 1;}
# <20>}<7D>b<EFBFBD>`<60><><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD>A<EFBFBD>P<EFBFBD>ɋL<C98B>^<5E><><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>܂<EFBFBD>
&Record_BEBlack($recordfile, $dmdm);
return 0;
}
#############################################################################
# <20>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ăX<C483>s<EFBFBD>[<5B>h<EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N 0: ok 1:<3A>X<EFBFBD>s<EFBFBD>[<5B>h<EFBFBD>
#############################################################################
sub Check_Speed
{
my ($GB) = @_ ;
return 0;
#<23>P<EFBFBD>p<EFBFBD><70><EFBFBD>Ă݂<C482>
#<23><EFBFBD><E182BE><EFBFBD>܂̓X<CD83><58><EFBFBD>[(bbsd<73>ւ<EFBFBD>API<50>g<EFBFBD><67><EFBFBD>Ď<EFBFBD><C48E><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>Ǝv<C68E><76><EFBFBD><EFBFBD><EFBFBD>ǁA<C781><41><EFBFBD>͂<EFBFBD><CD82>Ȃ<EFBFBD>)
if(IsSnowmanServer) {return 0;}
# news4vip<69><70>news<77>ȊO<C88A>̓X<CD83><58><EFBFBD>[
#if($GB->{FORM}->{'bbs'} ne 'news4vip'
#&& $GB->{FORM}->{'bbs'} ne 'news') {return 0;}
# <20>Ǘ<EFBFBD><C797>l<EFBFBD>̎w<CC8E>߂ɂ<DF82><C982><EFBFBD>news4vip<69>̂̂<CC82><CC82>т<EFBFBD><D182><EFBFBD><EFBFBD><EFBFBD> -- 2005/11/18 by <20><>
if($GB->{FORM}->{'bbs'} ne 'news') {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($GB->{NOWTIME});
if($min < 3) {return 1;} # <20><><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD><4F><EFBFBD>܂ł̓X<CD83><58><EFBFBD><EFBFBD><EFBFBD>ĕs<C495><73>
my $vaio = "./book/.A_B_C.cgi";
if(!(-e $vaio)) # <20><><EFBFBD>߂ẴX<CC83><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
{
open(YAN1,">>$vaio");print YAN1 "1";close(YAN1);
return 0;
}
my $prmtime = (local $_=stat($vaio)) ? $_->mtime : 0;
my $keika = $GB->{NOWTIME} - $prmtime ;
$keika /= 60 ; # <20><><EFBFBD>ɂ<EFBFBD><C982><EFBFBD>
# <20>Ǘ<EFBFBD><C797>l<EFBFBD>̎w<CC8E><77><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD>A<EFBFBD>E<EFBFBD>g -- 2005/11/15 by <20><>
#if($GB->{FORM}->{'bbs'} ne 'news')
#{
# if($keika < 15) {return 1;} # N<><4E><EFBFBD>Ԃ͂<D482><CD82><EFBFBD>
#}
if($keika < 1) {return 1;} # N<><4E><EFBFBD>Ԃ͂<D482><CD82><EFBFBD>
open(YAN1,">>$vaio");print YAN1 "1";close(YAN1);
return 0; # <20>X<EFBFBD><58><EFBFBD>[<5B><><EFBFBD><EFBFBD>
}
#######################################################################
# <20>‚̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>l<EFBFBD>𒴂<EFBFBD><F092B482>Ă<EFBFBD><C482>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
#######################################################################
sub mumumuThreadNumExceededCheck
{
my ($GB) = @_;
my $num = 0;
my $exceed = 96; #<23><><EFBFBD>̐<EFBFBD><CC90>𒴂<EFBFBD><F092B482><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>͋֎~
my @dir;
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) { return 0; }
#<23>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD>𐧌<EFBFBD><F090A78C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>‚<EFBFBD><C282><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD>̓X<CD83><58><EFBFBD>[
if(!&IsThreadLimitIta($GB)) { return 0; }
# livejupiter<65><72>192<39>܂<EFBFBD>
if($GB->{FORM}->{'bbs'} eq 'livejupiter') { $exceed = 192; }
# livevenus<75><73>192<39>܂<EFBFBD>
if($GB->{FORM}->{'bbs'} eq 'livevenus') { $exceed = 192; }
# eq/eqplus<75><73>128<32>܂<EFBFBD>
if($GB->{FORM}->{'bbs'} eq 'eq') { $exceed = 128; }
if($GB->{FORM}->{'bbs'} eq 'eqplus') { $exceed = 128; }
## <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ##
# dat<61>̐<EFBFBD><CC90>𒲂ׂ<F092B282>
# <20><EFBFBD><E182BE><EFBFBD>܂ł<DC82>bbsd<73>ɖ₢<C996><E282A2><EFBFBD><EFBFBD><ED82B9>
if (IsSnowmanServer)
{
my $cmd = 'getndats';
$num = bbsd($GB->{FORM}->{'bbs'}, $cmd, 'dummy');
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
if(&bbsd_TimeoutCheck($GB, $num))
{
&bbsd_TimeoutError($GB, $cmd);
}
}
else
{
# dat<61>f<EFBFBD>B<EFBFBD><42><EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>J<EFBFBD><4A>(<28><><EFBFBD>߂Ȃ<DF82>-1)
if (!opendir(DIR, $GB->{DATPATH})) { return -1; }
# dat<61>f<EFBFBD>B<EFBFBD><42><EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>ǂݍ<C782><DD8D>݁A<DD81><41><EFBFBD>𒲂ׂ<F092B282>
@dir = readdir(DIR);
closedir(DIR);
# readdir() <20>́A"." ".." <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߁A
# <20>z<EFBFBD><7A><EFBFBD>̍ŏI<C58F>Y<EFBFBD><59><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD><6C>dat<61>̐<EFBFBD><CC90>ƂȂ<C682>
$num = $#dir - 1;
}
#<23><><EFBFBD>E<EFBFBD>l<EFBFBD><6C><EFBFBD>z<EFBFBD><7A><EFBFBD><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>^
if ($num > $exceed) {return 1;}
else {return 0;}
}
#############################################################################
# /i/index.html <20><><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD>
#############################################################################
sub MakeIndex4Keitai296
{
if($ENV{'SERVER_NAME'} =~ /bbspink\.com/) {return 1;}
if($ENV{'SERVER_NAME'} =~ /qb/) {return 1;}
if($ENV{'SERVER_NAME'} =~ /dso/) {return 1;}
return 0;
}
#############################################################################
# /i/index.html <20><><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD>
#############################################################################
sub MakeIndex4Keitai
{
my ($GB) = @_;
# qb<71>n<EFBFBD>Adso<73>Abbspink.com <20>ȊO<C88A>̃T<CC83>[<5B>o<EFBFBD>ł<EFBFBD> /i/index.html <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD>
if(!&MakeIndex4Keitai296) {return 0;}
# if(
# $ENV{'SERVER_NAME'} =~ /idol/ ||
# $ENV{'SERVER_NAME'} =~ /pie/ ||
# $ENV{'SERVER_NAME'} =~ /sakura01/ ||
# $ENV{'SERVER_NAME'} =~ /sakura02/ ||
# $ENV{'SERVER_NAME'} =~ /sakura03/)
# {
# return MakeIndex4KeitaiUla($GB);
# }
################<23>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
my $tag;
my $adadf = "./docomo_ad.txt" ;
if($ENV{'SERVER_NAME'} =~ /bbspink\.com/)
{
$adadf = "../HOHO-01.txt";
}
open(IMAD, $adadf);
$tag = <IMAD>;
close(IMAD);
################<23>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#i-mode<64>p<EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>J<EFBFBD><4A>
my $imodeindex = $GB->{IMODEPATH} . "index.html";
my $count=0;
my $ibase = "http://$ENV{'SERVER_NAME'}$ENV{'SCRIPT_NAME'}";
$ibase =~ s/read\.cgi/r\.i/;
$GB->{DEBUG} .= "IN MakeIndex4Keitai ($imodeindex)<br>";
unless(-e $GB->{IMODEPATH})
{
#umask(0);
mkdir($GB->{IMODEPATH},0777);
}
open(SUBW,">$imodeindex");
# flock(SUBW,2);
# <20>w<EFBFBD>b<EFBFBD>_
my @imodeindexhead = (
qq|<html lang="ja">|,
qq|<head>|,
qq|<base href=\"$ibase\">|,
qq|<title>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}</title>|,
qq|</head><body>|
);
&PutLines(*SUBW, @imodeindexhead);
if($ENV{'SERVER_NAME'} =~ /bbspink/)
{
my $UlaUrl = "http://same.ula.cc/test/p.so/$ENV{'SERVER_NAME'}/$GB->{FORM}->{'bbs'}/";
&Put1Line(*SUBW, "<a href=\"$UlaUrl\"> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B</a><br><br>");
&Put1Line(*SUBW, "<br><br><br><br><br><br><br><br><br><br>");
&Put1Line(*SUBW, "<br><br><br><br><br><br><br><br><br><br>");
}
# <20>L<EFBFBD><4C><EFBFBD>ƃ^<5E>C<EFBFBD>g<EFBFBD><67>
my @imodeindexbody = (
qq|$tag|,
qq|<hr>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}<hr>|
);
&PutLines(*SUBW, @imodeindexbody);
foreach(@{$GB->{NEWSUB}})
{
chomp;
/^(\w+)\.dat<>(.*)/;
my ($key, $value) = ($1, $2);
$count++;
&Put1Line(*SUBW, "$count: <a href=r.i/$GB->{FORM}->{'bbs'}/$key/i>$value</a><br>");
if($count == 30) { last; }
}
# <20><><EFBFBD><EFBFBD>(<28><><EFBFBD>̃y<CC83>[<5B>W<EFBFBD>A<EFBFBD>ɑ<EFBFBD><C991><EFBFBD>)(p.i<><69><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>N)
&Put1Line(*SUBW, "<hr><a href=p.i/$GB->{FORM}->{'bbs'}/30><3E><><EFBFBD><EFBFBD></a>");
# <20>t<EFBFBD>b<EFBFBD>^
&Put1Line(*SUBW, "<hr></body></html>"); #<hr>$IMAD
# flock(SUBW,8);
close(SUBW);
#<23>p<EFBFBD>[<5B>~<7E>b<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͕s<CD95>v
#chmod(0666, $imodeindex);
}
#############################################################################
# /i/index.html <20><><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD>
#############################################################################
sub MakeIndex4KeitaiUla
{
my ($GB) = @_;
my $UlaUrl = "http://same.ula.cc/test/p.so/$ENV{'SERVER_NAME'}/$GB->{FORM}->{'bbs'}/";
#i-mode<64>p<EFBFBD>e<EFBFBD>L<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD>J<EFBFBD><4A>
my $imodeindex = $GB->{IMODEPATH} . "index.html";
my $count=0;
my $ibase = "http://$ENV{'SERVER_NAME'}$ENV{'SCRIPT_NAME'}";
$ibase =~ s/read\.cgi/r\.i/;
unless(-e $GB->{IMODEPATH})
{
#umask(0);
mkdir($GB->{IMODEPATH},0777);
}
open(SUBW,">$imodeindex");
# flock(SUBW,2);
# <20>w<EFBFBD>b<EFBFBD>_
my @imodeindexhead = (
qq|<html lang="ja">|,
qq|<head>|,
qq|<base href=\"$ibase\">|,
qq|<title>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}</title>|,
qq|</head><body>|
);
&PutLines(*SUBW, @imodeindexhead);
&Put1Line(*SUBW, "<a href=\"$UlaUrl\"><3E>ړ]<5D><><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B</a></body></html>");
# <20>t<EFBFBD>b<EFBFBD>^
&Put1Line(*SUBW, "<hr></body></html>"); #<hr>$IMAD
# flock(SUBW,8);
close(SUBW);
#<23>p<EFBFBD>[<5B>~<7E>b<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͕s<CD95>v
#chmod(0666, $imodeindex);
}
#############################################################################
#
#############################################################################
sub Check_HardPosting
{ #<23>A<EFBFBD><41><EFBFBD>J<EFBFBD>L<EFBFBD>R
my ($GB) = @_ ;
#<23>V<EFBFBD>X<EFBFBD><58><EFBFBD>̏ꍇ<CC8F>X<EFBFBD><58><EFBFBD>[
if($GB->{NEWTHREAD}) {return 0;}
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
# if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
#ex<65>n<EFBFBD>̈ꕔ<CC88>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if($ENV{'SERVER_NAME'} =~ /ex19/) {return 0;}
if($ENV{'SERVER_NAME'} =~ /ex21/) {return 0;}
if($ENV{'SERVER_NAME'} =~ /ex22/) {return 0;}
if($ENV{'SERVER_NAME'} =~ /news23/) {return 0;}
if($ENV{'SERVER_NAME'} =~ /atlanta/) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if($GB->{MARU}) {return 0;}
#<23><><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD>҂̓X<CD83><58><EFBFBD>[
if($GB->{KABUU}) {return 0;}
#BE<42><45><EFBFBD>O<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>ƃX<C683><58><EFBFBD>[(<28>ɂȂ<C982><C882>Ă邯<C482>ǁA<C781>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>낤)
#if($GB->{isBE}) {return 0;}
#<23><><EFBFBD><EFBFBD>p2<70>̓X<CD83><58><EFBFBD>[
#if($GB->{P22CH}) {return 0;}
# if($GB->{FORM}->{bbs} ne 'news' && $GB->{MARU}) {return 0;}
my $kazu = $FOX->{$GB->{FORM}->{bbs}}->{"timecount"} - $FOX->{$GB->{FORM}->{bbs}}->{"timeclose"};
my $bun = length($GB->{FORM}->{'MESSAGE'});
my $mss = substr($GB->{FORM}->{'MESSAGE'}, 0, 16); $mss =~ s/</&lt;/g; $mss =~ s/>/&gt;/g;
# my $tane = $GB->{HOST4} ;
my $tane = $ENV{'REMOTE_ADDR'} ;
if($GB->{MARU}) {$tane = $GB->{MARU};}
if($GB->{P22CH}) {$tane = $GB->{IDNOTANE};}
if($GB->{KEITAI}) {$tane = $GB->{IDNOTANE};}
if($GB->{KEITAIBROWSER}) {$tane = $GB->{IDNOTANE};}
# <20><EFBFBD><E182BE><EFBFBD>܂ł́Abbsd<73>ɖ₢<C996><E282A2><EFBFBD><EFBFBD><ED82B9>
if(IsSnowmanServer)
{
my $cmd = 'chktimecount';
my $messcount = bbsd_db($GB->{FORM}->{bbs}, $cmd, $tane, 'dummy');
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD>Ȃ<EFBFBD><C882>Atimecout/timeclose<73>̓X<CD83><58><EFBFBD>[
if(&bbsd_TimeoutCheck($GB, $messcount))
{
return 0;
}
# <20>Ђ<EFBFBD><D082><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>́A<CD81>񐔂<EFBFBD><F1909482>Ԃ<EFBFBD><D482>ė<EFBFBD><C497><EFBFBD>
if($messcount != 0)
{
&DispError2($GB, "<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I", "<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>H<EFBFBD>H $messcount<6E><74>");
}
else
{
return 0;
}
}
# <20>ʏ<EFBFBD><CA8F>T<EFBFBD>[<5B>o<EFBFBD>ł́A<CD81>”<EFBFBD><C294><EFBFBD><EFBFBD>F
else
{
#<23>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݃`<60>F<EFBFBD>b<EFBFBD>N
my (@ao, $siro, @kiiro);
open(NJY,"$GB->{WPATH}aosirokiiro.cgi");
@ao = <NJY>;
@kiiro = @ao;
close(NJY);
my $aoN = @ao ;
my $messcount = 0;
foreach(@ao)
{
chomp;
my ($ridee, $namee, $valuee, $sizee, $mess) = split(/,/);
my $checkhost = $tane;
$checkhost =~ s/<.*>//;
if($valuee =~ /$checkhost/) {++$messcount;}
}
#if($GB->{FORM}->{bbs} eq 'news' && open(AAA,">> ./111.111"))
#{print AAA "###000###$FOX->{$GB->{FORM}->{bbs}}->{timecount},$FOX->{$GB->{FORM}->{bbs}}->{timeclose},[$messcount],$aoN,$tane,<$GB->{MARU}>\n";close(AAA);}
#if($GB->{MARU}) {$messcount -= 2;}
if($messcount >= $FOX->{$GB->{FORM}->{bbs}}->{"timeclose"})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>H<EFBFBD>H $messcount<6E><74>");
}
$siro = "$GB->{FORM}->{'key'},$GB->{FORM}->{'time'},$tane,$bun,$messcount\n";
unshift(@kiiro, $siro);
@ao = @kiiro[0..$FOX->{$GB->{FORM}->{bbs}}->{'timecount'}-1];
if(open(LAST,">$GB->{WPATH}aosirokiiro.cgi"))
{
print LAST @ao;
close(LAST);
}
return 0;
}
}
#######################################################################
# BBM
#######################################################################
sub BBMcheck
{
my ($GB) = @_;
if(&KiseiOFF($GB)) {return 0;}
if(!&GoodKeitai($GB))
{
$GB->{BURNEDKEITAI} = 1;
#<23>ȉ<EFBFBD><C889>̔‚̓X<CD83><58><EFBFBD>[
if($GB->{FORM}->{'bbs'} eq "accuse") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "goki") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
#operate<74>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
# if($GB->{FORM}->{'bbs'} ne "operate")
# {
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>E<EFBFBD>B<EFBFBD><42><EFBFBD>X<EFBFBD>x<EFBFBD><78><EFBFBD>B<EFBFBD>B<EFBFBD>B<br>$GB->{IDNOTANE} <20>͂Q<CD82><51><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˂<EFBFBD><CB82>ɂ͏<C982><CD8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B");
# }
#<23>Ă<EFBFBD><C482><EFBFBD><EFBFBD>}<7D>[<5B>N<EFBFBD><4E><EFBFBD>‚<EFBFBD><C282><EFBFBD>(<28><><EFBFBD>A<EFBFBD><41><EFBFBD>͏<EFBFBD><CD8F>őS<C591><53><EFBFBD>G<EFBFBD><47><EFBFBD>[<5B>Ȃ̂łǂ<C582><C782><EFBFBD><EFBFBD>o<EFBFBD>Ȃ<EFBFBD>)
if($GB->{BURNEDKEITAI})
{
$GB->{FORM}->{'FROM'} = ' </b>[<5B><>.i!]<b> ' . $GB->{FORM}->{'FROM'};
}
}
return 0 ;
}
#######################################################################
# <20>u<EFBFBD>ǂ<EFBFBD><C782>g<EFBFBD>сv<D181><76><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ׂ<EFBFBD>(BBM<42><EFBFBD><E282A2><EFBFBD><EFBFBD><ED82B9>)
#######################################################################
sub GoodKeitai
{
my ($GB) = @_;
my $career = "";
my $newthread = "";
my $idnotane = "";
my $AHOST = "";
my $SPAM = "";
#<23>ȉ<EFBFBD><C889>̔‚̓X<CD83><58><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
# if($GB->{FORM}->{'bbs'} eq "campus") {return 1;}
# <20><><EFBFBD><EFBFBD>BBM<42><4D><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>g<EFBFBD>b<EFBFBD>v<EFBFBD>y<EFBFBD>[<5B>W<EFBFBD>ł킩<C582><ED82A9><EFBFBD><EFBFBD><E682A4>
$GB->{version} .= " +BBM";
#<23>g<EFBFBD>шȊO<C88A>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if(!($GB->{KEITAI} || $GB->{KEITAIBROWSER})) {return 1;}
#ID<49>̎<EFBFBD>(<28>ŗL<C597>ԍ<EFBFBD>)<29><>DNS<4E>N<EFBFBD>G<EFBFBD><47><EFBFBD>p<EFBFBD>ɕϊ<C995>
$idnotane = $GB->{IDNOTANE};
$idnotane =~ s/\_/\-/g;
# DoCoMo<4D>ł́u<CD81><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD><74><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD><76><EFBFBD>t<EFBFBD><74><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>BBM<42><4D><EFBFBD>Ă<EFBFBD>
if(length($idnotane) eq 7 && ($GB->{KEITAI} || $GB->{KEITAIBROWSER}))
{
$idnotane = &MakeImodeIDforDNS($idnotane);
}
#<23>g<EFBFBD>уL<D183><4C><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>ƂɕύX
if ($GB->{KEITAI} eq 1) { $career = "docomo"; }
elsif($GB->{KEITAI} eq 2) { $career = "au"; }
elsif($GB->{KEITAI} eq 3) { $career = "vodafone"; }
elsif($GB->{KEITAI} eq 5) { $career = "emobile"; }
else { $career = "others"; }
#<23>V<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>̔<EFBFBD><CC94><EFBFBD>
if($GB->{FORM}->{'subject'} ne "") { $newthread = "b"; }
else { $newthread = "a"; }
# $AHOST = "$GB->{NOWTIME}.$$.$idnotane.A.B.C.D.X.bbm.2ch.net.";
$AHOST = "$GB->{NOWTIME}.$$.c.$GB->{FORM}->{'bbs'}.$GB->{FORM}->{'key'}.$newthread.B.C.D.$career.$idnotane.bbm.2ch.net.";
#BBM<42>ُ펞<D98F>͂<EFBFBD><CD82><EFBFBD><EFBFBD>[
if(!$FOX->{BBM}) {return 1;}
#BBM<42>ւ̖₢<CC96><E282A2><EFBFBD>
$SPAM = &foxDNSquery2($AHOST);
#$SPAM = "127.0.0.0";
#<23>Ă<EFBFBD><C482><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<C281><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82>߁[
if($SPAM eq "127.0.0.2") {return 0;}
#BBM<42><4D><EFBFBD>~<7E>܂<EFBFBD><DC82>Ă<EFBFBD><C482>܂<EFBFBD><DC82><EFBFBD><EFBFBD><EFBFBD>
elsif($SPAM eq "127.0.0.0") { $FOX->{BBM} = 0; }
#<23><><EFBFBD><EFBFBD><EFBFBD>܂ŗ<DC82><C597><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͓̂<CC82><CD93>ɖ<EFBFBD><C996><EFBFBD><EFBFBD>Ȃ<EFBFBD>
return 1;
}
#############################################################################
#
#############################################################################
sub BBXcheck
{
my ($GB) = @_ ;
#IsKoukoku<6B><75><EFBFBD>s<EFBFBD>t<EFBFBD><74><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD>Z<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482>
#(<28><><EFBFBD>ʃT<CA83>[<5B>o<EFBFBD><6F>LA<4C><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29>̓X<CD83><58><EFBFBD>[
if(!$FOX->{ISKOUKOKU}) {return 0;}
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
if($GB->{FORM}->{'bbs'} eq "sec2chd") {return 0;}
if($GB->{FORM}->{'bbs'} eq "sec2ch") {return 0;}
if($GB->{FORM}->{'bbs'} eq "newservant"){return 0;}
if($GB->{FORM}->{'bbs'} eq "ad") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "news") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "news4vip") {return 0;}
# IPv6<76>‹<EFBFBD><C28B>ł<EFBFBD>BBX<42><58>(<28>܂<EFBFBD>)<29>Ȃ<EFBFBD>
if($GB->{IPv6}) {return 0;}
#IsKoukoku<6B><75><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD>(<28>X<EFBFBD>L<EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD>)<29>T<EFBFBD>[<5B>o<EFBFBD><6F><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD>́A
#bbs-entry.cgi<67><69>mumumuIsIsKoukoku()<29>ł܂Ƃ߂Ă<DF82><C482><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD>
#<23><><EFBFBD>Ńg<C583><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>̓X<CD83><58><EFBFBD>[
# if($GB->{CAP} && !$GB->{TBACK}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
#if($GB->{MARU}) {return 0;}
#<23>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?
my $NG_word = &IsKoukoku($GB) ;
if($NG_word eq '') {return 0;}
# <20><><EFBFBD><EFBFBD><EA82BC><EFBFBD>̒l<CC92><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>́A<CD81>ȉ<EFBFBD><C889>̂悤<CC82>Ƀf<C983><66><EFBFBD>t<EFBFBD>@<40><><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>΁E<CE81>E<EFBFBD>E
my @NG_word_status = @{$NG_word};
# <20><><EFBFBD>̂悤<CC82>ɂ<EFBFBD><C982><EFBFBD><EA82BC><EFBFBD>ɒl<C992><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>B
# $NG_word_status[0] <20>ɂ͋K<CD8B><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> [Shift_JIS]
# $NG_word_status[1] <20>ɂ<EFBFBD> MD5 <20>l
# $NG_word_status[2] <20>ɂ<EFBFBD> <20>t<EFBFBD><74><EFBFBD>O
# BBR <20>֑<EFBFBD><D691>M<EFBFBD>iNG<4E><47><EFBFBD>[<5B>h<EFBFBD>ǐՑ<C790><D591>u<EFBFBD>H<EFBFBD>j @2005/01/22 by <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD><4C><EFBFBD><EFBFBD>
# MD5-<2D>Y<EFBFBD><59><EFBFBD><EFBFBD><EFBFBD>[<5B>h<EFBFBD>ɕt<C995><74><EFBFBD><EFBFBD><EFBFBD>ꂽmd5<64>l.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD><74><EFBFBD>O.<2E><><EFBFBD>e<EFBFBD>҂<EFBFBD>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X.<2E>T<EFBFBD>u<EFBFBD>X<EFBFBD>N<EFBFBD><4E><EFBFBD>C<EFBFBD>o.<2E>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>ԍ<EFBFBD>.<2E>–<EFBFBD>.<2E>I<EFBFBD><49>.bbr.2ch.net.
# <20>Ԃ<EFBFBD><D482>l<EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǂ<EFBFBD>TimeOut<75><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>v<EFBFBD><EFBFBD><E882BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Net::DNS<4E><53><EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E682A2><EFBFBD>ȁH
my $SubNo = $GB->{IDNOTANE}; # _ <20><> - <20>ϊ<EFBFBD><CF8A><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><E182A9><EFBFBD>Ȃ̂ŁB
$SubNo =~ tr/_/-/;
# docomo<6D>g<EFBFBD>тł́u<CD81><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD><74><EFBFBD>O<EFBFBD>v<EFBFBD><76><EFBFBD>‚<EFBFBD><C282>Ă<EFBFBD><C482><EFBFBD>BBR/BBN<42><4E><EFBFBD>Ă<EFBFBD>
if(length($SubNo) eq 7 && ($GB->{KEITAI} || $GB->{KEITAIBROWSER}))
{
$SubNo = &MakeImodeIDforDNS($SubNo);
}
my $CHOST =
sprintf qq|MD5-%s.%d.%s.%s.%d.%s.%s.bbr.2ch.net.|,
$NG_word_status[1], # MD5<44>l
$NG_word_status[2] ? 1 : 0, # <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD><74><EFBFBD>O<EFBFBD>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD>ۂ<EFBFBD><DB82>ƃC<C683><43><EFBFBD><EFBFBD><EFBFBD>Ȃ̂<C882>
$ENV{REMOTE_ADDR}, # IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD>i<EFBFBD>Ђ<EFBFBD><D082><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԃ<EFBFBD><D482>Ȃ<EFBFBD><C882>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃɂ<C682><C982><EFBFBD><E682A4><EFBFBD>j
$SubNo !~ /\./ ? $SubNo : '0', # <20>T<EFBFBD>u<EFBFBD>X<EFBFBD>N<EFBFBD><4E><EFBFBD>C<EFBFBD>o<EFBFBD><6F><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>݂<EFBFBD><DD82><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>ɂ<EFBFBD> '0' <20>ɂ<EFBFBD><C982>Ă<EFBFBD><C482><EFBFBD><EFBFBD>B
$GB->{FORM}->{'key'}, # <20>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>ԍ<EFBFBD>
$GB->{FORM}->{'bbs'}, # <20>–<EFBFBD><C296>i<EFBFBD>f<EFBFBD>B<EFBFBD><42><EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>j
$ENV{SERVER_NAME}, # <20>I<EFBFBD><49>(FQDN)
;
if($FOX->{BBR})
{
$FOX->{BBR} = &foxDNSquery($CHOST, $FOX->{DNSSERVER}->{BBR});
}
# <20><><EFBFBD>̂Ƃ<CC82><C682>ɁE<C981>E<EFBFBD>E
if ($NG_word_status[2] == 1) # <20>t<EFBFBD><74><EFBFBD>O<EFBFBD><4F> 1 <20>̂Ƃ<CC82><C682>́u<CD81><75><EFBFBD><EFBFBD><EFBFBD>ςƒt<C283><74><EFBFBD>O<EFBFBD>v<EFBFBD>Ȃ̂ł<CC82><C582>̎<EFBFBD><CC8E>̏<EFBFBD><CC8F><EFBFBD><EFBFBD>B
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă܂<C482><DC82><EFBFBD><EFBFBD>B");
}
# DNS<4E><EFBFBD><E282A2><EFBFBD><EFBFBD><ED82B9><EFBFBD><EFBFBD>
my $HHH = "";
my $AHOST = "";
if($GB->{KEITAI} || $GB->{KEITAIBROWSER} || $GB->{P22CH})
{
# DNS<4E><53><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD>[
if(!$FOX->{BBN}) {return 0;}
# <20>g<EFBFBD>т܂<D182><DC82>͌<EFBFBD><CD8C><EFBFBD>p2: bbn.2ch.net
# <20><><EFBFBD><EFBFBD><EFBFBD>ɗ<EFBFBD><C997><EFBFBD><EFBFBD>܂łɁA$SubNo<4E><6F> _ => - <20>ϊ<EFBFBD><CF8A>ς݂̏<DD82><CC8F>񂪓<EFBFBD><F182AA93><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
# BBM<42>Ɠ<EFBFBD><C693><EFBFBD><EFBFBD>t<EFBFBD>H<EFBFBD>[<5B>}<7D>b<EFBFBD>g<EFBFBD>Ŗ₢<C596><E282A2><EFBFBD><EFBFBD>̎<EFBFBD><CC8E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
$HHH = "$GB->{NOWTIME}.$$.c.$GB->{FORM}->{'bbs'}.$GB->{FORM}->{'key'}.$GB->{NEWTHREAD}.B.C.D.$GB->{KEITAI}.$SubNo";
$AHOST = "$HHH.bbn.2ch.net.";
}
else
{
# DNS<4E><53><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD>[
if(!$FOX->{BBX}) {return 0;}
# <20>g<EFBFBD>шȊO: bbx.2ch.net
# <20><><EFBFBD>̂Ƃ<CC82><C682><EFBFBD>AIR-EDGE PHONE<4E><45><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
$HHH = $ENV{REMOTE_ADDR} ;
$HHH =~ s/(\d+)\.(\d+)\.(\d+)\.(\d+)/$4.$3.$2.$1/;
$AHOST = "$HHH.bbx.2ch.net.";
}
# DNS<4E><EFBFBD><E282A2><EFBFBD><EFBFBD><ED9594><EFBFBD>́A<CD81>g<EFBFBD><67>/PC<50><43><EFBFBD><EFBFBD>
my $SPAM = &foxDNSquery2($AHOST);
# my $SPAM = '127.0.0.0';
# DNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>Ȍ<EFBFBD><C88C>D<EFBFBD><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD>DNS<4E><EFBFBD><E282A2><EFBFBD><EFBFBD><ED82B9><EFBFBD><EFBFBD><EFBFBD>~
if($SPAM eq "127.0.0.0")
{
if($GB->{KEITAI} || $GB->{KEITAIBROWSER} || $GB->{P22CH})
{
$FOX->{BBN} = 0;
}
else
{
$FOX->{BBX} = 0;
}
return 0;
}
# BBX/BBN<42>o<EFBFBD>^<5E><><EFBFBD><EFBFBD><EFBFBD>̏ꍇ
elsif ($SPAM eq "127.0.0.2")
{
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime($GB->{NOWTIME});
$mon ++ ;
my $yakinFile = "../_bg/logs/Rock54-$year-$mon-$mday.txt" ;
open(YAN1,">>$yakinFile");print YAN1 "$GB->{DATE}\t$ENV{REMOTE_ADDR}\t$GB->{HOST4}\t$GB->{IDNOTANE}\t$NG_word_status[0]\n";close(YAN1);
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>b<EFBFBD>N<EFBFBD>͐l<CD90><6C><EFBFBD><EFBFBD><EFBFBD>B");
&endhtml($GB);
}
return 0;
}
#############################################################################
#㩁A㩁A㩁A㩁A㩂<41>
#<23><><EFBFBD>́F
#IsKoukoku(<28>Ώە<CE8F><DB95><EFBFBD><EFBFBD><EFBFBD>[Shift_JIS],Rock54<35>̃t<CC83>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>)<29>@<40><><EFBFBD><EFBFBD><EFBFBD>͖<EFBFBD><CD96><EFBFBD><EFBFBD>Bsub <20>Œ<EFBFBD><C592>`<60><><EFBFBD>B
#<23>Ԃ茌<D482>Ԃ<EFBFBD><D482><EFBFBD><EFBFBD>[<5B>F
#OK <20>Ȃ<EFBFBD><C882><EFBFBD> <20>󕶎<EFBFBD><F395B68E><EFBFBD>(<28>U)
#NG <20>Ȃ<EFBFBD><C882><EFBFBD> <20>i<EFBFBD>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>^)[Shift_JIS], MD5<44>l, <20>t<EFBFBD><74><EFBFBD>O<EFBFBD>j<EFBFBD>̃<EFBFBD><CC83>X<EFBFBD>g<EFBFBD>ւ̃<D682><CC83>t<EFBFBD>@<40><><EFBFBD><EFBFBD><EFBFBD>X
sub IsKoukoku
{
my ($GB) = @_;
my $In_Strings = $GB->{FORM}->{'MESSAGE'}; # <20><><EFBFBD><EFBFBD><EFBFBD>̂ő<CC82><C591><EFBFBD>
#if($ENV{SERVER_NAME} =~ /bbspink.com/)
#{
$In_Strings .= $GB->{FORM}->{'mail'} ;
$In_Strings .= $GB->{FORM}->{'FROM'} ;
$In_Strings .= $GB->{FORM}->{'subject'} ;
#}
my $ccpp = &CoPiPe($GB,$In_Strings) ;#<23>R<EFBFBD>s<EFBFBD>y<EFBFBD>𔻒肵<F094BB92><EFBFBD>ƁA<C681>A<EFBFBD>A
if($ccpp) {return $ccpp ;}
# <20><><EFBFBD><EFBFBD>Rock54/54M(IsKoukoku)<29><><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>g<EFBFBD>b<EFBFBD>v<EFBFBD>y<EFBFBD>[<5B>W<EFBFBD>ł킩<C582><ED82A9><EFBFBD><EFBFBD><E682A4>
$GB->{version} .= " +Rock54/54M";
# <20>ǂݍ<C782><DD8D>ށB<DE81>B<EFBFBD>B
# my @Rock_word = @FOX_Ro54; # <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̖<EFBFBD><CC96>ʂȂ̂ŏȗ<C58F><C897><EFBFBD><EFBFBD>Ă݂܂<DD82><DC82><EFBFBD><EFBFBD>B
# <20>ł<EFBFBD> NG <20><><EFBFBD>[<5B>h<EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD>B
foreach my $NG_word_ref (@FOX_Ro54)
{
my $NG_word = $NG_word_ref->[0]; # <20><><EFBFBD>t<EFBFBD>@<40><><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>o<EFBFBD><6F><EFBFBD>B
if (my $matched = $In_Strings =~ $NG_word ? $& : undef) {
return [$matched, @$NG_word_ref[1 .. $#$NG_word_ref]];
} # <20><><EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD><EFBFBD>NG<4E><47><EFBFBD>[<5B>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>̓E<CC93>o<EFBFBD>ƃ<EFBFBD><C683>t<EFBFBD>@<40><><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD>Ԃ<EFBFBD><D482>B
# <20>s<EFBFBD><73> NG <20><><EFBFBD>[<5B>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>΃X<CE83>L<EFBFBD>b<EFBFBD>v
}
return '';
}
sub CoPiPe
{
my ($GB,$mes) = @_ ;
#return '' ;
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if($ENV{'SERVER_NAME'} =~ /ex/) {return '';}
if($GB->{FORM}->{'bbs'} ne "news") {return '';}
my @mm = split(/<br>/,$mes) ;
$mm[1] =~ s/ |<7C>@//g ;
$mm[2] =~ s/ |<7C>@//g ;
if(length($mm[1]) > 6 && $mm[1] eq $mm[2]) {return $mm[1] ;}
#if(length($mes) < 512) {return '';}
if($mes =~ /<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';}
if($mes =~ /<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';}
if($mes =~ /<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';}
if($mes =~ /<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';}
if($mes =~ /<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';}
if($mes =~ /<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';}
if($mes =~ /<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';}
if($mes =~ /<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';}
if($mes =~ /\|\|\|\|\|/) {return '|||||';}
if($mes =~ /<2F>^<5E>_/) {return '<27>^<5E>_';}
if($mes =~ /<2F>i<EFBFBD>K<EFBFBD>j/) {return '<27>i<EFBFBD>K<EFBFBD>j';}
if($mes =~ /<2F>c/) {return '<27>c';}
if($mes =~ /<2F>i<EFBFBD><69><EFBFBD>j/) {return '<27>i<EFBFBD><69><EFBFBD>j';}
if($mes =~ /<2F><><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD>';}
if($mes =~ /<2F><><EFBFBD><EFBFBD>/) {return '<27><><EFBFBD><EFBFBD>';}
if($mes =~ /iiiiiiiii/) {return 'iiiiiiiii';}
if($mes =~ /:::::/) {return ':::::';}
my $aa = &IsAA($GB,$mes) ;
if($aa) {return 'AA' ;}
return '' ;
}
sub IsAA
{
my ($GB,$mes) = @_ ;
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
my $bbb = "<22>@ <20>@ <20>@" ;
my $nnn = ($mes =~ s/\Q$bbb\E/$bbb/g);
if($nnn > 1) {return 1;}
return 0 ;
}
#############################################################################
#
#############################################################################
sub checkProxyList
{
my ($GB) = @_ ;
my $RADDR = $ENV{'REMOTE_ADDR'} ;
#<23>g<EFBFBD>т<EFBFBD>BBQ<42>X<EFBFBD><58><EFBFBD>[(BBM<42>ł<EFBFBD><C582><EFBFBD>)
if($GB->{KEITAI}) {return 0;}
if($GB->{KEITAIBROWSER}) {return 0;}
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
#if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
# <20><><EFBFBD><EFBFBD>p2<70>ł́Ap2-client-ip: <20><><EFBFBD>Q<EFBFBD>Ƃ<EFBFBD><C682><EFBFBD>
# p2-client-ip: <20><>foxSetHost<73>ŁA$GB->{HOST2} <20>ɓ<EFBFBD><C993><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
if($GB->{P22CH})
{
$RADDR = $GB->{HOST2};
}
$RADDR =~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/ ;
my $query_addr = "$4.$3.$2.$1.niku.2ch.net." ;
if(!$FOX->{BBQ}) {return 0;}
my $SPAM = &foxDNSquery2($query_addr) ;
if($SPAM eq '127.0.0.2') {return 1;}
if($SPAM eq "127.0.0.0") {$FOX->{BBQ} = 0;}
return 0 ;
}
#==================================================
#<23>@<40>z<EFBFBD>X<EFBFBD>g<EFBFBD>̔<EFBFBD><CC94><EFBFBD>
#==================================================
sub foxSetHost
{
my ($GB) = @_ ;
$GB->{KEITAI} = 0 ;
$GB->{KEITAIBROWSER} = 0 ;
# IPv6<76>ł͐V<CD90>݂̊֐<CC8A><D690><EFBFBD><EFBFBD>g<EFBFBD><67>
if($GB->{IPv6})
{
$GB->{HOST} = &GetRemoteHostName($ENV{'REMOTE_ADDR'});
$GB->{HOST29} = $GB->{HOST};
}
else
{
# $GB->{HOST} = $ENV{'REMOTE_ADDR'};
$GB->{HOST} = gethostbyaddr(pack('C4',split(/\./, $ENV{'REMOTE_ADDR'})), 2) || $ENV{'REMOTE_ADDR'};
$GB->{HOST29} = $GB->{HOST} ;
}
# <20><><EFBFBD><EFBFBD><EFBFBD>ۂ<EFBFBD><DB82><EFBFBD><EFBFBD>̔<EFBFBD><CC94><EFBFBD>
# <20>Ƃ肠<C682><E882A0><EFBFBD><EFBFBD>IPv6<76>̎<EFBFBD><CC8E>̓X<CD83>L<EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>Ƃ<EFBFBD><C682>āA<C481><41><EFBFBD>Ƃōl<C58D><6C><EFBFBD><EFBFBD>A<EFBFBD>A<EFBFBD>A<EFBFBD>B
if($GB->{IPv6})
{
$GB->{HOST2} = '';
}
else
{
my @prox;
push(@prox, $ENV{"HTTP_$_"} || '') foreach (qw/X_FORWARDED_FOR FORWARDED VIA/);
my $prox = join(' ', @prox);
if ($prox)
{
my ($xxx, $yyy) = '';
$xxx = $& if ($prox =~ /\d+\.\d+\.\d+\.\d+/);
$yyy = $1 if ($prox =~ /[\s\/]([\w]+\.[\w\.]+):\d/);
if($xxx)
{
$GB->{HOST2} = gethostbyaddr(pack('C4',split(/\./, $xxx)), 2) || $yyy || $xxx;
}
else
{
$GB->{HOST2} = $yyy || $xxx;
}
}
else
{
$GB->{HOST2} = '';
}
}
# AIR-EDGE MEGAPLUS<55><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>AHTTP_CLIENT_IP<49><50><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>A
# <20>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>ē<EFBFBD><C493><EFBFBD><EC82B3><EFBFBD><EFBFBD>
#if (&mumumuIsIP4MegaPlus($ENV{'REMOTE_ADDR'}))
#{
# my $xxx = $ENV{'HTTP_CLIENT_IP'};
# #&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>FMegaPlus");
# $GB->{HOST2} = $xxx if ($xxx);
#}
# HTTP_CLIENT_IP (= Client_IP:)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A
# <20><EFBFBD><EA97A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82><EFBFBD><EFBFBD>f<EFBFBD><EFBFBD><E882B7>
if ($ENV{'HTTP_CLIENT_IP'})
{
my $xxx = $ENV{'HTTP_CLIENT_IP'};
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>ςȏ<CF82><C88F>񂪑<EFBFBD><F182AA91><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ė<EFBFBD><C497>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B<br>Client_IP: $xxx");
}
$GB->{HOST3} = $ENV{'REMOTE_ADDR'};
$GB->{HOST4} = $GB->{HOST};
$GB->{HOST} .= "<$GB->{HOST2}>" if ($GB->{HOST2});
$GB->{HOST5} = $GB->{HOST} ; #<23><><EFBFBD>O<EFBFBD>L<EFBFBD>^<5E>p(i<><69><EFBFBD>[<5B>h<EFBFBD>AEZweb<65>A<EFBFBD>{<7B>[<5B>_<EFBFBD>t<EFBFBD>H<EFBFBD><48><EFBFBD>I<EFBFBD><49><EFBFBD>C<EFBFBD>u<EFBFBD>͒[<5B><><EFBFBD>ŗL<C597><4C><EFBFBD>񂠂<EFBFBD>)
$GB->{IDNOTANE}=$ENV{'REMOTE_ADDR'};
# <20>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>̏ꍇ<CC8F>̏<EFBFBD><CC8F><EFBFBD>
&mumumuSetHost4KeitaiBrowser($GB);
# <20><><EFBFBD><EFBFBD>p2
if(&mumumuIsIP4P22ch($GB->{HOST3}))
{
if($ENV{HTTP_USER_AGENT} =~ /p2-user: (\d+)/)
{
$GB->{HOST5} .= "($1)";
$GB->{IDNOTANE} = $1;
$GB->{P22CH} = 1;
}
else
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD><EFBFBD>p2<70><32><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93>e<EFBFBD>ł<EFBFBD>p2-user<65>𑗐M<F0919790><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B");
}
# p2-client-ip: <20><><EFBFBD><EFBFBD><EFBFBD>ڑ<EFBFBD><DA91>z<EFBFBD>X<EFBFBD>g<EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD> $GB->{HOST2} <20>ɓ<EFBFBD><C993><EFBFBD>
if($ENV{HTTP_USER_AGENT} =~ /p2-client-ip: (\d+)\.(\d+)\.(\d+)\.(\d+)/)
{
$GB->{HOST2} = $1 . "." . $2 . "." . $3 . "." . $4;
# <20><><EFBFBD><EFBFBD><EFBFBD>[<5B>g<EFBFBD>z<EFBFBD>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>L<EFBFBD>^<5E><><EFBFBD><EFBFBD>(<28>K<EFBFBD><4B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E682A4>)
#my $p2host;
#$p2host = gethostbyaddr(pack('C4',split(/\./, $GB->{HOST2})), 2) || $GB->{HOST2};
#$GB->{HOST5} .= "($p2host)";
}
else
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD><EFBFBD>p2<70><32><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93>e<EFBFBD>ł<EFBFBD>p2-client-ip<69>𑗐M<F0919790><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B");
}
}
# i<><69><EFBFBD>[<5B>h
if(&mumumuIsIP4IMode($GB->{HOST3}))
{
# i<><69><EFBFBD>[<5B>hID<49>Ɉڍs<DA8D>A2008/6/1 by mumumu
#if($ENV{'HTTP_USER_AGENT'} =~ /ser([\w]{11,})/)
#{
# $GB->{HOST5} .= "(" . $ENV{'HTTP_USER_AGENT'} .")";
# $GB->{IDNOTANE} = $1;
# $GB->{KEITAI} = 1;
#}
#else
#{
# &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>[<5B><><EFBFBD>ŗL<C597><4C><EFBFBD><EFBFBD><EFBFBD>𑗐M<F0919790><4D><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B");
#}
if($ENV{HTTP_X_DCMGUID} ne '')
{
$GB->{HOST5} .= "(" . $ENV{'HTTP_X_DCMGUID'} .")";
$GB->{IDNOTANE} = $ENV{'HTTP_X_DCMGUID'};
$GB->{KEITAI} = 1;
}
else
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fi<46><69><EFBFBD>[<5B>hID<49><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ɏ擾<C98E>ł<EFBFBD><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>B");
}
}
# EZweb
elsif(&mumumuIsIP4EZWeb($GB->{HOST3}))
{
if($ENV{'HTTP_X_UP_SUBNO'} ne '')
{
$GB->{HOST5} .= "(" . $ENV{'HTTP_X_UP_SUBNO'} .")";
$GB->{IDNOTANE} = $ENV{'HTTP_X_UP_SUBNO'};
$GB->{IDNOTANE} =~ s/\.ezweb\.ne\.jp//;
$GB->{IDNOTANE} =~ s/\.ido\.ne\.jp//;
$GB->{KEITAI} = 2;
}
else
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>[<5B><><EFBFBD>ŗL<C597><4C><EFBFBD><EFBFBD><EFBFBD>𑗐M<F0919790><4D><EFBFBD>Ȃ<EFBFBD><C882>g<EFBFBD>ђ[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͓<EFBFBD><CD93>e<EFBFBD>ł<EFBFBD><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B");
}
}
# <20>{<7B>[<5B>_<EFBFBD>t<EFBFBD>H<EFBFBD><48><EFBFBD>I<EFBFBD><49><EFBFBD>C<EFBFBD>u
elsif(&mumumuIsIP4Vodafone($GB->{HOST3}))
{
if($ENV{'HTTP_USER_AGENT'} =~ /SN([\w]+?) /)
{
$GB->{HOST5} .= "($1)";
$GB->{IDNOTANE} = $1;
$GB->{KEITAI} = 3;
}
else
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>[<5B><><EFBFBD>V<EFBFBD><56><EFBFBD>A<EFBFBD><41><EFBFBD>ԍ<EFBFBD><D48D>𑗐M<F0919790><4D><EFBFBD>Ȃ<EFBFBD>Vodafone<6E><65><EFBFBD><EFBFBD><EFBFBD>͓<EFBFBD><CD93>e<EFBFBD>ł<EFBFBD><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B");
}
}
# emobile EMnet
elsif(&mumumuIsIP4EMnet($GB->{HOST3}))
{
# HTTP<54><50><EFBFBD>N<EFBFBD>G<EFBFBD>X<EFBFBD>g<EFBFBD>w<EFBFBD>b<EFBFBD>_<EFBFBD>́uHTTP_X_EM_UID<49>v<EFBFBD><76><EFBFBD><EFBFBD><E693BE><EFBFBD><EFBFBD>ƂŁA
# EMnet<65>Ή<EFBFBD><CE89>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʒm<CA92><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>j<EFBFBD>[<5B>N<EFBFBD>ȃ<EFBFBD><C883>[<5B>UID<49><44><EFBFBD>m<EFBFBD>F<EFBFBD>ł<EFBFBD><C582>܂<EFBFBD><DC82>B
# <20>t<EFBFBD>H<EFBFBD>[<5B>}<7D>b<EFBFBD>g<EFBFBD>́A"u"<22><><EFBFBD><EFBFBD><EFBFBD>n<EFBFBD>܂<EFBFBD>18Byte<74>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂȂ<C982><C882>܂<EFBFBD><DC82>B
#
# <20><><EFBFBD>[<5B>UID<49>̓<EFBFBD><CD83>[<5B>U<EFBFBD>̑<EFBFBD><CC91><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>Ēʒm<CA92><6D><EFBFBD><EFBFBD><EFBFBD>~<7E><><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>”\<5C>ł<EFBFBD><C582>B
# <20><><EFBFBD>̏ꍇ<CC8F>A<EFBFBD>{<7B>g<EFBFBD><67><EFBFBD>w<EFBFBD>b<EFBFBD>_<EFBFBD>͕t<CD95><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B
# http://developer.emnet.ne.jp/useragent.html
if($ENV{HTTP_X_EM_UID} ne '')
{
$GB->{HOST5} .= "(" . $ENV{'HTTP_X_EM_UID'} .")";
$GB->{IDNOTANE} = $ENV{'HTTP_X_EM_UID'};
# 4 <20><> <20><><EFBFBD>ۂ<EFBFBD> <20>Ŏg<C58E><67><EFBFBD>Ă<EFBFBD><C482><EFBFBD><E982BD> 5 <20>Ƃ<EFBFBD><C682><EFBFBD>
$GB->{KEITAI} = 5;
}
else
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Femobile<6C><65>EMnet<65>ڑ<EFBFBD><DA91>ł̓<C582><CD83>[<5B>UID<49><44><EFBFBD>ʒm<CA92><6D><EFBFBD>Ȃ<EFBFBD><C882>Ɠ<EFBFBD><C693>e<EFBFBD>ł<EFBFBD><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B");
}
}
$GB->{HOST999} = $GB->{HOST5} . $GB->{HOST2} ;
# <20>g<EFBFBD>ъe<D18A>Ђ̃T<CC83>[<5B>o<EFBFBD>𐔂<EFBFBD><F0909482>
&countKeitaiServer($GB) ;
}
#######################################################################
# <20>e<EFBFBD><65><EFBFBD>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>̃z<CC83>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>
#######################################################################
sub mumumuSetHost4KeitaiBrowser
{
my ($GB) = @_;
my $browser = 0;
# <20>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>΂΂<CE82><CE82>΂<EFBFBD>
$browser = &mumumuIsKeitaiBrowser($GB);
if(!$browser) {return 0;}
# $browser = 1: ibisBrowser
if($browser == 1)
{
if(&ProcessibisBrowser($GB))
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD>𐳂<EFBFBD><F090B382><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>B($browser)");
}
}
# $browser = 2: jig Browser
elsif($browser == 2)
{
if(&ProcessjigBrowser($GB))
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD>𐳂<EFBFBD><F090B382><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>B($browser)");
}
}
# $browser = 3: SoftBank PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U
elsif($browser == 3)
{
if(&ProcesspcsiteBrowser($GB))
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>FPC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93>e<EFBFBD>ł̓V<CD83><56><EFBFBD>A<EFBFBD><41><EFBFBD>ԍ<EFBFBD><D48D>𑗐M<F0919790><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B($browser)");
}
}
# $browser = 4: i<><69><EFBFBD>[<5B>h<EFBFBD>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U
elsif($browser == 4)
{
if(&ProcessimodefullBrowser($GB))
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fi<46><69><EFBFBD>[<5B>h<EFBFBD>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD><55><EFBFBD><EFBFBD><EFBFBD>̓<EFBFBD><CC93>e<EFBFBD>ł<EFBFBD>i<EFBFBD><69><EFBFBD>[<5B>hID<49>𑗐M<F0919790><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B($browser)");
}
}
# $browser = 5: au PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>A<EFBFBD>[
elsif($browser == 5)
{
# PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>A<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>̐ڑ<CC90><DA91>͖<EFBFBD><CD96><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŃG<C583><47><EFBFBD>[<5B>ɂ<EFBFBD><C982><EFBFBD>
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fau<61><75>PC<50>T<EFBFBD>C<EFBFBD>g<EFBFBD>r<EFBFBD><72><EFBFBD>[<5B>A<EFBFBD>[<5B><><EFBFBD><EFBFBD>e<EFBFBD><65><EFBFBD><EFBFBD>Ƃ͂ł<CD82><C582>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B($browser)");
}
return 0;
}
#######################################################################
# ibisBrowser(<28>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>̈<EFBFBD><CC88><EFBFBD>)<29>̂<EFBFBD><CC82>߂̃z<CC83>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>
# mumumuSetHost4KeitaiBrowser<65><72><EFBFBD><EFBFBD><EFBFBD>Ă΂<C482><CE82><EFBFBD>
# <20>߂<EFBFBD><DF82>l: 0 <20><EFBFBD><E693BE><EFBFBD><EFBFBD>
# -1 <20><EFBFBD><E693BE><EFBFBD>s
#######################################################################
sub ProcessibisBrowser
{
my ($GB) = @_;
my $ua = $ENV{'HTTP_USER_AGENT'};
my $ip = undef;
my $career = undef;
my $serial = undef;
# Mozilla/4.0 (compatible; ibisBrowser; ipIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X; ser<65>[<5B><><EFBFBD>Œ<EFBFBD><C592>ԍ<EFBFBD>)
# <20><>i<EFBFBD><69><EFBFBD>[<5B>hID<49>Ή<EFBFBD><CE89>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>ȉ<EFBFBD><C889>̂悤<CC82>ɕύX
# Mozilla/4.0 (compatible; ibisBrowser; ipIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X; i<><69><EFBFBD>[<5B>hID)
# <20><>SoftBank<6E>[<5B><><EFBFBD>̏ꍇ - 2009/3/25 by mumumu
# Mozilla/4.0 (compatible; ibisBrowser; ipIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X; SN<53>[<5B><><EFBFBD>V<EFBFBD><56><EFBFBD>A<EFBFBD><41><EFBFBD>ԍ<EFBFBD>)
# <20><>Windows Mobile<6C><65>
# Mozilla/4.0 (compatible; ibisBrowser; ipIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X; IBIS_WM<57>[<5B><><EFBFBD>Œ<EFBFBD><C592>ԍ<EFBFBD>)
# ibisBrowser <20>łȂ<C582><C882><EFBFBD>͂<EFBFBD><CD82><EFBFBD>
if($ua !~ /ibisBrowser/) { return -1; }
# <20>g<EFBFBD>ё<EFBFBD>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD> ipIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X
# ID
# <20><><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD>ǂ<EFBFBD><C782><EFBFBD>(<28>Ƃ<EFBFBD><C682>Ȃ<EFBFBD><C882><EFBFBD><E182BE>)
if($ua =~ /ip(\d+)\.(\d+)\.(\d+)\.(\d+)\; (\w+)\)/)
{
$ip = $1 . "." . $2 . "." . $3 . "." . $4;
$serial = $5;
}
else
{
return -1;
}
# IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>g<EFBFBD>їp<D197><70><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ׂ<EFBFBD>
$career = &IsIP4Mobile($ip);
# <20>g<EFBFBD>уL<D183><4C><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>ʂ̌ŗL<C597><4C><EFBFBD>񏈗<EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>T<EFBFBD>u<EFBFBD><75><EFBFBD>[<5B>`<60><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# $career = 1: DoCoMo
if($career == 1)
{
# i<><69><EFBFBD>[<5B>hID<49><44>7<EFBFBD><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><E182BE>
if(length($serial) ne 7)
{
return -1;
}
}
# $career = 2: au
elsif($career == 2)
{
return -1;
}
# $career = 3: SoftBank
elsif($career == 3)
{
# "SN" + 15<31><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ƃ<EFBFBD><C682>߁AID<49><44>SN<53>̌<EFBFBD><CC8C>̕<EFBFBD><CC95><EFBFBD><EFBFBD>̂ݒ<CC82><DD92>o
if($serial =~ /SN([\w]{15,})/)
{
$serial = $1;
}
else
{
return -1;
}
}
# <20><>
else
{
# Windows Mobile<6C><65>
# Mozilla/4.0 (compatible; ibisBrowser; ipIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X; IBIS_WM<57>[<5B><><EFBFBD>Œ<EFBFBD><C592>ԍ<EFBFBD>)
if($ua =~ /IBIS_WM([\w]{16,})/)
{
$serial = $1;
$serial = "IBIS_WM" . $1;
}
else
{
return -1;
}
}
# <20><><EFBFBD><EFBFBD><EFBFBD>܂ŗ<DC82><C597><EFBFBD><EFBFBD><EFBFBD>$ip<69><70>$serial<61>ɏ<EFBFBD><C98F>񂪐<EFBFBD><F182AA90><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fip=$ip, serial=$serial");
$GB->{HOST5} .= "($serial)";
$GB->{IDNOTANE} = $serial;
$GB->{KEITAIBROWSER} = 1;
return 0;
}
#######################################################################
# jig Browser(<28>g<EFBFBD>їp<D197>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>̈<EFBFBD><CC88><EFBFBD>)<29>̂<EFBFBD><CC82>߂̃z<CC83>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>
# mumumuSetHost4KeitaiBrowser<65><72><EFBFBD><EFBFBD><EFBFBD>Ă΂<C482><CE82><EFBFBD>
# <20>߂<EFBFBD><DF82>l: 0 <20><EFBFBD><E693BE><EFBFBD><EFBFBD>
# -1 <20><EFBFBD><E693BE><EFBFBD>s
#######################################################################
sub ProcessjigBrowser
{
my ($GB) = @_;
# <20>g<EFBFBD>ё<EFBFBD><D191><EFBFBD>IP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58>X-Forwarded-For<6F>w<EFBFBD>b<EFBFBD>_<EFBFBD>[<5B>Œ[<5B><><EFBFBD>ŗL<C597><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# X-Subscriber-ID<49>w<EFBFBD>b<EFBFBD>_<EFBFBD>[<5B>ő<EFBFBD><C591>M<EFBFBD><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B
my $ip = $ENV{'HTTP_X_FORWARDED_FOR'};
my $serialseed = $ENV{'HTTP_X_SUBSCRIBER_ID'};
my $career = undef;
my $serial = undef;
# <20>ƂꂽIP<49>A<EFBFBD>h<EFBFBD><68><EFBFBD>X<EFBFBD><58><EFBFBD>g<EFBFBD>їp<D197><70><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD>͂<EFBFBD><CD82><EFBFBD>
$career = &IsIP4Mobile($ip);
if(!$career) { return -1; }
# <20>g<EFBFBD>уL<D183><4C><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD>ʂ̌ŗL<C597><4C><EFBFBD>񏈗<EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>T<EFBFBD>u<EFBFBD><75><EFBFBD>[<5B>`<60><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# $career = 1: DoCoMo
if($career == 1)
{
# 7<><37><EFBFBD><EFBFBD>(i<><69><EFBFBD>[<5B>hID)<29><><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ׁA<D781><41><EFBFBD><EFBFBD><EFBFBD>ȊO<C88A>̓G<CD83><47><EFBFBD>[
if(length($serialseed) eq 7)
{
$serial = $serialseed;
}
else
{
return -1;
}
}
# $career = 2: au
elsif($career == 2)
{
$serialseed =~ s/\.ezweb\.ne\.jp//;
$serial = $serialseed;
}
# $career = 3: SoftBank
elsif($career == 3)
{
if($serialseed =~ /SN([\w]{15,})/)
{
$serial = $1;
}
else
{
return -1;
}
}
# Willcom <20><>(<28>Ƃ肠<C682><E882A0><EFBFBD><EFBFBD>)<29><><EFBFBD>Ή<EFBFBD><CE89>Ƃ<EFBFBD><C682><EFBFBD>
else
{
return -1;
}
# <20><><EFBFBD><EFBFBD><EFBFBD>܂ŗ<DC82><C597><EFBFBD><EFBFBD><EFBFBD>$ip<69><70>$serial<61>ɏ<EFBFBD><C98F>񂪐<EFBFBD><F182AA90><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fip=$ip, serial=$serial");
$GB->{HOST5} .= "($serial)";
$GB->{IDNOTANE} = $serial;
$GB->{KEITAIBROWSER} = 2;
return 0;
}
#######################################################################
# pcsiteBrowser(<28>\<5C>t<EFBFBD>g<EFBFBD>o<EFBFBD><6F><EFBFBD>N<EFBFBD>g<EFBFBD>їp<D197>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U)<29>̂<EFBFBD><CC82>߂̃z<CC83>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>
# mumumuSetHost4KeitaiBrowser<65><72><EFBFBD><EFBFBD><EFBFBD>Ă΂<C482><CE82><EFBFBD>
# <20>߂<EFBFBD><DF82>l: 0 <20><EFBFBD><E693BE><EFBFBD><EFBFBD>
# -1 <20><EFBFBD><E693BE><EFBFBD>s
#######################################################################
sub ProcesspcsiteBrowser
{
my ($GB) = @_;
my $ua = $ENV{'HTTP_USER_AGENT'};
my $serial = undef;
# Mozilla/4.08 (911T;SoftBank;SN354000000000000) NetFront/3.3
# SoftBank <20>łȂ<C582><C882><EFBFBD>͂<EFBFBD><CD82><EFBFBD>
if($ua !~ /SoftBank/) { return -1; }
# NetFront <20>łȂ<C582><C882><EFBFBD>͂<EFBFBD><CD82><EFBFBD>
if($ua !~ /NetFront/) { return -1; }
# <20>ŗL<C597><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E693BE><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD>͂<EFBFBD><CD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>T<EFBFBD>u<EFBFBD><75><EFBFBD>[<5B>`<60><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($ua =~ /SN([\w]+?)\)/)
{
$serial = $1;
}
else
{
return -1;
}
# <20><><EFBFBD><EFBFBD><EFBFBD>܂ŗ<DC82><C597><EFBFBD><EFBFBD><EFBFBD>$serial<61>ɏ<EFBFBD><C98F>񂪐<EFBFBD><F182AA90><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fserial=$serial");
$GB->{HOST5} .= "($serial)";
$GB->{IDNOTANE} = $serial;
$GB->{KEITAIBROWSER} = 3;
return 0;
}
#######################################################################
# imodefullBrowser(<28>h<EFBFBD>R<EFBFBD><52><EFBFBD>g<EFBFBD>їp<D197>t<EFBFBD><74><EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U)<29>̂<EFBFBD><CC82>߂̃z<CC83>X<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>
# mumumuSetHost4KeitaiBrowser<65><72><EFBFBD><EFBFBD><EFBFBD>Ă΂<C482><CE82><EFBFBD>
# <20>߂<EFBFBD><DF82>l: 0 <20><EFBFBD><E693BE><EFBFBD><EFBFBD>
# -1 <20><EFBFBD><E693BE><EFBFBD>s
#######################################################################
sub ProcessimodefullBrowser
{
my ($GB) = @_;
my $cid = undef;
if($ENV{HTTP_X_DCMGUID} ne '')
{
$cid = $ENV{'HTTP_X_DCMGUID'};
}
else
{
return -1;
}
# <20><><EFBFBD><EFBFBD><EFBFBD>܂ŗ<DC82><C597><EFBFBD><EFBFBD><EFBFBD>$cid<69>ɏ<EFBFBD><C98F>񂪐<EFBFBD><F182AA90><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fcid=$cid");
$GB->{HOST5} .= "(" . $cid .")";
$GB->{IDNOTANE} = $cid;
$GB->{KEITAIBROWSER} = 4;
return 0;
}
#######################################################################
#<23>@<40>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>ƕ<EFBFBD><C695>ʂ̏<CA82><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂̏<DD82><CC8F><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
#######################################################################
sub foxSetInformation
{
my ($GB) = @_ ;
my $DATAFILE =""; #.dat<61>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E98CBE><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
# <20>t<EFBFBD>H<EFBFBD>[<5B><><EFBFBD>̎<EFBFBD><CC8E>ԏ<EFBFBD><D48F>񂪂<EFBFBD><F182AA82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($GB->{FORM}->{'time'} >= $GB->{NOWTIME})
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>𗧂<EFBFBD><F097A782><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>Ă݂Ă<DD82><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B");
}
# <20>V<EFBFBD>X<EFBFBD><58><EFBFBD>̏ꍇ
if($GB->{FORM}->{'subject'} ne "")
{
# submit<69><74><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD>A<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
if($GB->{FORM}->{'submit'} eq "")
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>ł<EFBFBD><C582>B<EFBFBD>B<EFBFBD>B");
}
# <20>T<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΐV<CE90>K<EFBFBD>X<EFBFBD><58><EFBFBD>Ȃ̂ŃL<C583>[<5B><><EFBFBD><EFBFBD><EFBFBD>݂ɐݒ<C990>
$GB->{FORM}->{'key'} = $GB->{NOWTIME} ;
# <20>V<EFBFBD>X<EFBFBD><58><EFBFBD>t<EFBFBD><74><EFBFBD>O<EFBFBD>𗧂Ă<F097A782>
$GB->{NEWTHREAD} = $GB->{NOWTIME} ;
###################################################
#<23>@<40>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>u<EFBFBD><75><EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>΂<EFBFBD><CE82>isubbbs.cgi<67>j
###################################################
# if($GB->{FORM}->{'FROM'} =~/fusianasan/){
# if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_NEWSUBJECT'} ne "" && $GB->{FORM}->{'submit'} =~ /<2F>V<EFBFBD>K/)
# {
#
# subbbs($GB);
# }
###################################################
#<23>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>̃L<CC83>[<5B>𓾂<EFBFBD>(<28><><EFBFBD>Ldo<64>`while<6C>̒u<CC92><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
$GB->{FORM}->{'key'} = &mumumuAllocateThreadKey($GB);
$DATAFILE = $GB->{DATPATH} . $GB->{FORM}->{'key'} . ".dat";
# <20><><EFBFBD>̃R<CC83>[<5B>h<EFBFBD><68><EFBFBD>Ɗ<EFBFBD><C68A><EFBFBD> $DATAFILE <20><><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>Ŗ<EFBFBD><C596><EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<5B>v<EFBFBD>Ɋׂ<C98A>
# do {
# #<23>T<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ΐV<CE90>K<EFBFBD>X<EFBFBD><58><EFBFBD>Ȃ̂ŃL<C583>[<5B><><EFBFBD><EFBFBD><EFBFBD>݂ɐݒ<C990>
# $GB->{FORM}->{'key'} = $GB->{NOWTIME};
# #.dat<61>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̐ݒ<CC90>
# $DATAFILE = $GB->{DATPATH} . $GB->{FORM}->{'key'} . ".dat";
# } while ( -e $DATAFILE ) ;
}
# <20><><EFBFBD>X<EFBFBD>̏ꍇ
else
{
if(defined($GB->{FORM}->{'key'}))
{
#<23>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD>΂<EFBFBD><CE82>΂<EFBFBD><CE82>I
if($GB->{FORM}->{'key'} =~ /\W/ || $GB->{FORM}->{'key'} eq "")
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>L<EFBFBD>[<5B><><EFBFBD>񂪕s<F182AA95><73><EFBFBD>ł<EFBFBD><C582>I");
}
}
else
{
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_PASSWORD_CHECK'} eq "checked")
{
# <20>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>ʉ<EFBFBD><CA89><EFBFBD>
&newbbs($GB);
}
else
{
#<23>T<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82>Ȃ<EFBFBD><C882>Ȃ<EFBFBD><C882>΂<EFBFBD><CE82>΂<EFBFBD>
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>T<EFBFBD>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82>܂<EFBFBD><DC82><EFBFBD><EFBFBD>I");
}
}
#.dat<61>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>̐ݒ<CC90>
$DATAFILE = $GB->{DATPATH} . $GB->{FORM}->{'key'} . ".dat";
#.dat<61><74><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82>ĂȂ<C482><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ȃ<EFBFBD><C882>΂<EFBFBD><CE82>΂<EFBFBD>
# <20><EFBFBD><E182BE><EFBFBD>܂ł<DC82> -w <20><> -s <20>̔<EFBFBD><CC94><EFBFBD><EFBFBD><EFBFBD>bbsd<73>ɂ܂<C982><DC82><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>ł͂<C582><CD82>Ȃ<EFBFBD>)
if(!IsSnowmanServer)
{
unless(-w $DATAFILE)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD>ɂ͏<C982><CD8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂܂<DF82><DC82><EFBFBD><EFBFBD>B");
}
unless( -s $DATAFILE <= 512000)
{
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD><68>512k<32>𒴂<EFBFBD><F092B482>Ă<EFBFBD><C482><EFBFBD><EFBFBD>̂ŏ<CC82><C58F><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>I");
}
}
}
}
#######################################################################
# <20>V<EFBFBD>X<EFBFBD><58><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E882B7>
#######################################################################
sub mumumuAllocateThreadKey
{
my ($GB) = @_;
my $maxtries = 3; # <20>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̍Ď<CC8D><C48E>s<EFBFBD><73>
my $i = 0;
my $threadkey = $GB->{NOWTIME};
my $datafile = $GB->{DATPATH} . $threadkey . ".dat";
# <20><EFBFBD><E182BE><EFBFBD>܃T<DC83>[<5B>o<EFBFBD>ł͂<C582><CD82>̂܂܎g<DC8E>p(bbsd<73>ɂ܂<C982><DC82><EFBFBD><EFBFBD><EFBFBD>)
if(IsSnowmanServer)
{
return $threadkey;
}
# <20><><EFBFBD><EFBFBD><EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>L<EFBFBD>[<5B><><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>Ζ<EFBFBD><CE96><EFBFBD><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD>̏ꍇ<CC8F>͂<EFBFBD><CD82><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E582A4>
if ( ! -e $datafile )
{
return $threadkey;
}
# <20><><EFBFBD><EFBFBD><EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɂ<EFBFBD><C982><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# live<76>n<EFBFBD><6E><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682>񂪂<EFBFBD><F182AA82>Ă݂<C482>
elsif(!$ENV{'SERVER_NAME'} =~ /live/)
{
for ($i = 1; $i <= $maxtries; $i++)
{
$threadkey++;
$datafile = $GB->{DATPATH} . $threadkey . ".dat";
if ( ! -e $datafile )
{
# <20>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>L<EFBFBD>[<5B><><EFBFBD>X<EFBFBD>V
# $GB->{NOWTIME} <20><><EFBFBD>X<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD><E982B1>
$GB->{NOWTIME} = $threadkey;
return $threadkey;
}
}
}
# <20>ł<EFBFBD><C582><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ς肾<CF82>߂<EFBFBD><DF82><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂<EFBFBD><DF82>Ȃ<EFBFBD><C882><EFBFBD>
&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD>ʂ̐l<CC90><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɃX<C983><58><EFBFBD>b<EFBFBD>h<EFBFBD>𗧂Ă悤<C482>Ƃ<EFBFBD><C682>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD>߂<EFBFBD><DF82>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>B");
}
#############################################################################
# <09>X<EFBFBD><58><EFBFBD>‚Ԃ<C282>
#############################################################################
# >100,101,102<30><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̓_<CD83><5F>
sub SureAnc
{
my ($GB) = @_ ;
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
if($GB->{FORM}->{'bbs'} eq "sec2ch") {return 0;}
if($GB->{FORM}->{'bbs'} eq "sec2chd") {return 0;}
if($GB->{FORM}->{'bbs'} eq "saku") {return 0;}
if($GB->{FORM}->{'bbs'} eq "saku2ch") {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
my $nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/(\d)/$1/g);
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","nnn=$nnn");
if($nnn < 120) {return 0;}
# $nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/([&gt;\d+|-\d+|,\d+])/$1/g);
$nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/(&gt;\d+)/$1/g);
if($nnn < 12) {return 0;}
$nnn += ($GB->{FORM}->{'MESSAGE'} =~ s/(-\d+)/$1/g);
$nnn += ($GB->{FORM}->{'MESSAGE'} =~ s/(,\d+)/$1/g);
#&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","nnn=$nnn");
if($nnn > 10) {&endhtml($GB); }
return 0 ;
}
# http://<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̓_<CD83><5F>
sub SureHttp
{
my ($GB) = @_ ;
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
if($GB->{FORM}->{'bbs'} eq "sec2ch") {return 0;}
if($GB->{FORM}->{'bbs'} eq "sec2chd") {return 0;}
if($GB->{FORM}->{'bbs'} eq "saku") {return 0;}
if($GB->{FORM}->{'bbs'} eq "saku2ch") {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
my $bbb = "\/" ;
my $nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/\Q$bbb\E/$bbb/g);
if($nnn < 5){ return ; }
$bbb = "ttp\:" ;
$nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/\Q$bbb\E/$bbb/g);
if($nnn > 20) {&endhtml($GB); }
return 0 ;
}
sub IsAAbbs
{
my ($GB) = @_ ;
if($GB->{FORM}->{bbs} eq 'aastory') {return 1;}
if($GB->{FORM}->{bbs} eq 'aasaloon') {return 1;}
if($GB->{FORM}->{bbs} eq 'nida') {return 1;}
if($GB->{FORM}->{bbs} eq 'mona') {return 1;}
if($GB->{FORM}->{bbs} eq 'kao') {return 1;}
if($GB->{FORM}->{bbs} eq 'eroaa') {return 1;}
return 0 ;
}
# <20>T<EFBFBD><54><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>̓_<CD83><5F>
sub SureUtsu
{
my ($GB) = @_ ;
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
if($GB->{FORM}->{'bbs'} eq "sec2ch") {return 0;}
if($GB->{FORM}->{'bbs'} eq "sec2chd") {return 0;}
if($GB->{FORM}->{'bbs'} eq "saku") {return 0;}
if($GB->{FORM}->{'bbs'} eq "saku2ch") {return 0;}
if(&IsAAbbs($GB)) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
if(length($GB->{FORM}->{'MESSAGE'}) < 10) {return 0;}
my $bbb = substr($GB->{FORM}->{'MESSAGE'}, 0, 4) ;
if($bbb =~ /<2F>@/) {return 0;}
# if($bbb =~ /[0-9a-zA-Z\:\.\;\+\,]/) {return 0;}
if($bbb =~ /[\:\.\;]/) {return 0;}
if($bbb eq "<22>@<40>Q") {return 0;}
if($bbb eq "<22>@<40>@") {return 0;}
my $nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/\Q$bbb\E/$bbb/g);
if($nnn > 20){ &endhtml($GB); }
return 0 ;
}
# >> <20><><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>̓_<CD83><5F>
sub SureTsubushi
{
my ($GB) = @_ ;
#<23>ȉ<EFBFBD><C889>̔‚͂<C282><CD82><EFBFBD><EFBFBD>[
if(&KiseiOFF($GB)) {return 0;}
if($GB->{FORM}->{'bbs'} eq "saku") {return 0;}
if($GB->{FORM}->{'bbs'} eq "saku2ch") {return 0;}
if($GB->{FORM}->{'bbs'} eq "owarai") {return 0;}
# if($GB->{FORM}->{'bbs'} eq "campus") {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{CAP}) {return 0;}
#<23><><EFBFBD>̓X<CD83><58><EFBFBD>[
if($GB->{MARU}) {return 0;}
my $bbb = "&gt;&gt;";
my $nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/\Q$bbb\E/$bbb/g);
if($nnn > 10){ &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F>> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");}
$bbb = "http://";
$nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/\Q$bbb\E/$bbb/g);
if($nnn > 15){ &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fhttp:// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");}
$bbb = "https://";
$nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/\Q$bbb\E/$bbb/g);
if($nnn > 15){ &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fhttps:// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");}
$bbb = "ftp://";
$nnn = ($GB->{FORM}->{'MESSAGE'} =~ s/\Q$bbb\E/$bbb/g);
if($nnn > 15){ &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fftp:// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82>I");}
return 1 ;
}
sub OtameshiMaru
{
my ($GB) = @_ ;
return ;
my $id = 'summit' ;
my $pw = 'touya' ;
if($GB->{FORM}->{'MESSAGE'} =~ /$id/i) {&endhtml($GB); }
if($GB->{FORM}->{'MESSAGE'} =~ /$pw/i) {&endhtml($GB); }
return ;
}
#############################################################################
# bbsd<73>o<EFBFBD>R<EFBFBD>ŏ<EFBFBD><C58F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><EFBFBD><E182BE><EFBFBD>ܔ<EFBFBD>WriteDatFile)
#############################################################################
sub WriteSnow
{
my ($GB, $DATALOG) = @_;
# bbsd<73>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݃R<DD83>}<7D><><EFBFBD>h<EFBFBD>𑗂<EFBFBD>
my $errmsg = bbsd(
$GB->{FORM}->{'bbs'},
$GB->{FORM}->{'key'},
$GB->{OUTDAT},
$GB->{version},
$FOX->{headadfile},
$FOX->{putadfile},
&{$FOX->{maido3adfile}}($GB->{FORM}{bbs}),
$FOX->{lastad},
"$DATALOG:$GB->{LOGDAT}"
);
# <20>^<5E>C<EFBFBD><43><EFBFBD>A<EFBFBD>E<EFBFBD>g<EFBFBD><67><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
if(&bbsd_TimeoutCheck($GB, $errmsg))
{
#XXX
return 0;
&bbsd_TimeoutError($GB, 'WriteSnow');
}
# <20>V<EFBFBD>X<EFBFBD><58><EFBFBD>̎<EFBFBD><CC8E>͎<EFBFBD><CD8E>ۂ̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̂ŁA<C581><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۑ<EFBFBD>
if($GB->{NEWTHREAD})
{
#<23>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۑ<EFBFBD><DB91><EFBFBD><EFBFBD>Ė߂<C496>
if($errmsg !~ /\D/)
{
$GB->{FORM}->{'key'} = $errmsg;
return 0;
}
#<23><><EFBFBD><EFBFBD><EFBFBD>łȂ<C582><C882>Ƃ<EFBFBD><C682>̓G<CD83><47><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
# $errmsg <20><><EFBFBD>󕶎<EFBFBD><F395B68E>񂶂<EFBFBD><F182B682>Ȃ<EFBFBD><C882><EFBFBD>A<EFBFBD>G<EFBFBD><47><EFBFBD>[<5B><><EFBFBD><EFBFBD>
if($errmsg)
{
$errmsg = +{
# <20><><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>
# 1000<30><30><EFBFBD>X<EFBFBD>z<EFBFBD><7A><EFBFBD>E512kB<6B>z<EFBFBD><7A>
do{local $! = EDQUOT;} => '<27><><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD><68>1000<30><30><EFBFBD>X<EFBFBD>܂<EFBFBD><DC82><EFBFBD>512k<32>𒴂<EFBFBD><F092B482>Ă<EFBFBD><C482><EFBFBD><EFBFBD>̂ŏ<CC82><C58F><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>I',
# <20>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>X<EFBFBD>g<EFBFBD>b<EFBFBD>v
do{local $! = EACCES;} => '<27><><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD>ɂ͏<C982><CD8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂܂<DF82><DC82><EFBFBD><EFBFBD>B',
# <20>Ȃ<EFBFBD><C882>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>ɏ<EFBFBD><C98F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD>
do{local $! = ENOENT;} => '<27>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B',
# bbsd<73>ł̃X<CC83><58><EFBFBD><EFBFBD><EFBFBD>ă<EFBFBD><C483>g<EFBFBD><67><EFBFBD>C<EFBFBD>񐔂𒴂<F1909482><F092B482><EFBFBD>
do{local $! = EEXIST;} => '<27>ʂ̐l<CC90><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɃX<C983><58><EFBFBD>b<EFBFBD>h<EFBFBD>𗧂Ă悤<C482>Ƃ<EFBFBD><C682>Ă<EFBFBD><C482>܂<EFBFBD><DC82>B<EFBFBD><42><EFBFBD>߂<EFBFBD><DF82>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>B'
}->{$errmsg}
# <20><><EFBFBD>̑<EFBFBD><CC91>̃G<CC83><47><EFBFBD>[
|| "<22>s<EFBFBD><73><EFBFBD>ȃG<C883><47><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>B<br>(board:$GB->{FORM}{bbs} key:$GB->{FORM}{key} errmsg:$errmsg)<br><3E><><EFBFBD>̃<EFBFBD><CC83>b<EFBFBD>Z<EFBFBD>[<5B>W<EFBFBD><57><EFBFBD>R<EFBFBD>s<EFBFBD>y<EFBFBD><79><EFBFBD>āA<C481>^<5E>p<EFBFBD><70><EFBFBD><EFBFBD><EFBFBD>‚ŕ񍐂<C595><F18D9082>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><E882AA><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>B";
&DispError2($GB, '<27>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I', "<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F$errmsg");
}
return 0;
}
#############################################################################
# bbs.cgi <20><><EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>[<5B>`<60><><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#############################################################################
sub bbs_main
{
my ($GB) = @_ ;
#&DispError2($GB,"<22>s<EFBFBD><73><EFBFBD>y <20><>","<font color=green><3E>s<EFBFBD><73><EFBFBD>y <20><></font><3E>@<40>ށH<DE81>ǂ<EFBFBD><C782>Ŏ<EFBFBD><C58E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD><CC82>ȁH($GB->{FORM}->{bbs})<br>($GB->{FORM}->{get})");
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40><><EFBFBD><EFBFBD><E682A2><EFBFBD>{<7B><>($GB->{FORM}->{bbs})<br>time=$GB->{NOWTIME}<br>mail=$GB->{FORM}->{mail} kihon=$GB->{FORM}->{kihon}");
require "jcode.pl" ;
require "bbs-yakin.cgi" ;
&YakinInit ;
&foxSetHost($GB) ; #<23>@<40>z<EFBFBD>X<EFBFBD>g<EFBFBD>̔<EFBFBD><CC94><EFBFBD>
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>܂ł͊O<CD8A><4F><EFBFBD>Ɠ<EFBFBD><C693><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ǝv<C68E><76>
#if(&IsP2($GB)) {&DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","p2<70><32><EFBFBD>f<EFBFBD><66>");}
# 2006<30>N5<4E><35>20<32><30><EFBFBD>A914<31><34><EFBFBD><EFBFBD><EFBFBD>ً̋}<7D>Ή<EFBFBD> by <20><>
#if($GB->{FORM}->{'key'} =~ /^914/)
#{
# &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>F<EFBFBD><46><EFBFBD>̃X<CC83><58><EFBFBD>b<EFBFBD>h<EFBFBD>ɂ͏<C982><CD8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂܂<DF82><DC82><EFBFBD><EFBFBD>B<EFBFBD><42><EFBFBD>߂<EFBFBD><DF82>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>B");
#}
# 2006<30>N7<4E><37>23<32><33><EFBFBD>Abe<62><65><EFBFBD><EFBFBD><EFBFBD>ً̋}<7D>Ή<EFBFBD> by <20><>
#if($GB->{FORM}->{bbs} eq 'be')
#{
# &DispError2($GB,"<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>I","<22>d<EFBFBD>q<EFBFBD>q<EFBFBD>n<EFBFBD>q<EFBFBD>Fbe<62>‚͌<C282><CD8C>ݒ<EFBFBD><DD92><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582>B<EFBFBD><42><EFBFBD>߂<EFBFBD><DF82>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>B");
#}
# IsCentiSec<65><63><EFBFBD>^<5E>̏ꍇ<CC8F>A1/100<30>b<EFBFBD>܂ŕ\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# &Yamada<64><61>$GB->{DATE}<7D><><EFBFBD>Q<EFBFBD>Ƃ<EFBFBD><C682>Ă<EFBFBD><C482><EFBFBD><EFBFBD>̂ŁA<C581><41><EFBFBD><EFBFBD><EFBFBD>Ŏ<EFBFBD><C58E>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD>K<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if(&IsCentiSec($GB))
{
my $csec = sprintf("%02d", int($GB->{NOWMICROTIME} / 10000));
$GB->{DATE} .= '.' . $csec;
}
#&Yamada($GB) ;
&Saga($GB) ; #<23><><EFBFBD><EFBFBD><EFBFBD>E<EFBFBD>B<EFBFBD><42><EFBFBD>X
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͂͂<CD82><CD82><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\<5C><>
&foxSetInformation($GB) ; #<23>@<40>V<EFBFBD>K<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD>ƕ<EFBFBD><C695>ʂ̏<CA82><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂̏<DD82><CC8F><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
#<23><><EFBFBD><EFBFBD>̂ł<CC82><C582><EFBFBD><EFBFBD>܂ŁA
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40><><EFBFBD><EFBFBD>̂ł<CC82><C582><EFBFBD><EFBFBD>܂<EFBFBD>($GB->{FORM}->{bbs})<br>time=$GB->{NOWTIME}");
#<23>N<EFBFBD>b<EFBFBD>L<EFBFBD>[<5B>̏<EFBFBD><CC8F><EFBFBD>(<28>g<EFBFBD><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N<EFBFBD>ł̓X<CD83>L<EFBFBD>b<EFBFBD>v)
if(!$GB->{TBACK})
{
#<23>N<EFBFBD>b<EFBFBD>L<EFBFBD>[<5B>𔭍s
# NAME= <20><> MAIL= <20>̃N<CC83>b<EFBFBD>L<EFBFBD>[<5B><> bbs.cgi <20>ł͂Ȃ<CD82><C882>A
# JavaScript <20>o<EFBFBD>R<EFBFBD>Ŕ<EFBFBD><C594>s<EFBFBD><73><EFBFBD><EFBFBD>Ƃɂ<C682><C982><EFBFBD>
# JavaScript <20><> MakeIndex4PC / newbbs <20>ňȉ<C588><C889><EFBFBD> .js <20><><EFBFBD>ǂݍ<C782><DD8D><EFBFBD>
# http://www2.2ch.net/snow/index.js
#&PutCookie($GB);
#<23>N<EFBFBD>b<EFBFBD>L<EFBFBD>[<5B><><EFBFBD>H<EFBFBD><48><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
unless($ENV{'HTTP_COOKIE'} || $GB->{FORM}->{'get'} ne '' || $GB->{FORM}->{kihon} ne 'suriashi')
{
#<23><><EFBFBD>e<EFBFBD>m<EFBFBD>F<EFBFBD><46><EFBFBD>ʂ<EFBFBD><CA82>o<EFBFBD><6F><EFBFBD>āAexit<69><74><EFBFBD><EFBFBD>
#<23><><EFBFBD><EFBFBD>: <20><><EFBFBD>‚<EFBFBD><C282>o<EFBFBD>Ă<EFBFBD><C482><EFBFBD>e<EFBFBD>m<EFBFBD>F<EFBFBD><46><EFBFBD>ʂ<EFBFBD>
#foxIkinari<72>ŏo<C58F>Ă<EFBFBD><C482>āA<C481><41><EFBFBD><EFBFBD><EFBFBD>ł͂Ȃ<CD82>
&ToukouKakunin($GB);
exit;
}
#&DispError2($GB,"root <20><>","<22>N<EFBFBD>b<EFBFBD>L<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> HTTP_COOKIE: $ENV{'HTTP_COOKIE'}");
}
#==================================================
#<23>@<40><><EFBFBD><EFBFBD><EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD>ƏC<C68F><43>
#==================================================
# IsKoukoku<6B><75><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD><73><EFBFBD><EFBFBD>ǂ<EFBFBD><C782><EFBFBD>
# <20><><EFBFBD><EFBFBD>$FOX->{ISKOUKOKU} = 0<>Ȃ<EFBFBD><C882>ă`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>Ȃ<EFBFBD>
if($FOX->{ISKOUKOKU})
{
if(!&mumumuIsIsKoukoku($GB)) { $FOX->{ISKOUKOKU} = 0; }
}
#subject.txt/subback.html<6D>̎<EFBFBD><CC8E>s<EFBFBD><73><EFBFBD><EFBFBD><EFBFBD>ڂ邩<DA82>ǂ<EFBFBD><C782><EFBFBD>
if(&Saborin($GB))
{
$GB->{SABORIN} = 1;
}
#<23><><EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
&ProcessMaru($GB);
##############################################
#<23>j<EFBFBD><6A><EFBFBD>[<5B><><EFBFBD>̕⊮
$GB->{FORM}->{'FROM'} =~ s/^ //g;
$GB->{FORM}->{'FROM'} =~ s/^<5E>@//g;
&NanashiReplace4vip($GB);
##############################################
#<23><><EFBFBD>O<EFBFBD><4F><EFBFBD>E<EFBFBD><45><EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD>̋֎~<7E><>(<28>u<EFBFBD><EFBFBD>v<EFBFBD>u<EFBFBD>Ǘ<EFBFBD><C797>v<EFBFBD>u<EFBFBD>R<EFBFBD><52><EFBFBD>v<C281>Ȃ<EFBFBD>)<29>̏<EFBFBD><CC8F><EFBFBD>
&NGNameReplace($GB);
#<23>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD>i<EFBFBD>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD>j<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
#&jcode::tr(\$GB->{FORM}->{'FROM'}, '<27><>', '#');
#if($GB->{FORM}->{'FROM'} =~ /([^#]*)#(.+)/)
if(defined $GB->{TRIPKEY})
{
&ProcessTrip($GB, $GB->{FORM}{FROM}, $GB->{TRIPKEY});
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD>ǂ<EFBFBD><C782><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
&BadTripCheck($GB);
}
#<23>n<EFBFBD><6E><EFBFBD>h<EFBFBD><68><EFBFBD>i<EFBFBD>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>j<EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
&jcode::tr(\$GB->{FORM}->{'mail'}, '<27><>', '#');
if($GB->{FORM}->{'mail'} =~ /([^#]*)#(.+)/)
{
&ProcessCap($GB, $1, $2);
}
#<23>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>Aneet4vip/neet4pink<6E>̓<EFBFBD><CC93><EFBFBD><EA8F88>
if(!$GB->{CAP})
{
if($GB->{FORM}->{'bbs'} =~ /neet/)
{
# neet<65>n<EFBFBD>͋<EFBFBD><CD8B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
$GB->{FORM}->{'FROM'} = $FOX->{$GB->{FORM}->{'bbs'}}->{'BBS_NONAME_NAME'};
# neet4pink<6E>̓g<CD83><67><EFBFBD>b<EFBFBD>v<EFBFBD>L<EFBFBD><4C>
if($GB->{FORM}->{'bbs'} =~ /neet4pink/)
{
# <20>g<EFBFBD><67><EFBFBD>b<EFBFBD>v<EFBFBD><76><EFBFBD><EFBFBD><EFBFBD>񂪂<EFBFBD><F182AA82><EFBFBD><EFBFBD>
if($GB->{TRIPSTRING} ne "")
{
$GB->{FORM}->{'FROM'} .= "</b> <20><>$GB->{TRIPSTRING} <b>";
}
}
}
}
# <20><><EFBFBD>O<EFBFBD><4F><EFBFBD>̓`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ə<EFBFBD><C68F><EFBFBD><EFBFBD>Aheaven4vip<69>̖<EFBFBD><CC96><EFBFBD><EFBFBD><EFBFBD><EFBFBD>u<EFBFBD><75><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
&ProcessNanashi($GB);
# tasukeruyo<79>̏<EFBFBD><CC8F><EFBFBD>
if($GB->{FORM}->{'FROM'} =~ /tasukeruyo/)
{
# operate/operate2 <20><> dso <20>T<EFBFBD>[<5B>o<EFBFBD>ł̂ݗL<DD97><4C>
# ipv6 <20>‚ł<C282><C582>L<EFBFBD><4C><EFBFBD>ɂ<EFBFBD><C982>Ă݂<C482>
if( $GB->{FORM}->{'bbs'} eq 'ihou' ||
$GB->{FORM}->{'bbs'} =~ "operate" ||
$GB->{FORM}->{'bbs'} =~ "ipv6" ||
$ENV{'SERVER_NAME'} =~ /dso/)
{
&Tasukeruyo($GB);
}
}
# fusianasan<61>̏<EFBFBD><CC8F><EFBFBD>
if($GB->{FORM}->{'FROM'} =~ /fusianasan/)
{
&Fusianasan($GB);
}
# <20>n<EFBFBD>k<EFBFBD>֘A<D698>‚̌<C282><CC8C><EFBFBD><EFBFBD>lj<EFBFBD>
&EQfromWhere($GB);
#<23><><EFBFBD>j<EFBFBD>R<EFBFBD>[<5B>h<EFBFBD>ϊ<EFBFBD>
if($FOX->{$GB->{FORM}->{bbs}}->{'BBS_UNICODE'} eq "change")
{
$GB->{FORM}->{'MESSAGE'} =~ s/\&\#[0-9;]*/<2F>H/gi;
}
#<23><><EFBFBD><EFBFBD><EFBFBD>D<EFBFBD><44> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>
if($GB->{KABUU})
{
if($GB->{FORM}->{'FROM'} =~ s/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>/)
{
$GB->{FORM}->{'FROM'} =~ s/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>// ;
$GB->{FORM}->{'FROM'} .= "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>" ;
}
}
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40><><EFBFBD><EFBFBD><EB82A2><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD><EFBFBD>@<br>FROM=$GB->{FORM}->{'FROM'}<br>MESSAGE=[$GB->{FORM}->{'MESSAGE'}]<br>mail=$GB->{FORM}->{'mail'}<br>");
#==================================================
#<23>@<40>G<EFBFBD><47><EFBFBD>[<5B><><EFBFBD>X<EFBFBD>|<7C><><EFBFBD>X<EFBFBD>i<EFBFBD><69><EFBFBD>ʂ̃G<CC83><47><EFBFBD>[<5B>͂܂Ƃ߂Ă΂<C482><CE82>΂<EFBFBD><CE82>j
#==================================================
#<23>t<EFBFBD>H<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N(<28>–<EFBFBD><C296>ɕςȕ<CF82><C895><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>Ԃ<EFBFBD><D482>ǂ߂Ȃ<DF82>)
&FormInfoCheck($GB);
#referer<65>`<60>F<EFBFBD>b<EFBFBD>N(<28>u<EFBFBD><75><EFBFBD>E<EFBFBD>U<EFBFBD>ςł<CF82><C582><EFBFBD><EFBFBD><EFBFBD>)
if(!$GB->{TBACK} && ($GB->{FORM}->{'submit'} ne "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" || $ENV{'HTTP_USER_AGENT'} =~ /Mozilla/))
{
&BraHen($GB);
}
#==================================================
#<23>@<40>t<EFBFBD>B<EFBFBD>[<5B><><EFBFBD>h<EFBFBD>T<EFBFBD>C<EFBFBD>Y<EFBFBD>̔<EFBFBD><CC94><EFBFBD>
#==================================================
# <20>X<EFBFBD><58><EFBFBD>^<5E>C<EFBFBD>A<EFBFBD><41><EFBFBD>O<EFBFBD>A<EFBFBD><41><EFBFBD>A<EFBFBD>h<EFBFBD>A<EFBFBD>{<7B><><EFBFBD>̒<EFBFBD><CC92><EFBFBD><EFBFBD>`<60>F<EFBFBD>b<EFBFBD>N
&FieldSizeCheck($GB);
# <20>{<7B><><EFBFBD>̍s<CC8D><73><EFBFBD>ƒ<EFBFBD><C692><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>s<EFBFBD>̃`<60>F<EFBFBD>b<EFBFBD>N
&FieldLineCheck($GB);
# >> <20><><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>̓_<CD83><5F><EFBFBD><EFBFBD>
# &SureTsubushi($GB) ;
# &SureUtsu($GB) ; # <20>T<EFBFBD><54><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>̓_<CD83><5F>
# &SureHttp($GB) ; # http:<3A><><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>̓_<CD83><5F>
# &SureAnc($GB) ; # >100<30><30><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD>̓_<CD83><5F>
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>R<EFBFBD><52><EFBFBD>h<EFBFBD>~
&OtameshiMaru($GB) ;
#<23>p<EFBFBD><70><EFBFBD><EFBFBD>
&NoJapanese($GB) ;
#==================================================
#<23>@<40>•ʂ̓<CA82><CC93><EFBFBD><EA8F88>
#==================================================
# <20>•ʂ̓<CA82><CC93><EFBFBD><EA8F88>
&ItabetsuSpecial($GB);
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>40%<25>i<EFBFBD><69><EFBFBD>ł݂<C582><DD82>@<br>($GB->{HOST})<br>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}<br>");
#==================================================
#<23>@<40><><EFBFBD>ތn<DE8C>e<EFBFBD><EFBFBD><ED8F88>
#==================================================
&GeroTrap($GB) ;
&checkPragma($GB) ;
&checkProxyAtAll($GB) ; #<23><><EFBFBD>J<EFBFBD>v<EFBFBD><76><EFBFBD>N<EFBFBD>V<EFBFBD>K<EFBFBD><4B>
&checkDenyList($GB) ; #<23>A<EFBFBD>N<EFBFBD>փ<EFBFBD><D683>X<EFBFBD>g(proxy999.cgi)<29><><EFBFBD>Ȃ߂܂
&vip931($GB) ; #VIP<49>L<EFBFBD><4C>
&bybySaru($GB) ; #<23>o<EFBFBD>C<EFBFBD>o<EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><E982B3>
&antiHosyu($GB) ; #<23><><EFBFBD><EFBFBD><EFBFBD>ێ<EFBFBD><DB8E>c<EFBFBD>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
&BBMcheck($GB) ; #BBM (<28>g<EFBFBD>ыK<D18B><4B>)
&BBXcheck($GB) ; #Rock54/Rock54M (<28>L<EFBFBD><4C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>}<7D><>)
&ToolGekitai0($GB) ; #Samba24 (<28>V<EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>K<EFBFBD><4B>)
&GooMorningKeitai($GB) ; #BBM2 <20>g<EFBFBD>тł̋K<CC8B><4B><EFBFBD>݂<EFBFBD>
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40><><EFBFBD>ނ<EFBFBD><DE82><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD><EFBFBD><EFBFBD>@<br>($GB->{HOST})<br>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}<br>");
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>50%<25>i<EFBFBD><69><EFBFBD>ł݂<C582><DD82>@<br>($GB->{HOST},$GB->{HOST999},$GB->{IDNOTANE})<br>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}<br>$GB->{MARU}<br>");
#==================================================
#<23>@<40>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>Đ<EFBFBD><C490><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD>J<EFBFBD>L<EFBFBD>R
#==================================================
# <20>V<EFBFBD>X<EFBFBD><58><EFBFBD>̏ꍇ<CC8F>A<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ă`<60>F<EFBFBD>b<EFBFBD>N
if($GB->{FORM}->{'subject'} ne "")
{
#<23>j<EFBFBD><6A><EFBFBD>[<5B><>saku<6B>ł́<C582><CC81>Ă<EFBFBD><C482>`<60>F<EFBFBD>b<EFBFBD>N
&VipQ2MaruyakiCheck($GB) ;
#<23>e<EFBFBD><65><EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD><EFBFBD>ă`<60>F<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD>܂Ƃ߂Ď<DF82><C48E>{
&SuretateTotalCheck($GB) ;
}
# timecount/timeclose(<28>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD>e<EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>H x<><78>)<29>̏<EFBFBD><CC8F><EFBFBD>
&Check_HardPosting($GB);
#==================================================
#<23>@<40>g<EFBFBD><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N
#==================================================
#<23>g<EFBFBD><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N<EFBFBD><4E><EFBFBD><EFBFBD>
&foxTrackBack($GB) ;
#==================================================
#<23>@VIP<49>N<EFBFBD>I<EFBFBD><49><EFBFBD>e<EFBFBD>B
#==================================================
#<23><><EFBFBD><EFBFBD><EFBFBD>̕\<5C><>
&ReplKabuka($GB) ;
#VIP<49>N<EFBFBD>I<EFBFBD><49><EFBFBD>e<EFBFBD>B(<28><><EFBFBD>݂<EFBFBD><DD82><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><EFBFBD>N<EFBFBD>ʂƂ<CA82>IQ<49>Ƃ<EFBFBD><C682>D<EFBFBD>Ƃ<EFBFBD>)
&ReplOmikuji($GB) ;
&ReplOtoshidama($GB) ;
&ReplIQ($GB) ;
&ReplShip($GB) ;
#VIP<49>N<EFBFBD>I<EFBFBD><49><EFBFBD>e<EFBFBD>B2.0
&VipQ2($GB) ; #!vip2:command:
#==================================================
#<23>@<40><><EFBFBD>X<EFBFBD>|<7C><><EFBFBD>X<EFBFBD>A<EFBFBD><41><EFBFBD>J<EFBFBD>[<5B>i<EFBFBD>{<7B><><EFBFBD>j
#==================================================
# <20><><EFBFBD>X<EFBFBD>A<EFBFBD><41><EFBFBD>J<EFBFBD>[<5B>̏<EFBFBD><CC8F><EFBFBD> (>><3E><><EFBFBD>X<EFBFBD>ԍ<EFBFBD> >><3E><><EFBFBD>X<EFBFBD>ԍ<EFBFBD>-<2D><><EFBFBD>X<EFBFBD>ԍ<EFBFBD>)
&ResAnchor($GB);
#==================================================
#<23>@<40>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>i<EFBFBD>c<EFBFBD>`<60>s<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD>X<EFBFBD>V<EFBFBD>j
#==================================================
# BE<42><45><EFBFBD>ǂ<EFBFBD><C782><EFBFBD>
if($GB->{isBE})
{
# <20>|<7C>C<EFBFBD><43><EFBFBD>g<EFBFBD>ɉ<EFBFBD><C989><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ABE<42>p<EFBFBD>̕<EFBFBD><CC95><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EC90AC><EFBFBD><EFBFBD>
# $GB->{xBE} <20>Ɋi<C98A>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
&MakeBEString($GB);
}
else
{
# BE<42><45><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>
$GB->{xBE} = "";
}
# <20>g<EFBFBD><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N<EFBFBD>̏ꍇ<CC8F>A<EFBFBD><41><EFBFBD>O<EFBFBD><4F><EFBFBD>͌Œ<CD8C>
if($GB->{TBACK}) {$GB->{FORM}->{'FROM'} = "<22>g<EFBFBD><67><EFBFBD>b<EFBFBD>N<EFBFBD>o<EFBFBD>b<EFBFBD>N <20><>";}
# ID<49>̂Ƃ<CC82><C682><EFBFBD><EFBFBD>ɕ\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E995B6><EFBFBD><EFBFBD><EFBFBD>ƁA<C681><41><EFBFBD>@<40><><EFBFBD>̈<EFBFBD><CC88><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# $GB->{xID} <20><> $GB->{LOGDAT} <20>Ɋi<C98A>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
&MakeIdStringAndLogdat($GB);
# 1<><31><EFBFBD>j<EFBFBD>b<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD>dat<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# $GB->{OUTDAT} <20>Ɋi<C98A>[<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
&MakeOutdat($GB);
# <20><><EFBFBD>̃t<CC83>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>(<28>t<EFBFBD><74><EFBFBD>p<EFBFBD>X)
my $DATALOG = $GB->{LOGPATH} . $GB->{FORM}->{'key'} . ".cgi";
# dat<61>̃t<CC83>@<40>C<EFBFBD><43><EFBFBD><EFBFBD>(<28>t<EFBFBD><74><EFBFBD>p<EFBFBD>X)
my $DATAFILE = $GB->{DATPATH} . $GB->{FORM}->{'key'} . ".dat";
#==================================================
#<23>@dat<61><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݁Adat<61>f<EFBFBD>[<5B>^<5E>ǂݍ<C782><DD8D>݁A1000<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#==================================================
if(IsSnowmanServer)
{
# <20><><EFBFBD>O<EFBFBD>̃f<CC83>B<EFBFBD><42><EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>΍쐬
unless(IsSnowmanServer == BBSD->{REMOTE} || -e $GB->{LOGPATH})
{
#umask(0);
mkdir($GB->{LOGPATH},0777);
}
# <20>ŋ<EFBFBD><C58B>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>ł́A924<32>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>X<EFBFBD>”\
if($GB->{FORM}->{'key'} =~ /^924/ && !$GB->{STRONGCAP})
{
#<23>X<EFBFBD><58><EFBFBD>b<EFBFBD>h924 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂Ȃ<DF82><C882>X<EFBFBD><58><EFBFBD>b<EFBFBD>h
&Update924($GB, $DATAFILE);
}
else
{
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݏ<EFBFBD><DD8F><EFBFBD>
&WriteSnow($GB, $DATALOG);
}
}
else
{
# <20>ʏ<EFBFBD><CA8F>̏<EFBFBD><CC8F><EFBFBD>(<28><EFBFBD><E182BE><EFBFBD>܂<EFBFBD><DC82><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>ꍇ)
# <20>ŋ<EFBFBD><C58B>L<EFBFBD><4C><EFBFBD>b<EFBFBD>v<EFBFBD>ł́A924<32>ɂ<EFBFBD><C982><EFBFBD><EFBFBD>X<EFBFBD>”\
if($GB->{FORM}->{'key'} =~ /^924/ && !$GB->{STRONGCAP})
{
#<23>X<EFBFBD><58><EFBFBD>b<EFBFBD>h924 = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߂Ȃ<DF82><C882>X<EFBFBD><58><EFBFBD>b<EFBFBD>h
&Update924($GB, $DATAFILE);
}
else
{
# dat<61>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
&WriteDatFile($GB, $DATAFILE, $GB->{OUTDAT}, 0);
# <20><><EFBFBD>O<EFBFBD>̃f<CC83>B<EFBFBD><42><EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882><EFBFBD><EFBFBD>΍쐬
unless(-e $GB->{LOGPATH})
{
#umask(0);
mkdir($GB->{LOGPATH},0777);
}
# <20><><EFBFBD>O<EFBFBD>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
&WriteDatFile($GB, $DATALOG, $GB->{LOGDAT}, 1);
}
# <<3C>`<60><><EFBFBD>V<EFBFBD>̗<EFBFBD>>
# dat<61>ɒNjL<C78B><4C><EFBFBD><EFBFBD><EFBFBD>O<EFBFBD><4F>dat<61>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E882B5><EFBFBD>ق<EFBFBD><D982><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȋC<C88B><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<EFBFBD><EFBFBD>΁A<CE81><41><EFBFBD><EFBFBD><EFBFBD>̂<EFBFBD><CC82>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>݂<EFBFBD><DD82><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȃ<EFBFBD><C882>Ƃ<EFBFBD><C682>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD><EB82A4><EFBFBD>A
# 1000<30><30><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD>ɂȂ<C982><C882><EFBFBD>ȋC<C88B><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
#
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ւ̉e<CC89><65><EFBFBD><EFBFBD><EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>Ǝv<C68E><76><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EB82A2><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD>p<EFBFBD><70><EFBFBD>l<EFBFBD><6C><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̂ŁA<C581><41><EFBFBD>͂Ƃ肠<C682><E882A0><EFBFBD><EFBFBD><EFBFBD>A<EFBFBD><41><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD>B
# 11/11/2005 by <20><>
# </<2F>`<60><><EFBFBD>V<EFBFBD>̗<EFBFBD>>
# dat<61>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>A$GB<47>ɃZ<C983>b<EFBFBD>g<EFBFBD><67><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD>‚<EFBFBD><C282>͌<EFBFBD><CD8C><EFBFBD>/html/<2F>̉<EFBFBD><CC89><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(MakeWorkFile)<29>̂Ɏg<C98E><67>
# $GB->{DATNUM}, $GB->{DAT1}, $GB->{DATLAST}
&GetDatInfo($GB, $GB->{FORM}->{'key'});
#&DispError2($GB,"root <20><>","<22><><EFBFBD>X<EFBFBD><58>: $GB->{DATNUM} <br>1<>̓<EFBFBD><CC93>e: $GB->{DAT1} <br>DATLAST<53>̓<EFBFBD>: $GB->{DATLAST}[0]");
# 1000<30><30><EFBFBD><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if($GB->{DATNUM} > 999)
{
&Over1000($GB, $DATAFILE);
# 1050<35><30><EFBFBD><EFBFBD><EFBFBD>ً}<7D>X<EFBFBD>g<EFBFBD>b<EFBFBD>p<EFBFBD>[
if($GB->{DATNUM} > 1049)
{
&EmergOver1000($GB, $DATAFILE);
# 1100<30><30><EFBFBD><EFBFBD><EFBFBD>ً}<7D>X<EFBFBD>g<EFBFBD>b<EFBFBD>p<EFBFBD>[(<28>Ō<EFBFBD><C58C>̎<EFBFBD><CC8E>i)
if($GB->{DATNUM} > 1099)
{
&EmergOver1000Final($GB, $DATAFILE);
}
}
}
#VIP<49>N<EFBFBD>H<EFBFBD><48><EFBFBD>e<EFBFBD>B<EFBFBD>ł̃X<CC83><58><EFBFBD>X<EFBFBD>g
if($GB->{VIPQ2STOP})
{
chmod(0555, $DATAFILE);
}
}
#==================================================
# bby.2ch.net <20>ɒʒm<CA92>B<EFBFBD>V<EFBFBD>X<EFBFBD><58><EFBFBD>b<EFBFBD>h<EFBFBD><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B
#==================================================
if($GB->{NEWTHREAD})
{
&NotifyBBY($GB);
}
#==================================================
# bbs.2ch.net <20>ɒʒm<CA92>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݏ<EFBFBD><DD8F><EFBFBD>
#==================================================
&NotifyBBS($GB);
$GB->{DEBUG} .= "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>60%<25>i<EFBFBD><69><EFBFBD>ł݂<C582><br>";
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>60%<25>i<EFBFBD><69><EFBFBD>ł݂<C582><DD82>@<br>dat<61>ւ̒NjL<C78B><4C><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><br>($GB->{HOST},$GB->{HOST999},$GB->{IDNOTANE})<br>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}<br>$GB->{MARU}<br>");
#==================================================
#<23>@<40>t<EFBFBD>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>isubject.txt & subback.html<6D>j
#==================================================
# <20><EFBFBD><E182BE><EFBFBD>܃T<DC83>[<5B>o<EFBFBD>ł́A<CD81>ȍ~<7E>̃t<CC83>@<40>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͂<EFBFBD><CD82>Ȃ<EFBFBD>(bbsd<73><64><EFBFBD><EFBFBD><EFBFBD>s)
if(IsSnowmanServer)
{
&endhtml($GB);
}
# subject.txt<78><74><EFBFBD>X<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> @{$GB->{NEWSUB}} <20>ɃT<C983>u<EFBFBD>W<EFBFBD>F<EFBFBD>N<EFBFBD>g<EFBFBD><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD>
# $GB->{SUBLINE} <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŏ<EFBFBD><C58F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# $GB->{FILENUM} <20>ɂ͂<C982><CD82><EFBFBD><EFBFBD><EFBFBD>subject.txt<78>̍s<CC8D><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E682A4>
&UpdateSubject($GB);
#&DispError2($GB,"root <20><>","newsub<75>̓<EFBFBD>: ${$GB->{NEWSUB}}[0]");
# html/ <20>̉<EFBFBD><CC89><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
&MakeWorkFile($GB, $GB->{FORM}->{'key'});
#subback.html<6D><6C><EFBFBD>X<EFBFBD>V<EFBFBD><56><EFBFBD><EFBFBD>
#Saborin<69>t<EFBFBD><74><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD>ڂ<EFBFBD>
if(!$GB->{SABORIN})
{
&UpdateSubback($GB);
}
#==================================================
#<23>@<40>{<7B>g<EFBFBD>s<EFBFBD>l<EFBFBD>k<EFBFBD>f<EFBFBD><66><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (index.html)
#==================================================
#<23>g<EFBFBD>їp<D197><70>index<65><78><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(/i/index.html)
#saku/saku2ch<63>ł<EFBFBD><C582>A<EFBFBD>g<EFBFBD>їp<D197><70> index.html <20>͍<EFBFBD><CD8D><EFBFBD>
if(!$GB->{SABORIN})
{
&MakeIndex4Keitai($GB);
}
#Saborin<69>t<EFBFBD><74><EFBFBD>O<EFBFBD><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ă<EFBFBD><C482><EFBFBD> or
# saku/saku2ch<63>ł<EFBFBD> index.html <20>̍X<CC8D>V<EFBFBD><56><EFBFBD><EFBFBD><EFBFBD>ڂ<EFBFBD> (sakud<75>ł͍<C582><CD8D><EFBFBD><EFBFBD>̂Œ<CC82><C592><EFBFBD>)
if(!$GB->{SABORIN} && !($GB->{FORM}->{'bbs'} eq "saku" || $GB->{FORM}->{'bbs'} eq "saku2ch"))
{
&MakeIndex4PC($GB);
}
$GB->{DEBUG} .= "<22><><EFBFBD><EFBFBD><EFBFBD>ɔ<EFBFBD><C994><EFBFBD><EFBFBD>ŗ~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>bbs.cgi<67>͎v<CD8E><76><EFBFBD>Ă<EFBFBD><C482><EFBFBD>=$GB->{INDEXFILE}<br>";
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40>Ō<EFBFBD><C58C>ǂ<EFBFBD><C782>Ȃ<EFBFBD><C882>Ă<EFBFBD><C482><EFBFBD><EFBFBD><EFBFBD>?<3F>@<br><br>");
# <20><><EFBFBD>ԍŌ<D48D><C58C>̂Ƃ<CC82><C682><EFBFBD><EFBFBD>̏<EFBFBD><CC8F><EFBFBD>
&endhtml($GB);
#&DispError2($GB,"FOX <20><>","<font color=green>FOX <20><></font><3E>@<40><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɍŌ<C98D><C58C>܂Ői<C590><69><EFBFBD>ł݂<C582><DD82>@<br>dat<61>ւ̒NjL<C78B><4C><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>Ƃ<EFBFBD><C682><EFBFBD><br>($GB->{HOST},$GB->{HOST999},$GB->{IDNOTANE})<br>$FOX->{$GB->{FORM}->{bbs}}->{'BBS_TITLE'}<br>$GB->{MARU}<br>");
}
sub KiseiOFF
{
my ($GB) = @_ ;
# if($GB->{FORM}->{bbs} eq 'ghard') {return 1;}
# if($ENV{'SERVER_NAME'} =~ /bbspink/) {return 1;}
return 0 ;
}
#############################################################################
# <20><><EFBFBD>C<EFBFBD><43><EFBFBD><EFBFBD><EFBFBD>[<5B>`<60><><EFBFBD>I<EFBFBD><49><EFBFBD><EFBFBD><EFBFBD>B<EFBFBD><42><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>l<EFBFBD>ł<EFBFBD><C582><EFBFBD><EFBFBD>B
#############################################################################
1;