Provided by: openipmi_2.0.25-2.1ubuntu1_amd64 bug


       openipmigui - GUI interface to an IPMI system


       openipmigui [--dmsg] [--drawmsg] [--glib12] [--trace] [--logstderr] [-n] [-p preffile]


       openipmigui  is a GUI interface using the OpenIPMI library.  It provides a tree-structured
       view of the IPMI domains it connected to.

       By default openipmigui starts up with no connections or anything of that nature.  You must
       open connection to domains yourself.  However, you may save your current configuration and
       the current domains and some  GUI  settings;  these  will  be  automatically  restored  at

       The  main  window  has  a  tree on the left and a log window on the right.  The log window
       captures informational and error logs from OpenIPMI.  Note that events are not reported in
       the log window, you must open an SEL window for a domain to view the events.


       --dmsg Turn on message debugging, this will dump all messages to debug log output.

              Turn  on  raw message debugging, this will dump all low-level messages to debug log
              output.  This differes from normal message debugging in that all protocol  messages
              are also dumped, not just IPMI messages.

       --dmem Turn on memory debugging, this will cause memory allocation and deallocations to be
              checked.  When the program terminates,  it  will  dump  all  memory  that  was  not
              properly  freed  (leaked), and overruns, writing of freed memory, or other types of
              memory errors.

              Send all logs to standard error output as well as the GUI console.

              Turn on python tracing so that all python procedure calls entered and  exited  will
              be printed out.

       -n     Turn off reading of the preferences file at startup.

       -p preffile
              Use    preffile    as    the    name   of   the   preferences   file   instead   of


       The main menu bar contains two pull-down menus: File and View.

       The File menu contains Exit, Open Domain, and Save Prefs commands.  The Exit command  does
       as described, and it does not prompt to be sure you want to exit.  The Open Domain command
       is how you establish a connection to an IPMI system.  The Save Prefs  command  will  store
       the  current domains and the configuration of the main GUI window.  These settings will be
       restored at startup.  The settings are stored in $HOME/.openipmigui.startup; this file may
       be removed to clear all the settings.

       The View menu contains commands to expand and contract the entire tree.


       The tree window has a top-level list of all the domains for which OpenIPMI has connections
       (or pending connection).  Each domain exapands into domain-specific information and a list
       of entities and Management Controllers (MCs) for that domain.

       Right  click  drives  most  of the operations in the tree window.  Many tree elements have
       pull-down menus driven by a right mouse button click.  When in doubt, click.

       Color is used in  the  GUI  to  denote  error  status,  and  shading  is  used  to  denote
       availability.   If  a  sensor  has  an  error,  the tree entry for that sensor will change
       colors.  Black means no error, yellow means warning, red means critical,  and  blue  means
       non-recoverable.   These errors propigate up, so the entity containing that sensor will be
       the same color as the most critical error for the sensors underneath it.   The  same  goes
       for  domain,  it  will  be  the  same  color  as  the most critical error for the entities
       underneath it.  This way, if you watch the domain, you can determine if  a  system  is  in
       trouble with just the top-level view, and you can drill down to find the problem.

       If a tree entry is shaded, it means that the entry has information identifying it but does
       not exist.  For instance, a domain with no connection, an entity that is not  present,  or
       an MC that is not present.

       Note  that  all  information  visible  in the tree is polled.  Only visible information is
       polled, so if you expose something via expanding a tree element or scrolling, it may be  a
       few seconds before the data is updated.


       The  domains  contain  various high-level information and an aggregation of all the System
       Event Logs (SELs) contained within it.  The SEL Rescan  Time  and  IPMB  Rescan  Time  are
       settable via right-click; these values are remembered when saved and restored.  (Note that
       these values in the MC-specific entries are not saved and restore, only the  domain  level
       ones).   Right  clicking on the domain gives a set of operations, including the ability to
       view the SEL.


       The Entities element under the domain element contains a list of the  entities  discovered
       for  that  domain.   This  is  only  the  top-level  entities (ones not contained in other
       entities); entities contained in other entities are  listed  under  their  parent  entity.
       This keeps the clutter down for very complicated systems, like ATCA.

       If  the  entity  is  hot-swappable,  hot-swap  activation  and  deactivation  commands are
       available via right-click on the entity. If the entity has FRU information, you  can  view
       that via a right-click command, too.

       The information under an entity also contains a sensors and controls list for the entity.


       Sensors  are  available under the entity they belong to.  Sensor information is beyond the
       scope of this document, as IPMI sensors are very complex.   See  the  IPMI  document  from
       OpenIPMI for information about sensors.

       As expected, right-clicking on a sensor gives operations available on that sensor.


       Controls are available under the entity they belong to.  control information is beyond the
       scope of this document, as IPMI controls are very complex.  See  the  IPMI  document  from
       OpenIPMI for information about controls.

       As expected, right-clicking on a control gives operations available on that control.


       An  MC  is  the  intelligent node in an IPMI system.  It is not generally required to know
       about MCs for normal IPMI sensor and control operations.   You  do  need  access  to  MCs,
       though, for system configuration.

       An  MC  contains a lot of information about itself and its capabilities; this is generally
       automatically interpreted by OpenIPMI, but the information is  available  for  view.   For
       instance,  if  an  MC  contains  an SEL device, OpenIPMI will automatically handle getting
       events from it, but you can also view this setting under the MC information.

       A number of operations are available under the right-click menu on the MC; most  of  these
       are  self-explanatory.   The MC is generally configured via the Channel Info command under


       A set of connections for the domain is listed under the domain.  Each connection  has  one
       or  more  ports.   The  state  of  these ports may be viewed by color; if a port is yellow
       (warning), it is down.  If a connection is red (severe), then all its ports are down.   If
       all connections are down, the "Connections" tree item turns blue (critical).


       If you right click on an MC, it will show a Channel Info entry.  This is used to configure
       the LAN and channel information for the MC.  If you select this, it will pull up a list of
       channels  in  a  tree  view.   Note  that  unlike  the  main tree, this information is not
       dynamically updated; it will not change if the underlying data changes.

       To configure individual channels, expand them.  The Info settings are read only and cannot
       be changed.  The User Access settings can be changed by right-clicking on them.  Note that
       the change is not immediate, you must use the Save button at the bottom of the  window  to
       save the changes you have made.  Also, there are two versions of the User Access settings.
       One is volatile, and will update the current settings for the MC, but if  the  MC  restart
       the  non-volatile  settings  will be restored.  Setting the non-volatile settings will not
       cause an immediate change, but those changes will be restored on the next MC restart.

       Some channels have user information; you can configure these by selecting that command  in
       the right-click menu of a channel.

       LAN  channels  also  have  LAN  configuration;  you  can configure these by selecting that
       command in the right-click menu of a channel.


       IPMI systems with remote access have users that can be used to log in.   These  users  are
       configured  by  the User Info command in the channel listing.  Note that some user setting
       (the name and password) are global to all channels on the MC.

       Due to the IPMI spec and some unfortunate implementation bugs,  some  wierd  issues  exist
       with  this  information.   The  user  has  an Enabled value that tells whether the user is
       enabled or not.  When initially displayed, this field shows as a "?" because this field is
       not  readable.  It will displayed as the actual value when it is modified, but will not be
       changed otherwise.

       There is also a session limit field that gives the maximum number of sessions  a  user  is
       allowed  to  make.   This  field  is  also  not  readable and displays as a "?" when first
       displayed.  This field is marked as optional in the IPMI spec, which means the field  does
       not have to be supplied.  Some implementations, however, require this field to be set.  If
       you get a DataLenInv error back from your system when setting something, you must set  the
       field  to  something  for any value to be set.  Generally, setting it to zero disables the
       field and is the right thing to do.


       In the channel  display  on  a  8023_LAN  channel,  a  LANPARM  configuration  command  is
       available.   This  pulls  up  all  the  parameters  for the LAN and allows them to be set.
       Right-clicking on an item allows it to be changed.


       If an MC support PEF, it will have a "PEF Parms" menu item in the pulldown  menu  for  the
       MC.   This  pulls  up  all  the  parameters for the PEF and allows them to be set.  Right-
       clicking on an item allows it to be changed.


       In the channel display on a 8023_LAN channel, a LANPARM configuration command is available
       if  the  MC  supporte SOL (Serial Over LAN).  This pulls up all the parameters for the LAN
       and allows them to be set.  Right-clicking on an item allows it to be changed.


       On a connection, an "Open SOL" menu item is present.  If the BMC on the  far  end  of  the
       connection  has  SOL (Serial Over LAN) support, then you can establish a serial connection
       with the BMC, assuming it is configured properly and you have the proper rights.

       When you choose this, you will get a new connection with a VT100/ANSI  terminal  emulator.
       The  connection  will  not yet be opened, you must open it (under the "File") to establish
       the connection.  When the status at the bottom right says "connected", you  are  ready  to
       type.   If  something  goes wrong, the connection may drop and you will have to reopen it.
       You can also close the connection from the file menu, or quit the emulator.

       The "Controls" menu for the SOL connection contains a large number of  settings  for  SOL.
       These  allow  you to manipulate various value on the remote side of the connection.  These

       Accept Input
              If disabled, this will cause data from the BMC to  be  refused,  effectively  flow-
              controlling  the  data (assuming that the BMC actually supports this properly, some

       Use Encryption
              Encrypt the data on the LAN using RMCP+ encryption negotiated for  the  connection.
              Only available when the connection is closed, this cannot be changed dynamically.

       Use Authentication
              Authenticate  the  data  on  the  LAN using RMCP+ authentication negotiated for the
              connection.  Only available when the connection is closed, this cannot  be  changed

       Deassert CTS/DCD/DSR on connect
              Don't  raise the lines when a connection is made; this allows things like baud rate
              to be set before the device on the far end of the serial  port  knows  there  is  a

       CTS Assertable
              If  set,  the  BMC  has  control  over  the  CTS  line.  Otherwise, the CTS line is

       DCD/DSR Asserted
              Set the DCD and DSR lines.

       RI Asserted
              Assert the Ring Indicator line, can be used  for  remote  wakeup  on  some  systems
              (though, with IPMI, you have to wonder why you wouldn't use IPMI for this).

       Set Ack Timeout
              Sets the timeout waiting for an ACK from the BMC.

       Set Ack Retries
              Sets the number of times a packet is retried before the connection is closed.

       Send Break
              Send a 300ms break signal to the remote serial port.

       Serial Rate
              Sets the bitrate on the serial port.  Not all systems support this.  Some, in fact,
              completely ignore this setting and use 19.2K.  Note that this is only the  volatile
              rate.  The non-volatile rate setting is done with SOLPARM.

       Serial Alert Behavior
              This  sets  what  to  do when an IPMI alert occurs and is going out the serial port
              somehow.  If set to "succeed", the SoL session will be disconnected when  an  alert
              comes out.

       Queue Flush
              Allows various queues to be flushed.


       ipmish(1), IPMI document from OpenIPMI


       Some  of  missing  functionality.  See the list in the swig/python/openipmigui/TODO if you
       want to work on something.


       Corey Minyard <>