]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-shell/abandon.c
Don't reeval expression
[openldap] / servers / slapd / back-shell / abandon.c
index 0bcdf769e73cb781081794cb27406429548932da..bbf84db331fb15c1bebb9b5e5a27aa53882b6f3a 100644 (file)
@@ -1,7 +1,7 @@
 /* abandon.c - shell backend abandon function */
 /* $OpenLDAP$ */
 /*
- * Copyright 1998-2000 The OpenLDAP Foundation, All Rights Reserved.
+ * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
  * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
  */
 
@@ -9,7 +9,6 @@
 
 #include <stdio.h>
 
-#include <ac/signal.h>
 #include <ac/socket.h>
 #include <ac/string.h>
 
@@ -39,24 +38,11 @@ shell_back_abandon(
                                break;
                        }
                }
-               if( pid == -1 ) {
-                       LDAP_STAILQ_FOREACH( o, &conn->c_pending_ops, o_next ) {
-                               if ( o->o_msgid == msgid ) {
-                                       pid = (pid_t) o->o_private;
-                                       break;
-                               }
-                       }
-               }
                ldap_pvt_thread_mutex_unlock( &conn->c_mutex );
+       }
 
-               if ( pid != -1 ) {
-                       Debug( LDAP_DEBUG_ARGS, "shell killing pid %d\n",
-                              (int) pid, 0, 0 );
-                       kill( pid, SIGTERM );
-               } else {
-                       Debug( LDAP_DEBUG_ARGS, "shell could not find op %d\n",
-                           msgid, 0, 0 );
-               }
+       if ( pid == -1 ) {
+               Debug( LDAP_DEBUG_ARGS, "shell could not find op %d\n", msgid, 0, 0 );
                return 0;
        }
 
@@ -68,6 +54,7 @@ shell_back_abandon(
        fprintf( wfp, "ABANDON\n" );
        fprintf( wfp, "msgid: %d\n", msgid );
        print_suffixes( wfp, be );
+       fprintf( wfp, "pid: %ld\n", (long) pid );
        fclose( wfp );
 
        /* no result from abandon */