mirror of
https://github.com/samba-team/samba.git
synced 2025-02-02 09:47:23 +03:00
script written by herb for reporting which smb.conf parameters
are in loarparm.c but not supported by SWAT. I just thought it looked fun. :-) --jerry
This commit is contained in:
parent
cb717b4a2b
commit
eb20a2c6f4
96
examples/misc/swat.pl
Normal file
96
examples/misc/swat.pl
Normal file
@ -0,0 +1,96 @@
|
||||
#! /usr/bin/perl5
|
||||
##
|
||||
## This is a simple script written by Herb Lewis @ SGI <herb@samba.org>
|
||||
## for reporting which parameters where supported by loadparm.c but
|
||||
## not by SWAT I just thought it looked fun and might be of interest to others
|
||||
## --jerry@samba.org
|
||||
##
|
||||
|
||||
$lastone = "nothing";
|
||||
|
||||
if (@ARGV[0]) {
|
||||
$filename = @ARGV[0];
|
||||
} else {
|
||||
$filename = "/usr3/samba20/samba/source/param/loadparm.c";
|
||||
}
|
||||
|
||||
open (INFILE,$filename) || die "unable to open $filename\n";
|
||||
while (not eof(INFILE))
|
||||
{
|
||||
$_ = <INFILE>;
|
||||
last if ( /^static struct parm_struct parm_table/) ;
|
||||
}
|
||||
print "Option Name Global Page Share Page Printer Page\n";
|
||||
print "---------------------------------------------------------------------";
|
||||
while (not eof(INFILE))
|
||||
{
|
||||
$_ = <INFILE>;
|
||||
last if (/};/);
|
||||
@fields = split(/,/,$_);
|
||||
next if not ($fields[0] =~ /^.*{"/);
|
||||
$fields[0] =~ s/.*{"//;
|
||||
$fields[0] =~ s/"//;
|
||||
if ($fields[3] eq $lastone) {
|
||||
print " $fields[0]\n";
|
||||
next;
|
||||
}
|
||||
$lastone = $fields[3];
|
||||
$fields[2] =~ s/^\s+//;
|
||||
$fields[2] =~ s/\s+$//;
|
||||
$fields[2] =~ s/}.*$//;
|
||||
$fields[6] =~ s/^\s+//;
|
||||
$fields[6] =~ s/\s+$//;
|
||||
$fields[6] =~ s/}.*$//;
|
||||
if ($fields[2] =~ /P_SEPARATOR/) {
|
||||
print "\n****************$fields[0]\n";
|
||||
next;
|
||||
}
|
||||
else {
|
||||
if ($fields[6] =~ /FLAG_DEPRECATED/) {
|
||||
print "*$fields[0]".' 'x(31-length($fields[0]));
|
||||
}
|
||||
else {
|
||||
print "$fields[0]".' 'x(32-length($fields[0]));
|
||||
}
|
||||
}
|
||||
if (($fields[2] =~ /P_GLOBAL/) || ($fields[6] =~ /FLAG_GLOBAL/)) {
|
||||
if ($fields[6] =~ /FLAG_GLOBAL/) {
|
||||
print "*";
|
||||
}
|
||||
else {
|
||||
print " ";
|
||||
}
|
||||
if ($fields[6] =~ /FLAG_BASIC/) {
|
||||
print "BASIC ";
|
||||
}
|
||||
else {
|
||||
print "ADVANCED ";
|
||||
}
|
||||
}
|
||||
else {
|
||||
print " no ";
|
||||
}
|
||||
if ($fields[6] =~ /FLAG_SHARE/) {
|
||||
if ($fields[6] =~ /FLAG_BASIC/) {
|
||||
print "BASIC ";
|
||||
}
|
||||
else {
|
||||
print "ADVANCED ";
|
||||
}
|
||||
}
|
||||
else {
|
||||
print "no ";
|
||||
}
|
||||
if ($fields[6] =~ /FLAG_PRINT/) {
|
||||
if ($fields[6] =~ /FLAG_BASIC/) {
|
||||
print "BASIC";
|
||||
}
|
||||
else {
|
||||
print "ADVANCED";
|
||||
}
|
||||
}
|
||||
else {
|
||||
print "no";
|
||||
}
|
||||
print "\n";
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user