[Lldb-commits] [PATCH] Refactor Socket into a first class Host-object

Zachary Turner zturner at google.com
Wed Jul 23 10:29:01 PDT 2014


+greg, since you're probably interested in this.


On Wed, Jul 23, 2014 at 10:27 AM, Zachary Turner <zturner at google.com> wrote:

> Hi tfiala,
>
> This patch takes socket logic out of ConnectionFileDescriptor and moves
> into a Socket class in the Host layer, updating ConnectionFileDescriptor to
> use the Socket class instead of hand-coded socket logic.
>
> Windows provides a wildly different interface to sockets than POSIX, so
> this change will make it easier to make sockets, and ultimately the
> ConnectionFileDescriptor class, work correctly on Windows.
>
> I tested on Windows (as much as I could anyway) and Linux.  On Linux I can
> create an lldb-platform that listens for connections, and I can
> successfully connect to it and send remote commands, all going through the
> new code path.  There is 1 test failure, in TestProcessIO.py.  It seems to
> have trouble with SBProcess.PutSTDIN.  I'm still trying to figure this out,
> but everything else seems to work.  Likely I will need some help testing on
> Mac and getting the Xcode project updated accordingly with the new files.
>
> http://reviews.llvm.org/D4641
>
> Files:
>   include/lldb/Core/ConnectionFileDescriptor.h
>   include/lldb/Host/Editline.h
>   include/lldb/Host/File.h
>   include/lldb/Host/IoObject.h
>   include/lldb/Host/Socket.h
>   source/Core/ConnectionFileDescriptor.cpp
>   source/Host/common/CMakeLists.txt
>   source/Host/common/File.cpp
>   source/Host/common/IoObject.cpp
>   source/Host/common/Socket.cpp
>   source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
>   source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20140723/fcd60506/attachment.html>


More information about the lldb-commits mailing list