diff options
author | 23hiro <23hiro@gmail.com> | 2018-01-07 02:44:53 +0100 |
---|---|---|
committer | 23hiro <23hiro@gmail.com> | 2018-01-07 02:44:53 +0100 |
commit | 17291d91bb3063fe8ba0bb5b73c329d317fa7108 (patch) | |
tree | 33000d0a5b92b0f8f27a320a4ffe56adb6967c77 /rc/bin/rconnect | |
parent | 05f721e9987791aae8e07dd4435f04df6ce33c77 (diff) |
rconnect: support -t timeout for aan like in drawterm; also rcpu, rexport/import
Diffstat (limited to 'rc/bin/rconnect')
-rwxr-xr-x | rc/bin/rconnect | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/rc/bin/rconnect b/rc/bin/rconnect index 86558059a..5d672aae7 100755 --- a/rc/bin/rconnect +++ b/rc/bin/rconnect @@ -2,8 +2,9 @@ rfork e argv0=$0 +aanto=86400 #one day fn usage { - echo 'usage:' $argv0 '[-u user] [-k keypattern] [-p] host remotescript localcommand arg ...' >[1=2] + echo 'usage:' $argv0 '[-u user] [-k keypattern] [-p] [-t timeout] host remotescript localcommand arg ...' >[1=2] exit 'usage' } @@ -24,6 +25,7 @@ while(~ $1 -*){ switch($1){ case -k; keyspec=($keyspec $2) case -u; keyspec=($keyspec `{user=$2 pvar user}) + case -t; aanto=$2 case *; usage } shift @@ -53,14 +55,14 @@ if(~ $filter aan){ echo -n 'announce *!0' >[1=3] echo `{cat $netdir/local} || exit bind '#|' /mnt/aan || exit - exec aan $netdir <>/mnt/aan/data1 >[1=0] >[2]/dev/null & + exec aan -m $aanto $netdir <>/mnt/aan/data1 >[1=0] >[2]/dev/null & } } <>/mnt/aan/data >[1=0] >[2]/dev/null { rfork n fn server { echo -n aanserver $netdir >/proc/$pid/args - rm -f /env/^('fn#server' 'fn#aanserver') + rm -f /env/^('fn#server' 'fn#aanserver' 'aanto') . <{n=`{read} && ! ~ $#n 0 && read -c $n} >[2=1] } exec tlssrv -A /bin/rc -c server @@ -69,9 +71,9 @@ if(~ $filter aan){ } fn aanclient { host=`{echo $host | sed 's/(.*)!([^!]+)$/\1/'}^!^`{read | sed 's/(.*)!([^!]+)$/\2/'} || exit - tlsclient -a -o <>{rfork s; aan -c $host >[1=0]} /bin/rc -c 'sendscript $*' $* + tlsclient -a -o <>{rfork s; aan -m $aanto -c $host >[1=0]} /bin/rc -c 'sendscript $*' $* } - exec $argv0 -k $"keyspec $host <{builtin whatis aanserver; echo aanserver} aanclient $* + exec $argv0 -k $"keyspec $host <{builtin whatis aanserver; pvar aanto; echo aanserver} aanclient $* exit } |