1ipmi_cmdlang(7)        Shell interface to an IPMI system       ipmi_cmdlang(7)
2
3
4

NAME

6       ipmi_cmdlang - A command language interface to the IPMI library
7
8

DESCRIPTION

10       ipmi_cmdlang is a command language designed to supply the full power of
11       OpenIPMI on a command line.  It has a  large  number  of  commands  and
12       well-formed  responses  to  each  command.  Note that this assumes some
13       knowledge of OpenIPMI and how it works; you can get that from the  IPMI
14       document that comes with OpenIPMI.
15
16       ipmish  starts  up with no connections or anything of that nature.  You
17       must enter commands to make connections to domains.  Then you can enter
18       commands to manipulate those domains or objects inside those domains.
19
20       Note  that you may use quotes, either '' or  to contain parameters with
21       spaces.
22
23

COMMENTS

25       Lines with a # character in the first column are ignored.
26
27

OBJECTS

29       In the command language, you will deal with various objects  like  sen‐
30       sors,  controls, domains, and entities.  Each of these has a name.  The
31       name of the domain is assigned by the user in the domain  new  command,
32       all  the  other  names  are based on the domain name of the domain they
33       belong to and various attributes about the object.  These names are all
34       well-formed.  They are
35
36       <domain>  - A name of a domain.  Each registered domain in a system has
37       a name assigned by the user.
38
39       <entity> - Entity names are in the form:
40              [<domain>[(<entity spec>)]]
41       Notice that the <entity spec> is optional.  If it is not  listed,  then
42       the  operation  is done on all entities in the domain.  The whole thing
43       is optional, too, if nothing is given then the  operation  is  done  on
44       every entity in every domain.
45
46       The <entity spec> is either
47              <entity id>.<entity instance>
48       for system-relative entities, or:
49              r<channel>.<IPMB>.<entity id>.<entity instance-0x60>
50       for   device-relative   entities.    In  IPMI,  device-relative  entity
51       instances always start at 0x60; the  specification  suggests  that  you
52       subtract  off  the 0x60 from the entity instance when displaying these;
53       the command language follows this suggestion.
54
55       <sensor> -  These come in the form
56              [<entity>[.name]]
57       As with entities, only listing a domain will cause the operation to  be
58       done  on  every sensor in the domain, just listing an entity will cause
59       it to be done to every sensor in that entity.  An  empty  sensor  entry
60       will cause an operation to be done on every sensor in every domain.
61
62       <control> - These come in the form
63              [<entity>[.name]]
64       These work exactly like sensors.
65
66       <mc> - A management controller.  These come in the form
67              [<domain>[(<channel>.<IPMB>)]]
68       As  usual,  the parts left empty will cause defaulting to all things in
69       the previously specified parts.
70
71       <connection> - A connection number, in the form
72              [<domain>[.<integer>]]
73       The number is the connection number of the domain.
74
75       <pet> - A platform event trap id, in the form
76              [<domain>[.<integer>]]
77       The number is arbitrarily assigned by the system.
78
79       <lanparm> - A LAN parameter id, in the form
80              [<domain>[.<integer>]]
81       The number is arbitrarily assigned by the system.
82
83       <pef> - A PEF id, in the form
84              [<domain>[.<integer>]]
85       The number is arbitrarily assigned by the system.
86
87       <fru> - A FRU id, in the form
88              [<domain>[.<integer>]]
89       The number is arbitrarily assigned by the system.
90
91       In all cases, the object names have parts that are  optional,  and  the
92       entire  object  name  is  optional.   If a part is left empty, then all
93       objects that are part of the specified  parts  are  operated  on.   For
94       instance, if the system has a sensor named d1(7.1).temp then specifying
95       d1 would operation on all sensors in the domain named  d1.   Specifying
96       d1(7.1)  Would  operation on all sensors in that entity.  Specifying an
97       empty name, either with  or by just entering nothing if the  object  is
98       the last thing in the command's parameters.
99
100       Note  this optionality gives a lot of power, but can be very dangerous.
101       Entering domain close will close every domain, for instance.
102
103       In commands, every object operated on will generate a response for that
104       object.   If  no  object  is  operated  on, the command will produce an
105       error.
106
107

OTHER PARAMETERS

109       The commands and displays use a variety of other parameters for  speci‐
110       fying various IPMI things.
111
112       <guid>  - a 16-byte globally unique ID, all globbed together in one big
113       hexadecimal thing.
114
115       <threshold> is  a  threshold  for  a  sensor;  the  value  it  must  go
116       over/under  to  generate  an  event.   It is always displayed as one of
117       lower non-critical lower critical lower non-recoverable upper non-crit‐
118       ical upper critical upper non-recoverable.  It may be entered as one of
119       the above, or as ln, lc, lr, un, uc, ur as a short form.
120
121       <threshold enable> is the enable for a threshold.  It is like  <thresh‐
122       old>  above, but also has a going-high or going-low and an assertion or
123       deassertion appended to the end of the name.  The short form will  have
124       a  l  or  h for going-low and going high and then a a or d appended for
125       assertion and deassertion  So for instance, urld is upper  non-recover‐
126       able going-low deassertion.
127
128       <discrete enable> is the enable or disable for a discrete sensor and is
129       specified with the sensor offset.  The long form is <integer> assertion
130       or  <integer> deassertion and the short form is <integer>[ad] where the
131       number is the offset and [ad] means assertion or deassertion.
132
133       <hot-swap state> is one of not_present,  inactive  activation_requested
134       activation_in_progress    active    deactivation_requested    deactiva‐
135       tion_in_progress or out_of_con.
136
137       <color> is one of black, white, red, green blue yellow or orange.
138
139       <bool> is one of true, on, t, or 1 for true and one of false,  off,  f,
140       or 0 for false.  Output is always true or false.
141
142

COMMANDS

