mirror of
https://git.suyu.dev/suyu/mbedtls.git
synced 2025-12-22 05:46:41 +01:00
Fix check_wildcard() calling convention
We shouldn't return a surprising value in case there is no wildcard and then rely on the caller to ensure that this doesn't happen
This commit is contained in:
parent
08eacecc62
commit
900fba616f
1 changed files with 3 additions and 4 deletions
|
|
@ -1770,8 +1770,9 @@ static int x509_check_wildcard( const char *cn, const mbedtls_x509_buf *name )
|
||||||
size_t i;
|
size_t i;
|
||||||
size_t cn_idx = 0, cn_len = strlen( cn );
|
size_t cn_idx = 0, cn_len = strlen( cn );
|
||||||
|
|
||||||
|
/* We can't have a match if there is no wildcard to match */
|
||||||
if( name->len < 3 || name->p[0] != '*' || name->p[1] != '.' )
|
if( name->len < 3 || name->p[0] != '*' || name->p[1] != '.' )
|
||||||
return( 0 );
|
return( -1 );
|
||||||
|
|
||||||
for( i = 0; i < cn_len; ++i )
|
for( i = 0; i < cn_len; ++i )
|
||||||
{
|
{
|
||||||
|
|
@ -2194,9 +2195,7 @@ static int x509_crt_check_cn( const mbedtls_x509_buf *name,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* try wildcard match */
|
/* try wildcard match */
|
||||||
if( name->len > 2 &&
|
if( x509_check_wildcard( cn, name ) == 0 )
|
||||||
memcmp( name->p, "*.", 2 ) == 0 &&
|
|
||||||
x509_check_wildcard( cn, name ) == 0 )
|
|
||||||
{
|
{
|
||||||
return( 0 );
|
return( 0 );
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue