File: SambaParm.py

package info (click to toggle)
samba 3.0.24-6etch10
  • links: PTS
  • area: main
  • in suites: etch
  • size: 49,836 kB
  • ctags: 44,390
  • sloc: ansic: 335,711; sh: 8,133; perl: 7,045; makefile: 3,107; python: 2,370; exp: 1,147; yacc: 881; awk: 486; csh: 58; sed: 45
file content (84 lines) | stat: -rw-r--r-- 2,353 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
######################################################################
##
##  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 2 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, write to the Free Software
##  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
##
######################################################################

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