rhead() and rsect() had assumed sizeof(long) == 4, but OpenBSD/amd64 has sizeof(long) == 8. The problem revealed itself when sect->os_lign became zero, and align() divided by zero.