diff options
author | Sven Hassler <sven_hassler@mentor.com> | 2015-11-25 14:26:06 +0100 |
---|---|---|
committer | Lutz Helwing <lutz_helwing@mentor.com> | 2015-12-16 17:20:39 +0100 |
commit | 77400754611a8e7982a7ee3c4816ee5f070c0dca (patch) | |
tree | 43ddcfdbaeffa1afaa3df6377838c771ed8a837c /src/kpi/dlt-kpi-common.c | |
parent | 96439591a8be7e3e10a5de9488dde245777318c8 (diff) | |
download | DLT-daemon-77400754611a8e7982a7ee3c4816ee5f070c0dca.tar.gz |
Renamed "procfs" to "kpi", added sync-messages
Diffstat (limited to 'src/kpi/dlt-kpi-common.c')
-rw-r--r-- | src/kpi/dlt-kpi-common.c | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/src/kpi/dlt-kpi-common.c b/src/kpi/dlt-kpi-common.c new file mode 100644 index 0000000..c0c7767 --- /dev/null +++ b/src/kpi/dlt-kpi-common.c @@ -0,0 +1,68 @@ +/* + * @licence app begin@ + * SPDX license identifier: MPL-2.0 + * + * Copyright (C) 2011-2015, BMW AG + * + * This file is part of GENIVI Project DLT - Diagnostic Log and Trace. + * + * This Source Code Form is subject to the terms of the + * Mozilla Public License (MPL), v. 2.0. + * If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. + * + * For further information see http://www.genivi.org/. + * @licence end@ + */ + +/*! + * \author Sven Hassler <sven_hassler@mentor.com> + * + * \copyright Copyright © 2011-2015 BMW AG. \n + * License MPL-2.0: Mozilla Public License version 2.0 http://mozilla.org/MPL/2.0/. + * + * \file dlt-kpi-common.c + */ + +#include "dlt-kpi-common.h" + +DltReturnValue dlt_kpi_read_file_compact(char *filename, char **target) +{ + char buffer[BUFFER_SIZE]; + int ret = dlt_kpi_read_file(filename, buffer, BUFFER_SIZE); + if(ret < DLT_RETURN_OK) + return ret; + + if((*target = malloc(strlen(buffer) + 1)) == NULL) + { + fprintf(stderr, "Out of memory!\n"); + return DLT_RETURN_ERROR; + } + + memcpy(*target, buffer, strlen(buffer) + 1); + + return DLT_RETURN_OK; +} + +DltReturnValue dlt_kpi_read_file(char* filename, char* buffer, uint maxLength) +{ + if(filename == NULL || buffer == NULL) + { + fprintf(stderr, "Nullpointer parameter!\n"); + return DLT_RETURN_WRONG_PARAMETER; + } + + FILE* file = fopen(filename, "r"); + if(file == NULL) + { + // fprintf(stderr, "Could not read file %s\n", filename); + return DLT_RETURN_ERROR; + } + + int buflen = fread(buffer, 1, maxLength-1, file); + buffer[buflen] = '\0'; + + fclose(file); + + return DLT_RETURN_OK; +} |