Example #1
0
 def sensor_event_enable_cb(self, sensor, err):
     if (err):
         _oi_logging.error("Unable to set sensor event enables: " + str(err))
     else:
         sensor.get_event_enables(self.s)
         pass
     return
Example #2
0
def RestoreDomains(mainhandler):
    for i in defaultDomains:
        name = i[0]
        attrhashes = i[1]
        other = i[2]
        connects = []
        for attrhash in attrhashes:
            if ("contype" not in attrhash):
                continue
            args = OpenIPMI.alloc_empty_args(str(attrhash["contype"]))
            if (args == None):
                continue
            for attr in attrhash.items():
                vname = str(attr[0])
                if (vname == "contype"):
                    continue
                value = str(attr[1])
                args.set_val(0, vname, value)
                pass
            connects.append(args)
            pass
        domain_id = OpenIPMI.open_domain3(name, [], connects, None, None)
        if (domain_id != None):
            DomainInfoSetup(other, domain_id)
            pass
        else:
            _oi_logging.error("Error making domain connection for " + name)
            pass
        pass
    return
Example #3
0
def GetAttrInt(attr, default):
    try:
        return int(attr.nodeValue)
    except Exception, e:
        _oi_logging.error("Error getting init parm " + attr.nodeName +
                          ": " + str(e))
        return default
Example #4
0
 def sensor_set_thresholds_cb(self, sensor, err):
     if (err):
         _oi_logging.error("Unable to set sensor thresholds: " + str(err))
     else:
         sensor.get_thresholds(self.s)
         pass
     return
Example #5
0
 def RequestActivation(self, event):
     oper = EntityOp(self, "set_activation_requested")
     rv = oper.DoOp()
     if (rv != 0):
         _oi_logging.error("entity set activation failed: " + str(rv))
         pass
     return
Example #6
0
 def sensor_set_thresholds_cb(self, sensor, err):
     if (err):
         _oi_logging.error("Unable to set sensor thresholds: " + str(err))
     else:
         sensor.get_thresholds(self.s)
         pass
     return
Example #7
0
 def RequestActivation(self, event):
     oper = EntityOp(self, "set_activation_requested")
     rv = oper.DoOp()
     if (rv != 0):
         _oi_logging.error("entity set activation failed: " + str(rv))
         pass
     return
def GetAttrInt(attr, default):
    try:
        return int(attr.nodeValue)
    except Exception, e:
        _oi_logging.error("Error getting init parm " + attr.nodeName +
                          ": " + str(e))
        return default
Example #9
0
 def Deactivate(self, event):
     oper = EntityOp(self, "deactivate")
     rv = oper.DoOp()
     if (rv != 0):
         _oi_logging.error("entity deactivation failed: " + str(rv))
         pass
     return
Example #10
0
 def sensor_event_enable_cb(self, sensor, err):
     if (err):
         _oi_logging.error("Unable to set sensor event enables: " + str(err))
     else:
         sensor.get_event_enables(self.s)
         pass
     return
Example #11
0
 def mc_get_event_log_enable_cb(self, mc, err, val):
     if err:
         _oi_logging.error(
             "Error getting MC event log enable for " + self.name + ": " + OpenIPMI.get_error_string(err)
         )
         return
     self.ui.set_item_text(self.el_item, str(val != 0))
Example #12
0
def RestoreDomains(mainhandler):
    for i in defaultDomains:
        name = i[0]
        attrhashes = i[1]
        other = i[2]
        connects = [ ]
        for attrhash in attrhashes:
            if ("contype" not in attrhash):
                continue
            args = OpenIPMI.alloc_empty_args(str(attrhash["contype"]))
            if (args == None):
                continue
            for attr in attrhash.items():
                vname = str(attr[0])
                if (vname == "contype"):
                    continue
                value = str(attr[1])
                args.set_val(0, vname, value)
                pass
            connects.append(args)
            pass
        domain_id = OpenIPMI.open_domain3(name, [], connects, None, None)
        if (domain_id != None):
            DomainInfoSetup(other, domain_id)
            pass
        else:
            _oi_logging.error("Error making domain connection for " + name)
            pass
        pass
    return
