-
Notifications
You must be signed in to change notification settings - Fork 1
/
ChangeLog
9036 lines (6070 loc) · 289 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2014-02-11 Corey Minyard <cminyard@mvista.com>
* lib/domain.c: Fix a wrong comparison in cmp_int().
2014-01-20 Corey Minyard <cminyard@mvista.com>
* configure.in -> configure.ac
Plus some cleanups and update the version to 2.0.21.
2014-01-10 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell_mod.c: Add a command to directly
set the duty cycle of the fans.
2013-12-23 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/mcserv.h, lanserv/OpenIPMI/msg.h, lanserv/bmc.c:
The IANA numbers are supposed to be in bytes 2-4 off responses to IANA
commands, but they were not being put there. Fix this in the main IANA
handling to do this automatically, and modify the command handling to
strip the IANA from the command and add it to a message field. This
makes handling of IANA commands more natural and allows standard message
response generation to work.
* sol.c: Adjust for the previous change.
* marvell-bmc/marvell_mod.c: ditto
* lanserv/sol.c: Check that an MC has SOL enabled befor attempting
to use the SOL data when setting custom SOL settings.
2013-11-07 Corey Minyard <cminyard@mvista.com>
* lanserv/ipmi_sim.c: Set SO_REUSEADDR on the serial TCP and IPMI
LAN sockets to avoid "address in use" errors when quitting and
restarting.
2013-11-06 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/persist.h, lanserv/persist.c, lanserv/ipmi_sim.c:
Add a way to pass in the state directory on the command line so
the persist location can be specified then instead of just at
compile time.
2013-10-10 Corey Minyard <cminyard@mvista.com>
* include/OpenIPMI/os_handler.h: Add a real and monotonic time
fetcher.
* cmdlang/os_debug: Add the new time fetchers.
* tcl/tcl_os_hnd.c, unix/unix_os_hnd.c, ui/ui_os.c: ditto
* unix/posix_os_hnd.c, unix/posix_thread_os_hnd.c: ditto
* unix/selector.c: Switch to using monotonic time.
* lib/ipmi_lan.c: Change gettimeofday() to the proper time handlers.
* lib/mc.c, lib/oem_atca_conn.c, lib/sdr.c: ditto
* lib/sensor.s, sample/ipmicmd.c, tcl/test_handlers.c: ditto
* ui/basic_ui.c, ui/ui.c, unix/test_handlers.c: ditto
* lanserv/OpenIPMI/serv.h: Add a real and monotonic time
fetcher.
* lanserv/ipmi_sim.c, lanserv/lanserv.c: Supply time fetchers
using the os handler.
* lanserv/bmc.c: Use the time fetchers instead of gettimeofday().
* lanserv/bmc_app.c, lanserv/bmc_storage.c: ditto
* lanserv/marvell-bmc/marvell_mod.c: ditto
2013-08-30 Corey Minyard <cminyard@mvista.com>
* include/OpenIPMI/Makefile.am: Add ipmi_string.h to the
distributed includes.
* configure.in: Move to version 2.0.20-rc3.
2013-08-29 Corey Minyard <cminyard@mvista.com>
* lanserv/sdrcomp/Makefile.am, lanserv/marvell-bmc/Makefile.am:
Remove the sdrcomp_build program, it wasn't necessary.
* configure.in: The dia program changed the --version output
from stdout to stderr. Account for that.
* configure.in: Move to version 2.0.20-rc2.
2013-08-28 Corey Minyard <cminyard@mvista.com>
* unix/posix_thread_os_hnd.c: Add a lock to the timer to avoid
races starting and stopping the timer.
* cmdlang/cmd_lanparm.c: Cleanups for warnings.
* cmdlang/cmd_solparm.c: ditto
* lanserv/ipmi_sim.c: ditto
* lib/entity.c: ditto
* lib/ipmi_lan.c: ditto
* lib/ipmi_smi.c: ditto
* lib/mc.c: ditto
* lib/oem_atca.c: ditto
* lib/sensor.c: ditto
* sample/ipmicmd.c: ditto
* sample/sample2.c: ditto
* ui/basic_ui.c: ditto
* ui/ui.c: ditto
* utils/ipmi_malloc.c: ditto
* utils/string.c: ditto
* tcl/test_handlers.c: Call Tcl_CreateInterp() to initialize
the Tcl code before using.
* include/OpenIPMI/ipmi_cmdlang.h: Add some missing includes.
* lanserv/OpenIPMI/persist.h, lanserv/persist.c, lanserv/emu_cmd.c:
Add a emu command to disable persistence, mostly for testing.
* lanserv/ipmi_sim.c: Still write '> ' if echo is off, so the test
code can tell when a command is done.
* lanserv/lanserv_ipmi.c: Fix the response length on set_channel
access, fix the lan parameter command and rollback so it works
multiple times.
* swig/perl/Lanserv.pm: Big rework of the tests so they work with
recent simulator changes.
* swig/perl/Makefile.am: ditto
* swig/perl/lan.conf: ditto
* swig/perl/test_chan: ditto
* swig/perl/test_fru: ditto
* swig/perl/test_lanparm: ditto
* swig/perl/test_pef: ditto
* swig/perl/test_pet: ditto
2013-08-28 Nikita Yushchenko <nyushchenko@dev.rtsoft.ru>
* unix/posix_thread_os_hnd.c: This patch makes behaviour of
posix_thread_os_hnd's stop_timer() same as behaviour of
posix_os_hnd's stop_timer() currently is.
* swig/perl/.gitignore, swig/python/.gitignore, tcl/.gitignore:
More .gitignore.
2013-08-27 Nikita Yushchenko <nyushchenko@dev.rtsoft.ru>
* lib/ipmi_lan.c: This change is needed to allow software using
library to see "connection timeout" error, that happens when BMC
indeed does not respond.
2013-06-13 Nikita Yushchenko <nyushchenko@dev.rtsoft.ru>
* lib/ipmi_lan.c: Fix misbehaviour of code in
check_session_seq_num() when incoming sequence number contains
garbage. Also, it fixes type of 'bit' variable same as type of
(*map) it operates on... but still not enough for lt_allowed=16.
* lib/ipmi_lan.c: Change the message map size to 32 bits so it can
handle a full 16-message window.
2013-05-29 `Corey Minyard <cminyard@mvista.com>
* lanserv/serv.c: Don't return negative of the checksum, let the
calling routine do that so it can do running checksums.
* lanserv/bmc.c, lanserv/lanserv.c: Negate the checksum.
* lanserv/serial_ipmi.c, lanserv/lanserv_ipmi.c: Fix some style issues
around the checksum code.
2013-05-06 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell.emu: Change the SEL size to 1000 entries.
* lanserv/sol.c: Fix an error shutdown issue that can result in a
SIGSEGV.
2013-04-15 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell_mod.c: Modify the power on sequence
to hold the reset for 100ms after power on.
2013-04-11 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell_mod.c: Fix the calculations for the
1.05V sensor.
* lanserv/marvell-bmc/marvell_mod.c: Add a duty cycle modify field
to let you adjust the duty cycle of the fans.
2013-03-28 Corey Minyard <cminyard@mvista.com>
* lanserv/bmc_storage.c: Modified the fru_trywait to be
fru_timedwait when waiting for the FRU semaphore, and added a
250ms timeout on it. That should be enough time for any
asynchronous operation to complete, but avoids an error return.
2013-03-27 Corey Minyard <cminyard@mvista.com>
* lanserv/bmc_storage.c: Added EINTR and partial read/write
handling for FRU data.
2013-03-08 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell_mod.c: Fix a typo in an error string.
* sample/ipmi_serial_bmc_emu.c: Fix the IP address configuration
so it actually works.
2013-03-07 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell_mod.c: The system serial number for
the board was being set wrong, the data was off by 1 in the fru
version 2 case.
* lanserv/marvell-bmc/marvell_mod.c: Rewrite the chassis info for
a board if the version of the main chassis info is different than the
version for the board.
2013-03-05 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell_mod.c: Fix a bug in the board
removal simulation.
2013-03-04 Corey Minyard <cminyard@mvista.com>
* lanserv/emu_cmd.c, lanserv/OpenIPMI/serv.h: Add the ability to
dynamically add new emulator commands. Useful for debugging.
* lanserv/emu.h: Removed things moved to serv.h.
* lanserv/marvell-bmc/marvell_mod.c: Add the ability to simulate
a board being removed.
* lanserv/bmc_sensor.c: The hysteresis was being pulled from the
wrong bytes in the SDR.
* lanserv/marvell-bmc/marvell_mod.c: For the chassis power control,
if any board is on the report the power as on.
* lanserv/marvell-bmc/marvell_mod.c: Add a bunch of internal
documentation and reorganize things a bit to make sure that
related functions are grouped together.
2013-02-25 Corey Minyard <cminyard@mvista.com>
* lanserv/bmc_sensor.c: The previous change to avoid bogus events
from polled sensors turned off the timer for polled sensors, thus
nothing happened. Start the timer.
* lanserv/marvell-bmc/lancontrol: Handle incomplete arp results.
2013-02-22 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/mcserv.h, lanserv/emu_cmd.c: Add postinit
function to the polled sensor handler to call after the sensor is
created.
* lanserv/bmc_sensor.c: Add the ability to set the initial event
state for a polled file sensor.
* lanserv/marvell-bmc/marvell_mod.c: Start out the power supply
sensor with the present bit set so that no log is issued for
normal startup.
2013-02-21 Corey Minyard <cminyard@mvista.com>
* lanserv/bmc_storage.c: Fix an issue with writing FRU data to a
file, it was writing the wrong data.
* lanserv/bmc_sensor.c: Delay enabling the FRU and reading sensor
data a bit so that false events don't get put into the event log.
* lanserv/marvell-bmc/*.sdrs: Fix the events to be deassert events
for the various deassertions.
* lanserv/marvell-bmc/marvell_mod.c: Fix the reset reason sensor,
it wasn't actually adding the proper value into the event to tell
what happened.
* lanserv/bmc_storage.c: Make the SEL overflow bit work.
2013-02-12 Corey Minyard <cminyard@mvista.com>
* lanserv/ipmi_sim.c: Add a way to catch fatal signals, and add a
shutdown handler for when the program either shuts down normally
or catches a signal.
* lanserv/sol.c, lanserv/ipmi_sim.c: Add a method to save the sol
data to a backup file when the program shuts down, and restore the
backup data when the program comes back up. Also remove the
sol_shutdown() function an move that handling over to the new
method.
* lanserv/marvell-bmc/lan.conf: Add sol shutdown/restore files for
all the sol sessions.
2013-02-07 Corey Minyard <cminyard@mvista.com>
* configure.in, lanserv/Makefile.am: Add a --with-marvell-bmc
option.
* lanserv/marvell-bmc/marvell_mod.c: Add support for the version
2.0 FRU.
2013-02-06 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell_mod.c: Add an option to disable the
watchdog timer.
* lanserv/marvell-bmc/marvell_mod.c: Fix reset reason to be hard
reset unless coldboot or warmboot is set.
2013-02-04 Corey Minyard <cminyard@mvista.com>
* configure.in: Add support for BUILD_CC.
* configure.in, lanserv/sdrcomp: Move sdrcomp into its own
subdirectory so it can be ready before marvell-bmc, and add
a build version of sdrcomp.
* lanserv/sdrcomp/marvell-bmc/Makefile.am: Get all the extra stuff
to distribute properly and build the SDRs automatically.
* lanserv/marvell-bmc/marvell_mod.c: Fix a cold power up bug,
don't change the board power state if it's not a cold power up.
* lanserv/marvell-bmc/marvell_mod.c: If the BMC sees a critical
temperature for a board, it waits until it sees it twice before
powering the board down.
* lanserv/marvell-bmc/marvell_mod.c: Switch the handling of
critical temperatures and sensor settings so the sensor setting
goes first. Before the sensor setting was after the board was
powered off and the sensor was disabled, so on an overtemp the
event wouldn't be logged.
* lanserv/marvell-bmc/marvell_mod.c: Fix the name of the dimm
sensor.
* lanserv/marvell-bmc/marvell_mod.c: Always use the motherboard
temperature sensor when calculating fan duty.
2013-02-03 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell_mod.c: Add support for /dev/watchdog.
* lanserv/marvell-bmc/marvell_mod.c: Add a sensor for reporting
the reboot reason of the BMC.
* lanserv/marvell-bmc/marvell_mod.c: Clean up some stray \n's that
shouldn't be in sys->log() calls.
* lanserv/bmc.c: Fix handling of adding commands to existing
netfns, the cb_data may be NULL in that case.
2013-01-24 Corey Minyard <cminyard@mvista.com>
* swig/python/openipmigui/Makefile.am: Fix the localcopy command
to actually make a local copy.
* lanserv/marvell-bmc/marvell_mod.c, lanserv/marvell-bmc/board.sdrs:
Increase the range of the 0.9V sensor.
* lanserv/marvell-bmc/marvell_mod.c: Minor cleanups and memory
usage inprovements.
2013-01-23 Corey Minyard <cminyard@mvista.com>
* lanserv/bmc_sensor.c: Don't require a sensor to be enabled to
be polled. The sensor enable is often set in the polling routine.
* lanserv/marvell-bmc/lan.conf: Fix the LAN configuration to better
match the hardware.
* lanserv/marvell-bmc/marvell_mod.c: Fix the power supply sensor,
it was fairly broken with respect to presence.
2013-01-21 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc/marvell_mod.c: Don't allow power to be
changed on a board that is not present.
* lanserv/marvell-bmc/marvell_mod.c: Light the fan fail LED on a
fan failure.
* lib/sensor.c, lib/entity.c: Allow software ids to be used as
normal addresses.
* lanserv/marvell-bmc/marvell_mod.c: Fix an issue with setting
board presense in the wrong place.
2013-01-20 Corey Minyard <cminyard@mvista.com>
* lanserv/marvell-bmc, lanserv/Makefile.am: Add the Marvell BMC
code ipmi_sim plugin.
* lanserv/ipmi_sim.c, lanserv/lanserv.c: Add config.h include so
syslog testing will work.
2013-01-18 Corey Minyard <cminyard@mvista.com>
* lanserv/*: Change the command handler to take a cb_data
parameter.
* lanserv/OpenIPMI/mcserv.h, lanserv/bmc_storage.c: Modify the FRU
data to be more memory efficient.
* lanserv/bmc_picmg.c: Adjust for previous change.
2013-01-14 Corey Minyard <cminyard@mvista.com>
* lanserv/bmc.h, lanserv/OpenIPMI/mcserv.h, lanserv/bmc_sensor.h:
Modify the sensor bit settings to use bitmasks of a uint16_t
instead of an array of characters. Less code, less memory, and
faster.
* lanserv/bmc_app.c, lanserv/bmc_picmg.c: Adjust for the previous
change.
* lanserv/bmc_sensor.c, lanserv/OpenIPMI/mcserv.h: Add handling of
sensor rearm and add a way to register to get called if a sensor
is rearmed.
2013-01-11 Corey Minyard <cminyard@mvista.com>
* lanserv/sol.c: Fix a bug where a sol connection can hang on an
overflow of data. The handling of sol reading was reworked quite
a bit because of this, and to fix other issues related to history.
The history handling throws a bit of a curve into this, because
you want data to go to the history even if you can't read any more
to send out the network interface. So reading data is no longer
flow-controlled if history is enabled. Instead the buffer size
was increased and reads always are enabled on the port.
In addition, the maximum send size was increased to 255 bytes and
a few places were a wrong timer was started were fixed.
* lanserv/extcmd.c: Fix handling of IP addresses to work on any
endianness.
* lanserv/lanserv_ipmi.c: Change the maximum message size to ~1024.
* lanserv/lanserv_ipmi.c: Modify the reading of values during a
set so that it reads values from the local data, not the external
data, when the parameter has been set but not committed. ipmitool
expects to be able to re-read parameters and get the value it
wrote.
2013-01-10 Corey Minyard <cminyard@mvista.com>
* lanserv/extcmd.c: Fix issues with IP addresses on ARM.
* lanserv/ipmi_sim: Don't bring up a LAN channel if the address
is not configured.
* lanserv/lanserv_ipmi.c: Fix allowed auths settings to use the
actual values, and fix the type 16 parameter.
* lanserv/bmc.h, lanserv/bmc_app.c, lanserv/OpenIPMI/mcserv.h: Add
version setting capability to the MC.
* lanserv/bmc.c, lanserv/OpenIPMI/mcserv.h: Add a way to fetch the
openipmi lanserv version.
* lanserv/bmc_sensor.c: Convert reading raw data for sensors to
using raw, not buffered, I/O. ASCII reading remains buffered.
* lanserv/bmc_storace.c: Convert reading/writing EEPROM data to
use raw I/O, not buffered I/O.
2013-01-09 Corey Minyard <cminyard@mvista.com>
* lanserv/sdrcomp.c: Add type 18 SDR.
2013-01-07 Corey Minyard <cminyard@mvista.com>
* lanserv/ipmi_sim.c: Fix the IO exception callback.
* lanserv/Makefile.am: Update version.
* unix/posix_os_hnd.c: Remove some dead code.
* unix/selector.c: Consolidate the processing.
* lanserv/bmc_sensor.c: Add mask capability to the file sensor.
* lanserv/sdrcomp.c: Add timestamps and entity names to SDRs.
2013-01-06 Corey Minyard <cminyard@mvista.com>
* lanserv/mcserv.h, lanserv/bmc_sensor.c: Add flags to the threshold
and event support settings to allow values to be passed in to control
which parts are initialized.
* lanserv/emu_cmd.c: Adjust for the previous changes.
* lanserv/bmc_sensor.c: Finish the SDR initialization code.
* lanserv/bmc_sensor.c: Convert the ascii file scanner to a general
scanner that can be used for raw or ascii files.
* lanserv/bmc_sensor.c: Fix the polling to to limit threshold values
from 0-255.
* lanserv/emu_cmd.c: Use standard, not base 16, for all integer values
except raw data input.
* lanserv/persist.c: Fix a bug reading lower-case hex values.
* lanserv/sdrcomp.c: Fix some issues with type 2 sdrs.
* lanserv/ipmisim1.emu: Adjust for the previous changes.
* lanserv/persist.c: Fix a memory overwrite reading data.
* lanserv/bmc_sensor.c: Don't process polled sensor data if it's
not valid.
2013-01-03 Corey Minyard <cminyard@mvista.com>
* lanserv/*: Fix const correctness issues.
* lanserv/emu_cmd.c, lanserv/config.c: Add variable definition and
include commands.
2013-01-02 Corey Minyard <cminyard@mvista.com>
* lanserv/sdrcomp.c: Lots of enhancements, names for fields,
and general things to make this easier to use.
* lanserv/bmcsensor.c: Added a multiplier for ascii file sensor
handling.
2012-12-29 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/mcserv.h, lanserv/bmc.h, lanserv/bmc_sensor.h:
Rework the just added poll sensor capability to have it return the
new value. This will make it easier to run in a separate thread,
if necessary.
* lanserv/bmc_sensor.c: Fix event delivery handling of the data
values.
* lanserv/bmc_storage.c: Fix issues with the persistent storage of
data.
* lanserv/emu.h, lanserv/bmc.c, lanserv/emu_cmd.c: Add options to
the MC and add an option to use or not use SDR persistence.
2012-12-28 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/serv.h, lanserv/config.c, lanserv/ipmi_sim.c:
Add a post-init function for modules.
2012-12-27 Corey Minyard <cminyard@mvista.com>
* lanserv/bmc.h, lanserv/bmc_sensor.c, lanserv/OpenIPMI/mcserv.h:
Added sensor infrastructure for registering and initializing
sensor types.
* lanserv/emu_cmd.c: Added code to use the registration of sensor
types and the setting of polled sensors.
2012-12-21 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/mcserv.h, lanserv/bmc_storage.c: Add the
ability to represent a FRU inventory device with a function, and
add a helper function for doing this with a file.
* lanserv/emu_cmd.c: Adjust for the previous change.
* lanserv/sel.c: Add persistence to the SEL.
* lanserv/sdrcomp.c: Add type 16 and 17 SDR types.
* lanserv/bmc.h, lanserv/bmc_storage.c: Add a function to iterate
SDRs.
* lanserv/bmc.c: Remove init_sensor_from_sdr().
* lanserv/bmc_sensor.c: Add initialization of a sensor from the
BMC's main SDR repository.
2012-12-20 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/persist.h, lanserv/persist.c: Add the ability
to write persist data to a FILE and to iterate persist data.
* lanserv/sdrcomp.c, lanserv/Makefile.am: Add the ability to
output SDRs in persist format.
* lanserv/bmc.c, lanserv/bmc.h, lanserv/bmc_storage.h: Remove the
watchdog sensor SDR init and add the ability to read and write the
SDRs from persistent data.
2012-12-18 Corey Minyard <cminyard@mvista.com>
* include/OpenIPMI/ipmi_string.h, utils/string.c, Makefile.am:
Move IPMI string handling to the utils library.
* include/OpenIPMI/internal/ipmi_int.h, lib/ipmi.c: Move the IPMI
string handling from here.
* lanserv/OpenIPMI/serv.h, lanserv/config.h: Add a "get_int"
handler for SDRs.
* lanserv/config.c: Add some other valid boolean values for use in
SDRs: (yes, no, 1, 0).
* lanserv/sdrcomp.c: Add start of code to compile SDRs from human
readable text.
2012-12-17 Corey Minyard <cminyard@mvista.com>
* lanserv/emu.c: Some reorganization getting ready to split
up this file.
* lanserv/serv.c, lanserv/OpenIPMI/serv.h: Create a common
ipmb_checksum routine.
* lanserv/emu.c: Use the common ipmb_checksum routine
* lanserv/lanserv.c: ditto
* lanserv/lanserv_ipmi.c: ditto
* lanserv/serial_ipmi.c: ditto
* lanserv/bmc.c: Rename from emu.c
* lanserv/bmc.c, lanserv/Makefile.am: Split this file up into
smaller pieces, roughly per NETFN.
* lanserv/bmc_app.c: ditto
* lanserv/bmc_chassis.c: ditto
* lanserv/bmc_picmc.c: ditto
* lanserv/bmc_sensor.c: ditto
* lanserv/bmc_storage.c: ditto
* lanserv/bmc_transport.c: ditto
2012-12-01 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/serv.h, lanserv/config.c, lanserv/ipmi_sim.c:
Add the ability to print the version of ipmi_sim and any loaded
modules.
2012-11-14 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI.mcserv.h, lanserv/OpenIPMI/mcserv.h: Add
graceful shutdown defines.
* lanserv/emu: Add graceful shutdown capability.
2012-11-09 Corey Minyard <cminyard@mvista.com>
* lanserv/emu.c: OpenIPMI was assigned an IANA number, so use it
for our custom messages.
2012-11-07 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/mcserv.h, lanserv/sol.c, lanserv/lan.conf:
Change noreadclear to readclear.
2012-11-06 Corey Minyard <cminyard@mvista.com>
* lanserv/Makefile.am, lanserv/sol.c, lanserv/config.c: Move the
sol code to only be compiled into ipmi_sim, not the lanserv
command.
* lanserv/emu.c, lanserv/OpenIPMI/mcserv.h: Add an IANA handler
and a handler for the OpenIPMI-specific IANA and allow other
parts of the system to register commands against it.
* lanserv/sol.c: Add a new command to limit the size fetched from
the SOL history buffer.
2012-10-29 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/serv.h, lanserv/ipmi_sim.c: Add a gen_rand
function to the sys_data_t structure.
* lanserv/OpenIPMI/mcserv.h, lanserv/sol.c, lanserv/config.c:
By default clear the SOL history buffer after it is read, but
add a parameter to not clear it.
2012-10-05 Corey Minyard <cminyard@mvista.com>
* lanserv/emu.c, lanserv/OpenIPMI/mcserv.h: Reworked the chassis
control function a bit to make it more flexible. Added power
cycle capability.
* lanserv/Makefile.am, lanserv/ipmi_sim.c: Add a version number to
the simulator.
2012-10-04 Corey Minyard <cminyard@mvista.com>
* lanserv/emu.c: Fix a problem handling FRU data that is larger
than 64K.
2012-10-03 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/serv.h: Increase the number of IPMBs to 256
and modify the code to allow odd IPMB addresses.
* lanserv/config.c: ditto
* lanserv/emu.c: ditto
* lanserv/ipmi_sim.c: ditto
* lanserv/sol.c: ditto
* lib/Makefile.am: Remove '-L$(libdir)' from the LDFLAGS, as that
causes issues with cross compiling.
* lanserv/persist.c: Fix a problem reading integet persisten
values.
* lanserv/sol.c, lanserv/emu.c: Fix some bugs with SOL config
handling.
2012-10-02 Corey Minyard <cminyard@mvista.com>
* lanserv/sol.c, lanserv/config.c: Add a way to disable RTS/CTS
handling on the port.
* lanserv/sol.c: Fix a bug handling data when the buffer gets
full.
2012-10-01 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/serv.h: Add printf attribute to the log functions.
* lanserv/serv.c, lanserv/lanserv_ipmi.c: Fix problems with log
function attributes being wrong.
2012-09-29 Corey Minyard <cminyard@mvista.com>
* lanserv/config.c, lanserv/ipmi_sim.c: Move the dynamic loading
to after the main part of the simulator is initialized.
* lanserv/sol.c: Print the right pid if the device is UUCP locked.
2012-09-27 Corey Minyard <cminyard@mvista.com>
* lanserv/emu.c: Added an internal capability to do power control.
2012-09-26 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/serv.h, lanserv/ipmi_sim.c: Add a way to do I/O
handling to the sys_data structure.
* lanserv/sol.c: Switch sol over to use the sys_data I/O handling
instead of directly using the OS handlers.
2012-09-25 Corey Minyard <cminyard@mvista.com>
* lanserv/config.c: Have the module initialization function
return an int, 0 for success and errno for failure.
2012-09-24 Corey Minyard <cminyard@mvista.com>
* doc/Makefile.am: One more fix for building outside the source
directory.
* lanserv/OpenIPMI/Makefile.am: Add a missing file.
* lanserv/Makefile.am: Fix a cross-compile issue.
2012-09-21 Corey Minyard <cminyard@mvista.com>
* lanserv/emu.c, lanserv/lanserv_ipmi.c: Test handling a SOL
session on a satellite MC, fix some issues with that.
2012-09-20 Corey Minyard <cminyard@mvista.com>
* lanserv/emu.c: Make the FRU history be per-session so multiple
users will consistent data.
2012-09-19 Corey Minyard <cminyard@mvista.com>
* lanserv/emu.c: Convert the command handling over to using
tables to allow commands to be dynamically added, and add
a function to do this.
* lanserv/config.c: Add a way to dynamically load libraries
into the simulator.
* cmdlang/Makefile.am: Rework so OpenIPMI can build in an external
directory.
* cmdlang/ipmish.c: ditto
* include/OpenIPMI/ipmi_conn.h: ditto
* include/OpenIPMI/ipmi_lan.h: ditto
* include/OpenIPMI/ipmi_types.h: ditto
* include/OpenIPMI/ipmiif.h.in: ditto
* lib/Makefile.am: ditto
* sample/Makefile.am: ditto
* swig/perl/Makefile.am: ditto
* swig/python/Makefile.am: ditto
* swig/python/openipmigui/Makefile.am: ditto
* ui/Makefile.am: ditto
* unix/Makefile.am: ditto
2012-09-17 Corey Minyard <cminyard@mvista.com>
* lanserv/extcmd.c, lanserv/OpenIPMI/extcmd.h: Add a mapping
capability to map values to strings.
* lanserv/emu.c, lanserv/lanserv_ipmi.c: Convert over to the
extcmd string mapping facility.
2012-09-16 Corey Minyard <cminyard@mvista.com>
* lanserv/config.c, lanserv/emu.c: Add an external command
function for doing power and reset control.
* lanserv/ipmi_sim_chassiscontrol: Add an example script for power
configuration.
* lanserv/emu.c: Add boot config control handling.
* lanserv/ipmi_sim_chassiscontrol: Add boot config control.
2012-09-15 Corey Minyard <cminyard@mvista.com>
* lanserv/extcmd.c, lanserv/extcmd.h: Add an external command
processing facility.
* lanserv/lanserv_ipmi.c, lanserv/OpenIPMI/lanserv.h: Use the
external command processing facility to handle reading and writing
the external LAN configuration parameters.
* lanserv/ipmi_sim_lancontrol: Add an example script for LAN
configuration.
2012-09-14 Corey Minyard <cminyard@mvista.com>
* lanserv/lanserv_ipmi.c, lanserv/OpenIPMI/serv.h: Rework the
session registration code to be able to add a separate MC for
different payloads.
* lanserv/sol.c, lanserv/emu.c, lanserv/OpenIPMI/mcserv.h:
Add the ability to fetch the SOL history buffer as FRU
data.
2012-09-13 Corey Minyard <cminyard@mvista.com>
* lanserv/sol.c: Finish up the SOL implementation by adding
a timer and modem control signal handling.
* lanserv/sol.c, lanserv/config.c, lanserv/OpenIPMI/mcserv.h: Add
a history buffer that tracks the last N bytes of serial port
output, where N is specific in the config file.
2012-09-11 Corey Minyard <cminyard@mvista.com>
* include/OpenIPMI/os_handler.h: Add functions to handle write
and except status on an FD.
* unix/posix_os_hnd.c: Add the above functions for this handler.
2012-09-08 Corey Minyard <cminyard@mvista.com>
* lanserv/*: Start adding SOL functionality, implement commands,
start working on payload handling and getting all the various
pieces tied in to the frameworks.
2012-09-07 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/mcserv.h, lanserv/sol.c: Implemented UUCP
locking on SOL ports and basic SOL device setup.
2012-09-05 Corey Minyard <cminyard@mvista.com>
* lanserv/lanserv_ipmi.c, lanserv/OpenIPMI/lanserv.h: Remove a
bunch of LAN config options we are not supporting.
* lanserv/lanserv_ipmi.c: Implement Get Channel Cipher Suites
and implement a few other authentication mechanisms that needed
to be done.
* lanserv/config.c, lanserv/persist.c, lanserv/persist.h: Allow
printf-type names for alloc and read persist operations.
* lanserv/lanserv_ipmi.c, lanserv/OpenIPMI/lanserv.h: Add persistence
for some LAN data.
* lanserv/sol.c, lanserv/emu.c, lanserv/lanserv_ipmi.c: Start
adding the SOL protocol.
2012-09-04 Corey Minyard <cminyard@mvista.com>
* lanserv/persist.c, lanserv/persist.h, lanserv/Makefile.am: Add a
persistence tool to use for storing data on the disk.
* lanserv/config.h, lanserv/emu.c, lanserv/ipmi_sim.c: Save and
restore users information using the persistence tool.
* lanserv/OpenIPMI/serv.h, lanserv/ipmi_sim.c, lanserv/lanserv.c:
Remove the write_config function, replacing it with the persistence
tool.
2012-08-09 Corey Minyard <cminyard@mvista.com>
* lanserv/*: Move the receive queue into the MC where it belongs.
* swig/python/openipmigui/_mc_chan.py: Fix channel scanning code
so it scans channel 15, too.
* lanserv/*: Move the channel structures into the MC and allow
per-MC channel settings.
* lanserv/*: Move the startcmd into the MC to allow more than
one VM to hook to simulated IPMI environment on different MCs.
* lib/chassis.c, lib/mc.c, include/OpenIPMI/internal/ipmi_mc.h:
Create power and reset controls for non-BMC MCs with the chassis
bit set, use the IPMB address for the instance in that case.
* lanserv/*: Move the user and PEF structures into the MC.
2012-08-08 Corey Minyard <cminyard@mvista.com>
* lanserv/*: Rename "bmc_data_t" to "sys_data_t" because it's mostly
info about the whole emulator, not BMC-specific. Also, move the
lmc_data_t structure and functions to a separate include file.
This is getting ready to move some things that are in bmc_data_t
to the specific MCs, as some of the things are mc-specific, like
channels.
2012-08-03 Jim Mankovich
* unix/posix_os_hnd.c: The unix/posix_os_hnd.c stop_timer function
will stop the timer correctly, but it can never be restarted again
because the os_hnd_timer_id_t running status is not reset to zero
(0 == !running). I ran into this problem when trying to change
the ipmb rescan timer value via ipmi_domain_set_ipmb_rescan_time).
If you ever call this function, the ipmb rescan timer will be
stopped and you can never restart it again. This function should
really check the result of start_timer and report an error if it
can't restart the timer.
2012-07-21 Corey Minyard <cminyard@mvista.com>
* lanserv/lan.conf: Fix the startcmd example to match changes
made in the qemu code.
* lib/pet.c: Someone running static analysis (they didn't give
their name, just a sourceforge login) reported that the sizeof
operator for an array parameter always returns the size of a
pointer. This was used when copying a MAC address, and was thus
incorrect. Change the memcpy to use "6".
* lib/ipmi_smi.c: Someone noticed that the return values from
opening an IPMI device could be inconsistent because it tries a
bunch of possibilities and returns the last error. So ignore
ENOENT as it is meaningless unless everything return ENOENT.
2012-07-21 Bob Cagle <rcagle@ccpu.com>
* lib/normal_fru.c: The length can exceed a char size in a board
info area, but a char was used to hold the length. Change it to
an int.
2012-07-21 Stephane Blain <stblain@sf.net>
* lib/sensor.c: If there are not valid sensors in the SDR, don't
return an error from scanning the SDRs. There's just no sensors.
* lib/oem_atca.c: Fix an issue with invalid severe errors coming
out due to the floating IPMB address being picked up.
* lib/sdr.c: In oem_atca.c (atca_event_handler),
ipmi_start_ipmb_mc_scan is called each time an 0xf0 event is
received. because of the race condition, the MC callback is called
with wrong information (sdr_fetch_info_t->changed is not set
correctly).
2012-07-01 Corey Minyard <cminyard@mvista.com>
* cmdlan/Makefile.am, glib/Makefile.am, lib/Makefile.am:
Fix some build issues with libraries.
* tcl/Makefile.am, unix/Makefile.am: ditto
* configure.in: Move to version 2.0.20-rc1.
2012-06-28 Corey Minyard <cminyard@mvista.com>
* swig/python/sample.py, swig/python/sample2.py: Fix some issues
with proper shutdown and cleanup.
* sample/ipmicmd.c: Don't free the response, let the system do it
in the normal case.
* lib/ipmi_lan.c: Fix issues with locking and reporting connection
failure status.
* sample/ipmi_serial_bmc_emu.c: Convert to work with IPv6.
* lanserv, man: Did a massive restructure of lanserv and the
IPMI simulator for supporting a VM interface.
* swig/python/openipmigui/_sensor.py: Fix a reference error
causing a failure in some cases when setting event thresholds.
* swig/python/openipmigui/gui_setdialog.py: BooleanVar will return
an integer in some cases, account for that.
2012-05-24 Corey Minyard <cminyard@mvista.com>
* lanserv/OpenIPMI/ipmi_sim_info.h, lanserv/OpenIPMI/lanserv.h:
Moved some generic information into ipmi_sim_info.h for use by
the emulator and lanserv.
* lanserv/emu.c, lanserv/emu.h, lanserv/emu_cmd.h: Rework the
emulator to move some generic information into ipmi_sim_info.h
structures.
* lanserv/ipmi_sim.c, lanserv/lanserv.c, lanserv/lanserv_config.c: