diff options
| author | Simeon Simeonov | 2015-04-16 13:41:29 +0200 |
|---|---|---|
| committer | Simeon Simeonov | 2015-04-16 13:41:29 +0200 |
| commit | b2ccfda61b7b7a1b37d4f9ffed57fcc4585d9ce0 (patch) | |
| tree | cbc56e662d6e44c89d33a1a00665474daca25151 /beinc_generic_client.py | |
| parent | c251865a374019bf4716d9bef2545bfe565d0a33 (diff) | |
Add support for socket timeout. PEP8 fixes
Diffstat (limited to 'beinc_generic_client.py')
| -rwxr-xr-x | beinc_generic_client.py | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/beinc_generic_client.py b/beinc_generic_client.py index 0627ce5..48d6a13 100755 --- a/beinc_generic_client.py +++ b/beinc_generic_client.py | |||
| @@ -23,7 +23,7 @@ import errno | |||
| 23 | import getpass | 23 | import getpass |
| 24 | import httplib # for Python < 2.7.9 | 24 | import httplib # for Python < 2.7.9 |
| 25 | import os | 25 | import os |
| 26 | import socket # for Python < 2.7.9 | 26 | import socket |
| 27 | import ssl | 27 | import ssl |
| 28 | import sys | 28 | import sys |
| 29 | import xmlrpclib | 29 | import xmlrpclib |
| @@ -147,6 +147,9 @@ def action_execute(args): | |||
| 147 | except ssl.SSLError as e: | 147 | except ssl.SSLError as e: |
| 148 | sys.stderr.write('BEINC SSL/TLS error: {0}\n'.format(e)) | 148 | sys.stderr.write('BEINC SSL/TLS error: {0}\n'.format(e)) |
| 149 | sys.exit(errno.EPERM) | 149 | sys.exit(errno.EPERM) |
| 150 | except socket.error as e: | ||
| 151 | sys.stderr.write('BEINC connection error: {0}\n'.format(e)) | ||
| 152 | sys.exit(errno.EPERM) | ||
| 150 | except Exception as e: | 153 | except Exception as e: |
| 151 | sys.stderr.write('BEINC generic client error: {0}\n'.format(e)) | 154 | sys.stderr.write('BEINC generic client error: {0}\n'.format(e)) |
| 152 | sys.exit(errno.EPERM) | 155 | sys.exit(errno.EPERM) |
| @@ -234,6 +237,13 @@ def main(): | |||
| 234 | default='auto', | 237 | default='auto', |
| 235 | help='Use SSL version: "auto" (default), "SSLv3", "TLSv1"') | 238 | help='Use SSL version: "auto" (default), "SSLv3", "TLSv1"') |
| 236 | parser.add_argument( | 239 | parser.add_argument( |
| 240 | '-T', '--socket-timeout', | ||
| 241 | metavar='SECONDS', | ||
| 242 | type=int, | ||
| 243 | dest='socket_timeout', | ||
| 244 | default=3, | ||
| 245 | help='Socket timeout in seconds (0=Python default) (default: 3)') | ||
| 246 | parser.add_argument( | ||
| 237 | '-t', '--title', | 247 | '-t', '--title', |
| 238 | metavar='TITLE', | 248 | metavar='TITLE', |
| 239 | type=str, | 249 | type=str, |
| @@ -262,6 +272,8 @@ def main(): | |||
| 262 | except Exception as e: | 272 | except Exception as e: |
| 263 | sys.stderr.write('Unable to open password file: {0}'.format(e)) | 273 | sys.stderr.write('Unable to open password file: {0}'.format(e)) |
| 264 | sys.exit(1) | 274 | sys.exit(1) |
| 275 | if args.socket_timeout: | ||
| 276 | socket.setdefaulttimeout(args.socket_timeout) | ||
| 265 | action_execute(args) | 277 | action_execute(args) |
| 266 | sys.exit(0) | 278 | sys.exit(0) |
| 267 | 279 | ||
