src/share/classes/sun/security/krb5/Config.java
        Print this page
        
*** 1231,1251 ****
       * @param realm the realm for which the master KDC is desired
       * @return the KDC
       */
      private String getKDCFromDNS(String realm) throws KrbException {
          // use DNS to locate KDC
!         String kdcs = null;
          String[] srvs = null;
          // locate DNS SRV record using UDP
          if (DEBUG) {
              System.out.println("getKDCFromDNS using UDP");
          }
          srvs = KrbServiceLocator.getKerberosService(realm, "_udp");
          if (srvs == null) {
              // locate DNS SRV record using TCP
              if (DEBUG) {
!                 System.out.println("getKDCFromDNS using UDP");
              }
              srvs = KrbServiceLocator.getKerberosService(realm, "_tcp");
          }
          if (srvs == null) {
              // no DNS SRV records
--- 1231,1251 ----
       * @param realm the realm for which the master KDC is desired
       * @return the KDC
       */
      private String getKDCFromDNS(String realm) throws KrbException {
          // use DNS to locate KDC
!         String kdcs = "";
          String[] srvs = null;
          // locate DNS SRV record using UDP
          if (DEBUG) {
              System.out.println("getKDCFromDNS using UDP");
          }
          srvs = KrbServiceLocator.getKerberosService(realm, "_udp");
          if (srvs == null) {
              // locate DNS SRV record using TCP
              if (DEBUG) {
!                 System.out.println("getKDCFromDNS using TCP");
              }
              srvs = KrbServiceLocator.getKerberosService(realm, "_tcp");
          }
          if (srvs == null) {
              // no DNS SRV records
*** 1255,1267 ****
          for (int i = 0; i < srvs.length; i++) {
              String value = srvs[i];
              for (int j = 0; j < srvs[i].length(); j++) {
                  // filter the KDC name
                  if (value.charAt(j) == ':') {
!                     kdcs = (value.substring(0, j)).trim();
                  }
              }
          }
          return kdcs;
      }
  
      private boolean fileExists(String name) {
--- 1255,1271 ----
          for (int i = 0; i < srvs.length; i++) {
              String value = srvs[i];
              for (int j = 0; j < srvs[i].length(); j++) {
                  // filter the KDC name
                  if (value.charAt(j) == ':') {
!                     kdcs += (value.substring(0, j)).trim() + " ";
!                 }
              }
          }
+         kdcs = kdcs.trim();
+         if (kdcs.equals("")) {
+             return null;   
          }
          return kdcs;
      }
  
      private boolean fileExists(String name) {