###################################################################### ## ## smb.conf parameter classes ## ## Copyright (C) Gerald Carter 2004. ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation; either version 3 of the License, or ## (at your option) any later version. ## ## This program is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with this program; if not, see <http://www.gnu.org/licenses/>. ## ###################################################################### import string ##################################################################### ## Base class for Samba smb.conf parameters class SambaParm : def __init__( self ) : pass def StringValue( self ) : return self.value ##################################################################### ## Boolean smb,conf parm class SambaParmBool( SambaParm ): def __init__( self, value ) : x = string.upper(value) self.valid = True if x=="YES" or x=="TRUE" or x=="1": self.value = True elif x=="NO" or x=="FALSE" or x=="0": self.value = False else: self.valid = False return self def SetValue( self, value ) : x = string.upper(value) self.valid = True if x=="YES" or x=="TRUE" or x=="1": self.value = True elif x=="NO" or x=="FALSE" or x=="0": self.value = False else: self.valid = False return def StringValue( self ) : if self.value : return "yes" else: return "no" ##################################################################### ## Boolean smb,conf parm (inverts) class SambaParmBoolRev( SambaParmBool ) : def __init__( self, value ): SambaParmBool.__init__( self, value ) if self.valid : self.value = not self.value ##################################################################### ## string smb.conf parms class SambaParmString( SambaParm ): def __init__( self, value ): self.value = value self.valid = True