#!/usr/local/bin/perl
##############################################################################
# shiromukuHTPASSWD version 2.12
# Created 10/08/2002
# Copyright 2002 Shiromuku
# Available at http://www.t-okada.com/cgi/
###############################################################################
# COPYRIGHT NOTICE (著作権の告示)
# Copyright 2002 Shiromuku All Rights Reserved.
# This script can be used and modified free of charge as long as you don't change this header or any of the parts that give me credit for writing this. (このスクリプトは無償で使用または改変できます。ただしこの著作権の告知と上記のコメント、及びCGIにより生成されるHTML表示下部にある著作権表示部は変えないで下さい。)
# By using this script you agree to indemnify me from any liability that might arise from its use. In simple English, if this script somehow makes your computer run amuck and kill the pope, it's not my fault.(このスクリプトを使用することにより、使用者はその使用によって起こる可能性のあるいかなる事柄に対する責務についても、私Shiromukuに免責の保証を与えることに同意したものとします。)
# Redistributing and selling the code for this program without prior written consent is expressly forbidden.(前もって書面での承諾を得ることなくこのプログラムのコードを再配布したり売ったりすることは 明確に禁じられています。)
#######################
require './jcode.pl';
require './s_htpasswd_lib.cgi';
#######################
use strict;
my $gl = &get_globals("s_htpasswd_gl.cgi");
$gl->{version} = "version 2.12";
$gl->{userip} = $ENV{'REMOTE_ADDR'};
#$gl->{hosts} = gethostbyaddr(pack('C4',split(/\./,$gl->{userip})),2);
if ($gl->{hosts} eq "") {$gl->{hosts} = $gl->{userip};}
$gl->{hosts}="$gl->{hosts}--$ENV{'HTTP_USER_AGENT'}";
my ($form, $cform, $sform, $filename, $h_filename, $key);
if ($ENV{'CONTENT_LENGTH'}) {($form, $cform, $sform) = &parse_data($gl);}
my$config = &open_config ($gl, $form);
my %HoD = ();
@HoD{"gl", "config", "form", "cform", "sform"} = ($gl, $config, $form, $cform, $sform);
#foreach $key (keys (%{$HoD{config}})) {
#if ($key =~ /^c2_/) {$HoD{config}{$key} =~ s/
/\n/g;}
#}
$filename = "$gl->{basedir}/$gl->{passfile}";
if (-e $filename) {
if($config->{allow_submit}) {&return_main (\%HoD);}
else {&return_admin_enter(\%HoD);}
}
else {
open(FILE,">$gl->{basedir_h}/isweb_htaccess") || &error("$gl->{basedir_h}/\.htaccessがオープンできません。1\n");
print FILE <<"HERE";
AuthUserFile $gl->{userfile}
AuthGroupFile /dev/null
AuthName ByPassword
AuthType Basic