Code Review
/
puppet-modules
/
puppetlabs-apt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
(MODULES-4686) fix incorrect GPG keys parsing on Debian 9
[puppet-modules/puppetlabs-apt.git]
/
lib
/
puppet
/
provider
/
apt_key
/
apt_key.rb
diff --git
a/lib/puppet/provider/apt_key/apt_key.rb
b/lib/puppet/provider/apt_key/apt_key.rb
index 668fd0f18d2ee35c0addb98e1bd365956d7f2a11..3f95c3cc96af9c68f40234d6f07a9a3072be5173 100644
(file)
--- a/
lib/puppet/provider/apt_key/apt_key.rb
+++ b/
lib/puppet/provider/apt_key/apt_key.rb
@@
-26,15
+26,25
@@
Puppet::Type.type(:apt_key).provide(:apt_key) do
key_output = apt_key(cli_args)
end
key_output = apt_key(cli_args)
end
- pub_line, fpr_line = nil
+ pub_line,
sub_line,
fpr_line = nil
key_array = key_output.split("\n").collect do |line|
if line.start_with?('pub')
pub_line = line
key_array = key_output.split("\n").collect do |line|
if line.start_with?('pub')
pub_line = line
+ # reset fpr_line, to skip any previous subkeys which were collected
+ fpr_line = nil
+ sub_line = nil
+ elsif line.start_with?('sub')
+ sub_line = line
elsif line.start_with?('fpr')
fpr_line = line
end
elsif line.start_with?('fpr')
fpr_line = line
end
+ if (sub_line and fpr_line)
+ sub_line, fpr_line = nil
+ next
+ end
+
next unless (pub_line and fpr_line)
line_hash = key_line_hash(pub_line, fpr_line)
next unless (pub_line and fpr_line)
line_hash = key_line_hash(pub_line, fpr_line)