LDAP_HATASI
Protokol hatalarını yönetmek ya da işlemek için LDAP_ERROR API ' yı ya da LDAP yordamını kullanın.
- ldap_get_errno
- ldap_get_lderrno
- ldap_set_lderrno
- ldap_perror (kullanımdan kaldırıldı)
- ldap_result2error (kullanımdan kaldırıldı)
- ldap_err2string
- ldap_get_exterror
Özet
#include ldap.h
int ldap_get_errno(
LDAP *ld);
int ldap_get_lderrno (
LDAP *ld,
char **dn,
char **errmsg);
int ldap_set_lderrno (
LDAP *ld,
int errnum,
char *dn,
char *errmsg);
void ldap_perror(
LDAP *ld,
const char *s);
int ldap_result2error(
LDAP *ld,
LDAPMessage *res,
int freeit);
const char *ldap_err2string(
int error);
int ldap_get_exterror(
LDAP *ld);Giriş Parametreleri
- ld
- Specifies the LDAP pointer that is returned by a previous call to
ldap_init(),ldap_ssl_init()orldap_open(). - Ayırt Edici Ad
- Sunucu tarafından tanınan istekte adın ne kadarının olduğunu gösteren, var olan bir girdiyi tanımlayan bir DN belirtir. Ayırt edici ad (DN)LDAP_NO_SUCH_OBJECTSunucudan hata döndürüldü. Eşleşen DN dizgisi
ldap_memfree()çağrılarak serbest bırakılmalıdır. - errmsg
- Sunucunun döndürdüğü gibi, hata iletisinin metnini belirtir. Hata iletisi dizgisi,
ldap_memfree()çağrılarak serbest bırakılmalıdır. - s
- LDAP yapısı altında saklanan hata kodunun dizgi biçimine önek olarak eklenen ileti önekini belirtir. Hatanın dizgi biçimi, ldap_err2string()çağrısı tarafından döndürülen aynı dizgidir.
- res
- Specifies the result, as produced by
ldap_result()orldap_search_s(), to be converted to the error code with which it is associated. - serbest
- Sonucun,res, ldap_result2error()çağrısının sonucu olarak serbest bırakılmalıdır. Sıfırsız ise, sonuç,res, çağrıya göre serbest bırakılıyor. Sıfırsa,resçağrıyla serbest bırakılmaz.
- errnum
ldap_parse_result()ya da başka bir LDAP API çağrısının döndürdüğü LDAP hata kodunu belirtir.
Kullanım
Bu yordamlar, LDAP protokolü ve LDAP kitaplığı yordamlarıyla döndürülen çeşitli hata kodlarının yorumlanmasını sağlar.
- Oluşan hataya ilişkin LDAP sonuç kodu.
- Sunucudan hataya ilişkin ek bilgi içeren bir ileti.
Hata, DN tarafından belirtilen bir girdi bulunamadığı için oluştuysa, sunucu, var olan bir girdiyi tanımlayan DN kısmını da döndürebilir.
Her iki API da sunucunun hata sonucu kodunu döndürür. İletiyi elde etmek ve ayırt edici adı eşleştirmek için ldap_get_lderrno() ' i kullanın.
ldap_set_lderrno() API, belirtilen LDAP yapısındaki bir hatayla ilgili bir hata kodu ve diğer bilgileri ayarlar. Bu işlev, sonraki ldap_get_lderrno() çağrıları tarafından alınan hata bilgilerini ayarlamak için çağrılabilir.
The ldap_result2error() routine takes res, a result as produced by ldap_result() or ldap_search_s(), and returns the corresponding error code. Olası hata kodları izlenecek. Aşağıdaki kısımlardaki tablolara bakın. freeit parametresi sıfırsa, hata kodu çıkarıldıktan sonra res parametresinin ldap_msgfree() çağrısı ile serbest bırakılması gerektiğini belirtir. ld içindeki ld_errno alanı ayarlıdır ve döndürülür.
Döndürülen değer ldap_err2string()' e geçirilebilir; bu, LDAP hata kodunun metin açıklaması olan bir karakter dizgisine işaret döndürür. Dizilim kullanımı tamamlandığında, karakter dizilimi serbest bırakılmamalı.
Standart hatada hatanın bir göstergesini yazdırmak için ldap_perror() yordamı çağrılabilir.
ldap_get_exterror() yordamı, LDAP oturumu için bir LDAP sunucusu ya da Kerberos ya da SSL gibi başka bir kitaplığın döndürdüğü yürürlükteki genişletilmiş hata kodunu döndürür. Bazı hata kodları için, hata koşulunu daha ayrıntılı yorumlamak mümkün olabilir. Örneğin, SSL hataları için genişletilmiş hata kodu, SSL anlaşması neden başarısız olduğunu gösterebilir.
Hata
| Dec değeri | Değer | Onaltılı değer | Kısa açıklama | Ayrıntılı açıklama |
|---|---|---|---|---|
| 00 | LDAP_SUCCESS | 00 | Başarılı | İstek başarılı oldu. |
| 00 | LDAP_OPERATIONS_ERROR | 01 | İşlem hatası | Bir işlem hatası oluştu. |
| 02 | LDAP_PROTOCOL_ERROR | 02 | Protokol hatası | Bir iletişim kuralı ihlali saptandı. |
| 03 | LDAP_TIMELIMIT_EXCEEDED | 03 | Aşılan zaman sınırı | Bir LDAP zaman sınırı aşıldı. |
| 04 | LDAP_SIZELIMIT_EXCEEDED | 04 | Boyut sınırı aşıldı | Bir LDAP boyutu sınırı aşıldı. |
| 05 | LDAP_COMPARE_FALSE | 05 | karşılaştırma yanlış | Karşılaştırma işlemi false değerini döndürdü. |
| 06 | LDAP_COMPARE_TRUE | 06 | karşılaştırma doğru | Bir karşılaştırma işlemi true (doğru) döndürdü. |
| 07 | LDAP_STRONG_AUTH_NOT_SUPPORTED | 07 | Desteklenmeyen güçlü kimlik doğrulaması | LDAP sunucusu güçlü kimlik doğrulamasını desteklemiyor. |
| 08 | LDAP_STRONG_AUTH_REQUIRED | 08 | Gerekli olan güçlü kimlik doğrulaması | İşlem için güçlü kimlik doğrulaması gerekli. |
| 09 | LDAP_PARTIAL_RESULTS | 09 | Kısmi sonuçlar ve başvuru alındı | Yalnızca döndürülen kısmi sonuçlar. |
| 10 | LDAP_REFERRAL | 0A | Başvuru döndürüldü | Başvuru döndürüldü. |
| 11 | LDAP_ADMIN_LIMIT_EXCEEDED | 0B | Yönetim sınırı aşıldı | Yönetim sınırı aşıldı. |
| 12 | LDAP_UNAVAILABLE_CRITICAL_EXTENSION | 0C | Desteklenmeyen kritik uzantı | Kritik uzantı desteklenmiyor. |
| 13 | LDAP_CONFIDENTIALITY_REQUIRED | 0D | Gizlilik gerekli | Gizlilik gerekli. |
| 14 | LDAP_SASLBIND_IN_PROGRESS | 0E | SASL bağ tanımı devam ediyor | Bir SASL bağ tanımı devam ediyor. |
| 16 | LDAP_NO_SUCH_ATTRIBUTE | 10 | böyle bir öznitelik yok | Belirtilen öznitelik tipi girdide yok. |
| 17 | LDAP_UNDEFINED_TYPE | 11 | Tanımlanmamış öznitelik tipi | Belirtilen öznitelik tipi geçerli değil. |
| 18 | LDAP_INAPPROPRIATE_MATCHING | 12 | Uygun olmayan eşleştirme | Belirtilen öznitelik için desteklenmeyen süzgeç tipi. |
| 19 | LDAP_CONSTRAINT_VIOLATION | 13 | Kısıt İhlali | Belirtilen bir öznitelik değeri bir koşula aykırılık oluşturuyor. Örneğin, bir posta adresinin çok fazla satırı var ya da çok uzun bir satır var. |
| 20 | LDAP_TYPE_OR_VALUE_EXISTS | 14 | Tip ya da değer var | Girişte belirtilen bir öznitelik tipi ya da öznitelik değeri var. |
| 21 | LDAP_INVALID_SYNTAX | 15 | Sözdizimi geçersiz | Geçerli olmayan bir öznitelik değeri belirtildi. |
| 32 | LDAP_NO_SUCH_OBJECT | 20 | böyle bir nesne yok | Belirtilen nesne rehberde yok. |
| 33 | LDAP_ALIAS_PROBLEM | 21 | Diğer ad sorunu | Dizin noktasındaki diğer ad var olmayan bir girişe işaret ediyor. |
| 34 | LDAP_INVALID_DN_SYNTAX | 22 | Geçersiz DN sözdizimi | Sözdizimsel olarak geçerli olmayan bir ayırt edici ad belirtildi. |
| 35 | LDAP_IS_LEAF | 23 | Nesne bir yaprak | Belirtilen nesne bir yaprak. |
| 36 | LDAP_ALIAS_DEREF_PROBLEM | 24 | Diğer ad başvuru kaldırma sorunu | Bir diğer adı kayıttan kaldırırken bir sorunla karşılaşıldı. |
| 48 | LDAP_INAPPROPRIATE_AUTH | 30 | uygunsuz kimlik doğrulaması | Uygun olmayan kimlik doğrulaması belirtildi. Örneğin,LDAP_AUTH_SIMPLEBelirtilen ve girişin bir userPassword özniteliği yok. |
| 49 | LDAP_INVALID_CREDENTIALS | 31 | Geçersiz kimlik bilgileri | Geçersiz kimlik bilgileri sunuldu. Örneğin, yanlış parola. |
| 50 | LDAP_INSUFFICIENT_ACCESS | 32 | Yetersiz erişim | Kullanıcı, işlemi çalıştırmak için yeterli erişime sahip değil. |
| 51 | LDAP_BUSY | 33 | DSA meşgul | DSA meşgul. |
| 52 | LDAP_UNAVAILABLE | 34 | DSA kullanılamıyor | DSA kullanılamıyor. |
| 53 | LDAP_UNWILLING_TO_PERFORM | 35 | DSA çalıştırılamıyor | DSA işlemi çalıştıramıyor. |
| 54 | LDAP_LOOP_DETECT | 36 | Döngü saptandı | Bir döngü saptandı. |
| 64 | LDAP_NAMING_VIOLATION | 40 | Adlandırma ihlali | Adlandırma kurallarına aykırılık oluştu. |
| 65 | LDAP_OBJECT_CLASS_VIOLATION | 41 | Nesne sınıfı ihlali | Bir nesne sınıfı ihlali oluştu. Örneğin, girişte bir gerekliözniteliği eksikti. |
| 66 | LDAP_NOT_ALLOWED_ON_NONLEAF | 42 | Yaprak nonleaf üzerinde izin verilmeyen işlem | Yaprak olmayan bir nesnede işleme izin verilmiyor. |
| 67 | LDAP_NOT_ALLOWED_ON_RDN | 43 | RDN ' de izin verilmeyen işlem | Bir RDN ' de işleme izin verilmiyor. |
| 68 | LDAP_ALREADY_EXISTS | 44 | Var | Girdi var. |
| 69 | LDAP_NO_OBJECT_CLASS_MODS | 45 | Nesne sınıfı değiştirilemiyor | Nesne sınıfı değişikliklerine izin verilmiyor. |
| 70 | LDAP_RESULTS_TOO_LARGE | 46 | Sonuçlar çok büyük | Sonuçlar çok büyük. |
| 71 | LDAP_AFFECTS_MULTIPLE_DSAS | 47 | Birden çok DSAyi etkiler | Birden çok DSA ' yı etkiler. |
| 80 | LDAP_OTHER | 50 | Bilinmeyen hata | Bilinmeyen bir hata oluştu. |
| 81 | LDAP_SERVER_DOWN | 51 | LDAP sunucusu ile iletişim kuramıyor | LDAP kitaplığı, LDAP sunucusuyla iletişim kuramıyor. |
| 82 | LDAP_LOCAL_ERROR | 52 | Yerel hata | Yerel bir hata oluştu. Bu hata genellikle hatalı bellek ayırması olur. |
| 83 | LDAP_ENCODING_ERROR | 53 | Kodlama hatası | LDAP sunucusuna gönderilecek parametreler kodlanırken bir hatayla karşılaşıldı. |
| 84 | LDAP_DECODING_ERROR | 54 | Kodu çözme hatası | LDAP sunucusu sonucunun kodu çözülürken hata saptandı. |
| 85 | LDAP_TIMEOUT | 55 | Zaman Aşımı Oluştu | Bir sonuç için beklediğiniz süre sınırı aşıldı. |
| 86 | LDAP_AUTH_UNKNOWN | 56 | Bilinmeyen kimlik doğrulama yöntemi | Bir bağ tanımlama işleminde belirtilen kimlik doğrulama yöntemi bilinmiyor. |
| 87 | LDAP_FILTER_ERROR | 57 | Hatalı arama süzgeci | ldap_search' a sağlanan geçersiz bir süzgeç. Örneğin, parantezler dengesiz. |
| 88 | LDAP_USER_CANCELLED | 58 | Kullanıcı işlemi iptal etti | Kullanıcı işlemi iptal etti. |
| 89 | LDAP_PARAM_ERROR | 59 | LDAP yordamuna hatalı parametre | Hatalı bir değiştirgeyle çağrılan bir LDAP yordamı. Örneğin, boş değerli (NULL) bir gösterge ve diğerleri. |
| 90 | LDAP_NO_MEMORY | 5A | Bellek Yetersiz | Bir LDAP kitaplığı yordamında mallocgibi bir bellek ayırma çağrısı başarısız oldu. |
| 91 | LDAP_CONNECT_ERROR | 5B | Bağlantı Hatası | Bağlantı hatası. |
| 92 | LDAP_NOT_SUPPORTED | 5C | Desteklenmiyor | Desteklenmez. |
| 93 | LDAP_CONTROL_NOT_FOUND | 5D | Denetim bulunamadı | Denetim öğesi bulunamadı. |
| 94 | LDAP_NO_RESULTS_RETURNED | 5E | Döndürülen sonuç yok | Döndürülen sonuç yok. |
| 95 | LDAP_MORE_RESULTS_TO_RETURN | 5F | Geri dönmek için daha fazla sonuç | Geri dönmek için daha fazla sonuç var. |
| 96 | LDAP_URL_ERR_NOTLDAP | 60 | URL, ldap://ile başlamaz |
URL, ldap://ile başlamıyor. |
| 97 | LDAP_URL_ERR_NODN | 61 | URL ' de DN yok (gerekli) | URL ' de bir DN (gerekli) yok. |
| 98 | LDAP_URL_ERR_BADSCOPE | 62 | URL kapsamı dizgisi geçersiz | URL kapsam dizgisi geçerli değil. |
| 99 | LDAP_URL_ERR_MEM | 63 | Bellek alanı ayrılamıyor | Bellek alanı ayrılamıyor. |
| 100 | LDAP_CLIENT_LOOP | 64 | İstemci döngüsü | İstemci döngüsü. |
| 101 | LDAP_REFERRAL_LIMIT_EXCEEDED | 65 | Aşan başvuru sınırı | Aşan zincir sınırı aşıldı. |
| 112 | LDAP_SSL_ALREADY_INITIALIZED | 70 | ldap_ssl_client_init daha önce bu süreçte başarıyla çağrıldı | ldap_ssl_client_init , bu süreçte daha önce başarıyla çağrıldı. |
| 113 | LDAP_SSL_INITIALIZE_FAILED | 71 | Başarısız olan başlatma çağrısı | SSL Başlatma çağrısı başarısız oldu. |
| 114 | LDAP_SSL_CLIENT_INIT_NOT_CALLED | 72 | SSL bağlantısını kullanmaya çalışmadan önce ldap_ssl_client_init çağrısı gerekir | SSL bağlantısını kullanmaya çalışmadan önce ldap_ssl_client_init çağrısı gerekir. |
| 115 | LDAP_SSL_PARAM_ERROR | 73 | Geçersiz SSL parametresi önceden belirtildi | Daha önce geçerli olmayan bir SSL değiştirgesi belirtildi. |
| 116 | LDAP_SSL_HANDSHAKE_FAILED | 74 | SSL sunucusuna bağlanılamadı | SSL sunucusuna bağlanılamadı. |
| 117 | LDAP_SSL_GET_CIPHER_FAILED | 75 | Kullanılmadı | Kullanımdan kaldırıldı |
| 118 | LDAP_SSL_NOT_AVAILABLE | 76 | SSL kitaplığı bulunamıyor | GSKit ' in kurulu olduğundan emin olun. |
| 128 | LDAP_NO_EXPLICIT_OWNER | 80 | Belirtik sahip bulunamadı | Belirtik bir sahip bulunamadı. |
| 129 | LDAP_NO_LOCK | 81 | Kilit sağlanamıyor | İstemci kitaplığı gereken bir kaynağı kilitlemedi. |
| Dec değeri | Değer | Onaltılı değer | Ayrıntılı açıklama |
|---|---|---|---|
| 133 | LDAP_DNS_NO_SERVERS | 85 | LDAP sunucusu bulunamadı. |
| 134 | LDAP_DNS_TRUNCATED | 86 | Uyarı: DNS sonuçları kesildi. |
| 135 | LDAP_DNS_INVALID_DATA | 87 | Geçersiz DNS Verileri. |
| 136 | LDAP_DNS_RESOLVE_ERROR | 88 | Sistem etki alanı ya da ad sunucusu çözümlenemiyor. |
| 137 | LDAP_DNS_CONF_FILE_ERROR | 89 | DNS Konfigürasyon dosyası hatası. |
| Dec değeri | Değer | Onaltılı değer | Ayrıntılı açıklama |
|---|---|---|---|
| 160 | LDAP_XLATE_E2BIG | A0 | Çıkış arabelleği taşması. |
| 161 | LDAP_XLATE_EINVAL | A1 | Kesilen giriş arabelleği. |
| 162 | LDAP_XLATE_EILSEQ | A2 | Kullanılamayan giriş karakteri kullanılamaz. |
| 163 | LDAP_XLATE_NO_ENTRY | A3 | Eşlenecek kod kümesi noktası yok. |
| 176 | LDAP_REG_FILE_NOT_FOUND | B0 | NT Kayıt dosyası bulunamadı. |
| 177 | LDAP_REG_CANNOT_OPEN | B1 | NT Kayıt Defteri açılamıyor. |
| 178 | LDAP_REG_ENTRY_NOT_FOUND | B2 | NT Kayıt Defteri girdisi bulunamadı. |
| 192 | LDAP_CONF_FILE_NOT_OPENED | C0 | Eklenti yapılandırma dosyası açılmadı. |
| 193 | LDAP_PLUGIN_NOT_LOADED | C1 | Yüklenmeyen eklenti kitaplığı. |
| 194 | LDAP_PLUGIN_FUNCTION_NOT_RESOLVED | C2 | Çözülmeyen eklenti işlevi. |
| 195 | LDAP_PLUGIN_NOT_INITIALIZED | C3 | Eklenti kitaplığı kullanıma hazırlanmadı. |
| 196 | LDAP_PLUGIN_COULD_NOT_BIND | C4 | Plug-in işlevi bağlanamıyor. |
| 208 | LDAP_SASL_GSS_NO_SEC_CONTEXT | D0 | gss_init_sec_context başarısız oldu. |