Merge
This commit is contained in:
commit
d86a48ef37
@ -3,7 +3,7 @@ The GNU General Public License (GPL)
|
|||||||
Version 2, June 1991
|
Version 2, June 1991
|
||||||
|
|
||||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
Everyone is permitted to copy and distribute verbatim copies of this license
|
Everyone is permitted to copy and distribute verbatim copies of this license
|
||||||
document, but changing it is not allowed.
|
document, but changing it is not allowed.
|
||||||
@ -287,8 +287,8 @@ pointer to where the full notice is found.
|
|||||||
more details.
|
more details.
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License along
|
You should have received a copy of the GNU General Public License along
|
||||||
with this program; if not, write to the Free Software Foundation, Inc., 59
|
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
|
||||||
Also add information on how to contact you by electronic and paper mail.
|
Also add information on how to contact you by electronic and paper mail.
|
||||||
|
|
||||||
|
@ -90,6 +90,30 @@ final class RSAClientKeyExchange extends HandshakeMessage {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Retrieving the cipher's provider name for the debug purposes
|
||||||
|
* can throw an exception by itself.
|
||||||
|
*/
|
||||||
|
private static String safeProviderName(Cipher cipher) {
|
||||||
|
try {
|
||||||
|
return cipher.getProvider().toString();
|
||||||
|
} catch (Exception e) {
|
||||||
|
if (debug != null && Debug.isOn("handshake")) {
|
||||||
|
System.out.println("Retrieving The Cipher provider name" +
|
||||||
|
" caused exception " + e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
return cipher.toString() + " (provider name not available)";
|
||||||
|
} catch (Exception e) {
|
||||||
|
if (debug != null && Debug.isOn("handshake")) {
|
||||||
|
System.out.println("Retrieving The Cipher name" +
|
||||||
|
" caused exception " + e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return "(cipher/provider names not available)";
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Server gets the PKCS #1 (block format 02) data, decrypts
|
* Server gets the PKCS #1 (block format 02) data, decrypts
|
||||||
* it with its private key.
|
* it with its private key.
|
||||||
@ -132,15 +156,19 @@ final class RSAClientKeyExchange extends HandshakeMessage {
|
|||||||
cipher.getProvider().getName());
|
cipher.getProvider().getName());
|
||||||
} catch (InvalidKeyException | UnsupportedOperationException iue) {
|
} catch (InvalidKeyException | UnsupportedOperationException iue) {
|
||||||
if (debug != null && Debug.isOn("handshake")) {
|
if (debug != null && Debug.isOn("handshake")) {
|
||||||
System.out.println("The Cipher provider " +
|
System.out.println("The Cipher provider "
|
||||||
cipher.getProvider().getName() +
|
+ safeProviderName(cipher)
|
||||||
" caused exception: " + iue.getMessage());
|
+ " caused exception: " + iue.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
needFailover = true;
|
needFailover = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (needFailover) {
|
if (needFailover) {
|
||||||
|
// The cipher might be spoiled by unsuccessful call to init(),
|
||||||
|
// so request a fresh instance
|
||||||
|
cipher = JsseJce.getCipher(JsseJce.CIPHER_RSA_PKCS1);
|
||||||
|
|
||||||
// Use DECRYPT_MODE and dispose the previous initialization.
|
// Use DECRYPT_MODE and dispose the previous initialization.
|
||||||
cipher.init(Cipher.DECRYPT_MODE, privateKey);
|
cipher.init(Cipher.DECRYPT_MODE, privateKey);
|
||||||
boolean failed = false;
|
boolean failed = false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user