******************************************************* RELEASE INFO FOR VERSION 0.3 (August the 7th 2008) ******************************************************* Version 0.3 is a major release with some notable differences, although also still some equally notable TODOs. Main points: - Upto-date with specifications: - RFC 5050 for Bundle Protocol - draft-irtf-dtnrg-tcp-clayer-01.txt (February 25th, 2008) - S60 port working (actually main release now) - CLA architecture rewritten from scratch: - major performance issues resolved - now designed so that stream based CLAs can share almost all code - TCP implemented in this release, BT should be feasible again - Other changes :) Main TODO items: - Application API is still missing. The plan is to make BPA side a server (as in Symbian internal client-server architecture) and applications, e.g., the current DTN Mail demo application, separate GUI Apps. The client-server API could roughly follow the current CBPA class API. - There are still many quite essential features which are either missing or quite lacking; for example: - persistence (bundle DB), retrials, connection sniffing - useful and configurable routing - reactive fragmentation - ... Note that in the release there is some code in S60 version of the CBPAUi which offers the users the choise to open received files using a dialog. This does not work with, e.g., Nokia E70, and should be commented out. Search for FILEOPENLIST. Because the building now includes also signing procedures there is an example build.bat file in the distribution. This is meant to be used with S60, for S80 follow the directions below in 0.2 section. One can create the necessary sertificates using, e.g., the command: makekeys -cert -password yourpassword -len 2048 \ -dname "CN=Test User OU=Development OR=Company CO=FI \ EM=test@company.com" mykey.key mycert.cer Individual file changelog is omitted at this time. ******************************************************* RELEASE INFO FOR VERSION 0.2 (May the 21st 2007) ******************************************************* The main focus of this release is to bring the Symbian DTN software up-to-date with recent specifications, namely: - Bundle protocol specification draft version 08 (or 09) - TCP conversion layer specification draft version 00 Release also includes numerous fixes. It should be noted that known bugs exist, and some areas of the distribution (namely S60 port and bluetooth side) are not supposed to work. Questions and comments regarding to this release should be made to tuomo.hyyrylainen@netlab.tkk.fi LICENCE ------- The software, originally mostly written by Omar Mukhtar, and released under GNU General Public Licence, has been modified by Cheng Luo and Tuomo Hyyryläinen, and is again released under GPL Licence. Version and author information in the source code files are out-dated, sorry for that. BUILDING -------- The main developement work for this release has been made using Nokia DP 2.0 SDK for Series 80, with Microsoft Visual Studio. To build under that environment: - extract the source code archive (bpa directory) under SDK root - cd bpa\group - copy S80\* . - bldmake bldfiles - abld build thumb urel - makesis bpa.pkg Build process for other target platforms or different SDK environments should be straight-forward. For running the software the following directories need to be created and files copied (and edited as fit): - C:\data\dtn\config\ - C:\data\dtn\config\bpa_config.txt - C:\data\dtn\config\routes.txt - C:\data\dtn\in\ - C:\data\dtn\out\ CHANGELOG (Compared to DASMv0.1) -------------------------------- - Directory structure changed; all the following refer to the new structure - AppAgent_ui_s60: No changes (still not working) - AppAgent_ui_s80: - inc/BPAUi.h: - Added support for notifications upon received bundles/status messages - Added support for non-standard MIME messages (unix-type linefeeds) - Added some support for non-MIME messages - res/BPA.rss: - Minor changes related to receiving notifications - src/BPAUi.cpp: - Added support for notifications upon received bundles/status messages - Added support for non-standard MIME-messages (unix-type linefeeds) - Added some support for non-MIME messages - src/BPAView.cpp: - Minor changes related to unix-type linefeed acceptance - bpa: - inc/BPA.h: - Added support for notifications upon received bundles/status messages - inc/BPA_Globals.h: - Updated to new specification versions (bundle protocol specification draft version 8 (or 9; both specify protocol version 5), tcp convergence layer specification draft 0) - inc/Bundle.h: - Updated to new specification versions (bundle protocol specification draft version 8 (or 9; both specify protocol version 5), tcp convergence layer specification draft 0) - Rewrote dictionary generation code (did not generate optimal dictionaries and thus did not work with reference implementation; should be fixed now) - inc/CLA.h: - Updated to new specification version (tcp convergence layer draft 0) - inc/TCPCLA.h: - Updated to new specification version (tcp convergence layer draft 0) - src/*.cpp: - Changed descriptor handling to work on different SDKs - src/BPA.cpp: - Added support for notifications upon received bundles/status messages - Updated to new specification version (bundle protocol specification draft version 8 (or 9; both specify protocol version 5)) - Rewrote fragment reassembly code (worked only with cleanly adjacent fragments coming in order; should be general now) - src/BTRFCommCLA.cpp: - Many changes related to new specification versions; probably not working - src/Bundle.cpp: - Updated to new specification version (bundle protocol specification draft version 8 (or 9; both specify protocol version 5)) - Rewrote dictionary generation code (did not generate optimal dictionaries and thus did not work with reference implementation; should be fixed now) - src/SDNV.cpp: - Fixed a bug related to conversion of zero - src/TCPCLA.cpp: - Updated to new specification version (tcp convergence layer draft 0) - group: - build files changed to conform to (old?) standards: - directory structure changed, related changes made - platform specific build files in subdirs under group directory (should be copied to group directory before building) - references in build and installation package specification files changed to work with different installations, as long as the DASM directory is located in the standard way directly under the SDK root In practice the above mentioned protocol version changes include changed headers, changed header formatting, convergence layer direction indepedence, conververgence layer segmentation etc.