Example #13
0
File: _mc.py Project: xiar/openipmi
 def mc_get_event_log_enable_cb(self, mc, err, val):
     if (err):
         _oi_logging.error("Error getting MC event log enable for "
                           + self.name + ": "
                           + OpenIPMI.get_error_string(err))
         return
     self.ui.set_item_text(self.el_item, str(val != 0))
Example #14
0
File: _mc.py Project: xiar/openipmi
 def mc_events_enable_cb(self, mc, err):
     if (err):
         _oi_logging.error("Error setting MC events for "
                           + self.name + ": "
                           + OpenIPMI.get_error_string(err))
         return
     self.ee_refr.DoUpdate()
Example #15
0
 def Deactivate(self, event):
     oper = EntityOp(self, "deactivate")
     rv = oper.DoOp()
     if (rv != 0):
         _oi_logging.error("entity deactivation failed: " + str(rv))
         pass
     return
Example #16
0
 def entity_hot_swap_get_time_cb(self, entity, err, time):
     if (err):
         _oi_logging.error("Error getting activation time: " + str(err))
         return
     gui_setdialog.SetDialog("Set " + self.name + " for " + str(self.e),
                             [time], 1, self)
     return
Example #17
0
def save(objlist, file):
    domimpl = xml.dom.getDOMImplementation()
    doc = domimpl.createDocument(None, "IPMIPrefs", None)
    main = doc.documentElement
    for obj in objlist:
        elem = doc.createElement(obj.getTag())
        obj.SaveInfo(doc, elem)
        main.appendChild(elem)
        pass
    try:
        info = os.stat(file)
        pass
    except:
        # File doesn't exist, create it.
        try:
            fd = os.open(file, os.O_WRONLY | os.O_CREAT,
                         stat.S_IRUSR | stat.S_IWUSR)
            os.close(fd)
            pass
        except:
            _oi_logging.error("Unable to create startup file " + file)
            return
        pass
    try:
        f = open(file, 'w')
        doc.writexml(f, indent='', addindent='\t', newl='\n')
        pass
    except:
        _oi_logging.error("Unable to save startup file " + file)
        pass
    return
Example #18
0
 def mc_set_event_log_enable_cb(self, mc, err):
     if err:
         _oi_logging.error(
             "Error setting MC event log enable for" + self.name + ": " + OpenIPMI.get_error_string(err)
         )
         return
     self.el_refr.DoUpdate()
     return
Example #19
0
def GetAttrBool(attr, default):
    if (attr.nodeValue.lower() == "true") or (attr.nodeValue == "1"):
        return True
    elif (attr.nodeValue.lower() == "false") or (attr.nodeValue == "0"):
        return False
    else:
        _oi_logging.error ("Error getting init parm " + attr.nodeName)
        pass
    return default
Example #20
0
 def entity_hot_swap_get_time_cb(self, entity, err, time):
     if (err):
         _oi_logging.error("Error getting activation time: " + str(err))
         return
     gui_setdialog.SetDialog("Set " + self.name + " for " + str(self.e),
                             [ time ],
                             1,
                             self)
     return
Example #21
0
def GetAttrBool(attr, default):
    if (attr.nodeValue.lower() == "true") or (attr.nodeValue == "1"):
        return True
    elif (attr.nodeValue.lower() == "false") or (attr.nodeValue == "0"):
        return False
    else:
        _oi_logging.error ("Error getting init parm " + attr.nodeName)
        pass
    return default
Example #22
0
 def entity_hot_swap_cb(self, entity, err, state):
     if (self.destroyed):
         return
     if (err):
         _oi_logging.error("Error getting entity hot-swap state: " + str(err))
         return
     self.hot_swap_state = state
     self.ui.set_item_text(self.hotswapitem,
                           self.hot_swap + ' ' + self.hot_swap_state)
     return
