summaryrefslogtreecommitdiff
path: root/rc/bin
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2016-05-16 22:49:32 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2016-05-16 22:49:32 +0200
commitbd50adc942797ef52ac80ab29b5edca8bddd554b (patch)
tree30339e252f48b34d4b8bf754c24ca0454dcd7e3f /rc/bin
parent83f8d591689cae964ba58fbcf172f6a4fa7003ed (diff)
downloadplan9front-bd50adc942797ef52ac80ab29b5edca8bddd554b.tar.xz
add srvtls and the corresponding tcp17020 service
Diffstat (limited to 'rc/bin')
-rwxr-xr-xrc/bin/service/tcp170202
-rwxr-xr-xrc/bin/srvtls45
2 files changed, 47 insertions, 0 deletions
diff --git a/rc/bin/service/tcp17020 b/rc/bin/service/tcp17020
new file mode 100755
index 000000000..e05556c96
--- /dev/null
+++ b/rc/bin/service/tcp17020
@@ -0,0 +1,2 @@
+#!/bin/rc
+exec tlssrv -A /bin/aux/trampoline 'net!$fs!9fs'
diff --git a/rc/bin/srvtls b/rc/bin/srvtls
new file mode 100755
index 000000000..60804c60c
--- /dev/null
+++ b/rc/bin/srvtls
@@ -0,0 +1,45 @@
+#!/bin/rc
+rfork e
+
+fn usage {
+ echo 'usage: srvtls [ -abcCnq ] [ -k keyspec ] [net!]system[!service] [ srvname [ mtpt ] ]' >[1=2]
+ exit usage
+}
+
+mopt=()
+mtpt=()
+client=(/bin/tlsclient -a)
+
+while(~ $1 -*){
+ switch($1){
+ case -[abcCnq]*; mopt=($mopt $1)
+ case *
+ ~ $#* 1 && usage
+ switch($1){
+ case -k; client=($client $1 $2)
+ case *; usage
+ }
+ shift
+ }
+ shift
+}
+
+switch($#*){
+case 1; srv=/srv/$1
+case 2; srv=/srv/$2
+case 3; srv=/srv/$2; mtpt=$3
+case *; usage
+}
+
+switch($1){
+case *!*!*; host=$1
+case *!*; host=$1!t9fs
+case *; host=net!$1!t9fs
+}
+
+fn post {
+ echo 0 >$srv
+}
+if(test -f $srv || $client $host /bin/rc -c post){
+ ~ $#mtpt 0 || mount $mopt $srv $mtpt
+}