This would fail on a big-endian system.

Safer and cleaner to put in a memset(&event, 0, sizeof(event)) then assign to event.data.fd as normal.