There is a minor bug in open_bvdev() in libsaio/sys.c.
It receives a device name bvr (which is always supplied as
"bt(0,0)" in practice) and pathname.
If the pathname is device-less, like
"/Extra/filename"
Then it tries looking on the root volume (gRootVolume), and if that
fails, it tries "bt(0,0)/Extra/filename".
However, if the pathname is passed with a device, like
"hd(0,1)/Extra/filename"
[This happens for instance when called from getOSVersion())
Then it tries the exact match (on hd(0,1)), and then tries to open
"bt(0,0)/hd(0,1)/Extra/filename" - which doesn't make any
sense.
This doesn't appear to have any dire impact (always fails with error
return code.)
I'm not attaching a patch, because I don't know what the author of
this function intended.
Reported by zenith432, Dec 4, 2014