@@ -413,6 +413,7 @@ static char * getJwt(ngx_http_request_t *r, ngx_str_t auth_jwt_validation_type)
413
413
char * jwtCookieValChrPtr = NULL ;
414
414
ngx_str_t jwtCookieVal ;
415
415
ngx_int_t n ;
416
+ ngx_int_t bearer_length ;
416
417
ngx_str_t authorizationHeaderStr ;
417
418
418
419
ngx_log_error (NGX_LOG_DEBUG , r -> connection -> log , 0 , "auth_jwt_validation_type.len %d" , auth_jwt_validation_type .len );
@@ -425,12 +426,17 @@ static char * getJwt(ngx_http_request_t *r, ngx_str_t auth_jwt_validation_type)
425
426
{
426
427
ngx_log_error (NGX_LOG_DEBUG , r -> connection -> log , 0 , "Found authorization header len %d" , authorizationHeader -> value .len );
427
428
428
- authorizationHeaderStr .data = authorizationHeader -> value .data + sizeof ("Bearer " ) - 1 ;
429
- authorizationHeaderStr .len = authorizationHeader -> value .len - (sizeof ("Bearer " ) - 1 );
429
+ bearer_length = authorizationHeader -> value .len - (sizeof ("Bearer " ) - 1 );
430
430
431
- jwtCookieValChrPtr = ngx_str_t_to_char_ptr (r -> pool , authorizationHeaderStr );
431
+ if (bearer_length > 0 )
432
+ {
433
+ authorizationHeaderStr .data = authorizationHeader -> value .data + sizeof ("Bearer " ) - 1 ;
434
+ authorizationHeaderStr .len = bearer_length ;
435
+
436
+ jwtCookieValChrPtr = ngx_str_t_to_char_ptr (r -> pool , authorizationHeaderStr );
432
437
433
- ngx_log_error (NGX_LOG_DEBUG , r -> connection -> log , 0 , "Authorization header: %s" , jwtCookieValChrPtr );
438
+ ngx_log_error (NGX_LOG_DEBUG , r -> connection -> log , 0 , "Authorization header: %s" , jwtCookieValChrPtr );
439
+ }
434
440
}
435
441
}
436
442
else if (auth_jwt_validation_type .len > sizeof ("COOKIE=" ) && ngx_strncmp (auth_jwt_validation_type .data , "COOKIE=" , sizeof ("COOKIE=" ) - 1 )== 0 )
0 commit comments