diff options
author | George Kraft <george.kraft@calxeda.com> | 2013-07-17 17:54:52 -0500 |
---|---|---|
committer | George Kraft <george.kraft@calxeda.com> | 2013-07-22 14:57:08 -0500 |
commit | 2cb07f2deb00d43b13e81e701fcb721310babc58 (patch) | |
tree | 4c8c099f2b28e8e286edaab413e2c253e0664b4f | |
parent | d58d0991fec92c5395ab10f5de6739b113c46216 (diff) | |
download | pyipmi-2cb07f2deb00d43b13e81e701fcb721310babc58.tar.gz |
SW-2207: Add bindings for macaddr_base and macaddr_mask commands
-rw-r--r-- | pyipmi/bmc.py | 12 | ||||
-rw-r--r-- | pyipmi/commands/fabric_config.py | 43 |
2 files changed, 54 insertions, 1 deletions
diff --git a/pyipmi/bmc.py b/pyipmi/bmc.py index cda3c9b..a928415 100644 --- a/pyipmi/bmc.py +++ b/pyipmi/bmc.py @@ -492,6 +492,18 @@ class BMC(object): def fabric_config_set_link_users_factor(self, lu_factor): return self.handle.fabric_config_setlinkusersfactor(lu_factor=lu_factor) + def fabric_config_set_macaddr_base(self, macaddr): + return self.handle.fabric_config_set_macaddr_base(macaddr=macaddr) + + def fabric_config_get_macaddr_base(self): + return self.handle.fabric_config_get_macaddr_base() + + def fabric_config_set_macaddr_mask(self, mask): + return self.handle.fabric_config_set_macaddr_mask(mask=mask) + + def fabric_config_get_macaddr_mask(self): + return self.handle.fabric_config_get_macaddr_mask() + def set_bootdev(self, device, options=None): return self.handle.bootdev_set(device=device, options=options) diff --git a/pyipmi/commands/fabric_config.py b/pyipmi/commands/fabric_config.py index fe6b92f..4e68adb 100644 --- a/pyipmi/commands/fabric_config.py +++ b/pyipmi/commands/fabric_config.py @@ -268,6 +268,43 @@ class SetLinkUsersFactorCommand(Command, ResponseParserMixIn): return ['cxoem', 'fabric', 'config', 'set', 'lu_factor', self._params['lu_factor']] +class SetMACAddressBaseCommand(Command, ResponseParserMixIn): + name = "Set the base MAC address for a custom range" + + @property + def ipmitool_args(self): + return ['cxoem', 'fabric', 'config', 'set', 'macaddr_base', + self._params['macaddr']] + +class GetMACAddressBaseCommand(Command, ResponseParserMixIn): + name = "Get the base MAC address for a custom range" + result_type = str + ipmitool_args = ['cxoem', 'fabric', 'config', 'get', 'macaddr_base'] + + def parse_response(self, out, err): + if err: + raise IpmiError(err) + return out.strip() + +class SetMACAddressMaskCommand(Command, ResponseParserMixIn): + name = "Set the MAC address mask for a custom range" + + @property + def ipmitool_args(self): + return ['cxoem', 'fabric', 'config', 'set', 'macaddr_mask', + self._params['mask']] + +class GetMACAddressMaskCommand(Command, ResponseParserMixIn): + name = "Get the MAC address mask for a custom range" + result_type = str + ipmitool_args = ['cxoem', 'fabric', 'config', 'get', 'macaddr_mask'] + + def parse_response(self, out, err): + if err: + raise IpmiError(err) + return out.strip() + + fabric_config_commands = { "fabric_config_getipinfo" : GetIPInfoCommand, "fabric_config_getmacaddresses" : GetMACAddressesCommand, @@ -284,5 +321,9 @@ fabric_config_commands = { "fabric_config_getuplink" : GetUplinkCommand, "fabric_config_setuplink" : SetUplinkCommand, "fabric_config_getlinkusersfactor" : GetLinkUsersFactorCommand, - "fabric_config_setlinkusersfactor" : SetLinkUsersFactorCommand + "fabric_config_setlinkusersfactor" : SetLinkUsersFactorCommand, + "fabric_config_set_macaddr_base" : SetMACAddressBaseCommand, + "fabric_config_get_macaddr_base" : GetMACAddressBaseCommand, + "fabric_config_set_macaddr_mask" : SetMACAddressMaskCommand, + "fabric_config_get_macaddr_mask" : GetMACAddressMaskCommand } |