View | Details | Raw Unified | Return to bug 41005 | Differences between
and this patch

Collapse All | Expand All

(-)a/services/univention-bind/bind.py (-13 / +13 lines)
 Lines 104-133   def validate_zonename(zonename): Link Here 
104
	'foo'
104
	'foo'
105
	>>> validate_zonename('foo.bar')
105
	>>> validate_zonename('foo.bar')
106
	'foo.bar'
106
	'foo.bar'
107
	>>> validate_zonename('foo.zone')  # doctest: +IGNORE_EXCEPTION_DETAIL
107
	>>> validate_zonename('foo.zone')  # doctest: +ELLIPSIS
108
	Traceback (most recent call last):
108
	Traceback (most recent call last):
109
	...
109
	...
110
	InvalidZone:
110
	InvalidZone: ...
111
	>>> validate_zonename('foo.proxy')  # doctest: +IGNORE_EXCEPTION_DETAIL
111
	>>> validate_zonename('foo.proxy')  # doctest: +ELLIPSIS
112
	Traceback (most recent call last):
112
	Traceback (most recent call last):
113
	...
113
	...
114
	InvalidZone:
114
	InvalidZone: ...
115
	>>> validate_zonename('.')  # doctest: +IGNORE_EXCEPTION_DETAIL
115
	>>> validate_zonename('.')  # doctest: +ELLIPSIS
116
	Traceback (most recent call last):
116
	Traceback (most recent call last):
117
	...
117
	...
118
	InvalidZone:
118
	InvalidZone: ...
119
	>>> validate_zonename('..')  # doctest: +IGNORE_EXCEPTION_DETAIL
119
	>>> validate_zonename('..')  # doctest: +ELLIPSIS
120
	Traceback (most recent call last):
120
	Traceback (most recent call last):
121
	...
121
	...
122
	InvalidZone:
122
	InvalidZone: ...
123
	>>> validate_zonename('fo..o')  # doctest: +IGNORE_EXCEPTION_DETAIL
123
	>>> validate_zonename('fo..o')  # doctest: +ELLIPSIS
124
	Traceback (most recent call last):
124
	Traceback (most recent call last):
125
	...
125
	...
126
	InvalidZone:
126
	InvalidZone: ...
127
	>>> validate_zonename('fo"bar"o')  # doctest: +IGNORE_EXCEPTION_DETAIL
127
	>>> validate_zonename('fo"bar"o')  # doctest: +ELLIPSIS
128
	Traceback (most recent call last):
128
	Traceback (most recent call last):
129
	...
129
	...
130
	InvalidZone:
130
	InvalidZone: ...
131
	"""
131
	"""
132
	if not zonename:
132
	if not zonename:
133
		raise InvalidZone('empty zonename not allowed')
133
		raise InvalidZone('empty zonename not allowed')
 Lines 135-141   def validate_zonename(zonename): Link Here 
135
		raise InvalidZone('zone name %r contains invalid characters' % (zonename,))
135
		raise InvalidZone('zone name %r contains invalid characters' % (zonename,))
136
	if zonename.endswith('.zone') or zonename.endswith('.proxy'):
136
	if zonename.endswith('.zone') or zonename.endswith('.proxy'):
137
		raise InvalidZone('.zone or .proxy TLD are not supported.')
137
		raise InvalidZone('.zone or .proxy TLD are not supported.')
138
	if '..' in zonename or zonename in ('.', '..'):
138
	if '..' in zonename or zonename == '.':
139
		raise InvalidZone('zone name must not be ".", ".." or contain "..".')
139
		raise InvalidZone('zone name must not be ".", ".." or contain "..".')
140
	if zonename in ('0.in-addr.arpa', '127.in-addr.arpa', '255.in-addr.arpa'):
140
	if zonename in ('0.in-addr.arpa', '127.in-addr.arpa', '255.in-addr.arpa'):
141
		raise InvalidZone('zone must not be 0, 127, 255.')
141
		raise InvalidZone('zone must not be 0, 127, 255.')

Return to bug 41005