python-ipmi
python-ipmi copied to clipboard
A pure python IPMI library
add support to set the cipher for ipmitool. was also requested in #161
Hello, Thanks a lot for this lib. It helped me to understand the IPMI spec better. I am trying to make the in-band `ipmbdev` interface work with the library without...
Current license is LGPL v2.1 which does not clearly state what happens with interpreted code. For example, is `import pyipmi` considered dynamic linking or not? It could be considered the...
In interfaces/ipmb.py, the rx_filter function assumes that all the fields are present in the data array. If that's not the case, then the code crashes. I was able to fix...
Hello, I am currently very happy about what this lib has to offer, it is working perfectly fine and I wanted to start by thanking every contributor here. It is...
Hi, on server Gigabyte R163-Z30-AAB2-000 this code: ``` import logging logging.basicConfig(level=logging.DEBUG) interface = create_interface( 'rmcp', keep_alive_interval=0 ) ipmi: Ipmi = create_connection(interface) ipmi.session.set_session_type_rmcp(host=ipmi_addr, port=623) ipmi.session.set_auth_type_user(username=ipmi_login, password=ipmi_passw) ipmi.target = Target() ipmi.session.establish() print(ipmi.get_chassis_status())...
Hi, I have an Asrock Rack board. When trying to call `connection.get_fru_inventory()` it fails to parse the CommonInfoArea at: ``` pyipmi/fru.py", line 225, in _from_data raise DecodingError('checksum failed') pyipmi.errors.DecodingError: checksum...
``` import logging logging.basicConfig(level=logging.DEBUG) interface = pyipmi.interfaces.create_interface('ipmitool', interface_type='lan') connection = pyipmi.create_connection(interface) connection.target = pyipmi.Target(0x82) connection.target.set_routing([(0x81,0x20,0),(0x20,0x82,7)]) connection.session.set_session_type_rmcp(ipmi_addr, port=623) connection.session.set_auth_type_user(ipmi_login, ipmi_passw) connection.session.set_priv_level("ADMINISTRATOR") connection.session.establish() connection.get_device_id() ``` ``` DEBUG:pyipmi:IPMI Request [GetDeviceIdReq [netfn=6, cmd=1, grp=None]]...
``` Traceback (most recent call last): File "C:\Users\mark\PycharmProjects\test\ipmi_fetch_info.py", line 16, in ipmi.inventory_device() File "C:\Users\mark\PycharmProjects\test\ipmi.py", line 104, in inventory_device self.data['fru'] = self._decode_fru(self._session.get_fru_inventory(), device_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\mark\PycharmProjects\test\.venv\Lib\site-packages\pyipmi\fru.py", line 156, in get_fru_inventory fru.product_info_area...
IPMI commands get executed in a separate shell where the combination "status" has its own behavior. In our case, Popen starts a new shell, for example by running /bin/bash, and...