Back to index

openldap  2.4.31
Functions
unbind.c File Reference
#include "portable.h"
#include <stdio.h>
#include <ac/socket.h>
#include <ac/string.h>
#include "slap.h"
#include "shell.h"

Go to the source code of this file.

Functions

int shell_back_unbind (Operation *op, SlapReply *rs)

Function Documentation

int shell_back_unbind ( Operation op,
SlapReply rs 
)

Definition at line 42 of file unbind.c.

{
       struct shellinfo     *si = (struct shellinfo *) op->o_bd->be_private;
       FILE                 *rfp, *wfp;

       if ( si->si_unbind == NULL ) {
              return 0;
       }

       if ( forkandexec( si->si_unbind, &rfp, &wfp ) == (pid_t)-1 ) {
              return 0;
       }

       /* write out the request to the unbind process */
       fprintf( wfp, "UNBIND\n" );
       fprintf( wfp, "msgid: %ld\n", (long) op->o_msgid );
       print_suffixes( wfp, op->o_bd );
       fprintf( wfp, "dn: %s\n", (op->o_conn->c_dn.bv_len ? op->o_conn->c_dn.bv_val : "") );
       fclose( wfp );

       /* no response to unbind */
       fclose( rfp );

       return 0;
}

Here is the call graph for this function: