Добрый день.
У меня программа вылетает в Segmentation fault (core dumped). Так как изучать С я стал недавно, то понять причину почему это происходит не могу.
Вот код:
#include <stdio.h>
#include <lber.h>
#include <ldap.h>
out (char outstr[256]) {
printf(outstr);
}
int main ()
{
char *ldapserver="10.0.9.15";
int ldapport=389;
char *bindpassword="pass";
char *bindpath="cn=managment";
int ldapversion=LDAP_VERSION3;
int myldap;
char *ldapbasesearch="cn=Users,dc=domen,dc=ru";
char *filter="(objectClass=*)";
char *searchattr[]={"mail","mailAleternativeAddress"};
LDAP *ld;
out ("Open ldap connection... \n");
ld=ldap_open(ldapserver,ldapport);
if (ld == NULL) {
out ("Ldap server not found... \n");
return NULL;
}
ldap_set_option(ld, LDAP_OPT_PROTOCOL_VERSION, &ldapversion);
myldap=ldap_bind(ld, bindpath, bindpassword,LDAP_AUTH_SIMPLE);
if (myldap == -1) {
out ("Bind error... \n");
return NULL;
}
myldap=ldap_search(ld,ldapbasesearch,LDAP_SCOPE_SUBTREE,filter,searchattr,1);
}
Ошибка происходит в функции ldap_search(). И второй вопрос. Можно ли проанализировать дамп программы и узнать по какой причине она вылетела?
Заранее благодарен за советы.