From: Amos Jeffries Date: Sun, 7 Dec 2014 14:22:16 +0000 (-0800) Subject: basic_db_auth: update man(8) documentation X-Git-Tag: merge-candidate-3-v1~452 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b7c7c6d044d2e07e2dbd2588072ff734f24b6fd6;p=thirdparty%2Fsquid.git basic_db_auth: update man(8) documentation --- diff --git a/helpers/basic_auth/DB/Makefile.am b/helpers/basic_auth/DB/Makefile.am index 95eb523d7c..d4b25df94a 100644 --- a/helpers/basic_auth/DB/Makefile.am +++ b/helpers/basic_auth/DB/Makefile.am @@ -7,7 +7,6 @@ include $(top_srcdir)/src/Common.am libexec_SCRIPTS = basic_db_auth -CLEANFILES += basic_db_auth basic_db_auth.8 man_MANS = basic_db_auth.8 EXTRA_DIST= \ basic_db_auth.8 \ @@ -20,3 +19,5 @@ basic_db_auth.8: basic_db_auth basic_db_auth: basic_db_auth.pl.in $(subst_perlshell) + +CLEANFILES += basic_db_auth basic_db_auth.8 diff --git a/helpers/basic_auth/DB/basic_db_auth.pl.in b/helpers/basic_auth/DB/basic_db_auth.pl.in index 5a62970fe1..e2423d9319 100644 --- a/helpers/basic_auth/DB/basic_db_auth.pl.in +++ b/helpers/basic_auth/DB/basic_db_auth.pl.in @@ -1,99 +1,147 @@ #!@PERL@ + use strict; -use DBI; -use Getopt::Long; use Pod::Usage; -use Digest::MD5 qw(md5 md5_hex md5_base64); -$|=1; +use Getopt::Long; =pod =head1 NAME -basic_db_auth - Database auth helper for Squid - -=cut - -my $dsn = "DBI:mysql:database=squid"; -my $db_user = undef; -my $db_passwd = undef; -my $db_table = "passwd"; -my $db_usercol = "user"; -my $db_passwdcol = "password"; -my $db_cond = "enabled = 1"; -my $plaintext = 0; -my $md5 = 0; -my $persist = 0; -my $isjoomla = 0; -my $debug = 0; -my $hashsalt = undef; - -=pod + basic_db_auth - Database auth helper for Squid =head1 SYNOPSIS -basic_db_auth [options] + basic_db_auth [options] =head1 DESCRIPTOIN This program verifies username & password to a database -=over 8 +=head1 OPTIONS + +=over 12 + +=item B<--debug> -=item B<--dsn> +Write debug info to stderr. + +=item B<--dsn> Database DSN. Default "DBI:mysql:database=squid" -=item B<--user> +=item B<--user> Database User -=item B<--password> +=item B<--password> Database password -=item B<--table> +=item B<--table> Database table. Default "passwd". -=item B<--usercol> +=item B<--usercol> Username column. Default "user". -=item B<--passwdcol> +=item B<--passwdcol> Password column. Default "password". -=item B<--cond> +=item B<--cond> Condition, defaults to enabled=1. Specify 1 or "" for no condition If you use --joomla flag, this condition will be changed to block=0 -=item B<--plaintext> +=item B<--plaintext> Database contains plain-text passwords -=item B<--md5> +=item B<--md5> Database contains unsalted md5 passwords -=item B<--salt> +=item B<--salt> Selects the correct salt to evaluate passwords -=item B<--persist> +=item B<--persist> Keep a persistent database connection open between queries. -=item B<--joomla> +=item B<--joomla> Tells helper that user database is Joomla DB. So their unusual salt hashing is understood. =back +=head1 AUTHOR + +This program was written by +I> and +I> + +This manual was written by I> + +=head1 COPYRIGHT + + * Copyright (C) 1996-2014 The Squid Software Foundation and contributors + * + * Squid software is distributed under GPLv2+ license and includes + * contributions from numerous individuals and organizations. + * Please see the COPYING and CONTRIBUTORS files for details. + +Copyright (C) 2007 Henrik Nordstrom +Copyright (C) 2010 Luis Daniel Lucio Quiroz (Joomla support) +This program is free software. You may redistribute copies of it under the +terms of the GNU General Public License version 2, or (at youropinion) any +later version. + +=head1 QUESTIONS + +Questions on the usage of this program can be sent to the I> + +=head1 REPORTING BUGS + +Bug reports need to be made in English. +See http://wiki.squid-cache.org/SquidFaq/BugReporting for details of what you need to include with your bug report. + +Report bugs or bug fixes using http://bugs.squid-cache.org/ + +Report serious security bugs to I> + +Report ideas for new improvements to the I> + +=head1 SEE ALSO + +squid (8), GPL (7), + +The Squid FAQ wiki http://wiki.squid-cache.org/SquidFaq + +The Squid Configuration Manual http://www.squid-cache.org/Doc/config/ + =cut +use DBI; +use Digest::MD5 qw(md5 md5_hex md5_base64); + +my $dsn = "DBI:mysql:database=squid"; +my $db_user = undef; +my $db_passwd = undef; +my $db_table = "passwd"; +my $db_usercol = "user"; +my $db_passwdcol = "password"; +my $db_cond = "enabled = 1"; +my $plaintext = 0; +my $md5 = 0; +my $persist = 0; +my $isjoomla = 0; +my $debug = 0; +my $hashsalt = undef; + GetOptions( 'dsn=s' => \$dsn, 'user=s' => \$db_user, @@ -173,6 +221,7 @@ sub query_db($) { } my $status; +$|=1; while (<>) { my ($user, $password) = split; $status = "ERR"; @@ -190,21 +239,3 @@ while (<>) { close_db() if (!$persist); print $status . "\n"; } - -=pod - -=head1 COPYRIGHT - - * Copyright (C) 1996-2014 The Squid Software Foundation and contributors - * - * Squid software is distributed under GPLv2+ license and includes - * contributions from numerous individuals and organizations. - * Please see the COPYING and CONTRIBUTORS files for details. - -Copyright (C) 2007 Henrik Nordstrom -Copyright (C) 2010 Luis Daniel Lucio Quiroz (Joomla support) -This program is free software. You may redistribute copies of it under the -terms of the GNU General Public License version 2, or (at youropinion) any -later version. - -=cut