2362N/A * Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved. 0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 0N/A * This code is free software; you can redistribute it and/or modify it 0N/A * under the terms of the GNU General Public License version 2 only, as 2362N/A * published by the Free Software Foundation. Oracle designates this 0N/A * particular file as subject to the "Classpath" exception as provided 2362N/A * by Oracle in the LICENSE file that accompanied this code. 0N/A * This code is distributed in the hope that it will be useful, but WITHOUT 0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 0N/A * version 2 for more details (a copy is included in the LICENSE file that 0N/A * accompanied this code). 0N/A * You should have received a copy of the GNU General Public License version 0N/A * 2 along with this work; if not, write to the Free Software Foundation, 0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 2362N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 2362N/A * or visit www.oracle.com if you need additional information or have any 0N/A * A Configuration implementation especially designed for JGSS. 0N/A * @author weijun.wang 0N/A * A new instance of LoginConfigImpl must be created for each login request 0N/A * since it's only used by a single (caller, mech) pair 0N/A * @param caller defined in GSSUtil as CALLER_XXX final fields 0N/A * @param oid defined in GSSUtil as XXX_MECH_OID final fields 0N/A * @param name Almost useless, since the (caller, mech) is already passed 0N/A * into constructor. The only use will be detecting OTHER which 0N/A * is called in LoginContext 0N/A // This is the second call from LoginContext, which we will just ignore 0N/A // For the 4 old callers, old entry names will be used if the new 0N/A // entry name is not provided. 0N/A "com.sun.security.jgss.krb5.accept",
0N/A "com.sun.security.jgss.accept",
0N/A "com.sun.net.ssl.client",
0N/A "com.sun.security.jgss.krb5.accept",
0N/A "com.sun.net.ssl.server",
0N/A // No other mech at the moment, maybe -- 0N/A case GSSUtil.CALLER_INITIATE: 0N/A case GSSUtil.CALLER_SSL_CLIENT: 0N/A case GSSUtil.CALLER_HTTP_NEGOTIATE: 0N/A alts = new String[] { 0N/A "com.sun.security.jgss." + mechName + ".initiate", 0N/A case GSSUtil.CALLER_ACCEPT: 0N/A case GSSUtil.CALLER_SSL_SERVER: 0N/A alts = new String[] { 0N/A "com.sun.security.jgss." + mechName + ".accept", 0N/A case GSSUtil.CALLER_UNKNOWN: 0N/A throw new AssertionError("caller cannot be unknown"); 0N/A throw new AssertionError("caller not defined"); 0N/A * Default value for a caller-mech pair when no entry is defined in 0N/A * the system-wide Configuration object. 0N/A // Assuming the keytab file can be found through 0N/A // krb5 config file or under user home directory 0N/A "com.sun.security.auth.module.Krb5LoginModule",