/* 361 */ le.initCause(e);
/* 362 */ throw le;
/* */ }
/* */ }
/* */
/* 366 */ DigestCallback callback = null;
/* 367 */ String callbackClassName = (String)this.options.get(digestOption);
/* 368 */ if (callbackClassName != null)
/* */ {
/* */ try
/* */ {
/* 372 */ ClassLoader loader = Thread.currentThread().getContextClassLoader();
/* 373 */ Class callbackClass = loader.loadClass(callbackClassName);
/* 374 */ callback = (DigestCallback)callbackClass.newInstance();
/* 375 */ if (this.log.isTraceEnabled())
/* 376 */ this.log.trace("Created DigestCallback: " + callback);
/* */ }
/* */ catch (Exception e)
/* */ {
/* 380 */ if (this.log.isTraceEnabled())
/* 381 */ this.log.trace("Failed to load DigestCallback", e);
/* 382 */ SecurityException ex = new SecurityException("Failed to load DigestCallback");
/* 383 */ ex.initCause(e);
/* 384 */ throw ex;
/* */ }
/* 386 */ Map tmp = new HashMap();
/* 387 */ tmp.putAll(this.options);
/* 388 */ tmp.put("javax.security.auth.login.name", username);
/* 389 */ tmp.put("javax.security.auth.login.password", password);
/* */
/* 391 */ callback.init(tmp);
/* */
/* 393 */ Callback[] callbacks = (Callback[])(Callback[])tmp.get("callbacks");
/* 394 */ if (callbacks != null)
/* */ {
/* */ try