Пример #1
0
/*
 * loadConfigStats()
 *
 * Reads the header table SNMP settings and sets them in the mmap'd stats
 * file.  This should be done only when the semaphore is held.
 */
static void
loadConfigStats() {
	Slapi_Entry *entry = NULL;
	char *name = NULL;
	char *desc = NULL;
	char *org = NULL;
	char *loc = NULL;
	char *contact = NULL;

	/* Read attributes from SNMP config entry */
        getConfigEntry( &entry );
        if ( entry != NULL ) {
		name = slapi_entry_attr_get_charptr( entry, SNMP_NAME_ATTR );
		desc = slapi_entry_attr_get_charptr( entry, SNMP_DESC_ATTR );
		org = slapi_entry_attr_get_charptr( entry, SNMP_ORG_ATTR );
		loc = slapi_entry_attr_get_charptr( entry, SNMP_LOC_ATTR );
		contact = slapi_entry_attr_get_charptr( entry, SNMP_CONTACT_ATTR );
		freeConfigEntry( &entry );
        }

	/* Load stats into table */
        if ( name != NULL) {
		PL_strncpyz(stats->hdr_stats.dsName, name, SNMP_FIELD_LENGTH);
        }

	if ( desc != NULL) {
		PL_strncpyz(stats->hdr_stats.dsDescription, desc, SNMP_FIELD_LENGTH);
	}

	if ( org != NULL) {
		PL_strncpyz(stats->hdr_stats.dsOrganization, org, SNMP_FIELD_LENGTH);
	}

	if ( loc != NULL) {
		PL_strncpyz(stats->hdr_stats.dsLocation, loc, SNMP_FIELD_LENGTH);
	}

	if ( contact != NULL) {
		PL_strncpyz(stats->hdr_stats.dsContact, contact, SNMP_FIELD_LENGTH);
	}

	/* Free strings */
	slapi_ch_free((void **) &name);
	slapi_ch_free((void **) &desc);
	slapi_ch_free((void **) &org);
	slapi_ch_free((void **) &loc);
	slapi_ch_free((void **) &contact);
}
Пример #2
0
static int
sasl_map_read_config_startup(sasl_map_private *priv)
{
	char **map_entry_list = NULL;
	int ret = 0;

	slapi_log_err(SLAPI_LOG_TRACE, "sasl_map_read_config_startup", "=>\n");
    if((map_entry_list = getChildren(configDN))) {
		char **map_entry = NULL;
		Slapi_Entry *entry = NULL;
		sasl_map_data *dp = NULL;

		for (map_entry = map_entry_list; *map_entry && !ret; map_entry++) {
			slapi_log_err(SLAPI_LOG_CONFIG, "sasl_map_read_config_startup", "Processing [%s]\n", *map_entry);
 			getConfigEntry( *map_entry, &entry );
			if ( entry == NULL ) {
				continue;
			}
			ret = sasl_map_config_parse_entry(entry,&dp);
			if (ret) {
				    slapi_log_err(SLAPI_LOG_ERR, "sasl_map_read_config_startup", "Failed to parse entry\n");
			} else {
				ret = sasl_map_insert_list_entry(priv,dp);
				if (ret) {
					slapi_log_err(SLAPI_LOG_ERR, "sasl_map_read_config_startup", "Failed to insert entry\n");
				} else {
					slapi_log_err(SLAPI_LOG_CONFIG, "sasl_map_read_config_startup", "Processed [%s]\n", *map_entry);
				}
			}
			freeConfigEntry( &entry );
		}
		freeChildren( map_entry_list );
    }
	slapi_log_err(SLAPI_LOG_TRACE, "sasl_map_read_config_startup", "<= %d\n", ret);
	return ret;
}