summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/dlt_user.c34
-rwxr-xr-xsrc/tests/dlt-test-multi-process.c16
2 files changed, 31 insertions, 19 deletions
diff --git a/src/lib/dlt_user.c b/src/lib/dlt_user.c
index afacf03..c327491 100644
--- a/src/lib/dlt_user.c
+++ b/src/lib/dlt_user.c
@@ -326,8 +326,9 @@ int dlt_init_message_queue(void)
dlt_log(LOG_WARNING, "Old message queue exists, trying to delete.\n");
if(mq_unlink(queue_name) < 0)
{
- dlt_log(LOG_CRIT, "Could not delete existing message queue!\n");
- dlt_log(LOG_CRIT, strerror(errno));
+ char str[256];
+ snprintf(str,255,"Could not delete existing message queue!: %s \n",strerror(errno));
+ dlt_log(LOG_CRIT, str);
}
else // Retry
{
@@ -337,8 +338,9 @@ int dlt_init_message_queue(void)
}
if(dlt_user.dlt_segmented_queue_read_handle < 0)
{
- dlt_log(LOG_CRIT, "Can't create message queue read handle!\n");
- dlt_log(LOG_CRIT, strerror(errno));
+ char str[256];
+ snprintf(str,255,"Can't create message queue read handle!: %s \n",strerror(errno));
+ dlt_log(LOG_CRIT, str);
pthread_mutex_unlock(&mq_mutex);
return -1;
}
@@ -347,8 +349,10 @@ int dlt_init_message_queue(void)
dlt_user.dlt_segmented_queue_write_handle = mq_open(queue_name, O_WRONLY|O_NONBLOCK);
if(dlt_user.dlt_segmented_queue_write_handle < 0)
{
- dlt_log(LOG_CRIT, "Can't open message queue write handle!\n");
- dlt_log(LOG_CRIT, strerror(errno));
+
+ char str[256];
+ snprintf(str,255,"Can't open message queue write handle!: %s \n",strerror(errno));
+ dlt_log(LOG_CRIT, str);
pthread_mutex_unlock(&mq_mutex);
return -1;
}
@@ -2134,8 +2138,10 @@ void dlt_user_trace_network_segmented_thread(void *unused)
if(read != sizeof(s_segmented_data *))
{
- dlt_log(LOG_ERR, "NWTSegmented: Error while reading queue.\n");
- dlt_log(LOG_ERR, strerror(errno));
+
+ char str[255];
+ snprintf(str,254,"NWTSegmented: Error while reading queue: %s \n",strerror(errno));
+ dlt_log(LOG_CRIT, str);
continue;
}
@@ -2275,9 +2281,10 @@ int dlt_user_trace_network_segmented(DltContext *handle, DltNetworkTraceType nw_
}
free(thread_data->header);
free(thread_data->payload);
- free(thread_data);
- dlt_log(LOG_ERR, "NWTSegmented: Could not write into queue.\n");
- dlt_log(LOG_ERR, strerror(errno));
+ free(thread_data);
+ char str[256];
+ snprintf(str,255,"NWTSegmented: Could not write into queue: %s \n",strerror(errno));
+ dlt_log(LOG_CRIT, str);
return -1;
}
@@ -2716,8 +2723,9 @@ int dlt_user_queue_resend(void)
if(mq_send(dlt_user.dlt_segmented_queue_write_handle, (char *)&resend_data, sizeof(s_segmented_data *), 1) < 0)
{
- dlt_log(LOG_ERR,"Could not request resending.\n");
- dlt_log(LOG_ERR, strerror(errno));
+ char str[255];
+ snprintf(str,254,"Could not request resending.: %s \n",strerror(errno));
+ dlt_log(LOG_CRIT, str);
free(resend_data);
return -1;
}
diff --git a/src/tests/dlt-test-multi-process.c b/src/tests/dlt-test-multi-process.c
index e5dfcea..a34813d 100755
--- a/src/tests/dlt-test-multi-process.c
+++ b/src/tests/dlt-test-multi-process.c
@@ -48,6 +48,7 @@
#include <errno.h>
#include <pthread.h>
#include <sys/wait.h>
+#include <syslog.h>
#include "dlt.h"
#include "dlt_common.h"
@@ -85,7 +86,7 @@ volatile sig_atomic_t in_handler = 0;
// Globals for cleanup from main and signal handler
pid_t pids[MAX_PROCS];
-int pidcount = 0;
+unsigned int pidcount = 0;
/**
* Print instructions.
@@ -202,7 +203,7 @@ int main(int argc, char **argv)
if(signal(SIGTERM, quit_handler) == SIG_IGN)
signal(SIGTERM, SIG_IGN); // kill (nice)
- printf("Setup done. Listening. My pid: %d\n", getpid());
+ printf("Setup done. Listening. My pid: %d\n", getpid());
fflush(stdout);
int err = wait_for_death();
@@ -216,7 +217,7 @@ int main(int argc, char **argv)
void do_forks(s_parameters params)
{
- int i;
+ int i;
// Launch child processes
for(i=0;i<params.nprocs;i++)
@@ -293,7 +294,8 @@ void do_logging(s_thread_data *data)
char ctid[5];
char ctid_name[256];
- sprintf(ctid,"%.2x", rand() & 0x0000ffff);
+
+ sprintf(ctid,"%.2x", rand() & 0x0000ffff);
sprintf(ctid_name, "Child %s in dlt-test-multi-process", ctid);
DLT_REGISTER_CONTEXT(mycontext, ctid, ctid_name);
@@ -318,8 +320,10 @@ void run_threads(s_parameters params)
int i;
srand(getpid());
- sprintf(apid,"MT%.1x", rand() & 0x000000ff);
- sprintf(apid_name, "Apps %s.", apid);
+
+ sprintf(apid,"MT%02u", pidcount);
+ sprintf(apid_name, "Apps %s.", apid);
+
DLT_REGISTER_APP(apid, apid_name);
thread_data.params = params;