[Lldb-commits] [lldb] [lldb] Removed gdbserver ports map from lldb-server (PR #104238)

Pavel Labath via lldb-commits lldb-commits at lists.llvm.org
Thu Aug 15 05:28:25 PDT 2024


================
@@ -666,7 +756,23 @@ ConnectionStatus
 ConnectionFileDescriptor::ConnectFD(llvm::StringRef s,
                                     socket_id_callback_type socket_id_callback,
                                     Status *error_ptr) {
-#if LLDB_ENABLE_POSIX
+#ifdef _WIN32
+  int64_t fd = -1;
+  if (!s.getAsInteger(0, fd)) {
+    // Assume we own fd.
+    std::unique_ptr<TCPSocket> tcp_socket =
+        std::make_unique<TCPSocket>((NativeSocket)fd, true, false);
+    m_io_sp = std::move(tcp_socket);
+    m_uri = s.str();
+    return eConnectionStatusSuccess;
+  }
----------------
labath wrote:

I don't exactly have an alternative in mind yet, but I'm not sure this is a good idea. File descriptors are a thing on windows as well (though, IIUC, they're more of like an in-process thing rather than a kernel entity), and we do have code which treats them as such, so I think it could be confusing that this functions considers an "fd" to be a socket handle.

https://github.com/llvm/llvm-project/pull/104238


More information about the lldb-commits mailing list