summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLutz Helwing <lutz_helwing@mentor.com>2015-10-09 14:34:19 +0200
committerAlexander Wenzel <Alexander.AW.Wenzel@bmw.de>2015-10-28 11:37:32 +0100
commitfb99b7875dfe64a4073aa14f33c551098632847c (patch)
treed771a7287e00b9dcedb3f94281cfdcb58d306a0e
parenta65dcd34513308b37165f8544ab647016d6e7209 (diff)
downloadDLT-daemon-fb99b7875dfe64a4073aa14f33c551098632847c.tar.gz
Purged all warnings for -Wall -Wextra
Signed-off-by: Alexander Wenzel <Alexander.AW.Wenzel@bmw.de>
-rw-r--r--CMakeLists.txt3
-rw-r--r--src/adaptor/dlt-adaptor-stdin.c2
-rw-r--r--src/adaptor/dlt-adaptor-udp.c2
-rw-r--r--src/dbus/dlt-dbus.c4
-rw-r--r--src/examples/dlt-example-filetransfer.c2
-rw-r--r--src/examples/dlt-example-user-common-api.c2
-rw-r--r--src/examples/dlt-example-user.c2
-rw-r--r--src/shared/dlt_common.c7
-rw-r--r--src/system/dlt-system-filetransfer.c2
-rw-r--r--src/system/dlt-system-logfile.c2
-rw-r--r--src/system/dlt-system-process-handling.c2
-rw-r--r--src/tests/dlt-test-filetransfer.c4
-rw-r--r--src/tests/dlt-test-init-free.c33
-rw-r--r--src/tests/dlt-test-stress-user.c6
-rw-r--r--src/tests/dlt-test-user.c6
-rw-r--r--tests/CMakeLists.txt3
-rw-r--r--tests/dlt_test_receiver.c6
-rw-r--r--tests/gtest_dlt_common.cpp208
-rw-r--r--tests/gtest_dlt_daemon_common.cpp86
19 files changed, 238 insertions, 144 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9573a5f..c46cfa2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -108,11 +108,12 @@ if(WITH_GPROF)
SET(CMAKE_C_FLAGS "-pg")
endif(WITH_GPROF)
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99 -Wno-variadic-macros")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99")
add_definitions( "-Wall" )
add_definitions( "-Wextra" )
#add_definitions( "-pedantic" )
+add_definitions( "-Wno-variadic-macros" )
IF(${WITH_DOC} STREQUAL "OFF")
SET(PACKAGE_DOC "#")
diff --git a/src/adaptor/dlt-adaptor-stdin.c b/src/adaptor/dlt-adaptor-stdin.c
index 33ab8a2..f8e8fc0 100644
--- a/src/adaptor/dlt-adaptor-stdin.c
+++ b/src/adaptor/dlt-adaptor-stdin.c
@@ -80,7 +80,7 @@
#define PS_DLT_APP "SINA"
#define PS_DLT_CONTEXT "SINC"
-DLT_DECLARE_CONTEXT(mycontext);
+DLT_DECLARE_CONTEXT(mycontext)
int main(int argc, char* argv[])
{
diff --git a/src/adaptor/dlt-adaptor-udp.c b/src/adaptor/dlt-adaptor-udp.c
index dcb5820..9e4ce74 100644
--- a/src/adaptor/dlt-adaptor-udp.c
+++ b/src/adaptor/dlt-adaptor-udp.c
@@ -89,7 +89,7 @@
#define PU_DLT_APP "UDPA"
#define PU_DLT_CONTEXT "UDPC"
-DLT_DECLARE_CONTEXT(mycontext);
+DLT_DECLARE_CONTEXT(mycontext)
int main(int argc, char* argv[])
{
diff --git a/src/dbus/dlt-dbus.c b/src/dbus/dlt-dbus.c
index f85252f..5013c77 100644
--- a/src/dbus/dlt-dbus.c
+++ b/src/dbus/dlt-dbus.c
@@ -35,8 +35,8 @@
#include <time.h>
-DLT_DECLARE_CONTEXT(dbusLog);
-DLT_DECLARE_CONTEXT(dbusContext);
+DLT_DECLARE_CONTEXT(dbusLog)
+DLT_DECLARE_CONTEXT(dbusContext)
static char dbus_message_buffer[DBUS_MAXIMUM_MESSAGE_LENGTH];
diff --git a/src/examples/dlt-example-filetransfer.c b/src/examples/dlt-example-filetransfer.c
index 4fc10e2..0f4f038 100644
--- a/src/examples/dlt-example-filetransfer.c
+++ b/src/examples/dlt-example-filetransfer.c
@@ -73,7 +73,7 @@
#define TIMEOUT 1
//!Declare some context for the file transfer. It's not a must have to do this, but later you can set a filter on this context in the dlt viewer.
-DLT_DECLARE_CONTEXT(fileContext);
+DLT_DECLARE_CONTEXT(fileContext)
/**
diff --git a/src/examples/dlt-example-user-common-api.c b/src/examples/dlt-example-user-common-api.c
index ee6370c..171ca89 100644
--- a/src/examples/dlt-example-user-common-api.c
+++ b/src/examples/dlt-example-user-common-api.c
@@ -63,7 +63,7 @@
#include "dlt_common_api.h"
-DLT_DECLARE_CONTEXT(mycontext);
+DLT_DECLARE_CONTEXT(mycontext)
/**
* Print usage information of tool.
diff --git a/src/examples/dlt-example-user.c b/src/examples/dlt-example-user.c
index 3479ee8..532402a 100644
--- a/src/examples/dlt-example-user.c
+++ b/src/examples/dlt-example-user.c
@@ -79,7 +79,7 @@
int dlt_user_injection_callback(uint32_t service_id, void *data, uint32_t length);
void dlt_user_log_level_changed_callback(char context_id[DLT_ID_SIZE],uint8_t log_level,uint8_t trace_status);
-DLT_DECLARE_CONTEXT(mycontext);
+DLT_DECLARE_CONTEXT(mycontext)
/**
* Print usage information of tool.
diff --git a/src/shared/dlt_common.c b/src/shared/dlt_common.c
index 680e0a4..2448e70 100644
--- a/src/shared/dlt_common.c
+++ b/src/shared/dlt_common.c
@@ -3346,6 +3346,12 @@ DltReturnValue dlt_message_argument_print(DltMessage *msg,uint32_t type_info,uin
int64_t value64f_tmp_int64i=0,value64f_tmp_int64i_swaped=0;
uint32_t quantisation_tmp = 0;
+
+ /* apparently this makes no sense but needs to be done to prevent compiler warning.
+ * This variable is only written by DLT_MSG_READ_VALUE macro in if (type_info & DLT_TYPE_INFO_FIXP)
+ * case but never read anywhere */
+ quantisation_tmp += quantisation_tmp;
+
if ( (type_info & DLT_TYPE_INFO_STRG) && (((type_info & DLT_TYPE_INFO_SCOD) == DLT_SCOD_ASCII) || ((type_info & DLT_TYPE_INFO_SCOD) == DLT_SCOD_UTF8)) )
{
/* string type or utf8-encoded string type */
@@ -3495,7 +3501,6 @@ DltReturnValue dlt_message_argument_print(DltMessage *msg,uint32_t type_info,uin
}
if (type_info & DLT_TYPE_INFO_FIXP)
{
- quantisation_tmp=quantisation_tmp; // prevent compiler warning
DLT_MSG_READ_VALUE(quantisation_tmp, *ptr, *datalength, uint32_t);
if((*datalength)<0)
diff --git a/src/system/dlt-system-filetransfer.c b/src/system/dlt-system-filetransfer.c
index 56d2f52..7cdcbac 100644
--- a/src/system/dlt-system-filetransfer.c
+++ b/src/system/dlt-system-filetransfer.c
@@ -82,7 +82,7 @@ extern DltSystemThreads threads;
// From dlt_filetransfer
extern unsigned long getFileSerialNumber(const char* file, int *ok);
-DLT_IMPORT_CONTEXT(dltsystem);
+DLT_IMPORT_CONTEXT(dltsystem)
DLT_DECLARE_CONTEXT(filetransferContext)
#ifdef linux
diff --git a/src/system/dlt-system-logfile.c b/src/system/dlt-system-logfile.c
index cd1a828..687d739 100644
--- a/src/system/dlt-system-logfile.c
+++ b/src/system/dlt-system-logfile.c
@@ -55,7 +55,7 @@
#define SEND_MODE_ONCE 1
#define SEND_MODE_ON 2
-DLT_IMPORT_CONTEXT(dltsystem);
+DLT_IMPORT_CONTEXT(dltsystem)
extern DltSystemThreads threads;
DltContext logfileContext[DLT_SYSTEM_LOG_FILE_MAX];
diff --git a/src/system/dlt-system-process-handling.c b/src/system/dlt-system-process-handling.c
index 118b868..0b6b77d 100644
--- a/src/system/dlt-system-process-handling.c
+++ b/src/system/dlt-system-process-handling.c
@@ -57,7 +57,7 @@
volatile DltSystemThreads threads;
-DLT_IMPORT_CONTEXT(dltsystem);
+DLT_IMPORT_CONTEXT(dltsystem)
int daemonize()
{
diff --git a/src/tests/dlt-test-filetransfer.c b/src/tests/dlt-test-filetransfer.c
index 5ec4114..591714a 100644
--- a/src/tests/dlt-test-filetransfer.c
+++ b/src/tests/dlt-test-filetransfer.c
@@ -59,10 +59,10 @@
#include <dlt.h> /*Needed for dlt logging*/
//!Declare some context for the main program. It's a must have to do this, when you want to log with dlt.
-DLT_DECLARE_CONTEXT(mainContext);
+DLT_DECLARE_CONTEXT(mainContext)
//!Declare some context for the file transfer. It's not a must have to do this, but later you can set a filter on this context in the dlt viewer.
-DLT_DECLARE_CONTEXT(fileContext);
+DLT_DECLARE_CONTEXT(fileContext)
//!Textfile which will be transferred.
char *file1;
diff --git a/src/tests/dlt-test-init-free.c b/src/tests/dlt-test-init-free.c
index d299938..81083e3 100644
--- a/src/tests/dlt-test-init-free.c
+++ b/src/tests/dlt-test-init-free.c
@@ -27,11 +27,12 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <stdbool.h>
#include "dlt_common.h"
#include "dlt_user.h"
-char* exec(const char* cmd);
+void exec(const char* cmd, char *buffer, size_t length);
void printMemoryUsage();
char* occupyMemory(uint size);
void do_example_test();
@@ -110,32 +111,28 @@ void do_dlt_test()
}
}
-char* exec(const char* cmd)
+void exec(const char* cmd, char *buffer, size_t length)
{
- FILE* pipe = popen(cmd, "r");
- if (!pipe)
- return "ERROR";
+ FILE* pipe = NULL;
+ strncpy(buffer, "ERROR", length);
- char* buffer = (char*)malloc(128);
- while (!feof(pipe))
- {
- fgets(buffer, 128, pipe);
- }
- pclose(pipe);
+ if ( (pipe = popen(cmd, "r")) == NULL )
+ return;
+
+ while (fgets(buffer, length, pipe) != NULL);
- return buffer;
+ if(pipe != NULL)
+ pclose(pipe);
}
void printMemoryUsage()
{
- char command[128] = "pmap ";
+ char result[128] = { 0 };
+ char command[128] = { 0 };
- char buf[128];
- snprintf(buf, sizeof(command), "%d", getpid());
- strcat(command, buf);
- strcat(command, " | grep total");
+ snprintf(command, sizeof(command), "pmap %d | grep total", getpid());
- char* result = exec(command);
+ exec(command, result, sizeof(result));
printf("%s", result);
}
diff --git a/src/tests/dlt-test-stress-user.c b/src/tests/dlt-test-stress-user.c
index dcd7555..6fe73d9 100644
--- a/src/tests/dlt-test-stress-user.c
+++ b/src/tests/dlt-test-stress-user.c
@@ -83,11 +83,11 @@
int testall(int count,int repeat,int delay,int size);
/* Context declaration.. */
-DLT_DECLARE_CONTEXT(context_info);
+DLT_DECLARE_CONTEXT(context_info)
/* for macro interface */
-DLT_DECLARE_CONTEXT(context_macro_callback);
-DLT_DECLARE_CONTEXT(context_macro_test[DLT_TEST_NUM_CONTEXT]);
+DLT_DECLARE_CONTEXT(context_macro_callback)
+DLT_DECLARE_CONTEXT(context_macro_test[DLT_TEST_NUM_CONTEXT])
/* for function interface */
DltContext context_function_callback;
diff --git a/src/tests/dlt-test-user.c b/src/tests/dlt-test-user.c
index 3abe9d8..80614e0 100644
--- a/src/tests/dlt-test-user.c
+++ b/src/tests/dlt-test-user.c
@@ -107,11 +107,11 @@ int test_injection_macro_callback(uint32_t service_id, void *data, uint32_t leng
int test_injection_function_callback(uint32_t service_id, void *data, uint32_t length);
/* Context declaration.. */
-DLT_DECLARE_CONTEXT(context_info);
+DLT_DECLARE_CONTEXT(context_info)
/* for macro interface */
-DLT_DECLARE_CONTEXT(context_macro_callback);
-DLT_DECLARE_CONTEXT(context_macro_test[DLT_TEST_NUM_CONTEXT]);
+DLT_DECLARE_CONTEXT(context_macro_callback)
+DLT_DECLARE_CONTEXT(context_macro_test[DLT_TEST_NUM_CONTEXT])
/* for function interface */
DltContext context_function_callback;
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 8c90299..166e029 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -1,6 +1,7 @@
# Setup testing
enable_testing()
-include_directories(${gtest_SOURCE_DIR}/include)
+
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -isystem ${gtest_SOURCE_DIR}/include")
#SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g")
#SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address")
diff --git a/tests/dlt_test_receiver.c b/tests/dlt_test_receiver.c
index 0c1d5cd..a0e86f7 100644
--- a/tests/dlt_test_receiver.c
+++ b/tests/dlt_test_receiver.c
@@ -373,11 +373,11 @@ int dlt_receive_filetransfer_callback(DltMessage *message, void *data)
{
// truncate beginning of data stream ( FLDA, File identifier and package number)
char *position = strchr(text, 32); // search for space
- snprintf(text, DLT_RECEIVE_TEXTBUFSIZE, position+1);
+ strncpy(text, position+1, DLT_RECEIVE_TEXTBUFSIZE);
position = strchr(text, 32);
- snprintf(text, DLT_RECEIVE_TEXTBUFSIZE, position+1);
+ strncpy(text, position+1, DLT_RECEIVE_TEXTBUFSIZE);
position = strchr(text, 32);
- snprintf(text, DLT_RECEIVE_TEXTBUFSIZE, position+1);
+ strncpy(text, position+1, DLT_RECEIVE_TEXTBUFSIZE);
// truncate ending of data stream ( FLDA )
int len = strlen(text);
diff --git a/tests/gtest_dlt_common.cpp b/tests/gtest_dlt_common.cpp
index 7ad8ee7..df3b6d2 100644
--- a/tests/gtest_dlt_common.cpp
+++ b/tests/gtest_dlt_common.cpp
@@ -1368,8 +1368,11 @@ TEST(t_dlt_file_open, normal)
DltFile file;
/* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1407,8 +1410,11 @@ TEST(t_dlt_file_open, nullpointer)
DltFile file;
/* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
- char openfile[114];;
+ char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1432,10 +1438,13 @@ TEST(t_dlt_message_print_ascii, normal)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1489,10 +1498,13 @@ TEST(t_dlt_message_print_ascii, nullpointer)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1522,10 +1534,13 @@ TEST(t_dlt_message_print_ascii_with_filter, normal)
DltFilter filter;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
char openfilter[117];
sprintf(openfile, "%s/testfile.dlt", pwd);
sprintf(openfilter, "%s/testfilter.txt", pwd);
@@ -1569,10 +1584,13 @@ TEST(t_dlt_message_print_header, normal)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1626,10 +1644,13 @@ TEST(t_dlt_message_print_header, nullpointer)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1660,10 +1681,13 @@ TEST(t_dlt_message_print_header_with_filter, normal)
DltFilter filter;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
char openfilter[117];
sprintf(openfile, "%s/testfile.dlt", pwd);
sprintf(openfilter, "%s/testfilter.txt", pwd);
@@ -1707,10 +1731,13 @@ TEST(t_dlt_message_print_hex, normal)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1764,10 +1791,13 @@ TEST(t_dlt_message_print_hex, nullpointer)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1798,10 +1828,13 @@ TEST(t_dlt_message_print_hex_with_filter, normal)
DltFilter filter;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
char openfilter[117];
sprintf(openfile, "%s/testfile.dlt", pwd);
sprintf(openfilter, "%s/testfilter.txt", pwd);
@@ -1845,10 +1878,13 @@ TEST(t_dlt_message_print_mixed_plain, normal)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1902,10 +1938,13 @@ TEST(t_dlt_message_print_mixed_plain, nullpointer)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -1936,10 +1975,13 @@ TEST(t_dlt_message_print_mixed_plain_with_filter, normal)
DltFilter filter;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
char openfilter[117];
sprintf(openfile, "%s/testfile.dlt", pwd);
sprintf(openfilter, "%s/testfilter.txt", pwd);
@@ -1982,10 +2024,13 @@ TEST(t_dlt_message_print_mixed_html, normal)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -2039,10 +2084,13 @@ TEST(t_dlt_message_print_mixed_html, nullpointer)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -2072,10 +2120,13 @@ TEST(t_dlt_message_print_mixed_html_with_filter, normal)
DltFilter filter;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
char openfilter[117];
sprintf(openfile, "%s/testfile.dlt", pwd);
sprintf(openfilter, "%s/testfilter.txt", pwd);
@@ -2119,10 +2170,13 @@ TEST(t_dlt_message_filter_check, normal)
DltFile file;
DltFilter filter;
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
char openfilter[117];
sprintf(openfile, "%s/testfile.dlt", pwd);
sprintf(openfilter, "%s/testfilter.txt", pwd);
@@ -2183,10 +2237,13 @@ TEST(t_dlt_message_filter_check, nullpointer)
DltFile file;
DltFilter filter;
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
char openfilter[117];
sprintf(openfile, "%s/testfile.dlt", pwd);
sprintf(openfilter, "%s/testfilter.txt", pwd);
@@ -2210,10 +2267,13 @@ TEST(t_dlt_message_get_extraparamters, normal)
{
DltFile file;
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -2278,10 +2338,13 @@ TEST(t_dlt_message_header, normal)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -2338,10 +2401,13 @@ TEST(t_dlt_message_header, nullpointer)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -2388,10 +2454,13 @@ TEST(t_dlt_message_header_flags, normal)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -2514,10 +2583,13 @@ TEST(t_dlt_message_header_flags, nullpointer)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -2724,10 +2796,13 @@ TEST(t_dlt_message_payload, normal)
DltFile file;
static char text[DLT_DAEMON_TEXTSIZE];
- /* Get PWD so file and filter can be used*/
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -2927,10 +3002,13 @@ TEST(t_dlt_message_payload, nullpointer)
TEST(t_dlt_message_set_extraparamters, normal)
{
DltFile file;
- // Get PWD so file and filter can be used
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -2991,10 +3069,13 @@ TEST(t_dlt_message_set_extraparamters, nullpointer)
TEST(t_dlt_message_read, normal)
{
DltFile file;
- // Get PWD so file and filter can be used
+ // Get PWD so file can be used
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -3030,10 +3111,13 @@ TEST(t_dlt_message_read, abnormal)
TEST(t_dlt_message_read, nullpointer)
{
DltFile file;
- // Get PWD so file and filter can be used
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
/*---------------------------------------*/
@@ -3055,10 +3139,13 @@ TEST(t_dlt_message_read, nullpointer)
TEST(t_dlt_message_argument_print, normal)
{
DltFile file;
- // Get PWD so file and filter can be used
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
static char text[DLT_DAEMON_TEXTSIZE];
/*---------------------------------------*/
@@ -3136,10 +3223,13 @@ TEST(t_dlt_message_argument_print, abnormal)
TEST(t_dlt_message_argument_print, nullpointer)
{
DltFile file;
- // Get PWD so file and filter can be used
+ /* Get PWD so file can be used*/
char pwd[100];
- getcwd(pwd, 100);
char openfile[114];
+
+ // ignore returned value from getcwd
+ if (getcwd(pwd, 100) == NULL) {}
+
sprintf(openfile, "%s/testfile.dlt", pwd);
static char text[DLT_DAEMON_TEXTSIZE];
/*---------------------------------------*/
diff --git a/tests/gtest_dlt_daemon_common.cpp b/tests/gtest_dlt_daemon_common.cpp
index 07b0aa7..50dcb01 100644
--- a/tests/gtest_dlt_daemon_common.cpp
+++ b/tests/gtest_dlt_daemon_common.cpp
@@ -61,7 +61,7 @@ TEST(t_dlt_daemon_application_add, normal)
const char * apid = "TEST";
pid_t pid = 0;
const char * desc = "HELLO_TEST";
- DltDaemonApplication *app;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -90,7 +90,7 @@ TEST(t_dlt_daemon_application_add, abnormal)
// const char * apid = "TEST";
// pid_t pid = 0;
// const char * desc = "HELLO_TEST";
-// DltDaemonApplication *app;
+// DltDaemonApplication *app = NULL;
// Add the same application with same pid twice
// EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -154,7 +154,7 @@ TEST(t_dlt_daemon_application_del, normal)
const char * apid = "TEST";
pid_t pid = 0;
const char * desc = "HELLO_TEST";
- DltDaemonApplication *app;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case, retrun type cannot be tested, only apid and desc
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -169,7 +169,7 @@ TEST(t_dlt_daemon_application_del, abnormal)
// const char * apid = "TEST";
// pid_t pid = 0;
// const char * desc = "HELLO_TEST";
-// DltDaemonApplication *app;
+// DltDaemonApplication *app = NULL;
// no application exists, expect < 0
// EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -211,7 +211,7 @@ TEST(t_dlt_daemon_application_find, normal)
const char * apid = "TEST";
pid_t pid = 0;
const char * desc = "HELLO_TEST";
- DltDaemonApplication *app;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -239,7 +239,7 @@ TEST(t_dlt_daemon_application_find, abnormal)
// const char * apid = "TEST";
// pid_t pid = 0;
// const char * desc = "HELLO_TEST";
-// DltDaemonApplication *app;
+// DltDaemonApplication *app = NULL;
// Verbose != 0 or 1, expect error
// EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -310,7 +310,7 @@ TEST(t_dlt_daemon_applications_invalidate_fd, normal)
const char * apid = "TEST";
pid_t pid = 0;
const char * desc = "HELLO_TEST";
- DltDaemonApplication *app;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -326,7 +326,7 @@ TEST(t_dlt_daemon_applications_invalidate_fd, abnormal)
// const char * apid = "TEST";
// pid_t pid = 0;
// const char * desc = "HELLO_TEST";
-// DltDaemonApplication *app;
+// DltDaemonApplication *app = NULL;
// Daemon isn't initialized, expected error
// EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -356,7 +356,7 @@ TEST(t_dlt_daemon_applications_save, normal)
const char * apid = "TEST";
pid_t pid = 0;
const char * desc = "HELLO_TEST";
- DltDaemonApplication *app;
+ DltDaemonApplication *app = NULL;
const char * filename = "/tmp/dlt-runtime.cfg";
// Normal Use-Case
@@ -373,7 +373,7 @@ TEST(t_dlt_daemon_applications_save, abnormal)
// const char * apid = "TEST";
// pid_t pid = 0;
// const char * desc = "HELLO_TEST";
-// DltDaemonApplication *app;
+// DltDaemonApplication *app = NULL;
// const char * filename = "/tmp/dlt-runtime.cfg";
// Uninitialized
@@ -425,7 +425,7 @@ TEST(t_dlt_daemon_applications_load, abnormal)
// const char * apid = "TEST";
// pid_t pid = 0;
// const char * desc = "HELLO_TEST";
-// DltDaemonApplication *app;
+// DltDaemonApplication *app = NULL;
// const char * filename = "/tmp/dlt-runtime.cfg";
// Uninitialized
@@ -489,8 +489,8 @@ TEST(t_dlt_daemon_context_add, normal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -514,8 +514,8 @@ TEST(t_dlt_daemon_context_add, abnormal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
// Log Level dont exists
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -649,8 +649,8 @@ TEST(t_dlt_daemon_context_del, normal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -720,8 +720,8 @@ TEST(t_dlt_daemon_context_find, normal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -744,8 +744,8 @@ TEST(t_dlt_daemon_context_find, abnormal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
// Uninitialized
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -814,8 +814,8 @@ TEST(t_dlt_daemon_contexts_clear, normal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -833,8 +833,8 @@ TEST(t_dlt_daemon_contexts_clear, abnormal)
// ID4 apid = "TES";
// ID4 ctid = "CON";
// char desc[255] = "TEST dlt_daemon_context_add";
-// DltDaemonContext *daecontext;
-// DltDaemonApplication *app;
+// DltDaemonContext *daecontext = NULL;
+// DltDaemonApplication *app = NULL;
// No context added
// EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -866,8 +866,8 @@ TEST(t_dlt_daemon_contexts_invalidate_fd, normal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -886,8 +886,8 @@ TEST(t_dlt_daemon_contexts_invalidate_fd, abnormal)
// ID4 apid = "TES";
// ID4 ctid = "CON";
// char desc[255] = "TEST dlt_daemon_context_add";
-// DltDaemonContext *daecontext;
-// DltDaemonApplication *app;
+// DltDaemonContext *daecontext = NULL;
+// DltDaemonApplication *app = NULL;
// Uninitialized
// EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -920,8 +920,8 @@ TEST(t_dlt_daemon_contexts_save, normal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
const char * filename = "/tmp/dlt-runtime-context.cfg";
// Normal Use-Case
@@ -941,8 +941,8 @@ TEST(t_dlt_daemon_contexts_save, abnormal)
// ID4 apid = "TES";
// ID4 ctid = "CON";
// char desc[255] = "TEST dlt_daemon_context_add";
-// DltDaemonContext *daecontext;
-// DltDaemonApplication *app;
+// DltDaemonContext *daecontext = NULL;
+// DltDaemonApplication *app = NULL;
// const char * filename = "/tmp/dlt-runtime-context.cfg";
// Uninitialized
@@ -990,8 +990,8 @@ TEST(t_dlt_daemon_contexts_load, normal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
const char * filename = "/tmp/dlt-runtime-context.cfg";
// Normal Use-Case
@@ -1011,8 +1011,8 @@ TEST(t_dlt_daemon_contexts_load, abnormal)
// ID4 apid = "TES";
// ID4 ctid = "CON";
// char desc[255] = "TEST dlt_daemon_context_add";
-// DltDaemonContext *daecontext;
-// DltDaemonApplication *app;
+// DltDaemonContext *daecontext = NULL;
+// DltDaemonApplication *app = NULL;
// const char * filename = "/tmp/dlt-runtime-context.cfg";
// Uninitialized
@@ -1116,8 +1116,8 @@ TEST(t_dlt_daemon_user_send_log_level, normal)
ID4 apid = "TES";
ID4 ctid = "CON";
char desc[255] = "TEST dlt_daemon_context_add";
- DltDaemonContext *daecontext;
- DltDaemonApplication *app;
+ DltDaemonContext *daecontext = NULL;
+ DltDaemonApplication *app = NULL;
// Normal Use-Case
EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -1136,8 +1136,8 @@ TEST(t_dlt_daemon_user_send_log_level, abnormal)
// ID4 apid = "TES";
// ID4 ctid = "CON";
// char desc[255] = "TEST dlt_daemon_context_add";
-// DltDaemonContext *daecontext;
-// DltDaemonApplication *app;
+// DltDaemonContext *daecontext = NULL;
+// DltDaemonApplication *app = NULL;
// Uninitialized
// EXPECT_EQ(0, dlt_daemon_init(&daemon, DLT_DAEMON_RINGBUFFER_MIN_SIZE, DLT_DAEMON_RINGBUFFER_MAX_SIZE, DLT_DAEMON_RINGBUFFER_STEP_SIZE, DLT_RUNTIME_DEFAULT_DIRECTORY,0));
@@ -1211,8 +1211,8 @@ TEST(t_dlt_daemon_user_send_log_state, abnormal)
// ID4 apid = "TES";
// ID4 ctid = "CON";
// char desc[255] = "TEST dlt_daemon_context_add";
-// DltDaemonContext *daecontext;
-// DltDaemonApplication *app;
+// DltDaemonContext *daecontext = NULL;
+// DltDaemonApplication *app = NULL;
// pid_t pid = 18166;
// char filename[DLT_DAEMON_COMMON_TEXTBUFSIZE+1];
// snprintf(filename,DLT_DAEMON_COMMON_TEXTBUFSIZE,"%s/dlt%d",DLT_USER_DIR,pid);