Currently all errors are set like this:
reply.error = aop->write(chunk, len, from, userdata);
which requires to use ntohl inside user buse_operations.
I suggest to handle byte order on BUSE side, e.g.:
reply.error = htonl(aop->write(chunk, len, from, userdata));