From cee97f7676ee4b6b87cc5e2cddc7971d12cf1ee7 Mon Sep 17 00:00:00 2001 From: Michael Zillgith Date: Mon, 25 Nov 2019 18:14:13 +0100 Subject: [PATCH] MMS server: handle file close with unknown FRSM ID --- src/mms/iso_mms/server/mms_file_service.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/mms/iso_mms/server/mms_file_service.c b/src/mms/iso_mms/server/mms_file_service.c index 81900c3e..6b053747 100644 --- a/src/mms/iso_mms/server/mms_file_service.c +++ b/src/mms/iso_mms/server/mms_file_service.c @@ -871,11 +871,19 @@ mmsServer_handleFileCloseRequest( MmsFileReadStateMachine* frsm = getFrsm(connection, frsmId); - FileSystem_closeFile(frsm->fileHandle); - frsm->fileHandle = NULL; - frsm->frsmId = 0; + if (frsm) { + FileSystem_closeFile(frsm->fileHandle); + frsm->fileHandle = NULL; + frsm->frsmId = 0; - mmsMsg_createFileCloseResponse(invokeId, response); + mmsMsg_createFileCloseResponse(invokeId, response); + } + else { + if (DEBUG_MMS_SERVER) + printf("MMS_SERVER: Unused file ID %i\n", frsmId); + + mmsMsg_createServiceErrorPdu(invokeId, response, MMS_ERROR_FILE_OTHER); + } }