From c22f60e6e55f1bf300dd76d2222a93911f3b2bb2 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Thu, 12 Oct 2023 04:00:49 +0000 Subject: automatic import of xen --- xenconsole-no-multiple-connections.patch | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 xenconsole-no-multiple-connections.patch (limited to 'xenconsole-no-multiple-connections.patch') diff --git a/xenconsole-no-multiple-connections.patch b/xenconsole-no-multiple-connections.patch new file mode 100644 index 0000000..89bb169 --- /dev/null +++ b/xenconsole-no-multiple-connections.patch @@ -0,0 +1,27 @@ +Index: xen-4.8.0-testing/tools/console/client/main.c +=================================================================== +--- xen-4.8.0-testing.orig/tools/console/client/main.c ++++ xen-4.8.0-testing/tools/console/client/main.c +@@ -101,6 +101,7 @@ static int get_pty_fd(struct xs_handle * + * Assumes there is already a watch set in the store for this path. */ + { + struct timeval tv; ++ struct flock lock; + fd_set watch_fdset; + int xs_fd = xs_fileno(xs), pty_fd = -1; + int start, now; +@@ -124,6 +125,14 @@ static int get_pty_fd(struct xs_handle * + pty_fd = open(pty_path, O_RDWR | O_NOCTTY); + if (pty_fd == -1) + warn("Could not open tty `%s'", pty_path); ++ else { ++ memset(&lock, 0, sizeof(lock)); ++ lock.l_type = F_WRLCK; ++ lock.l_whence = SEEK_SET; ++ if (fcntl(pty_fd, F_SETLK, &lock) != 0) ++ err(errno, "Could not lock tty '%s'", ++ pty_path); ++ } + } + free(pty_path); + } -- cgit v1.2.3