diff --git a/system-config-bind-4.0.2-DNSSECkey-record-column.patch b/system-config-bind-4.0.2-DNSSECkey-record-column.patch new file mode 100644 index 0000000..6a08d66 --- /dev/null +++ b/system-config-bind-4.0.2-DNSSECkey-record-column.patch @@ -0,0 +1,62 @@ +--- system-config-bind-4.0.2/RR.py.old 2005-08-09 20:09:57.000000000 +0200 ++++ system-config-bind-4.0.2/RR.py 2007-02-07 19:27:21.000000000 +0100 +@@ -201,13 +204,13 @@ + if self.desc.has_key(key): + val=getattr(self,key) + t=type(val) +- if ( t == str) or (t == int): +- yield[ self.desc[key], val ] ++ if ( t == str) or (t == int): ++ yield[ self.desc[key], val, 0] + else: + v='' + if val.__class__ == DNS.Name: + v = str(val) +- yield[ self.desc[key], v ] ++ yield[ self.desc[key], v, 0 ] + else: + if type(self.desc[key]) == list: + # handle records with variable length attr lists: +@@ -230,14 +233,14 @@ + elif hasattr(v,'value'): + v = v.value + if( v != None ): +- yield( desc, v ) ++ yield( desc, v, 0 ) + else: + if( hasattr(val,'label')): + v = val.label() + else: + v = str(val) +- yield[ self.desc[key], v ] +- yield [ _('Cache Time To Live'), self.TTL().label()] ++ yield[ self.desc[key], v, val.__class__ == DNS.Base64 ] ++ yield [ _('Cache Time To Live'), self.TTL().label(), 0] + + def max_value_label(self): + m=0 +--- system-config-bind-4.0.2/ZoneTree.py.old 2005-09-23 19:39:51.000000000 +0200 ++++ system-config-bind-4.0.2/ZoneTree.py 2007-02-07 19:14:23.000000000 +0100 +@@ -1269,8 +1269,20 @@ + data=""+str(r.Name())+"\n" + jlen=r.max_value_label() + 2 + jfmt='%-'+str(jlen)+'s' +- for name, val in r.value_labels(): +- data+=(jfmt % name)+": "+str(val)+"\n" ++ max_record_lenght = 30 ++ for name, val, wrap in r.value_labels(): ++ value_str = '' ++ if wrap: ++ input_str = str(val) ++ start = 0 ++ while start < len(input_str): ++ if start == 0: ++ data+=(jfmt % name)+": "+input_str[start:start+max_record_lenght]+'\n' ++ else: ++ data+=string.expandtabs('\t',jlen+2)+input_str[start:start+max_record_lenght]+'\n' ++ start = start + max_record_lenght ++ else: ++ data+=(jfmt % name)+": "+str(val)+"\n" + node='' + if len( rname ) and ( rname != z['zone'].zone_origin ): + if z['names'].has_key(rname): diff --git a/system-config-bind-4.0.2-rndc-label-correction.patch b/system-config-bind-4.0.2-rndc-label-correction.patch new file mode 100644 index 0000000..41b8fcf --- /dev/null +++ b/system-config-bind-4.0.2-rndc-label-correction.patch @@ -0,0 +1,84 @@ +--- system-config-bind-4.0.2/RRGUI.py.old 2006-03-14 21:30:48.000000000 +0100 ++++ system-config-bind-4.0.2/RRGUI.py 2007-02-12 14:02:17.000000000 +0100 +@@ -18,6 +18,8 @@ + import RR + import DNS + ++RDNC_KEY_NAME=_('Remote Nameserver Control Security Key') ++ + class Widget: + def __init__(s, d, r, a, k): + s.dialog = d +@@ -2225,17 +2227,17 @@ + if (s.attr.name == None) or (len(s.attr.name)==0): + name = s.entry.get_text() + if len(name) <= 0: +- s.bind.gui.modalError(s.bind.gui.gui,_('DNS Security Key Name Error'), +- _('A non-empty DNS Security Key Name is required.') ++ s.bind.gui.modalError(s.bind.gui.gui,_('Remote Nameserver Control Security Key Name Error'), ++ _('A non-empty Security Key Name is required.') + ) + return False + if s.bind.nmdc.__contains__(s.attr.key + [ name ]): +- s.bind.gui.modalError(s.bind.gui.gui,_('DNS Security Key Name Error'), ++ s.bind.gui.modalError(s.bind.gui.gui,_('Remote Nameserver Control Security Key Name Error'), + _('Key "%s" already exists.') % name + ) + return False + if s.bind.acls.has_key(name) or (name.lower() in ['none','any','localhost','localnets']) : +- s.bind.gui.modalError(s.bind.gui.gui,_('DNS Security Key Name Error'), ++ s.bind.gui.modalError(s.bind.gui.gui,_('Remote Nameserver Control Security Key Name Error'), + _('Name "%s" is an Access Control List name.') % name + ) + return False +@@ -2258,9 +2260,9 @@ + def keyDialog(s): + t='' + if (s.attr.name == None) or (len(s.attr.name)==0): +- t = _('New DNS Security Key') ++ t = _('New Remote Nameserver Control Security Key') + else: +- t = _('DNS Security Key')+' '+s.attr.name ++ t = RDNC_KEY_NAME+' '+s.attr.name + s.editDialog = gtk.Dialog(parent=s.gui.gui, title=t, + buttons= + (gtk.STOCK_OK, gtk.RESPONSE_OK, +--- system-config-bind-4.0.2/ZoneTree.py.old 2005-09-23 19:39:51.000000000 +0200 ++++ system-config-bind-4.0.2/ZoneTree.py 2007-02-12 14:02:39.000000000 +0100 +@@ -28,6 +28,8 @@ + INFO_COLUMN=2 + RECORD_COLUMN=3 + ++RDNC_KEY_NAME=_('Remote Nameserver Control Security Key') ++ + class ZoneNode: + def __init__(s, z): + s.z=z +@@ -263,7 +265,7 @@ + show_names = True + elif((selection.__class__ == DNS.ACL) or (selection.__class__==DNS.Key)): + choices=[['acl',_('Access Control List Filter'),DNS.ACL], +- ['key',_('DNS Security Key'),DNS.Key] ++ ['key', RDNC_KEY_NAME, DNS.Key] + ] + for choice in choices: + if show_names : +@@ -1077,7 +1079,7 @@ + for acl in s.bind.acls.keys(): + s.store.append(None,[s.acl_pic, acl, _('Access Control List Filter'), s.bind.acls[acl] ]) + for key in s.bind.keys.keys(): +- s.store.append(None,[s.key_pic, key, _('DNS Security Key'), s.bind.keys[key] ]) ++ s.store.append(None,[s.key_pic, key, RDNC_KEY_NAME, s.bind.keys[key] ]) + for svr in s.bind.servers.keys(): + s.store.append(None,[s.server_pic, svr, _('DNS Server') + ' ' + svr, s.bind.servers[svr]]) + if not s.bind.isViewed : +@@ -1092,7 +1094,7 @@ + s.store.append( s.bind.views[key]['node'], [s.acl_pic, _('From: Filter'), _('Access Control List Filter'), view.inputFilter ] ) + s.store.append( s.bind.views[key]['node'], [s.acl_pic, _('To: Filter'), _('Access Control List Filter'), view.outputFilter ] ) + for k in s.bind.views[key]['keys'].keys(): +- s.store.append(s.bind.views[key]['node'],[s.key_pic, k, _('DNS Security Key'), s.bind.views[key]['keys'][k] ]) ++ s.store.append(s.bind.views[key]['node'],[s.key_pic, k, RDNC_KEY_NAME, s.bind.views[key]['keys'][k] ]) + for svr in s.bind.views[key]['servers'].keys(): + s.store.append(s.bind.views[key]['node'],[s.server_pic, svr, _('DNS Server') + ' ' + svr, s.bind.views[key]['servers'][svr]]) + for key in s.bind.views.keys(): + diff --git a/system-config-bind.spec b/system-config-bind.spec index 78bcf6d..e0e7219 100644 --- a/system-config-bind.spec +++ b/system-config-bind.spec @@ -1,7 +1,7 @@ Summary: The Red Hat BIND DNS Configuration Tool. Name: system-config-bind Version: 4.0.2 -Release: 5%{?dist} +Release: 6%{?dist} License: GPL Group: Applications/System URL: http://people.redhat.com/~jvdias/system-config-bind @@ -11,6 +11,8 @@ Patch1: system-config-bind-4.0.2-version-2.patch Patch2: system-config-bind-4.0.2-check-child.patch Patch3: system-config-bind-4.0.2-SSHFPrecord.patch Patch4: system-config-bind-4.0.2-correct-typos.patch +Patch5: system-config-bind-4.0.2-rndc-label-correction.patch +Patch6: system-config-bind-4.0.2-DNSSECkey-record-column.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildArch: noarch BuildRequires: python, gettext, make, intltool @@ -37,6 +39,8 @@ DNS server. %patch2 -p1 %patch3 -p1 -b .sshfprecord %patch4 -p1 -b .correct-typos +%patch5 -p1 +%patch6 -p1 %build rm -rf $RPM_BUILD_ROOT @@ -103,6 +107,12 @@ if [ "$2" -gt 0 ]; then fi %changelog +* Tue Apr 3 2007 Ondrej Dvoracek - 4.0.2-6 +- Corrected rndc key labels +- Resolves #219795 +- Corrected DNSSEC key record column +- Resolves #219798 + * Tue Apr 3 2007 Ondrej Dvoracek - 4.0.2-5 - Added SSHFP Resource record - Resolves #205689