/[pxelator]/lib/PXElator/server.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /lib/PXElator/server.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 118 by dpavlin, Mon Aug 3 08:52:32 2009 UTC revision 138 by dpavlin, Tue Aug 4 15:25:09 2009 UTC
# Line 3  package server; Line 3  package server;
3  use warnings;  use warnings;
4  use strict;  use strict;
5    
 use Module::Refresh;  
6    
7  our $ip      = '172.16.10.1';  our $ip      = '172.16.10.1';
8  our $netmask = '255.255.255.0';  our $netmask = '255.255.255.0';
9    
10  our ( $ip_from, $ip_to ) = ( 10, 100 );  our ( $ip_from, $ip_to ) = ( 10, 100 );
11    
12  our $base_dir = '/home/dpavlin/llin/pxelator';  our $base_dir = '/srv/pxelator';
13    
14  use config;  use Module::Refresh qw//;
15    sub refresh { Module::Refresh->refresh };
16    
17  our $debug;  use File::Slurp;
18  sub debug { $debug = config::shared('debug', @_) || 0 }  sub shared {
19            my ($name, $value) = @_;
20    
21            my $path ="$base_dir/conf/$server::ip/$name";
22            if ( defined $value ) {
23                    write_file $path, $value;
24            } else {
25                    $value = read_file $path if -e $path;
26            }
27            return $value;
28    }
29    
30  my $timestamp_interval = 3;  sub debug { shared('debug', @_) || 0 }
 my $stderr_tell = 0;  
   
 $SIG{ALRM} = sub {  
     if ( tell(STDERR) != $stderr_tell ) {  
         warn "\nTIMESTAMP: " . localtime() . "\n\n";  
         $stderr_tell = tell(STDERR);  
                 Module::Refresh->refresh;  
     }  
     alarm $timestamp_interval;  
 };  
 alarm $timestamp_interval;  
31    
32  warn "loaded";  warn "loaded";
33    
34    1;

Legend:
Removed from v.118  
changed lines
  Added in v.138

  ViewVC Help
Powered by ViewVC 1.1.26