From owner-p4-projects Mon May 27 16: 0:12 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6AE7C37B405; Mon, 27 May 2002 15:59:46 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 6C60237B400 for ; Mon, 27 May 2002 15:59:45 -0700 (PDT) Received: (from perforce@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g4RMxjY43483 for perforce@freebsd.org; Mon, 27 May 2002 15:59:45 -0700 (PDT) (envelope-from des@freebsd.org) Date: Mon, 27 May 2002 15:59:45 -0700 (PDT) Message-Id: <200205272259.g4RMxjY43483@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: perforce set sender to des@freebsd.org using -f From: Dag-Erling Smorgrav Subject: PERFORCE change 11991 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://people.freebsd.org/~peter/p4db/chv.cgi?CH=11991 Change 11991 by des@des.at.des.thinksec.com on 2002/05/27 15:58:47 Split the summar page in two (one for the standard API, one for extensions). Also add a page about the conversation system, and remove that information from the pam_start page. Sponsored by: DARPA, NAI Labs Affected files ... ... //depot/projects/openpam/MANIFEST#11 edit ... //depot/projects/openpam/doc/man/Makefile#10 edit ... //depot/projects/openpam/doc/man/openpam.man#1 add ... //depot/projects/openpam/doc/man/pam.man#1 add ... //depot/projects/openpam/doc/man/pam_conv.3#1 add ... //depot/projects/openpam/lib/pam_start.c#15 edit ... //depot/projects/openpam/misc/gendoc.pl#16 edit Differences ... ==== //depot/projects/openpam/MANIFEST#11 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $P4: //depot/projects/openpam/MANIFEST#10 $ +# $P4: //depot/projects/openpam/MANIFEST#11 $ # CREDITS HISTORY @@ -15,6 +15,7 @@ doc/Makefile doc/man/Makefile doc/man/openpam.3 +doc/man/openpam.man doc/man/openpam_borrow_cred.3 doc/man/openpam_free_data.3 doc/man/openpam_get_option.3 @@ -23,10 +24,13 @@ doc/man/openpam_restore_cred.3 doc/man/openpam_set_option.3 doc/man/openpam_ttyconv.3 +doc/man/pam.3 +doc/man/pam.man doc/man/pam_acct_mgmt.3 doc/man/pam_authenticate.3 doc/man/pam_chauthtok.3 doc/man/pam_close_session.3 +doc/man/pam_conv.3 doc/man/pam_end.3 doc/man/pam_error.3 doc/man/pam_get_authtok.3 ==== //depot/projects/openpam/doc/man/Makefile#10 (text+ko) ==== @@ -31,64 +31,75 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $P4: //depot/projects/openpam/doc/man/Makefile#9 $ +# $P4: //depot/projects/openpam/doc/man/Makefile#10 $ # GENDOC = ${.CURDIR}/../../misc/gendoc.pl -CMAN = -CMAN += openpam_borrow_cred.3 -CMAN += openpam_free_data.3 -CMAN += openpam_get_option.3 -CMAN += openpam_log.3 -CMAN += openpam_nullconv.3 -CMAN += openpam_restore_cred.3 -CMAN += openpam_set_option.3 -CMAN += openpam_ttyconv.3 -CMAN += pam_acct_mgmt.3 -CMAN += pam_authenticate.3 -CMAN += pam_chauthtok.3 -CMAN += pam_close_session.3 -CMAN += pam_end.3 -CMAN += pam_error.3 -CMAN += pam_get_authtok.3 -CMAN += pam_get_data.3 -CMAN += pam_get_item.3 -CMAN += pam_get_user.3 -CMAN += pam_getenv.3 -CMAN += pam_getenvlist.3 -CMAN += pam_info.3 -CMAN += pam_open_session.3 -CMAN += pam_prompt.3 -CMAN += pam_putenv.3 -CMAN += pam_set_data.3 -CMAN += pam_set_item.3 -CMAN += pam_setcred.3 -CMAN += pam_setenv.3 -CMAN += pam_sm_acct_mgmt.3 -CMAN += pam_sm_authenticate.3 -CMAN += pam_sm_chauthtok.3 -CMAN += pam_sm_close_session.3 -CMAN += pam_sm_open_session.3 -CMAN += pam_sm_setcred.3 -CMAN += pam_start.3 -CMAN += pam_strerror.3 -CMAN += pam_verror.3 -CMAN += pam_vinfo.3 -CMAN += pam_vprompt.3 +# Standard PAM API +PMAN = +PMAN += pam_acct_mgmt.3 +PMAN += pam_authenticate.3 +PMAN += pam_chauthtok.3 +PMAN += pam_close_session.3 +PMAN += pam_end.3 +PMAN += pam_get_data.3 +PMAN += pam_get_item.3 +PMAN += pam_get_user.3 +PMAN += pam_getenv.3 +PMAN += pam_getenvlist.3 +PMAN += pam_open_session.3 +PMAN += pam_putenv.3 +PMAN += pam_set_data.3 +PMAN += pam_set_item.3 +PMAN += pam_setcred.3 +PMAN += pam_start.3 +PMAN += pam_strerror.3 + +# Standard module API +MMAN = +MMAN += pam_sm_acct_mgmt.3 +MMAN += pam_sm_authenticate.3 +MMAN += pam_sm_chauthtok.3 +MMAN += pam_sm_close_session.3 +MMAN += pam_sm_open_session.3 +MMAN += pam_sm_setcred.3 + +# OpenPAM extensions +OMAN = +OMAN += openpam_borrow_cred.3 +OMAN += openpam_free_data.3 +OMAN += openpam_get_option.3 +OMAN += openpam_log.3 +OMAN += openpam_nullconv.3 +OMAN += openpam_restore_cred.3 +OMAN += openpam_set_option.3 +OMAN += openpam_ttyconv.3 +OMAN += pam_error.3 +OMAN += pam_get_authtok.3 +OMAN += pam_info.3 +OMAN += pam_prompt.3 +OMAN += pam_setenv.3 +OMAN += pam_verror.3 +OMAN += pam_vinfo.3 +OMAN += pam_vprompt.3 -MAN = ${CMAN} +MAN = ${PMAN} ${OMAN} ${MMAN} MAN += openpam.3 -MLINKS = openpam.3 pam.3 +MAN += pam.3 +MAN += pam_conv.3 -CLEANFILES += ${CMAN} openpam.3 +CLEANFILES += ${PMAN} ${OMAN} ${MMAN} openpam.3 pam.3 -.for man in ${CMAN} +.for man in ${PMAN} ${OMAN} ${MMAN} ${man}: ${.CURDIR}/../../lib/${man:R}.c ${GENDOC} perl -w ${GENDOC} ${.CURDIR}/../../lib/${man:R}.c .endfor -openpam.3: ${CMAN} ${GENDOC} - perl -w ${GENDOC} -s ${CMAN} +openpam.3: ${OMAN} ${GENDOC} openpam.man + perl -w ${GENDOC} -o ${OMAN} <${.CURDIR}/openpam.man + +pam.3: ${PMAN} ${GENDOC} pam.man + perl -w ${GENDOC} -p ${PMAN} <${.CURDIR}/pam.man .include ==== //depot/projects/openpam/lib/pam_start.c#15 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/openpam/lib/pam_start.c#14 $ + * $P4: //depot/projects/openpam/lib/pam_start.c#15 $ */ #include @@ -98,14 +98,7 @@ * It is stored in the =PAM_USER item in the created context. * * The =pam_conv argument points to a =struct pam_conv describing the - * conversation function to use. - * This structure is defined as follows: - * - * struct pam_conv { - * int (*conv)(int, const struct pam_message **, - * struct pam_response **, void *); - * void *appdata_ptr; - * }; + * conversation function to use; see =pam_conv for details. * * >pam_get_item * >pam_set_item ==== //depot/projects/openpam/misc/gendoc.pl#16 (text+ko) ==== @@ -32,7 +32,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $P4: //depot/projects/openpam/misc/gendoc.pl#15 $ +# $P4: //depot/projects/openpam/misc/gendoc.pl#16 $ # use strict; @@ -455,51 +455,77 @@ } } -sub gensummary() { +sub gensummary($) { + my $page = shift; # Which page to produce local *FILE; + my $upage; my $func; + my %xref; - sysopen(FILE, "openpam.3", O_RDWR|O_CREAT|O_TRUNC) - or die("openpam.3: $!\n"); + sysopen(FILE, "$page.3", O_RDWR|O_CREAT|O_TRUNC) + or die("$page.3: $!\n"); + $upage = uc($page); print FILE "$COPYRIGHT .Dd $TODAY -.Dt PAM 3 +.Dt $upage 3 .Os .Sh NAME "; - foreach $func (sort(keys(%FUNCTIONS))) { - print FILE ".Nm $FUNCTIONS{$func}->{'Nm'}\n"; + my @funcs = sort(keys(%FUNCTIONS)); + while ($func = shift(@funcs)) { + print FILE ".Nm $FUNCTIONS{$func}->{'Nm'}"; + print FILE " ," + if (@funcs); + print FILE "\n"; } print FILE ".Nd Pluggable Authentication Modules Library .Sh LIBRARY .Lb libpam -.Sh SYNOPSIS -.In security/pam_appl.h -"; +.Sh SYNOPSIS\n"; + if ($page eq 'pam') { + print FILE ".In security/pam_appl.h\n"; + } else { + print FILE ".In security/openpam.h\n"; + } foreach $func (sort(keys(%FUNCTIONS))) { print FILE ".Ft $FUNCTIONS{$func}->{'Ft'}\n"; print FILE ".Fn $FUNCTIONS{$func}->{'Fn'}\n"; } - print FILE ".Sh DESCRIPTION -.Sh RETURN VALUES -The following return codes are defined in the -.In security/pam_constants.h -header: + while () { + if (m/^\.Xr (\S+)\s*(\d)\s*$/) { + $xref{$1} = $2; + } + print FILE $_; + } + + if ($page eq 'pam') { + print FILE ".Sh RETURN VALUES +The following return codes are defined by +.Aq Pa security/pam_constants.h : .Bl -tag -width 18n "; - foreach (sort(keys(%PAMERR))) { - print FILE ".It Bq Er $_\n$PAMERR{$_}.\n"; + foreach (sort(keys(%PAMERR))) { + print FILE ".It Bq Er $_\n$PAMERR{$_}.\n"; + } + print FILE ".El\n"; } - print FILE ".El -.Sh SEE ALSO + print FILE ".Sh SEE ALSO "; - foreach $func (sort(keys(%FUNCTIONS))) { - print FILE ".Xr $func 3 ,\n"; + print FILE ".Xr openpam 3\n" + if ($page eq 'pam'); + foreach $func (keys(%FUNCTIONS)) { + $xref{$func} = 3; + } + my @refs = sort(keys(%xref)); + while ($_ = shift(@refs)) { + print FILE ".Xr $_ $xref{$_}"; + print FILE " ," + if (@refs); + print FILE "\n"; } - print FILE ".Xr pam.conf 5 -.Sh STANDARDS + print FILE ".Sh STANDARDS .Rs .%T \"X/Open Single Sign-On Service (XSSO) - Pluggable Authentication Modules\" .%D \"June 1997\" @@ -525,14 +551,17 @@ my %opts; usage() - unless (@ARGV && getopts("s", \%opts)); + unless (@ARGV && getopts("op", \%opts)); $TODAY = strftime("%B %e, %Y", localtime(time())); $TODAY =~ s,\s+, ,g; - if ($opts{'s'}) { + if ($opts{'o'} || $opts{'p'}) { foreach my $fn (@ARGV) { readproto($fn); } - gensummary(); + gensummary('openpam') + if ($opts{'o'}); + gensummary('pam') + if ($opts{'p'}); } else { foreach my $fn (@ARGV) { my $func = parse_source($fn); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message