1###################################################################### 2## 3## smb.conf parameter classes 4## 5## Copyright (C) Gerald Carter 2004. 6## 7## This program is free software; you can redistribute it and/or modify 8## it under the terms of the GNU General Public License as published by 9## the Free Software Foundation; either version 2 of the License, or 10## (at your option) any later version. 11## 12## This program is distributed in the hope that it will be useful, 13## but WITHOUT ANY WARRANTY; without even the implied warranty of 14## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15## GNU General Public License for more details. 16## 17## You should have received a copy of the GNU General Public License 18## along with this program; if not, write to the Free Software 19## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 20## 21###################################################################### 22 23import string 24 25##################################################################### 26## Base class for Samba smb.conf parameters 27class SambaParm : 28 def __init__( self ) : 29 pass 30 31 def StringValue( self ) : 32 return self.value 33 34##################################################################### 35## Boolean smb,conf parm 36class SambaParmBool( SambaParm ): 37 def __init__( self, value ) : 38 x = string.upper(value) 39 self.valid = True 40 41 if x=="YES" or x=="TRUE" or x=="1": 42 self.value = True 43 elif x=="NO" or x=="FALSE" or x=="0": 44 self.value = False 45 else: 46 self.valid = False 47 return self 48 49 def SetValue( self, value ) : 50 x = string.upper(value) 51 self.valid = True 52 53 if x=="YES" or x=="TRUE" or x=="1": 54 self.value = True 55 elif x=="NO" or x=="FALSE" or x=="0": 56 self.value = False 57 else: 58 self.valid = False 59 return 60 61 def StringValue( self ) : 62 if self.value : 63 return "yes" 64 else: 65 return "no" 66 67##################################################################### 68## Boolean smb,conf parm (inverts) 69class SambaParmBoolRev( SambaParmBool ) : 70 def __init__( self, value ): 71 SambaParmBool.__init__( self, value ) 72 if self.valid : 73 self.value = not self.value 74 75 76##################################################################### 77## string smb.conf parms 78class SambaParmString( SambaParm ): 79 def __init__( self, value ): 80 self.value = value 81 self.valid = True 82 83 84 85