X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fback-monitor%2Flistener.c;h=f5bd6df5eca093ca8a618ae8b556e3fe5d6f2b4a;hb=e1a5177baca44d6ff5dceea3f6f91da329d43b85;hp=d94954e8d021c26c391aa08d1bff99fec9e0798a;hpb=dc0eacd40b625258355eea866d62188e5aa7ce3b;p=openldap
diff --git a/servers/slapd/back-monitor/listener.c b/servers/slapd/back-monitor/listener.c
index d94954e8d0..f5bd6df5ec 100644
--- a/servers/slapd/back-monitor/listener.c
+++ b/servers/slapd/back-monitor/listener.c
@@ -2,7 +2,7 @@
/* $OpenLDAP$ */
/* This work is part of OpenLDAP Software .
*
- * Copyright 2001-2005 The OpenLDAP Foundation.
+ * Copyright 2001-2011 The OpenLDAP Foundation.
* Portions Copyright 2001-2003 Pierangelo Masarati.
* All rights reserved.
*
@@ -22,6 +22,7 @@
#include "portable.h"
#include
+#include
#include "slap.h"
#include "back-monitor.h"
@@ -68,32 +69,14 @@ monitor_subsys_listener_init(
for ( i = 0; l[ i ]; i++ ) {
char buf[ BACKMONITOR_BUFSIZE ];
Entry *e;
+ struct berval bv;
+
+ bv.bv_len = snprintf( buf, sizeof( buf ),
+ "cn=Listener %d", i );
+ bv.bv_val = buf;
+ e = monitor_entry_stub( &ms->mss_dn, &ms->mss_ndn, &bv,
+ mi->mi_oc_monitoredObject, mi, NULL, NULL );
- snprintf( buf, sizeof( buf ),
- "dn: cn=Listener %d,%s\n"
- "objectClass: %s\n"
- "structuralObjectClass: %s\n"
- "cn: Listener %d\n"
- "%s: %s\n"
- "labeledURI: %s\n"
- "creatorsName: %s\n"
- "modifiersName: %s\n"
- "createTimestamp: %s\n"
- "modifyTimestamp: %s\n",
- i,
- ms->mss_dn.bv_val,
- mi->mi_oc_monitoredObject->soc_cname.bv_val,
- mi->mi_oc_monitoredObject->soc_cname.bv_val,
- i,
- mi->mi_ad_monitorConnectionLocalAddress->ad_cname.bv_val,
- l[ i ]->sl_name.bv_val,
- l[ i ]->sl_url.bv_val,
- mi->mi_creatorsName.bv_val,
- mi->mi_creatorsName.bv_val,
- mi->mi_startTime.bv_val,
- mi->mi_startTime.bv_val );
-
- e = str2entry( buf );
if ( e == NULL ) {
Debug( LDAP_DEBUG_ANY,
"monitor_subsys_listener_init: "
@@ -102,13 +85,17 @@ monitor_subsys_listener_init(
return( -1 );
}
+ attr_merge_normalize_one( e, mi->mi_ad_monitorConnectionLocalAddress,
+ &l[ i ]->sl_name, NULL );
+
+ attr_merge_normalize_one( e, slap_schema.si_ad_labeledURI,
+ &l[ i ]->sl_url, NULL );
+
#ifdef HAVE_TLS
if ( l[ i ]->sl_is_tls ) {
struct berval bv;
- bv.bv_val = "TLS";
- bv.bv_len = sizeof("TLS")-1;
-
+ BER_BVSTR( &bv, "TLS" );
attr_merge_normalize_one( e, mi->mi_ad_monitoredInfo,
&bv, NULL );
}