summaryrefslogtreecommitdiff
path: root/include/lldb/Core/ConnectionFileDescriptor.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/lldb/Core/ConnectionFileDescriptor.h')
-rw-r--r--include/lldb/Core/ConnectionFileDescriptor.h27
1 files changed, 17 insertions, 10 deletions
diff --git a/include/lldb/Core/ConnectionFileDescriptor.h b/include/lldb/Core/ConnectionFileDescriptor.h
index fe704d4cadf7..3a2f0dd1ed0b 100644
--- a/include/lldb/Core/ConnectionFileDescriptor.h
+++ b/include/lldb/Core/ConnectionFileDescriptor.h
@@ -11,20 +11,27 @@
#define liblldb_ConnectionFileDescriptor_h_
// C Includes
+#ifdef _WIN32
+typedef unsigned short in_port_t;
+#else
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
+#endif
// C++ Includes
+#include <memory>
+
// Other libraries and framework includes
// Project includes
#include "lldb/Core/Connection.h"
#include "lldb/Host/Mutex.h"
#include "lldb/Host/Predicate.h"
-#include "lldb/Host/SocketAddress.h"
namespace lldb_private {
+class SocketAddress;
+
class ConnectionFileDescriptor :
public Connection
{
@@ -70,6 +77,13 @@ public:
GetWritePort () const;
protected:
+
+ typedef enum
+ {
+ eFDTypeFile, // Other FD requireing read/write
+ eFDTypeSocket, // Socket requiring send/recv
+ eFDTypeSocketUDP // Unconnected UDP socket requiring sendto/recvfrom
+ } FDType;
void
OpenCommandPipe ();
@@ -96,20 +110,13 @@ protected:
NamedSocketConnect (const char *socket_name, Error *error_ptr);
lldb::ConnectionStatus
- Close (int& fd, Error *error);
-
- typedef enum
- {
- eFDTypeFile, // Other FD requireing read/write
- eFDTypeSocket, // Socket requiring send/recv
- eFDTypeSocketUDP // Unconnected UDP socket requiring sendto/recvfrom
- } FDType;
+ Close (int& fd, FDType type, Error *error);
int m_fd_send;
int m_fd_recv;
FDType m_fd_send_type;
FDType m_fd_recv_type;
- SocketAddress m_udp_send_sockaddr;
+ std::unique_ptr<SocketAddress> m_udp_send_sockaddr;
bool m_should_close_fd; // True if this class should close the file descriptor when it goes away.
uint32_t m_socket_timeout_usec;
int m_pipe_read; // A pipe that we select on the reading end of along with