mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-01-06 10:46:21 +08:00
improve parsing - first step
This commit is contained in:
parent
ff49d18a40
commit
175ce7960d
@ -554,6 +554,8 @@ ldap_url_parse_ext( LDAP_CONST char *url_in, LDAPURLDesc **ludpp )
|
||||
}
|
||||
|
||||
if ( q != NULL ) {
|
||||
char *next;
|
||||
|
||||
*q++ = '\0';
|
||||
ldap_pvt_hex_unescape( q );
|
||||
|
||||
@ -563,7 +565,12 @@ ldap_url_parse_ext( LDAP_CONST char *url_in, LDAPURLDesc **ludpp )
|
||||
return LDAP_URL_ERR_BADURL;
|
||||
}
|
||||
|
||||
ludp->lud_port = atoi( q );
|
||||
ludp->lud_port = strtol( q, &next, 10 );
|
||||
if ( next == NULL || next[0] != '\0' ) {
|
||||
LDAP_FREE( url );
|
||||
ldap_free_urldesc( ludp );
|
||||
return LDAP_URL_ERR_BADURL;
|
||||
}
|
||||
}
|
||||
|
||||
ldap_pvt_hex_unescape( url );
|
||||
@ -1003,9 +1010,14 @@ ldap_url_parsehosts(
|
||||
}
|
||||
}
|
||||
if (p != NULL) {
|
||||
char *next;
|
||||
|
||||
*p++ = 0;
|
||||
ldap_pvt_hex_unescape(p);
|
||||
ludp->lud_port = atoi(p);
|
||||
ludp->lud_port = strtol( p, &next, 10 );
|
||||
if ( next == NULL || next[0] != '\0' ) {
|
||||
return LDAP_PARAM_ERROR;
|
||||
}
|
||||
}
|
||||
}
|
||||
ldap_pvt_hex_unescape(ludp->lud_host);
|
||||
|
Loading…
Reference in New Issue
Block a user