]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/GitCredential.pm
rename {pi_config} fields to {pi_cfg}
[public-inbox.git] / lib / PublicInbox / GitCredential.pm
index 826e7a55e8b854fe6a1f2bfd63f696430d78b791..c6da6a090caad0b415c425e3e5e694c63963f60d 100644 (file)
@@ -25,6 +25,21 @@ sub run ($$) {
        close $out_r or die "`git credential $op' failed: \$!=$! \$?=$?\n";
 }
 
+sub check_netrc ($) {
+       my ($self) = @_;
+
+       # part of the standard library, but distributions may split it out
+       eval { require Net::Netrc };
+       if ($@) {
+               warn "W: Net::Netrc missing: $@\n";
+               return;
+       }
+       if (my $x = Net::Netrc->lookup($self->{host}, $self->{username})) {
+               $self->{username} //= $x->login;
+               $self->{password} = $x->password;
+       }
+}
+
 sub fill {
        my ($self) = @_;
        my $out_r = run($self, 'fill');