]> git.sur5r.net Git - openldap/commitdiff
Add support for -P protocol_version.
authorDave Storey <dave@openldap.org>
Sun, 27 Dec 1998 14:08:46 +0000 (14:08 +0000)
committerDave Storey <dave@openldap.org>
Sun, 27 Dec 1998 14:08:46 +0000 (14:08 +0000)
clients/tools/ldapdelete.c
clients/tools/ldapmodify.c
clients/tools/ldapmodrdn.c
clients/tools/ldappasswd.c
clients/tools/ldapsearch.c
doc/man/man1/ldapdelete.1
doc/man/man1/ldapmodify.1
doc/man/man1/ldapmodrdn.1
doc/man/man1/ldappasswd.1
doc/man/man1/ldapsearch.1

index df1103cda15c00e09883ddb09ee9bb4a4418c1ee..20a905998ba39acd5f64f3c94fc6302f30bb78c9 100644 (file)
@@ -30,16 +30,17 @@ static int dodelete LDAP_P((
 int
 main( int argc, char **argv )
 {
-    char               *usage = "usage: %s [-n] [-v] [-k] [-W] [-d debug-level] [-f file] [-h ldaphost] [-p ldapport] [-D binddn] [-w passwd] [dn]...\n";
+       char            *usage = "usage: %s [-n] [-v] [-k] [-W] [-d debug-level] [-f file] [-h ldaphost] [-P version] [-p ldapport] [-D binddn] [-w passwd] [dn]...\n";
     char               buf[ 4096 ];
     FILE               *fp;
-    int                        i, rc, authmethod, want_bindpw, debug;
+       int             i, rc, authmethod, want_bindpw, version, debug;
 
     not = verbose = contoper = want_bindpw = debug = 0;
     fp = NULL;
     authmethod = LDAP_AUTH_SIMPLE;
+       version = LDAP_VERSION2;
 
-    while (( i = getopt( argc, argv, "WnvkKch:p:D:w:d:f:" )) != EOF ) {
+    while (( i = getopt( argc, argv, "WnvkKch:P:p:D:w:d:f:" )) != EOF ) {
        switch( i ) {
        case 'k':       /* kerberos bind */
 #ifdef HAVE_KERBEROS
@@ -88,6 +89,17 @@ main( int argc, char **argv )
        case 'W':
                want_bindpw++;
                break;
+       case 'P':
+               switch(optarg[0])
+               {
+               case '2':
+                       version = LDAP_VERSION2;
+                       break;
+               case '3':
+                       version = LDAP_VERSION3;
+                       break;
+               }
+               break;
        default:
            fprintf( stderr, usage, argv[0] );
            exit( 1 );
@@ -119,6 +131,8 @@ main( int argc, char **argv )
        if (want_bindpw)
                passwd = getpass("Enter LDAP Password: ");
 
+       ldap_set_option( ld, LDAP_OPT_PROTOCOL_VERSION, &version );
+
     if ( ldap_bind_s( ld, binddn, passwd, authmethod ) != LDAP_SUCCESS ) {
        ldap_perror( ld, "ldap_bind" );
        exit( 1 );
index 96a667ff118773da6b8269862f20936486d36481..224502cb3cf77daee555e1806e654dd5326ca0e0 100644 (file)
@@ -68,8 +68,8 @@ main( int argc, char **argv )
 {
     char               *infile, *rbuf, *start, *p, *q;
     FILE               *fp;
-    int                        rc, i, use_ldif, authmethod, want_bindpw, debug;
-    char               *usage = "usage: %s [-abcknrvWF] [-d debug-level] [-h ldaphost] [-p ldapport] [-D binddn] [-w passwd] [ -f file | < entryfile ]\n";
+       int             rc, i, use_ldif, authmethod, version, want_bindpw, debug;
+       char            *usage = "usage: %s [-abcknrvWF] [-d debug-level] [-h ldaphost] [-P version] [-p ldapport] [-D binddn] [-w passwd] [ -f file | < entryfile ]\n";
 
     if (( prog = strrchr( argv[ 0 ], '/' )) == NULL ) {
        prog = argv[ 0 ];
@@ -81,6 +81,7 @@ main( int argc, char **argv )
     infile = NULL;
     not = verbose = valsfromfiles = want_bindpw = debug = 0;
     authmethod = LDAP_AUTH_SIMPLE;
+       version = LDAP_VERSION2;
 
     while (( i = getopt( argc, argv, "WFabckKnrtvh:p:D:w:d:f:" )) != EOF ) {
        switch( i ) {
@@ -140,6 +141,17 @@ main( int argc, char **argv )
        case 'W':
                want_bindpw++;
                break;
+       case 'P':
+               switch(optarg[0])
+               {
+               case '2':
+                       version = LDAP_VERSION2;
+                       break;
+               case '3':
+                       version = LDAP_VERSION3;
+                       break;
+               }
+               break;
        default:
            fprintf( stderr, usage, prog );
            exit( 1 );
@@ -181,6 +193,8 @@ main( int argc, char **argv )
        if (want_bindpw)
                passwd = getpass("Enter LDAP Password: ");
 
+       ldap_set_option( ld, LDAP_OPT_PROTOCOL_VERSION, &version );
+
        if ( ldap_bind_s( ld, binddn, passwd, authmethod ) != LDAP_SUCCESS ) {
            ldap_perror( ld, "ldap_bind" );
            exit( 1 );
index 3ba5ac2a37818ae27694a3c2ad8d21359a788873..f35ddb4773aa7654731758014303f0de48ff5655 100644 (file)
@@ -32,18 +32,19 @@ static int domodrdn LDAP_P((
 int
 main(int argc, char **argv)
 {
-    char               *usage = "usage: %s [-nvkWc] [-d debug-level] [-h ldaphost] [-p ldapport] [-D binddn] [-w passwd] [ -f file | < entryfile | dn newrdn ]\n";
+       char            *usage = "usage: %s [-nvkWc] [-d debug-level] [-h ldaphost] [-P version] [-p ldapport] [-D binddn] [-w passwd] [ -f file | < entryfile | dn newrdn ]\n";
     char               *myname,*infile, *entrydn, *rdn, buf[ 4096 ];
     FILE               *fp;
-    int                        rc, i, remove, havedn, authmethod, want_bindpw, debug;
+       int             rc, i, remove, havedn, authmethod, version, want_bindpw, debug;
 
     infile = NULL;
     not = contoper = verbose = remove = want_bindpw = debug = 0;
     authmethod = LDAP_AUTH_SIMPLE;
+       version = LDAP_VERSION2;
 
     myname = (myname = strrchr(argv[0], '/')) == NULL ? argv[0] : ++myname;
 
-    while (( i = getopt( argc, argv, "WkKcnvrh:p:D:w:d:f:" )) != EOF ) {
+    while (( i = getopt( argc, argv, "WkKcnvrh:P:p:D:w:d:f:" )) != EOF ) {
        switch( i ) {
        case 'k':       /* kerberos bind */
 #ifdef HAVE_KERBEROS
@@ -92,6 +93,17 @@ main(int argc, char **argv)
        case 'W':
                want_bindpw++;
                break;
+       case 'P':
+               switch(optarg[0])
+               {
+               case '2':
+                       version = LDAP_VERSION2;
+                       break;
+               case '3':
+                       version = LDAP_VERSION3;
+                       break;
+               }
+               break;
        default:
            fprintf( stderr, usage, argv[0] );
            exit( 1 );
@@ -143,6 +155,8 @@ main(int argc, char **argv)
        if (want_bindpw)
                passwd = getpass("Enter LDAP Password: ");
 
+       ldap_set_option( ld, LDAP_OPT_PROTOCOL_VERSION, &version );
+
     if ( ldap_bind_s( ld, binddn, passwd, authmethod ) != LDAP_SUCCESS ) {
        ldap_perror( ld, "ldap_bind" );
        exit( 1 );
index fe0b76998d8a4a93a147d9c3b20c3a2a83fc637e..672710e8335d0f42be826c45d2af0feb8fc4af31 100644 (file)
@@ -331,6 +331,7 @@ usage (char *s)
 #endif
        fprintf (stderr, "  -l time\ttime limit\n");
        fprintf (stderr, "  -n\t\tmake no modifications\n");
+       fprintf (stderr, "  -P version\tprotocol version (2 or 3)\n");
        fprintf (stderr, "  -p port\tldap port\n");
        fprintf (stderr, "  -s scope\tsearch scope: base, one, sub (default: sub)\n");
        fprintf (stderr, "  -t targetdn\tdn to change password\n");
@@ -362,6 +363,7 @@ main (int argc, char *argv[])
        int             scope = LDAP_SCOPE_SUBTREE;
        int             sizelimit = LDAP_NO_LIMIT;
        int             timelimit = LDAP_NO_LIMIT;
+       int             version = LDAP_VERSION2;
        int             want_bindpw = 0;
        int             want_newpw = 0;
        LDAP           *ld;
@@ -373,7 +375,7 @@ main (int argc, char *argv[])
        if (argc == 1)
                usage (argv[0]);
 
-       while ((i = getopt (argc, argv, "a:b:C:D:d:Ee:g:H:h:Kkl:np:s:t:vWw:Y:y:z:")) != EOF)
+       while ((i = getopt (argc, argv, "a:b:C:D:d:Ee:g:H:h:Kkl:nP:p:s:t:vWw:Y:y:z:")) != EOF)
        {
                switch (i)
                {
@@ -454,6 +456,18 @@ main (int argc, char *argv[])
                        noupdates++;
                        break;
 
+               case 'P':
+                       switch(optarg[0])
+                       {
+                       case '2':
+                               version = LDAP_VERSION2;
+                               break;
+                       case '3':
+                               version = LDAP_VERSION3;
+                               break;
+                       }
+                       break;
+
                case 'p':       /* ldap port */
                        ldapport = strtol (optarg, NULL, 10);
                        break;
@@ -554,6 +568,7 @@ main (int argc, char *argv[])
                ldap_set_option( ld, LDAP_OPT_DEREF, &deref);
        }
 
+       ldap_set_option( ld, LDAP_OPT_PROTOCOL_VERSION, &version );
 
        /* authenticate to server */
        if (ldap_bind_s (ld, binddn, bindpw, authmethod) != LDAP_SUCCESS)
index 7d6d118fd51bb2ed6521189b9912129ab5203be0..a22c208109cba2c9edc7f8e36016028543dc9516 100644 (file)
@@ -49,6 +49,7 @@ usage( char *s )
 #endif
     fprintf( stderr, "    -h host\tldap server\n" );
     fprintf( stderr, "    -p port\tport on ldap server\n" );
+    fprintf( stderr, "    -P version\tprocotol version (2 or 3)\n" );
     exit( 1 );
 }
 
@@ -88,7 +89,7 @@ main( int argc, char **argv )
     FILE               *fp;
     int                        rc, i, first, scope, deref, attrsonly;
     int                        referrals, timelimit, sizelimit, debug;
-       int                     authmethod, want_bindpw;
+       int             authmethod, version, want_bindpw;
     LDAP               *ld;
 
     infile = NULL;
@@ -98,8 +99,9 @@ main( int argc, char **argv )
     sizelimit = timelimit = debug = 0;
     scope = LDAP_SCOPE_SUBTREE;
     authmethod = LDAP_AUTH_SIMPLE;
+       version = LDAP_VERSION2;
 
-    while (( i = getopt( argc, argv, "WKknuvtRABLD:s:f:h:b:d:p:F:a:w:l:z:S:")) != EOF ) {
+    while (( i = getopt( argc, argv, "WKknuvtRABLD:s:f:h:b:d:P:p:F:a:w:l:z:S:")) != EOF ) {
        switch( i ) {
        case 'n':       /* do Not do any searches */
            ++not;
@@ -203,6 +205,17 @@ main( int argc, char **argv )
        case 'W':
                want_bindpw++;
                break;
+       case 'P':
+               switch(optarg[0])
+               {
+               case '2':
+                       version = LDAP_VERSION2;
+                       break;
+               case '3':
+                       version = LDAP_VERSION3;
+                       break;
+               }
+               break;
        default:
            usage( argv[0] );
        }
@@ -268,6 +281,10 @@ main( int argc, char **argv )
                /* set option error */
        }
 
+       if (ldap_set_option( ld, LDAP_OPT_PROTOCOL_VERSION, &version ) == -1) {
+               /* set option error */
+       }
+
        if (want_bindpw)
                passwd = getpass("Enter LDAP Password: ");
 
index 4b5d2160144d6b4cff555016fc2b8e1b939f939e..859623b1d8e4fe477765a6995aba86b6d97af210 100644 (file)
@@ -26,6 +26,8 @@ ldapdelete \- ldap delete entry tool
 [\c
 .BI \-h \ ldaphost\fR]
 [\c
+.BI \-P \ 2\fR\||\|\fI3\fR]
+[\c
 .BI \-p \ ldapport\fR]
 [\c
 .IR dn ]...
@@ -96,6 +98,9 @@ Specify an alternate host on which the ldap server is running.
 .TP
 .BI \-p \ ldapport
 Specify an alternate TCP port where the ldap server is listening.
+.TP
+.BI \-P \ 2\fR\||\|\fI3
+Specify the LDAP protocol version to use.
 .SH EXAMPLE
 The following command:
 .LP
index c39ebc9c914b23d385384cf6b2ee76f8c802289a..2b7e4b84b3c860c032944197bdf0344ad04dc979 100644 (file)
@@ -30,6 +30,8 @@ ldapmodify, ldapadd \- ldap modify entry and ldap add entry tools
 [\c
 .BI \-p \ ldapport\fR]
 [\c
+.BI \-P \ 2\fR\||\|\fI3\fR]
+[\c
 .BI \-f \ file\fR]
 .LP
 .B ldapadd
@@ -147,6 +149,9 @@ Specify an alternate host on which the ldap server is running.
 .TP
 .BI \-p \ ldapport
 Specify an alternate TCP port where the ldap server is listening.
+.TP
+.BI \-P \ 2\fR\||\|\fI3
+Specify the LDAP protocol version to use.
 .SH INPUT FORMAT
 The contents of \fIfile\fP (or standard input if no \-f flag is given on
 the command line) should conform to the format defined in
index 122dc400bdc10181c4246b6aa1d034e432c2176b..43caf29114652da66d4266c43af934968c217e1d 100644 (file)
@@ -28,6 +28,8 @@ ldapmodrdn \- ldap modify entry RDN tool
 [\c
 .BI \-p \ ldapport\fR]
 [\c
+.BI \-P \ 2\fR\||\|\fI3\fR]
+[\c
 .BI \-f \ file\fR]
 [\c
 .I dn  rdn\fR]
@@ -98,6 +100,9 @@ Specify an alternate host on which the ldap server is running.
 .TP
 .B \-p ldapport
 Specify an alternate TCP port where the ldap server is listening.
+.TP
+.BI \-P \ 2\fR\||\|\fI3
+Specify the LDAP protocol version to use.
 .SH INPUT FORMAT
 If the command-line arguments \fIdn\fP and \fIrdn\fP are given, \fIrdn\fP
 will replace the RDN of the entry specified by the DN, \fIdn\fP.
index b56399fa1e6fe33d3e6fd48b6b9de515073553f1..dca60fdec27a552c221942347eccd2746d0db09a 100644 (file)
@@ -30,6 +30,8 @@ ldappasswd \- change the password of an LDAP entry
 [\c
 .BR \-n ]
 [\c
+.BI \-P \ 2\fR\||\|\fI3\fR]
+[\c
 .BI \-p \ ldapport\fR]
 [\c
 .BI \-s \ base\fR\||\|\fIone\fR\||\|\fIsub\fR]
@@ -115,6 +117,9 @@ Make no modifications. (Can be useful when used in conjunction with
 .BR \-v \ or
 .BR \-d )
 .TP
+.BI \-P \ 2\fR\||\|\fI3
+Specify the LDAP protocol version to use.
+.TP
 .BI \-p \ ldapport
 Specify an alternate port on which the ldap server is running.
 .TP
index 60f4032b6b6204c5dc29c9bb057643512a3666fb..32f5d8bf5753ff99b2cea41f64baea095b3440e2 100644 (file)
@@ -40,6 +40,8 @@ ldapsearch \- ldap search tool
 [\c
 .BI \-p \ ldapport\fR]
 [\c
+.BI \-P \ 2\fR\||\|\fI3\fR]
+[\c
 .BI \-b \ searchbase\fR]
 [\c
 .BI \-s \ base\fR\||\|\fIone\fR\||\|\fIsub\fR]
@@ -189,6 +191,9 @@ to specify that aliases are never dereferenced, always dereferenced,
 dereferenced when searching, or dereferenced only when locating the
 base object for the search.  The default is to never dereference aliases.
 .TP
+.BI \-P \ 2\fR\||\|\fI3
+Specify the LDAP protocol version to use.
+.TP
 .BI \-l \ timelimit
 wait at most \fItimelimit\fP seconds for a search to complete.
 .TP