More syslog and style cleanup
authorArt Cancro <ajc@citadel.org>
Sun, 9 Apr 2017 18:49:02 +0000 (14:49 -0400)
committerArt Cancro <ajc@citadel.org>
Sun, 9 Apr 2017 18:49:02 +0000 (14:49 -0400)
citadel/clientsocket.c
citadel/database.c
citadel/ical_dezonify.c
citadel/ldap.c

index ed54c2f778d496d1119a49814a4e7981f50799c2..1abf2d89e25ba17ff4fc1e4dea662387a194465d 100644 (file)
@@ -71,7 +71,7 @@ int sock_connect(char *host, char *service)
        for (ai = res; ai != NULL; ai = ai->ai_next) {
                sock = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol);
                if (sock < 0) {
-                       syslog(LOG_ERR, "socket() failed: %s", strerror(errno));
+                       syslog(LOG_ERR, "%s: %s", host, strerror(errno));
                        freeaddrinfo(res);
                        return(-1);
                }
@@ -81,7 +81,7 @@ int sock_connect(char *host, char *service)
                        return(sock);
                }
                else {
-                       syslog(LOG_ERR, "connect() failed: %s", strerror(errno));
+                       syslog(LOG_ERR, "%s: %s", host, strerror(errno));
                        close(sock);
                }
        }
@@ -111,7 +111,7 @@ int socket_read_blob(int *Socket, StrBuf *Target, int bytes, int timeout)
 
        retval = StrBufReadBLOBBuffered(Target, CC->SBuf.Buf, &CC->SBuf.ReadWritePointer, Socket, 1, bytes, O_TERM, &Error); 
        if (retval < 0) {
-               syslog(LOG_CRIT, "socket_read_blob() failed: %s", Error);
+               syslog(LOG_ERR, "clientsocket: socket_read_blob() failed: %s", Error);
        }
        return retval;
 }
@@ -129,7 +129,7 @@ int CtdlSockGetLine(int *sock, StrBuf *Target, int nSec)
                                               &CCC->SBuf.ReadWritePointer,
                                               sock, nSec, 1, &Error);
        if ((rc < 0) && (Error != NULL)) {
-               syslog(LOG_CRIT, "CtdlSockGetLine() failed: %s", Error);
+               syslog(LOG_ERR, "clientsocket: CtdlSockGetLine() failed: %s", Error);
        }
        return rc;
 }
index ea47a169e3df1cc460ea18ad0dbb2beb8f0525ac..870d08bb78545ae8167e500e8d11ce08f80992c5 100644 (file)
@@ -10,7 +10,6 @@
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
- *
  */
 
 /*****************************************************************************
@@ -83,7 +82,7 @@ void cdb_verbose_log(const DB_ENV *dbenv, const char *msg)
 void cdb_verbose_err(const DB_ENV *dbenv, const char *errpfx, const char *msg)
 {
        int *FOO = NULL;
-       syslog(LOG_ALERT, "db: %s", msg);
+       syslog(LOG_ERR, "db: %s", msg);
        cit_backtrace();
        *FOO = 1;
 }
@@ -97,7 +96,7 @@ static void txabort(DB_TXN * tid)
        ret = tid->abort(tid);
 
        if (ret) {
-               syslog(LOG_EMERG, "db: txn_abort: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: txn_abort: %s", db_strerror(ret));
                cdb_abort();
        }
 }
@@ -110,7 +109,7 @@ static void txcommit(DB_TXN * tid)
        ret = tid->commit(tid, 0);
 
        if (ret) {
-               syslog(LOG_EMERG, "db: txn_commit: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: txn_commit: %s", db_strerror(ret));
                cdb_abort();
        }
 }
@@ -123,14 +122,14 @@ static void txbegin(DB_TXN ** tid)
        ret = dbenv->txn_begin(dbenv, NULL, tid, 0);
 
        if (ret) {
-               syslog(LOG_EMERG, "db: txn_begin: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: txn_begin: %s", db_strerror(ret));
                cdb_abort();
        }
 }
 
 static void dbpanic(DB_ENV * env, int errval)
 {
-       syslog(LOG_EMERG, "db: PANIC: %s", db_strerror(errval));
+       syslog(LOG_ERR, "db: PANIC: %s", db_strerror(errval));
        cit_backtrace();
 }
 
@@ -139,7 +138,7 @@ static void cclose(DBC * cursor)
        int ret;
 
        if ((ret = cursor->c_close(cursor))) {
-               syslog(LOG_EMERG, "db: c_close: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: c_close: %s", db_strerror(ret));
                cdb_abort();
        }
 }
@@ -150,7 +149,7 @@ static void bailIfCursor(DBC ** cursors, const char *msg)
 
        for (i = 0; i < MAXCDB; i++)
                if (cursors[i] != NULL) {
-                       syslog(LOG_EMERG, "db: cursor still in progress on cdb %02x: %s", i, msg);
+                       syslog(LOG_ERR, "db: cursor still in progress on cdb %02x: %s", i, msg);
                        cdb_abort();
                }
 }
@@ -161,7 +160,7 @@ void cdb_check_handles(void)
        bailIfCursor(TSD->cursors, "in check_handles");
 
        if (TSD->tid != NULL) {
-               syslog(LOG_EMERG, "db: transaction still in progress!");
+               syslog(LOG_ERR, "db: transaction still in progress!");
                cdb_abort();
        }
 }
@@ -219,7 +218,7 @@ void cdb_checkpoint(void)
        ret = dbenv->txn_checkpoint(dbenv, MAX_CHECKPOINT_KBYTES, MAX_CHECKPOINT_MINUTES, 0);
 
        if (ret != 0) {
-               syslog(LOG_EMERG, "db: cdb_checkpoint() txn_checkpoint: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: cdb_checkpoint() txn_checkpoint: %s", db_strerror(ret));
                cdb_abort();
        }
 
@@ -264,20 +263,20 @@ void open_databases(void)
         * already there, no problem.
         */
        if ((mkdir(ctdl_data_dir, 0700) != 0) && (errno != EEXIST)){
-               syslog(LOG_EMERG, "db: unable to create database directory [%s]: %s", ctdl_data_dir, strerror(errno));
+               syslog(LOG_ERR, "db: unable to create database directory [%s]: %s", ctdl_data_dir, strerror(errno));
        }
        if (chmod(ctdl_data_dir, 0700) != 0){
-               syslog(LOG_EMERG, "db: unable to set database directory accessrights [%s]: %s", ctdl_data_dir, strerror(errno));
+               syslog(LOG_ERR, "db: unable to set database directory accessrights [%s]: %s", ctdl_data_dir, strerror(errno));
        }
        if (chown(ctdl_data_dir, CTDLUID, (-1)) != 0){
-               syslog(LOG_EMERG, "db: unable to set the owner for [%s]: %s", ctdl_data_dir, strerror(errno));
+               syslog(LOG_ERR, "db: unable to set the owner for [%s]: %s", ctdl_data_dir, strerror(errno));
        }
        syslog(LOG_DEBUG, "db: Setting up DB environment\n");
        /* db_env_set_func_yield((int (*)(u_long,  u_long))sched_yield); */
        ret = db_env_create(&dbenv, 0);
        if (ret) {
-               syslog(LOG_EMERG, "db: db_env_create: %s", db_strerror(ret));
-               syslog(LOG_EMERG, "db: exit code %d", ret);
+               syslog(LOG_ERR, "db: db_env_create: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: exit code %d", ret);
                exit(CTDLEXIT_DB);
        }
        dbenv->set_errpfx(dbenv, "citserver");
@@ -294,16 +293,16 @@ void open_databases(void)
         */
        ret = dbenv->set_cachesize(dbenv, 0, 64 * 1024, 0);
        if (ret) {
-               syslog(LOG_EMERG, "db: set_cachesize: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: set_cachesize: %s", db_strerror(ret));
                dbenv->close(dbenv, 0);
-               syslog(LOG_EMERG, "db: exit code %d", ret);
+               syslog(LOG_ERR, "db: exit code %d", ret);
                exit(CTDLEXIT_DB);
        }
 
        if ((ret = dbenv->set_lk_detect(dbenv, DB_LOCK_DEFAULT))) {
-               syslog(LOG_EMERG, "db: set_lk_detect: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: set_lk_detect: %s", db_strerror(ret));
                dbenv->close(dbenv, 0);
-               syslog(LOG_EMERG, "db: exit code %d", ret);
+               syslog(LOG_ERR, "db: exit code %d", ret);
                exit(CTDLEXIT_DB);
        }
 
