@@ -583,61 +583,14 @@ module Flask {
583583 *
584584 * See https://flask.palletsprojects.com/en/2.0.x/api/#flask.Response.set_cookie
585585 */
586- class FlaskResponseSetCookieCall extends Http:: Server:: CookieWrite:: Range ,
587- DataFlow:: MethodCallNode
588- {
586+ class FlaskResponseSetCookieCall extends Http:: Server:: SetCookieCall , DataFlow:: MethodCallNode {
589587 FlaskResponseSetCookieCall ( ) { this .calls ( Flask:: Response:: instance ( ) , "set_cookie" ) }
590588
591589 override DataFlow:: Node getHeaderArg ( ) { none ( ) }
592590
593591 override DataFlow:: Node getNameArg ( ) { result in [ this .getArg ( 0 ) , this .getArgByName ( "key" ) ] }
594592
595593 override DataFlow:: Node getValueArg ( ) { result in [ this .getArg ( 1 ) , this .getArgByName ( "value" ) ] }
596-
597- override predicate hasSecureFlag ( boolean b ) {
598- super .hasSecureFlag ( b )
599- or
600- exists ( DataFlow:: Node arg , BooleanLiteral bool | arg = this .getArgByName ( "secure" ) |
601- DataFlow:: localFlow ( DataFlow:: exprNode ( bool ) , arg ) and
602- b = bool .booleanValue ( )
603- )
604- or
605- not exists ( this .getArgByName ( "secure" ) ) and
606- b = false
607- }
608-
609- override predicate hasHttpOnlyFlag ( boolean b ) {
610- super .hasHttpOnlyFlag ( b )
611- or
612- exists ( DataFlow:: Node arg , BooleanLiteral bool | arg = this .getArgByName ( "httponly" ) |
613- DataFlow:: localFlow ( DataFlow:: exprNode ( bool ) , arg ) and
614- b = bool .booleanValue ( )
615- )
616- or
617- not exists ( this .getArgByName ( "httponly" ) ) and
618- b = false
619- }
620-
621- override predicate hasSameSiteAttribute ( Http:: Server:: CookieWrite:: SameSiteValue v ) {
622- super .hasSameSiteAttribute ( v )
623- or
624- exists ( DataFlow:: Node arg , StringLiteral str | arg = this .getArgByName ( "samesite" ) |
625- DataFlow:: localFlow ( DataFlow:: exprNode ( str ) , arg ) and
626- (
627- str .getText ( ) .toLowerCase ( ) = "strict" and
628- v instanceof Http:: Server:: CookieWrite:: SameSiteStrict
629- or
630- str .getText ( ) .toLowerCase ( ) = "lax" and
631- v instanceof Http:: Server:: CookieWrite:: SameSiteLax
632- or
633- str .getText ( ) .toLowerCase ( ) = "none" and
634- v instanceof Http:: Server:: CookieWrite:: SameSiteNone
635- )
636- )
637- or
638- not exists ( this .getArgByName ( "samesite" ) ) and
639- v instanceof Http:: Server:: CookieWrite:: SameSiteLax // Lax is the default
640- }
641594 }
642595
643596 /**
0 commit comments