{
    "content": [
        {
            "type": "text",
            "text": "# openipmigui(1) (man)\n\n**Summary:** openipmigui - GUI interface to an IPMI system\n\n**Synopsis:** openipmigui [--dmsg] [--drawmsg] [--glib12] [--trace] [--logstderr] [-n] [-p preffile]\n\n## Flags\n\n| Flag | Long | Arg | Description |\n|------|------|-----|-------------|\n| — | --drawmsg | — | Turn on raw message debugging, this will dump all low-level messages to debug log out‐ put. This differes from normal me |\n| — | --logstderr | — | Send all logs to standard error output as well as the GUI console. |\n| — | --trace | — | Turn on python tracing so that all python procedure calls entered and exited will be printed out. |\n| -n | — | — |  |\n| -p | — | — | Use preffile as the name of the preferences file instead of $HOME/.openip‐‐ migui.startup. |\n\n## See Also\n\n- ipmish(1)\n\n## Section Outline\n\n- **NAME** (3 lines)\n- **SYNOPSIS** (3 lines)\n- **DESCRIPTION** (12 lines)\n- **OPTIONS** (2 lines) — 5 subsections\n  - --drawmsg (9 lines)\n  - --logstderr (2 lines)\n  - --trace (3 lines)\n  - -n (1 lines)\n  - -p (4 lines)\n- **MENU BAR** (12 lines)\n- **TREE VIEW** (25 lines)\n- **DOMAINS** (7 lines)\n- **ENTITIES** (12 lines)\n- **SENSORS** (7 lines)\n- **CONTROLS** (8 lines) — 1 subsections\n  - MANAGEMENT CONTROLLERS (MCs) (13 lines)\n- **CONNECTIONS** (6 lines)\n- **CHANNEL INFO** (20 lines)\n- **USER INFO** (18 lines)\n- **LANPARMS** (5 lines)\n- **PEFPARMS** (5 lines)\n- **SOLPARMS** (5 lines)\n- **SOL** (14 lines) — 13 subsections\n  - Accept Input (4 lines)\n  - Use Encryption (4 lines)\n  - Use Authentication (5 lines)\n  - Deassert CTS/DCD/DSR on connect (5 lines)\n  - CTS Assertable (3 lines)\n  - DCD/DSR Asserted (3 lines)\n  - RI Asserted (4 lines)\n  - Set Ack Timeout (3 lines)\n  - Set Ack Retries (3 lines)\n  - Send Break (3 lines)\n  - Serial Rate (5 lines)\n  - Serial Alert Behavior (5 lines)\n  - Queue Flush (3 lines)\n- **SEE ALSO** (3 lines)\n- **KNOWN PROBLEMS** (4 lines)\n- **AUTHOR** (5 lines)\n\n## Full Content\n\n### NAME\n\nopenipmigui - GUI interface to an IPMI system\n\n### SYNOPSIS\n\nopenipmigui [--dmsg] [--drawmsg] [--glib12] [--trace] [--logstderr] [-n] [-p preffile]\n\n### DESCRIPTION\n\nopenipmigui  is  a  GUI  interface using the OpenIPMI library.  It provides a tree-structured\nview of the IPMI domains it connected to.\n\nBy default openipmigui starts up with no connections or anything of that  nature.   You  must\nopen  connection  to  domains yourself.  However, you may save your current configuration and\nthe current domains and some GUI settings; these will be automatically restored at startup.\n\nThe main window has a tree on the left and a log window on the right.  The  log  window  cap‐\ntures  informational  and error logs from OpenIPMI.  Note that events are not reported in the\nlog window, you must open an SEL window for a domain to view the events.\n\n### OPTIONS\n\n--dmsg Turn on message debugging, this will dump all messages to debug log output.\n\n#### --drawmsg\n\nTurn on raw message debugging, this will dump all low-level messages to debug log out‐\nput.   This  differes  from normal message debugging in that all protocol messages are\nalso dumped, not just IPMI messages.\n\n--dmem Turn on memory debugging, this will cause memory allocation and  deallocations  to  be\nchecked.   When  the program terminates, it will dump all memory that was not properly\nfreed (leaked), and overruns, writing of freed memory, or other types  of  memory  er‐\nrors.\n\n#### --logstderr\n\nSend all logs to standard error output as well as the GUI console.\n\n#### --trace\n\nTurn  on  python tracing so that all python procedure calls entered and exited will be\nprinted out.\n\n#### -n\n\n#### -p\n\nUse  preffile  as  the  name  of  the  preferences  file  instead  of   $HOME/.openip‐‐\nmigui.startup.\n\n### MENU BAR\n\nThe main menu bar contains two pull-down menus: File and View.\n\nThe  File menu contains Exit, Open Domain, and Save Prefs commands.  The Exit command does as\ndescribed, and it does not prompt to be sure you want to exit.  The Open  Domain  command  is\nhow you establish a connection to an IPMI system.  The Save Prefs command will store the cur‐\nrent domains and the configuration of the main GUI window.  These settings will  be  restored\nat  startup.  The settings are stored in $HOME/.openipmigui.startup; this file may be removed\nto clear all the settings.\n\nThe View menu contains commands to expand and contract the entire tree.\n\n### TREE VIEW\n\nThe tree window has a top-level list of all the domains for which  OpenIPMI  has  connections\n(or pending connection).  Each domain exapands into domain-specific information and a list of\nentities and Management Controllers (MCs) for that domain.\n\nRight click drives most of the operations in the tree window.  Many tree elements have  pull-\ndown menus driven by a right mouse button click.  When in doubt, click.\n\nColor  is used in the GUI to denote error status, and shading is used to denote availability.\nIf a sensor has an error, the tree entry for that sensor will change colors.  Black means  no\nerror,  yellow  means warning, red means critical, and blue means non-recoverable.  These er‐\nrors propigate up, so the entity containing that sensor will be the same color  as  the  most\ncritical  error for the sensors underneath it.  The same goes for domain, it will be the same\ncolor as the most critical error for the entities underneath it.  This way, if you watch  the\ndomain, you can determine if a system is in trouble with just the top-level view, and you can\ndrill down to find the problem.\n\nIf a tree entry is shaded, it means that the entry has information identifying  it  but  does\nnot  exist.   For instance, a domain with no connection, an entity that is not present, or an\nMC that is not present.\n\nNote that all information visible in the tree is polled.  Only visible information is polled,\nso if you expose something via expanding a tree element or scrolling, it may be a few seconds\nbefore the data is updated.\n\n### DOMAINS\n\nThe domains contain various high-level information and an aggregation of all the System Event\nLogs  (SELs)  contained within it.  The SEL Rescan Time and IPMB Rescan Time are settable via\nright-click; these values are remembered when saved and restored.  (Note that these values in\nthe MC-specific entries are not saved and restore, only the domain level ones).  Right click‐\ning on the domain gives a set of operations, including the ability to view the SEL.\n\n### ENTITIES\n\nThe Entities element under the domain element contains a list of the entities discovered  for\nthat domain.  This is only the top-level entities (ones not contained in other entities); en‐\ntities contained in other entities are listed under their  parent  entity.   This  keeps  the\nclutter down for very complicated systems, like ATCA.\n\nIf  the  entity is hot-swappable, hot-swap activation and deactivation commands are available\nvia right-click on the entity. If the entity has FRU information, you can  view  that  via  a\nright-click command, too.\n\nThe information under an entity also contains a sensors and controls list for the entity.\n\n### SENSORS\n\nSensors  are  available  under  the  entity they belong to.  Sensor information is beyond the\nscope of this document, as IPMI sensors  are  very  complex.   See  the  IPMI  document  from\nOpenIPMI for information about sensors.\n\nAs expected, right-clicking on a sensor gives operations available on that sensor.\n\n### CONTROLS\n\nControls  are  available  under the entity they belong to.  control information is beyond the\nscope of this document, as IPMI controls are  very  complex.   See  the  IPMI  document  from\nOpenIPMI for information about controls.\n\nAs expected, right-clicking on a control gives operations available on that control.\n\n#### MANAGEMENT CONTROLLERS (MCs)\n\nAn  MC is the intelligent node in an IPMI system.  It is not generally required to know about\nMCs for normal IPMI sensor and control operations.  You do need access to  MCs,  though,  for\nsystem configuration.\n\nAn  MC contains a lot of information about itself and its capabilities; this is generally au‐\ntomatically interpreted by OpenIPMI, but the information is  available  for  view.   For  in‐\nstance,  if  an  MC contains an SEL device, OpenIPMI will automatically handle getting events\nfrom it, but you can also view this setting under the MC information.\n\nA number of operations are available under the right-click menu on the MC; most of these  are\nself-explanatory.  The MC is generally configured via the Channel Info command under this.\n\n### CONNECTIONS\n\nA  set  of connections for the domain is listed under the domain.  Each connection has one or\nmore ports.  The state of these ports may be viewed by color; if a port is yellow  (warning),\nit  is  down.   If a connection is red (severe), then all its ports are down.  If all connec‐\ntions are down, the \"Connections\" tree item turns blue (critical).\n\n### CHANNEL INFO\n\nIf you right click on an MC, it will show a Channel Info entry.  This is  used  to  configure\nthe  LAN  and  channel information for the MC.  If you select this, it will pull up a list of\nchannels in a tree view.  Note that unlike the main tree, this information is not dynamically\nupdated; it will not change if the underlying data changes.\n\nTo configure individual channels, expand them.  The Info settings are read only and cannot be\nchanged.  The User Access settings can be changed by right-clicking on them.  Note  that  the\nchange is not immediate, you must use the Save button at the bottom of the window to save the\nchanges you have made.  Also, there are two versions of the User  Access  settings.   One  is\nvolatile,  and  will  update  the current settings for the MC, but if the MC restart the non-\nvolatile settings will be restored.  Setting the non-volatile settings will not cause an  im‐\nmediate change, but those changes will be restored on the next MC restart.\n\nSome channels have user information; you can configure these by selecting that command in the\nright-click menu of a channel.\n\nLAN channels also have LAN configuration; you can configure these by selecting  that  command\nin the right-click menu of a channel.\n\n### USER INFO\n\nIPMI  systems with remote access have users that can be used to log in.  These users are con‐\nfigured by the User Info command in the channel listing.  Note that some  user  setting  (the\nname and password) are global to all channels on the MC.\n\nDue  to  the IPMI spec and some unfortunate implementation bugs, some wierd issues exist with\nthis information.  The user has an Enabled value that tells whether the user  is  enabled  or\nnot.  When initially displayed, this field shows as a \"?\" because this field is not readable.\nIt will displayed as the actual value when it is modified, but will not be changed otherwise.\n\nThere is also a session limit field that gives the maximum number of sessions a user  is  al‐\nlowed  to  make.  This field is also not readable and displays as a \"?\" when first displayed.\nThis field is marked as optional in the IPMI spec, which means the field does not have to  be\nsupplied.   Some implementations, however, require this field to be set.  If you get a DataL‐\nenInv error back from your system when setting something, you must set the field to something\nfor  any  value to be set.  Generally, setting it to zero disables the field and is the right\nthing to do.\n\n### LANPARMS\n\nIn the channel display on a 8023LAN channel, a LANPARM configuration command  is  available.\nThis pulls up all the parameters for the LAN and allows them to be set.  Right-clicking on an\nitem allows it to be changed.\n\n### PEFPARMS\n\nIf an MC support PEF, it will have a \"PEF Parms\" menu item in the pulldown menu for  the  MC.\nThis pulls up all the parameters for the PEF and allows them to be set.  Right-clicking on an\nitem allows it to be changed.\n\n### SOLPARMS\n\nIn the channel display on a 8023LAN channel, a LANPARM configuration command is available if\nthe  MC supporte SOL (Serial Over LAN).  This pulls up all the parameters for the LAN and al‐\nlows them to be set.  Right-clicking on an item allows it to be changed.\n\n### SOL\n\nOn a connection, an \"Open SOL\" menu item is present.  If the BMC on the far end of  the  con‐\nnection  has  SOL  (Serial Over LAN) support, then you can establish a serial connection with\nthe BMC, assuming it is configured properly and you have the proper rights.\n\nWhen you choose this, you will get a new connection with a VT100/ANSI terminal emulator.  The\nconnection  will not yet be opened, you must open it (under the \"File\") to establish the con‐\nnection.  When the status at the bottom right says \"connected\", you are ready  to  type.   If\nsomething  goes  wrong, the connection may drop and you will have to reopen it.  You can also\nclose the connection from the file menu, or quit the emulator.\n\nThe \"Controls\" menu for the SOL connection contains a  large  number  of  settings  for  SOL.\nThese allow you to manipulate various value on the remote side of the connection.  These are:\n\n#### Accept Input\n\nIf  disabled,  this  will cause data from the BMC to be refused, effectively flow-con‐\ntrolling the data (assuming that the BMC actually supports this properly, some don't)\n\n#### Use Encryption\n\nEncrypt the data on the LAN using RMCP+  encryption  negotiated  for  the  connection.\nOnly available when the connection is closed, this cannot be changed dynamically.\n\n#### Use Authentication\n\nAuthenticate the data on the LAN using RMCP+ authentication negotiated for the connec‐\ntion.  Only available when the connection is closed, this cannot  be  changed  dynami‐\ncally.\n\n#### Deassert CTS/DCD/DSR on connect\n\nDon't  raise the lines when a connection is made; this allows things like baud rate to\nbe set before the device on the far end of the serial port knows there  is  a  connec‐\ntion.\n\n#### CTS Assertable\n\nIf set, the BMC has control over the CTS line.  Otherwise, the CTS line is deasserted.\n\n#### DCD/DSR Asserted\n\nSet the DCD and DSR lines.\n\n#### RI Asserted\n\nAssert the Ring Indicator line, can be used for remote wakeup on some systems (though,\nwith IPMI, you have to wonder why you wouldn't use IPMI for this).\n\n#### Set Ack Timeout\n\nSets the timeout waiting for an ACK from the BMC.\n\n#### Set Ack Retries\n\nSets the number of times a packet is retried before the connection is closed.\n\n#### Send Break\n\nSend a 300ms break signal to the remote serial port.\n\n#### Serial Rate\n\nSets the bitrate on the serial port.  Not all systems support this.   Some,  in  fact,\ncompletely  ignore  this  setting  and use 19.2K.  Note that this is only the volatile\nrate.  The non-volatile rate setting is done with SOLPARM.\n\n#### Serial Alert Behavior\n\nThis sets what to do when an IPMI alert occurs and is going out the serial port  some‐\nhow.   If  set  to \"succeed\", the SoL session will be disconnected when an alert comes\nout.\n\n#### Queue Flush\n\nAllows various queues to be flushed.\n\n### SEE ALSO\n\nipmish(1), IPMI document from OpenIPMI\n\n### KNOWN PROBLEMS\n\nSome of missing functionality.  See the list in the swig/python/openipmigui/TODO if you  want\nto work on something.\n\n### AUTHOR\n\nCorey Minyard <cminyard@mvista.com>\n\n\n\nOpenIPMI                                      05/13/03                                openipmigui(1)\n\n"
        }
    ],
    "structuredContent": {
        "command": "openipmigui",
        "section": "1",
        "mode": "man",
        "summary": "openipmigui - GUI interface to an IPMI system",
        "synopsis": "openipmigui [--dmsg] [--drawmsg] [--glib12] [--trace] [--logstderr] [-n] [-p preffile]",
        "flags": [
            {
                "flag": "",
                "long": "--drawmsg",
                "arg": null,
                "description": "Turn on raw message debugging, this will dump all low-level messages to debug log out‐ put. 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 er‐ rors."
            },
            {
                "flag": "",
                "long": "--logstderr",
                "arg": null,
                "description": "Send all logs to standard error output as well as the GUI console."
            },
            {
                "flag": "",
                "long": "--trace",
                "arg": null,
                "description": "Turn on python tracing so that all python procedure calls entered and exited will be printed out."
            },
            {
                "flag": "-n",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "-p",
                "long": null,
                "arg": null,
                "description": "Use preffile as the name of the preferences file instead of $HOME/.openip‐‐ migui.startup."
            }
        ],
        "examples": [],
        "see_also": [
            {
                "name": "ipmish",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/ipmish/1/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 12,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 2,
                "subsections": [
                    {
                        "name": "--drawmsg",
                        "lines": 9,
                        "long": "--drawmsg"
                    },
                    {
                        "name": "--logstderr",
                        "lines": 2,
                        "long": "--logstderr"
                    },
                    {
                        "name": "--trace",
                        "lines": 3,
                        "long": "--trace"
                    },
                    {
                        "name": "-n",
                        "lines": 1,
                        "flag": "-n"
                    },
                    {
                        "name": "-p",
                        "lines": 4,
                        "flag": "-p"
                    }
                ]
            },
            {
                "name": "MENU BAR",
                "lines": 12,
                "subsections": []
            },
            {
                "name": "TREE VIEW",
                "lines": 25,
                "subsections": []
            },
            {
                "name": "DOMAINS",
                "lines": 7,
                "subsections": []
            },
            {
                "name": "ENTITIES",
                "lines": 12,
                "subsections": []
            },
            {
                "name": "SENSORS",
                "lines": 7,
                "subsections": []
            },
            {
                "name": "CONTROLS",
                "lines": 8,
                "subsections": [
                    {
                        "name": "MANAGEMENT CONTROLLERS (MCs)",
                        "lines": 13
                    }
                ]
            },
            {
                "name": "CONNECTIONS",
                "lines": 6,
                "subsections": []
            },
            {
                "name": "CHANNEL INFO",
                "lines": 20,
                "subsections": []
            },
            {
                "name": "USER INFO",
                "lines": 18,
                "subsections": []
            },
            {
                "name": "LANPARMS",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "PEFPARMS",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "SOLPARMS",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "SOL",
                "lines": 14,
                "subsections": [
                    {
                        "name": "Accept Input",
                        "lines": 4
                    },
                    {
                        "name": "Use Encryption",
                        "lines": 4
                    },
                    {
                        "name": "Use Authentication",
                        "lines": 5
                    },
                    {
                        "name": "Deassert CTS/DCD/DSR on connect",
                        "lines": 5
                    },
                    {
                        "name": "CTS Assertable",
                        "lines": 3
                    },
                    {
                        "name": "DCD/DSR Asserted",
                        "lines": 3
                    },
                    {
                        "name": "RI Asserted",
                        "lines": 4
                    },
                    {
                        "name": "Set Ack Timeout",
                        "lines": 3
                    },
                    {
                        "name": "Set Ack Retries",
                        "lines": 3
                    },
                    {
                        "name": "Send Break",
                        "lines": 3
                    },
                    {
                        "name": "Serial Rate",
                        "lines": 5
                    },
                    {
                        "name": "Serial Alert Behavior",
                        "lines": 5
                    },
                    {
                        "name": "Queue Flush",
                        "lines": 3
                    }
                ]
            },
            {
                "name": "SEE ALSO",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "KNOWN PROBLEMS",
                "lines": 4,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 5,
                "subsections": []
            }
        ]
    }
}