file: rpc_file_exec_run: fix potential memory leak and integer overflow
authorJo-Philipp Wich <jo@mein.io>
Fri, 21 Dec 2018 07:50:36 +0000 (08:50 +0100)
committerJo-Philipp Wich <jo@mein.io>
Fri, 21 Dec 2018 08:00:20 +0000 (09:00 +0100)
commite5243c16eb214d2f6a2008ca4f15c4eb3ec6682c
treeaff898051eed2687ea0ae2b65488b48dd4f632fc
parent3aa81d0dfae167eccc26203bd0c96f3e3450f253
file: rpc_file_exec_run: fix potential memory leak and integer overflow

 - Store the realloc result in a separate pointer so that we can free
   the original on allocation failure
 - Use an explicit uint8_t for the argument vector length instead of
   "char" which might be signed or unsigned, depending on the arch
 - Bail out with an invalid argument error if the argument vector
   exceeds 255 items

Signed-off-by: Jo-Philipp Wich <jo@mein.io>
file.c