2. Set one or more parts
3. Extract and compare all parts - not the URL
*/
-static int setget_parts(void)
+static int setget_parts(int has_utf8)
{
int i;
int error = 0;
error++;
break;
}
+ if((setget_parts_list[i].getflags == CURLU_PUNYCODE ||
+ setget_parts_list[i].getflags == CURLU_PUNY2IDN) && !has_utf8) {
+ continue;
+ }
if(setget_parts_list[i].in)
rc = curl_url_set(urlp, CURLUPART_URL, setget_parts_list[i].in,
setget_parts_list[i].urlflags);
return error;
}
-static int get_url(void)
+static int get_url(int has_utf8)
{
int i;
int error = 0;
error++;
break;
}
+ if((get_url_list[i].getflags == CURLU_PUNYCODE ||
+ get_url_list[i].getflags == CURLU_PUNY2IDN) && !has_utf8) {
+ continue;
+ }
rc = curl_url_set(urlp, CURLUPART_URL, get_url_list[i].in,
get_url_list[i].urlflags);
if(!rc) {
return error;
}
-static int get_parts(void)
+static int get_parts(int has_utf8)
{
int i;
int error = 0;
error++;
break;
}
+ if((get_parts_list[i].getflags == CURLU_PUNYCODE ||
+ get_parts_list[i].getflags == CURLU_PUNY2IDN) && !has_utf8) {
+ continue;
+ }
rc = curl_url_set(urlp, CURLUPART_URL,
get_parts_list[i].in,
get_parts_list[i].urlflags);
static CURLcode test_lib1560(char *URL)
{
+ int has_utf8 = !!getenv("CURL_TEST_HAVE_CODESET_UTF8");
+
(void)URL; /* not used */
if(urldup())
return (CURLcode)11;
- if(setget_parts())
+ if(setget_parts(has_utf8))
return (CURLcode)10;
- if(get_url())
+ if(get_url(has_utf8))
return (CURLcode)3;
if(huge())
if(set_parts())
return (CURLcode)2;
- if(get_parts())
+ if(get_parts(has_utf8))
return (CURLcode)4;
if(clear_url())
$feature{"crypto"} = $feature{"NTLM"} || $feature{"Kerberos"} || $feature{"SPNEGO"};
$feature{"local-http"} = servers::localhttp();
$feature{"codeset-utf8"} = lc(langinfo(CODESET())) eq "utf-8";
+ if($feature{"codeset-utf8"}) {
+ $ENV{'CURL_TEST_HAVE_CODESET_UTF8'} = 1;
+ }
# make each protocol an enabled "feature"
for my $p (@protocols) {