$perms->Add("$account",
"$folder_ace_var" || "$subfolder_ace_var",
"ACCESS_ALLOWED_ACE_TYPE",
"CONTAINER_INHERIT_ACE" || "OBJECT_INHERIT_ACE");
####
if ( $folder_ace_var )
{
$perms->Add("$account",
"$folder_ace_var",
"ACCESS_ALLOWED_ACE_TYPE",
"OBJECT_INHERIT_ACE");
}
else
{
$perms->Add("$account",
"$subfolder_ace_var",
"ACCESS_ALLOWED_ACE_TYPE",
"CONTAINER_INHERIT_ACE");
}
####
$perms->Add("$account",
"$folder_ace_var | $subfolder_ace_var",
"ACCESS_ALLOWED_ACE_TYPE",
"CONTAINER_INHERIT_ACE | OBJECT_INHERIT_ACE");
####
#!/opt/local/bin/perl -w
use strict;
use Tk;
my $mw = MainWindow->new;
$mw->geometry("400x300+20+20");
$mw->title( "Tk Testing" );
my $account = 'Me';
my $folder_ace_var = '';
my $subfolder_ace_var = '';
my $bottom_frame = $mw->Frame()->pack(-side => 'bottom');
my $left_frame = $mw->Frame()->pack(-side => 'left');
my $right_frame = $mw->Frame()->pack(-side => 'right');
foreach my $p ('NO_ACCESS', 'FULL','READ', 'WRITE' ,'CHANGE','GENERIC_ALL')
{
$left_frame->Radiobutton(-text => "ACE : $p",
-variable => \$folder_ace_var,
-relief => 'flat',
-value => $p,
)->pack(-side => 'top',
-in => $left_frame,
-anchor => 'w',
#-fill => 'x',
#-expand => 1,
#-padx => 5,
#-pady => 1,
);
}
foreach my $p ('NO_ACCESS', 'FULL','READ', 'WRITE' ,'CHANGE','GENERIC_ALL')
{
$right_frame->Radiobutton(-text => "ACE : $p",
-variable => \$subfolder_ace_var,
-relief => 'flat',
-value => $p,
)->pack(-side => 'top',
-in => $right_frame,
-anchor => 'w',
# -fill => 'x',
#-expand => 1,
#-padx => 5,
#-pady => 1,
);
}
$mw->Button(-text => "Bitwise OR",
-width => 10,
-command => sub{ Check_Variables(
"$account",
"$folder_ace_var" | "$subfolder_ace_var",
"ACCESS_ALLOWED_ACE_TYPE",
"OBJECT_INHERIT_ACE" | "CONTAINER_INHERIT_ACE" );
},
)->pack(-side => 'left',
-in => $bottom_frame,
-anchor => 'w',
-fill => 'none',
-expand => 0,
-padx => 5,
);
$mw->Button(-text => "Literal |",
-width => 10,
-command => sub{ Check_Variables(
"$account",
"$folder_ace_var | $subfolder_ace_var",
"ACCESS_ALLOWED_ACE_TYPE",
"OBJECT_INHERIT_ACE | CONTAINER_INHERIT_ACE" );
},
)->pack(-side => 'left',
-in => $bottom_frame,
-anchor => 'w',
-fill => 'none',
-expand => 0,
-padx => 5,
);
$mw->Button(-text => "Regular OR",
-width => 10,
-command => sub{ Check_Variables(
"$account",
"$folder_ace_var" || "$subfolder_ace_var",
"ACCESS_ALLOWED_ACE_TYPE",
"OBJECT_INHERIT_ACE" || "CONTAINER_INHERIT_ACE" );
},
)->pack(-side => 'left',
-in => $bottom_frame,
-anchor => 'w',
-fill => 'none',
-expand => 0,
-padx => 5,
);
MainLoop;
sub Check_Variables
{
print "-----------------------------------------------\n";
foreach my $entry ( @_ )
{
print "$entry\n";
}
print "-----------------------------------------------\n";
}
exit 0;
#
# end of code
#