diff --git a/CHANGES b/CHANGES index 99d57a4d19326373d2a20e24b2d6b6a1cc93ae7c..4e28e98117dce099634fc704baa963a316ea46d1 100644 --- a/CHANGES +++ b/CHANGES @@ -7,6 +7,7 @@ Changes included in OpenLDAP 1.2 Fixed -lldap/ldap_init() Updated ldap_open(3) man page to note ldap_init() is preferred. Updated internal thread library + Updated slapd/back-shell to use void* private and pid_t Build environment Fixed --without-threads building Fixed mkdep to handle multiple dependent files on one line diff --git a/servers/slapd/back-shell/abandon.c b/servers/slapd/back-shell/abandon.c index fbb799dc981fb65d610c67db56eea4a7011aeb5a..dad3204984d0bc6d4a7192f4bfb4f743faf23df6 100644 --- a/servers/slapd/back-shell/abandon.c +++ b/servers/slapd/back-shell/abandon.c @@ -21,7 +21,7 @@ shell_back_abandon( { struct shellinfo *si = (struct shellinfo *) be->be_private; FILE *rfp, *wfp; - int pid; + pid_t pid; Operation *o; /* no abandon command defined - just kill the process handling it */ @@ -30,7 +30,7 @@ shell_back_abandon( pid = -1; for ( o = conn->c_ops; o != NULL; o = o->o_next ) { if ( o->o_msgid == msgid ) { - pid = o->o_private; + pid = (pid_t) o->o_private; break; } } diff --git a/servers/slapd/back-shell/add.c b/servers/slapd/back-shell/add.c index ec718618125a013ca1d1261314346644d93acf5c..61752d3278b9174b697901c0a912aac5ec523c59 100644 --- a/servers/slapd/back-shell/add.c +++ b/servers/slapd/back-shell/add.c @@ -28,7 +28,7 @@ shell_back_add( return( -1 ); } - if ( (op->o_private = forkandexec( si->si_add, &rfp, &wfp )) == -1 ) { + if ( (op->o_private = (void *) forkandexec( si->si_add, &rfp, &wfp )) == (void *) -1 ) { send_ldap_result( conn, op, LDAP_OPERATIONS_ERROR, NULL, "could not fork/exec" ); return( -1 ); diff --git a/servers/slapd/back-shell/bind.c b/servers/slapd/back-shell/bind.c index 025cbe973c2bc4ae2e1b3dc310534cac542d9cff..93ef4d869a177b225d16d01a2c55f7636bb99157 100644 --- a/servers/slapd/back-shell/bind.c +++ b/servers/slapd/back-shell/bind.c @@ -33,8 +33,8 @@ shell_back_bind( return( -1 ); } - if ( (op->o_private = forkandexec( si->si_bind, &rfp, &wfp )) - == -1 ) { + if ( (op->o_private = (void *) forkandexec( si->si_bind, &rfp, &wfp )) + == (void *) -1 ) { send_ldap_result( conn, op, LDAP_OPERATIONS_ERROR, NULL, "could not fork/exec" ); return( -1 ); diff --git a/servers/slapd/back-shell/compare.c b/servers/slapd/back-shell/compare.c index 9fd4343a0a083aa5e77464ac055ed4fce00231dc..1b724055f5833368f5b9c93a8156a15f3b1425b6 100644 --- a/servers/slapd/back-shell/compare.c +++ b/servers/slapd/back-shell/compare.c @@ -28,8 +28,8 @@ shell_back_compare( return( -1 ); } - if ( (op->o_private = forkandexec( si->si_compare, &rfp, &wfp )) - == -1 ) { + if ( (op->o_private = (void *) forkandexec( si->si_compare, &rfp, &wfp )) + == (void *) -1 ) { send_ldap_result( conn, op, LDAP_OPERATIONS_ERROR, NULL, "could not fork/exec" ); return( -1 ); diff --git a/servers/slapd/back-shell/delete.c b/servers/slapd/back-shell/delete.c index 2d55fdc429fc8dbbd4c36cc673ce114c9b12fdcb..be989ec9c5d6759da1dfea7a63c817a91e72e234 100644 --- a/servers/slapd/back-shell/delete.c +++ b/servers/slapd/back-shell/delete.c @@ -27,8 +27,8 @@ shell_back_delete( return( -1 ); } - if ( (op->o_private = forkandexec( si->si_delete, &rfp, &wfp )) - == -1 ) { + if ( (op->o_private = (void *) forkandexec( si->si_delete, &rfp, &wfp )) + == (void *) -1 ) { send_ldap_result( conn, op, LDAP_OPERATIONS_ERROR, NULL, "could not fork/exec" ); return( -1 ); diff --git a/servers/slapd/back-shell/fork.c b/servers/slapd/back-shell/fork.c index 2c2f9b72f889c1d44fb8628a5b82a4a894c48494..7619c367457656ad9856aaeaa38a4ad288c8ea67 100644 --- a/servers/slapd/back-shell/fork.c +++ b/servers/slapd/back-shell/fork.c @@ -11,7 +11,7 @@ #include "slap.h" #include "shell.h" -int +pid_t forkandexec( char **args, FILE **rfp, @@ -19,7 +19,7 @@ forkandexec( ) { int p2c[2], c2p[2]; - int pid; + pid_t pid; if ( pipe( p2c ) != 0 || pipe( c2p ) != 0 ) { Debug( LDAP_DEBUG_ANY, "pipe failed\n", 0, 0, 0 ); diff --git a/servers/slapd/back-shell/modify.c b/servers/slapd/back-shell/modify.c index 034830b649baadb0a66f982903a0246fa74ca021..6e8d909c02ee098bac51f8ec13ddc93d9c31d0f9 100644 --- a/servers/slapd/back-shell/modify.c +++ b/servers/slapd/back-shell/modify.c @@ -29,8 +29,8 @@ shell_back_modify( return( -1 ); } - if ( (op->o_private = forkandexec( si->si_modify, &rfp, &wfp )) - == -1 ) { + if ( (op->o_private = (void *) forkandexec( si->si_modify, &rfp, &wfp )) + == (void *) -1 ) { send_ldap_result( conn, op, LDAP_OPERATIONS_ERROR, NULL, "could not fork/exec" ); return( -1 ); diff --git a/servers/slapd/back-shell/modrdn.c b/servers/slapd/back-shell/modrdn.c index ad7cc5ad4123b6c2001adb22cb9041996f180542..36bec9e4bc21bd83e15df0d950aceaf78f046f22 100644 --- a/servers/slapd/back-shell/modrdn.c +++ b/servers/slapd/back-shell/modrdn.c @@ -29,8 +29,8 @@ shell_back_modrdn( return( -1 ); } - if ( (op->o_private = forkandexec( si->si_modrdn, &rfp, &wfp )) - == -1 ) { + if ( (op->o_private = (void *) forkandexec( si->si_modrdn, &rfp, &wfp )) + == (void *) -1 ) { send_ldap_result( conn, op, LDAP_OPERATIONS_ERROR, NULL, "could not fork/exec" ); return( -1 ); diff --git a/servers/slapd/back-shell/search.c b/servers/slapd/back-shell/search.c index ded0b2f5fcc2851f73d5c8d503ddcbecfb2c015b..dc26be2d08a809e9bb117a81e740df466ac8a210 100644 --- a/servers/slapd/back-shell/search.c +++ b/servers/slapd/back-shell/search.c @@ -38,8 +38,8 @@ shell_back_search( return( -1 ); } - if ( (op->o_private = forkandexec( si->si_search, &rfp, &wfp )) - == -1 ) { + if ( (op->o_private = (void *) forkandexec( si->si_search, &rfp, &wfp )) + == (void *) -1 ) { send_ldap_result( conn, op, LDAP_OPERATIONS_ERROR, NULL, "could not fork/exec" ); return( -1 ); diff --git a/servers/slapd/back-shell/unbind.c b/servers/slapd/back-shell/unbind.c index 84bb05138ac789ee5a341f08e6a04806543ae561..7ad4ba619b34ed213fed5210b89d520d3cc0defc 100644 --- a/servers/slapd/back-shell/unbind.c +++ b/servers/slapd/back-shell/unbind.c @@ -26,8 +26,8 @@ shell_back_unbind( return; } - if ( (op->o_private = forkandexec( si->si_unbind, &rfp, &wfp )) - == -1 ) { + if ( (op->o_private = (void *) forkandexec( si->si_unbind, &rfp, &wfp )) + == (void *) -1 ) { send_ldap_result( conn, op, LDAP_OPERATIONS_ERROR, NULL, "could not fork/exec" ); return; diff --git a/servers/slapd/slap.h b/servers/slapd/slap.h index 085e30a507f1b490b834b3bb2dfda28ff2e7defd..fa683b37dd1c5caf0123ad19b494fa33ca630c09 100644 --- a/servers/slapd/slap.h +++ b/servers/slapd/slap.h @@ -286,7 +286,7 @@ typedef struct slap_op { int o_abandon; /* signals op has been abandoned */ ldap_pvt_thread_mutex_t o_abandonmutex; /* signals op has been abandoned */ - int o_private; /* anything the backend needs */ + void *o_private; /* anything the backend needs */ } Operation; /*