xpra icon
Bug tracker and wiki

Opened 3 years ago

Closed 18 months ago

#1174 closed defect (fixed)

named pipes improvements

Reported by: Antoine Martin Owned by: alas
Priority: critical Milestone: 2.0
Component: platforms Version: trunk
Keywords: win32 named pipes Cc:

Description

Follow up from #1150

  • use the "socket-dir" as named pipe path (currently hard-coded to Xpra\) and use the "socket-dirs" as the list of named pipe paths we search
  • shadow server crashes easily with debug logging (could be the same issue as #1149)
  • non-trivial clients (ie: xpra attach) cause garbage to be received by the server

Attachments (3)

named-pipes-mess-v2.patch (2.0 KB) - added by Antoine Martin 2 years ago.
trying to not deadlock
named-pipes-ctypes.patch (11.4 KB) - added by Antoine Martin 22 months ago.
ctypes implementation that doesn't crash! (also doesn't work..)
named-pipes-ctypes-v3.patch (14.0 KB) - added by Antoine Martin 22 months ago.
can connect and read the packet.. but we need overlapped IO to both read and write without blocking, oh joy

Download all attachments as: .zip

Change History (8)

comment:1 Changed 2 years ago by Antoine Martin

Milestone: 0.181.0

Milestone renamed

Changed 2 years ago by Antoine Martin

Attachment: named-pipes-mess-v2.patch added

trying to not deadlock

comment:2 Changed 2 years ago by Antoine Martin

Milestone: 1.0future
Status: newassigned

r13735 is enough to be able to use "xpra info" and "xpra version" against a local win32 server (ie: "xpra shadow"), but not enough to connect as a client: when it doesn't deadlock on the named pipe, it seems to choke on the "logging" packets? (could be an encoding issue)
"xpra stop" kinda works, but again you need to run another command to get the named pipe thread to exit.
It's a mess and I really don't have time for this awful Microsoft API style.

comment:3 Changed 22 months ago by Antoine Martin

Milestone: future2.0
Priority: majorcritical

Named pipe code is currently broken by the move to ctypes (#678).
If this cannot be fixed in time, the named pipe code will have to be disabled.

Changed 22 months ago by Antoine Martin

Attachment: named-pipes-ctypes.patch added

ctypes implementation that doesn't crash! (also doesn't work..)

Changed 22 months ago by Antoine Martin

Attachment: named-pipes-ctypes-v3.patch added

can connect and read the packet.. but we need overlapped IO to both read and write without blocking, oh joy

comment:4 Changed 22 months ago by Antoine Martin

Owner: changed from Antoine Martin to alas
Status: assignednew

Done in r15179. That was hard.

Some pointers that led me to the solution:


This also adds the "-d named-pipe" debug flag.

What this feature does: we can now query a running shadow server ("xpra info", "xpra list", "xpra version", "xpra stop", etc..) and even attach to it over named pipes. Follow up in #1454

@afarr: this is a FYI, feel free to close.

Last edited 22 months ago by Antoine Martin (previous) (diff)

comment:5 Changed 18 months ago by J. Max Mena

Resolution: fixed
Status: newclosed

Acknowledged, and closing.

Note: See TracTickets for help on using tickets.