Added support for OpenBSD's pledge because i was bored.

master
Barrington 2023-02-11 11:43:49 +01:00
parent 92c502b4a6
commit c8f7473690
Signed by: svragv
GPG Key ID: B39C0BCEE94A4A89
1 changed files with 9 additions and 3 deletions

View File

@ -1,14 +1,20 @@
#!/usr/bin/perl
# This file is part of sakisafe.
use if $^O eq "openbsd", OpenBSD::Pledge, qw(pledge);
use Mojolicious::Lite -signatures;
use Mojolicious::Routes::Pattern;
use List::MoreUtils qw(any uniq);
use MIME::Types;
use v5.36;
use experimental 'signatures';
plugin 'RenderFile';
my $openbsd = 0;
$openbsd = 1 if $^O eq "openbsd";
pledge("stdio cpath rpath wpath inet flock fattr") if $openbsd;
use strict;
my $MAX_SIZE = 1024 * 1024 * 100;
my @BANNED = qw(); # Add banned IP addresses here
@ -72,8 +78,8 @@ get '/f/:dir/:name' => sub ($c) {
my $captures = $c->req->url;
$captures =~ s/^.//;
my $filerender = Mojolicious::Plugin::RenderFile->new;
my ($ext) = $captures =~ /(\.[^.]+)$/;
print $ext;
my $ext = $captures;
$ext =~ s/.*\.//;
$c->render_file( filepath => $captures,
format => $ext,
content_disposition => 'inline'