[options] Hide --password=secret in verbose output
This commit is contained in:
parent
6a9b3b61ea
commit
3aa9a73554
@ -2,6 +2,7 @@ from __future__ import unicode_literals
|
||||
|
||||
import os.path
|
||||
import optparse
|
||||
import re
|
||||
import sys
|
||||
|
||||
from .downloader.external import list_external_downloaders
|
||||
@ -93,8 +94,18 @@ def parseOpts(overrideArguments=None):
|
||||
setattr(parser.values, option.dest, value.split(','))
|
||||
|
||||
def _hide_login_info(opts):
|
||||
opts = list(opts)
|
||||
for private_opt in ['-p', '--password', '-u', '--username', '--video-password']:
|
||||
PRIVATE_OPTS = ['-p', '--password', '-u', '--username', '--video-password']
|
||||
eqre = re.compile('^(?P<key>' + ('|'.join(re.escape(po) for po in PRIVATE_OPTS)) + ')=.+$')
|
||||
|
||||
def _scrub_eq(o):
|
||||
m = eqre.match(o)
|
||||
if m:
|
||||
return m.group('key') + '=PRIVATE'
|
||||
else:
|
||||
return o
|
||||
|
||||
opts = list(map(_scrub_eq, opts))
|
||||
for private_opt in PRIVATE_OPTS:
|
||||
try:
|
||||
i = opts.index(private_opt)
|
||||
opts[i + 1] = 'PRIVATE'
|
||||
|
Loading…
Reference in New Issue
Block a user