rubyipmi 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. checksums.yaml +15 -0
  2. data/Gemfile +5 -3
  3. data/README.md +24 -14
  4. data/Rakefile +82 -4
  5. data/VERSION +1 -1
  6. data/lib/rubyipmi.rb +36 -14
  7. data/lib/rubyipmi/commands/basecommand.rb +57 -119
  8. data/lib/rubyipmi/freeipmi/commands/basecommand.rb +29 -25
  9. data/lib/rubyipmi/freeipmi/commands/bmc.rb +3 -3
  10. data/lib/rubyipmi/freeipmi/commands/bmcconfig.rb +6 -6
  11. data/lib/rubyipmi/freeipmi/commands/bmcinfo.rb +3 -23
  12. data/lib/rubyipmi/freeipmi/commands/fru.rb +117 -23
  13. data/lib/rubyipmi/freeipmi/commands/lan.rb +32 -37
  14. data/lib/rubyipmi/freeipmi/commands/power.rb +1 -1
  15. data/lib/rubyipmi/freeipmi/commands/sensors.rb +53 -50
  16. data/lib/rubyipmi/freeipmi/connection.rb +16 -2
  17. data/lib/rubyipmi/freeipmi/errorcodes.rb +25 -2
  18. data/lib/rubyipmi/ipmitool/commands/basecommand.rb +20 -37
  19. data/lib/rubyipmi/ipmitool/commands/bmc.rb +1 -24
  20. data/lib/rubyipmi/ipmitool/commands/chassis.rb +1 -0
  21. data/lib/rubyipmi/ipmitool/commands/fru.rb +112 -30
  22. data/lib/rubyipmi/ipmitool/commands/lan.rb +55 -77
  23. data/lib/rubyipmi/ipmitool/commands/power.rb +10 -4
  24. data/lib/rubyipmi/ipmitool/commands/sensors.rb +53 -80
  25. data/lib/rubyipmi/ipmitool/connection.rb +19 -3
  26. data/lib/rubyipmi/ipmitool/errorcodes.rb +51 -3
  27. data/rubyipmi.gemspec +73 -33
  28. data/spec/Vagrantfile +45 -0
  29. data/spec/fixtures/freeipmi/bmc_config.txt +317 -0
  30. data/spec/fixtures/freeipmi/bmc_config_lan_conf.txt +19 -0
  31. data/spec/fixtures/freeipmi/bmc_info.txt +32 -0
  32. data/spec/fixtures/freeipmi/errors.txt +3 -0
  33. data/spec/fixtures/freeipmi/fru.txt +13 -0
  34. data/spec/fixtures/freeipmi/sensors.txt +29 -0
  35. data/spec/fixtures/ipmitool/bmc_info.txt +20 -0
  36. data/spec/fixtures/ipmitool/errors.txt +10 -0
  37. data/spec/fixtures/ipmitool/fru.txt +96 -0
  38. data/spec/fixtures/ipmitool/lan.txt +17 -0
  39. data/spec/fixtures/ipmitool/sensors.txt +105 -0
  40. data/spec/integration/bmc_spec.rb +49 -0
  41. data/spec/{chassis_config_spec.rb → integration/chassis_config_spec.rb} +6 -6
  42. data/spec/integration/chassis_spec.rb +26 -0
  43. data/spec/integration/connection_spec.rb +35 -0
  44. data/spec/{fru_spec.rb → integration/fru_spec.rb} +11 -10
  45. data/spec/{lan_spec.rb → integration/lan_spec.rb} +9 -7
  46. data/spec/integration/power_spec.rb +40 -0
  47. data/spec/{rubyipmi_spec.rb → integration/rubyipmi_spec.rb} +7 -10
  48. data/spec/{sensor_spec.rb → integration/sensor_spec.rb} +5 -20
  49. data/spec/manifests/default.pp +50 -0
  50. data/spec/puppetmodules/archive/LICENSE-2.0.txt +202 -0
  51. data/spec/puppetmodules/archive/Modulefile +8 -0
  52. data/spec/puppetmodules/archive/README.md +40 -0
  53. data/spec/puppetmodules/archive/manifests/download.pp +157 -0
  54. data/spec/puppetmodules/archive/manifests/extract.pp +81 -0
  55. data/spec/puppetmodules/archive/manifests/init.pp +70 -0
  56. data/spec/puppetmodules/archive/manifests/tar-gz.pp +7 -0
  57. data/spec/puppetmodules/archive/manifests/zip.pp +7 -0
  58. data/spec/puppetmodules/archive/metadata.json +26 -0
  59. data/spec/spec_helper.rb +35 -3
  60. data/spec/unit/freeipmi/bmc-info_spec.rb +42 -0
  61. data/spec/unit/freeipmi/bmc_spec.rb +44 -0
  62. data/spec/unit/freeipmi/connection_spec.rb +56 -0
  63. data/spec/unit/freeipmi/errorcodes_spec.rb +34 -0
  64. data/spec/unit/freeipmi/fru_spec.rb +77 -0
  65. data/spec/unit/freeipmi/lan_spec.rb +0 -0
  66. data/spec/unit/freeipmi/sensors_spec.rb +83 -0
  67. data/spec/unit/ipmitool/bmc_spec.rb +78 -0
  68. data/spec/unit/ipmitool/connection_spec.rb +58 -0
  69. data/spec/unit/ipmitool/errorcodes_spec.rb +34 -0
  70. data/spec/unit/ipmitool/fru_spec.rb +77 -0
  71. data/spec/unit/ipmitool/lan_spec.rb +93 -0
  72. data/spec/unit/ipmitool/sensors_spec.rb +95 -0
  73. data/spec/unit/rubyipmi_spec.rb +31 -0
  74. data/spec/vagrant +27 -0
  75. data/spec/vagrant.pub +1 -0
  76. metadata +157 -106
  77. data/.document +0 -5
  78. data/.rspec +0 -1
  79. data/Gemfile.lock +0 -33
  80. data/spec/bmc_spec.rb +0 -46
  81. data/spec/chassis_spec.rb +0 -26
  82. data/spec/connection_spec.rb +0 -31
  83. data/spec/power_spec.rb +0 -42
