Back to index

openldap  2.4.31
shell.h
Go to the documentation of this file.
00001 /* shell.h - shell backend header file */
00002 /* $OpenLDAP$ */
00003 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
00004  *
00005  * Copyright 1998-2012 The OpenLDAP Foundation.
00006  * All rights reserved.
00007  *
00008  * Redistribution and use in source and binary forms, with or without
00009  * modification, are permitted only as authorized by the OpenLDAP
00010  * Public License.
00011  *
00012  * A copy of this license is available in the file LICENSE in the
00013  * top-level directory of the distribution or, alternatively, at
00014  * <http://www.OpenLDAP.org/license.html>.
00015  */
00016 /* Portions Copyright (c) 1995 Regents of the University of Michigan.
00017  * All rights reserved.
00018  *
00019  * Redistribution and use in source and binary forms are permitted
00020  * provided that this notice is preserved and that due credit is given
00021  * to the University of Michigan at Ann Arbor. The name of the University
00022  * may not be used to endorse or promote products derived from this
00023  * software without specific prior written permission. This software
00024  * is provided ``as is'' without express or implied warranty.
00025  */
00026 /* ACKNOWLEDGEMENTS:
00027  * This work was originally developed by the University of Michigan
00028  * (as part of U-MICH LDAP).
00029  */
00030 
00031 #ifndef SLAPD_SHELL_H
00032 #define SLAPD_SHELL_H
00033 
00034 #include "proto-shell.h"
00035 
00036 LDAP_BEGIN_DECL
00037 
00038 struct shellinfo {
00039        char   **si_bind;           /* cmd + args to exec for bind       */
00040        char   **si_unbind;  /* cmd + args to exec for unbind  */
00041        char   **si_search;  /* cmd + args to exec for search  */
00042        char   **si_compare; /* cmd + args to exec for compare */
00043        char   **si_modify;  /* cmd + args to exec for modify  */
00044        char   **si_modrdn;  /* cmd + args to exec for modrdn  */
00045        char   **si_add;            /* cmd + args to exec for add        */
00046        char   **si_delete;  /* cmd + args to exec for delete  */
00047 };
00048 
00049 extern pid_t forkandexec LDAP_P((
00050        char **args,
00051        FILE **rfp,
00052        FILE **wfp));
00053 
00054 extern void print_suffixes LDAP_P((
00055        FILE *fp,
00056        BackendDB *bd));
00057 
00058 extern int read_and_send_results LDAP_P((
00059        Operation *op,
00060        SlapReply *rs,
00061        FILE *fp));
00062 
00063 LDAP_END_DECL
00064 
00065 #endif