summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--pkg/abi/linux/ioctl.go1
-rw-r--r--pkg/sentry/fs/tty/slave.go6
2 files changed, 7 insertions, 0 deletions
diff --git a/pkg/abi/linux/ioctl.go b/pkg/abi/linux/ioctl.go
index 1c9dc7b03..afd9ee82b 100644
--- a/pkg/abi/linux/ioctl.go
+++ b/pkg/abi/linux/ioctl.go
@@ -22,6 +22,7 @@ const (
TCSETS = 0x00005402
TCSETSW = 0x00005403
TCSETSF = 0x00005404
+ TIOCSCTTY = 0x0000540e
TIOCGPGRP = 0x0000540f
TIOCSPGRP = 0x00005410
TIOCOUTQ = 0x00005411
diff --git a/pkg/sentry/fs/tty/slave.go b/pkg/sentry/fs/tty/slave.go
index 963331b9b..4a0d4fdb9 100644
--- a/pkg/sentry/fs/tty/slave.go
+++ b/pkg/sentry/fs/tty/slave.go
@@ -154,6 +154,12 @@ func (sf *slaveFileOperations) Ioctl(ctx context.Context, io usermem.IO, args ar
return 0, sf.si.t.ld.windowSize(ctx, io, args)
case linux.TIOCSWINSZ:
return 0, sf.si.t.ld.setWindowSize(ctx, io, args)
+ case linux.TIOCSCTTY:
+ // Make the given terminal the controlling terminal of the
+ // calling process.
+ // TODO: Implement once we have support for job
+ // control.
+ return 0, nil
default:
return 0, syserror.ENOTTY
}