diff mbox

cifs-utils: Create man pages for cifs.idmap program (try #2)

Message ID 1306951902-14115-1-git-send-email-shirishppargaonkar@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Shirish Pargaonkar June 1, 2011, 6:11 p.m. UTC
From: Shirish Pargaonkar <shirishpargaonkar@gmail.com>


Create man pages for program cifs.idmap
Enable cifs.idmap config option by default.


Signed-off-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com>
---
 Makefile.am     |   14 ++++++++-
 cifs.idmap.8.in |   90 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 configure.ac    |    7 +++-
 3 files changed, 108 insertions(+), 3 deletions(-)
 create mode 100644 cifs.idmap.8.in

Comments

Jeff Layton June 1, 2011, 7:28 p.m. UTC | #1
On Wed,  1 Jun 2011 13:11:42 -0500
shirishpargaonkar@gmail.com wrote:

> From: Shirish Pargaonkar <shirishpargaonkar@gmail.com>
> 
> 
> Create man pages for program cifs.idmap
> Enable cifs.idmap config option by default.
> 
> 
> Signed-off-by: Shirish Pargaonkar <shirishpargaonkar@gmail.com>
> ---
>  Makefile.am     |   14 ++++++++-
>  cifs.idmap.8.in |   90 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  configure.ac    |    7 +++-
>  3 files changed, 108 insertions(+), 3 deletions(-)
>  create mode 100644 cifs.idmap.8.in
> 
> diff --git a/Makefile.am b/Makefile.am
> index 6046369..4938447 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -9,6 +9,7 @@ mount_cifs_LDADD = $(LIBCAP) $(CAPNG_LDADD)
>  man_MANS = mount.cifs.8
>  
>  sbin_PROGRAMS =
> +clean-local: clean-local-upcall clean-local-idmap
>  
>  if CONFIG_CIFSUPCALL
>  sbin_PROGRAMS += cifs.upcall
> @@ -22,8 +23,10 @@ man_MANS += cifs.upcall.8
>  #
>  cifs.upcall.8: cifs.upcall.8.in
>  	$(SED) 's,[@]sbindir@,$(sbindir),' $(srcdir)/$@.in > $@-t && mv $@-t $@
> +endif
>  
> -clean-local:
> +clean-local-upcall:
> +if CONFIG_CIFSUPCALL
>  	rm -f cifs.upcall.8 cifs.upcall.8-t
>  endif
>  
> @@ -37,4 +40,13 @@ if CONFIG_CIFSIDMAP
>  sbin_PROGRAMS += cifs.idmap
>  cifs_idmap_SOURCES = cifs.idmap.c
>  cifs_idmap_LDADD = -lkeyutils $(WINB_LDADD)
> +man_MANS += cifs.idmap.8
> +
> +cifs.idmap.8: cifs.idmap.8.in
> +	$(SED) 's,[@]sbindir@,$(sbindir),' $(srcdir)/$@.in > $@-t && mv $@-t $@
> +endif
> +
> +clean-local-idmap:
> +if CONFIG_CIFSIDMAP
> +	rm -f cifs.idmap.8 cifs.idmap.8-t
>  endif
> diff --git a/cifs.idmap.8.in b/cifs.idmap.8.in
> new file mode 100644
> index 0000000..fb2e826
> --- /dev/null
> +++ b/cifs.idmap.8.in
> @@ -0,0 +1,90 @@
> +'\" t
> +.\"     Title: cifs.idmap
> +.\"    Author: [see the "AUTHOR" section]
> +.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
> +.\"      Date: 05/26/2011
> +.\"    Manual: System Administration tools
> +.\"    Source: cifs-utils 4.0
> +.\"  Language: English
> +.\"
> +.TH "CIFS\&.IDMAP" "8" "05/26/2011" "cifs-utils 4\&.0" "System Administration tools"
> +.\" -----------------------------------------------------------------
> +.\" * set default formatting
> +.\" -----------------------------------------------------------------
> +.\" disable hyphenation
> +.nh
> +.\" disable justification (adjust text to left margin only)
> +.ad l
> +.\" -----------------------------------------------------------------
> +.\" * MAIN CONTENT STARTS HERE *
> +.\" -----------------------------------------------------------------
> +.SH "NAME"
> +cifs.idmap \- Userspace helper for mapping ids for Common Internet File System (CIFS)
> +.SH "SYNOPSIS"
> +.HP \w'\ 'u
> +cifs\&.idmap [\-\-version|\-v] {keyid}
> +.SH "DESCRIPTION"
> +.PP
> +This tool is part of the cifs-utils suite\&.
> +.PP
> +cifs\&.idmap is a userspace helper program for the linux CIFS client filesystem\&. There are a number of activities that the kernel cannot easily do itself\&. This program is a callout program that does these things for the kernel and then returns the result\&.
> +.PP
> +cifs\&.idmap is generally intended to be run when the kernel calls request\-key(8)
> +for a particular key type\&. While it can be run directly from the command\-line, it is not generally intended to be run that way\&.
> +.PP
> +cifs\&.idmap works in conjuction with winbind facility of Samba suite to map owner and group SIDs to uids and gids respectively.  It is best utilized when
> +.br
> +\t\- a mount option of cifsacl is specified when mounting a cifs share
> +.br
> +\t\- winbind is specified as one of the search entries for passwd and group databases in file /etc/nsswitch.conf
> +.br
> +\t\- file smb.conf has winbind specific entries
> +.br
> +\t\- winbind daemon program is running
> +.br
> +.sp
> +In case winbind and cifs.idmap facilities are unavailable, file objects in a mounted share are assigned uid and gid of the credentials of the process that mounted the share.  So it is strongly recomemended to use mount options of uid and gid to specify a default uid and gid to map owner SIDs and group SIDs respectively in case services of winbind and cifs.idmap facility are unavailable.  
> +.SH "OPTIONS"
> +.PP
> +\-\-version|\-v
> +.RS 4
> +Print version number and exit\&.
> +.RE
> +.SH "CONFIGURATION FOR KEYCTL"
> +.PP
> +cifs\&.idmap is designed to be called from the kernel via the request\-key callout program\&. This requires that request\-key be told where and how to call this program\&. Currently cifs\&.idmap handles a key type of:
> +.PP
> +cifs\&.idmap
> +.RS 4
> +This keytype is for mapping a SID to either an uid or a gid
> +.RE
> +.PP
> +To make this program useful for CIFS, you will need to set up entry for it in request\-key\&.conf(5)\&. Here is an example of an entry for this key type:
> +.sp
> +.if n \{\
> +.RS 4
> +.\}
> +.nf
> +#OPERATION  TYPE           D C PROGRAM ARG1 ARG2\&.\&.\&.
> +#=========  =============  = = ================================
> +create      cifs\&.idmap   * * @sbindir@/cifs\&.idmap %k
> +.fi
> +.if n \{\
> +.RE
> +.\}
> +.PP
> +See
> +\fBrequest-key.conf5\fR()
> +for more info on each field\&.
> +.SH "SEE ALSO"
> +.PP
> +
> +\fBrequest-key.conf\fR(5),
> +\fBmount.cifs\fR(8)
> +.SH "AUTHOR"
> +.PP
> +Shirish Pargaonkar wrote the cifs\&.idmap program\&.
> +.PP
> +The
> +Linux CIFS Mailing list
> +is the preferred place to ask questions regarding these programs\&.
> diff --git a/configure.ac b/configure.ac
> index 6cac703..e21f23e 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -26,7 +26,7 @@ AC_ARG_ENABLE(cifsidmap,
>  	[AC_HELP_STRING([--enable-cifsidmap],
>  			[Create cifs.idmap binary @<:@default=no@:>@])],
>  	enable_cifsidmap=$enableval,
> -	enable_cifsidmap="no")
> +	enable_cifsidmap="maybe")
>  
>  # Checks for programs.
>  AC_PROG_CC
> @@ -88,6 +88,9 @@ if test $enable_cifsupcall != "no" -o $enable_cifsidmap != "no"; then
>  				fi
>  				if test "$enable_cifsidmap" = "yes"; then
>  					AC_MSG_ERROR([keyutils.h not found, consider installing keyutils-libs-devel.])
> +				else
> +					AC_MSG_WARN([keyutils.h not found, consider installing keyutils-libs-devel. Disabling cifs.idmap.])
> +					enable_cifsidmap="no"
>  				fi
>  			])
>  fi
> @@ -152,7 +155,7 @@ LIBS=$cu_saved_libs
>  
>  AM_CONDITIONAL(CONFIG_CIFSUPCALL, [test "$enable_cifsupcall" != "no"])
>  AM_CONDITIONAL(CONFIG_CIFSCREDS, [test "$enable_cifscreds" = "yes"])
> -AM_CONDITIONAL(CONFIG_CIFSIDMAP, [test "$enable_cifsidmap" = "yes"])
> +AM_CONDITIONAL(CONFIG_CIFSIDMAP, [test "$enable_cifsidmap" != "no"])
>  
>  LIBCAP_NG_PATH
>  

