\{\r
*/\r
\r
+#include <limits.h>\r
#include <semaphore.h>\r
#include "dlt_common.h"\r
#include "dlt_user.h"\r
extern "C" {\r
#endif\r
\r
-#define DLT_DAEMON_RINGBUFFER_MIN_SIZE 100000 /**< Ring buffer size for storing log messages while no client is connected */\r
-#define DLT_DAEMON_RINGBUFFER_MAX_SIZE 500000 /**< Ring buffer size for storing log messages while no client is connected */\r
-#define DLT_DAEMON_RINGBUFFER_STEP_SIZE 100000 /**< Ring buffer size for storing log messages while no client is connected */\r
+#define DLT_DAEMON_RINGBUFFER_MIN_SIZE 500000 /**< Ring buffer size for storing log messages while no client is connected */\r
+#define DLT_DAEMON_RINGBUFFER_MAX_SIZE 10000000 /**< Ring buffer size for storing log messages while no client is connected */\r
+#define DLT_DAEMON_RINGBUFFER_STEP_SIZE 500000 /**< Ring buffer size for storing log messages while no client is connected */\r
\r
#define DLT_DAEMON_STORE_TO_BUFFER -2 /**< Constant value to identify the command "store to buffer" */\r
\r
int8_t default_log_level; /**< Default log level (of daemon) */\r
int8_t default_trace_status; /**< Default trace status (of daemon) */\r
int message_buffer_overflow; /**< Set to one, if buffer overflow has occured, zero otherwise */\r
+ unsigned int overflow_counter; /**< counts the number of lost messages. */\r
int runtime_context_cfg_loaded; /**< Set to one, if runtime context configuration has been loaded, zero otherwise */\r
char ecuid[DLT_ID_SIZE]; /**< ECU ID of daemon */\r
int sendserialheader; /**< 1: send serial header; 0 don't send serial header */\r
int timingpackets; /**< 1: send continous timing packets; 0 don't send continous timing packets */\r
DltBuffer client_ringbuffer; /**< Ring-buffer for storing received logs while no client connection is available */\r
- char runtime_application_cfg[256]; /**< Path and filename of persistent application configuration */\r
- char runtime_context_cfg[256]; /**< Path and filename of persistent context configuration */\r
- char runtime_configuration[256]; /**< Path and filename of persistent configuration */\r
+ char runtime_application_cfg[PATH_MAX + 1]; /**< Path and filename of persistent application configuration. Set to path max, as it specifies a full path*/\r
+ char runtime_context_cfg[PATH_MAX + 1]; /**< Path and filename of persistent context configuration */\r
+ char runtime_configuration[PATH_MAX + 1]; /**< Path and filename of persistent configuration */\r
DltUserLogMode mode; /**< Mode used for tracing: off, external, internal, both */\r
char state; /**< state for tracing: 0 = no client connected, 1 = client connected */\r
+ char *ECUVersionString; /**< Version string to send to client. Loaded from a file at startup. May be null. */\r
} DltDaemon;\r
\r
/**\r
* @param appid pointer to application id to be used in response message\r
* @param contid pointer to context id to be used in response message\r
* @param verbose if set to true verbose information is printed out.\r
+ * @return -1 if there is an error or buffer is full\r
*/\r
-void dlt_daemon_control_send_control_message(int sock, DltDaemon *daemon, DltMessage *msg, char* appid, char* contid, int verbose);\r
+int dlt_daemon_control_send_control_message(int sock, DltDaemon *daemon, DltMessage *msg, char* appid, char* contid, int verbose);\r
\r
/**\r
* Process and generate response to received sw injection control message\r
* @param sock connection handle used for sending response\r
* @param daemon pointer to dlt daemon structure\r
* @param verbose if set to true verbose information is printed out.\r
+ * @return -1 if there is an error or buffer overflow, else 0\r
*/\r
-void dlt_daemon_control_message_buffer_overflow(int sock, DltDaemon *daemon, int verbose);\r
+int dlt_daemon_control_message_buffer_overflow(int sock, DltDaemon *daemon, unsigned int overflow_counter,char* apid, int verbose);\r
/**\r
* Process reset to factory default control message\r
* @param daemon pointer to dlt daemon structure\r
* @param verbose if set to true verbose information is printed out.\r
*/\r
void dlt_daemon_control_message_time(int sock, DltDaemon *daemon, int verbose);\r
-\r
#ifdef __cplusplus\r
}\r
#endif\r