65 context.node.lineno - 1, |
65 context.node.lineno - 1, |
66 context.node.col_offset, |
66 context.node.col_offset, |
67 "S105", |
67 "S105", |
68 "L", |
68 "L", |
69 "M", |
69 "M", |
70 node.s, |
70 node.value, |
71 ) |
71 ) |
72 |
72 |
73 elif isinstance(node._securityParent, ast.Index) and RE_CANDIDATES.search(node.s): |
73 elif ( |
|
74 isinstance(node._securityParent, ast.Index) and RE_CANDIDATES.search(node.value) |
|
75 ): |
74 # looks for "dict[candidate]='some_string'" |
76 # looks for "dict[candidate]='some_string'" |
75 # assign -> subscript -> index -> string |
77 # assign -> subscript -> index -> string |
76 assign = node._securityParent._securityParent._securityParent |
78 assign = node._securityParent._securityParent._securityParent |
77 if isinstance(assign, ast.Assign) and AstUtilities.isString(assign.value): |
79 if isinstance(assign, ast.Assign) and AstUtilities.isString(assign.value): |
78 reportError( |
80 reportError( |
79 context.node.lineno - 1, |
81 context.node.lineno - 1, |
80 context.node.col_offset, |
82 context.node.col_offset, |
81 "S105", |
83 "S105", |
82 "L", |
84 "L", |
83 "M", |
85 "M", |
84 assign.value.s, |
86 assign.value.value, |
85 ) |
87 ) |
86 |
88 |
87 elif isinstance(node._securityParent, ast.Compare): |
89 elif isinstance(node._securityParent, ast.Compare): |
88 # looks for "candidate == 'some_string'" |
90 # looks for "candidate == 'some_string'" |
89 comp = node._securityParent |
91 comp = node._securityParent |