putty-key 1.1.1 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7206dacd7197ee9c1344a8cbf607c72614ab3031241bb72a32648bbe62cd784a
4
- data.tar.gz: d2835eaa489968b975a93c7cb89e8d7b1dde7e52dc597cc48b54c2b3d9c59c5e
3
+ metadata.gz: fadb6e886b5ba8f925b19e5bb0b9e6b3c3744872da4dc930cb7cbbaba410f59e
4
+ data.tar.gz: 8e8bff9c4354b1b72786ac66c0974d97462a5e1475b61648f563a2daf94c5244
5
5
  SHA512:
6
- metadata.gz: 0bc6d6331bd8e27ebb082a3bee81b71953cc75e7eea0c80cb6aa3577b4f47a22b379683188a800321848aecffd6e5e6ead37fc1691593c717f9a5b189a03f671
7
- data.tar.gz: 5e9b7f92503ba1d3ee96089d42fc20f0ab59203c80c6eca9c2e284df67dacf877356ef6a8bbadca8ac569250f9b965b290f5904bfd6885f9f1648e76c0a39dfc
6
+ metadata.gz: 7f6b90de7cf2771e38aab458a076e0694869772824c17167a5b7b11f62929b3651d6833fe1127a38c3fa2e5df4118b5712fd8c09815be7eacb9858ce7cc45fe8
7
+ data.tar.gz: bcd9f24dd8573ed23ea8aac8d2a8db7791a27afcff2c78330e96680458f8697bc1139f0203eaaefc0191bd25a4a0f5c727e83ee762e6b5273c58530d37fb6a12
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGES.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changes #
2
2
 
3
+ ## Version 1.1.3 - 18-Apr-2025 ##
4
+
5
+ * Fix `Java::JavaLang::NullPointerException` being raised instead of
6
+ `PuTTY::Key::InvalidStateError` by `OpenSSL::PKey::EC#to_ppk` on JRuby 9.4
7
+ when the key is not initialized (a separate issue to the one fixed in version
8
+ 1.1.2).
9
+
10
+
11
+ ## Version 1.1.2 - 16-Oct-2024 ##
12
+
13
+ * Fix `Java::JavaLang::NullPointerException` being raised instead of
14
+ `PuTTY::Key::InvalidStateError` by `OpenSSL::PKey::EC#to_ppk` on JRuby 9.4
15
+ when the key is not initialized.
16
+
17
+
3
18
  ## Version 1.1.1 - 23-Oct-2022 ##
4
19
 
5
20
  * Add support for Ruby 3.2.
data/Gemfile CHANGED
@@ -15,6 +15,22 @@ group :test do
15
15
  gem 'coveralls', git: 'https://github.com/philr/coveralls-ruby.git', require: false if RUBY_VERSION < '2.3'
16
16
  gem 'coveralls_reborn', '~> 0.13', require: false if RUBY_VERSION >= '2.3'
17
17
 
18
+ # term-ansicolor is a dependency of coveralls. All versions are falsely
19
+ # declared as compatible with any Ruby version.
20
+ #
21
+ # Limit to an earlier compatible version.
22
+ if RUBY_VERSION < '2.5'
23
+ gem 'term-ansicolor', '< 1.9'
24
+ end
25
+
26
+ # tins is a dependency of coveralls. From 1.33.0 it depends on bigdecimal,
27
+ # which can't be installed on old JRuby versions.
28
+ #
29
+ # Limit to an earlier compatible version.
30
+ if RUBY_ENGINE == 'jruby'
31
+ gem 'tins', '< 1.33'
32
+ end
33
+
18
34
  # The source version of ffi 1.15.5 is declared as compatible with Ruby >= 2.3.
19
35
  # The binary version of 1.15.5 is declared as compatible with Ruby >= 2.4, so
20
36
  # doesn't get used. The using the source version results in a segmentation
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2016-2022 Philip Ross
1
+ Copyright (c) 2016-2024 Philip Ross
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining a copy of
4
4
  this software and associated documentation files (the "Software"), to deal in
data/Rakefile CHANGED
@@ -4,11 +4,11 @@ require 'rubygems/package_task'
4
4
  require 'rake/testtask'
5
5
 
6
6
  BASE_DIR = File.expand_path(File.dirname(__FILE__))
7
+ GEMSPEC_PATH = File.join(BASE_DIR, 'putty-key.gemspec')
8
+ spec = TOPLEVEL_BINDING.eval(File.read(GEMSPEC_PATH), GEMSPEC_PATH)
7
9
 
8
10
  task :default => :test
9
11
 
10
- spec = eval(File.read('putty-key.gemspec'))
11
-
12
12
  # Attempt to find the private key and return a spec with added options for
13
13
  # signing the gem if found.
14
14
  def add_signing_key(spec)
@@ -25,6 +25,11 @@ module PuTTY
25
25
 
26
26
  private_constant :SSH_CURVES
27
27
 
28
+ # Either a real JRuby NullPointerException, or a fake class that won't be
29
+ # raised. Can be rescued to handle NullPointerException on jruby.
30
+ JavaNullPointerException = RUBY_ENGINE == 'jruby' ? Java::JavaLang::NullPointerException : Class.new(Exception)
31
+ private_constant :JavaNullPointerException
32
+
28
33
  # OpenSSL version helper methods.
29
34
  #
30
35
  # @private
@@ -355,7 +360,12 @@ module PuTTY
355
360
  # @raise [UnsupportedCurveError] If the key uses a curve that is not
356
361
  # supported by PuTTY.
357
362
  def to_ppk
358
- curve = group && group.curve_name
363
+ curve = begin
364
+ g = group
365
+ g && g.curve_name
366
+ rescue JavaNullPointerException
367
+ nil
368
+ end
359
369
  raise InvalidStateError, 'The key has not been fully initialized (a curve name must be assigned)' unless curve
360
370
  ssh_curve = SSH_CURVES[curve]
361
371
  raise UnsupportedCurveError, "The curve '#{curve}' is not supported" unless ssh_curve
@@ -3,6 +3,6 @@
3
3
  module PuTTY
4
4
  module Key
5
5
  # The PuTTY::Key version number.
6
- VERSION = '1.1.1'
6
+ VERSION = '1.1.3'
7
7
  end
8
8
  end
data/putty-key.gemspec CHANGED
@@ -1,4 +1,4 @@
1
- require File.expand_path(File.join('..', 'lib', 'putty', 'key', 'version'), __FILE__)
1
+ require_relative 'lib/putty/key/version'
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'putty-key'
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,11 +1,10 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: putty-key
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Philip Ross
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain:
11
10
  - |
@@ -29,7 +28,7 @@ cert_chain:
29
28
  J3Zn/kSTjTekiaspyGbczC3PUaeJNxr+yCvR4sk71Xmk/GaKKGOHedJ1uj/LAXrA
30
29
  MR0mpl7b8zCg0PFC1J73uw==
31
30
  -----END CERTIFICATE-----
32
- date: 2022-10-23 00:00:00.000000000 Z
31
+ date: 2025-04-18 00:00:00.000000000 Z
33
32
  dependencies:
34
33
  - !ruby/object:Gem::Dependency
35
34
  name: ffi
@@ -139,10 +138,9 @@ licenses:
139
138
  metadata:
140
139
  bug_tracker_uri: https://github.com/philr/putty-key/issues
141
140
  changelog_uri: https://github.com/philr/putty-key/blob/master/CHANGES.md
142
- documentation_uri: https://rubydoc.info/gems/putty-key/1.1.1
141
+ documentation_uri: https://rubydoc.info/gems/putty-key/1.1.3
143
142
  homepage_uri: https://github.com/philr/putty-key
144
- source_code_uri: https://github.com/philr/putty-key/tree/v1.1.1
145
- post_install_message:
143
+ source_code_uri: https://github.com/philr/putty-key/tree/v1.1.3
146
144
  rdoc_options:
147
145
  - "--title"
148
146
  - PuTTY::Key
@@ -164,8 +162,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
164
162
  version: '0'
165
163
  requirements:
166
164
  - libargon2 to handle format 3 .ppk files
167
- rubygems_version: 3.3.7
168
- signing_key:
165
+ rubygems_version: 3.6.2
169
166
  specification_version: 4
170
167
  summary: PuTTY private key (.ppk) library. Supports reading and writing with a refinement
171
168
  to OpenSSL::PKey to allow key conversion.
metadata.gz.sig CHANGED
@@ -1,2 +1,2 @@
1
-
2
- ����z@����@������{�����[�⢉{` �n�����(�r�gP��-�r�ч�v��EpAt5�c�u��30SKA��SU����e��fw�h#]�4�ϼC=H�������I� n9]�mmq�ž����
1
+ c�\+!�|�bV�.0��l��uq��u攸qX�xKz�[4�����gP���V��Wx�F ��_d B�_�c���C�A��Cƚ ��.j#EH��Th�.u7�<n~/�e���*v�1{�Q �&n3���
2
+ !w!`��߻��¦�j�����O��y@�٭���~�ݸ>CG���y��(槌pQ��m�ϊ9c[N�&���WT��ܨ0��"FOm��;Q]0y_d��R�\E r<��md��w6��%a|����ό