Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

named pipes improvements #1174

Closed
totaam opened this issue Apr 18, 2016 · 14 comments
Closed

named pipes improvements #1174

totaam opened this issue Apr 18, 2016 · 14 comments

Comments

@totaam
Copy link
Collaborator

totaam commented Apr 18, 2016

Issue migrated from trac ticket # 1174

component: platforms | priority: critical | resolution: fixed | keywords: win32 named pipes

2016-04-18 10:31:55: antoine created the issue


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
@totaam
Copy link
Collaborator Author

totaam commented Jul 12, 2016

2016-07-12 17:52:23: antoine commented


Milestone renamed

@totaam
Copy link
Collaborator Author

totaam commented Sep 15, 2016

2016-09-15 07:12:42: antoine uploaded file named-pipes-mess-v2.patch (2.0 KiB)

trying to not deadlock

@totaam
Copy link
Collaborator Author

totaam commented Sep 15, 2016

2016-09-15 07:13:03: antoine changed status from new to assigned

@totaam
Copy link
Collaborator Author

totaam commented Sep 15, 2016

2016-09-15 07:13:03: antoine commented


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.

@totaam
Copy link
Collaborator Author

totaam commented Feb 19, 2017

2017-02-19 06:45:48: antoine changed priority from major to critical

@totaam
Copy link
Collaborator Author

totaam commented Feb 19, 2017

2017-02-19 06:45:48: antoine commented


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.

@totaam
Copy link
Collaborator Author

totaam commented Feb 25, 2017

2017-02-25 12:02:28: antoine uploaded file named-pipes-ctypes.patch (11.4 KiB)

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

@totaam
Copy link
Collaborator Author

totaam commented Feb 26, 2017

2017-02-26 08:52:05: antoine uploaded file named-pipes-ctypes-v3.patch (14.0 KiB)

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

@totaam
Copy link
Collaborator Author

totaam commented Feb 27, 2017

2017-02-27 10:04:11: antoine changed status from assigned to new

@totaam
Copy link
Collaborator Author

totaam commented Feb 27, 2017

2017-02-27 10:04:11: antoine changed owner from antoine to afarr

@totaam
Copy link
Collaborator Author

totaam commented Feb 27, 2017

2017-02-27 10:04:11: antoine commented


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.

@totaam
Copy link
Collaborator Author

totaam commented Jun 20, 2017

2017-06-20 20:55:31: maxmylyn changed status from new to closed

@totaam
Copy link
Collaborator Author

totaam commented Jun 20, 2017

2017-06-20 20:55:31: maxmylyn set resolution to fixed

@totaam
Copy link
Collaborator Author

totaam commented Jun 20, 2017

2017-06-20 20:55:31: maxmylyn commented


Acknowledged, and closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant