| Server IP : 127.0.0.1 / Your IP : 216.73.216.109 Web Server : Apache/2.4.54 (Win64) OpenSSL/1.1.1q PHP/8.1.10 System : Windows NT DESKTOP-E5T4RUN 10.0 build 19045 (Windows 10) AMD64 User : SERVERWEB ( 0) PHP Version : 8.1.10 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/cygwin64/home/SERVERWEB/webmin-2.105/iscsi-client/ |
Upload File : |
#!/usr/bin/perl
# Remove one or more interfaces
use strict;
use warnings;
no warnings 'redefine';
no warnings 'uninitialized';
require './iscsi-client-lib.pl';
our (%text, %in);
&ReadParse();
&error_setup($text{'difaces_err'});
# Get the interfaces
my $ifaces = &list_iscsi_ifaces();
ref($ifaces) || &error(&text('ifaces_elist', $ifaces));
my @d = split(/\0/, $in{'d'});
my @delifaces;
foreach my $d (@d) {
my ($iface) = grep { $_->{'name'} eq $d } @$ifaces;
push(@delifaces, $iface) if ($iface);
}
@delifaces || &error($text{'difaces_enone'});
if (!$in{'confirm'}) {
&ui_print_header(undef, $text{'difaces_title'}, "");
# Find interface users
my @users;
foreach my $iface (@delifaces) {
foreach my $target (@{$iface->{'targets'}}) {
$target->{'iface'} = $iface->{'name'};
push(@users, $target);
}
}
# Build list of users
my $utable = "";
if (@users) {
$utable = $text{'difaces_users'}."<p>\n";
$utable .= &ui_columns_start([
$text{'ifaces_name'},
$text{'difaces_ip'},
$text{'difaces_target'},
], 50);
foreach my $u (@users) {
$utable .= &ui_columns_row([
$u->{'iface'},
$u->{'ip'},
$u->{'target'},
]);
}
$utable .= &ui_columns_end();
}
# Ask the user if he is sure
print &ui_confirmation_form(
"delete_ifaces.cgi",
@delifaces == 1 ?
&text('difaces_rusure1',
"<tt>".$delifaces[0]->{'name'}."</tt>") :
&text('difaces_rusure', scalar(@delifaces)),
[ map { [ "d", $_ ] } @d ],
[ [ "confirm", $text{'difaces_confirm'} ] ],
$utable);
&ui_print_footer("list_ifaces.cgi", $text{'ifaces_return'});
}
else {
# Delete each one
foreach my $iface (@delifaces) {
my $err = &delete_iscsi_iface($iface);
&error(&text('difaces_edelete', $iface->{'name'}, $err))
if ($err);
}
if (@delifaces == 1) {
&webmin_log("delete", "iface", $delifaces[0]->{'name'},
$delifaces[0]);
}
else {
&webmin_log("delete", "ifaces", scalar(@delifaces));
}
&redirect("list_ifaces.cgi");
}