reapply 1.39 once again, it seems i've fixed two bugs in it and it works ok on sparc and i386 now.
reapply 1.39 once again, it seems i've fixed two bugs in it and it
works ok on sparc and i386 now.

orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars