Some servers require additional padding in the rename operation
and will fail if this padding is missing.
Add 8 more bytes of padding to make them happy.
Fixes#420
Suggested-by: CNWangZW
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
compat.h defines fallback definitions for errno constants and it does
not include <errno.h> on its own; if <errno.h> is not already included
then there are wrongly generated fallback definitions.
Apply the approach already in other sources, i.e. explicitly include
<errno.h> before compat.h.
Signed-off-by: Pino Toscano <toscano.pino@tiscali.it>
and similararchectures that can not handle unaligned accesses
and where pointer conversions cause compiler warnings when converting
a pointer to a larger type.
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>
Some ISA, like ARMv6, do not support unaligned memory accesses.
The cast here technically convert a the pointer target from a char to
another pointer.
However, as the buf field (char) is laid out after a pointer in the
structure definition, the alignment for buf is forced to the same
alignment as a pointer.
Thus the issue with unaligned access can not happen and the workaround
by re-casting the pointer via void * is safe.
Signed-off-by: Ronnie Sahlberg <ronniesahlberg@gmail.com>