@@ -311,22 +310,22 @@ void open_databases(void)
        syslog(LOG_DEBUG, "db: dbenv->open(dbenv, %s, %d, 0)", ctdl_data_dir, flags);
        ret = dbenv->open(dbenv, ctdl_data_dir, flags, 0);
        if (ret == DB_RUNRECOVERY) {
-               syslog(LOG_ALERT, "db: dbenv->open: %s", db_strerror(ret));
-               syslog(LOG_ALERT, "db: attempting recovery...");
+               syslog(LOG_ERR, "db: dbenv->open: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: attempting recovery...");
                flags |= DB_RECOVER;
                ret = dbenv->open(dbenv, ctdl_data_dir, flags, 0);
        }
        if (ret == DB_RUNRECOVERY) {
-               syslog(LOG_ALERT, "db: dbenv->open: %s", db_strerror(ret));
-               syslog(LOG_ALERT, "db: attempting catastrophic recovery...");
+               syslog(LOG_ERR, "db: dbenv->open: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: attempting catastrophic recovery...");
                flags &= ~DB_RECOVER;
                flags |= DB_RECOVER_FATAL;
                ret = dbenv->open(dbenv, ctdl_data_dir, flags, 0);
        }
        if (ret) {
-               syslog(LOG_EMERG, "db: dbenv->open: %s", db_strerror(ret));
+               syslog(LOG_ERR, "db: dbenv->open: %s", db_strerror(ret));
                dbenv->close(dbenv, 0);
-               syslog(LOG_EMERG, "db: exit code %d", ret);
+               syslog(LOG_ERR, "db: exit code %d", ret);
                exit(CTDLEXIT_DB);
        }
 
@@ -337,8 +336,8 @@ void open_databases(void)
                /* Create a database handle */
                ret = db_create(&dbp[i], dbenv, 0);
                if (ret) {
-                       syslog(LOG_EMERG, "db: db_create: %s", db_strerror(ret));
-                       syslog(LOG_EMERG, "db: exit code %d", ret);
+                       syslog(LOG_ERR, "db: db_create: %s", db_strerror(ret));
+                       syslog(LOG_ERR, "db: exit code %d", ret);
                        exit(CTDLEXIT_DB);
                }
 
@@ -357,11 +356,11 @@ void open_databases(void)
                                   0600
                );
                if (ret) {
-                       syslog(LOG_EMERG, "db: db_open[%02x]: %s", i, db_strerror(ret));
+                       syslog(LOG_ERR, "db: db_open[%02x]: %s", i, db_strerror(ret));
                        if (ret == ENOMEM) {
-                               syslog(LOG_EMERG, "db: You may need to tune your database; please read http://www.citadel.org/doku.php?id=faq:troubleshooting:out_of_lock_entries for more information.");
+                               syslog(LOG_ERR, "db: You may need to tune your database; please read http://www.citadel.org/doku.php?id=faq:troubleshooting:out_of_lock_entries for more information.");
                        }
-                       syslog(LOG_EMERG, "db: exit code %d", ret);
+                       syslog(LOG_ERR, "db: exit code %d", ret);
                        exit(CTDLEXIT_DB);
                }
        }
@@ -424,7 +423,7 @@ void close_databases(void)
                syslog(LOG_INFO, "db: closing database %02x", a);
                ret = dbp[a]->close(dbp[a], 0);
                if (ret) {
-                       syslog(LOG_EMERG, "db: db_close: %s", db_strerror(ret));
+                       syslog(LOG_ERR, "db: db_close: %s", db_strerror(ret));
                }
 
        }
