From owner-FreeBSD-users-jp@jp.freebsd.org  Fri Oct  6 01:36:54 2000
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id BAA66938;
	Fri, 6 Oct 2000 01:36:54 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from lets.i.nabechan.org (csc2-66.tokyo.mbn.or.jp [210.144.210.66])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id BAA66933
	for <FreeBSD-users-jp@jp.freebsd.org>; Fri, 6 Oct 2000 01:36:53 +0900 (JST)
	(envelope-from nabe@nabechan.org)
Received: from localhost (localhost [127.0.0.1])
	by lets.i.nabechan.org (8.11.0/3.7W-00080715) with ESMTP id e95Galp19876
	for <FreeBSD-users-jp@jp.freebsd.org>; Fri, 6 Oct 2000 01:36:47 +0900 (JST)
To: FreeBSD-users-jp@jp.freebsd.org
In-Reply-To: <200010051127.UAA25688@ns.mis.co.jp>
References: <200010051127.UAA25688@ns.mis.co.jp>
X-Mailer: Mew version 1.94.2 on XEmacs 21.1 (Carlsbad Caverns)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Message-Id: <20001006013647U.nabe@nabechan.org>
Date: Fri, 06 Oct 2000 01:36:47 +0900
From: Shingo WATANABE / =?ISO-2022-JP?B?GyRCRU9KVRsoQiA=?=
	=?ISO-2022-JP?B?GyRCPy04YxsoQg==?= <nabe@nabechan.org>
X-Dispatcher: imput version 20000228(IM140)
Lines: 100
Reply-To: FreeBSD-users-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+000315
X-Sequence: FreeBSD-users-jp 55836
Subject: [FreeBSD-users-jp 55836] Re: qpopper
 =?ISO-2022-JP?B?GyRCJHIbKEI=?= APOP
 =?ISO-2022-JP?B?GyRCQlAxfiRIJDckRiUkJXMlOSVIITwlayQ5JGsbKEI=?=
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org
X-Originator: nabe@nabechan.org

$B$o$?$J$Y$G$9!#(B

> $B!!(BMakefile $B$rFC$KJQ99$O$7$F$$$J$$$N$G!"(B/usr/local/libexec $B$K(B qpopper 
> $B$,!"(B/usr/local/bin $B$K(B qpopauth $B$,%$%s%9%H!<%k$5$l$?$N$G$9$,!"$3$N8e(B
> $B%3%^%s%I%i%$%s$+$i!"(Bqpopauth -init $B$r<B9T$G$-$^$;$s!#(B
> $B!!(BCommand not found $B$H$$$o$l$F$7$^$$$^$9!#(B

$B$3$l$O(B rehash $B$7$F$J$$$+$i!#(B

> $B!!%Q%9;XDj$K$O(B /usr/local/bin $B$,F~$C$F$$$^$9$7!"(Bqpopauth $B%3%^%s%I$b(B
> $B<B9T%S%C%H$,@_Dj$5$l$F$$$^$9!#(B
> $B!!$^$?!"%U%k%Q%9;XDj$G<B9T$9$k$H!"(B
> 
> # /usr/local/bin/qpopauth -init
> /usr/local/bin/qpopauth: Unknown mode: qpopauth
> 
> $B$H$$$o$l$F$7$^$$$^$9!#(B

$B$3$l$O(B ports $B$,0-$$$H;W$$$^$9!#(B
$B4JC1$K8@$&$H(B popauth $B$H$+(B apopauth $B$H$+(B scramauth $B$NL>A0$G%$%s%9%H!<%k$5(B
$B$l$F$$$J$1$l$P(B Unknown mode $B$K$J$j$^$9!#(B

$B$3$$$D$O(B C $B$G8@$&$H$3$m$N(B ARGV[0] $B$r$_$F%W%m%0%i%`$N5sF0$rJQ$($F$$$k$N$G!"(B
qpopauth $B$H$$$&L>A0$G%$%s%9%H!<%k$5$l$F$$$k$N$GL\E*DL$j$KF0$+$J$$$s$@$H(B
$B;W$$$^$9!#(B

$B$G!"$H$j$"$($:F0$+$9$K$O!"$?$V$s(B
cd /usr/local/bin
ln -s qpopauth popauth
$B$H$+$9$l$P!"K>$_DL$KF0$/$O$:$G$9!#(B


$B0J2<>\:Y$J@bL@!#(B

ports $B$N(B Makefile $B$rFI$`$H(B
>do-install:
>	cd ${WRKSRC} && \
>		${INSTALL_PROGRAM} popper/popauth ${PREFIX}/bin/qpopauth && \
>($B0J2<N,(B)

$B$3$3$G(B popauth $B$H$$$&%U%!%$%k$r(B qpopauth $B$H$$$&L>A0$G%$%s%9%H!<%k$9$k$N(B
$B$,$o$+$j$^$9!#(B

$B$G$b$C$F!"(Bpopauth.c $B$N%=!<%9$rGA$/$H(B

static struct mods {
       char   *name;
} modes[] = {
#define SCRAM_AUTH  0
    { "scramauth" },
#define APOP_AUTH   1
    { "apopauth"  },
#define POP_AUTH    2 
    { "popauth"   },
#define OTHER       3
    { NULL        }
};

$B$C$F$J46$8$G%b!<%I$N@k8@$,$"$C$F!"(B


    cp = program = argv[0];
    while ( *program )
        if ( *(program++) == '/' )
            cp = program;
    program = argv[0];

    mode = 0;
    while ( modes[mode].name &&
              strcmp(cp, modes[mode].name ) )
        mode++;


argv[0] $B$r8+$F@h$[$I$N0lMw$K$"$k$+%A%'%C%/$7$F$^$9!#(B
$B$G!"$=$l$>$l$K1~$8$F(B ($B%U%i%0$H$J$k$rJQ?t$r@_Dj$7$F(B) $B5sF0$,0[$J$kF0:n$r$9(B
$B$k$h$&$K$J$C$F$$$^$9!#(B

    if ( mode >= OTHER ) 
      adios ( "Unknown mode: %s", cp );
    else if ( mode == POP_AUTH || mode == APOP_AUTH ) {
      passtype = 0;
      onlysw   = 1;   /* popauth always change ONLY the apop 
             password */
    }
    else if ( mode == SCRAM_AUTH ) {
      passtype = 1; 
      onlysw   = 0;    /* scramauth by default also clears the apop 
                          password */
    }



> $B!!$I$3$G@_Dj%_%9$rHH$7$?$+$,NI$/$o$+$i$J$$$N$G2r7hJ}K!$r65$($F$$$?$@$1(B
> $B$^$9$G$7$g$&$+!)(B

$B$J$N$G!"HH?M$O(B ports $B$@$C$?$j$7$^$9!#(B($B>P(B)

$B$C$F$o$1$G!"$I$3$KO"Mm$9$l$PNI$$$N$+$J!)(B
$B!t(BMAINTAINER $B$O(B ports@freebsd.org $B$+1Q8l=q$/$N$,LLE]$@$J(B...

