X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;ds=sidebyside;f=servers%2Fslapd%2Fback-shell%2Fshell.h;h=c7ce50158fc213f60689775147dc073b8222b704;hb=21fee6a7f1291cafa1468473a1924751d594d667;hp=25b7aaf28db2ece77d2fc5446ba5fde579ca07f8;hpb=4e51bba2176a3dc1bb88944f582afc6049f8ff69;p=openldap diff --git a/servers/slapd/back-shell/shell.h b/servers/slapd/back-shell/shell.h index 25b7aaf28d..c7ce50158f 100644 --- a/servers/slapd/back-shell/shell.h +++ b/servers/slapd/back-shell/shell.h @@ -1,8 +1,31 @@ /* shell.h - shell backend header file */ /* $OpenLDAP$ */ -/* - * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved. - * COPYING RESTRICTIONS APPLY, see COPYRIGHT file +/* This work is part of OpenLDAP Software . + * + * Copyright 1998-2005 The OpenLDAP Foundation. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted only as authorized by the OpenLDAP + * Public License. + * + * A copy of this license is available in the file LICENSE in the + * top-level directory of the distribution or, alternatively, at + * . + */ +/* Portions Copyright (c) 1995 Regents of the University of Michigan. + * All rights reserved. + * + * Redistribution and use in source and binary forms are permitted + * provided that this notice is preserved and that due credit is given + * to the University of Michigan at Ann Arbor. The name of the University + * may not be used to endorse or promote products derived from this + * software without specific prior written permission. This software + * is provided ``as is'' without express or implied warranty. + */ +/* ACKNOWLEDGEMENTS: + * This work was originally developed by the University of Michigan + * (as part of U-MICH LDAP). */ #ifndef SLAPD_SHELL_H @@ -12,41 +35,15 @@ LDAP_BEGIN_DECL -#if defined(HAVE_RECVMSG) && !defined(NO_THREADS) -# define SHELL_SURROGATE_PARENT -#endif - -#ifdef SHELL_SURROGATE_PARENT - -extern ldap_pvt_thread_mutex_t shell_surrogate_index_mutex; -extern ldap_pvt_thread_mutex_t shell_surrogate_fd_mutex[2]; -extern int shell_surrogate_fd[2]; -extern pid_t shell_surrogate_pid; - -typedef struct berval Cmd_info; -#define MAKE_CMD_INFO(args) make_cmd_info( args ) -#define IS_NULLCMD(cmd) ((cmd).bv_val == NULL) - -extern void make_surrogate_parent LDAP_P(( void )); - -#else /* !SHELL_SURROGATE_PARENT */ - -typedef char **Cmd_info; -#define MAKE_CMD_INFO(args) charray_dup( args ) -#define IS_NULLCMD(cmd) ((cmd) == NULL) - -#endif /* SHELL_SURROGATE_PARENT */ - struct shellinfo { - Cmd_info si_bind; /* cmd + args to exec for bind */ - Cmd_info si_unbind; /* cmd + args to exec for unbind */ - Cmd_info si_search; /* cmd + args to exec for search */ - Cmd_info si_compare; /* cmd + args to exec for compare */ - Cmd_info si_modify; /* cmd + args to exec for modify */ - Cmd_info si_modrdn; /* cmd + args to exec for modrdn */ - Cmd_info si_add; /* cmd + args to exec for add */ - Cmd_info si_delete; /* cmd + args to exec for delete */ - Cmd_info si_abandon; /* cmd + args to exec for abandon */ + char **si_bind; /* cmd + args to exec for bind */ + char **si_unbind; /* cmd + args to exec for unbind */ + char **si_search; /* cmd + args to exec for search */ + char **si_compare; /* cmd + args to exec for compare */ + char **si_modify; /* cmd + args to exec for modify */ + char **si_modrdn; /* cmd + args to exec for modrdn */ + char **si_add; /* cmd + args to exec for add */ + char **si_delete; /* cmd + args to exec for delete */ }; struct slap_backend_db; @@ -54,7 +51,7 @@ struct slap_conn; struct slap_op; extern pid_t forkandexec LDAP_P(( - Cmd_info args, + char **args, FILE **rfp, FILE **wfp)); @@ -63,12 +60,9 @@ extern void print_suffixes LDAP_P(( struct slap_backend_db *bd)); extern int read_and_send_results LDAP_P(( - struct slap_backend_db *bd, - struct slap_conn *conn, struct slap_op *op, - FILE *fp, - AttributeName *attrs, - int attrsonly)); + struct slap_rep *rs, + FILE *fp)); LDAP_END_DECL