@@ -2,17 +2,65 @@ module Rubyipmi
2
2
  module Ipmitool
3
3
  class ErrorCodes
4
4
 
5
- @@code = {
6
- "Authentication type NONE not supported" => {"I" => "lanplus"},
5
+ @@codes = {
6
+ "Authentication type NONE not supported\nAuthentication type NONE not supported\n" +
7
+ "Error: Unable to establish LAN session\nGet Device ID command failed\n" => {"I" => "lanplus"},
8
+ "Authentication type NONE not supported" => {"I" => "lanplus"}
9
+
7
10
 
8
11
  }
12
+ def self.length
13
+ @@codes.length
14
+ end
9
15
 
10
16
  def self.code
11
- @@code
17
+ @@codes
18
+ end
19
+
20
+ def self.search(code)
21
+ fix = @@codes.fetch(code,nil)
22
+ if fix.nil?
23
+ @@codes.each do | error, result |
24
+ # the error should be a subset of the actual erorr
25
+ if code =~ /.*#{error}.*/i
26
+ return result
27
+ end
28
+ end
29
+ else
30
+ return fix
31
+ end
32
+ raise "No Fix found" if fix.nil?
33
+ end
34
+
35
+
36
+ def throwError
37
+ # Find out what kind of error is happening, parse results
38
+ # Check for authentication or connection issue
39
+
40
+ if @result =~ /timeout|timed\ out/
41
+ code = "ipmi call: #{@lastcall} timed out"
42
+ raise code
43
+ else
44
+ code = @result.split(":").last.chomp.strip if not @result.empty?
45
+ end
46
+ case code
47
+ when "invalid hostname"
48
+ raise code
49
+ when "password invalid"
50
+ raise code
51
+ when "username invalid"
52
+ raise code
53
+ else
54
+ raise :ipmierror, code
55
+ end
12
56
  end
57
+
58
+
13
59
  end
14
60
 
15
61
 
62
+
63
+
16
64
  end
17
65
  end
18
66
 
data/rubyipmi.gemspec CHANGED
@@ -4,24 +4,21 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{rubyipmi}
8
- s.version = "0.6.0"
7
+ s.name = "rubyipmi"
8
+ s.version = "0.7.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Corey Osman"]
12
- s.date = %q{2013-07-03}
13
- s.description = %q{A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi}
14
- s.email = %q{corey@logicminds.biz}
12
+ s.date = "2013-10-17"
13
+ s.description = "Provides a library for controlling IPMI devices using pure ruby code"
14
+ s.email = "corey@logicminds.biz"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE.txt",
17
17
  "README.md",
