* Add --fingerprint option
* Simplify conditional checks
* Improve warning wording
* Throw error instead of logging and returning
* --fingerprint => --serverfingerprint
* Only run fingerprint checks against main server
* Throw error if --serverfingerprint is set for a non SSL main server
* Fix linting errors
* Don't check certificate fingerprint in a seperate connection
* Disallow CA signed certs when a fingerprint is provided
* Show clear error and then exit for Qt GUI users
* Remove leading newlines from error dialog
* Always check is_main_server() when getting fingerprint
* Document how to generate SSL cert fingerprint
parser.add_argument("-f","--serverfingerprint",dest="serverfingerprint",default=None,help="only allow connecting to servers with a matching SSL certificate SHA256 fingerprint."+""+
"To calculate this yourself: '$ openssl x509 -noout -fingerprint -sha256 -inform pem -in mycertfile.crt'. Enter as 64 hex chars.")
parser.add_argument("-1","--oneserver",action="store_true",dest="oneserver",default=None,help="connect to one server only")
parser.add_argument("-1","--oneserver",action="store_true",dest="oneserver",default=None,help="connect to one server only")
parser.add_argument("-s","--server",dest="server",default=None,help="set server host:port:protocol, where protocol is either t (tcp) or s (ssl)")
parser.add_argument("-s","--server",dest="server",default=None,help="set server host:port:protocol, where protocol is either t (tcp) or s (ssl)")
parser.add_argument("-p","--proxy",dest="proxy",default=None,help="set proxy [type:]host[:port] (or 'none' to disable proxy), where type is socks4,socks5 or http")
parser.add_argument("-p","--proxy",dest="proxy",default=None,help="set proxy [type:]host[:port] (or 'none' to disable proxy), where type is socks4,socks5 or http")