|
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17 System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64 User : nobody ( 99) PHP Version : 5.2.17 Disable Function : NONE Directory : /proc/21573/task/21573/root/usr/share/system-config-samba/ |
Upload File : |
#!/usr/bin/python
"""Usage: man smb.conf | ./sambaoptionscheck.py"""
import sambaDefaults
import re
import sys
import string
if __name__ == "__main__":
global_re = re.compile ('^\s*(?P<option>.*\S)\s+\(G\)\s+$')
section_re = re.compile ('^\s*(?P<option>.*\S)\s+\(S\)\s+$')
lines = sys.stdin.readlines ()
global_options = {}
section_options = {}
for line in lines:
string.rstrip (line)
m = global_re.match (line)
if m:
option = m.group("option")
global_options[option] = option
else:
m = section_re.match (line)
if m:
option = m.group("option")
section_options[option] = option
keys = sambaDefaults.global_keys.keys ()
keys.sort ()
for o in keys:
if not global_options.has_key (o):
print "unknown global option", o
keys = sambaDefaults.section_keys.keys ()
keys.sort ()
for o in keys:
if not section_options.has_key (o):
print "unknown section option", o
keys = global_options.keys ()
keys.sort ()
for o in keys:
if sambaDefaults.section_keys.has_key (o):
print "should be global option:", o
elif not sambaDefaults.global_keys.has_key (o):
print "missing global option", o
keys = section_options.keys ()
keys.sort ()
for o in keys:
if sambaDefaults.global_keys.has_key (o):
print "should be section option:", o
if not sambaDefaults.section_keys.has_key (o):
print "missing section option", o