blobs: Close file before calling 'AgentSynchronizeData'

The IPMI BLOB handler fills smbios2 file with content and calls
'AgentSynchronizeData' method for synchronization.
Because currently the file is not closed before the call to
'AgentSynchronizeData', this can lead to errors that smbios-mdr tries
to parse file that was not yet flushed to the disk.
Add file close operation to fix the issue.

Tested: tested on the AMD EthanolX CRB.
Before the change on the blob commit operation the file was created
in the BMC filesystem, but the call to 'AgentSynchronizeData' failed
with the error message:
"MDR V2 file size is smaller than mdr header".
After the change the file is correctly created in the BMC filesystem
and the sync operation finishes without any errors.

Change-Id: I7140f24a68e9e27665fe69bb4dd64495aa24c1aa
Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com>
diff --git a/src/smbios-ipmi-blobs/handler.cpp b/src/smbios-ipmi-blobs/handler.cpp
index 5d1921a..8bd7daf 100644
--- a/src/smbios-ipmi-blobs/handler.cpp
+++ b/src/smbios-ipmi-blobs/handler.cpp
@@ -223,6 +223,7 @@
                          sizeof(MDRSMBIOSHeader));
         smbiosFile.write(reinterpret_cast<char*>(blobPtr->buffer.data()),
                          mdrHdr.dataSize);
+        smbiosFile.close();
         blobPtr->state |= blobs::StateFlags::committing;
     }
     catch (const std::ofstream::failure& e)