index cc3c60efc1b5d9ce3f1aae23ab5d4d7114425b30..f3425acd92be3d3e523b5147acda9414cebd42fe 100644 (file)
@@ -1,7 +1,17 @@
-/* 
+/*
  * Function to go through an ical component set and convert all non-UTC
  * date/time properties to UTC.  It also strips out any VTIMEZONE
  * subcomponents afterwards, because they're irrelevant.
+ *
+ * Copyright (c) 1987-2017 by the citadel.org team
+ *
+ * This program is open source software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License version 3.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
  */
 
 
@@ -23,7 +33,6 @@
 #include "support.h"
 #include "config.h"
 #include "ical_dezonify.h"
-
 #include "ctdl_module.h"
 
 
@@ -40,13 +49,11 @@ icaltimezone *get_default_icaltimezone(void) {
                 zone = icaltimezone_get_builtin_timezone(default_zone_name);
         }
         if (!zone) {
-               syslog(LOG_ALERT,
-                       "Unable to load '%s' time zone.  Defaulting to UTC.\n",
-                       default_zone_name);
+               syslog(LOG_ERR, "ical: Unable to load '%s' time zone.  Defaulting to UTC.", default_zone_name);
                 zone = icaltimezone_get_utc_timezone();
        }
        if (!zone) {
-               syslog(LOG_ALERT, "Unable to load UTC time zone!\n");
+               syslog(LOG_ERR, "ical: unable to load UTC time zone!");
        }
         return zone;
 }
