devpts: Support TCGETS2, TCSETS2, TCSETSW2, TCSETSF2#12662
Merged
copybara-service[bot] merged 2 commits intomasterfrom Mar 15, 2026
Merged
devpts: Support TCGETS2, TCSETS2, TCSETSW2, TCSETSF2#12662copybara-service[bot] merged 2 commits intomasterfrom
copybara-service[bot] merged 2 commits intomasterfrom
Conversation
glibc 2.42 uses TCGETS2 in isatty, and fails to properly detect ttys without TCGETS2 supported. This commit also adds support for passing additional TTY file descriptors (fd numbers > 2) from the host, which is needed by the new host_pty test but may also be independently useful. In line_discipline.go, ensure that termios state is not overwritten on CopyIn failure (e.g. EFAULT). This was reported in review. A regression test is added. Move kernel_termios operators to pty_util for reuse.
eed5dae to
4fae23b
Compare
4ddfb0f to
f60c938
Compare
PiperOrigin-RevId: 883843637
f60c938 to
9355540
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
devpts: Support TCGETS2, TCSETS2, TCSETSW2, TCSETSF2
glibc 2.42 uses TCGETS2 in isatty, and fails to properly detect ttys
without TCGETS2 supported.
This commit also adds support for treating additional host TTY file descriptors (not just stdin/stdout/stderr) passed to a container process as TTYs inside the sandbox. Previously, such file descriptors were not considered TTYs inside the sandbox.
FUTURE_COPYBARA_INTEGRATE_REVIEW=#12589 from jbms:tcgets2 b8a4f24