Improved RPC library with added bounds checking to stop memory corruption, removed memory leaks, Arduino pin names, better object discovery.
Fork of mbed-rpc by
I have added bounds checking in both Argument and Reply classes to stop existing buffer over-runs in both classes.
Added the ability to discover the name and class of an RPC object to allow better discovery of existing objects on a server. Removed a memory leak with externally created RPC objects. Ensured consistency so that externally created objects can't be deleted using the RPC interface and are correctly listed after RPC::clear.
Updated RPCVariable to use references instead of pointers to ensure that the compiler checks that there is always a valid backing variable. Also removed RPC new/delete functionality as this is not valid. Added a specialisation of RPCVariable to allow for strings to be read and written via RPC.
Added Arduino pin names to parse_pins, currently only for FRDM boards but same code should work for others just need to add them to the #ifdef.
History
Updates to improve robustness and remove memory leak. Added RCVariable specialisation for char buffer.
2015-03-30, by rhourahane [Mon, 30 Mar 2015 16:43:47 +0000] rev 10
Updates to improve robustness and remove memory leak. Added RCVariable specialisation for char buffer.
Updates to remove possible buffer overflow issues.
2015-03-23, by rhourahane [Mon, 23 Mar 2015 20:10:24 +0000] rev 9
Updates to remove possible buffer overflow issues.
Synchronized with git revision b36cbfe9f095645336e02d7f812d481bdf170ffc
2015-02-09, by mbed_official [Mon, 09 Feb 2015 09:15:22 +0000] rev 8
Synchronized with git revision b36cbfe9f095645336e02d7f812d481bdf170ffc
Full URL: https://github.com/mbedmicro/mbed/commit/b36cbfe9f095645336e02d7f812d481bdf170ffc/
Fix target issues for TARGET_LPC4088_DM
Synchronized with git revision a8b7f5df2cb5d7a76fda549a15b91fdaba6e2986
2014-05-27, by mbed_official [Tue, 27 May 2014 08:30:27 +0100] rev 7
Synchronized with git revision a8b7f5df2cb5d7a76fda549a15b91fdaba6e2986
Full URL: https://github.com/mbedmicro/mbed/commit/a8b7f5df2cb5d7a76fda549a15b91fdaba6e2986/
[KLXX] Added RPC + RTOS support (KL05Z)
Synchronized with git revision 283e990f46281170c25714713c465f4a376cc5c3
2014-04-03, by mbed_official [Thu, 03 Apr 2014 20:45:12 +0100] rev 6
Synchronized with git revision 283e990f46281170c25714713c465f4a376cc5c3
Full URL: https://github.com/mbedmicro/mbed/commit/283e990f46281170c25714713c465f4a376cc5c3/
Sync with official mbed library release 66
2013-08-19, by bogdanm [Mon, 19 Aug 2013 18:37:40 +0300] rev 5
Sync with official mbed library release 66
Synch with latest https://github.com/mbedmicro/mbed changes
2013-08-08, by emilmont [Thu, 08 Aug 2013 15:43:25 +0100] rev 4
Synch with latest https://github.com/mbedmicro/mbed changes
Add LPC4088 target
2013-05-30, by emilmont [Thu, 30 May 2013 17:07:09 +0100] rev 3
Add LPC4088 target
Fix typo in mbed-rpc parse_pins
2013-04-24, by emilmont [Wed, 24 Apr 2013 15:02:07 +0000] rev 2
Fix typo in mbed-rpc parse_pins
Update license
2013-04-22, by emilmont [Mon, 22 Apr 2013 17:50:11 +0100] rev 1
Update license
Add "parse_pins" function removed from the mbed library