Frontend: Create default user if no users are present in database
This commit is contained in:
12
frontend.pm
12
frontend.pm
@@ -17,6 +17,7 @@
|
||||
package frontend;
|
||||
|
||||
use IO::Socket;
|
||||
use Digest::SHA;
|
||||
use File::Spec;
|
||||
use Time::Piece;
|
||||
use DBI;
|
||||
@@ -450,11 +451,22 @@ sub sendResponse {
|
||||
|
||||
sub httpServerWorker {
|
||||
my $db = DBI->connect("DBI:SQLite:dbname=$configuration::database", "", "", {RaiseError=>1});
|
||||
my $query = $db->prepare(qq(select id from users;));
|
||||
$query->execute();
|
||||
my @row = $query->fetchrow_array();
|
||||
if(scalar(@row)==0) {
|
||||
# Create default user
|
||||
my $password = Digest::SHA::sha256_hex("admin");
|
||||
$query = $db->prepare(qq(insert into users values(0, "admin", "$password", 2);));
|
||||
$query->execute();
|
||||
}
|
||||
|
||||
my $server = new IO::Socket::INET(LocalHost=>"localhost", LocalPort=>$configuration::httpServerPort, Proto=>"tcp", Listen=>1, Reuse=>1);
|
||||
if(!$server) {
|
||||
print("Failed to open HTTP server on port $configuration::httpServerPort\n");
|
||||
return;
|
||||
}
|
||||
|
||||
while(1) {
|
||||
my $client = $server->accept();
|
||||
my $buffer;
|
||||
|
||||
Reference in New Issue
Block a user