144       The  command  language  is hierarchical, meaning that commands may have
145       subcommands, and subcommands may have  subsubcommands,  etc.   So,  for
146       instance, the command to create a domain is domain new.  The command to
147       list all sensors in a domain named domain1 is sensor list domain1.
148
149       Each command has a reponse for each object operated on, which is listed
150       after  the  command  description.   In  those  responses, anything that
151       begins with a % is optional.  Entries of the  form  **name**  refer  to
152       object  info  descriptions  that are listed in the object info section.
153       If an entry has two '.' indented one space below it,  then  that  entry
154       may occur zero or more times.
155
156       Each section below defines the unique subcommands of a main command.
157
158       Help for any command is available with:
159
160       help command [subcommand [...]]  - Help for any command.
161
162       Some commands are common to almost all subcommands.  These are:
163
164       list  <containing object> - List all objects of the specified type that
165       are contained in the specified  object.   For  instance,  control  list
166       <entity> will list all controls in the given entity.
167
168       Response:
169              <containing object type>
170                Name: <name>
171                 .
172                 .
173
174
175       info <object> - List static information about the given object.
176
177       Response:
178              <object type>
179                Name: <name>
180                **object info**
181
182
183   domain
184       These commands deal with domain objects.
185
186       new  <domain>  <options> <parms> [<parms>] - Open a connection to a new
187       domain.  <parms> are either:
188              lan <IP> <port> [<IP> <port>] <enc> <auth> <name> <password>
189       for a RMCP LAN connection or
190              smi <smi num>
191       for a system interface connection.  Note that <parms> is  listed  twice
192       (second  one  is  optional);  if the system support it you can make two
193       connections to two independent management controllers  in  the  system.
194       Note  that  this is not for multiple IP addresses to the same BMC.  For
195       that, notice that the LAN connection has an options extra IP  and  port
196       for  the  second  IP address.  OpenIPMI supports these IP addresses and
197       connection, detecting failures, switching between addresses, and  other
198       fault-tolerant  things.  It does this transparently to the user.  Muti‐
199       ple connections may require special OEM support, read the documentation
200       about your specific system if you need this.
201
202       The  <IP> is the IP address or host name of the LAN-capable BMC to con‐
203       nect with.  The <port> is generally 623.  <enc> is  the  authentication
204       type, either md5, md2, straight, or none.  <auth> is the authentication
205       level, either admin, operator or user.  <name> and <password>  are  the
206       user name and password of the IPMI user to use for the connection.  The
207       <smi num> is the driver number, generally 0.  Options enable  and  dis‐
208       able various automitic processing and are:
209       -[no]all  -  all automatic handling.  This will override the other pro‐
210              cessing options and turn them all on.  This is true by default.
211       -[no]sdrs - sdr fetching.  This turns on fetching SDRs  when  they  are
212              found.  This is false by default.
213       -[no]frus  -  FRU fetching  This turns on fetching FRU information when
214              it is found.  This is false by default.
215       -[no]sel - SEL fetching.    This turns on fetching SELs when  they  are
216              found.  This is false by default.
217       -[no]ipmbscan  - IPMB bus scanning.  This turns on scanning IPMB busses
218              when they are found.  This is false by default.
219       -[no]oeminit - enable or disable special OEM processing (like ATCA).
220       -[no]seteventrcvr - setting event receivers.  Note that  setting  event
221              receivers and waiting til up is not affected by the -all option.
222              If this is true (the default) then OpenIPMI will attempt to  set
223              the  event receiver for an MC it finds that does not have it set
224              to a valid destination.
225       -wait_til_up - wait until the domain is up before returning  Note  that
226              if  you  specify  this  and  the domain never comes up, you will
227              never get a prompt.  This is not affected by  the  -all  option.
228              By  default  -all and -seteventrcvr are true, which turns every‐
229              thing on.
230
231       Response:
232              Domain Created: <domain>
233
234       open <domain> <options> <parms> [<parms>] - Open a connection to a  new
235       domain.  <parms> are either:
236              lan [-U <username>] [-P <password>] [-A <authtype>]
237                [-L <privilege>] [-s] [-p[2] <port number>]
238                [-Ra <auth alg>] [-Ri <integ alg>] [-Rc <conf algo>]
239                [-Rl] [-Rk <bmc key>] [-H <hackname>] <IP> [<IP>]
240       for a RMCP/RMCP+ LAN connection or
241              smi <smi num>
242       for  a  system interface connection.  Note that <parms> is listed twice
243       (second one is optional); if the system support it  you  can  make  two
244       connections  to  two  independent management controllers in the system.
245       Note that this is not for multiple IP addresses to the same  BMC.   For
246       that,  use  the -s option and the second IP (and -p2) for the second IP
247       address.  OpenIPMI supports these IP addresses and connections, detect‐
248       ing  failures,  switching  between  addresses, and other fault-tolerant
249       things.  It does this transparently to the user.  Multiple  connections
250       may require special OEM support, read the documentation about your spe‐
251       cific system if you need this.
252
253       The <IP> is the IP address or host name of the LAN-capable BMC to  con‐
254       nect  with.  The <port> defaults 623.  <authtype> is the authentication
255       type, either rmcp+, md5, md2, straight, or none.  It  defaults  to  the
256       best authentication supported by the server.  <auth> is the authentica‐
257       tion level, either admin, operator or  user.   It  defaults  to  admin.
258       <username>  and  <password>  are the user name and password of the IPMI
259       user to use for the connection.  For RMCP+ connections, the authentica‐
260       tion    algorithms    supported    (-Ra)   are:   bmcpick,   rakp_none,
261       rakp_hmac_sha1, and rakp_hmac_md5.  The integrity algorithms (-Ri) sup‐
262       ported are: bmcpick, none, hmac_sha1, hmac_md5, and md5.  The confiden‐
263       tiality algorithms  (-Rc)  are:  bmcpick,  aes_cbc_128,  xrc4_128,  and
264       xrc_40.   The  defaults are rackp_hmac_sha1, hmac_sha1, and aes_cb_128.
265       -Rl turns on lookup up names  by  the  name  and  the  privilege  level
266       (allowing  the  same name with different privileges and different pass‐
267       words), the default is straight name lookup.  -Rk  sets  the  BMC  key,
268       needed if the system does two-key lookups.
269
270       For SMI types, the <smi num> is the driver number, generally 0.
271
272       The <hackname> enables certain hacks for broken platforms.  This may be
273       listed multiple times to enable multiple hacks.  The  currently  avail‐
274       able hacks are:
275       intelplus - For Intel platforms that have broken RMCP+.
276       rakp3_wrong_rolem - For systems that truncate role(m) in the RAKP3 msg.
277       rmcpp_integ_sik  -  For  systems  that  use  SIK  instead  of  K(1) for
278              integrity.
279
280              Options enable and disable various automitic processing and are:
281       -[no]all - all automatic handling.  This will override the  other  pro‐
282              cessing options and turn them all on.  This is true by default.
283       -[no]sdrs  -  sdr  fetching.  This turns on fetching SDRs when they are
284              found.  This is false by default.
285       -[no]frus - FRU fetching  This turns on fetching FRU  information  when
286              it is found.  This is false by default.
287       -[no]sel  -  SEL fetching.    This turns on fetching SELs when they are
288              found.  This is false by default.
289       -[no]ipmbscan - IPMB bus scanning.  This turns on scanning IPMB  busses
290              when they are found.  This is false by default.
291       -[no]oeminit - enable or disable special OEM processing (like ATCA).
292       -[no]seteventrcvr  -  setting event receivers.  Note that setting event
293              receivers is not affected by the -all option.  If this  is  true
294              (the  default)  then  OpenIPMI  will  attempt  to  set the event
295              receiver for an MC it finds that does not have it set to a valid
296              destination.  -[no]setseltime - set SEL time.  Note that setting
297              the SEL time is not affected by the -all  option.   If  this  is
298              true (the default) then OpenIPMI will attempt to set the time in
299              the SELs it finds.  It will set it to the current system time.
300       -wait_til_up - wait until the domain is up before returning  Note  that
301              if  you  specify  this  and  the domain never comes up, you will
302              never get a prompt.  This is not affected by  the  -all  option.
303              By  default  -all and -seteventrcvr are true, which turns every‐
304              thing on.
305
306       Response:
307              Domain Created: <domain>
308
309       fru <domain>  <is_logical>  <device_address>  <device_id>  <lun>  <pri‐
310       vate_bus> <channel> - dump a fru given all it's insundry information.
311
312       Response:
313              Domain
314                Name: <domain>
315                FRU
316                  **FRU INFO**
317
318       msg  <domain>  <channel> <ipmb> <LUN> <NetFN> <Cmd> [data...]  - Send a
319       command to the given IPMB address on the given channel and display  the
320       response.   Note  that  this does not require the existance of an MC in
321       OpenIPMI.
322
323       Response:
324                Domain: <domain>
325                channel: <chan>
326                ipmb: <ipmb>
327                LUN: <lun>
328                NetFN: <netfn>
329                command: <cmd>
330                Data: <data bytes>
331
332       scan <domain> <ipmb addr> [ipmb addr] - scan an IPMB to add  or  remove
333       it.  If a range is given, then scan all IPMBs in the range.
334
335       Response:
336              Scan done: <domain>
337
338       rescan_sels <domain> - Rescan all the SELs in the domain.
339
340       Response:
341              SEL Rescan done: <domain>
342
343       presence  <domain>  -  Audit the presence of all enities in the domain.
344       Note that this just starts the process; it will run in the background.
345
346       Response is:
347              Presence check started: <domain>
348
349       close <domain> - close the given domain.
350
351       Response:
352              Domain closed: <domain>
353
354       sel_rescan_time <domain> <time in seconds> - Set the time  between  SEL
355       rescans for all.  It affects all current SELs and SELs that are discov‐
356       ered in the future.  Zero disables scans.
357
358       Response:
359              Domain SEL rescan time set: <domain>
360
361       ipmb_rescan_time <domain> <time in seconds> - Set the time between IPMB
362       rescans for this domain.  zero disables scans.
363
364       Response:
365              Domain IPMB rescan time set: <domain>
366
367
368   fru
369       These  commands deal with FRU objects.  Note that FRU objects are allo‐
370       cated by the domain fru command, and are not allocated here.
371
372       list - List all the frus in the system
373
374       Response:
375              Domain
376                Name: <domain>
377                FRUs
378                  Name: <fru>
379                 .
380                 .
381               .
382               .
383
384       info <fru> - Dump information about a FRU
385
386       Response:
387              **FRU INFO**
388
389       areainfo <fru> - Dump the info about the FRU's areas
390
391       Response:
392              FRU
393                Name: <fru>
394                FRU Length: <integer>
395                Area
396                  Name: <area name>
397                  Number: <integer>
398                  Offset: <integer>
399                  Length: <integer>
400                  Used Length: <Integer>
401                 .
402                 .
403
404       write <fru> - Write the local FRU data out into the FRU
405
406       Response:
407              FRU written: <fru>
408
409       close <fru> - Delete the FRU
410
411       Response:
412              FRU deleted: <fru>
413
414       setval <fru> <name> [num] value - Set the value of a FRU element.   The
415       name  is  the record name, or multi-record.  The number is required for
416       fields that need it (custom and multi-record).  The value is an a  sin‐
417       gle  value  for  integers.   For  strings  it  is a string type (either
418       binary, ascii, or unicode) and the info.  Binary and  unicode  data  is
419       specified  as numbers.  ascii data is specified in a string.  Note that
420       setting a ascii value with no string will clear the value.  Zero length
421       strings and data is valid.
422
423       Response:
424              FRU value set: <fru>
425
426       area_offset  <fru>  <area  name> <offset> - Set the offset of the given
427       area to the given value.  Area names are  internal_data,  chassis_info,
428       board_info, product_info, and multi_record.
429
430       Response:
431              FRU area offset set: <fru>
432
433       area_length  <fru>  <area  name> <length> - Set the length of the given
434       area to the given value.  Area names  are  internal_data,  chassis_info
435       board_info, product_info, and multi_record
436
437       Response:
438              FRU area length set: <fru>
439
440       area_add  <fru>  <area  name> <offset> <length> - Add the given area to
441       the FRU.
442
443       Response:
444              FRU area added: <fru>
445
446       area_delete <fru> <area name> - Delete the given area from the FRU
447
448       Response:
449              FRU area deleted: <fru>
450
451
452
453   entity
454       These commands deal with entity objects.
455
456       list <entity> - List all the entities that meed the criteria
457
458       Response:
459              Domain
460                Name: <domain>
461                Entities
462                  Name: <entity>
463                   .
464                   .
465               .
466               .
467
468       info <entity> - Dump information about an entity.
469
470       Reponse:
471              Entity
472                Name: <entity>
473                **ENTITY INFO**
474               .
475               .
476
477       fru <entity> - Dump the FRU information about the given entity.
478
479       Reponse:
480              Entity
481                Name: <entity>
482                FRU
483                  **FRU INFO**
484
485
486   entity hs
487       These commands deal with hot-swap of entities.  Note that there  is  no
488       info or list command for this subcommand.
489
490       get_act_time <entity> - Get the hot-swap auto-activate time.
491
492       Response:
493              Entity
494                Name: <entity>
495                  Auto-Activation Time: <integer>
496
497       set_act_time <entity> - Set the hot-swap auto-activate time.
498
499       Reponse:
500              Set act time: <entity>
501
502       get_deact_time   <entity>  -  Get  the  hot-swap  auto-deactivate  time
503       Response:
504              Entity
505                Name: <entity>
506                   Auto-Deactivation Time: <integer>
507
508       set_deact_time <entity> - Set the hot-swap auto-deactivate time
509
510       Response:
511              Set deact time: <entity>
512
513       activation_request <entity> - Act like a user requested  an  activation
514       of  the  entity.   This  is  generally equivalent to closing the handle
515       latch or something like that.
516
517       Response:
518              Activation requested: <entity>
519
520       activate <entity> - activate the given entity
521
522       Response:
523              Activated: <entity>
524
525       deactivate <entity> - deactivate the given entity
526
527       Response:
528              Deactivated: <entity>
529
530       state <entity> - Return the current hot-swap state of the given entity.
531
532       Response:
533              Entity
534                Name: <entity>
535                  State: <hot-swap state>
536
537       check <entity> - Audit the entity's hot-swap state
538
539       Response:
540              Check started: <entity>
541
542
543   sensor
544       get <sensor> - Get the sensor's current reading.
545
546       Response:
547              Sensor
548                Name: <sensor>
549                Event Messages Enabled: <bool>
550                Sensor Scanning Enabled: <bool>
551                Initial Update In Progress: <bool>
552       For threshold sensors, the following will be output:
553              %Value: <double>
554              %Raw Value: <integer>
555              Threshold
556                Name: <threshold>
557                Out Of Range: <bool>
558       For discrete sensors, the following will be output:
559              Event
560                Offset: <integer>
561                %Name: <string name of event offset>
562                Set: <bool>
563       The name field may be custom and is not explicitly specified.
564
565       rearm <sensor> global | <threshold enable> [<threshold  enable>  ..]  |
566       <discrete  enable>  [<discrete  enable>  ..]   -  Rearm the sensor.  If
567       global is specified, then rearm all events in the  sensor.   Otherwise,
568       if  it  is a threshold sensor, then put in a list of threshold enables.
569       If it is a discrete sensor, then put in a list of discrete enables.
570
571       Response:
572              Rearm done: <sensor>
573
574       get_thresholds <sensor> - Get the sensor's thresholds
575
576       Response:
577              Sensor
578                Name: <sensor>
579                Threshold
580                  Name: <threshold>
581                  Value: <double>
582
583       set_thresholds <sensor> <threshold> <value> ...   -  Set  the  sensor's
584       thresholds  to  the  given values.  If a threshold is not specified, it
585       will not be modified.  Thresholds are un, uc, ur, lr, lc,  ln.   The  u
586       stands  for upper, l for lower, n for non-critical, c for critical, and
587       r for non-recoverable.  The value is floating point.
588
589       Response:
590              Thresholds set: <sensor>
591
592       get_hysteresis <sensor> - Get the sensor's hysteresis values
593
594       Response:
595              Sensor
596                Name: <sensor>
597                Positivie Hysteresis: <integer>
598                Negative Hysteresis: <integer>
599
600       set_hysteresis <sensor> <pos hyst> <neg hyst> - Set the  sensor's  hys‐
601       teresis to the given values.  These are raw integer value; hystersis is
602       specified as a raw value and it cannot be converted to  floating  point
603       because the function may be non-linear.
604
605       Response:
606              Hysteresis set: <sensor>
607
608       get_event_enables <sensor> - Get the sensor's event enable values
609
610       Response:
611              Sensor
612                Name: <sensor>
613                Event Messages Enabled: <bool>
614                Sensor Scanning Enabled: <bool>
615                Busy: <bool>
616       Threshold sensors report:
617              Threshold
618                Name: <threshold>
619                Enabled: <bool>
620                 .
621                 .
622       only supported thresholds are listed.  Discrete sensors report:
623              Event
624                Offset: <integer>
625                Name: <event offset name for sensor>
626                %Assertion Enabled: <bool>
627                %Deassertion Enabled: <bool>
628       only  supported  offsets  are  listed.   The  assertion and deassertion
629       enables are listed only if the offset support them.
630
631       set_event_enables <sensor> msg|nomsg  scan|noscan  [<enable>  [<enable>
632       ...]]   - Set the sensor's event enable values.  This turns sensor mes‐
633       sages and scanning on and off and will enable all  the  listed  enables
634       and disable all over ones.  The enables are either a <threshold enable>
635       or a <discrete enable>.
636
637       Response:
638              Event enables set: <sensor>
639
640       enable_events <sensor> msg|nomsg scan|noscan [<enable> [<enable>  ...]]
641       -  Enable event enable values.  This turns sensor messages and scanning
642       on and off and will enable all the listed enables.  All  other  enables
643       will  be  left alone.  The enables are either a <threshold enable> or a
644       <discrete enable>.
645
646       Response:
647              Event enables set: <sensor>
648
649       disable_events <sensor> msg|nomsg scan|noscan [<enable> [<enable> ...]]
650       - Disable event enable values.  This turns sensor messages and scanning
651       on and off and will disable all the listed enable.  All  other  enables
652       will  be  left alone.  The enables are either a <threshold enable> or a
653       <discrete enable>.
654
655       Response:
656              Event enables set: <sensor>
657
658
659   control
660       Commands dealing with controls.
661
662       set <control> <value> [<value> ..]  - Set the value of a control.   The
663       settings  depend  on control type, most take one or more integer values
664       depending on the number of physical things the  control  contains.   An
665       identifier  type  takes  one  or more unsigned characters.  A light set
666       with settings take the form
667              lc|nolc <color> <on time> <off time>
668       lc and nolc turn on or of local control,  the  over  values  should  be
669       obvious.   Note all lights support local control, you need to see if it
670       supports the value.
671
672       Response:
673              Set done: <control>
674
675       get <control> - Get the value of a control.  The reponse depends on the
676       control type.
677
678       Response:
679              Control
680                Name: <control>
681       Response for setting lights is:
682              Light
683                Num: 0
684                Local Control: <bool>
685                %Color: <color>
686                %On Time: <integer>
687                %Off Time: <integer>
688       Note that multiple lights may be present if the control supports multi‐
689       ple lights.  The options values (marked with % ) will not be present if
690       local  control  is set to true.  Local control means that the LED takes
691       whatever default function it does on the device  (like  disk  activity,
692       ethernet activity, hot-swap LED, etc.).  Response for id control:
693              Data: <byte1> <byte2> ...
694       Response for other controls:
695              Value
696                Num: <integer>
697                Value: <integer>
698       There will be one Value for each value the control supports.
699
700
701   mc
702       Commands dealing with MC objects.
703
704       reset <warm | cold> <mc> - Do a warm or cold reset on the given MC
705
706       Response:
707              Reset done: <mc>
708
709       msg <mc> <LUN> <NetFN> <Cmd> [data...]  - Send the given command to the
710       management controller and display the response.
711
712       Response:
713                MC: <mc>
714                LUN: <lun>
715                NetFN: <netfn>
716                command: <cmd>
717                Data: <data bytes>
718
719       set_events_enable <mc> <enable | disable> - enables or disables  events
720       on the MC.
721
722       Response:
723              Events enable done: <mc>
724
725       get_events_enable  <mc>  - Prints out if the events are enabled for the
726       given MC.
727
728       Response:
729              Events Enable: <bool>
730
731       sdrs <mc> <main | sensor> - list the SDRs for the mc.  Either gets  the
732       main SDR repository or the sensor SDR repository.
733
734       Response:
735              MC
736                Name: <mc>
737                SDR
738                  Record ID: <integer>
739                  Type: <integer>
740                  Version: <integer>.<integer>
741                  Data: <data bytes>
742       One SDR will be present for each SDR in the repository.
743
744       get_sel_time <mc> - Get the time in the SEL for the given MC.
745
746       Response:
747              MC
748                Name: <mc>
749                SEL Time: <integer>
750
751       set_sel_time <mc> <time> - Set the time in the SEL for the given MC.
752
753       Response:
754              MC SEL time set
755                Name: <mc>
756
757       rescan_sel <mc> - Rescan the SEL in the MC.
758
759       Response:
760              SEL Rescan done: <mc>
761
762       sel_rescan_time  <mc> <time in seconds> - Set the time between SEL res‐
763       cans for the SEL on this MC.  Zero disables scans.
764
765       Response:
766              MC SEL rescan time set: <domain>
767
768       sel_info <mc> - Dump information about the MC's SEL.
769
770       Response:
771              MC
772                Name: <mc>
773                SEL Version: <integer>.<integer>
774                SEL Count: <integer>
775                SEL Slots Used: <integer>
776                SEL Free Bytes: <integer>
777                SEL Last Addition Timestamp: <integer>
778                SEL overflow: <bool>
779                SEL Supports Delete: <bool>
780                SEL Supports Partial Add: <bool>
781                SEL Supports Reserve: <bool>
782                SEL Supports Get SEL Allocation: <bool>
783
784       chan info <mc> <channel> - Dump information about the MC's channel.
785
786       Response:
787              Channel Info
788                MC: <mc>
789                Number: <integer>
790                Medium: <integer>
791                Protocol Type: <integer>
792                Session Support: session-less|single-session|multi-session|session-based
793                Vendor ID: <data bytes>
794                Aux Info: <data bytes>
795
796       chan get_access <mc> <channel> non-volatile|present|both - Dump  infor‐
797       mation  about  the MC's channel access.  There are two different places
798       where this is stored, the present in-use values (volatile) and the non-
799       volatile  storage that is loaded at startup.  Note if you specify chan‐
800       nel 0xe, the response channel will be different; it will be the current
801       channel.
802
803       Response:
804              Channel Access
805                MC: <mc>
806                Channel: <integer>
807                Type: non-volatile|present
808                Alerting Enabled: <bool>
809                Per-Message Auth: <bool>
810                User Auth: <bool>
811                Access Mode: disable|pre-boot|always|shared
812                Privilege Limit: callback|user|operator|admin|oem
813
814       chan set_access <mc> <channel> non-volatile|present|both <parm> <value>
815       ...  - Set information about the MC's channel access.   There  are  two
816       different  places  where  this  is  stored,  the  present in-use values
817       (volatile) and the non-volatile storage  that  is  loaded  at  startup.
818       Note  if you specify channel 0xe, the modified channel will be the cur‐
819       rent channel.  Parms are:
820              alert true|false
821              msg_auth true|false
822              user_auth true|false
823              access_mode disabled|pre-boot|always|shared
824              privilege_limit callback|user|operator|admin|oem
825
826       Response:
827              Channel Access Set
828                MC: <mc>
829                Channel: <integer>
830
831       chan user list <mc> <channel> [<user num>] - List users associated with
832       the channel.  Each user number has an associated name and password that
833       is global in the MC (not associated with a  channel).   There  is  also
834       channel-specific  information  for  each  user.  This command lists the
835       global user information and the channel-specific  information  for  the
836       channel specified.  If no user number is listed, then all users for the
837       channel are listed.  Otherwise only the given user is listed.
838
839       Response:
840              Channel Access Set
841                MC: <mc>
842                Channel: <integer>
843                Max User: <integer>
844                Enabled Users: <integer>
845                Fixed Users: <integer>
846                User
847                  Number: <integer>
848                  *String Name: <string>
849                  *Binary Name: <data bytes>
850                 Link Auth Enabled: <bool>
851                 Msg Auth Enabled: <bool>
852                 Access CB Only: <bool>
853                 Privilege Limit: <integer>
854                 Session Limit: <integer>
855                .
856                .
857       All the users are listed.   One  of  string  name  or  binary  name  is
858       present, if the name is not a printable string, then the binary data is
859       dumped.
860
861       chan user set <mc> <channel> <user  num>  <parm>  <value>  ...   -  Set
862       information about the user number.  Only the specified values are modi‐
863       fied.  The name and password are global values, all other are  channel-
864       specific.  The parms are: are:
865              link_enabled true|false
866              msg_enabled true|false
867              cb_only true|false
868              privilege_limit callback|user|operator|admin|oem|no_access
869              session_limit <integer>
870              name <user name string>
871              password <password string, <= 16 characters>
872              password2 <password string, <= 20 characters>
873              enable
874              disable
875       The  password  is the 16-byte IPMI 1.5 passwords., the password2 is for
876       20-byte IPMI 2.0 passwords.  Note that setting  the  session  limit  to
877       zero means there is no session limit.  Also note that some systems have
878       a bug where the session limit is not optional (as the spec says it is).
879       If  you  get  C7 errors back from this command, you will have to always
880       specify the session limit.  Note that you must enable the user  for  it
881       to  work, but there seems to be no way to get if the user is enabled or
882       not.
883
884       Response:
885              User Info Set: <mc>
886
887
888
889   sel
890       Commands dealing with the system event log.  Note that there is no info
891       command.
892
893       list  <domain>  -  The  list command is unique in this object, so it is
894       specified explicitly here.  List the local copy of the system event log
895       for the entire domain.
896
897       Response:
898              Domain
899                Name: <domain>
900                Entries: <integer>
901                Slots in use: <integer>
902                Event
903                  **EVENT INFO**
904                 .
905                 .
906
907       mc_list  <domain>  - List the local copy of the system event log on the
908       given MC.
909
910       Response:
911              MC
912                Name: <mc>
913                Entries: <integer>
914                Slots in use: <integer>
915                Event
916                  **EVENT INFO**
917                 .
918                 .
919
920       delete <mc> <record #> - Delete the given event number from the SEL
921
922       Response:
923              Event deleted
924                MC: <mc>
925                Record: <integer>
926
927       add <mc> <type> <13 bytes of data> - Add the event data to the SEL.
928
929       Response:
930              MC
931                Name: <mc>
932                Record ID: <integer>
933
934       clear <domain> - clear the system event log
935
936       Response:
937              SEL Clear done: <domain>
938
939
940   con
941       Commands dealing with connections.
942
943       activate <connection> - Activate the given connection
944
945       Response:
946              Connection activated: <connection>
947
948
949   pet
950       Commands dealing with platform event traps.
951
952       new <domain> <connection> <channel> <ip addr> <mac_addr> <eft selector>
953       <policy  num> <apt selector> <lan dest selector> - Set up the domain to
954       send PET traps from the given connection to the  given  IP/MAC  address
955       over the given channel.
956
957       Response:
958              PET Created: <pet>
959
960       mcnew  <mc>  <channel> <ip addr> <mac_addr> <eft selector> <policy num>
961       <apt selector> <lan dest selector> - Set up  the  domain  to  send  PET
962       traps  from  the  given connection to the given IP/MAC address over the
963       given channel.  This takes an MC instead of a connection.
964
965       Response:
966              PET Created: <pet>
967
968       close <pet> - Close the pet.
969
970       Response:
971              PET destroyed: <pet>
972
973
974   pef
975       commands dealing with platform even filters.  These are basically  con‐
976       nections  to  the PEF configuration parameters in an MC.  You use a pef
977       to fetch a pef config, which you can then modify and write back to  the
978       MC.   Note  that  when you get a pef config, you claim a lock on the MC
979       that must be unlocked.
980
981       new <mc> - Create a pef for the given MC.
982
983       Response:
984              PEF: <pef>
985
986       unlock_mc <mc> - Unlock the PEF lock on the given MC.
987
988       Response:
989              PEF unlocked: <mc>
990
991       close <pef> - Free the given pef
992
993       Response:
994              PEF destroyed: <pef>
995
996
997   pef config
998       Commands dealing with PEF configurations.  These  are  the  actual  PEF
999       data items.
1000
1001       get <pef> - Fetch the pef data items from the pef and create a pef con‐
1002       fig.
1003
1004       Response:
1005              PEF Config
1006                Name: <pef config>
1007                **PEF CONFIG**
1008
1009       update <pef config> <parm> [selector] <value> - Set the given parameter
1010       in  the pef config to the given value.  If the parameter has a selector
1011       of some type, the selector must be given, otherwise no selector  should
1012       be given.
1013
1014       Response:
1015              PEF config updated: <pef config>
1016
1017       set <pef> <pef config> - Write the pef data back to the pef.  Note that
1018       this must be the same pef used to create the config.
1019
1020       Response:
1021              PEF config set: <pef config>
1022
1023       unlock <pef> <pef config> - Unlock the lock in the MC and mark the  pef
1024       config as unlocked.
1025
1026       Response:
1027              PEF config unlocked: <pef config>
1028
1029       close <pef config> - Free the pef config.
1030
1031       Response:
1032              PEF config destroyed: <pef config>
1033
1034
1035   lanparm
1036       Commands dealing with lanparms.  These are basically connections to the
1037       LAN configuration parameters in an MC.  You use a lanparm  to  fetch  a
1038       lanparm  config,  which  you  can then modify and write back to the MC.
1039       Note that when you get a lanparm config, you claim a  lock  on  the  MC
1040       that must be unlocked.
1041
1042       new <mc> <channel> - Create a lanparm for the given MC and channel.
1043
1044       Response:
1045              LANPARM: <lanparm>
1046
1047       unlock_mc  <mc> <channel> - Unlock the lanparm lock on the given MC and
1048       channel.
1049
1050       Response:
1051              LANPARM unlocked: <mc>
1052
1053       close <lanparm> - Free the given lanparm
1054
1055       Response:
1056              LANPARM destroyed: <lanparm>
1057
1058
1059   lanparm config
1060       Commands dealing with lanparm configurations.   These  are  the  actual
1061       lanparm data items.
1062
1063       get  <lanparm> - Fetch the lanparm data items from the lanparm and cre‐
1064       ate a lanparm config.
1065
1066       Response:
1067              LANPARM Config
1068                Name: <lanparm config>
1069                **LANPARM CONFIG**
1070
1071       set <lanparm> <lanparm config> - Write the lanparm  data  back  to  the
1072       lanparm.   Note  that  this must be the same lanparm used to create the
1073       config.
1074
1075       Response:
1076              LANPARM config set: <lanparm config>
1077
1078       unlock <lanparm> <lanparm config> - Unlock the lock in the MC and  mark
1079       the lanparm config as unlocked.
1080
1081       Response:
1082              LANPARM config unlocked: <lanparm config>
1083
1084       close <lanparm config> - Free the lanparm config.
1085
1086       Response:
1087              LANPARM config destroyed: <lanparm config>
1088
1089

