summaryrefslogtreecommitdiff
path: root/src/shared/dlt_common.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/shared/dlt_common.c')
-rw-r--r--src/shared/dlt_common.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/shared/dlt_common.c b/src/shared/dlt_common.c
index 9fe6c88..507c8ad 100644
--- a/src/shared/dlt_common.c
+++ b/src/shared/dlt_common.c
@@ -2350,6 +2350,14 @@ DltReturnValue dlt_buffer_init_dynamic(DltBuffer *buf, uint32_t min_size, uint32
head->write = 0;
head->count = 0;
buf->mem = (unsigned char *)(buf->shm + sizeof(DltBufferHead));
+
+ if (buf->min_size < (uint32_t)sizeof(DltBufferHead)) {
+ dlt_vlog(LOG_ERR,
+ "%s: min_size is too small [%u]\n",
+ __func__, buf->min_size);
+ return DLT_RETURN_WRONG_PARAMETER;
+ }
+
buf->size = (uint32_t) (buf->min_size - sizeof(DltBufferHead));
dlt_vlog(LOG_DEBUG,