App-ReslirpTunnel

 view release on metacpan or  search on metacpan

lib/App/ReslirpTunnel.pm  view on Meta::CPAN

    my $fn = $self->{args}{log_file};
    unless (defined $fn) {
        my $parent_dir = $self->{xdg}->state_home->child('logs')->mkdir;
        $fn = $parent_dir->child($self->{timestamp}.".reslirp-tunnel.log");
        eval {
            my $sl = $parent_dir->child('latest.reslirp-tunnel.log');
            unlink $sl if -l $sl;
            symlink $fn, $sl;
        };
    }
    $self->SUPER::_init_logger(log_level => $level, log_to_stderr => $log_to_stderr, log_file => $fn);
}

sub _set_signal_handlers {
    my $self = shift;
    my $signal_count = 0;
    $self->{signal_count_ref} = \$signal_count;
    $self->{signal_handler} = sub {
        $signal_count++;
        $self->_log(info => "Signal received, count: $signal_count");
    };

lib/App/ReslirpTunnel/ElevatedSlave.pm  view on Meta::CPAN

    $self
}

sub _init_logger {
    my ($self, %args) = @_;
    # We need to open a different log file for the elevated slave as
    # we are running under a different user (root) and don't have
    # permission to write to the user's log file.

    $args{log_file} =~ s/((?:\.[^\.]+)?)$/.elevated$1/ if defined $args{log_file};
    $self->SUPER::_init_logger(%args);
}

sub _hex2arg {
    my $hex = shift;
    my $arg = pack("H*", $hex);
    # warn "$hex --> $arg\n";
    utf8::decode($arg);
    return $arg;
}



( run in 0.491 second using v1.01-cache-2.11-cpan-a9ef4e587e4 )