I think its a particular corner case that you're fixing (a likely one though, so don't get me wrong). 

My suggestion would be (meta code)

```
  if bmc_check_value fails (e.g. there is a mismatch, for whatever reason, including no binary)
     run bmc_set_command, ignore all errors
     if bmc_check_value fails
         LOG('we can't set it... ')
         #make sure we never execute code again
     end
  end

this also covers the case where ipmitool exists, but "ipmitool delloem" fails.