summaryrefslogtreecommitdiff
path: root/src/lib/dlt_filetransfer.c
diff options
context:
space:
mode:
authorSimon Brandner <simon.brandner@partner.bmw.de>2013-02-05 14:18:48 +0100
committerAlexander Wenzel <Alexander.AW.Wenzel@bmw.de>2013-07-19 16:54:50 +0200
commita52cae9ddaacb322119562c857dcf1636205666f (patch)
treed03e071a7bc425b0dbd7a82f48a6ba0f7d2e2197 /src/lib/dlt_filetransfer.c
parent7f6931bd4d363beda64b05bca6841d62c2c05cea (diff)
downloadDLT-daemon-a52cae9ddaacb322119562c857dcf1636205666f.tar.gz
coverity: add a check variable for get size function
Conflicts: src/lib/dlt_filetransfer.c src/system/dlt-system-filetransfer.c fixed merge problem for getFileSerialNumber Signed-off-by: Alexander Wenzel <Alexander.AW.Wenzel@bmw.de>
Diffstat (limited to 'src/lib/dlt_filetransfer.c')
-rw-r--r--src/lib/dlt_filetransfer.c38
1 files changed, 34 insertions, 4 deletions
diff --git a/src/lib/dlt_filetransfer.c b/src/lib/dlt_filetransfer.c
index dd3e9b9..d0aa038 100644
--- a/src/lib/dlt_filetransfer.c
+++ b/src/lib/dlt_filetransfer.c
@@ -73,7 +73,7 @@ unsigned char buffer[BUFFER_SIZE];
//!Get some information about the file size of a file
/**See stat(2) for more informations.
* @param file Absolute file path
- * @return Returns the size of the file (if it is a regular file or a symbolic link) in bytes. Returns 0 in case of error. Regard: can also be a size value!
+ * @return Returns the size of the file (if it is a regular file or a symbolic link) in bytes.
*/
unsigned long getFilesize(const char* file, int *ok){
struct stat st;
@@ -115,6 +115,7 @@ void stringHash(const char* str, unsigned long *hash )
//!Get some information about the file serial number of a file
/** See stat(2) for more informations.
* @param file Absolute file path
+ * @param value *ok == 0 -> error; *ok == 1 -> ok
* @return Returns a unique number associated with each filename
*/
unsigned long getFileSerialNumber(const char* file, int *ok){
@@ -542,9 +543,19 @@ int dlt_user_log_file_data(DltContext *fileContext,const char *filename, int pac
}
readBytes = fread(buffer, sizeof(char), BUFFER_SIZE, file);
int ok;
+
+ unsigned long fserial = getFileSerialNumber(filename,&ok);
+
+ if (1 != ok)
+ {
+ DLT_LOG(*fileContext,DLT_LOG_ERROR,
+ DLT_STRING("failed to get FileSerialNumber for: "),
+ DLT_STRING(filename));
+ }
+
DLT_LOG(*fileContext,DLT_LOG_INFO,
DLT_STRING("FLDA"),
- DLT_UINT(getFileSerialNumber(filename,&ok)),
+ DLT_UINT(fserial),
DLT_UINT(packageToTransfer),
DLT_RAW(buffer,readBytes),
DLT_STRING("FLDA")
@@ -563,9 +574,19 @@ int dlt_user_log_file_data(DltContext *fileContext,const char *filename, int pac
pkgNumber++;
readBytes = fread(buffer, sizeof(char), BUFFER_SIZE, file);
int ok;
+
+ unsigned long fserial = getFileSerialNumber(filename,&ok);
+
+ if (1 != ok)
+ {
+ DLT_LOG(*fileContext,DLT_LOG_ERROR,
+ DLT_STRING("failed to get FileSerialNumber for: "),
+ DLT_STRING(filename));
+ }
+
DLT_LOG(*fileContext,DLT_LOG_INFO,
DLT_STRING("FLDA"),
- DLT_UINT(getFileSerialNumber(filename,&ok)),
+ DLT_UINT(fserial),
DLT_UINT(pkgNumber),
DLT_RAW(buffer,readBytes),
DLT_STRING("FLDA")
@@ -600,9 +621,18 @@ int dlt_user_log_file_end(DltContext *fileContext,const char *filename,int delet
{
int ok;
+ unsigned long fserial = getFileSerialNumber(filename,&ok);
+
+ if (1 != ok)
+ {
+ DLT_LOG(*fileContext,DLT_LOG_ERROR,
+ DLT_STRING("failed to get FileSerialNumber for: "),
+ DLT_STRING(filename));
+ }
+
DLT_LOG(*fileContext,DLT_LOG_INFO,
DLT_STRING("FLFI"),
- DLT_UINT(getFileSerialNumber(filename,&ok)),
+ DLT_UINT(fserial),
DLT_STRING("FLFI")
);