index eebf6545d62dddcab0f090d6a124de4294db0b3f..2d3140849011f61978d433d8cdb412baa484f91b 100644 (file)
@@ -40,7 +40,7 @@ int ctdl_ldap_initialize(LDAP **ld) {
        snprintf(server_url, sizeof server_url, "ldap://%s:%d", CtdlGetConfigStr("c_ldap_host"), CtdlGetConfigInt("c_ldap_port"));
        ret = ldap_initialize(ld, server_url);
        if (ret != LDAP_SUCCESS) {
-               syslog(LOG_ALERT, "LDAP: Could not connect to %s : %s", server_url, strerror(errno));
+               syslog(LOG_ERR, "ldap: could not connect to %s : %s", server_url, strerror(errno));
                *ld = NULL;
                return(errno);
        }
@@ -77,13 +77,13 @@ int CtdlTryUserLDAP(char *username,
 
        striplt(CtdlGetConfigStr("c_ldap_bind_dn"));
        striplt(CtdlGetConfigStr("c_ldap_bind_pw"));
-       syslog(LOG_DEBUG, "LDAP bind DN: %s", CtdlGetConfigStr("c_ldap_bind_dn"));
+       syslog(LOG_DEBUG, "ldap: bind DN: %s", CtdlGetConfigStr("c_ldap_bind_dn"));
        i = ldap_simple_bind_s(ldserver,
                (!IsEmptyStr(CtdlGetConfigStr("c_ldap_bind_dn")) ? CtdlGetConfigStr("c_ldap_bind_dn") : NULL),
                (!IsEmptyStr(CtdlGetConfigStr("c_ldap_bind_pw")) ? CtdlGetConfigStr("c_ldap_bind_pw") : NULL)
        );
        if (i != LDAP_SUCCESS) {
-               syslog(LOG_ALERT, "LDAP: Cannot bind: %s (%d)", ldap_err2string(i), i);
+               syslog(LOG_ERR, "ldap: Cannot bind: %s (%d)", ldap_err2string(i), i);
                return(i);
        }
 
@@ -105,7 +105,7 @@ int CtdlTryUserLDAP(char *username,
                }
        }
 
-       syslog(LOG_DEBUG, "LDAP search: %s", searchstring);
+       syslog(LOG_DEBUG, "ldap: search: %s", searchstring);
        (void) ldap_search_ext_s(
                ldserver,                                       /* ld                           */
                CtdlGetConfigStr("c_ldap_base_dn"),             /* base                         */
@@ -124,7 +124,7 @@ int CtdlTryUserLDAP(char *username,
         * the search succeeds.  Instead, we check to see whether search_result is still NULL.
         */
        if (search_result == NULL) {
-               syslog(LOG_DEBUG, "LDAP search: zero results were returned");
+               syslog(LOG_DEBUG, "ldap: zero search results were returned");
                ldap_unbind(ldserver);
                return(2);
        }
@@ -137,7 +137,7 @@ int CtdlTryUserLDAP(char *username,
 
                user_dn = ldap_get_dn(ldserver, entry);
                if (user_dn) {
-                       syslog(LOG_DEBUG, "dn = %s", user_dn);
+                       syslog(LOG_DEBUG, "ldap: dn = %s", user_dn);
                }
 
                if (CtdlGetConfigInt("c_auth_mode") == AUTHMODE_LDAP_AD) {
@@ -145,7 +145,7 @@ int CtdlTryUserLDAP(char *username,
                        if (values) {
                                if (values[0]) {
                                        if (fullname) safestrncpy(fullname, values[0], fullname_size);
-                                       syslog(LOG_DEBUG, "displayName = %s", values[0]);
+                                       syslog(LOG_DEBUG, "ldap: displayName = %s", values[0]);
                                }
                                ldap_value_free(values);
                        }
@@ -155,7 +155,7 @@ int CtdlTryUserLDAP(char *username,
                        if (values) {
                                if (values[0]) {
                                        if (fullname) safestrncpy(fullname, values[0], fullname_size);
-                                       syslog(LOG_DEBUG, "cn = %s", values[0]);
+                                       syslog(LOG_DEBUG, "ldap: cn = %s", values[0]);
                                }
                                ldap_value_free(values);
                        }
@@ -168,7 +168,7 @@ int CtdlTryUserLDAP(char *username,
                                        if (values[0]) {
                                                if (uid != NULL) {
                                                        *uid = abs(HashLittle(values[0], strlen(values[0])));
-                                                       syslog(LOG_DEBUG, "uid hashed from objectGUID = %d", *uid);
+                                                       syslog(LOG_DEBUG, "ldap: uid hashed from objectGUID = %d", *uid);
                                                }
                                        }
                                        ldap_value_free(values);
@@ -178,7 +178,7 @@ int CtdlTryUserLDAP(char *username,
                                values = ldap_get_values(ldserver, search_result, "uidNumber");
                                if (values) {
                                        if (values[0]) {
-                                               syslog(LOG_DEBUG, "uidNumber = %s", values[0]);
+                                               syslog(LOG_DEBUG, "ldap: uidNumber = %s", values[0]);
                                                if (uid != NULL) {
                                                        *uid = atoi(values[0]);
                                                }
@@ -197,7 +197,7 @@ int CtdlTryUserLDAP(char *username,
        ldap_unbind(ldserver);
 
        if (!user_dn) {
-               syslog(LOG_DEBUG, "No such user was found.");
+               syslog(LOG_DEBUG, "ldap: No such user was found.");
                return(4);
        }
 
@@ -213,20 +213,20 @@ int CtdlTryPasswordLDAP(char *user_dn, const char *password)
        int i = (-1);
 
        if (IsEmptyStr(password)) {
-               syslog(LOG_DEBUG, "LDAP: empty passwords are not permitted");
+               syslog(LOG_DEBUG, "ldap: empty passwords are not permitted");
                return(1);
        }
 
-       syslog(LOG_DEBUG, "LDAP: trying to bind as %s", user_dn);
+       syslog(LOG_DEBUG, "ldap: trying to bind as %s", user_dn);
        i = ctdl_ldap_initialize(&ldserver);
        if (i == LDAP_SUCCESS) {
                ldap_set_option(ldserver, LDAP_OPT_PROTOCOL_VERSION, &ctdl_require_ldap_version);
                i = ldap_simple_bind_s(ldserver, user_dn, password);
                if (i == LDAP_SUCCESS) {
-                       syslog(LOG_DEBUG, "LDAP: bind succeeded");
+                       syslog(LOG_DEBUG, "ldap: bind succeeded");
                }
                else {
-                       syslog(LOG_DEBUG, "LDAP: Cannot bind: %s (%d)", ldap_err2string(i), i);
+                       syslog(LOG_DEBUG, "ldap: Cannot bind: %s (%d)", ldap_err2string(i), i);
                }
                ldap_set_option(ldserver, LDAP_OPT_REFERRALS, (void *)LDAP_OPT_OFF);
                ldap_unbind(ldserver);
@@ -250,7 +250,7 @@ int vcard_set_props_iff_different(struct vCard *v,char *propname,int numvals, ch
          if (strcmp(vals[i],oldval)) break;
        }
        if (i!=numvals) {
-               syslog(LOG_DEBUG, "LDAP: vcard property %s, element %d of %d changed from %s to %s\n", propname, i, numvals, oldval, vals[i]);
+               syslog(LOG_DEBUG, "ldap: vcard property %s, element %d of %d changed from %s to %s\n", propname, i, numvals, oldval, vals[i]);
                for(i=0;i<numvals;i++) vcard_set_prop(v,propname,vals[i],(i==0) ? 0 : 1);
                return 1;
        }
@@ -265,7 +265,7 @@ int vcard_set_one_prop_iff_different(struct vCard *v,char *propname, char *newfm
        int changed_something;
        va_start(args,newfmt);
        if (-1==vasprintf(&newvalue,newfmt,args)) {
-               syslog(LOG_ALERT, "Out of memory!\n");
+               syslog(LOG_ERR, "ldap: out of memory!");
                return 0;
        }
        changed_something = vcard_set_props_iff_different(v,propname,1,&newvalue);
@@ -323,20 +323,20 @@ int Ctdl_LDAP_to_vCard(char *ldap_dn, struct vCard *v)
 
        striplt(CtdlGetConfigStr("c_ldap_bind_dn"));
        striplt(CtdlGetConfigStr("c_ldap_bind_pw"));
-       syslog(LOG_DEBUG, "LDAP bind DN: %s", CtdlGetConfigStr("c_ldap_bind_dn"));
+       syslog(LOG_DEBUG, "ldap: bind DN: %s", CtdlGetConfigStr("c_ldap_bind_dn"));
        i = ldap_simple_bind_s(ldserver,
                (!IsEmptyStr(CtdlGetConfigStr("c_ldap_bind_dn")) ? CtdlGetConfigStr("c_ldap_bind_dn") : NULL),
                (!IsEmptyStr(CtdlGetConfigStr("c_ldap_bind_pw")) ? CtdlGetConfigStr("c_ldap_bind_pw") : NULL)
        );
        if (i != LDAP_SUCCESS) {
-               syslog(LOG_ALERT, "LDAP: Cannot bind: %s (%d)", ldap_err2string(i), i);
+               syslog(LOG_ERR, "ldap: Cannot bind: %s (%d)", ldap_err2string(i), i);
                return(0);
        }
 
        tv.tv_sec = 10;
        tv.tv_usec = 0;
 
-       syslog(LOG_DEBUG, "LDAP search: %s", ldap_dn);
+       syslog(LOG_DEBUG, "ldap: search: %s", ldap_dn);
        (void) ldap_search_ext_s(
                ldserver,                               // ld
                ldap_dn,                                // base
@@ -355,7 +355,7 @@ int Ctdl_LDAP_to_vCard(char *ldap_dn, struct vCard *v)
         * the search succeeds.  Instead, we check to see whether search_result is still NULL.
         */
        if (search_result == NULL) {
-               syslog(LOG_DEBUG, "LDAP search: zero results were returned");
+               syslog(LOG_DEBUG, "ldap: zero search results were returned");
                ldap_unbind(ldserver);
                return(0);
        }
@@ -365,7 +365,7 @@ int Ctdl_LDAP_to_vCard(char *ldap_dn, struct vCard *v)
         */
        entry = ldap_first_entry(ldserver, search_result);
        if (entry) {
-               syslog(LOG_DEBUG, "LDAP search, got user details for vcard.");
+               syslog(LOG_DEBUG, "ldap: search got user details for vcard.");
                givenName=ldap_get_values(ldserver, search_result, "givenName");
                sn=ldap_get_values(ldserver, search_result, "sn");
                cn=ldap_get_values(ldserver, search_result, "cn");