def DecodeBase64Option(option, opt, value): try: return base64.standard_b64decode(value) except TypeError: raise OptionValueError( "option %s: invalid base64 value: %r" % (opt, value))
def DecodeHexIntOption(option, opt, value): try: return int(value, 16) except ValueError: raise OptionValueError("option %s: invalid value: %r" % (opt, value))
def compress_level(option, opt_str, value, parser): if value < 0 or value > 9: raise OptionValueError("Valid values for --compressed are 0..9") setattr(parser.values, option.dest, value)
def buffer_size(option, opt_str, value, parser): if not value > 0: raise OptionValueError("Buffer size value should be greater than 0") setattr(parser.values, option.dest, value)
def packet_option_handler(option, opt_str, value, parser): if value not in (1, 2, 4): raise OptionValueError("Valid values for --packet are 1, 2, or 4") setattr(parser.values, option.dest, value)
def mode_callback(option, opt, value, parser): try: parser.values.mode = getattr(DES, 'MODE_'+value.upper()) except AttributeError: raise OptionValueError('Invalid mode "%s"' % value)
def check_intx(option, opt, value): try: return int(value, 0) except: raise OptionValueError("option %s: invalid integer value: %r" % (opt, value))
def check_eng_float(option, opt, value): try: return eng_notation.str_to_num(value) except: raise OptionValueError( "option %s: invalid engineering notation value: %r" % (opt, value))
def _validate_callback(option, opt_str, value, parser, valid_values): if value not in valid_values: raise OptionValueError('%s must be one of: %s, not %s' % (opt_str, '|'.join(valid_values), value)) setattr(parser.values, option.dest, value)