Index: b/doc/Makefile.am =================================================================== --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -10,12 +10,12 @@ ocserv.8: ../src/ocserv-args.def @AUTOGEN@ -L../src -DMAN_SECTION=8 -Tagman-cmd.tpl "$<".tmp && \ rm -f "$<".tmp -occtl.8: ../src/occtl/args.def +occtl.8: ../src/occtl/occtl-args.def -$(SED) 's/@subheading \(.*\)/@*\n@var{\1}\n@*/' $< > "$<".tmp && \ @AUTOGEN@ -L../src -DMAN_SECTION=8 -Tagman-cmd.tpl "$<".tmp && \ rm -f "$<".tmp -ocpasswd.8: ../src/ocpasswd/args.def +ocpasswd.8: ../src/ocpasswd/ocpasswd-args.def -$(SED) 's/@subheading \(.*\)/@*\n@var{\1}\n@*/' $< > "$<".tmp && \ @AUTOGEN@ -L../src -DMAN_SECTION=8 -Tagman-cmd.tpl "$<".tmp && \ rm -f "$<".tmp Index: b/src/occtl/Makefile.am =================================================================== --- a/src/occtl/Makefile.am +++ b/src/occtl/Makefile.am @@ -5,7 +5,7 @@ AM_CPPFLAGS += -I$(srcdir)/../../gl/ -I$ $(LIBNL3_CFLAGS) $(LIBPROTOBUF_C_CFLAGS) $(LIBTALLOC_CFLAGS) \ -I$(srcdir)/../common/ -I$(builddir)/../common/ $(CODE_COVERAGE_CFLAGS) -EXTRA_DIST = args.def +EXTRA_DIST = occtl-args.def bin_PROGRAMS = occtl Index: b/src/occtl/args.def =================================================================== --- a/src/occtl/args.def +++ /dev/null @@ -1,105 +0,0 @@ -AutoGen Definitions options; -prog-name = occtl; -prog-title = "OpenConnect VPN server control"; -prog-desc = "OpenConnect VPN server control."; -disable-save; -no-xlate = opt; -gnu-usage; -config-header = config.h; -long-opts; -no-misuse-usage; -short-usage = "Usage: occtl [options] [command]\nocctl --help for usage instructions.\n"; -explain = ""; -#include ../version.inc - -detail = "Openconnect VPN server control (occtl) is a tool to control -the ocserv VPN server."; - -copyright = { - date = "2014-2016"; - owner = "Red Hat"; - author = "Nikos Mavrogiannopoulos"; - eaddr = "openconnect-devel@lists.infradead.org"; - type = gplv2; -}; - -help-value = h; - -flag = { - name = socket-file; - value = s; - arg-type = file; - descrip = "Specify the server's occtl socket file"; - doc = "This option is only needed if you have multiple servers."; -}; - -flag = { - name = json; - value = j; - descrip = "Output will be JSON formatted"; - doc = "This option can only be used with non-interactive output, e.g., 'occtl --json show users'."; -}; - -flag = { - name = no-pager; - value = n; - descrip = "No pager will be used over output data"; - doc = ""; -}; - - -doc-section = { - ds-type = 'SYNOPSIS'; - ds-format = 'texi'; - ds-text = <<-_EOT_ -Openconnect VPN server control (occtl) is a tool to control -the ocserv VPN server. -_EOT_; -}; - -doc-section = { - ds-type = 'DESCRIPTION'; - ds-format = 'texi'; - ds-text = <<-_EOT_ -This a control tool that can be used to send commands to ocserv. When -called without any arguments the tool can be used interactively, where -each command is entered on a command prompt; alternatively the tool -can be called with the command specified as parameter. In the latter -case the tool's exit code will reflect the successful execution of -the command. -_EOT_; -}; - -doc-section = { - ds-type = 'EXAMPLES'; - ds-format = 'texi'; - ds-text = <<-_EOT_ -The tool can be run interactively when run with no arguments. When -arguments are given they are interpreted as commands. For example: -@example -$ occtl show users -@end example - -Any command line arguments to be used as options must preceed the -command (if any), as shown below. -@example -$ occtl --json show users -@end example -_EOT_; -}; - -doc-section = { - ds-type = 'IMPLEMENTATION NOTES'; - ds-format = 'texi'; - ds-text = <<-_EOT_ -This tool uses unix domain sockets to connect to ocserv. -_EOT_; -}; - -doc-section = { - ds-type = 'SEE ALSO'; - ds-format = 'man'; - ds-text = <<-_EOText_ -ocserv(8) -_EOText_; -}; Index: b/src/occtl/occtl-args.def =================================================================== --- /dev/null +++ b/src/occtl/occtl-args.def @@ -0,0 +1,105 @@ +AutoGen Definitions options; +prog-name = occtl; +prog-title = "OpenConnect VPN server control"; +prog-desc = "OpenConnect VPN server control."; +disable-save; +no-xlate = opt; +gnu-usage; +config-header = config.h; +long-opts; +no-misuse-usage; +short-usage = "Usage: occtl [options] [command]\nocctl --help for usage instructions.\n"; +explain = ""; +#include ../version.inc + +detail = "Openconnect VPN server control (occtl) is a tool to control +the ocserv VPN server."; + +copyright = { + date = "2014-2016"; + owner = "Red Hat"; + author = "Nikos Mavrogiannopoulos"; + eaddr = "openconnect-devel@lists.infradead.org"; + type = gplv2; +}; + +help-value = h; + +flag = { + name = socket-file; + value = s; + arg-type = file; + descrip = "Specify the server's occtl socket file"; + doc = "This option is only needed if you have multiple servers."; +}; + +flag = { + name = json; + value = j; + descrip = "Output will be JSON formatted"; + doc = "This option can only be used with non-interactive output, e.g., 'occtl --json show users'."; +}; + +flag = { + name = no-pager; + value = n; + descrip = "No pager will be used over output data"; + doc = ""; +}; + + +doc-section = { + ds-type = 'SYNOPSIS'; + ds-format = 'texi'; + ds-text = <<-_EOT_ +Openconnect VPN server control (occtl) is a tool to control +the ocserv VPN server. +_EOT_; +}; + +doc-section = { + ds-type = 'DESCRIPTION'; + ds-format = 'texi'; + ds-text = <<-_EOT_ +This a control tool that can be used to send commands to ocserv. When +called without any arguments the tool can be used interactively, where +each command is entered on a command prompt; alternatively the tool +can be called with the command specified as parameter. In the latter +case the tool's exit code will reflect the successful execution of +the command. +_EOT_; +}; + +doc-section = { + ds-type = 'EXAMPLES'; + ds-format = 'texi'; + ds-text = <<-_EOT_ +The tool can be run interactively when run with no arguments. When +arguments are given they are interpreted as commands. For example: +@example +$ occtl show users +@end example + +Any command line arguments to be used as options must preceed the +command (if any), as shown below. +@example +$ occtl --json show users +@end example +_EOT_; +}; + +doc-section = { + ds-type = 'IMPLEMENTATION NOTES'; + ds-format = 'texi'; + ds-text = <<-_EOT_ +This tool uses unix domain sockets to connect to ocserv. +_EOT_; +}; + +doc-section = { + ds-type = 'SEE ALSO'; + ds-format = 'man'; + ds-text = <<-_EOText_ +ocserv(8) +_EOText_; +}; Index: b/src/ocpasswd/Makefile.am =================================================================== --- a/src/ocpasswd/Makefile.am +++ b/src/ocpasswd/Makefile.am @@ -6,21 +6,21 @@ AM_CPPFLAGS += -I$(srcdir)/../../gl/ -I$ $(CODE_COVERAGE_CFLAGS) $(LIBGNUTLS_CFLAGS) -EXTRA_DIST = args.def +EXTRA_DIST = ocpasswd-args.def BUILT_SOURCES = args.c args.h bin_PROGRAMS = ocpasswd noinst_LIBRARIES = libcmd-ocpasswd.a -libcmd_ocpasswd_a_SOURCES = args.def args.c args.h +libcmd_ocpasswd_a_SOURCES = ocpasswd-args.def args.c args.h ocpasswd_SOURCES = ocpasswd.c ocpasswd_LDADD = ../../gl/libgnu.a $(NEEDED_LIBOPTS) libcmd-ocpasswd.a ocpasswd_LDADD += $(LIBGNUTLS_LIBS) $(LIBCRYPT) $(CODE_COVERAGE_LDFLAGS) \ $(LIBNETTLE_LIBS) -args.c: $(srcdir)/args.def $(builddir)/../version.inc +args.c: $(srcdir)/ocpasswd-args.def $(builddir)/../version.inc if test "$(AUTOGEN)" = ":";then \ rm -f $(builddir)/args.c; \ rm -f $(builddir)/args.h; \ Index: b/src/ocpasswd/args.def =================================================================== --- a/src/ocpasswd/args.def +++ /dev/null @@ -1,111 +0,0 @@ -AutoGen Definitions options; -prog-name = ocpasswd; -prog-title = "OpenConnect server password utility"; -prog-desc = "OpenConnect VPN server plain password file handling program."; -disable-save; -no-xlate = opt; -gnu-usage; -config-header = config.h; -long-opts; -no-misuse-usage; -short-usage = "Usage: ocpasswd -c [passwd] [options] username\nocpasswd --help for usage instructions.\n"; -explain = ""; -reorder-args; -argument = "[username]"; -#include ../version.inc - -detail = "This program is openconnect password (ocpasswd) utility. It allows the generation -and handling of a 'plain' password file used by ocserv."; - -copyright = { - date = "2013-2016"; - owner = "Nikos Mavrogiannopoulos"; - author = "Nikos Mavrogiannopoulos"; - eaddr = "openconnect-devel@lists.infradead.org"; - type = gplv2; -}; - -flag = { - name = passwd; - value = c; - arg-type = file; - descrip = "Password file"; - doc = ""; -}; - -flag = { - name = groupname; - value = g; - arg-type = string; - descrip = "User's group name"; - doc = ""; -}; - -flag = { - name = delete; - value = d; - descrip = "Delete user"; - doc = "Removes the specified user from the password file"; -}; - -flag = { - name = lock; - value = l; - descrip = "Lock user"; - doc = "Prevents the specified user from logging in"; -}; - -flag = { - name = unlock; - value = u; - descrip = "Unlock user"; - doc = "Re-enables login for the specified user"; -}; - -help-value = h; - - -doc-section = { - ds-type = 'FILES'; - ds-format = 'texi'; - ds-text = <<-_EOT_ -@subheading Password file format -The password format of ocpasswd is as follows. - -@example -username:groupname:encoded-password -@end example - -The crypt(3) encoding is used for the encoded-password. - -_EOT_; -}; - -doc-section = { - ds-type = 'EXAMPLES'; - ds-format = 'texi'; - ds-text = <<-_EOT_ -@subheading Adding a user -@example -$ ocpasswd -c ocpasswd my_username -@end example - -@subheading Locking a user -@example -$ ocpasswd -c ocpasswd -l my_username -@end example - -@subheading Unlocking a user -@example -$ ocpasswd -c ocpasswd -u my_username -@end example -_EOT_; -}; - -doc-section = { - ds-type = 'SEE ALSO'; - ds-format = 'man'; - ds-text = <<-_EOText_ -ocserv(8), occtl(8) -_EOText_; -}; Index: b/src/ocpasswd/ocpasswd-args.def =================================================================== --- /dev/null +++ b/src/ocpasswd/ocpasswd-args.def @@ -0,0 +1,111 @@ +AutoGen Definitions options; +prog-name = ocpasswd; +prog-title = "OpenConnect server password utility"; +prog-desc = "OpenConnect VPN server plain password file handling program."; +disable-save; +no-xlate = opt; +gnu-usage; +config-header = config.h; +long-opts; +no-misuse-usage; +short-usage = "Usage: ocpasswd -c [passwd] [options] username\nocpasswd --help for usage instructions.\n"; +explain = ""; +reorder-args; +argument = "[username]"; +#include ../version.inc + +detail = "This program is openconnect password (ocpasswd) utility. It allows the generation +and handling of a 'plain' password file used by ocserv."; + +copyright = { + date = "2013-2016"; + owner = "Nikos Mavrogiannopoulos"; + author = "Nikos Mavrogiannopoulos"; + eaddr = "openconnect-devel@lists.infradead.org"; + type = gplv2; +}; + +flag = { + name = passwd; + value = c; + arg-type = file; + descrip = "Password file"; + doc = ""; +}; + +flag = { + name = groupname; + value = g; + arg-type = string; + descrip = "User's group name"; + doc = ""; +}; + +flag = { + name = delete; + value = d; + descrip = "Delete user"; + doc = "Removes the specified user from the password file"; +}; + +flag = { + name = lock; + value = l; + descrip = "Lock user"; + doc = "Prevents the specified user from logging in"; +}; + +flag = { + name = unlock; + value = u; + descrip = "Unlock user"; + doc = "Re-enables login for the specified user"; +}; + +help-value = h; + + +doc-section = { + ds-type = 'FILES'; + ds-format = 'texi'; + ds-text = <<-_EOT_ +@subheading Password file format +The password format of ocpasswd is as follows. + +@example +username:groupname:encoded-password +@end example + +The crypt(3) encoding is used for the encoded-password. + +_EOT_; +}; + +doc-section = { + ds-type = 'EXAMPLES'; + ds-format = 'texi'; + ds-text = <<-_EOT_ +@subheading Adding a user +@example +$ ocpasswd -c ocpasswd my_username +@end example + +@subheading Locking a user +@example +$ ocpasswd -c ocpasswd -l my_username +@end example + +@subheading Unlocking a user +@example +$ ocpasswd -c ocpasswd -u my_username +@end example +_EOT_; +}; + +doc-section = { + ds-type = 'SEE ALSO'; + ds-format = 'man'; + ds-text = <<-_EOText_ +ocserv(8), occtl(8) +_EOText_; +};