def _bond_opts_name2numeric_getval(opt_path, opt_write_file, numeric_val): try: opt_write_file.write(str(numeric_val)) opt_write_file.flush() except IOError as e: if e.errno in (errno.EINVAL, errno.EPERM, errno.EACCES): return None, None else: e.filename = "opt[%s], numeric_val[%s]" % (opt_path, numeric_val) raise return _bond_opts_read_elements(opt_path)
def _bond_opts_name2numeric_getval(opt_path, opt_write_file, numeric_val): try: opt_write_file.write(str(numeric_val)) opt_write_file.flush() except IOError as e: if e.errno in (errno.EINVAL, errno.EPERM, errno.EACCES): return None, None else: e.filename = "opt[%s], numeric_val[%s]" % (opt_path, numeric_val) raise return _bond_opts_read_elements(opt_path)
def _bond_opts_name2numeric(bond): """ Returns a dictionary of bond option name and a values iterable. E.g., {'mode': ('balance-rr', '0'), 'xmit_hash_policy': ('layer2', '0')} """ bond_mode_path = BONDING_OPT % (bond, 'mode') paths = (p for p in iglob(BONDING_OPT % (bond, '*')) if p != bond_mode_path) opts = {} for path in paths: elements = _bond_opts_read_elements(path) if len(elements) == 2: opts[os.path.basename(path)] = \ _bond_opts_name2numeric_scan(path) return opts
def _bond_opts_name2numeric(bond): """ Returns a dictionary of bond option name and a values iterable. E.g., {'mode': ('balance-rr', '0'), 'xmit_hash_policy': ('layer2', '0')} """ bond_mode_path = BONDING_OPT % (bond, 'mode') paths = (p for p in iglob(BONDING_OPT % (bond, '*')) if p != bond_mode_path) opts = {} for path in paths: elements = _bond_opts_read_elements(path) if len(elements) == 2: opts[os.path.basename(path)] = \ _bond_opts_name2numeric_scan(path) return opts