OTHER COMMANDS

1091       A few general commands exist.
1092
1093       evinfo <bool> - Turn on or off dumping object information when an event
1094       comes in.  This is false by default.
1095
1096       debug <type> <bool> - Turn the given debugging type on or off
1097
1098
1099

EVENTS

1101       The command language will output events to the console when  they  hap‐
1102       pen.  Events all occur in the format:
1103                Event
1104                  **EVENT INFO**
1105
1106       The  event  info  varies on the type of events.  The defined events are
1107       listed below.  Note that the output of some events depends on the  set‐
1108       ting of the evinfo command; the information about the object itself may
1109       or may not be output.
1110
1111       Some events have another event container; this is the IPMI  event  that
1112       caused the event to be output.
1113
1114       The  following  event  is  output  when the domain is completely up and
1115       operational and finished all it SDR, FRU, and bus scans:
1116                EVENT
1117                  Object Type: Domain
1118                  Name: <domain>
1119                  Operation: Domain fully up
1120                  Connection Number: <integer>
1121                  Port Number: <integer>
1122                  Any Connection Up: <bool>
1123                  Error: <integer>
1124
1125       The following comes out when domain connection infomration changes:
1126                EVENT
1127                  Object Type: Domain
1128                  Name: <domain>
1129                  Operation: Connection Change
1130
1131       The following comes out when domains are added:
1132                EVENT
1133                  Object Type: Domain
1134                  Name: <domain>
1135                  Operation: Add
1136                  %**DOMAIN INFO**
1137
1138       The following comes out when domains are destroyed:
1139                EVENT
1140                  Object Type: Domain
1141                  Name: <domain>
1142                  Operation: Delete
1143
1144       The following comes out when the domain gets an  event  that  does  not
1145       have a handler:
1146                EVENT
1147                  Object Type: Event
1148                  **EVENT INFO**
1149
1150       The following comes out when an entity is added:
1151                EVENT
1152                  Object Type: Entity
1153                  Name: <entity>
1154                  Operation: Add
1155                  %**ENTITY INFO**
1156
1157       The following comes out when an entity is deleted:
1158                EVENT
1159                  Object Type: Entity
1160                  Name: <entity>
1161                  Operation: Delete
1162
1163       The following comes out when an entity is changed:
1164                EVENT
1165                  Object Type: Entity
1166                  Name: <entity>
1167                  Operation: Change
1168                  %**ENTITY INFO**
1169
1170       The following comes out when an entity's FRU is added:
1171                EVENT
1172                  Object Type: Entity FRU
1173                  Name: <entity>
1174                  Operation: Add
1175                  %**FRU INFO**
1176
1177       The following comes out when an entity's FRU is deleted:
1178                EVENT
1179                  Object Type: Entity FRU
1180                  Name: <entity>
1181                  Operation: Delete
1182
1183       The following comes out when an entity's FRU is changed:
1184                EVENT
1185                  Object Type: Entity FRU
1186                  Name: <entity>
1187                  Operation: Change
1188                  %**FRU INFO**
1189
1190       The following comes out when an entity's presence changes:
1191                EVENT
1192                  Object Type: Entity
1193                  Name: <entity>
1194                  Operation: Presence Change
1195                  Present: <bool>
1196                  %Event
1197                    **EVENT INFO**
1198
1199       The following comes out when an entity's hot-swap state changes:
1200                EVENT
1201                  Object Type: Entity
1202                  Name: <entity>
1203                  Operation: Hot-Swap Change
1204                  Last State: <hot-swap state>
1205                  State: <hot-swap state>
1206                  %Event
1207                    **EVENT INFO**
1208
1209       The following comes out when an MC is added:
1210                EVENT
1211                  Object Type: MC
1212                  Name: <mc>
1213                  Operation: Add
1214                  %**MC INFO**
1215
1216       The following comes out when an MC is removed:
1217                EVENT
1218                  Object Type: MC
1219                  Name: <mc>
1220                  Operation: Delete
1221
1222       The following comes out when an MC is changed:
1223                EVENT
1224                  Object Type: MC
1225                  Name: <mc>
1226                  Operation: Change
1227                  %**MC INFO**
1228
1229       The following comes out when an MC changes active state:
1230                EVENT
1231                  Object Type: MC
1232                  Name: <mc>
1233                  Operation: Active Changed
1234                  Active: <bool>
1235
1236       The following comes out when a discrete sensor gets an event:
1237                EVENT
1238                  Object Type: Sensor
1239                  Name: <sensor>
1240                  Operation: Event
1241                  Offset: <integer>
1242                  Direction: assertion | deassertion
1243                  Severity: <integer>
1244                  Previous Severity: <integer>
1245                  %Event
1246                    **EVENT INFO**
1247
1248       The following comes out when a threshold sensor gets an event:
1249                EVENT
1250                  Object Type: Sensor
1251                  Name: <sensor>
1252                  Operation: Event
1253                  Threshold: <threshold>
1254                  High/Low: going-high | going-low
1255                  Direction: assertion | deassertion
1256                  %Value: <double>
1257                  %Raw Value: <integer>
1258                  %Event
1259                    **EVENT INFO**
1260
1261       The following comes out when a sensor is added:
1262                EVENT
1263                  Object Type: Sensor
1264                  Name: <sensor>
1265                  Operation: Add
1266                  %**SENSOR INFO**
1267
1268       The following comes out when a sensor is deleted:
1269                EVENT
1270                  Object Type: Sensor
1271                  Name: <sensor>
1272                  Operation: Delete
1273
1274       The following comes out when a sensor is changed:
1275                EVENT
1276                  Object Type: Sensor
1277                  Name: <sensor>
1278                  Operation: Change
1279                  %**SENSOR INFO**
1280
1281       The following comes out when a control gets an event:
1282                EVENT
1283                  Object Type: Control
1284                  Name: <control>
1285                  Operation: Event
1286                  Value
1287                    Number: <integer>
1288                    Value: <integer>
1289                  %Event
1290                    **EVENT INFO**
1291
1292       The following comes out when a control is added:
1293                EVENT
1294                  Object Type: Control
1295                  Name: <control>
1296                  Operation: Add
1297                  %**CONTROL INFO**
1298
1299       The following comes out when a control is deleted:
1300                EVENT
1301                  Object Type: Control
1302                  Name: <control>
1303                  Operation: Delete
1304
1305       The following comes out when a control is changed:
1306                EVENT
1307                  Object Type: Control
1308                  Name: <control>
1309                  Operation: Change
1310                  %**CONTROL INFO**
1311
1312
1313

