File Transfer Rework
Description
Rework FileTransfer (currently in samples) to make it a generic S2OPC server module.
Code version identification
Current behavior
Sample (toolkit_demo_file_transfer.c) using internal file storage (with certain limitations).
Expected behavior
Generic toolkit for OPC UA file transfer functionality.
The main change is to replace the file's internal storage mode (during all processes): File (before) -> Byte string (after enhancement)
Security impact
- None
Implementation
- Internal storage : ByteString
- User Cb: on open and close methods (offers the user the possibility of downloading/saving content in a hard file on their own.
-> New API on server_wrapper: libs2opc_file_transfer.h -> New sample (using this API): toolkit_demo_file_transfer_new.c
Limitations :
- Allows only one simultaneous opening per file.
- A file handle remains valid on close session (standard OPC UA deviation).
- UserWritable variable are not supported (initialize to
trueat the first open method call, when Writable variable is not defined)
The next steps will be addressed in the ticket #1690
Edited by Sebastien Tajan