script to find undocumented params
Bradley W. Langhorst
brad at langhorst.com
Thu May 2 11:10:01 GMT 2002
I wrote a little perl script to find those params that have no
documentation
I don't know what most of them do
but i'll get cracking on finding out
here's the output:
display charset
hostname lookups
ldap user suffix
add group script
realm
wins partners
addprinter command
unix charset
lock spin time
admin log
inherit acls
add user to group script
ssl ca certfile
winbind enum groups
max packet
unicode
delete user from group script
wtmp directory
packet size
mangling method
alternate permissions
force directory security mode
ads server
paranoid server security
-valid
ssl ca certdir
lock spin count
winbind enum users
use spnego
delete group script
deleteprinter command
ldap machine suffix
ntlm auth
dos charset
here's the script - in case somebody else wants it
#!/usr/bin/perl -w
#reads in the list of parameters from the source
#compares this list to the list of parms documented in the docbook
source
#prints out the names of the parameters that are in need of
documentation
my $doc_file = "./docs/docbook/manpages/smb.conf.5.sgml";
my $source_file = "./source/param/loadparm.c";
my $ln;
my %params;
open(SOURCE, "<$source_file") ||
die "Unable to open $source_file for input: $!\n";
open(DOC, "<$doc_file") ||
die "Unable to open $doc_file for input: $!\n";
while ($ln= <SOURCE>) {
last if $ln =~ m/^static\ struct\ parm_struct\ parm_table.*/;
} #burn through the preceding lines
while ($ln = <SOURCE>) {
last if $ln =~ m/^\s*\}\;\s*$/;
#pull in the param names only
next if $ln =~ m/.*P_SEPARATOR.*/;
$ln =~ m/.*\"(.*)\".*/;
$params{lc($1)}='not_found'; #not case sensitive
}
close SOURCE;
#now read in the params list from the docs
@doclines = <DOC>;
foreach $ln (grep (/\<anchor\ id\=/, @doclines)) {
$ln =~ m/^.*\<anchor\
id\=\".*\"\>\s*(?:\<.*?\>)*\s*(.*?)(?:\s*\(?[S,G]?\)?\s*(\<\/term\>)?){1}\s*$/;
#print "got: $1 from: $ln";
if (exists $params{lc($1)}) {
$params{$1} = 'found';
}
}
foreach (keys %params) {
print "$_\n" if $params{$_} eq 'not_found';
}
More information about the samba-technical
mailing list