OBJECT INFO

1315       Many  of  the command responses and events contain information about an
1316       objects.  The definitions of this information output is done here.
1317
1318
1319   **EVENT INFO**
1320                MC: <mc>
1321                Record ID: <integer>
1322                Event type: <integer>
1323                Timestamp: <integer>
1324                Data: <data bytes>
1325
1326
1327   **DOMAIN INFO**
1328                Type: <domain type>
1329                GUID: <hex string>
1330                SEL Rescan Time: <time>
1331                IPMB Rescan Time: <time>
1332
1333
1334   **ENTITY INFO**
1335                Type: unknown | mc | fru | generic
1336                Present: <bool>
1337                Presence sensor always there: <bool>
1338                Hot swappable: <bool>
1339                %Supports managed hot swap: <bool>
1340                %Parents
1341                  Name: <entity>
1342                  Name: <entity>
1343                   .
1344                   .
1345                %Children
1346                  Name: <entity>
1347                  Name: <entity>
1348                   .
1349                   .
1350                %Physical Slot: <integer>
1351                %Id: <string>
1352                Entity ID String: <string>
1353
1354       Note that Parents and Children fields will not be present if the entity
1355       has  no parents or children.  Each entity type except unknown will have
1356       its own output info.  These are:
1357
1358       mc
1359                Channel: <channel>
1360                LUN: <lun>
1361                OEM: <oem field from SDR>
1362                Slave Address: <ipmb>
1363                ACPI_system_power_notify_required: <bool>
1364                ACPI_device_power_notify_required: <bool>
1365                controller_logs_init_agent_errors: <bool>
1366                log_init_agent_errors_accessing: <bool>
1367                global_init: <bool>
1368                chassis_device: <bool>
1369                bridge: <bool>
1370                IPMB_event_generator: <bool>
1371                IPMB_event_receiver: <bool>
1372                FRU_inventory_device: <bool>
1373                SEL_device: <bool>
1374                SDR_repository_device: <bool>
1375                sensor_device: <bool>
1376
1377       fru
1378                Channel: <channel>
1379                LUN: <lun>
1380                OEM: <oem field from SDR>
1381                Slave Address: <ipmb>
1382                access_address: <ipmb>
1383                private_bus_id: <integer>
1384                device_type: <integer>
1385                device_modifier: <integer>
1386                is_logical_fru: <bool>
1387                fru_device_id: <integer>
1388
1389       generic
1390                Channel: <channel>
1391                LUN: <lun>
1392                OEM: <oem field from SDR>
1393                access_address: <ipmb>
1394                private_bus_id: <integer>
1395                device_type: <integer>
1396                device_modifier: <integer>
1397                slave_address: <ipmb>
1398                address_span: <integer>
1399
1400
1401   **MC INFO**
1402                Active: <bool>
1403                GUID: <hex string>
1404                SEL Rescan Time: <integer>
1405                provides_device_sdrs: <bool>
1406                device_available: <bool>
1407                chassis_support: <bool>
1408                bridge_support: <bool>
1409                ipmb_event_generator: <bool>
1410                ipmb_event_receiver: <bool>
1411                fru_inventory_support: <bool>
1412                sel_device_support: <bool>
1413                sdr_repository_support: <bool>
1414                sensor_device_support: <bool>
1415                device_id: <ipmb>
1416                device_revision: <integer>
1417                fw_revision: <integer>.<integer>
1418                version: <integer>.<integer>
1419                manufacturer_id: <integer>
1420                product_id: <integer>
1421                aux_fw_revision: <integer> <integer> <integer> <integer>
1422
1423
1424   *SENSOR INFO**
1425                LUN: <integer>
1426                Number: <integer>
1427                Event Reading Type: <integer>
1428                Event Reading Type Name: one of:
1429                         unspecified threshold discrete_usage discrete_state
1430                         discrete_predictive_failure discrete_limit_exceeded
1431                         discrete_performance_met discrete_severity discrete_device_presense
1432                         discrete_device_enable discrete_availability discrete_redundancy
1433                         discrete_acpi_power
1434                Type: <integer>
1435                Type Name: <sensor type (a generic string)>
1436                %Direction: input | output
1437                %Event Support: per state | entire sensor | global
1438                Init Scanning: <bool>
1439                Init Events: <bool>
1440                Init Thresholds: <bool>
1441                Init Hysteresis: <bool>
1442                Init Type: <bool>
1443                Init Power Up Events: <bool>
1444                Init Power Up Scanning: <bool>
1445                Ignore If No Entity: <bool>
1446                Auto Rearm: <bool>
1447                OEM1: <integer>
1448                Id: <string>
1449
1450       For threshold sensors, the following exist:
1451                Threshold Access: none | readable | settable | fixed
1452                Threshold
1453                  Name: <threshold>
1454                  Readable: <bool>
1455                  Settable: <bool>
1456                  Supports: going high assertion | going low assertion
1457                            | going high deassertion | going low deassertion
1458                 .
1459                 .
1460                Hysteresis Support: none | readable | settable | fixed
1461                %Nominal Reading: <float>
1462                %Normal Max: <float>
1463                %Normal Min: <float>
1464                %Sensor Max: <float>
1465                %Sensor Min: <float>
1466                Base Unit: <integer>
1467                Base Unit Name: <string>
1468                %Rate Unit: <integer>
1469                %Rate Unit Name: <string>
1470                %Modifier Use: / | *
1471                %Modifier Unit: <integer>
1472                %Modifier Unit Name: <string>
1473
1474       For discrete sensors, the following exist:
1475                Event
1476                  Offset: <integer>
1477                  Supports: assertion | deassertion
1478                 .
1479                 .
1480
1481
1482   **CONTROL INFO**
1483                Type: <control type>
1484                Generates Events: <bool>
1485                Settable: <bool>
1486                Readable: <bool>
1487                Num Values: <integer>
1488                Id: <string>
1489
1490       Controls of type light that are set with settings have the following:
1491                Set with: settings
1492                Local Control: <bool>
1493                Color: <color>
1494                 .
1495                 .
1496       One color is listed for each supported color
1497
1498       Controls of type light that are set with transitions have  the  follow‐
1499       ing:
1500                Light
1501                  Number: <integer>
1502                  Num Values: <integer>
1503                  Value
1504                    Number: <integer>
1505                    Num Transitions: <integer>
1506                    Transition
1507                      Number: <integer>
1508                      Color: <color>
1509                      Time: <integer>
1510                     .
1511                     .
1512                   .
1513                   .
1514
1515       Controls of type identifier have the following:
1516                Max Length: <integer>
1517
1518
1519   **FRU INFO**
1520                Name: <fru>
1521                record
1522                  Name: <name>
1523                  Type: binary | ascii | unicode | integer
1524                  %Number: <integer>
1525                  Data: data depending on type
1526                 .
1527                 .
1528                Multi-record
1529                  Number: <integer>
1530                  Type: binary | ascii | unicode
1531                  Data: <data in the above format>
1532                 .
1533                 .
1534
1535
1536   **LANPARM CONFIG**
1537                support_auth_oem: <bool>
1538                support_auth_straight: <bool>
1539                support_auth_md5: <bool>
1540                support_auth_md2: <bool>
1541                support_auth_none: <bool>
1542                ip_addr_source: <integer>
1543                num_alert_destinations: <integer>
1544                %ipv4_ttl: <integer>
1545                %ipv4_flags: <integer>
1546                %ipv4_precedence: <integer>
1547                %ipv4_tos: <integer>
1548                %ip_addr: <ip addr>
1549                %mac_addr: <mac addr>
1550                %subnet_mask: <ip addr>
1551                %primary_rmcp_port <integer>
1552                %secondary_rmcp_port <integer>
1553                %bmc_generated_arps: <bool>
1554                %bmc_generated_garps: <bool>
1555                %garp_interval: <integer>
1556                %default_gateway_ip_addr: <ip addr>
1557                %default_gateway_mac_addr: <mac addr>
1558                %backup_gateway_ip_addr: <ip addr>
1559                %backup_gateway_mac_addr: <mac addr>
1560                community_string: <string>
1561                User
1562                  Name: callback
1563                  enable_auth_oem: <bool>
1564                  enable_auth_straight: <bool>
1565                  enable_auth_md5: <bool>
1566                  enable_auth_md2: <bool>
1567                  enable_auth_none: <bool>
1568                User
1569                  Name: user
1570                  enable_auth_oem: <bool>
1571                  enable_auth_straight: <bool>
1572                  enable_auth_md5: <bool>
1573                  enable_auth_md2: <bool>
1574                  enable_auth_none: <bool>
1575                User
1576                  Name: operator
1577                  enable_auth_oem: <bool>
1578                  enable_auth_straight: <bool>
1579                  enable_auth_md5: <bool>
1580                  enable_auth_md2: <bool>
1581                  enable_auth_none: <bool>
1582                User
1583                  Name: admin
1584                  enable_auth_oem: <bool>
1585                  enable_auth_straight: <bool>
1586                  enable_auth_md5: <bool>
1587                  enable_auth_md2: <bool>
1588                  enable_auth_none: <bool>
1589                User
1590                  Name: oem
1591                  enable_auth_oem: <bool>
1592                  enable_auth_straight: <bool>
1593                  enable_auth_md5: <bool>
1594                  enable_auth_md2: <bool>
1595                  enable_auth_none: <bool>
1596                Alert Destination
1597                  Number: <integer>
1598                  alert_ack: <bool>
1599                  dest_type: <integer>
1600                  alert_retry_interval: <integer>
1601                  max_alert_retries: <integer>
1602                  dest_format: <integer>
1603                  gw_to_use: <integer>
1604                  dest_ip_addr: <ip addr>
1605                  dest_mac_addr: <mac addr>
1606                 .
1607                 .
1608
1609
1610   **PEF CONFIG**
1611                alert_startup_delay_enabled: <bool>
1612                startup_delay_enabled: <bool>
1613                event_messages_enabled: <bool>
1614                pef_enabled: <bool>
1615                diagnostic_interrupt_enabled: <bool>
1616                oem_action_enabled: <bool>
1617                power_cycle_enabled: <bool>
1618                reset_enabled: <bool>
1619                power_down_enabled: <bool>
1620                alert_enabled: <bool>
1621                %startup_delay: <integer>
1622                %alert_startup_delay: <integer>
1623                guid_enabled: <bool>
1624                guid_val: <guid>
1625                num_event_filters: <integer>
1626                num_alert_policies: <integer>
1627                num_alert_strings: <integer>
1628                Event Filter
1629                  Number: <integer>
1630                  enable_filter: <bool>
1631                  filter_type: <integer>
1632                  diagnostic_interrupt: <bool>
1633                  oem_action: <bool>
1634                  power_cycle: <bool>
1635                  reset: <bool>
1636                  power_down: <bool>
1637                  alert: <bool>
1638                  alert_policy_number: <integer>
1639                  event_severity: <integer>
1640                  generator_id_addr: <integer>
1641                  generator_id_channel_lun: <integer>
1642                  sensor_type: <integer>
1643                  sensor_number: <integer>
1644                  event_trigger: <integer>
1645                  data1_offset_mask: <integer>
1646                  data1_mask: <integer>
1647                  data1_compare1: <integer>
1648                  data1_compare2: <integer>
1649                  data2_mask: <integer>
1650                  data2_compare1: <integer>
1651                  data2_compare2: <integer>
1652                  data3_mask: <integer>
1653                  data3_compare1: <integer>
1654                  data3_compare2: <integer>
1655                 .
1656                 .
1657                Alert Policy
1658                  Number: <integer>
1659                  policy_num: <integer>
1660                  enabled: <bool>
1661                  policy: <integer>
1662                  channel: <integer>
1663                  destination_selector: <integer>
1664                  alert_string_event_specific: <bool>
1665                  alert_string_selector: <integer>
1666                 .
1667                 .
1668                Alert String
1669                  event_filter: <integer>
1670                  alert_string_set: <integer>
1671                  alert_string: <string>
1672                 .
1673                 .
1674
1675
1676   **CONNECTION INFO**
1677                Active: <bool>
1678                Up: <bool>
1679                Port
1680                  Number: <integer>
1681                  Up: <bool>
1682                 .
1683                 .
1684
1685
1686   **PEF INFO**
1687                MC: <mc>
1688
1689
1690   **PET INFO**
1691                MC: <mc>
1692                Channel: <channel>
1693                IP Address: <ip address>
1694                MAC Address: <mac address>
1695                EFT Selector: <eft selector>
1696                Policy Number: <policy number>
1697                APT Selector: <apt selector>
1698                LAN Dest Selector: <lan dest selector>
1699
1700
1701   **LANPARM INFO**
1702                MC: <mc>
1703                Channel: <integer>
1704
1705
1706

SEE ALSO

1708       ipmish(1)
1709
1710

KNOWN PROBLEMS

1712       None
1713
1714

AUTHOR

1716       Corey Minyard <cminyard@mvista.org>
1717
1718
1719
1720OpenIPMI                           05/13/03                    ipmi_cmdlang(7)
Impressum