[Mew-dist 08458] Re: imput/imget changes

Motonori NAKAMURA motonori at example.com
1999年 4月 3日 (土) 11:14:05 JST


>>>>> On Mon, 29 Mar 1999 20:10:14 +0900, KOIE Hidetaka (鯉江英隆) <hide at example.com> said:

hide> im-112を入れて気づいたのですが、
hide> 1つのメイルサーバを、直接アクセスと
hide> SSH経由を切り替えて使うような(特殊な)場合に問題があります。

なるほど。考えが浅かったようですね。

PopHistory の設定を尊重するように元に戻し、自動切り返したい場合は、
default に
  PopHistory=ph-{POPSERVERID}
と定義しておくと ph-user at example.com というファイルが利用されるように
しました。ここで、server は pop server にコンタクトしたときに最初に
送られてくる greeting message に現れる at XXXXX starting の
XXXXX の部分です。もちろん、この形式は決まったものではないので、
サーバ名が分らなかった場合は、とりあえず unknown にしてしまいました。

*** IM/Pop.pm-	Thu Apr  1 08:51:43 1999
--- IM/Pop.pm	Sat Apr  3 11:12:02 1999
***************
*** 37,44 ****
  
  =cut
  
! use vars qw(*POPd
! 	    %history %newhistory);
  #######################
  # POP access routines #
  #######################
--- 37,43 ----
  
  =cut
  
! use vars qw(*POPd $SERVER_IDENT %history %newhistory);
  #######################
  # POP access routines #
  #######################
***************
*** 74,79 ****
--- 73,83 ----
  	im_warn("POP protocol error.\n");
  	return -1;
      }
+     if ($resp =~ /at ([\w\-.]+) /) {
+ 	$SERVER_IDENT = "$user\@$1";
+     } else {
+ 	$SERVER_IDENT = "$user\@unknown";
+     }
      if ($proto eq 'POP') {
  	$resp = &send_command(\*POPd, "USER $user", '');
  	if ($resp !~ /^\+/) {
***************
*** 283,289 ****
      # get information on the previous access
      $last = 0;
      if ($msgs > 0 && $main::opt_keep != 0) {
! 	$histfile = &pophistoryfile() .'-'. $host;
  	if ($histfile eq '') {
  	    im_err("POP historyfile $histfile undefined.\n");
  	    return -1;
--- 287,294 ----
      # get information on the previous access
      $last = 0;
      if ($msgs > 0 && $main::opt_keep != 0) {
! 	$histfile = &pophistoryfile();
! 	$histfile =~ s/{POPSERVERID}/$SERVER_IDENT/e;
  	if ($histfile eq '') {
  	    im_err("POP historyfile $histfile undefined.\n");
  	    return -1;



Mew-dist メーリングリストの案内