diff options
author | Tzafrir Cohen <tzafrir.cohen@xorcom.com> | 2009-08-12 15:36:08 +0000 |
---|---|---|
committer | Tzafrir Cohen <tzafrir.cohen@xorcom.com> | 2009-08-12 15:36:08 +0000 |
commit | b7ec9fa5f38fa40cc618f523c428f5172f3fb40c (patch) | |
tree | 2ac1ea1fa2fbc108ba228845872279e895ff8dc4 | |
parent | 6c2c899d600b4264a6d2876b854672015438dbda (diff) |
rapid-tunneling: bash completion for rtadm
git-svn-id: svn+ssh://xorcom/home/svn/debs/components/rapid-tunneling@7314 283159da-0705-0410-b60c-f2062b4bb6ad
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | debian/rapid-tunneling-server.install | 1 | ||||
-rw-r--r-- | rapid-tunneling.spec | 1 | ||||
-rw-r--r-- | rtadm.bash_completion | 53 |
4 files changed, 57 insertions, 0 deletions
@@ -67,6 +67,8 @@ install: install -m 644 gui/* $(DESTDIR)$(WWWHOME)/ install -m 755 -d $(DESTDIR)/etc/httpd/conf.d install -m 644 rapid-tunneling.conf $(DESTDIR)/etc/httpd/conf.d/ + install -m 755 -d $(DESTDIR)/etc/bash_completion.d + install -m 644 rtadm.bash_completion $(DESTDIR)/etc/bash_completion.d/rtadm .PHONY: clean dummy dummy: diff --git a/debian/rapid-tunneling-server.install b/debian/rapid-tunneling-server.install index e427762..8e3b9ab 100644 --- a/debian/rapid-tunneling-server.install +++ b/debian/rapid-tunneling-server.install @@ -1,3 +1,4 @@ +etc/bash_completion.d/rtadm etc/rapid-tunneling/rtadm etc/ssh/sshd_support_config usr/share/rapid-tunneling/support_env diff --git a/rapid-tunneling.spec b/rapid-tunneling.spec index 5ed12cb..71f14f2 100644 --- a/rapid-tunneling.spec +++ b/rapid-tunneling.spec @@ -113,6 +113,7 @@ service httpd reload %files server %defattr(-, root, root, 0755) +%config /etc/bash_completion.d/rtadm %config(noreplace) /etc/rapid-tunneling/rtadm %config(noreplace) /etc/ssh/sshd_support_config %config /etc/init.d/sshd_support diff --git a/rtadm.bash_completion b/rtadm.bash_completion new file mode 100644 index 0000000..15e3c70 --- /dev/null +++ b/rtadm.bash_completion @@ -0,0 +1,53 @@ +# Bash completion for rtadm + +_rtadm_ra_hosts_disabled() { + awk '/^#DISABLED#/ {print $5}' .ssh/authorized_keys | cut -d- -f3 +} + +_rtadm_ra_hosts_enabled() { + awk '/^[^#].* ra-/ {print $5}' .ssh/authorized_keys | cut -d- -f3 +} + +_rtadm_ra_hosts() { + awk '/ ra-/ {print $5}' .ssh/authorized_keys | cut -d- -f3 +} + +_rtadm() { + local cur commands command hosts + + COMPREPLY=() + cur=`_get_cword` + + commands='create show enable disable disconnect delete' + + if [[ $COMP_CWORD -eq 1 ]] ; then + COMPREPLY=( $( compgen -W "$commands" -- $cur ) ) + return 0 + fi + + + command=${COMP_WORDS[1]} + case "$command" in + create) + # Fixme: some completion here. + : #create [-e] port newname + ;; + show) : # No parameters here + ;; + enable) + hosts=`_rtadm_ra_hosts_disabled` + COMPREPLY=( $( compgen -W "$hosts" -- $cur ) ) + ;; + disable|disconnect) + hosts=`_rtadm_ra_hosts_enabled` + COMPREPLY=( $( compgen -W "$hosts" -- $cur ) ) + ;; + delete) + hosts=`_rtadm_ra_hosts` + COMPREPLY=( $( compgen -W "$hosts" -- $cur ) ) + ;; + esac + return 0 +} + +complete -F _rtadm rtadm |