Apache-AxKit-Plugin-Session
view release on metacpan or search on metacpan
lib/Apache/AxKit/Plugin/Session.pm view on Meta::CPAN
}
# Enabling write access to httpd config files is dangerous, so you will have to find
# out yourself what to do. Do this only if you absolutely know what you are doing.
my $configfile = $r->dir_config(($r->auth_name || 'AxKitSession').'AuthFile') || die 'read the fine manual.';
local (*IN, *OUT);
if (substr($configfile,0,1) eq '/') {
open(IN, $configfile) || die "file open error (read): $configfile";
open(OUT, ">$configfile.new") || die "file open error (write): $configfile.new";
while (my $line = <IN>) {
print OUT $line unless $line eq '# do not modify - autogenerated. # '.$r->uri."\n";
while (my $line = <IN> && $line ne "# end of autogenerated fragment\n") {}
}
close(IN);
print OUT '# do not modify - autogenerated. # '.$r->uri."\n";
print OUT '<Location '.$r->uri.">\n";
print OUT @perms;
print OUT "</Location>\n";
print OUT "# end of autogenerated fragment\n";
close(OUT);
rename("$configfile.new",$configfile);
} else {
my $dir = $r->filename;
$dir =~ s{[^/]*$}{$configfile};
my $file = $r->uri;
$file =~ s{.*\/}{};
$file .= $r->path_info;
my @lines;
if (open(IN, $dir)) {
@lines = <IN>;
close(IN);
}
open(OUT, ">$dir") || die "file open error (write): $dir";
my $skip = 0;
for my $line (@lines) {
$skip = 1 if $line eq '# do not modify - autogenerated. # '.$r->uri."\n";
print OUT $line unless $skip;
$skip = 0 if $line eq "# end of autogenerated fragment\n";
}
print OUT '# do not modify - autogenerated. # '.$r->uri."\n";
print OUT '<Files '.$file.">\n";
print OUT @perms;
print OUT "</Files>\n";
print OUT "# end of autogenerated fragment\n";
close(OUT);
}
}
# interfaces for the taglib
sub get_permission_set($$) {
my ($self, $r) = @_;
my @rc = ();
foreach my $req ($self->get_permissions($r)) {
lib/AxKit/XSP/Auth.pm view on Meta::CPAN
=head1 Tag Reference
=head2 User access privileges
These tags work on the user privileges.
=head3 C<<auth:get-access>>, C<<auth:get-single-access>>
This tag retrieves the access permissions for the current session. It returns
an XML fragment that could theoretically be passed back into auth:set-access.
This is not possible though within one xsp run.
<auth:get-single-access> is just a convenience tag for retrieving exactly one type
of access information suitable for processing in perl code. For this tag, a
'type' attribute is mandatory.
=head3 C<<auth:set-access>>, C<<auth:add-access>>
These tags modify the user's access privileges. They take a set of
C<<auth:access type="some-type" value="some-value"/>> nodes. set-access
( run in 1.140 second using v1.01-cache-2.11-cpan-364913b4093 )