18
18
  "README.rdoc"
19
19
  ]
20
20
  s.files = [
21
- ".document",
22
- ".rspec",
23
21
  "Gemfile",
24
- "Gemfile.lock",
25
22
  "LICENSE.txt",
26
23
  "README.md",
27
24
  "README.rdoc",
@@ -54,46 +51,89 @@ Gem::Specification.new do |s|
54
51
  "lib/rubyipmi/ipmitool/errorcodes.rb",
55
52
  "lib/rubyipmi/observablehash.rb",
56
53
  "rubyipmi.gemspec",
57
- "spec/bmc_spec.rb",
58
- "spec/chassis_config_spec.rb",
59
- "spec/chassis_spec.rb",
60
- "spec/connection_spec.rb",
61
- "spec/fru_spec.rb",
62
- "spec/lan_spec.rb",
63
- "spec/power_spec.rb",
64
- "spec/rubyipmi_spec.rb",
65
- "spec/sensor_spec.rb",
66
- "spec/spec_helper.rb"
54
+ "spec/Vagrantfile",
55
+ "spec/fixtures/freeipmi/bmc_config.txt",
56
+ "spec/fixtures/freeipmi/bmc_config_lan_conf.txt",
57
+ "spec/fixtures/freeipmi/bmc_info.txt",
58
+ "spec/fixtures/freeipmi/errors.txt",
59
+ "spec/fixtures/freeipmi/fru.txt",
60
+ "spec/fixtures/freeipmi/sensors.txt",
61
+ "spec/fixtures/ipmitool/bmc_info.txt",
62
+ "spec/fixtures/ipmitool/errors.txt",
63
+ "spec/fixtures/ipmitool/fru.txt",
64
+ "spec/fixtures/ipmitool/lan.txt",
65
+ "spec/fixtures/ipmitool/sensors.txt",
66
+ "spec/integration/bmc_spec.rb",
67
+ "spec/integration/chassis_config_spec.rb",
68
+ "spec/integration/chassis_spec.rb",
69
+ "spec/integration/connection_spec.rb",
70
+ "spec/integration/fru_spec.rb",
71
+ "spec/integration/lan_spec.rb",
72
+ "spec/integration/power_spec.rb",
73
+ "spec/integration/rubyipmi_spec.rb",
74
+ "spec/integration/sensor_spec.rb",
75
+ "spec/manifests/default.pp",
76
+ "spec/puppetmodules/archive/LICENSE-2.0.txt",
77
+ "spec/puppetmodules/archive/Modulefile",
78
+ "spec/puppetmodules/archive/README.md",
79
+ "spec/puppetmodules/archive/manifests/download.pp",
80
+ "spec/puppetmodules/archive/manifests/extract.pp",
81
+ "spec/puppetmodules/archive/manifests/init.pp",
82
+ "spec/puppetmodules/archive/manifests/tar-gz.pp",
83
+ "spec/puppetmodules/archive/manifests/zip.pp",
84
+ "spec/puppetmodules/archive/metadata.json",
85
+ "spec/spec_helper.rb",
86
+ "spec/unit/freeipmi/bmc-info_spec.rb",
87
+ "spec/unit/freeipmi/bmc_spec.rb",
88
+ "spec/unit/freeipmi/connection_spec.rb",
89
+ "spec/unit/freeipmi/errorcodes_spec.rb",
90
+ "spec/unit/freeipmi/fru_spec.rb",
91
+ "spec/unit/freeipmi/lan_spec.rb",
92
+ "spec/unit/freeipmi/sensors_spec.rb",
93
+ "spec/unit/ipmitool/bmc_spec.rb",
94
+ "spec/unit/ipmitool/connection_spec.rb",
95
+ "spec/unit/ipmitool/errorcodes_spec.rb",
96
+ "spec/unit/ipmitool/fru_spec.rb",
97
+ "spec/unit/ipmitool/lan_spec.rb",
98
+ "spec/unit/ipmitool/sensors_spec.rb",
99
+ "spec/unit/rubyipmi_spec.rb",
100
+ "spec/vagrant",
101
+ "spec/vagrant.pub"
67
102
  ]
