Diff for /tests/progs/slapd-modify.c between versions 1.19 and 1.19.2.9

version 1.19, 2006/03/25 09:13:30 version 1.19.2.9, 2011/01/04 23:51:02
Line 1 Line 1
 /* $OpenLDAP: pkg/ldap/tests/progs/slapd-modify.c,v 1.18 2006/03/25 07:10:31 ando Exp $ */  /* $OpenLDAP: pkg/ldap/tests/progs/slapd-modify.c,v 1.19.2.8 2010/04/13 20:23:58 kurt Exp $ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.  /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *   *
  * Copyright 1999-2006 The OpenLDAP Foundation.   * Copyright 1999-2011 The OpenLDAP Foundation.
  * All rights reserved.   * All rights reserved.
  *   *
  * Redistribution and use in source and binary forms, with or without   * Redistribution and use in source and binary forms, with or without
Line 17 Line 17
   
 #include <stdio.h>  #include <stdio.h>
   
 #include <ac/stdlib.h>  #include "ac/stdlib.h"
   
 #include <ac/ctype.h>  #include "ac/ctype.h"
 #include <ac/param.h>  #include "ac/param.h"
 #include <ac/socket.h>  #include "ac/socket.h"
 #include <ac/string.h>  #include "ac/string.h"
 #include <ac/unistd.h>  #include "ac/unistd.h"
 #include <ac/wait.h>  #include "ac/wait.h"
   
 #include <ldap.h>  #include "ldap.h"
 #include <lutil.h>  #include "lutil.h"
   
 #include "slapd-common.h"  #include "slapd-common.h"
   
Line 49  usage( char *name ) Line 49  usage( char *name )
                 "-D <manager> "                  "-D <manager> "
                 "-w <passwd> "                  "-w <passwd> "
                 "-e <entry> "                  "-e <entry> "
                   "[-i <ignore>] "
                 "[-l <loops>] "                  "[-l <loops>] "
                 "[-L <outerloops>] "                  "[-L <outerloops>] "
                 "[-r <maxretries>] "                  "[-r <maxretries>] "
Line 78  main( int argc, char **argv ) Line 79  main( int argc, char **argv )
         int             friendly = 0;          int             friendly = 0;
         int             chaserefs = 0;          int             chaserefs = 0;
   
         tester_init( "slapd-modify" );          tester_init( "slapd-modify", TESTER_MODIFY );
   
         while ( (i = getopt( argc, argv, "CFH:h:p:D:w:e:a:l:L:r:t:" )) != EOF ) {          while ( ( i = getopt( argc, argv, "a:CD:e:FH:h:i:L:l:p:r:t:w:" ) ) != EOF )
           {
                 switch ( i ) {                  switch ( i ) {
                 case 'C':                  case 'C':
                         chaserefs++;                          chaserefs++;
Line 98  main( int argc, char **argv ) Line 100  main( int argc, char **argv )
                         host = strdup( optarg );                          host = strdup( optarg );
                         break;                          break;
   
                   case 'i':
                           /* ignored (!) by now */
                           break;
   
                 case 'p':               /* the servers port */                  case 'p':               /* the servers port */
                         if ( lutil_atoi( &port, optarg ) != 0 ) {                          if ( lutil_atoi( &port, optarg ) != 0 ) {
                                 usage( argv[0] );                                  usage( argv[0] );
Line 111  main( int argc, char **argv ) Line 117  main( int argc, char **argv )
                 case 'w':               /* the server managers password */                  case 'w':               /* the server managers password */
                         passwd.bv_val = strdup( optarg );                          passwd.bv_val = strdup( optarg );
                         passwd.bv_len = strlen( optarg );                          passwd.bv_len = strlen( optarg );
                           memset( optarg, '*', passwd.bv_len );
                         break;                          break;
   
                 case 'e':               /* entry to modify */                  case 'e':               /* entry to modify */
Line 194  do_modify( char *uri, char *manager, Line 201  do_modify( char *uri, char *manager,
 {  {
         LDAP    *ld = NULL;          LDAP    *ld = NULL;
         int     i = 0, do_retry = maxretries;          int     i = 0, do_retry = maxretries;
         pid_t   pid;  
         int     rc = LDAP_SUCCESS;          int     rc = LDAP_SUCCESS;
   
         struct ldapmod mod;          struct ldapmod mod;
Line 202  do_modify( char *uri, char *manager, Line 208  do_modify( char *uri, char *manager,
         char *values[2];          char *values[2];
         int version = LDAP_VERSION3;          int version = LDAP_VERSION3;
   
         pid = getpid();  
           
         values[0] = value;          values[0] = value;
         values[1] = NULL;          values[1] = NULL;
         mod.mod_op = LDAP_MOD_ADD;          mod.mod_op = LDAP_MOD_ADD;
Line 215  do_modify( char *uri, char *manager, Line 219  do_modify( char *uri, char *manager,
 retry:;  retry:;
         ldap_initialize( &ld, uri );          ldap_initialize( &ld, uri );
         if ( ld == NULL ) {          if ( ld == NULL ) {
                 tester_perror( "ldap_initialize" );                  tester_perror( "ldap_initialize", NULL );
                 exit( EXIT_FAILURE );                  exit( EXIT_FAILURE );
         }          }
   
Line 230  retry:; Line 234  retry:;
   
         rc = ldap_sasl_bind_s( ld, manager, LDAP_SASL_SIMPLE, passwd, NULL, NULL, NULL );          rc = ldap_sasl_bind_s( ld, manager, LDAP_SASL_SIMPLE, passwd, NULL, NULL, NULL );
         if ( rc != LDAP_SUCCESS ) {          if ( rc != LDAP_SUCCESS ) {
                 tester_ldap_error( ld, "ldap_sasl_bind_s" );                  tester_ldap_error( ld, "ldap_sasl_bind_s", NULL );
                 switch ( rc ) {                  switch ( rc ) {
                 case LDAP_BUSY:                  case LDAP_BUSY:
                 case LDAP_UNAVAILABLE:                  case LDAP_UNAVAILABLE:
Line 252  retry:; Line 256  retry:;
                 mod.mod_op = LDAP_MOD_ADD;                  mod.mod_op = LDAP_MOD_ADD;
                 rc = ldap_modify_ext_s( ld, entry, mods, NULL, NULL );                  rc = ldap_modify_ext_s( ld, entry, mods, NULL, NULL );
                 if ( rc != LDAP_SUCCESS ) {                  if ( rc != LDAP_SUCCESS ) {
                         tester_ldap_error( ld, "ldap_modify_ext_s" );                          tester_ldap_error( ld, "ldap_modify_ext_s", NULL );
                         switch ( rc ) {                          switch ( rc ) {
                         case LDAP_TYPE_OR_VALUE_EXISTS:                          case LDAP_TYPE_OR_VALUE_EXISTS:
                                 /* NOTE: this likely means                                  /* NOTE: this likely means
Line 279  retry:; Line 283  retry:;
                 mod.mod_op = LDAP_MOD_DELETE;                  mod.mod_op = LDAP_MOD_DELETE;
                 rc = ldap_modify_ext_s( ld, entry, mods, NULL, NULL );                  rc = ldap_modify_ext_s( ld, entry, mods, NULL, NULL );
                 if ( rc != LDAP_SUCCESS ) {                  if ( rc != LDAP_SUCCESS ) {
                         tester_ldap_error( ld, "ldap_modify_ext_s" );                          tester_ldap_error( ld, "ldap_modify_ext_s", NULL );
                         switch ( rc ) {                          switch ( rc ) {
                         case LDAP_NO_SUCH_ATTRIBUTE:                          case LDAP_NO_SUCH_ATTRIBUTE:
                                 /* NOTE: this likely means                                  /* NOTE: this likely means
Line 306  retry:; Line 310  retry:;
         }          }
   
 done:;  done:;
         fprintf( stderr, " PID=%ld - Modify done (%d).\n", (long) pid, rc );          fprintf( stderr, "  PID=%ld - Modify done (%d).\n", (long) pid, rc );
   
         ldap_unbind_ext( ld, NULL, NULL );          ldap_unbind_ext( ld, NULL, NULL );
 }  }

Removed from v.1.19  
changed lines
  Added in v.1.19.2.9


______________
© Copyright 1998-2020, OpenLDAP Foundation, info@OpenLDAP.org