nsresult nsLDAPURL::SetPathInternal(const nsCString &aPath) { LDAPURLDesc *desc; // This is from the LDAP C-SDK, which currently doesn't // support everything from RFC 2255... :( // int err = ldap_url_parse(aPath.get(), &desc); switch (err) { case LDAP_SUCCESS: { // The base URL can pick up the host & port details and deal with them // better than we can mDN = desc->lud_dn; mScope = desc->lud_scope; mFilter = desc->lud_filter; mOptions = desc->lud_options; nsresult rv = SetAttributeArray(desc->lud_attrs); if (NS_FAILED(rv)) return rv; ldap_free_urldesc(desc); return NS_OK; } case LDAP_URL_ERR_NOTLDAP: case LDAP_URL_ERR_NODN: case LDAP_URL_ERR_BADSCOPE: return NS_ERROR_MALFORMED_URI; case LDAP_URL_ERR_MEM: NS_ERROR("nsLDAPURL::SetSpec: out of memory "); return NS_ERROR_OUT_OF_MEMORY; case LDAP_URL_ERR_PARAM: return NS_ERROR_INVALID_POINTER; } // This shouldn't happen... return NS_ERROR_UNEXPECTED; }
void CNetGame::SetServer( char *szAddress, int iPort ) { SetAttribute< int >( CNA_PORT, iPort ); SetAttributeArray( CNA_ADDRESS, szAddress, strlen( szAddress ) + 1 ); }