Example #23
0
 def sensor_get_hysteresis_cb(self, sensor, err, positive, negative):
     if (err != 0):
         _oi_logging.error("Error getting sensor hysteresis: " + str(err))
         self.Destroy()
     else:
         gui_setdialog.SetDialog("Set hysteresis for " + self.s.name,
                                 [ positive, negative ], 2, self,
                                 [ "Positive", "Negative" ])
         pass
     return
Example #24
0
 def sensor_cb(self, sensor):
     if (self.setting):
         self.err = sensor.set_thresholds(self.threshold_str, self)
     else:
         rv = sensor.get_thresholds(self)
         if (rv != 0):
             _oi_logging.error("Error getting sensor thresholds: " + str(rv))
             return
         pass
     return
Example #25
0
 def entity_hot_swap_cb(self, entity, err, state):
     if (self.destroyed):
         return
     if (err):
         _oi_logging.error("Error getting entity hot-swap state: " + str(err))
         return
     self.hot_swap_state = state
     self.ui.set_item_text(self.hotswapitem,
                           self.hot_swap + ' ' + self.hot_swap_state)
     return
Example #26
0
 def sensor_get_hysteresis_cb(self, sensor, err, positive, negative):
     if (err != 0):
         _oi_logging.error("Error getting sensor hysteresis: " + str(err))
         self.Destroy()
     else:
         gui_setdialog.SetDialog("Set hysteresis for " + self.s.name,
                                 [positive, negative], 2, self,
                                 ["Positive", "Negative"])
         pass
     return
Example #27
0
 def sensor_cb(self, sensor):
     if (self.setting):
         self.err = sensor.set_thresholds(self.threshold_str, self)
     else:
         rv = sensor.get_thresholds(self)
         if (rv != 0):
             _oi_logging.error("Error getting sensor thresholds: " + str(rv))
             return
         pass
     return
Example #28
0
 def sensor_cb(self, sensor):
     if (self.setting):
         self.err = sensor.set_event_enables(self.event_enable_str, self)
     else:
         rv = sensor.get_event_enables(self)
         if (rv != 0):
             _oi_logging.error("Error getting sensor event enables: "
                               + str(rv))
             return
         pass
     return
Example #29
0
 def sensor_cb(self, sensor):
     if (self.setting):
         self.err = sensor.set_event_enables(self.event_enable_str, self)
     else:
         rv = sensor.get_event_enables(self)
         if (rv != 0):
             _oi_logging.error("Error getting sensor event enables: " +
                               str(rv))
             return
         pass
     return
Example #30
0
    def refresh(self):
        name_s = [ "" ]
        node_s = [ None ]
        rv = self.fru.get_root_node(name_s, node_s)
        if (rv != 0):
            _oi_logging.error("unable to get FRU node: " + str(rv))
            return

        self.fru_type = name_s[0]
        self.RemoveAll()
        self.add_fru_data(self.treeroot, node_s[0], 0, None,
                          self.fru_type == "standard FRU")
        self.AfterDone()
        self.ExpandItem("")
        return
Example #31
0
    def refresh(self):
        name_s = [""]
        node_s = [None]
        rv = self.fru.get_root_node(name_s, node_s)
        if (rv != 0):
            _oi_logging.error("unable to get FRU node: " + str(rv))
            return

        self.fru_type = name_s[0]
        self.RemoveAll()
        self.add_fru_data(self.treeroot, node_s[0], 0, None,
                          self.fru_type == "standard FRU")
        self.AfterDone()
        self.ExpandItem("")
        return
Example #32
0
 def sensor_get_thresholds_cb(self, sensor, err, th):
     if (err != 0):
         _oi_logging.error("Error getting sensor thresholds: " + str(err))
         return
     self.thresholds = []
     defaults = []
     labels = []
     for i in th.split(':'):
         j = i.split()
         self.thresholds.append(j[0])
         defaults.append(j[1])
         labels.append(threshold_str_to_full(j[0]))
         pass
     gui_setdialog.SetDialog("Set Thresholds for " + str(self.s), defaults,
                             len(defaults), self, labels)
     return
