]> git.sur5r.net Git - openldap/commitdiff
Ripe out Kbind
authorKurt Zeilenga <kurt@openldap.org>
Mon, 26 Jun 2000 01:23:00 +0000 (01:23 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Mon, 26 Jun 2000 01:23:00 +0000 (01:23 +0000)
servers/slurpd/args.c
servers/slurpd/config.c
servers/slurpd/ldap_op.c

index ff28e0bb4f215ef6c9460bad6b1a5f05a04eb134..f9cd9db8a3056db2886362f8ee74bbb7f1eeb027 100644 (file)
@@ -24,7 +24,6 @@
 #include <ac/time.h>
 #include <ac/unistd.h>
 
-#include <lber.h>
 #include <ldap.h>
 
 #include "slurp.h"
@@ -64,7 +63,7 @@ doargs(
        g->myname = strdup( g->myname + 1 );
     }
 
-    while ( (i = getopt( argc, argv, "hd:f:r:t:k:o" )) != EOF ) {
+    while ( (i = getopt( argc, argv, "hd:f:r:t:o" )) != EOF ) {
        switch ( i ) {
        case 'd':       /* set debug level and 'do not detach' flag */
            g->no_detach = 1;
@@ -114,13 +113,6 @@ doargs(
            g->slurpd_rdir = (char *)malloc (strlen(optarg) + strlen("/replica") + 1);
            sprintf(g->slurpd_rdir, "%s/replica", optarg);
            break;
-       case 'k':       /* name of kerberos srvtab file */
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-           g->default_srvtab = strdup( optarg );
-#else /* LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND */
-           fprintf( stderr, "must compile with KERBEROS to use -k option\n" );
-#endif /* LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND */
-           break;
        case 'h':
            usage( g->myname );
            return( -1 );
index 1df612324005a4dfa56b056644991200f7cd96e6..d91a70aa234497b6585bec88ea8c272b7b580e52 100644 (file)
@@ -25,7 +25,6 @@
 #include <ac/socket.h>
 #include <ac/ctype.h>
 
-#include <lber.h>
 #include <ldap.h>
 
 #include "slurp.h"
@@ -299,7 +298,7 @@ add_replica(
  * Parse a "replica" line from the config file.  replica lines should be
  * in the following format:
  * replica    host=<hostname:portnumber> binddn=<binddn>
- *            bindmethod="simple|kerberos" credentials=<creds>
+ *            bindmethod="simple" credentials=<creds>
  *
  * where:
  * <hostname:portnumber> describes the host name and port number where the
@@ -307,12 +306,10 @@ add_replica(
  *
  * <binddn> is the DN to bind to the replica slapd as,
  *
- * bindmethod is either "simple" or "kerberos", and
+ * bindmethod is "simple", and
  *
  * <creds> are the credentials (e.g. password) for binddn.  <creds> are
- * only used for bindmethod=simple.  For bindmethod=kerberos, the
- * credentials= option should be omitted.  Credentials for kerberos
- * authentication are in the system srvtab file.
+ * only used for bindmethod=simple.  
  *
  * The "replica" config file line may be split across multiple lines.  If
  * a line begins with whitespace, it is considered a continuation of the
@@ -355,21 +352,10 @@ parse_replica_line(
                strlen( BINDMETHSTR ))) {
            val = cargv[ i ] + strlen( BINDMETHSTR ) + 1;
            if ( !strcasecmp( val, KERBEROSSTR )) {
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-               ri->ri_bind_method = AUTH_KERBEROS;
-               if ( ri->ri_srvtab == NULL ) {
-                   ri->ri_srvtab = strdup( sglob->default_srvtab );
-               }
-               gots |= GOT_METHOD;
-#else /* LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND */
            fprintf( stderr, "Error: a bind method of \"kerberos\" was\n" );
-           fprintf( stderr, "specified in the slapd configuration file,\n" );
-           fprintf( stderr, "but slurpd was not built with kerberos.\n" );
-           fprintf( stderr, "You must rebuild the LDAP release with\n" );
-           fprintf( stderr, "kerberos support if you wish to use\n" );
-           fprintf( stderr, "bindmethod=kerberos\n" );
+           fprintf( stderr, "specified in the slapd configuration file.\n" );
+           fprintf( stderr, "slurpd no longer supports Kerberos.\n" );
            exit( EXIT_FAILURE );
-#endif /* LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND */
            } else if ( !strcasecmp( val, SIMPLESTR )) {
                ri->ri_bind_method = AUTH_SIMPLE;
                gots |= GOT_METHOD;
index 656bd7c885153e17f8959cbd3c54643931b4759f..1673a12e785deca937496c3c015c8d04d535915b 100644 (file)
 #include <ac/time.h>
 #include <ac/unistd.h>
 
-#include <ac/krb.h>
-
-#if defined( STR_TRANSLATION ) && defined( LDAP_DEFAULT_CHARSET )
-/* Get LDAP->ld_lberoptions.  Must precede slurp.h, both define ldap_debug. */
-#include "../../libraries/libldap/ldap-int.h"
-#endif
-
-#include <lber.h>
 #include <ldap.h>
 
 #include "slurp.h"
@@ -50,19 +42,10 @@ static void free_ldapmod LDAP_P(( LDAPMod * ));
 static void free_ldmarr LDAP_P(( LDAPMod ** ));
 static int getmodtype LDAP_P(( char * ));
 static void dump_ldm_array LDAP_P(( LDAPMod ** ));
-static char **read_krbnames LDAP_P(( Ri * ));
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-static void upcase LDAP_P(( char * ));
-#endif
 static int do_bind LDAP_P(( Ri *, int * ));
 static int do_unbind LDAP_P(( Ri * ));
 
 
-static char *kattrs[] = {"kerberosName", NULL };
-static struct timeval kst = {30L, 0L};
-
-
-
 /*
  * Determine the type of ldap operation being performed and call the
  * appropriate routine.
@@ -431,7 +414,7 @@ op_ldap_modrdn(
                Debug( LDAP_DEBUG_ANY,
                        "Error: op_ldap_modrdn: multiple newsuperior arg \"%s\"\n",
                        mi[ i ].mi_val, 0, 0 );
-               *errmsg = "Multiple newrdn argument";
+               *errmsg = "Multiple newsuperior argument";
                return -1;
                }
 
@@ -784,81 +767,3 @@ dump_ldm_array(
        }
     }
 }
-
-
-/*
- * Get the kerberos names from the binddn for "replica" via an ldap search.
- * Returns a null-terminated array of char *, or NULL if the entry could
- * not be found or there were no kerberosName attributes.  The caller is
- * responsible for freeing the returned array and strings it points to.
- */
-static char **
-read_krbnames(
-    Ri *ri
-)
-{
-    int rc;
-    char **krbnames;
-    int ne;
-    LDAPMessage *result, *entry;
-
-    /* First need to bind as NULL */
-    rc = ldap_simple_bind_s( ri->ri_ldp, NULL, NULL );
-    if ( rc != LDAP_SUCCESS ) {
-       Debug( LDAP_DEBUG_ANY,
-               "Error: null bind failed getting krbnames for %s:%d: %s\n",
-               ri->ri_hostname, ri->ri_port, ldap_err2string( rc ));
-       return( NULL );
-    }
-    rc = ldap_search_st( ri->ri_ldp, ri->ri_bind_dn, LDAP_SCOPE_BASE,
-           NULL, kattrs, 0, &kst, &result );
-    if ( rc != LDAP_SUCCESS ) {
-       Debug( LDAP_DEBUG_ANY,
-               "Error: search failed getting krbnames for %s:%d: %s\n",
-               ri->ri_hostname, ri->ri_port, ldap_err2string( rc ));
-       return( NULL );
-    }
-    ne = ldap_count_entries( ri->ri_ldp, result );
-    if ( ne == 0 ) {
-       Debug( LDAP_DEBUG_ANY,
-               "Error: Can't find entry \"%s\" for %s:%d kerberos bind\n",
-               ri->ri_bind_dn, ri->ri_hostname, ri->ri_port );
-           return( NULL );
-    }
-    if ( ne > 1 ) {
-       Debug( LDAP_DEBUG_ANY,
-               "Error: Kerberos binddn \"%s\" for %s:%dis ambiguous\n",
-               ri->ri_bind_dn, ri->ri_hostname, ri->ri_port );
-           return( NULL );
-    }
-    entry = ldap_first_entry( ri->ri_ldp, result );
-    if ( entry == NULL ) {
-       Debug( LDAP_DEBUG_ANY,
-               "Error: Can't find \"%s\" for kerberos binddn for %s:%d\n",
-                   ri->ri_bind_dn, ri->ri_hostname, ri->ri_port );
-       return( NULL );
-    }
-    krbnames = ldap_get_values( ri->ri_ldp, entry, "kerberosName" );
-    ldap_msgfree( result );
-    return( krbnames );
-}
-
-
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-
-/*
- * upcase a string
- */
-static void
-upcase(
-    char *s
-)
-{
-    char *p;
-
-    for ( p = s; ( p != NULL ) && ( *p != '\0' ); p++ ) {
-           *p = TOUPPER( (unsigned char) *p );
-    }
-}
-
-#endif /* LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND */