-
-
Notifications
You must be signed in to change notification settings - Fork 102
/
licence-info.pl
executable file
·65 lines (55 loc) · 1.61 KB
/
licence-info.pl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#!/usr/local/bin/perl
=head1 license-info.pl
Show license counts for this Virtualmin system.
This command simply outputs the serial number, license key and host id of the
current Virtualmin system, and the number of virtual servers that exist and are
allowed by the license.
=cut
package virtual_server;
if (!$module_name) {
$main::no_acl_check++;
$ENV{'WEBMIN_CONFIG'} ||= "/etc/webmin";
$ENV{'WEBMIN_VAR'} ||= "/var/webmin";
if ($0 =~ /^(.*)\/[^\/]+$/) {
chdir($pwd = $1);
}
else {
chop($pwd = `pwd`);
}
$0 = "$pwd/info.pl";
require './virtual-server-lib.pl';
$< == 0 || die "license-info.pl must be run as root";
}
while(@ARGV > 0) {
local $a = shift(@ARGV);
if ($a eq "--multiline") {
$multiline = 1;
}
elsif ($a eq "--help") {
&usage();
}
else {
&usage("Unknown parameter $a");
}
}
# Show serial and key
&read_env_file($virtualmin_license_file, \%vserial);
&read_file($licence_status, \%lstatus);
print "Serial number: $vserial{'SerialNumber'}\n";
print "License key: $vserial{'LicenseKey'}\n";
print "Host ID: ",&get_licence_hostid(),"\n";
print "Expiry date: $lstatus{'expiry'}\n" if ($lstatus{'expiry'});
# Allowed domain counts
@realdoms = grep { !$_->{'alias'} } &list_domains();
($dleft, $dreason, $dmax, $dhide) = &count_domains("realdoms");
print "Virtual servers: ",scalar(@realdoms),"\n";
print "Maximum servers: ",($dmax > 0 ? $dmax : "Unlimited"),"\n";
print "Servers left: ",($dmax > 0 ? $dleft : "Unlimited"),"\n";
sub usage
{
print "$_[0]\n\n" if ($_[0]);
print "Displays license information for this Virtualmin system.\n";
print "\n";
print "virtualmin license-info\n";
exit(1);
}