allow file: URLs without authority spec

URL with authority spec must use absolute path
This commit is contained in:
Quanah Gibson-Mount 2006-12-16 01:40:39 +00:00
parent 1d8cee1c70
commit d598f7f74b

View file

@ -48,16 +48,15 @@ ldif_open_url(
url = fetchGetURL( (char*) urlstr, "" );
#else
if( strncasecmp( "file://", urlstr, sizeof("file://")-1 ) == 0 ) {
p = strchr( &urlstr[sizeof("file://")-1], '/' );
if( p == NULL ) {
return NULL;
}
if( strncasecmp( "file:", urlstr, sizeof("file:")-1 ) == 0 ) {
p = urlstr + sizeof("file:")-1;
/* we don't check for LDAP_DIRSEP since URLs should contain '/' */
if( p[1] == '.' && ( p[2] == '/' || ( p[2] == '.' && p[3] == '/' ))) {
/* skip over false root */
p++;
if ( p[0] == '/' && p[1] == '/' ) {
p += 2;
/* path must be absolute if authority is present */
if ( p[0] != '/' )
return NULL;
}
p = ber_strdup( p );