Example #33
0
 def sensor_get_thresholds_cb(self, sensor, err, th):
     if (err != 0):
         _oi_logging.error("Error getting sensor thresholds: " + str(err))
         return
     self.thresholds = [ ]
     defaults = [ ]
     labels = [ ]
     for i in th.split(':'):
         j = i.split()
         self.thresholds.append(j[0])
         defaults.append(j[1])
         labels.append(threshold_str_to_full(j[0]))
         pass
     gui_setdialog.SetDialog("Set Thresholds for " + str(self.s),
                             defaults, len(defaults), self, labels)
     return
Example #34
0
    def __init__(self, e, name, func):
        self.e = e
        self.name = name
        self.func = func

        self.err = 0
        rv = e.entity_id.to_entity(self)
        if (rv == 0):
            rv = self.err
            pass
        if (rv):
            _oi_logging.error("Error doing entity cb in activation time setter: "
                          + str(rv))
            pass

        return
Example #35
0
    def __init__(self, e, name, func):
        self.e = e
        self.name = name
        self.func = func

        self.err = 0
        rv = e.entity_id.to_entity(self)
        if (rv == 0):
            rv = self.err
            pass
        if (rv):
            _oi_logging.error("Error doing entity cb in activation time setter: "
                          + str(rv))
            pass

        return
Example #36
0
    def __init__(self, fru, name):
        self.fru = fru
        name_s = [""]
        node_s = [None]
        rv = fru.get_root_node(name_s, node_s)
        if (rv != 0):
            _oi_logging.error("unable to get FRU node: " + str(rv))
            return

        self.fru_type = name_s[0]

        gui_treelist.TreeList.__init__(self, "FRU info for " + name, ".",
                                       [("Name", 300), ("Value", 300)])

        self.add_fru_data(self.treeroot, node_s[0], 0, None,
                          self.fru_type == "standard FRU")
        self.AfterDone()
        self.ExpandItem("")
        return
Example #37
0
    def __init__(self, fru, name):
        self.fru = fru
        name_s = [ "" ]
        node_s = [ None ]
        rv = fru.get_root_node(name_s, node_s)
        if (rv != 0):
            _oi_logging.error("unable to get FRU node: " + str(rv))
            return

        self.fru_type = name_s[0]
        
        gui_treelist.TreeList.__init__(self, "FRU info for " + name,
                                       ".",
                                       [("Name", 300), ("Value", 300)])

        self.add_fru_data(self.treeroot, node_s[0], 0, None,
                          self.fru_type == "standard FRU")
        self.AfterDone()
        self.ExpandItem("")
        return
Example #38
0
    def sensor_get_event_enable_cb(self, sensor, err, st):
        if (err != 0):
            _oi_logging.error("Error getting sensor event enables: "
                              + str(err))
            return
        defaults = [ False, False ]
        labels = [ "Enable Events", "Scanning" ]
        en = { }
        for i in self.s.events_supported:
            en[i] = False
            pass
        for i in st.split(' '):
            if (i == "events"):
                defaults[0] = True
            elif (i == "scanning"):
                defaults[1] = True
            elif (i == "busy"):
                pass
            elif (self.s.event_support == OpenIPMI.EVENT_SUPPORT_PER_STATE):
                en[i] = True
                pass
            pass
        
        self.enables = [ ]
        for i in self.s.events_supported:
            defaults.append(en[i])
            self.enables.append(i)
            if (self.s.is_threshold):
                labels.append(threshold_event_str_to_full(i))
            else:
                name = self.s.events_supported_name[i]
                labels.append(discrete_event_str_to_full(i, name))
                pass
            pass

        gui_setdialog.SetDialog("Set Event Enables for " + str(self.s),
                                defaults, len(defaults), self, labels)
        return
