about summary refs log tree commit homepage
path: root/lib/PublicInbox
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2021-09-09 05:25:03 +0000
committerEric Wong <e@80x24.org>2021-09-09 05:42:57 +0000
commit3bb66820e09ba26d811aff594f8dbd06f270bed5 (patch)
tree4634082288abfae0e5acb3d3313d4034963b5f01 /lib/PublicInbox
parent917eacadf8bf6eb9a24ca34bc6590c6e77e15dd2 (diff)
downloadpublic-inbox-3bb66820e09ba26d811aff594f8dbd06f270bed5.tar.gz
Since these are keyed by IMAP and NNTP URIs which can never
conflict, it simplifies our internals to keep them in one big
hash since we'll add POP3 and JMAP client support.
Diffstat (limited to 'lib/PublicInbox')
-rw-r--r--lib/PublicInbox/NetReader.pm10
-rw-r--r--lib/PublicInbox/Watch.pm2
2 files changed, 5 insertions, 7 deletions
diff --git a/lib/PublicInbox/NetReader.pm b/lib/PublicInbox/NetReader.pm
index f04752e5..91e53913 100644
--- a/lib/PublicInbox/NetReader.pm
+++ b/lib/PublicInbox/NetReader.pm
@@ -108,7 +108,7 @@ sub mic_for ($$$$) { # mic = Mail::IMAPClient
         my $err;
         if ($mic->login && $mic->IsAuthenticated) {
                 # success! keep IMAPClient->new arg in case we get disconnected
-                $self->{mic_arg}->{$sec} = $mic_arg;
+                $self->{net_arg}->{$sec} = $mic_arg;
                 if ($cred) {
                         $uri->user($cred->{username}) if !defined($uri->user);
                 } elsif ($mic_arg->{Authmechanism} eq 'ANONYMOUS') {
@@ -230,7 +230,7 @@ W: see https://rt.cpan.org/Ticket/Display.html?id=129967 for updates
                 }
         }
 
-        $self->{nn_arg}->{$sec} = $nn_arg;
+        $self->{net_arg}->{$sec} = $nn_arg;
         $cred->run($nn ? 'approve' : 'reject') if $cred && $cred->{filled};
         $nn;
 }
@@ -306,7 +306,6 @@ sub imap_common_init ($;$) {
                 }
         }
         # make sure we can connect and cache the credentials in memory
-        $self->{mic_arg} = {}; # schema://authority => IMAPClient->new args
         my $mics = {}; # schema://authority => IMAPClient obj
         for my $orig_uri (@{$self->{imap_order}}) {
                 my $sec = uri_section($orig_uri);
@@ -358,7 +357,6 @@ sub nntp_common_init ($;$) {
                 }
         }
         # make sure we can connect and cache the credentials in memory
-        $self->{nn_arg} = {}; # schema://authority => Net::NNTP->new args
         my %nn; # schema://authority => Net::NNTP object
         for my $uri (@{$self->{nntp_order}}) {
                 my $sec = uri_section($uri);
@@ -622,7 +620,7 @@ sub mic_get {
                 return $mic if $mic && $mic->IsConnected;
                 delete $cached->{$sec};
         }
-        my $mic_arg = $self->{mic_arg}->{$sec} or
+        my $mic_arg = $self->{net_arg}->{$sec} or
                         die "BUG: no Mail::IMAPClient->new arg for $sec";
         if (defined(my $cb_name = $mic_arg->{Authcallback})) {
                 if (ref($cb_name) ne 'CODE') {
@@ -660,7 +658,7 @@ sub nn_get {
         my $cached = $self->{nn_cached} // {};
         my $nn;
         $nn = delete($cached->{$sec}) and return $nn;
-        my $nn_arg = $self->{nn_arg}->{$sec} or
+        my $nn_arg = $self->{net_arg}->{$sec} or
                         die "BUG: no Net::NNTP->new arg for $sec";
         my $nntp_cfg = $self->{cfg_opt}->{$sec};
         $nn = nn_new($nn_arg, $nntp_cfg, $uri) or return;
diff --git a/lib/PublicInbox/Watch.pm b/lib/PublicInbox/Watch.pm
index 20ce0616..43ee0714 100644
--- a/lib/PublicInbox/Watch.pm
+++ b/lib/PublicInbox/Watch.pm
@@ -353,7 +353,7 @@ sub imap_idle_once ($$$$) {
 sub watch_imap_idle_1 ($$$) {
         my ($self, $uri, $intvl) = @_;
         my $sec = uri_section($uri);
-        my $mic_arg = $self->{mic_arg}->{$sec} or
+        my $mic_arg = $self->{net_arg}->{$sec} or
                         die "BUG: no Mail::IMAPClient->new arg for $sec";
         my $mic;
         local $0 = $uri->mailbox." $sec";