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

forward signals #1671

Closed
totaam opened this issue Oct 25, 2017 · 11 comments
Closed

forward signals #1671

totaam opened this issue Oct 25, 2017 · 11 comments

Comments

@totaam
Copy link
Collaborator

totaam commented Oct 25, 2017

Issue migrated from trac ticket # 1671

component: client | priority: major | resolution: fixed

2017-10-25 10:59:47: antoine created the issue


Follow up from #1350: we now create a fake process for each server pid and we will receive signals sent by pagers and window managers, we should forward those to the real server-side process and let it decide what to do with it.

This will require:

  • a new capability: "window.signals"
  • a new server message: ["window-signal", wid, signal] (we send the wid and let the server find the real pid)
@totaam
Copy link
Collaborator Author

totaam commented Nov 24, 2017

2017-11-24 16:41:44: antoine commented


See also #1702

@totaam
Copy link
Collaborator Author

totaam commented Dec 13, 2017

2017-12-13 08:27:50: antoine changed status from new to assigned

@totaam
Copy link
Collaborator Author

totaam commented Dec 13, 2017

2017-12-13 08:27:50: antoine edited the issue description

@totaam
Copy link
Collaborator Author

totaam commented Dec 13, 2017

2017-12-13 08:27:50: antoine commented


Support for SIGINT and SIGTERM forwarding added in r17608, with one important limitation: the watcher process exits when it receives any signal, so this can only be used once per watcher process.

Still TODO: keep watcher running after handling signals and communicate with parent process using stdin / stdout, listen for more signals (SIGUSR1, etc)

@totaam
Copy link
Collaborator Author

totaam commented Dec 13, 2017

2017-12-13 09:53:14: antoine changed status from assigned to new

@totaam
Copy link
Collaborator Author

totaam commented Dec 13, 2017

2017-12-13 09:53:14: antoine changed owner from antoine to maxmylyn

@totaam
Copy link
Collaborator Author

totaam commented Dec 13, 2017

2017-12-13 09:53:14: antoine commented


Done in r17609 + r17616.
The signals we now forward are: SIGINT, SIGTERM, SIGQUIT, SIGCONT, SIGUSR1, SIGUSR2. (this can be changed using the XPRA_WINDOW_SIGNALS env var)

@maxmylyn: mostly a FYI, you can send a signal to the pid of an xpra window and it will be forwarded to the server process.

@totaam
Copy link
Collaborator Author

totaam commented Dec 13, 2017

2017-12-13 17:19:32: maxmylyn changed status from new to closed

@totaam
Copy link
Collaborator Author

totaam commented Dec 13, 2017

2017-12-13 17:19:32: maxmylyn set resolution to fixed

@totaam
Copy link
Collaborator Author

totaam commented Dec 13, 2017

2017-12-13 17:19:32: maxmylyn commented


Neat. Noted. Closing.

@totaam totaam closed this as completed Dec 13, 2017
@totaam
Copy link
Collaborator Author

totaam commented Nov 4, 2018

2018-11-04 13:38:56: antoine commented


Caused a regression and now disabled for python2: #2025.

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