* [PATCH] send-email: Add support for SSL and SMTP-AUTH
@ 2007-09-02 3:14 Douglas Stockwell
2007-09-02 7:55 ` Junio C Hamano
0 siblings, 1 reply; 8+ messages in thread
From: Douglas Stockwell @ 2007-09-02 3:14 UTC (permalink / raw)
To: git; +Cc: Douglas Stockwell
Allows username and password to be given using --smtp-authuser
and --smtp-authpass. SSL use is flagged by --smtp-ssl. These are
backed by corresponding defaults in the git configuration file.
Signed-off-by: Douglas Stockwell <doug@11011.net>
---
Documentation/git-send-email.txt | 21 +++++++++++++++-
git-send-email.perl | 50 ++++++++++++++++++++++++++++++-------
2 files changed, 60 insertions(+), 11 deletions(-)
diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt
index 8231286..471c268 100644
--- a/Documentation/git-send-email.txt
+++ b/Documentation/git-send-email.txt
@@ -79,6 +79,16 @@ The --cc option must be repeated for each user you want on the cc list.
`/usr/lib/sendmail` if such program is available, or
`localhost` otherwise.
+--smtp-authuser, --smtp-authpass::
+ Username and password for SMTP-AUTH. Defaults are the values of
+ the configuration values 'sendemail.smtpauthuser' and
+ 'sendemail.smtpauthpass'. If not set, authentication is not attempted.
+
+--smtp-ssl::
+ If set, connects to the SMTP server using SSL.
+ Default is the value of the 'sendemail.smtpssl' configuration value;
+ if that is unspecified, does not use SSL.
+
--subject::
Specify the initial subject of the email thread.
Only necessary if --compose is also set. If --compose
@@ -132,7 +142,16 @@ sendemail.chainreplyto::
parameter.
sendemail.smtpserver::
- Default smtp server to use.
+ Default SMTP server to use.
+
+sendemail.smtpauthuser::
+ Default SMTP-AUTH username.
+
+sendemail.smtpauthpass::
+ Default SMTP-AUTH password.
+
+sendemail.smtpssl::
+ Boolean value specifying the default to the '--smtp-ssl' parameter.
Author
------
diff --git a/git-send-email.perl b/git-send-email.perl
index f1a8855..38e8395 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -73,6 +73,12 @@ Options:
--smtp-server If set, specifies the outgoing SMTP server to use.
Defaults to localhost.
+ --smtp-authuser The username for SMTP-AUTH.
+
+ --smtp-authpass The password for SMTP-AUTH.
+
+ --smtp-ssl If set, connects to the SMTP server using SSL.
+
--suppress-from Suppress sending emails to yourself if your address
appears in a From: line. Defaults to off.
@@ -142,7 +148,6 @@ my $compose_filename = ".msg.$$";
my (@to,@cc,@initial_cc,@bcclist,@xh,
$initial_reply_to,$initial_subject,@files,$author,$sender,$compose,$time);
-my $smtp_server;
my $envelope_sender;
# Example reply to:
@@ -161,17 +166,34 @@ my ($quiet, $dry_run) = (0, 0);
# Variables with corresponding config settings
my ($thread, $chain_reply_to, $suppress_from, $signed_off_cc);
+my ($smtp_server, $smtp_authuser, $smtp_authpass, $smtp_ssl);
-my %config_settings = (
+my %config_bool_settings = (
"thread" => [\$thread, 1],
"chainreplyto" => [\$chain_reply_to, 1],
"suppressfrom" => [\$suppress_from, 0],
"signedoffcc" => [\$signed_off_cc, 1],
+ "smtpssl" => [\$smtp_ssl, 0]
+);
+
+my %config_string_settings = (
+ "smtpserver" => [\$smtp_server, undef],
+ "smtpauthuser" => [\$smtp_authuser, undef],
+ "smtpauthpass" => [\$smtp_authpass, undef],
);
-foreach my $setting (keys %config_settings) {
+foreach my $setting (keys %config_bool_settings) {
my $config = $repo->config_bool("sendemail.$setting");
- ${$config_settings{$setting}->[0]} = (defined $config) ? $config : $config_settings{$setting}->[1];
+ ${$config_bool_settings{$setting}->[0]} = (defined $config)
+ ? $config
+ : $config_bool_settings{$setting}->[1];
+}
+
+foreach my $setting (keys %config_string_settings) {
+ my $config = $repo->config("sendemail.$setting");
+ ${$config_string_settings{$setting}->[0]} = (defined $config)
+ ? $config
+ : $config_string_settings{$setting}->[1];
}
@bcclist = $repo->config('sendemail.bcc');
@@ -190,6 +212,9 @@ my $rc = GetOptions("sender|from=s" => \$sender,
"bcc=s" => \@bcclist,
"chain-reply-to!" => \$chain_reply_to,
"smtp-server=s" => \$smtp_server,
+ "smtp-authuser=s" => \$smtp_authuser,
+ "smtp-authpass=s" => \$smtp_authpass,
+ "smtp-ssl!" => \$smtp_ssl,
"compose" => \$compose,
"quiet" => \$quiet,
"suppress-from!" => \$suppress_from,
@@ -315,10 +340,7 @@ if ($thread && !defined $initial_reply_to && $prompting) {
$initial_reply_to =~ s/(^\s+|\s+$)//g;
}
-if (!$smtp_server) {
- $smtp_server = $repo->config('sendemail.smtpserver');
-}
-if (!$smtp_server) {
+if (!defined $smtp_server) {
foreach (qw( /usr/sbin/sendmail /usr/lib/sendmail )) {
if (-x $_) {
$smtp_server = $_;
@@ -548,8 +570,16 @@ X-Mailer: git-send-email $gitversion
print $sm "$header\n$message";
close $sm or die $?;
} else {
- require Net::SMTP;
- $smtp ||= Net::SMTP->new( $smtp_server );
+ if ($smtp_ssl) {
+ require Net::SMTP::SSL;
+ $smtp ||= Net::SMTP::SSL->new( $smtp_server, Port => 465 );
+ }
+ else {
+ require Net::SMTP;
+ $smtp ||= Net::SMTP->new( $smtp_server );
+ }
+ $smtp->auth( $smtp_authuser, $smtp_authpass )
+ or die $smtp->message if (defined $smtp_authuser);
$smtp->mail( $raw_from ) or die $smtp->message;
$smtp->to( @recipients ) or die $smtp->message;
$smtp->data or die $smtp->message;
--
1.5.3.rc7.17.gd77cc
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] send-email: Add support for SSL and SMTP-AUTH
2007-09-02 3:14 [PATCH] send-email: Add support for SSL and SMTP-AUTH Douglas Stockwell
@ 2007-09-02 7:55 ` Junio C Hamano
2007-09-02 9:43 ` Wincent Colaiuta
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Junio C Hamano @ 2007-09-02 7:55 UTC (permalink / raw)
To: Douglas Stockwell; +Cc: git, Douglas Stockwell
Thanks for the patch. I think SMTP-AUTH is a worthy addition.
I however have a bit of reservation about making the password
itself a configuration variable. I understand this is good
enough for the simplest case that you have only single e-mail
identity and mailserver to talk to.
By defining the two "default" variables, you are encouraging
users who want to use different identity per project to define
the smtpauthuser and smtpauthpass variables in .git/config of
each repository. I see two issues with this.
(1) Suppose I interact with under one mail identity with
projects A and B and under another mail identity with
project C and D. I need to have duplicate variable
settings in .git/config of A and B for one and another
duplicated sets in C and D.
(2) Although the recommended BCP is not to allow other people
to interact with your private working repository (iow, you
keep a separate "bare" repository you use solely for
publishing, you push from your private working repository
to that publishing repository, and have others look at only
the publishing repository), people often do not follow this
BCP and expose their private working repository to their
colleages for fetching (or even pushing). We currently do
not allow reading remote repository's configuration over
the git protocol, but there were some cases in the past
that the ability to do so might lead to their solutions
discussed on the list. We might not keep .git/config in
the repository that is accessed by fetch clients private in
the future.
So it might be better to split the configuration variables in this
way:
(1) in ~/.gitconfig (that is hopefully readable only by the
user):
[sendemail "default"]
server = mail.isp.com
user = junkio
pass = junkio-password-for-mail-isp-com
[sendemail "git"]
server = mail.git.xz
user = gitster
pass = gitster-password-for-mail-git.xz
This defines two "mail identities" I could use, depending
on which project's repository I run send-email.
(2) in project/.git/config:
[sendemail]
identity = git
This defines which "mail identity" I want to use for this
particular project.
This way, you can maintain more than one identity by having
multiple [sendemail "$identity"] sections in ~/.gitconfig, and
avoid having to expose and duplicate user/pass in various
project's .git/config.
The look-up rules by send-email program would be:
* if anything is given explicitly from the command line, use
that; otherwise
* if sendemail.identity does not exist, pretend
"sendemail.identity = default" was given (let's call that
identity nickname $identity in the following);
* if sendemail.$identity.server.exists, use that as the smtp
server to contact; otherwise sendemail.smtpserver is used;
* for user/pass information, use sendemail.$identity.user and
sendemail.$identity.pass.
Hmm?
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] send-email: Add support for SSL and SMTP-AUTH
2007-09-02 7:55 ` Junio C Hamano
@ 2007-09-02 9:43 ` Wincent Colaiuta
2007-09-02 11:06 ` David Symonds
2007-09-02 12:32 ` Johannes Schindelin
2 siblings, 0 replies; 8+ messages in thread
From: Wincent Colaiuta @ 2007-09-02 9:43 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Douglas Stockwell, git, Douglas Stockwell
El 2/9/2007, a las 9:55, Junio C Hamano escribió:
> So it might be better to split the configuration variables in this
> way:
>
> (1) in ~/.gitconfig (that is hopefully readable only by the
> user):
>
> [sendemail "default"]
> server = mail.isp.com
> user = junkio
> pass = junkio-password-for-mail-isp-com
>
> [sendemail "git"]
> server = mail.git.xz
> user = gitster
> pass = gitster-password-for-mail-git.xz
>
> This defines two "mail identities" I could use, depending
> on which project's repository I run send-email.
>
> (2) in project/.git/config:
>
> [sendemail]
> identity = git
>
> This defines which "mail identity" I want to use for this
> particular project.
>
> This way, you can maintain more than one identity by having
> multiple [sendemail "$identity"] sections in ~/.gitconfig, and
> avoid having to expose and duplicate user/pass in various
> project's .git/config.
Sounds like a good plan.
Wincent
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] send-email: Add support for SSL and SMTP-AUTH
2007-09-02 7:55 ` Junio C Hamano
2007-09-02 9:43 ` Wincent Colaiuta
@ 2007-09-02 11:06 ` David Symonds
2007-09-02 12:32 ` Johannes Schindelin
2 siblings, 0 replies; 8+ messages in thread
From: David Symonds @ 2007-09-02 11:06 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Douglas Stockwell, git, Douglas Stockwell
On 02/09/07, Junio C Hamano <gitster@pobox.com> wrote:
> So it might be better to split the configuration variables in this
> way:
>
> (1) in ~/.gitconfig (that is hopefully readable only by the
> user):
Perhaps git should then start warning if ~/.gitconfig is world (and
probably group) readable/writeable, a la ssh's ~/.ssh/X (for various
values of X)?
Dave.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] send-email: Add support for SSL and SMTP-AUTH
2007-09-02 7:55 ` Junio C Hamano
2007-09-02 9:43 ` Wincent Colaiuta
2007-09-02 11:06 ` David Symonds
@ 2007-09-02 12:32 ` Johannes Schindelin
2 siblings, 0 replies; 8+ messages in thread
From: Johannes Schindelin @ 2007-09-02 12:32 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Douglas Stockwell, git, Douglas Stockwell
Hi,
On Sun, 2 Sep 2007, Junio C Hamano wrote:
> Thanks for the patch. I think SMTP-AUTH is a worthy addition.
>
> I however have a bit of reservation about making the password
> itself a configuration variable.
Why not have the password in $HOME/.netrc, and ask interactively if none
was found?
Ciao,
Dscho
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH] send-email: Add support for SSL and SMTP-AUTH
@ 2007-09-02 18:06 Douglas Stockwell
2007-09-03 6:48 ` Wincent Colaiuta
2007-09-03 7:58 ` Junio C Hamano
0 siblings, 2 replies; 8+ messages in thread
From: Douglas Stockwell @ 2007-09-02 18:06 UTC (permalink / raw)
To: gitster; +Cc: git
Allows username and password to be given using --smtp-user
and --smtp-pass. SSL use is flagged by --smtp-ssl. These are
backed by corresponding defaults in the git configuration file.
This implements Junio's 'mail identity' suggestion in a slightly
more generalised manner. --identity=$identity, backed by
sendemail.identity indicates that the configuration subsection
[sendemail "$identity"] should take priority over the [sendemail]
section for all configuration values.
Signed-off-by: Douglas Stockwell <doug@11011.net>
---
Documentation/git-send-email.txt | 35 +++++++++++++-
git-send-email.perl | 101 ++++++++++++++++++++++++++++----------
2 files changed, 109 insertions(+), 27 deletions(-)
diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt
index 16bfd7b..1ec61af 100644
--- a/Documentation/git-send-email.txt
+++ b/Documentation/git-send-email.txt
@@ -75,6 +75,12 @@ The --cc option must be repeated for each user you want on the cc list.
Make git-send-email less verbose. One line per email should be
all that is output.
+--identity::
+ A configuration identity. When given, causes values in the
+ 'sendemail.<identity>' subsection to take precedence over
+ values in the 'sendemail' section. The default identity is
+ the value of 'sendemail.identity'.
+
--smtp-server::
If set, specifies the outgoing SMTP server to use (e.g.
`smtp.example.com` or a raw IP address). Alternatively it can
@@ -85,6 +91,17 @@ The --cc option must be repeated for each user you want on the cc list.
`/usr/lib/sendmail` if such program is available, or
`localhost` otherwise.
+--smtp-user, --smtp-pass::
+ Username and password for SMTP-AUTH. Defaults are the values of
+ the configuration values 'sendemail.smtpuser' and
+ 'sendemail.smtppass', but see also 'sendemail.identity'.
+ If not set, authentication is not attempted.
+
+--smtp-ssl::
+ If set, connects to the SMTP server using SSL.
+ Default is the value of the 'sendemail.smtpssl' configuration value;
+ if that is unspecified, does not use SSL.
+
--subject::
Specify the initial subject of the email thread.
Only necessary if --compose is also set. If --compose
@@ -122,6 +139,13 @@ The --to option must be repeated for each user you want on the to list.
CONFIGURATION
-------------
+sendemail.identity::
+ The default configuration identity. When specified,
+ 'sendemail.<identity>.<item>' will have higher precedence than
+ 'sendemail.<item>'. This is useful to declare multiple SMTP
+ identities and to hoist sensitive authentication information
+ out of the repository and into the global configuation file.
+
sendemail.aliasesfile::
To avoid typing long email addresses, point this to one or more
email aliases files. You must also supply 'sendemail.aliasfiletype'.
@@ -141,7 +165,16 @@ sendemail.chainreplyto::
parameter.
sendemail.smtpserver::
- Default smtp server to use.
+ Default SMTP server to use.
+
+sendemail.smtpuser::
+ Default SMTP-AUTH username.
+
+sendemail.smtppass::
+ Default SMTP-AUTH password.
+
+sendemail.smtpssl::
+ Boolean value specifying the default to the '--smtp-ssl' parameter.
Author
------
diff --git a/git-send-email.perl b/git-send-email.perl
index e0b7d12..dd7560b 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -73,9 +73,18 @@ Options:
--signed-off-cc Automatically add email addresses that appear in
Signed-off-by: or Cc: lines to the cc: list. Defaults to on.
+ --identity The configuration identity, a subsection to prioritise over
+ the default section.
+
--smtp-server If set, specifies the outgoing SMTP server to use.
Defaults to localhost.
+ --smtp-user The username for SMTP-AUTH.
+
+ --smtp-pass The password for SMTP-AUTH.
+
+ --smtp-ssl If set, connects to the SMTP server using SSL.
+
--suppress-from Suppress sending emails to yourself if your address
appears in a From: line. Defaults to off.
@@ -145,7 +154,6 @@ my $compose_filename = ".msg.$$";
my (@to,@cc,@initial_cc,@bcclist,@xh,
$initial_reply_to,$initial_subject,@files,$author,$sender,$compose,$time);
-my $smtp_server;
my $envelope_sender;
# Example reply to:
@@ -164,24 +172,26 @@ my ($quiet, $dry_run) = (0, 0);
# Variables with corresponding config settings
my ($thread, $chain_reply_to, $suppress_from, $signed_off_cc, $cc_cmd);
+my ($smtp_server, $smtp_authuser, $smtp_authpass, $smtp_ssl);
+my ($identity, $aliasfiletype, @alias_files);
-my %config_settings = (
+my %config_bool_settings = (
"thread" => [\$thread, 1],
"chainreplyto" => [\$chain_reply_to, 1],
"suppressfrom" => [\$suppress_from, 0],
"signedoffcc" => [\$signed_off_cc, 1],
- "cccmd" => [\$cc_cmd, ""],
+ "smtpssl" => [\$smtp_ssl, 0],
);
-foreach my $setting (keys %config_settings) {
- my $config = $repo->config_bool("sendemail.$setting");
- ${$config_settings{$setting}->[0]} = (defined $config) ? $config : $config_settings{$setting}->[1];
-}
-
-@bcclist = $repo->config('sendemail.bcc');
-if (!@bcclist or !$bcclist[0]) {
- @bcclist = ();
-}
+my %config_settings = (
+ "smtpserver" => \$smtp_server,
+ "smtpuser" => \$smtp_authuser,
+ "smtppass" => \$smtp_authpass,
+ "cccmd" => \$cc_cmd,
+ "aliasfiletype" => \$aliasfiletype,
+ "bcc" => \@bcclist,
+ "aliasesfile" => \@alias_files,
+);
# Begin by accumulating all the variables (defined above), that we will end up
# needing, first, from the command line:
@@ -194,6 +204,10 @@ my $rc = GetOptions("sender|from=s" => \$sender,
"bcc=s" => \@bcclist,
"chain-reply-to!" => \$chain_reply_to,
"smtp-server=s" => \$smtp_server,
+ "smtp-user=s" => \$smtp_authuser,
+ "smtp-pass=s" => \$smtp_authpass,
+ "smtp-ssl!" => \$smtp_ssl,
+ "identity=s" => \$identity,
"compose" => \$compose,
"quiet" => \$quiet,
"cc-cmd=s" => \$cc_cmd,
@@ -208,6 +222,43 @@ unless ($rc) {
usage();
}
+# Now, let's fill any that aren't set in with defaults:
+
+sub read_config {
+ my ($prefix) = @_;
+
+ foreach my $setting (keys %config_bool_settings) {
+ my $target = $config_bool_settings{$setting}->[0];
+ $$target = $repo->config_bool("$prefix.$setting") unless (defined $$target);
+ }
+
+ foreach my $setting (keys %config_settings) {
+ my $target = $config_settings{$setting};
+ if (ref($target) eq "ARRAY") {
+ unless (@$target) {
+ my @values = $repo->config("$prefix.$setting");
+ @$target = @values if (@values && defined $values[0]);
+ }
+ }
+ else {
+ $$target = $repo->config("$prefix.$setting") unless (defined $$target);
+ }
+ }
+}
+
+# read configuration from [sendemail "$identity"], fall back on [sendemail]
+$identity = $repo->config("sendemail.identity") unless (defined $identity);
+read_config("sendemail.$identity") if (defined $identity);
+read_config("sendemail");
+
+# fall back on builtin bool defaults
+foreach my $setting (values %config_bool_settings) {
+ ${$setting->[0]} = $setting->[1] unless (defined (${$setting->[0]}));
+}
+
+my ($repoauthor) = $repo->ident_person('author');
+my ($repocommitter) = $repo->ident_person('committer');
+
# Verify the user input
foreach my $entry (@to) {
@@ -222,14 +273,7 @@ foreach my $entry (@bcclist) {
die "Comma in --bcclist entry: $entry'\n" unless $entry !~ m/,/;
}
-# Now, let's fill any that aren't set in with defaults:
-
-my ($repoauthor) = $repo->ident_person('author');
-my ($repocommitter) = $repo->ident_person('committer');
-
my %aliases;
-my @alias_files = $repo->config('sendemail.aliasesfile');
-my $aliasfiletype = $repo->config('sendemail.aliasfiletype');
my %parse_alias = (
# multiline formats can be supported in the future
mutt => sub { my $fh = shift; while (<$fh>) {
@@ -320,10 +364,7 @@ if ($thread && !defined $initial_reply_to && $prompting) {
$initial_reply_to =~ s/(^\s+|\s+$)//g;
}
-if (!$smtp_server) {
- $smtp_server = $repo->config('sendemail.smtpserver');
-}
-if (!$smtp_server) {
+if (!defined $smtp_server) {
foreach (qw( /usr/sbin/sendmail /usr/lib/sendmail )) {
if (-x $_) {
$smtp_server = $_;
@@ -553,8 +594,16 @@ X-Mailer: git-send-email $gitversion
print $sm "$header\n$message";
close $sm or die $?;
} else {
- require Net::SMTP;
- $smtp ||= Net::SMTP->new( $smtp_server );
+ if ($smtp_ssl) {
+ require Net::SMTP::SSL;
+ $smtp ||= Net::SMTP::SSL->new( $smtp_server, Port => 465 );
+ }
+ else {
+ require Net::SMTP;
+ $smtp ||= Net::SMTP->new( $smtp_server );
+ }
+ $smtp->auth( $smtp_authuser, $smtp_authpass )
+ or die $smtp->message if (defined $smtp_authuser);
$smtp->mail( $raw_from ) or die $smtp->message;
$smtp->to( @recipients ) or die $smtp->message;
$smtp->data or die $smtp->message;
@@ -661,7 +710,7 @@ foreach my $t (@files) {
}
close F;
- if ($cc_cmd ne "") {
+ if (defined $cc_cmd) {
open(F, "$cc_cmd $t |")
or die "(cc-cmd) Could not execute '$cc_cmd'";
while(<F>) {
--
1.5.3.1.gc752
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] send-email: Add support for SSL and SMTP-AUTH
2007-09-02 18:06 Douglas Stockwell
@ 2007-09-03 6:48 ` Wincent Colaiuta
2007-09-03 7:58 ` Junio C Hamano
1 sibling, 0 replies; 8+ messages in thread
From: Wincent Colaiuta @ 2007-09-03 6:48 UTC (permalink / raw)
To: Douglas Stockwell; +Cc: gitster, git
El 2/9/2007, a las 20:06, Douglas Stockwell escribió:
> Allows username and password to be given using --smtp-user
> and --smtp-pass. SSL use is flagged by --smtp-ssl. These are
> backed by corresponding defaults in the git configuration file.
>
> This implements Junio's 'mail identity' suggestion in a slightly
> more generalised manner. --identity=$identity, backed by
> sendemail.identity indicates that the configuration subsection
> [sendemail "$identity"] should take priority over the [sendemail]
> section for all configuration values.
This will be really useful to me in my current set-up. I'll test it
here locally and let you know if I can find any problems.
Cheers,
Wincent
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] send-email: Add support for SSL and SMTP-AUTH
2007-09-02 18:06 Douglas Stockwell
2007-09-03 6:48 ` Wincent Colaiuta
@ 2007-09-03 7:58 ` Junio C Hamano
1 sibling, 0 replies; 8+ messages in thread
From: Junio C Hamano @ 2007-09-03 7:58 UTC (permalink / raw)
To: Douglas Stockwell; +Cc: gitster, git
Douglas Stockwell <doug@11011.net> writes:
> Allows username and password to be given using --smtp-user
> and --smtp-pass. SSL use is flagged by --smtp-ssl. These are
> backed by corresponding defaults in the git configuration file.
>
> This implements Junio's 'mail identity' suggestion in a slightly
> more generalised manner. --identity=$identity, backed by
> sendemail.identity indicates that the configuration subsection
> [sendemail "$identity"] should take priority over the [sendemail]
> section for all configuration values.
Even better than what I suggested, doing a lot more with the
same identity mechanism. I think it often is the case that
"when I work on this project, I send e-mail as this user to talk
with that server to send e-mail, and that server happens to talk
smtps so use that", and a single "identity" setting is a good
way to capture that. Very nice.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2007-09-03 7:59 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-09-02 3:14 [PATCH] send-email: Add support for SSL and SMTP-AUTH Douglas Stockwell
2007-09-02 7:55 ` Junio C Hamano
2007-09-02 9:43 ` Wincent Colaiuta
2007-09-02 11:06 ` David Symonds
2007-09-02 12:32 ` Johannes Schindelin
-- strict thread matches above, loose matches on Subject: below --
2007-09-02 18:06 Douglas Stockwell
2007-09-03 6:48 ` Wincent Colaiuta
2007-09-03 7:58 ` Junio C Hamano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).