summaryrefslogtreecommitdiff
path: root/user/mosquitto/endian.patch
diff options
context:
space:
mode:
Diffstat (limited to 'user/mosquitto/endian.patch')
-rw-r--r--user/mosquitto/endian.patch34
1 files changed, 18 insertions, 16 deletions
diff --git a/user/mosquitto/endian.patch b/user/mosquitto/endian.patch
index 2efd1111d..9a19748ad 100644
--- a/user/mosquitto/endian.patch
+++ b/user/mosquitto/endian.patch
@@ -40,12 +40,12 @@ index 7460c309..701d88d9 100644
@@ -24,6 +24,7 @@ Contributors:
#include <arpa/inet.h>
#endif
- #include <assert.h>
+#include <endian.h>
#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
-@@ -108,6 +109,7 @@ int persist__chunk_client_msg_read_v234(FILE *db_fptr, struct P_client_msg *chun
+ #include <string.h>
+@@ -107,6 +108,7 @@ int persist__chunk_client_msg_read_v234(FILE *db_fptr, struct P_client_msg *chun
}
read_e(db_fptr, &chunk->F.store_id, sizeof(dbid_t));
@@ -53,7 +53,7 @@ index 7460c309..701d88d9 100644
read_e(db_fptr, &i16temp, sizeof(uint16_t));
chunk->F.mid = ntohs(i16temp);
-@@ -137,6 +139,7 @@ int persist__chunk_msg_store_read_v234(FILE *db_fptr, struct P_msg_store *chunk,
+@@ -136,6 +138,7 @@ int persist__chunk_msg_store_read_v234(FILE *db_fptr, struct P_msg_store *chunk,
char *err;
read_e(db_fptr, &chunk->F.store_id, sizeof(dbid_t));
@@ -61,7 +61,7 @@ index 7460c309..701d88d9 100644
rc = persist__read_string(db_fptr, &chunk->source.id);
if(rc){
-@@ -205,7 +208,7 @@ int persist__chunk_retain_read_v234(FILE *db_fptr, struct P_retain *chunk)
+@@ -204,7 +207,7 @@ int persist__chunk_retain_read_v234(FILE *db_fptr, struct P_retain *chunk)
log__printf(NULL, MOSQ_LOG_ERR, "Error: %s.", err);
return 1;
}
@@ -77,12 +77,12 @@ index abc9a580..12d3e801 100644
@@ -24,6 +24,7 @@ Contributors:
#include <arpa/inet.h>
#endif
- #include <assert.h>
+#include <endian.h>
#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
-@@ -116,6 +117,7 @@ int persist__chunk_client_msg_read_v56(FILE *db_fptr, struct P_client_msg *chunk
+ #include <string.h>
+@@ -115,6 +116,7 @@ int persist__chunk_client_msg_read_v56(FILE *db_fptr, struct P_client_msg *chunk
read_e(db_fptr, &chunk->F, sizeof(struct PF_client_msg));
chunk->F.mid = ntohs(chunk->F.mid);
chunk->F.id_len = ntohs(chunk->F.id_len);
@@ -90,7 +90,7 @@ index abc9a580..12d3e801 100644
length -= (uint32_t)(sizeof(struct PF_client_msg) + chunk->F.id_len);
-@@ -165,6 +167,7 @@ int persist__chunk_msg_store_read_v56(FILE *db_fptr, struct P_msg_store *chunk,
+@@ -164,6 +166,7 @@ int persist__chunk_msg_store_read_v56(FILE *db_fptr, struct P_msg_store *chunk,
chunk->F.source_username_len = ntohs(chunk->F.source_username_len);
chunk->F.topic_len = ntohs(chunk->F.topic_len);
chunk->F.source_port = ntohs(chunk->F.source_port);
@@ -98,7 +98,7 @@ index abc9a580..12d3e801 100644
length -= (uint32_t)(sizeof(struct PF_msg_store) + chunk->F.payloadlen + chunk->F.source_id_len + chunk->F.source_username_len + chunk->F.topic_len);
-@@ -246,6 +249,7 @@ int persist__chunk_retain_read_v56(FILE *db_fptr, struct P_retain *chunk)
+@@ -245,6 +248,7 @@ int persist__chunk_retain_read_v56(FILE *db_fptr, struct P_retain *chunk)
log__printf(NULL, MOSQ_LOG_ERR, "Error: %s.", strerror(errno));
return 1;
}
@@ -110,16 +110,16 @@ diff --git a/src/persist_write.c b/src/persist_write.c
index ccfbc29c..93a32639 100644
--- a/src/persist_write.c
+++ b/src/persist_write.c
-@@ -273,7 +273,7 @@ static int persist__retain_save(FILE *db_fptr, struct mosquitto__retainhier *nod
-
- if(node->retained && strncmp(node->retained->topic, "$SYS", 4)){
+@@ -291,7 +291,7 @@ static int persist__retain_save(FILE *db_fptr, struct mosquitto__retainhier *nod
/* Don't save $SYS messages. */
+ memset(&retain_chunk, 0, sizeof(struct P_retain));
+
- retain_chunk.F.store_id = node->retained->db_id;
+ retain_chunk.F.store_id = htole64(node->retained->db_id);
rc = persist__chunk_retain_write_v6(db_fptr, &retain_chunk);
if(rc){
return rc;
-@@ -367,7 +367,7 @@ int persist__backup(bool shutdown)
+@@ -385,7 +385,7 @@ int persist__backup(bool shutdown)
write_e(db_fptr, &db_version_w, sizeof(uint32_t));
memset(&cfg_chunk, 0, sizeof(struct PF_cfg));
@@ -135,12 +135,12 @@ index 8c9f6c34..b9fb5a8e 100644
@@ -24,6 +24,7 @@ Contributors:
#include <arpa/inet.h>
#endif
- #include <assert.h>
+#include <endian.h>
#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
-@@ -100,6 +101,7 @@ int persist__chunk_client_msg_write_v6(FILE *db_fptr, struct P_client_msg *chunk
+ #include <string.h>
+@@ -99,6 +100,7 @@ int persist__chunk_client_msg_write_v6(FILE *db_fptr, struct P_client_msg *chunk
chunk->F.mid = htons(chunk->F.mid);
chunk->F.id_len = htons(chunk->F.id_len);
@@ -148,7 +148,7 @@ index 8c9f6c34..b9fb5a8e 100644
header.chunk = htonl(DB_CHUNK_CLIENT_MSG);
header.length = htonl((uint32_t)sizeof(struct PF_client_msg) + id_len + proplen);
-@@ -149,6 +151,7 @@ int persist__chunk_message_store_write_v6(FILE *db_fptr, struct P_msg_store *chu
+@@ -148,6 +150,7 @@ int persist__chunk_message_store_write_v6(FILE *db_fptr, struct P_msg_store *chu
proplen += property__get_remaining_length(chunk->properties);
}
@@ -156,7 +156,7 @@ index 8c9f6c34..b9fb5a8e 100644
chunk->F.payloadlen = htonl(chunk->F.payloadlen);
chunk->F.source_mid = htons(chunk->F.source_mid);
chunk->F.source_id_len = htons(chunk->F.source_id_len);
-@@ -206,6 +209,7 @@ int persist__chunk_retain_write_v6(FILE *db_fptr, struct P_retain *chunk)
+@@ -205,6 +208,7 @@ int persist__chunk_retain_write_v6(FILE *db_fptr, struct P_retain *chunk)
header.chunk = htonl(DB_CHUNK_RETAIN);
header.length = htonl((uint32_t)sizeof(struct PF_retain));
@@ -167,3 +167,5 @@ index 8c9f6c34..b9fb5a8e 100644
--
2.35.1
+--- mosquitto-2.0.22/src/persist_write.c.old 2025-08-12 10:10:49.824308365 +0000
++++ mosquitto-2.0.22/src/persist_write.c 2025-08-12 10:11:42.938672118 +0000