fixeria has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcap/+/42843?usp=email )
Change subject: server: fix zmq message leak on send failure ...................................................................... server: fix zmq message leak on send failure zmq_msg_send() only transfers ownership of the message to ZeroMQ on success. On failure the caller retains ownership, so the previously init'd zmq_msg_t was leaked on every failed publish. Close it explicitly on the error path. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]> Change-Id: I501b1bf55bede4e69fa5d9b3f38d87341482ff49 --- M src/osmo_server_core.c 1 file changed, 3 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-pcap refs/changes/43/42843/1 diff --git a/src/osmo_server_core.c b/src/osmo_server_core.c index a13c64c..cc2c24e 100644 --- a/src/osmo_server_core.c +++ b/src/osmo_server_core.c @@ -59,9 +59,11 @@ memcpy(zmq_msg_data(&msg), data, len); rc = zmq_msg_send(&msg, publ, flags); if (rc == -1) { - /* is the zmq_msg now owned? leak??? */ + /* zmq_msg_send() only transfers ownership of the message on + * success; on failure we still own it and must close it. */ LOGP(DSERVER, LOGL_ERROR, "Failed to send data rc=%d errno=%d/%s\n", rc, errno, strerror(errno)); + zmq_msg_close(&msg); return; } } -- To view, visit https://gerrit.osmocom.org/c/osmo-pcap/+/42843?usp=email To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email Gerrit-MessageType: newchange Gerrit-Project: osmo-pcap Gerrit-Branch: master Gerrit-Change-Id: I501b1bf55bede4e69fa5d9b3f38d87341482ff49 Gerrit-Change-Number: 42843 Gerrit-PatchSet: 1 Gerrit-Owner: fixeria <[email protected]>
