On 2024-06-16 at 22:49:55, Jeremy Baxter wrote: > Hi list, I was wondering if it's possible to configure send-email's > default SMTP client to execute a shell command and capture its output to > get the SMTP password rather than prompting the user on the terminal. > > Would anyone know if this is possible without setting > sendemail.sendmailCmd? You can use a credential helper, and that can be a shell command. For example, you can do this: git -c credential.helper= \ -c credential.helper='!f(){ echo username="$USER"; echo password="$PASS";};f' send-email ... This resets the list of credential helpers (with the empty value) to remove any you may have already set, and then uses that shell script to read the credentials from the environment. The documentation on the protocol is in git-credentials(1) and gitcredentials(7). You can also use your regular credential helper to store the credentials, in which case you need not set any -c options at all. Note that, in general, this only works for SASL authentication that uses usernames and passwords (e.g., PLAIN, SCRAM-SHA-256, etc.), and not things like GSSAPI (Kerberos), but you also don't need a credential helper for GSSAPI. -- brian m. carlson (they/them or he/him) Toronto, Ontario, CA
Attachment:
signature.asc
Description: PGP signature