From 9f42eaf58fb2154b337ecaf77abd5908557fbf12 Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Mon, 31 Oct 2022 14:10:58 -0700 Subject: [PATCH] Read more than 1 character at a time --- xterm/shellserver.pl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/xterm/shellserver.pl b/xterm/shellserver.pl index 7c6d1fd5c..65a959b7c 100755 --- a/xterm/shellserver.pl +++ b/xterm/shellserver.pl @@ -6,7 +6,7 @@ use Net::WebSocket::Server; require './xterm-lib.pl'; -our ($port, $user) = @ARGV; +our ($port, $user, $dir) = @ARGV; # Switch to the user we're running as my @uinfo = getpwnam($user); @@ -27,7 +27,7 @@ else { &foreign_require("proc"); &clean_environment(); $ENV{'TERM'} = 'xterm-256color'; -chdir($uinfo[7] || "/"); +chdir($dir || $uinfo[7] || "/"); our ($shellfh, $pid) = &proc::pty_process_exec($uinfo[8], $uid, $gid); &reset_environment(); if (!$pid) { @@ -100,7 +100,7 @@ Net::WebSocket::Server->new( $shellfh => sub { # Got something from the shell my $buf; - my $ok = sysread($shellfh, $buf, 1); + my $ok = sysread($shellfh, $buf, 1024); if ($ok <= 0) { &cleanup_miniserv(); exit(0);