$B$O$8$a$K(B

plum$B$O(BIRC(internet relay chat)$BMQ$NCf7Q(B/$B%/%i%$%"%s%H%W%m%0%i%`$G$9!#(B IRC$B%5!<%Q$H(BIRC$B%/%i%$%"%s%H$N@\B3$rCf7Q$7$F$$$m$$$m$J5!G=$rDs6!$7$^$9!#(B $BF1$8$h$&$J%W%m%0%i%`$K(Bpirc$B$J$I$,$"$j$^$9$,!"(B plum$B$K$O0J2<$N$h$&$JFCD'$,$"$j$^$9!#(B
$B3HD%$,4JC1(B
plum$B$NDs6!$9$k5!G=$N$[$H$s$I$O%b%8%e!<%k$G
$B%G%P%C%0$,4JC1(B
plum$B$OE0Dl$7$?%b%8%e!<%k2=$r9T$C$F$$$k$N$G!"(B $B%P%0$N860x$K$J$C$F$$$k%b%8%e!<%k$r4JC1$KFCDj$9$k$3$H$,$G$-$^$9!#(B $B$^$?!"(Bplum$B$O$N4V0c$$$J$I$r4JC1$KH/8+$9$k$3$H$,$G$-$^$9!#(B
$B$$$m$$$m$J(BOS$B$GF0$/(B
plum$B$O(Bperl$B$G=q$+$l$F$$$^$9$,!"(B $BFCDj$N4D6-$K0MB8$9$k=hM}$O$[$H$s$I9T$C$F$$$J$$$?$a!"(B perl$B$5$($"$l$P%O!<%I%&%'%"$d(BOS$B$rLd$o$:!"$I$s$J4D6-$G$bF0:n$7$^$9!#(B
$BJ#?t$N%5!<%P$K@\B3$G$-$k(B
plum$B$OF1;~$KJ#?t$N%5!<%P$K@\B3$G$-$k$h$&$K@_7W$5$l$F$$$^$9!#(B $B$=$N$?$a!"J#?t$N(BIRC$B%M%C%H%o!<%/$rF1;~$KMxMQ$7$?$j!"(B 1$B$D$N(Bplum$B$G%a%C%;!<%8$J$I$K<+F0$GH?1~$9$k%m%\%C%H$r(B $BJ#?t>oCs$5$;$k$3$H$,$G$-$^$9!#(B

plum$B$NF0:n(B

plum$B$O(BIRC$B%5!<%P$H(BIRC$B%/%i%$%"%s%H$H$N4V$GE>Aw$rCf7Q$7$^$9!#(B $B$D$^$j!"K\Mh$OD>@\@\B3$9$k$O$:$N(BIRC$B%5!<%P$H(BIRC$B%/%i%$%"%s%H$r(B $B@\B3$7$J$$$h$&$K$7!"(BIRC$B%5!<%P$H(Bplum$B!"(Bplum$B$H(BIRC$B%/%i%$%"%s%H$r@\B3$7$^$9!#(B $B$3$l$K$h$j(Bplum$B$O(BIRC$B%5!<%P$H(BIRC$B%/%i%$%"%s%H$+$iAw$i$l$F$/$k(B $B%a%C%;!<%8$rA4$F
plum$B$r;H$&>l9g$H;H$o$J$$>l9g$G$O0J2<$N$h$&$J0c$$$,$"$j$^$9!#(B $B$^$:!"(Bplum$B$r;H$o$J$$>l9g$O(BIRC$B%/%i%$%"%s%H$+$i(BIRC$B%5!<%P$XD>@\@\B3$7$^$9!#(B $B$3$N$H$-(BIRC$B%/%i%$%"%s%H$H(BIRC$B%5!<%P$,$*8_$$$K@\B3$5$l$F$$$^$9!#(B
    IRC$B%/%i%$%"%s%H(B --- IRC$B%5!<%P(B
plum$B$r;H$&$H!"(Bplum$B$,(BIRC$B%/%i%$%"%s%H$H(BIRC$B%5!<%P$NCf7Q$r9T$$$^$9!#(B $B$3$N$H$-(BIRC$B%/%i%$%"%s%H$H(Bplum$B!"(Bplum$B$H(BIRC$B%5!<%P$O@\B3$5$l$F$$$^$9$,!"(B IRC$B%/%i%$%"%s%H$H(BIRC$B%5!<%P$O@\B3$5$l$F$$$^$;$s!#(B
    IRC$B%/%i%$%"%s%H(B --- plum --- IRC$B%5!<%P(B
$B$3$l$@$1$G$O@\@\B3$5$l$F$$$J$$$@$1$G$9!#(B $B$=$3$G(Bplum$B$O(BIRC$B%/%i%$%"%s%H$KBP$7$F$O(BIRC$B%5!<%P$N$U$j$r$7!"(B IRC$B%5!<%P$KBP$7$F$O(BIRC$B%/%i%$%"%s%H$N$U$j$r$7$^$9!#(B
                       +---- plum ----+
    IRC$B%/%i%$%"%s%H(B --- IRC$B%5!<%P(B
                        IRC$B%/%i%$%"%s%H(B --- IRC$B%5!<%P(B
$B$3$l$K$h$j!"(Bplum$B$K(BIRC$B%/%i%$%"%s%H$,@\B3$5$l$F$$$J$$$H$-$G$b(B IRC$B%5!<%P$+$i$O(BIRC$B%/%i%$%"%s%H$,$"$k$h$&$K8+$(!"(B plum$B$K(BIRC$B%5!<%P$,@\B3$5$l$F$$$J$$$H$-$G$b!"(B IRC$B%/%i%$%"%s%H$+$i$O$=$3$K(BIRC$B%5!<%P$,$"$k$h$&$K8+$($^$9!#(B $B$=$N$?$a!"(BIRC$B%/%i%$%"%s%H$r=*N;$7$F$7$^$C$F$b!"(B IRC$B%5!<%P$+$i$O$^$@(BIRC$B%/%i%$%"%s%H$,@\B3$5$l$F$$$k$h$&$K8+$($^$9!#(B IRC$B$K>oCs$7$F$$$k?M$NB?$/$O!"$3$N$h$&$JJ}K!$G(BIRC$B%5!<%P$K@\B3$7$F$$$^$9!#(B

$BI,MW$J$b$N(B

plum$B$rMxMQ$9$k$?$a$K$O0J2<$N$b$N$,I,MW$G$9!#(B
perl
plum$B$O(Bperl$B$G=q$+$l$F$$$k$N$G!"(B $Be$N$b$N$J$i$I$l$G$b$+$^$$$^$;$s$,!"(B $B%M%C%H%o!<%/$N5!G=$r;HMQ$7$F$$$k$?$a!"(B $B$J$k$Y$/%P!<%8%g%s(B5.003$B0J>e$N$b$N$r$*$9$9$a$7$^$9!#(B $B$^$?!"(BMS-DOS$BMQ$J$I$N(Bperl$B$G$O%M%C%H%o!<%/$N5!G=$,(B $B
$B%M%C%H%o!<%/(B
IRC$B$O%M%C%H%o!<%/$rMxMQ$7$?%5!<%S%9$J$N$G!"(B IRC$B$N%2!<%H%&%'%$$G$"$k(Bplum$B$b%M%C%H%o!<%/$rMxMQ$7$F$$$^$9!#(B $B$=$N$?$a!"%M%C%H%o!<%/$,MxMQ$G$-$J$$4D6-$G$O(B plum$B$rMxMQ$9$k$3$H$O$G$-$^$;$s!#(B
IRC$B%/%i%$%"%s%H(B
plum$B$OC1$J$k%2!<%H%&%'%$$K$9$.$J$$$N$G!"(B plum$B$rMxMQ$9$k$?$a$K$O(BIRC$B$N%/%i%$%"%s%H%W%m%0%i%`$,I,MW$G$9!#(B IRC$B%/%i%$%"%s%H$O$I$s$J$b$N$G$b$+$^$$$^$;$s$,!"(B RFC1459$B$N(BIRC$B%W%m%H%3%k$K=`5r$7$?$b$N$r;HMQ$7$F2<$5$$!#(B $B$^$?!"(BIRC$B%/%i%$%"%s%H$OF|K\8l$KBP1~$7$F$$$k$b$N$,$h$$$G$9$,!"(B plum$B$K$O4A;z%3!<%I$rJQ49$9$k5!G=$,$"$k$N$G!"(B $BF|K\8l$KBP1~$7$F$$$J$$$b$N$G$bMxMQ$G$-$k$b$N$,$"$j$^$9!#(B

$B plum$B$r perl plum $B$C$F%b%8%e!<%k$NAH$_9~$_$r9T$$$^$9!#(B $B$3$N$H$-!"(Bplum.conf$B$,8+$D$+$i$J$1$l$P2?$b$;$:$K=*N;$7$^$9!#(B

$B$^$?!"J#?t$N@_Dj%U%!%$%k$rF1;~$KFI$_9~$s$GJ#?t$N%5!<%P$K@\B3$7$?$j!"(B $BJ#?t$N%f!<%6$r>oCs$5$;$k$3$H$b$G$-$^$9!#(B $B$3$N>l9g$O0J2<$N$h$&$KF~NO$7$^$9!#(B
    perl plum user1 user2
$B$3$N$H$-!"(Bplum.conf$B!"(Bplum-user1.conf$B!"(Bplum-user2.conf$B$N(B 3$B$D$N@_Dj%U%!%$%k$rFI$_9~$_$^$9!#(B $B;XDj$7$?@_Dj%U%!%$%k$N$I$l$+$,8+$D$+$i$J$/$F$bL5;k$7$Fl9g$O2?$b$;$:$K=*N;$7$^$9!#(B

$B%/%i%$%"%s%H$N@_Dj(B

plum$B$r
  • $B$^$:!"(BIRC$B%5!<%P$NL>A0$r(Bplum$B$rA0$K$7$^$9!#(B plum$B$rA0$,$D$$$F$$$J$$>l9g!"(B $B$b$7$/$OL>A0$,$o$+$i$J$$>l9g$O!"L>A0$N$+$o$j$K(BIP$B%"%I%l%9$r;XDj$7$^$9!#(B
  • $B
  • $B:G8e$K!"(BIRC$B%5!<%P$K@\B3$9$k%Q%9%o!<%I$r@_Dj$7$^$9!#(B $BK\J*$N(BIRC$B%5!<%P$OIaDL%Q%9%o!<%I$rMW5a$7$^$;$s$,!"(B plum$B$G$OIaDL%Q%9%o!<%I$r@_Dj$7$FB>$N?M$K>! $B$3$l$G(BIRC$B%/%i%$%"%s%H$+$i(Bplum$B$K@\B3$G$-$k$O$:$G$9!#(B $B@\B3$G$-$J$$>l9g$O@_Dj$,4V0c$C$F$$$J$$$+$r$h$/3NG'$7$F2<$5$$!#(B $B$^$?0J2<$N%H%i%V%k%7%e!<%F%#%s%0$b;29M$K$7$F2<$5$$!#(B

    $B%H%i%V%k%7%e!<%F%#%s%0(B

    $B
    plum.conf$B$,$J$$(B
    plum.conf$B$O%+%l%s%H%G%#%l%/%H%j$K$"$k$b$N$r;HMQ$7$^$9!#(B $B%+%l%s%H%G%#%l%/%H%j$K(Bplum.conf$B$,$"$k$3$H$r3NG'$7$F2<$5$$!#(B
    $B%5!<%P$K@\B3$7$J$$(B
    $B%U%!%$%"%&%)!<%k$,$"$k(B
    plum$B$O%5!<%P$H$N4V$K%U%!%$%"%&%)!<%k$,$"$k$H!"(B $B%5!<%P$K@\B3$9$k$3$H$,$G$-$^$;$s!#(B $B%U%!%$%"%&%)!<%k$N1F6A$r
    $B%5!<%P$N@\B3$,$$$C$Q$$$K$J$C$F$$$k(B
    $B%5!<%P$K@\B3$G$-$k?M?t$,$$$C$Q$$$K$J$k$H!"(B $B$=$l0J>e@\B3$9$k$3$H$,$G$-$J$/$J$j$^$9!#(B plum.conf$B$KJL$N%5!<%P$N@_Dj$rDI2C$7$F2<$5$$!#(B
    $B%M%C%H%o!<%/5wN%$,1s$$(B
    $B%M%C%H%o!<%/E*$J5wN%$,1s$+$C$?$j!"(B $B2s@~B.EY$,CY$$$H@\B3$9$k$^$G$KHs>o$K(B $B;~4V$,$+$+$k$3$H$,$"$j$^$9!#(B
    $B%/%i%$%"%s%H$+$i@\B3$G$-$J$$(B
    $B%U%!%$%"%&%)!<%k$,$"$k(B
    plum$B$H%/%i%$%"%s%H$H$N4V$K%U%!%$%"%&%)!<%k$,$"$k$H!"(B $B%/%i%$%"%s%H$+$i@\B3$9$k$3$H$,$G$-$^$;$s!#(B $B%U%!%$%"%&%)!<%k$N1F6A$r
    $B%M%C%H%o!<%/5wN%$,1s$$(B
    $B%M%C%H%o!<%/E*$J5wN%$,1s$+$C$?$j!"(B $B2s@~B.EY$,CY$$$H@\B3$9$k$^$G$KHs>o$K(B $B;~4V$,$+$+$k$3$H$,$"$j$^$9!#(B
    $B%/%i%$%"%s%H$+$i@\B3$7$F$b$9$0$K@Z$i$l$F$7$^$&(B
    plum.conf$B$K@_Dj$7$?%/%i%$%"%s%H%^%9%/$K0z$C$+$+$C$F$$$k(B
    IRC$B%/%i%$%"%s%H$r
    $BJL$N%f!<%6$,F1$8%]!<%H$r$9$G$K;HMQ$7$F$$$k(B
    plum.client$B$N%]!<%H$NHV9f$rJQ99$7$F$_$F2<$5$$!#(B
    $B%Q%9%o!<%I$,4V0c$C$F$$$k(B
    $B%Q%9%o!<%I$O@5$7$/F~NO$7$F2<$5$$!#(B
    $B$=$NB>(B
    $BITL@(B
    $B$I$s$J>uBV$J$N$+$r$J$k$Y$/>\$7$/65$($F2<$5$$!#(B $B$=$N;~$K$G$-$l$P(Bsys/dump.plm$B$N=PNO$9$k(B $B%7%9%F%`>pJs$r0l=o$K65$($F2<$5$$!#(B