ovyalov added a comment.

In http://reviews.llvm.org/D22081#476766, @labath wrote:

> You raised good points here, Luke.
>
> I've thought about the quoting issue, but as you have already noticed there 
> is no way to pass arguments containing quotes to adb correctly. Thinking 
> about it more, what we could do is detect this situation (look for `'` in the 
> file name) and abort the whole process even before issuing the "adb shell" 
> command.
>
> As for the return value, this should not be a big problem, as further down 
> the line we will discover that this is not a real ELF file and ignore it, but 
> perhaps we could help here by searching for the file name in the first 1K 
> bytes of the result, and ignoring the file if we find it?
>
> Oleksiy, what do you think?


Initially I was thinking that we can pass any shell output to the caller so 
either module cache or ELF ObjectFile will verify its correctness - but since 
Platform::GetFile can be used to download an arbitrary file we should try to 
handle execution errors as much as we can. I added for "/system/bin/sh:" output 
prefix check - presumably it should cover majority of failures. As an 
alternative we can run a command like "$user_cmd || echo $rand_id" and then 
look whether output ends with $rand_id - but it might be an overkill.


http://reviews.llvm.org/D22081



_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to