Apache-Roaming
view release on metacpan or search on metacpan
lib/Apache/Roaming.pm view on Meta::CPAN
my $file = $self->{'file'};
my $r = $self->{'request'};
if (! -f $file) {
$self->{'status'} = Apache::Constants::NOT_FOUND();
die "No such file: $file";
}
# return Apache::DECLINED();
my($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime) = stat _;
my $fh = Symbol::gensym();
if (!open($fh, "<$file") || !binmode($fh)) {
die "Failed to open file $file: $!";
}
$r->set_last_modified($mtime);
$r->content_type('text/plain');
$r->no_cache(1);
$r->header_out('content_length', $size);
$r->send_http_header();
if (!$r->header_only()) {
$r->send_fd($fh) or die $!;
}
lib/Apache/Roaming.pm view on Meta::CPAN
my $self = shift;
my $file = $self->{'file'};
my $r = $self->{'request'};
$self->MkDir($file);
my $fh = Symbol::gensym();
open($fh, ">$file")
or die "Failed to open $file: $!";
binmode($fh)
or die "Failed to request binmode for $file: $!";
my $size = $r->header_in('Content-length');
$r->hard_timeout("Apache->read");
while ($size > 0) {
my $buf = '';
my $rdn = $r->read_client_block($buf, ($size < 1024) ? $size : 1024);
if (!defined($rdn)) {
die "Error while reading $file from client: $!";
}
print $fh ($buf)
lib/Apache/Roaming/LiPrefs.pm view on Meta::CPAN
my $inc = ($r->dir_config('LiPrefsConfigFile')
|| 'Apache/Roaming/LiPrefs/Config.pm');
require $inc unless $INC{$inc};
my %initial = (%Apache::Roaming::LiPrefs::INITIAL,
%Apache::Roaming::LiPrefs::ALWAYS);
my $contents = '';
if (-f $file) {
my $fh = Symbol::gensym();
if (!open($fh, "<$file") || !binmode($fh)) {
die "Failed to open file $file: $!";
}
while (defined(my $line = <$fh>)) {
if ($line =~ m{
^\s*user_pref\s*\(
\s*\"(.*?)\"\)\s*\,
\s*(\S.*?)\s*
\)\s*\;\s*$}) {
my $var = $1;
( run in 0.326 second using v1.01-cache-2.11-cpan-3cd7ad12f66 )