I got 448 and 456
Yes, that is as expected. struct mosquitto is a private type, you shouldn't be worrying about its size.
The struct mosquitto in src/read_handle.c is as used by the broker.
The struct mosquitto in lib/send_mosq.c is as used by the client library.
The broker and client library have different requirements, so the struct changes.
What is it you're trying to achieve?
The sizeof(struct mosquitto) 448 and 456 was printed by the same broker.
It will crash when access the member of struct mosquitto declare after:
# ifdef WITH_WEBSOCKETS
# if defined(LWS_LIBRARY_VERSION_NUMBER)
struct lws *wsi;
struct libwebsocket_context *ws_context;
struct libwebsocket *wsi;
Because struct mosquitto is different size between src/ and lib/ in the same broker!!
 Fix #includes in lib/send_mosq.c
Ensures that LWS_LIBRARY_VERSION_NUMBER is always present in all source
files when it is defined.
Thanks to dennisip86.
Thanks, I thought you were worried about the difference between the client and broker struct instead. This is now fixed.