Committed, along with a patch to clean up a few whitespace and minor manpage nits.
diff mbox

Patch

diff --git a/Makefile.am b/Makefile.am
index 6046369..4938447 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -9,6 +9,7 @@  mount_cifs_LDADD = $(LIBCAP) $(CAPNG_LDADD)
 man_MANS = mount.cifs.8
 
 sbin_PROGRAMS =
+clean-local: clean-local-upcall clean-local-idmap
 
 if CONFIG_CIFSUPCALL
 sbin_PROGRAMS += cifs.upcall
@@ -22,8 +23,10 @@  man_MANS += cifs.upcall.8
 #
 cifs.upcall.8: cifs.upcall.8.in
 	$(SED) 's,[@]sbindir@,$(sbindir),' $(srcdir)/$@.in > $@-t && mv $@-t $@
+endif
 
-clean-local:
+clean-local-upcall:
+if CONFIG_CIFSUPCALL
 	rm -f cifs.upcall.8 cifs.upcall.8-t
 endif
 
@@ -37,4 +40,13 @@  if CONFIG_CIFSIDMAP
 sbin_PROGRAMS += cifs.idmap
 cifs_idmap_SOURCES = cifs.idmap.c
 cifs_idmap_LDADD = -lkeyutils $(WINB_LDADD)
