@Override public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { Assert.checkNotNullParam("callbacks", callbacks); for (Callback callback : callbacks) { if (callback instanceof NameCallback) { NameCallback nameCallback = (NameCallback) callback; if (principal != null) nameCallback.setName(this.principal.getName()); } else if (callback instanceof PasswordCallback) { ((PasswordCallback) callback).setPassword(evidence.getGuess()); } else { CallbackUtil.unsupported(callback); } } } }
/** * A utility to handle a callback which is unsupported. Optional callbacks will be ignored, otherwise the * exception will be thrown. In the case of optional callbacks, this method <em>will</em> return. * * @param callback the callback which is not supported * @throws UnsupportedCallbackException if the callback is not optional */ public static void unsupported(Callback callback) throws UnsupportedCallbackException { if (! isOptional(callback)) { throw new FastUnsupportedCallbackException(callback); } } }
/** * Convenience method to handle a channel binding callback. * * @param channelBindingCallback the callback (must not be {@code null}) * @param serverCerts the server certificate chain * @throws UnsupportedCallbackException if the server certificates are not present or unsupported and the callback is not optional */ public static void handleChannelBindingCallback(ChannelBindingCallback channelBindingCallback, X509Certificate[] serverCerts) throws UnsupportedCallbackException { if (serverCerts != null && serverCerts.length > 0) { // tls-server-end-point try { final byte[] bindingData = getChannelBindingData(serverCerts[0]); if (bindingData != null) { channelBindingCallback.setBindingData(bindingData); channelBindingCallback.setBindingType(TLS_SERVER_ENDPOINT); return; } } catch (CertificateEncodingException | NoSuchAlgorithmException e) { // fail silently } } CallbackUtil.unsupported(channelBindingCallback); }
/** * A utility to handle a callback which is unsupported. Optional callbacks will be ignored, otherwise the * exception will be thrown. In the case of optional callbacks, this method <em>will</em> return. * * @param callback the callback which is not supported * @throws UnsupportedCallbackException if the callback is not optional */ public static void unsupported(Callback callback) throws UnsupportedCallbackException { if (! isOptional(callback)) { throw new FastUnsupportedCallbackException(callback); } } }
} catch (GeneralSecurityException e) { CallbackUtil.unsupported(passwordCallback); continue; CallbackUtil.unsupported(callback); continue; } else if (callback instanceof CredentialCallback) { inputCallback.setText(defaultText); } else { CallbackUtil.unsupported(callback); continue; userCallbacks.add(callback); } else { CallbackUtil.unsupported(callback); continue;
/** * A utility to handle a callback which is unsupported. Optional callbacks will be ignored, otherwise the * exception will be thrown. In the case of optional callbacks, this method <em>will</em> return. * * @param callback the callback which is not supported * @throws UnsupportedCallbackException if the callback is not optional */ public static void unsupported(Callback callback) throws UnsupportedCallbackException { if (! isOptional(callback)) { throw new FastUnsupportedCallbackException(callback); } } }
CallbackUtil.unsupported(callback); handleOne(callbacks, index + 1);
/** * A utility to handle a callback which is unsupported. Optional callbacks will be ignored, otherwise the * exception will be thrown. In the case of optional callbacks, this method <em>will</em> return. * * @param callback the callback which is not supported * @throws UnsupportedCallbackException if the callback is not optional */ public static void unsupported(Callback callback) throws UnsupportedCallbackException { if (! isOptional(callback)) { throw new FastUnsupportedCallbackException(callback); } } }
CallbackUtil.unsupported(callback); handleOne(callbacks, idx + 1);
@Override public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { Assert.checkNotNullParam("callbacks", callbacks); for (Callback callback : callbacks) { if (callback instanceof NameCallback) { NameCallback nameCallback = (NameCallback) callback; if (principal != null) nameCallback.setName(this.principal.getName()); } else if (callback instanceof PasswordCallback) { ((PasswordCallback) callback).setPassword(evidence.getGuess()); } else { CallbackUtil.unsupported(callback); } } } }
@Override public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { Assert.checkNotNullParam("callbacks", callbacks); for (Callback callback : callbacks) { if (callback instanceof NameCallback) { NameCallback nameCallback = (NameCallback) callback; if (principal != null) nameCallback.setName(this.principal.getName()); } else if (callback instanceof PasswordCallback) { ((PasswordCallback) callback).setPassword(evidence.getGuess()); } else { CallbackUtil.unsupported(callback); } } } }
@Override public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException { Assert.checkNotNullParam("callbacks", callbacks); for (Callback callback : callbacks) { if (callback instanceof NameCallback) { NameCallback nameCallback = (NameCallback) callback; if (principal != null) nameCallback.setName(this.principal.getName()); } else if (callback instanceof PasswordCallback) { ((PasswordCallback) callback).setPassword(evidence.getGuess()); } else { CallbackUtil.unsupported(callback); } } } }
/** * Convenience method to handle a channel binding callback. * * @param channelBindingCallback the callback (must not be {@code null}) * @param serverCerts the server certificate chain * @throws UnsupportedCallbackException if the server certificates are not present or unsupported and the callback is not optional */ public static void handleChannelBindingCallback(ChannelBindingCallback channelBindingCallback, X509Certificate[] serverCerts) throws UnsupportedCallbackException { if (serverCerts != null && serverCerts.length > 0) { // tls-server-end-point try { final byte[] bindingData = getChannelBindingData(serverCerts[0]); if (bindingData != null) { channelBindingCallback.setBindingData(bindingData); channelBindingCallback.setBindingType(TLS_SERVER_ENDPOINT); return; } } catch (CertificateEncodingException | NoSuchAlgorithmException e) { // fail silently } } CallbackUtil.unsupported(channelBindingCallback); }
/** * Convenience method to handle a channel binding callback. * * @param channelBindingCallback the callback (must not be {@code null}) * @param serverCerts the server certificate chain * @throws UnsupportedCallbackException if the server certificates are not present or unsupported and the callback is not optional */ public static void handleChannelBindingCallback(ChannelBindingCallback channelBindingCallback, X509Certificate[] serverCerts) throws UnsupportedCallbackException { if (serverCerts != null && serverCerts.length > 0) { // tls-server-end-point try { final byte[] bindingData = getChannelBindingData(serverCerts[0]); if (bindingData != null) { channelBindingCallback.setBindingData(bindingData); channelBindingCallback.setBindingType(TLS_SERVER_ENDPOINT); return; } } catch (CertificateEncodingException | NoSuchAlgorithmException e) { // fail silently } } CallbackUtil.unsupported(channelBindingCallback); }
/** * Convenience method to handle a channel binding callback. * * @param channelBindingCallback the callback (must not be {@code null}) * @param serverCerts the server certificate chain * @throws UnsupportedCallbackException if the server certificates are not present or unsupported and the callback is not optional */ public static void handleChannelBindingCallback(ChannelBindingCallback channelBindingCallback, X509Certificate[] serverCerts) throws UnsupportedCallbackException { if (serverCerts != null && serverCerts.length > 0) { // tls-server-end-point try { final byte[] bindingData = getChannelBindingData(serverCerts[0]); if (bindingData != null) { channelBindingCallback.setBindingData(bindingData); channelBindingCallback.setBindingType(TLS_SERVER_ENDPOINT); return; } } catch (CertificateEncodingException | NoSuchAlgorithmException e) { // fail silently } } CallbackUtil.unsupported(channelBindingCallback); }
} catch (GeneralSecurityException e) { CallbackUtil.unsupported(passwordCallback); continue; CallbackUtil.unsupported(callback); continue; } else if (callback instanceof CredentialCallback) { inputCallback.setText(defaultText); } else { CallbackUtil.unsupported(callback); continue; userCallbacks.add(callback); } else { CallbackUtil.unsupported(callback); continue;
} catch (GeneralSecurityException e) { CallbackUtil.unsupported(passwordCallback); continue; CallbackUtil.unsupported(callback); continue; } else if (callback instanceof CredentialCallback) { inputCallback.setText(defaultText); } else { CallbackUtil.unsupported(callback); continue; userCallbacks.add(callback); } else { CallbackUtil.unsupported(callback); continue;
} catch (GeneralSecurityException e) { CallbackUtil.unsupported(passwordCallback); continue; CallbackUtil.unsupported(callback); continue; } else if (callback instanceof CredentialCallback) { inputCallback.setText(defaultText); } else { CallbackUtil.unsupported(callback); continue; userCallbacks.add(callback); } else { CallbackUtil.unsupported(callback); continue;
}); } else { CallbackUtil.unsupported(current); CallbackUtil.unsupported(current);
}); } else { CallbackUtil.unsupported(current); CallbackUtil.unsupported(current);