Perhaps the error messages should be changed to also dump out the "errno" value.. so we can see why something might be failing..

Cheers