Example #39
0
    def sensor_get_event_enable_cb(self, sensor, err, st):
        if (err != 0):
            _oi_logging.error("Error getting sensor event enables: " +
                              str(err))
            return
        defaults = [False, False]
        labels = ["Enable Events", "Scanning"]
        en = {}
        for i in self.s.events_supported:
            en[i] = False
            pass
        for i in st.split(' '):
            if (i == "events"):
                defaults[0] = True
            elif (i == "scanning"):
                defaults[1] = True
            elif (i == "busy"):
                pass
            elif (self.s.event_support == OpenIPMI.EVENT_SUPPORT_PER_STATE):
                en[i] = True
                pass
            pass

        self.enables = []
        for i in self.s.events_supported:
            defaults.append(en[i])
            self.enables.append(i)
            if (self.s.is_threshold):
                labels.append(threshold_event_str_to_full(i))
            else:
                name = self.s.events_supported_name[i]
                labels.append(discrete_event_str_to_full(i, name))
                pass
            pass

        gui_setdialog.SetDialog("Set Event Enables for " + str(self.s),
                                defaults, len(defaults), self, labels)
        return
Example #40
0
 def restore(self, node):
     name = str(node.getAttribute("name"));
     if (name == ""):
         return
     connects = [ ]
     other = OtherDomainInfo()
     for c in node.childNodes:
         if (c.nodeType == c.ELEMENT_NODE):
             if (c.nodeName == "connection"):
                 attrhash = { }
                 for i in range(0, c.attributes.length):
                     attr = c.attributes.item(i)
                     attrhash[attr.nodeName] = attr.nodeValue
                     pass
                 connects.append(attrhash)
                 pass
             elif (c.nodeName == "IPMB_rescan_time"):
                 try:
                     other.ipmb_rescan_time = int(c.getAttribute("time"))
                 except:
                     _oi_logging.error("Error restoring IPMB rescan time"
                                       + " in a domain")
                     pass
                 pass
             elif (c.nodeName == "SEL_rescan_time"):
                 try:
                     other.sel_rescan_time = int(c.getAttribute("time"))
                 except:
                     _oi_logging.error("Error restoring SEL rescan time"
                                       + " in a domain")
                     pass
                 pass
             pass
         pass
     defaultDomains.append([name, connects, other])
     return
Example #41
0
 def restore(self, node):
     name = str(node.getAttribute("name"))
     if (name == ""):
         return
     connects = []
     other = OtherDomainInfo()
     for c in node.childNodes:
         if (c.nodeType == c.ELEMENT_NODE):
             if (c.nodeName == "connection"):
                 attrhash = {}
                 for i in range(0, c.attributes.length):
                     attr = c.attributes.item(i)
                     attrhash[attr.nodeName] = attr.nodeValue
                     pass
                 connects.append(attrhash)
                 pass
             elif (c.nodeName == "IPMB_rescan_time"):
                 try:
                     other.ipmb_rescan_time = int(c.getAttribute("time"))
                 except:
                     _oi_logging.error("Error restoring IPMB rescan time" +
                                       " in a domain")
                     pass
                 pass
             elif (c.nodeName == "SEL_rescan_time"):
                 try:
                     other.sel_rescan_time = int(c.getAttribute("time"))
                 except:
                     _oi_logging.error("Error restoring SEL rescan time" +
                                       " in a domain")
                     pass
                 pass
             pass
         pass
     defaultDomains.append([name, connects, other])
     return
Example #42
0
 def entity_fru_update_werr_cb(self, op, err, entity, fru):
     if (self.destroyed):
         return
     if (op == "error"):
         _oi_logging.error("Error getting entity fru: " + str(err))
     return
Example #43
0
 def entity_activate_cb(self, entity, err):
     if (err != 0):
         _oi_logging.error("entity activate operation failed: " + str(err))
         pass
     return
Example #44
0
 def entity_activate_cb(self, entity, err):
     if (err != 0):
         _oi_logging.error("entity activate operation failed: " + str(err))
         pass
     return