68
- s.homepage = %q{http://github.com/logicminds/rubyipmi}
103
+ s.homepage = "http://github.com/logicminds/rubyipmi"
69
104
  s.licenses = ["GPLv3"]
70
105
  s.require_paths = ["lib"]
71
- s.rubygems_version = %q{1.3.6}
72
- s.summary = %q{A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi}
106
+ s.rubygems_version = "2.0.7"
107
+ s.summary = "A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi"
73
108
 
74
109
  if s.respond_to? :specification_version then
75
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
76
- s.specification_version = 3
110
+ s.specification_version = 4
77
111
 
78
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
79
- s.add_development_dependency(%q<rspec>, ["~> 2.8.0"])
112
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
113
+ s.add_development_dependency(%q<rspec>, ["<= 2.8.0"])
80
114
  s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
81
- s.add_development_dependency(%q<bundler>, ["~> 1.1.5"])
115
+ s.add_development_dependency(%q<bundler>, [">= 1.1.5"])
82
116
  s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
83
- s.add_development_dependency(%q<rcov>, [">= 0"])
117
+ s.add_development_dependency(%q<rcov>, ["< 1.0.0"])
118
+ s.add_development_dependency(%q<highline>, [">= 0"])
119
+ s.add_development_dependency(%q<rake>, [">= 0"])
84
120
  else
85
- s.add_dependency(%q<rspec>, ["~> 2.8.0"])
121
+ s.add_dependency(%q<rspec>, ["<= 2.8.0"])
86
122
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
87
- s.add_dependency(%q<bundler>, ["~> 1.1.5"])
123
+ s.add_dependency(%q<bundler>, [">= 1.1.5"])
88
124
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
89
- s.add_dependency(%q<rcov>, [">= 0"])
125
+ s.add_dependency(%q<rcov>, ["< 1.0.0"])
126
+ s.add_dependency(%q<highline>, [">= 0"])
127
+ s.add_dependency(%q<rake>, [">= 0"])
90
128
  end
91
129
  else
92
- s.add_dependency(%q<rspec>, ["~> 2.8.0"])
130
+ s.add_dependency(%q<rspec>, ["<= 2.8.0"])
93
131
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
94
- s.add_dependency(%q<bundler>, ["~> 1.1.5"])
132
+ s.add_dependency(%q<bundler>, [">= 1.1.5"])
95
133
  s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
96
- s.add_dependency(%q<rcov>, [">= 0"])
134
+ s.add_dependency(%q<rcov>, ["< 1.0.0"])
135
+ s.add_dependency(%q<highline>, [">= 0"])
136
+ s.add_dependency(%q<rake>, [">= 0"])
97
137
  end
98
138
  end
99
139
 
data/spec/Vagrantfile ADDED
@@ -0,0 +1,45 @@
1
+ # -*- mode: ruby -*-
2
+ # vi: set ft=ruby :
3
+
4
+ # Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
5
+ VAGRANTFILE_API_VERSION = "2"
6
+
7
+ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
8
+
9
+ config.vm.box = "centos6.4"
10
+ config.vm.box_url = "http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.4-x86_64-v20130427.box"
11
+ config.ssh.private_key_path = "vagrant"
12
+ config.vm.provider :virtualbox do |vb, override|
13
+ #vb.gui = true
14
+ end
15
+ config.vm.provider :vmware_fusion do |vf, override|
16
+ override.vm.box_url = "https://dl.dropbox.com/u/5721940/vagrant-boxes/vagrant-centos-6.4-x86_64-vmware_fusion.box"
17
+ #vf.gui = true
18
+ end
19
+
20
+ # Boot with a GUI so you can see the screen. (Default is headless)
21
+ #config.vm.boot_mode = :gui
22
+
23
+ # Enable provisioning with Puppet stand alone. Puppet manifests
24
+ # are contained in a directory path relative to this Vagrantfile.
25
+ # You will need to create the manifests directory and a manifest in
26
+ # the file centos.pp in the manifests_path directory.
27
+ #
28
+ config.vm.synced_folder "../", "/rubyipmi"
29
+ (1..1).each do |i|
30
+ vmname = "testnode#{i}"
31
+ config.vm.define vmname.to_sym do |web_conf|
32
+ web_conf.vm.hostname = vmname
33
+ web_conf.vm.provision :shell,
34
+ :inline => "hostname #{vmname}.company.corp"
35
+ web_conf.vm.provision :puppet do |puppet|
36
+ puppet.module_path = "puppetmodules"
37
+ puppet.manifests_path = "manifests"
38
+ puppet.manifest_file = "default.pp"
39
+ puppet.facter = { }
40
+ end
41
+ end
42
+ end
43
+ end
44
+
45
+
@@ -0,0 +1,317 @@
1
+ #
2
+ # Section UserX Comments
3
+ #
4
+ # In the following User sections, users should configure usernames, passwords,
5
+ # and access rights for IPMI over LAN communication. Usernames can be set to any
6
+ # string with the exception of User1, which is a fixed to the "anonymous"
7
+ # username in IPMI.
8
+ #
9
+ # For IPMI over LAN access for a username, set "Enable_User" to "Yes",
10
+ # "Lan_Enable_IPMI_Msgs" to "Yes", and "Lan_Privilege_Limit" to a privilege
11
+ # level. The privilege level is used to limit various IPMI operations for
12
+ # individual usernames. It is recommened that atleast one username be created
13
+ # with a privilege limit "Administrator", so all system functions are available
14
+ # to atleast one username via IPMI over LAN. For security reasons, we recommend
15
+ # not enabling the "anonymous" User1. For most users, "Lan_Session_Limit" can be
16
+ # set to 0 (or ignored) to support an unlimited number of simultaneous IPMI over
17
+ # LAN sessions.
18
+ #
19
+ # If your system supports IPMI 2.0 and Serial-over-LAN (SOL),
20
+ # a"SOL_Payload_Access" field may be listed below. Set the "SOL_Payload_Access"
21
+ # field to "Yes" or "No" to enable or disable this username's ability to access
22
+ # SOL.
23
+ #
24
+ # Please do not forget to uncomment those fields, such as "Password", that may
25
+ # be commented out during the checkout.
26
+ #
27
+ # Some motherboards may require a "Username" to be configured prior to other
28
+ # fields being read/written. If this is the case, those fields will be set to
29
+ # <username-not-set-yet>.
30
+ #
31
+ Section User1
32
+ ## Give Username
33
+ ## Username NULL
34
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
35
+ ## Password
36
+ ## Possible values: Yes/No or blank to not set
37
+ Enable_User Yes
38
+ ## Possible values: Yes/No
39
+ Lan_Enable_IPMI_Msgs Yes
40
+ ## Possible values: Yes/No
41
+ Lan_Enable_Link_Auth No
42
+ ## Possible values: Yes/No
43
+ Lan_Enable_Restricted_to_Callback No
44
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
45
+ Lan_Privilege_Limit Administrator
46
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
47
+ ## Lan_Session_Limit
48
+ EndSection
49
+ Section User2
50
+ ## Give Username
51
+ Username admin
52
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
53
+ ## Password
54
+ ## Possible values: Yes/No or blank to not set
55
+ Enable_User Yes
56
+ ## Possible values: Yes/No
57
+ Lan_Enable_IPMI_Msgs Yes
58
+ ## Possible values: Yes/No
59
+ Lan_Enable_Link_Auth No
60
+ ## Possible values: Yes/No
61
+ Lan_Enable_Restricted_to_Callback No
62
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
63
+ Lan_Privilege_Limit Administrator
64
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
65
+ ## Lan_Session_Limit
66
+ EndSection
67
+ Section User3
68
+ ## Give Username
69
+ Username admin3
70
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
71
+ ## Password
72
+ ## Possible values: Yes/No or blank to not set
73
+ Enable_User No
74
+ ## Possible values: Yes/No
75
+ Lan_Enable_IPMI_Msgs No
76
+ ## Possible values: Yes/No
77
+ Lan_Enable_Link_Auth No
78
+ ## Possible values: Yes/No
79
+ Lan_Enable_Restricted_to_Callback No
80
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
81
+ Lan_Privilege_Limit No_Access
82
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
83
+ ## Lan_Session_Limit
84
+ EndSection
85
+ Section User4
86
+ ## Give Username
87
+ Username (Empty User)
88
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
89
+ ## Password
90
+ ## Possible values: Yes/No or blank to not set
91
+ Enable_User No
92
+ ## Possible values: Yes/No
93
+ Lan_Enable_IPMI_Msgs No
94
+ ## Possible values: Yes/No
95
+ Lan_Enable_Link_Auth No
96
+ ## Possible values: Yes/No
97
+ Lan_Enable_Restricted_to_Callback No
98
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
99
+ Lan_Privilege_Limit No_Access
100
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
101
+ ## Lan_Session_Limit
102
+ EndSection
103
+ Section User5
104
+ ## Give Username
105
+ Username (Empty User)
106
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
107
+ ## Password
108
+ ## Possible values: Yes/No or blank to not set
109
+ Enable_User No
110
+ ## Possible values: Yes/No
111
+ Lan_Enable_IPMI_Msgs No
112
+ ## Possible values: Yes/No
113
+ Lan_Enable_Link_Auth No
114
+ ## Possible values: Yes/No
115
+ Lan_Enable_Restricted_to_Callback No
116
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
117
+ Lan_Privilege_Limit No_Access
118
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
119
+ ## Lan_Session_Limit
120
+ EndSection
121
+ Section User6
122
+ ## Give Username
123
+ Username (Empty User)
124
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
125
+ ## Password
126
+ ## Possible values: Yes/No or blank to not set
127
+ Enable_User No
128
+ ## Possible values: Yes/No
129
+ Lan_Enable_IPMI_Msgs No
130
+ ## Possible values: Yes/No
131
+ Lan_Enable_Link_Auth No
132
+ ## Possible values: Yes/No
133
+ Lan_Enable_Restricted_to_Callback No
134
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
135
+ Lan_Privilege_Limit No_Access
136
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
137
+ ## Lan_Session_Limit
138
+ EndSection
139
+ Section User7
140
+ ## Give Username
141
+ Username (Empty User)
142
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
143
+ ## Password
144
+ ## Possible values: Yes/No or blank to not set
145
+ Enable_User No
146
+ ## Possible values: Yes/No
147
+ Lan_Enable_IPMI_Msgs No
148
+ ## Possible values: Yes/No
149
+ Lan_Enable_Link_Auth No
150
+ ## Possible values: Yes/No
151
+ Lan_Enable_Restricted_to_Callback No
152
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
153
+ Lan_Privilege_Limit No_Access
154
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
155
+ ## Lan_Session_Limit
156
+ EndSection
157
+ Section User8
158
+ ## Give Username
159
+ Username (Empty User)
160
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
161
+ ## Password
162
+ ## Possible values: Yes/No or blank to not set
163
+ Enable_User No
164
+ ## Possible values: Yes/No
165
+ Lan_Enable_IPMI_Msgs No
166
+ ## Possible values: Yes/No
167
+ Lan_Enable_Link_Auth No
168
+ ## Possible values: Yes/No
169
+ Lan_Enable_Restricted_to_Callback No
170
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
171
+ Lan_Privilege_Limit No_Access
172
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
173
+ ## Lan_Session_Limit
174
+ EndSection
175
+ Section User9
176
+ ## Give Username
177
+ Username (Empty User)
178
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
179
+ ## Password
180
+ ## Possible values: Yes/No or blank to not set
181
+ Enable_User No
182
+ ## Possible values: Yes/No
183
+ Lan_Enable_IPMI_Msgs No
184
+ ## Possible values: Yes/No
185
+ Lan_Enable_Link_Auth No
186
+ ## Possible values: Yes/No
187
+ Lan_Enable_Restricted_to_Callback No
188
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
189
+ Lan_Privilege_Limit No_Access
190
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
191
+ ## Lan_Session_Limit
192
+ EndSection
193
+ Section User10
194
+ ## Give Username
195
+ Username (Empty User)
196
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
197
+ ## Password
198
+ ## Possible values: Yes/No or blank to not set
199
+ Enable_User No
200
+ ## Possible values: Yes/No
201
+ Lan_Enable_IPMI_Msgs No
202
+ ## Possible values: Yes/No
203
+ Lan_Enable_Link_Auth No
204
+ ## Possible values: Yes/No
205
+ Lan_Enable_Restricted_to_Callback No
206
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
207
+ Lan_Privilege_Limit No_Access
208
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
209
+ ## Lan_Session_Limit
210
+ EndSection
211
+ Section User11
212
+ ## Give Username
213
+ Username (Empty User)
214
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
215
+ ## Password
216
+ ## Possible values: Yes/No or blank to not set
217
+ Enable_User No
218
+ ## Possible values: Yes/No
219
+ Lan_Enable_IPMI_Msgs No
220
+ ## Possible values: Yes/No
221
+ Lan_Enable_Link_Auth No
222
+ ## Possible values: Yes/No
223
+ Lan_Enable_Restricted_to_Callback No
224
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
225
+ Lan_Privilege_Limit No_Access
226
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
227
+ ## Lan_Session_Limit
228
+ EndSection
229
+ Section User12
230
+ ## Give Username
231
+ Username (Empty User)
232
+ ## Give password or blank to clear. MAX 16 chars (20 chars if IPMI 2.0 supported).
233
+ ## Password
234
+ ## Possible values: Yes/No or blank to not set
235
+ Enable_User No
236
+ ## Possible values: Yes/No
237
+ Lan_Enable_IPMI_Msgs No
238
+ ## Possible values: Yes/No
239
+ Lan_Enable_Link_Auth No
240
+ ## Possible values: Yes/No
241
+ Lan_Enable_Restricted_to_Callback No
242
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary/No_Access
243
+ Lan_Privilege_Limit No_Access
244
+ ## Possible values: 0-17, 0 is unlimited; May be reset to 0 if not specified
245
+ ## Lan_Session_Limit
246
+ EndSection
247
+ #
248
+ # Section Lan_Channel Comments
249
+ #
250
+ # In the Lan_Channel section, general IPMI over LAN can be enabled for disabled.
251
+ # In the below, "Volatile" configurations are immediately configured onto the
252
+ # BMC and will have immediate effect on the system. "Non_Volatile"
253
+ # configurations are only available after the next system reset. Generally, both
254
+ # the "Volatile" and "Non_Volatile" equivalent fields should be configured
255
+ # identically.
256
+ #
257
+ # To enable IPMI over LAN, typically "Access_Mode" should be set to
258
+ # "Always_Available". "Channel_Privilege_Limit" should be set to the highest
259
+ # privilege level any username was configured with. Typically, this is set to
260
+ # "Administrator".
261
+ #
262
+ # "User_Level_Auth" and "Per_Message_Auth" are typically set to "Yes" for
263
+ # additional security.
264
+ #
265
+ Section Lan_Channel
266
+ ## Possible values: Disabled/Pre_Boot_Only/Always_Available/Shared
267
+ Volatile_Access_Mode Always_Available
268
+ ## Possible values: Yes/No
269
+ Volatile_Enable_User_Level_Auth Yes
270
+ ## Possible values: Yes/No
271
+ Volatile_Enable_Per_Message_Auth No
272
+ ## Possible values: Yes/No
273
+ Volatile_Enable_Pef_Alerting No
274
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary
275
+ Volatile_Channel_Privilege_Limit Administrator
276
+ ## Possible values: Disabled/Pre_Boot_Only/Always_Available/Shared
277
+ Non_Volatile_Access_Mode Always_Available
278
+ ## Possible values: Yes/No
279
+ Non_Volatile_Enable_User_Level_Auth Yes
280
+ ## Possible values: Yes/No
281
+ Non_Volatile_Enable_Per_Message_Auth No
282
+ ## Possible values: Yes/No
283
+ Non_Volatile_Enable_Pef_Alerting No
284
+ ## Possible values: Callback/User/Operator/Administrator/OEM_Proprietary
285
+ Non_Volatile_Channel_Privilege_Limit Administrator
286
+ EndSection
287
+ #
288
+ # Section Lan_Conf Comments
289
+ #
290
+ # In the Lan_Conf section, typical networking configuration is setup. Most users
291
+ # will choose to set "Static" for the "IP_Address_Source" and set the
292
+ # appropriate "IP_Address", "MAC_Address", "Subnet_Mask", etc. for the machine.
293
+ #
294
+ Section Lan_Conf
295
+ ## Possible values: Unspecified/Static/Use_DHCP/Use_BIOS/Use_Others
296
+ IP_Address_Source Use_DHCP
297
+ ## Give valid IP address
298
+ IP_Address 192.168.1.24
299
+ ## Give valid MAC address
300
+ MAC_Address 00:17:A4:49:AB:70
301
+ ## Give valid Subnet Mask
302
+ Subnet_Mask 255.255.255.0
303
+ ## Give valid IP address
304
+ Default_Gateway_IP_Address 192.168.1.1
305
+ EndSection
306
+ #
307
+ # Section Lan_Conf_Auth Comments
308
+ #
309
+ # In the Lan_Conf_Auth section, allowable authentication mechanisms for IPMI 1.5
310
+ # is configured. Most users will want to set all "MD5" authentication to "Yes"
311
+ # and the rest to "No". If you have configured a NULL username and a NULL
312
+ # password, you will also want to configure some of the "None" fields to "Yes"
313
+ # to allow "None" authentication to work. Some motherboards do not allow you to
314
+ # enable OEM authentication, so you may wish to set all OEM related fields to
315
+ # "No".
316
+ #
317
+ Section Lan_Conf_Auth