Fix managedBy label for DNS zone

Even though managedBy output parameter was only used for failed host
managedBy memberships, it was defined in global baseldap.py
classes. Incorrect label was then being displayed also for DNS zone
per-zone permission attribute with the same name.

Move managedBy output parameter to host plugin. Define proper managedBy
output parameter in DNS plugin to improve clarity of this attribute.

https://fedorahosted.org/freeipa/ticket/2946
This commit is contained in:
Martin Kosek
2012-08-17 11:00:37 +02:00
committed by Rob Crittenden
parent 2bf68115ce
commit a5c8dcd996
3 changed files with 16 additions and 3 deletions

View File

@@ -169,9 +169,6 @@ global_output_params = (
Str('memberservice',
label=_('Failed service/service groups'),
),
Str('managedby',
label=_('Failed managedby'),
),
Str('failed',
label=_('Failed to remove'),
flags=['suppress_empty'],

View File

@@ -1531,6 +1531,12 @@ def default_zone_update_policy(zone):
else:
return get_dns_forward_zone_update_policy(api.env.realm)
dnszone_output_params = (
Str('managedby',
label=_('Managedby permission'),
),
)
class dnszone(LDAPObject):
"""
DNS Zone, container for resource records.
@@ -1717,6 +1723,7 @@ api.register(dnszone)
class dnszone_add(LDAPCreate):
__doc__ = _('Create new DNS zone (SOA record).')
has_output_params = LDAPCreate.has_output_params + dnszone_output_params
takes_options = LDAPCreate.takes_options + (
Flag('force',
label=_('Force'),
@@ -1783,12 +1790,16 @@ api.register(dnszone_del)
class dnszone_mod(LDAPUpdate):
__doc__ = _('Modify DNS zone (SOA record).')
has_output_params = LDAPUpdate.has_output_params + dnszone_output_params
api.register(dnszone_mod)
class dnszone_find(LDAPSearch):
__doc__ = _('Search for DNS zones (SOA records).')
has_output_params = LDAPSearch.has_output_params + dnszone_output_params
def args_options_2_params(self, *args, **options):
# FIXME: Check that name_from_ip is valid. This is necessary because
# custom validation rules, including _validate_ipnet, are not
@@ -1833,6 +1844,8 @@ api.register(dnszone_find)
class dnszone_show(LDAPRetrieve):
__doc__ = _('Display information about a DNS zone (SOA record).')
has_output_params = LDAPRetrieve.has_output_params + dnszone_output_params
api.register(dnszone_show)

View File

@@ -172,6 +172,9 @@ host_output_params = (
Str('revocation_reason?',
label=_('Revocation reason'),
),
Str('managedby',
label=_('Failed managedby'),
),
)
def validate_ipaddr(ugettext, ipaddr):