Bug #27557
closedRebuilding hosts with 64-bit MACs fails because DHCP entries are not deleted
Description
Description:
When attempting to re-build a host with a managed primary interface with a 64-bit MAC (e.g. an InfiniBand NIC configured for IPoIB), the rebuild fails, complaining that the DHCP entry already exists. It appears that the original DHCP entry is not found and thus not deleted. I don't really know ruby or the codebase, but I think the proxy may be failing to parse these entries out of the leases file.
Version-Release number of selected component (if applicable):
Foreman server:
CentOS Linux release 7.6.1810
foreman-1.21.3-1
Foreman proxy server:
CentOS Linux release 7.6.1810
foreman-proxy-1.21.3-1
dhcp-4.2.5-68
How reproducible:
Always
Steps to Reproduce:
1.) Create a host with a 64-bit MAC (e.g. 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff) on the primary interface.
2.) Cancel the initial build
3.) Hit build again
Actual results:
Build fails with complaint:
Failed to enable cameron-test-64bitmac.rcc.fsu.edu for installation: ["Create DHCP Settings for cameron-test-64bitmac.rcc.fsu.edu task failed with the following error: ERF12-6899 [ProxyAPI::ProxyException]: Unable to set DHCP entry ([RestClient::BadRequest]: 400 Bad Request) for proxy https://h22-dns1-36.rcc.fsu.edu:9090/dhcp", "Failed to perform rollback on Remove DHCP Settings for cameron-test-64bitmac.rcc.fsu.edu - ERF12-6899 [ProxyAPI::ProxyException]: Unable to set DHCP entry ([RestClient::BadRequest]: 400 Bad Request) for proxy https://h22-dns1-36.rcc.fsu.edu:9090/dhcp"]
Expected results:
Build continues without error
Additional info:
Logs from the foreman-proxy:
Note in particular where the DHCP record cannot be found.
2019-08-08T11:03:23 [D] accept: ::ffff:144.174.87.2:54546 2019-08-08T11:03:23 [D] Rack::Handler::WEBrick is invoked. 2019-08-08T11:03:23 3db4fc39 [I] Started GET /features 2019-08-08T11:03:23 3db4fc39 [I] Finished GET /features with 200 (0.58 ms) 2019-08-08T11:03:23 [D] close: ::ffff:144.174.87.2:54546 2019-08-08T11:03:25 [D] accept: ::ffff:144.174.87.2:54566 2019-08-08T11:03:25 [D] Rack::Handler::WEBrick is invoked. 2019-08-08T11:03:25 3db4fc39 [I] Started GET /144.174.40.0/mac/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff 2019-08-08T11:03:25 3db4fc39 [D] verifying remote client ::ffff:144.174.87.2 against trusted_hosts ["katello.rcc.fsu.edu", "h22-dns1-36.rcc.fsu.edu"] 2019-08-08T11:03:25 3db4fc39 [E] No DHCP record for MAC 144.174.40.0/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff found 2019-08-08T11:03:25 3db4fc39 [D] No DHCP record for MAC 144.174.40.0/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff found 2019-08-08T11:03:25 3db4fc39 [I] Finished GET /144.174.40.0/mac/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff with 404 (3.75 ms) 2019-08-08T11:03:25 [D] close: ::ffff:144.174.87.2:54566 2019-08-08T11:03:25 [D] accept: ::ffff:144.174.87.2:54568 2019-08-08T11:03:25 [D] Rack::Handler::WEBrick is invoked. 2019-08-08T11:03:25 3db4fc39 [I] Started GET /144.174.40.0/ip/144.174.40.225 2019-08-08T11:03:25 3db4fc39 [D] verifying remote client ::ffff:144.174.87.2 against trusted_hosts ["katello.rcc.fsu.edu", "h22-dns1-36.rcc.fsu.edu"] 2019-08-08T11:03:25 3db4fc39 [E] No DHCP records for IP 144.174.40.0/144.174.40.225 found 2019-08-08T11:03:25 3db4fc39 [D] No DHCP records for IP 144.174.40.0/144.174.40.225 found 2019-08-08T11:03:25 3db4fc39 [I] Finished GET /144.174.40.0/ip/144.174.40.225 with 404 (3.47 ms) 2019-08-08T11:03:25 [D] close: ::ffff:144.174.87.2:54568 2019-08-08T11:03:25 [D] accept: ::ffff:144.174.87.2:54570 2019-08-08T11:03:25 [D] Rack::Handler::WEBrick is invoked. 2019-08-08T11:03:25 3db4fc39 [I] Started GET /144.174.40.0/mac/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff 2019-08-08T11:03:25 3db4fc39 [D] verifying remote client ::ffff:144.174.87.2 against trusted_hosts ["katello.rcc.fsu.edu", "h22-dns1-36.rcc.fsu.edu"] 2019-08-08T11:03:25 3db4fc39 [E] No DHCP record for MAC 144.174.40.0/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff found 2019-08-08T11:03:25 3db4fc39 [D] No DHCP record for MAC 144.174.40.0/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff found 2019-08-08T11:03:25 3db4fc39 [I] Finished GET /144.174.40.0/mac/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff with 404 (3.04 ms) 2019-08-08T11:03:25 [D] close: ::ffff:144.174.87.2:54570 2019-08-08T11:03:25 [D] accept: ::ffff:144.174.87.2:54574 2019-08-08T11:03:25 [D] Rack::Handler::WEBrick is invoked. 2019-08-08T11:03:25 3db4fc39 [I] Started DELETE /144.174.40.0/mac/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff 2019-08-08T11:03:25 3db4fc39 [D] verifying remote client ::ffff:144.174.87.2 against trusted_hosts ["katello.rcc.fsu.edu", "h22-dns1-36.rcc.fsu.edu"] 2019-08-08T11:03:25 3db4fc39 [I] Finished DELETE /144.174.40.0/mac/80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff with 200 (1.63 ms) 2019-08-08T11:03:25 [D] close: ::ffff:144.174.87.2:54574 2019-08-08T11:03:25 [D] accept: ::ffff:144.174.87.2:54576 2019-08-08T11:03:25 [D] Rack::Handler::WEBrick is invoked. 2019-08-08T11:03:25 3db4fc39 [I] Started POST /144.174.40.0 2019-08-08T11:03:25 3db4fc39 [D] verifying remote client ::ffff:144.174.87.2 against trusted_hosts ["katello.rcc.fsu.edu", "h22-dns1-36.rcc.fsu.edu"] 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set name = "cameron-test-64bitmac.rcc.fsu.edu" 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set ip-address = 144.174.40.225 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set hardware-type = 1 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set statements = "filename = \"pxelinux.0\"; next-server = 90:ae:57:02; option host-name = \"cameron-test-64bitmac.rcc.fsu.edu\";" 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - create 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [E] Omshell failed: > > > obj: <null> , > obj: host , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff , hardware-type = 1 , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff , hardware-type = 1 , statements = "filename = "pxelinux.0"; next-server = 90:ae:57:02; option host-name = "cameron-test-64bitmac.rcc.fsu.edu";" , > can't open object: already exists , obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff , hardware-type = 1 , statements = "filename = "pxelinux.0"; next-server = 90:ae:57:02; option host-name = "cameron-test-64bitmac.rcc.fsu.edu";" , > 2019-08-08T11:03:25 3db4fc39 [E] Failed to add DHCP reservation for cameron-test-64bitmac.rcc.fsu.edu (144.174.40.225 / 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff): Entry already exists 2019-08-08T11:03:25 3db4fc39 [D] <Proxy::DHCP::Error> Failed to add DHCP reservation for cameron-test-64bitmac.rcc.fsu.edu (144.174.40.225 / 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff): Entry already exists /usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:97:in `report' /usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:80:in `om_disconnect' /usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:54:in `om_add_record' /usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:30:in `add_record' /usr/share/foreman-proxy/modules/dhcp/dhcp_api.rb:98:in `block in <class:DhcpApi>' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1611:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1611:in `block in compile!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:975:in `[]' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:975:in `block (3 levels) in route!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:994:in `route_eval' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:975:in `block (2 levels) in route!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1015:in `block in process_route' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1013:in `catch' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1013:in `process_route' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:973:in `block in route!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:972:in `each' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:972:in `route!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1085:in `block in dispatch!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `block in invoke' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `catch' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `invoke' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1082:in `dispatch!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:907:in `block in call!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `block in invoke' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `catch' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `invoke' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:907:in `call!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:895:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:in `call' /usr/share/foreman-proxy/lib/proxy/log.rb:86:in `call' /usr/share/foreman-proxy/lib/proxy/request_id_middleware.rb:14:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/xss_header.rb:18:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/path_traversal.rb:16:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/json_csrf.rb:18:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/frame_options.rb:31:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/nulllogger.rb:9:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/head.rb:13:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/show_exceptions.rb:25:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:182:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:2013:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1487:in `block in call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1787:in `synchronize' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1487:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/urlmap.rb:66:in `block in call' /usr/share/gems/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `each' /usr/share/gems/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/builder.rb:153:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/handler/webrick.rb:88:in `service' /usr/share/ruby/webrick/httpserver.rb:138:in `service' /usr/share/ruby/webrick/httpserver.rb:94:in `run' /usr/share/ruby/webrick/server.rb:295:in `block in start_thread' /usr/share/gems/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in `call' /usr/share/gems/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context' 2019-08-08T11:03:25 3db4fc39 [I] Finished POST /144.174.40.0 with 400 (26.67 ms) 2019-08-08T11:03:25 [D] close: ::ffff:144.174.87.2:54576 2019-08-08T11:03:25 [D] accept: ::ffff:144.174.87.2:54578 2019-08-08T11:03:25 [D] Rack::Handler::WEBrick is invoked. 2019-08-08T11:03:25 3db4fc39 [I] Started POST /144.174.40.0 2019-08-08T11:03:25 3db4fc39 [D] verifying remote client ::ffff:144.174.87.2 against trusted_hosts ["katello.rcc.fsu.edu", "h22-dns1-36.rcc.fsu.edu"] 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set name = "cameron-test-64bitmac.rcc.fsu.edu" 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set ip-address = 144.174.40.225 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set hardware-type = 1 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - set statements = "filename = \"pxelinux.0\"; next-server = 90:ae:57:02; option host-name = \"cameron-test-64bitmac.rcc.fsu.edu\";" 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [D] omshell: executed - create 2019-08-08T11:03:25 3db4fc39 [D] <NilClass> nil 2019-08-08T11:03:25 3db4fc39 [E] Omshell failed: > > > obj: <null> , > obj: host , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff , hardware-type = 1 , > obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff , hardware-type = 1 , statements = "filename = "pxelinux.0"; next-server = 90:ae:57:02; option host-name = "cameron-test-64bitmac.rcc.fsu.edu";" , > can't open object: already exists , obj: host , name = "cameron-test-64bitmac.rcc.fsu.edu" , ip-address = 90:ae:28:e1 , hardware-address = 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff , hardware-type = 1 , statements = "filename = "pxelinux.0"; next-server = 90:ae:57:02; option host-name = "cameron-test-64bitmac.rcc.fsu.edu";" , > 2019-08-08T11:03:25 3db4fc39 [E] Failed to add DHCP reservation for cameron-test-64bitmac.rcc.fsu.edu (144.174.40.225 / 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff): Entry already exists 2019-08-08T11:03:25 3db4fc39 [D] <Proxy::DHCP::Error> Failed to add DHCP reservation for cameron-test-64bitmac.rcc.fsu.edu (144.174.40.225 / 80:00:02:08:fe:80:00:00:00:00:00:00:00:02:aa:bb:cc:dd:ee:ff): Entry already exists /usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:97:in `report' /usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:80:in `om_disconnect' /usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:54:in `om_add_record' /usr/share/foreman-proxy/modules/dhcp_common/isc/omapi_provider.rb:30:in `add_record' /usr/share/foreman-proxy/modules/dhcp/dhcp_api.rb:98:in `block in <class:DhcpApi>' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1611:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1611:in `block in compile!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:975:in `[]' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:975:in `block (3 levels) in route!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:994:in `route_eval' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:975:in `block (2 levels) in route!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1015:in `block in process_route' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1013:in `catch' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1013:in `process_route' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:973:in `block in route!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:972:in `each' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:972:in `route!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1085:in `block in dispatch!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `block in invoke' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `catch' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `invoke' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1082:in `dispatch!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:907:in `block in call!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `block in invoke' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `catch' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1067:in `invoke' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:907:in `call!' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:895:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/methodoverride.rb:22:in `call' /usr/share/foreman-proxy/lib/proxy/log.rb:86:in `call' /usr/share/foreman-proxy/lib/proxy/request_id_middleware.rb:14:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/xss_header.rb:18:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/path_traversal.rb:16:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/json_csrf.rb:18:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/base.rb:49:in `call' /usr/share/gems/gems/rack-protection-1.5.3/lib/rack/protection/frame_options.rb:31:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/nulllogger.rb:9:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/head.rb:13:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/show_exceptions.rb:25:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:182:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:2013:in `call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1487:in `block in call' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1787:in `synchronize' /usr/share/gems/gems/sinatra-1.4.8/lib/sinatra/base.rb:1487:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/urlmap.rb:66:in `block in call' /usr/share/gems/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `each' /usr/share/gems/gems/rack-1.6.4/lib/rack/urlmap.rb:50:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/builder.rb:153:in `call' /usr/share/gems/gems/rack-1.6.4/lib/rack/handler/webrick.rb:88:in `service' /usr/share/ruby/webrick/httpserver.rb:138:in `service' /usr/share/ruby/webrick/httpserver.rb:94:in `run' /usr/share/ruby/webrick/server.rb:295:in `block in start_thread' /usr/share/gems/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in `call' /usr/share/gems/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context' 2019-08-08T11:03:25 3db4fc39 [I] Finished POST /144.174.40.0 with 400 (25.42 ms) 2019-08-08T11:03:25 [D] close: ::ffff:144.174.87.2:54578
Updated by Lukas Zapletal over 5 years ago
Hello, what you report is not EUI-64 MAC but 40bytes infiniband MAC. Anyway, we don't support/test any of these, however ISC DHCP does appear to support that. Our conf parser however assumes only EUI-48 MAC addresses, I will fix that, apply that patch and let me know if that helps.
Updated by The Foreman Bot over 5 years ago
- Status changed from New to Ready For Testing
- Assignee set to Lukas Zapletal
- Pull request https://github.com/theforeman/smart-proxy/pull/671 added
Updated by Cameron Berkley over 5 years ago
Lukas Zapletal wrote:
Hello, what you report is not EUI-64 MAC but 40bytes infiniband MAC. Anyway, we don't support/test any of these, however ISC DHCP does appear to support that. Our conf parser however assumes only EUI-48 MAC addresses, I will fix that, apply that patch and let me know if that helps.
Thank you Lukas. I guess I can't count! Anyway, I have applied your patch and DHCP records with InfiniBand MACs are now picked up and I can re-build those hosts as expected now. Thank you again; I appreciate your work and also how quickly you addressed this bug.
Updated by Anonymous over 5 years ago
- Status changed from Ready For Testing to Closed
Applied in changeset d059b623217d94b89728b52fbbb0a3ef52b3c8ce.