diff options
author | David Schmitt <david.schmitt@puppetlabs.com> | 2015-04-22 16:04:00 -0700 |
---|---|---|
committer | David Schmitt <david.schmitt@puppetlabs.com> | 2015-05-05 13:30:57 +0100 |
commit | 9bae8356fded9d1c7aaea96cba246709bfe1a516 (patch) | |
tree | 84735c999d69fa72a70957beda6516600dd0f33a /lib | |
parent | 6a0a6153d59715d07f6bc50135df4adbae3d1334 (diff) | |
download | puppet-stdlib-9bae8356fded9d1c7aaea96cba246709bfe1a516.tar.gz puppet-stdlib-9bae8356fded9d1c7aaea96cba246709bfe1a516.tar.bz2 |
pw_hash: avoid ruby magic when running on java
Diffstat (limited to 'lib')
-rw-r--r-- | lib/puppet/parser/functions/pw_hash.rb | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/lib/puppet/parser/functions/pw_hash.rb b/lib/puppet/parser/functions/pw_hash.rb index ad3e393..4682a63 100644 --- a/lib/puppet/parser/functions/pw_hash.rb +++ b/lib/puppet/parser/functions/pw_hash.rb @@ -42,15 +42,13 @@ Puppet::Parser::Functions::newfunction( if 'test'.crypt('$1$1') != '$1$1$Bp8CU9Oujr9SSEw53WV6G.' # JRuby < 1.7.17 if RUBY_PLATFORM == 'java' - # override String#crypt for password variable - def password.crypt(salt) - # puppetserver bundles Apache Commons Codec - org.apache.commons.codec.digest.Crypt.crypt(self.to_java_bytes, salt) - end + # puppetserver bundles Apache Commons Codec + org.apache.commons.codec.digest.Crypt.crypt(password.to_java_bytes, salt) else # MS Windows and other systems that don't support enhanced salts raise Puppet::ParseError, 'system does not support enhanced salts' end + else + password.crypt("$#{hash_type}$#{args[2]}") end - password.crypt("$#{hash_type}$#{args[2]}") end |