]>
Commit | Line | Data |
---|---|---|
1635608e DM |
1 | #!/usr/bin/perl |
2 | ||
3 | use strict; | |
4 | use warnings; | |
5 | ||
c3e98aed | 6 | use PVE::Network; |
72766fc0 | 7 | use Time::HiRes qw(usleep); |
1635608e DM |
8 | |
9 | my $xline = '-' x 78; | |
10 | ||
c3e98aed | 11 | my $banner = <<__EOBANNER; |
1635608e DM |
12 | |
13 | $xline | |
14 | ||
15 | Welcome to the Proxmox Mail Gateway. Please use your web browser to | |
16 | configure this server - connect to: | |
17 | ||
c3e98aed | 18 | __EOBANNER |
1635608e | 19 | |
72766fc0 TL |
20 | my $addr; |
21 | for (my $try = 1; $try <= 15; $try ++) { | |
22 | # TODO, pass `all => 1` and print them? May be seen as "leak" for some users of unprotected setups?! | |
23 | $addr = PVE::Network::get_local_ip(); | |
24 | last if defined($addr); | |
25 | ||
26 | usleep($try * 150_000); # gradually increase poll, ensure's we're ready faster in average | |
27 | } | |
28 | ||
29 | $addr //= '<unknown>'; # useless but we must _not_ fail here | |
1635608e | 30 | |
c3e98aed | 31 | $banner .= " https://${addr}:8006/\n"; |
1635608e | 32 | |
c3e98aed | 33 | $banner .= "\n$xline\n\n"; |
1635608e | 34 | |
32f704e0 | 35 | open(my $issue_fh, '>', '/etc/issue') or die "cannot open '/etc/issue' for writing - $!"; |
1635608e | 36 | |
f95eb381 | 37 | print $issue_fh $banner; |
1635608e | 38 | |
f95eb381 | 39 | close($issue_fh); |
1635608e DM |
40 | |
41 | exit (0); |