mirror of
https://github.com/internetee/registry.git
synced 2025-05-22 04:09:52 +02:00
Story #107192666 - bugfix: check content before determining XML format. Only use DS if DS present.:wq
This commit is contained in:
parent
2cf7dd3a5c
commit
9f4651bdaa
1 changed files with 27 additions and 12 deletions
|
@ -61,19 +61,34 @@ xml.epp_head do
|
|||
end
|
||||
|
||||
xml.extension do
|
||||
def tag_key_data(xml, key)
|
||||
xml.tag!('secDNS:keyData') do
|
||||
xml.tag!('secDNS:flags', key.flags)
|
||||
xml.tag!('secDNS:protocol', key.protocol)
|
||||
xml.tag!('secDNS:alg', key.alg)
|
||||
xml.tag!('secDNS:pubKey', key.public_key)
|
||||
end
|
||||
end
|
||||
|
||||
def tag_ds_data(xml, key)
|
||||
xml.tag!('secDNS:dsData') do
|
||||
xml.tag!('secDNS:keyTag', key.ds_key_tag)
|
||||
xml.tag!('secDNS:alg', key.ds_alg)
|
||||
xml.tag!('secDNS:digestType', key.ds_digest_type)
|
||||
xml.tag!('secDNS:digest', key.ds_digest)
|
||||
tag_key_data(xml, key) if key.public_key.present?
|
||||
end
|
||||
end
|
||||
|
||||
xml.tag!('secDNS:infData', 'xmlns:secDNS' => 'urn:ietf:params:xml:ns:secDNS-1.1') do
|
||||
@domain.dnskeys.sort.each do |key|
|
||||
xml.tag!('secDNS:dsData') do
|
||||
xml.tag!('secDNS:keyTag', key.ds_key_tag)
|
||||
xml.tag!('secDNS:alg', key.ds_alg)
|
||||
xml.tag!('secDNS:digestType', key.ds_digest_type)
|
||||
xml.tag!('secDNS:digest', key.ds_digest)
|
||||
xml.tag!('secDNS:keyData') do
|
||||
xml.tag!('secDNS:flags', key.flags)
|
||||
xml.tag!('secDNS:protocol', key.protocol)
|
||||
xml.tag!('secDNS:alg', key.alg)
|
||||
xml.tag!('secDNS:pubKey', key.public_key)
|
||||
end
|
||||
# might not have ds in first key? maybe check any? k.ds_digest if requirements change (DS not accepted by EIS)
|
||||
if @domain.dnskeys[0].ds_digest.blank?
|
||||
@domain.dnskeys.sort.each do |key|
|
||||
tag_key_data(xml, key)
|
||||
end
|
||||
else
|
||||
@domain.dnskeys.sort.each do |key|
|
||||
tag_ds_data(xml, key)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue