Classes | |
struct | lber_options |
defined(LDAP_SCOPE_DEFAULT) More... | |
Typedefs | |
typedef LBER_INT_T | ber_int_t |
typedef ber_int_t | ldap_ucs4_t |
typedef unsigned LBER_LEN_T | ber_len_t |
typedef ::LDAPURLDesc | LDAPURLDesc |
_WIN32 | |
Functions | |
void CAC_API | AddBlacklistedServer (std::string &server, bool bPermanent=true) |
void CAC_API | RemoveBlacklistedServer (std::string &server) |
bool CAC_API | IsBlacklisted (std::string &server) |
void CAC_API | ClearServerBlacklist (void) |
void CAC_API | GetServerBlacklist (std::vector< std::string > &bl) |
int | ldap_url_parse (const char *url_in, LDAPURLDesc **ludpp) |
int | ldap_url_parse_ext (const char *url_in, LDAPURLDesc **ludpp) |
const char * | skip_url_prefix (const char *url, int *enclosedp, const char **scheme) |
void | ldap_free_urldesc (LDAPURLDesc *ludp) |
void | ber_memvfree (void **vec) |
void | ldap_pvt_hex_unescape (char *s) |
char ** | ldap_str2charray (const char *str_in, const char *brkstr) |
char *() | ldap_utf8_strchr (const char *str, const char *chr) |
char *() | ldap_utf8_strtok (char *str, const char *sep, char **last) |
ber_len_t() | ldap_utf8_strspn (const char *str, const char *set) |
ber_len_t() | ldap_utf8_strcspn (const char *str, const char *set) |
ldap_ucs4_t | ldap_x_utf8_to_ucs4 (const char *p) |
char * | ldap_utf8_next (const char *p) |
Variables | |
const char | ldap_utf8_lentab [] |
c | ldap_utf8_mintab [] |
typedef LBER_INT_T PKIFLDAP::ber_int_t |
Definition at line 64 of file LDAP_URL_Header.h.
typedef unsigned LBER_LEN_T PKIFLDAP::ber_len_t |
Definition at line 68 of file LDAP_URL_Header.h.
typedef ber_int_t PKIFLDAP::ldap_ucs4_t |
Definition at line 65 of file LDAP_URL_Header.h.
typedef ::LDAPURLDesc PKIFLDAP::LDAPURLDesc |
void CAC_API PKIFLDAP::AddBlacklistedServer | ( | std::string & | server, | |
bool | bPermanent | |||
) |
Interface: Subsystem
AddBlacklistedServer can be used to causes a particular server or URL to not be contacted when retrieving artifacts specified via CRL DP, AIA or SIA extensions. The typical usage by applications is to specify one or more LDAP directories that may appear in CRL DP extensions, as shown in the following example:
AddBlacklistedServer("NonResponsiveServer1.example.com"); AddBlacklistedServer("NonResponsiveServer2.example.com");
In this example, neither NonResponsiveServer1.example.com nor NonResponsiveServer1.example.com will be contacted when the server name appears in an LDAP URI.
Internally, AddBlacklistedServer is invoked with the bPermanent flag set to false. This will cause a resource to be blacklisted temporarily. The item will remain on the blacklist for 5 minutes past the last call to this function. Call to IsBlacklisted during that 5 minute window will return true. Calls to IsBlacklisted after the 5 minute window will return false.
server | [in] hostname or URI to add to the blacklist |
bPermanent | [in] true indicates the server should be permanently blacklisted, false indicates 5 minute blacklist |
Definition at line 51 of file CSingletonLDAPConnection.cpp.
References CPKIFTime::CurrentTime(), g_autoBlacklistedServers, g_blacklistedServers, g_maxAutoBlacklistEntries, g_numSecondsToLive, and CPKIFDuration::setSeconds().
Referenced by GetCertfromLDAPURL(), GetCRLfromLDAPURL(), and LoadStorageAndRetrievalComponents().
void PKIFLDAP::ber_memvfree | ( | void ** | vec | ) |
void CAC_API PKIFLDAP::ClearServerBlacklist | ( | void | ) |
Interface: Subsystem
ClearServerBlacklist clears the blacklist of all values, including those added to the blacklist automatically.
Definition at line 172 of file CSingletonLDAPConnection.cpp.
References g_autoBlacklistedServers, and g_blacklistedServers.
Referenced by LoadStorageAndRetrievalComponents().
void CAC_API PKIFLDAP::GetServerBlacklist | ( | std::vector< std::string > & | bl | ) |
Interface: Subsystem
GetServerBlacklist retrieves the values from the blacklist, including those added to the blacklist automatically.
Definition at line 185 of file CSingletonLDAPConnection.cpp.
References CPKIFTime::CurrentTime(), g_autoBlacklistedServers, g_blacklistedServers, g_numSecondsToLive, and CPKIFDuration::setSeconds().
Referenced by CPKIFPathLogger::LogPath(), CPKIFLdapAndOcspPanel::OnInitDialog(), and SaveStorageAndRetrievalComponents().
bool CAC_API PKIFLDAP::IsBlacklisted | ( | std::string & | server | ) |
Interface: Subsystem
IsBlacklisted returns true if the value passed via the server parameter appears on the blacklist. If the value is on the blacklist but its temporary blacklist time has lapsed, the server will be removed from the blacklist and this function return false.
Definition at line 135 of file CSingletonLDAPConnection.cpp.
References CPKIFTime::CurrentTime(), g_autoBlacklistedServers, g_blacklistedServers, g_numSecondsToLive, GetHostFromUri(), and CPKIFDuration::setSeconds().
Referenced by GetCertfromLDAPURL(), and GetCRLfromLDAPURL().
void PKIFLDAP::ldap_free_urldesc | ( | LDAPURLDesc * | ludp | ) |
Referenced by CollectNamesFromCRLDP(), ldap_url_parse_ext(), and UriMatch::operator()().
void PKIFLDAP::ldap_pvt_hex_unescape | ( | char * | s | ) |
Referenced by ldap_url_parse_ext().
char** PKIFLDAP::ldap_str2charray | ( | const char * | str_in, | |
const char * | brkstr | |||
) |
Referenced by ldap_url_parse_ext().
int PKIFLDAP::ldap_url_parse | ( | const char * | url_in, | |
LDAPURLDesc ** | ludpp | |||
) |
Interface: Subsystem
The ldap_url_parse() function breaks down the LDAP URL passed in url into its component pieces.
url_in | [in] Specifies a pointer to the URL string. |
ludpp | [out] This result parameter will be set to a LDAPURLDesc structure containing the parsed URL. |
Definition at line 641 of file LDAPFunctions.cpp.
References LDAP_FREE, LDAP_PORT, LDAP_SCOPE_DEFAULT, ldap_url_parse_ext(), LDAP_URL_SUCCESS, and LDAPS_PORT.
Referenced by CollectNamesFromCRLDP(), GetCertfromLDAPURL(), GetCRLfromLDAPURL(), and UriMatch::operator()().
int PKIFLDAP::ldap_url_parse_ext | ( | const char * | url_in, | |
LDAPURLDesc ** | ludpp | |||
) |
Interface: Subsystem
The ldap_url_parse() function breaks down the LDAP URL passed in url into its component pieces.
url_in | [in] Specifies a pointer to the URL string. |
ludpp | [out] This result parameter will be set to a LDAPURLDesc structure containing the parsed URL. |
Definition at line 684 of file LDAPFunctions.cpp.
References LDAP_CALLOC, LDAP_FREE, ldap_free_urldesc(), ldap_pvt_hex_unescape(), LDAP_SCOPE_DEFAULT, ldap_str2charray(), LDAP_STRDUP, LDAP_URL_ERR_BADATTRS, LDAP_URL_ERR_BADENCLOSURE, LDAP_URL_ERR_BADEXTS, LDAP_URL_ERR_BADFILTER, LDAP_URL_ERR_BADSCHEME, LDAP_URL_ERR_BADSCOPE, LDAP_URL_ERR_BADURL, LDAP_URL_ERR_MEM, LDAP_URL_ERR_PARAM, LDAP_URL_SUCCESS, and skip_url_prefix().
Referenced by ldap_url_parse().
char* PKIFLDAP::ldap_utf8_next | ( | const char * | p | ) |
char*() PKIFLDAP::ldap_utf8_strchr | ( | const char * | str, | |
const char * | chr | |||
) |
ber_len_t() PKIFLDAP::ldap_utf8_strcspn | ( | const char * | str, | |
const char * | set | |||
) |
ber_len_t() PKIFLDAP::ldap_utf8_strspn | ( | const char * | str, | |
const char * | set | |||
) |
char*() PKIFLDAP::ldap_utf8_strtok | ( | char * | str, | |
const char * | sep, | |||
char ** | last | |||
) |
ldap_ucs4_t PKIFLDAP::ldap_x_utf8_to_ucs4 | ( | const char * | p | ) |
void CAC_API PKIFLDAP::RemoveBlacklistedServer | ( | std::string & | server | ) |
Interface: Subsystem
RemoveBlacklistedServer will remove the server specified by the server parameter from the blacklist. The value passed via server must be an exact match for the item in the blacklist. For example, if a server was added to the blacklist using a full URI it must be removed using a full URI and if a server was added using a hostname it must be removed using a hostname.
server | [in] Server to remove from the blacklist. |
Definition at line 112 of file CSingletonLDAPConnection.cpp.
References g_autoBlacklistedServers, and g_blacklistedServers.
const char* PKIFLDAP::skip_url_prefix | ( | const char * | url, | |
int * | enclosedp, | |||
const char ** | scheme | |||
) |
Referenced by ldap_url_parse_ext().
const char PKIFLDAP::ldap_utf8_lentab[] |
Initial value:
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 0, 0 }
Definition at line 27 of file LDAP_URL_Header.h.
Initial value:
{ (c)0x20, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x30, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x80, (c)0x38, (c)0x80, (c)0x80, (c)0x80, (c)0x3c, (c)0x80, (c)0x00, (c)0x00 }
Definition at line 38 of file LDAP_URL_Header.h.