+man_MANS += cifs.idmap.8
+
+cifs.idmap.8: cifs.idmap.8.in
+	$(SED) 's,[@]sbindir@,$(sbindir),' $(srcdir)/$@.in > $@-t && mv $@-t $@
+endif
+
+clean-local-idmap:
+if CONFIG_CIFSIDMAP
+	rm -f cifs.idmap.8 cifs.idmap.8-t
 endif
diff --git a/cifs.idmap.8.in b/cifs.idmap.8.in
new file mode 100644
index 0000000..fb2e826
--- /dev/null
+++ b/cifs.idmap.8.in
@@ -0,0 +1,90 @@ 
+'\" t
+.\"     Title: cifs.idmap
+.\"    Author: [see the "AUTHOR" section]
+.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
+.\"      Date: 05/26/2011
+.\"    Manual: System Administration tools
+.\"    Source: cifs-utils 4.0
+.\"  Language: English
+.\"
+.TH "CIFS\&.IDMAP" "8" "05/26/2011" "cifs-utils 4\&.0" "System Administration tools"
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+cifs.idmap \- Userspace helper for mapping ids for Common Internet File System (CIFS)
+.SH "SYNOPSIS"
+.HP \w'\ 'u
+cifs\&.idmap [\-\-version|\-v] {keyid}
+.SH "DESCRIPTION"
+.PP
+This tool is part of the cifs-utils suite\&.
+.PP
+cifs\&.idmap is a userspace helper program for the linux CIFS client filesystem\&. There are a number of activities that the kernel cannot easily do itself\&. This program is a callout program that does these things for the kernel and then returns the result\&.
+.PP
+cifs\&.idmap is generally intended to be run when the kernel calls request\-key(8)
+for a particular key type\&. While it can be run directly from the command\-line, it is not generally intended to be run that way\&.
+.PP
+cifs\&.idmap works in conjuction with winbind facility of Samba suite to map owner and group SIDs to uids and gids respectively.  It is best utilized when
+.br
+\t\- a mount option of cifsacl is specified when mounting a cifs share
+.br
+\t\- winbind is specified as one of the search entries for passwd and group databases in file /etc/nsswitch.conf
+.br
+\t\- file smb.conf has winbind specific entries
+.br
+\t\- winbind daemon program is running
+.br
+.sp
+In case winbind and cifs.idmap facilities are unavailable, file objects in a mounted share are assigned uid and gid of the credentials of the process that mounted the share.  So it is strongly recomemended to use mount options of uid and gid to specify a default uid and gid to map owner SIDs and group SIDs respectively in case services of winbind and cifs.idmap facility are unavailable.  
+.SH "OPTIONS"
+.PP
+\-\-version|\-v
+.RS 4
+Print version number and exit\&.
+.RE
+.SH "CONFIGURATION FOR KEYCTL"
+.PP
+cifs\&.idmap is designed to be called from the kernel via the request\-key callout program\&. This requires that request\-key be told where and how to call this program\&. Currently cifs\&.idmap handles a key type of:
+.PP
+cifs\&.idmap
+.RS 4
+This keytype is for mapping a SID to either an uid or a gid
+.RE
+.PP
+To make this program useful for CIFS, you will need to set up entry for it in request\-key\&.conf(5)\&. Here is an example of an entry for this key type:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+#OPERATION  TYPE           D C PROGRAM ARG1 ARG2\&.\&.\&.
+#=========  =============  = = ================================
+create      cifs\&.idmap   * * @sbindir@/cifs\&.idmap %k
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+See
+\fBrequest-key.conf5\fR()
+for more info on each field\&.
+.SH "SEE ALSO"
+.PP
+
+\fBrequest-key.conf\fR(5),
+\fBmount.cifs\fR(8)
+.SH "AUTHOR"
+.PP
+Shirish Pargaonkar wrote the cifs\&.idmap program\&.
+.PP
+The
+Linux CIFS Mailing list
+is the preferred place to ask questions regarding these programs\&.
diff --git a/configure.ac b/configure.ac
index 6cac703..e21f23e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,7 +26,7 @@  AC_ARG_ENABLE(cifsidmap,
 	[AC_HELP_STRING([--enable-cifsidmap],
 			[Create cifs.idmap binary @<:@default=no@:>@])],
 	enable_cifsidmap=$enableval,
-	enable_cifsidmap="no")
+	enable_cifsidmap="maybe")
 
 # Checks for programs.
 AC_PROG_CC
@@ -88,6 +88,9 @@  if test $enable_cifsupcall != "no" -o $enable_cifsidmap != "no"; then
 				fi
 				if test "$enable_cifsidmap" = "yes"; then
 					AC_MSG_ERROR([keyutils.h not found, consider installing keyutils-libs-devel.])
+				else
+					AC_MSG_WARN([keyutils.h not found, consider installing keyutils-libs-devel. Disabling cifs.idmap.])
+					enable_cifsidmap="no"
 				fi
 			])
 fi
@@ -152,7 +155,7 @@  LIBS=$cu_saved_libs
 
 AM_CONDITIONAL(CONFIG_CIFSUPCALL, [test "$enable_cifsupcall" != "no"])
 AM_CONDITIONAL(CONFIG_CIFSCREDS, [test "$enable_cifscreds" = "yes"])
-AM_CONDITIONAL(CONFIG_CIFSIDMAP, [test "$enable_cifsidmap" = "yes"])
+AM_CONDITIONAL(CONFIG_CIFSIDMAP, [test "$enable_cifsidmap" != "no"])
 
 LIBCAP_NG_PATH