- if((logr.m_queue = StartMQ(DEFAULTQUEUE, WRITE)) < 0)
- {
- ErrorExit(QUEUE_FATAL, ARGV0, DEFAULTQUEUE);
- }
- }
- }
+ /* Generate srcmsg */
+ snprintf(srcmsg, OS_FLSIZE, "(%s) %s",
+ keys.keyentries[agentid]->name,
+ keys.keyentries[agentid]->ip->ip);
+
+ /*
+ * If we can't send the message, try to connect to the
+ * socket again. If it fails exit.
+ */
+ if (SendMSG(logr.m_queue, tmp_msg, srcmsg,
+ SECURE_MQ) < 0) {
+ merror(QUEUE_ERROR, ARGV0, DEFAULTQUEUE, strerror(errno));
+
+ if ((logr.m_queue = StartMQ(DEFAULTQUEUE, WRITE)) < 0) {
+ ErrorExit(QUEUE_FATAL, ARGV0, DEFAULTQUEUE);
+ }
+ }
+ } /* if socket active */
+ } /* for() loop on sockets */
+ } /* while(1) loop for messages */