--- servers/slapd/overlays/auditlog.c 2005/06/07 01:03:18 1.1 +++ servers/slapd/overlays/auditlog.c 2006/05/09 17:43:12 1.1.2.5 @@ -1,8 +1,8 @@ /* auditlog.c - log modifications for audit/history purposes */ -/* $OpenLDAP: pkg/ldap/servers/slapd/auditlog.c,v 0.0 2004/00/00 00:00:00 ozone Exp $ */ +/* $OpenLDAP: pkg/ldap/servers/slapd/overlays/auditlog.c,v 1.1.2.4 2006/02/13 17:28:43 kurt Exp $ */ /* This work is part of OpenLDAP Software . * - * Copyright 2005 The OpenLDAP Foundation. + * Copyright 2005-2006 The OpenLDAP Foundation. * Portions copyright 2004-2005 Symas Corporation. * All rights reserved. * @@ -36,7 +36,7 @@ typedef struct auditlog_data { char *ad_logfile; } auditlog_data; -int fprint_ldif(FILE *f, char *name, char *val, ber_len_t len) { +static int fprint_ldif(FILE *f, char *name, char *val, ber_len_t len) { char *s; if((s = ldif_put(LDIF_PUT_VALUE, name, val, len)) == NULL) return(-1); @@ -45,7 +45,7 @@ int fprint_ldif(FILE *f, char *name, cha return(0); } -int auditlog_response(Operation *op, SlapReply *rs) { +static int auditlog_response(Operation *op, SlapReply *rs) { slap_overinst *on = (slap_overinst *)op->o_bd->bd_info; auditlog_data *ad = on->on_bi.bi_private; FILE *f; @@ -78,7 +78,9 @@ int auditlog_response(Operation *op, Sla case LDAP_REQ_MODIFY: what = "modify"; for(m = op->orm_modlist; m; m = m->sml_next) - if( m->sml_desc == slap_schema.si_ad_modifiersName ) { + if( m->sml_desc == slap_schema.si_ad_modifiersName && + ( m->sml_op == LDAP_MOD_ADD || + m->sml_op == LDAP_MOD_REPLACE )) { who = m->sml_values[0].bv_val; break; } @@ -175,6 +177,7 @@ auditlog_db_close( free( ad->ad_logfile ); ad->ad_logfile = NULL; + return 0; } static int @@ -187,6 +190,7 @@ auditlog_db_destroy( ldap_pvt_thread_mutex_destroy( &ad->ad_mutex ); free( ad ); + return 0; } static int @@ -215,7 +219,7 @@ auditlog_config( return SLAP_CONF_UNKNOWN; } -int auditlog_init() { +int auditlog_initialize() { auditlog.on_bi.bi_type = "auditlog"; auditlog.on_bi.bi_db_init = auditlog_db_init; @@ -228,8 +232,10 @@ int auditlog_init() { } #if SLAPD_OVER_AUDITLOG == SLAPD_MOD_DYNAMIC && defined(PIC) -int init_module( int argc, char *argv[]) { - return auditlog_init(); +int +init_module( int argc, char *argv[] ) +{ + return auditlog_initialize(); } #endif