Add interactive authentication password input feature

This commit is contained in:
Benjamin Renard 2015-11-30 18:47:55 +01:00
parent f9d216e372
commit a2ccabb9e8
3 changed files with 15 additions and 4 deletions

8
imapt
View file

@ -31,6 +31,7 @@ import logging
import sys import sys
import re import re
import getpass
parser = OptionParser() parser = OptionParser()
@ -123,10 +124,13 @@ else:
logging.basicConfig(level=loglevel,format='%(asctime)s - %(levelname)s - %(message)s', datefmt='%m/%d/%Y %I:%M:%S %p') logging.basicConfig(level=loglevel,format='%(asctime)s - %(levelname)s - %(message)s', datefmt='%m/%d/%Y %I:%M:%S %p')
if not options.user or not options.password: if not options.user:
logging.fatal('You must provide the user login and password') logging.fatal('You must provide the user login')
sys.exit(1) sys.exit(1)
if not options.password:
options.password=getpass.getpass()
if options.port is None: if options.port is None:
if options.ssl: if options.ssl:
options.port=993 options.port=993

8
popt
View file

@ -26,6 +26,7 @@ from optparse import OptionParser
import os import os
import poplib import poplib
import getpass
import logging import logging
import sys import sys
@ -91,10 +92,13 @@ else:
logging.basicConfig(level=loglevel,format='%(asctime)s - %(levelname)s - %(message)s', datefmt='%m/%d/%Y %I:%M:%S %p') logging.basicConfig(level=loglevel,format='%(asctime)s - %(levelname)s - %(message)s', datefmt='%m/%d/%Y %I:%M:%S %p')
if not options.user or not options.password: if not options.user:
logging.fatal('You must provide the user login and password') logging.fatal('You must provide the user login')
sys.exit(1) sys.exit(1)
if not options.password:
options.password=getpass.getpass()
if options.port is None: if options.port is None:
if options.ssl: if options.ssl:
options.port=995 options.port=995

3
smtpt
View file

@ -31,6 +31,7 @@ from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart from email.MIMEMultipart import MIMEMultipart
from email.MIMEBase import MIMEBase from email.MIMEBase import MIMEBase
from email import Encoders from email import Encoders
import getpass
import logging import logging
import sys import sys
@ -234,6 +235,8 @@ if options.debug:
if options.user: if options.user:
error = None error = None
if not options.password:
options.password=getpass.getpass()
try: try:
server.login(options.user,options.password) server.login(options.user,options.password)
except Exception as e: except Exception as e: