mirror of https://github.com/crytic/slither
parent
fa22b62634
commit
c4948d2cea
@ -1,388 +0,0 @@ |
||||
[ |
||||
[ |
||||
{ |
||||
"elements": [ |
||||
{ |
||||
"type": "function", |
||||
"name": "direct", |
||||
"source_mapping": { |
||||
"start": 147, |
||||
"length": 79, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
11, |
||||
12, |
||||
13 |
||||
], |
||||
"starting_column": 5, |
||||
"ending_column": 6 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "contract", |
||||
"name": "Test", |
||||
"source_mapping": { |
||||
"start": 0, |
||||
"length": 869, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
1, |
||||
2, |
||||
3, |
||||
4, |
||||
5, |
||||
6, |
||||
7, |
||||
8, |
||||
9, |
||||
10, |
||||
11, |
||||
12, |
||||
13, |
||||
14, |
||||
15, |
||||
16, |
||||
17, |
||||
18, |
||||
19, |
||||
20, |
||||
21, |
||||
22, |
||||
23, |
||||
24, |
||||
25, |
||||
26, |
||||
27, |
||||
28, |
||||
29, |
||||
30, |
||||
31, |
||||
32, |
||||
33, |
||||
34, |
||||
35, |
||||
36, |
||||
37, |
||||
38, |
||||
39, |
||||
40, |
||||
41 |
||||
], |
||||
"starting_column": 1, |
||||
"ending_column": 2 |
||||
} |
||||
}, |
||||
"signature": "direct()" |
||||
} |
||||
}, |
||||
{ |
||||
"type": "node", |
||||
"name": "msg.sender.send(address(this).balance)", |
||||
"source_mapping": { |
||||
"start": 181, |
||||
"length": 38, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
12 |
||||
], |
||||
"starting_column": 9, |
||||
"ending_column": 47 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "function", |
||||
"name": "direct", |
||||
"source_mapping": { |
||||
"start": 147, |
||||
"length": 79, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
11, |
||||
12, |
||||
13 |
||||
], |
||||
"starting_column": 5, |
||||
"ending_column": 6 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "contract", |
||||
"name": "Test", |
||||
"source_mapping": { |
||||
"start": 0, |
||||
"length": 869, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
1, |
||||
2, |
||||
3, |
||||
4, |
||||
5, |
||||
6, |
||||
7, |
||||
8, |
||||
9, |
||||
10, |
||||
11, |
||||
12, |
||||
13, |
||||
14, |
||||
15, |
||||
16, |
||||
17, |
||||
18, |
||||
19, |
||||
20, |
||||
21, |
||||
22, |
||||
23, |
||||
24, |
||||
25, |
||||
26, |
||||
27, |
||||
28, |
||||
29, |
||||
30, |
||||
31, |
||||
32, |
||||
33, |
||||
34, |
||||
35, |
||||
36, |
||||
37, |
||||
38, |
||||
39, |
||||
40, |
||||
41 |
||||
], |
||||
"starting_column": 1, |
||||
"ending_column": 2 |
||||
} |
||||
}, |
||||
"signature": "direct()" |
||||
} |
||||
} |
||||
} |
||||
} |
||||
], |
||||
"description": "Test.direct() (tests/detectors/arbitrary-send/arbitrary_send.sol#11-13) sends eth to arbitrary user\n\tDangerous calls:\n\t- msg.sender.send(address(this).balance) (tests/detectors/arbitrary-send/arbitrary_send.sol#12)\n", |
||||
"markdown": "[Test.direct()](tests/detectors/arbitrary-send/arbitrary_send.sol#L11-L13) sends eth to arbitrary user\n\tDangerous calls:\n\t- [msg.sender.send(address(this).balance)](tests/detectors/arbitrary-send/arbitrary_send.sol#L12)\n", |
||||
"id": "62016ac9363a509bd815fc0bb31b326b235dad50d7771dea249037d40169138e", |
||||
"check": "arbitrary-send", |
||||
"impact": "High", |
||||
"confidence": "Medium" |
||||
}, |
||||
{ |
||||
"elements": [ |
||||
{ |
||||
"type": "function", |
||||
"name": "indirect", |
||||
"source_mapping": { |
||||
"start": 301, |
||||
"length": 82, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
19, |
||||
20, |
||||
21 |
||||
], |
||||
"starting_column": 5, |
||||
"ending_column": 6 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "contract", |
||||
"name": "Test", |
||||
"source_mapping": { |
||||
"start": 0, |
||||
"length": 869, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
1, |
||||
2, |
||||
3, |
||||
4, |
||||
5, |
||||
6, |
||||
7, |
||||
8, |
||||
9, |
||||
10, |
||||
11, |
||||
12, |
||||
13, |
||||
14, |
||||
15, |
||||
16, |
||||
17, |
||||
18, |
||||
19, |
||||
20, |
||||
21, |
||||
22, |
||||
23, |
||||
24, |
||||
25, |
||||
26, |
||||
27, |
||||
28, |
||||
29, |
||||
30, |
||||
31, |
||||
32, |
||||
33, |
||||
34, |
||||
35, |
||||
36, |
||||
37, |
||||
38, |
||||
39, |
||||
40, |
||||
41 |
||||
], |
||||
"starting_column": 1, |
||||
"ending_column": 2 |
||||
} |
||||
}, |
||||
"signature": "indirect()" |
||||
} |
||||
}, |
||||
{ |
||||
"type": "node", |
||||
"name": "destination.send(address(this).balance)", |
||||
"source_mapping": { |
||||
"start": 337, |
||||
"length": 39, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
20 |
||||
], |
||||
"starting_column": 9, |
||||
"ending_column": 48 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "function", |
||||
"name": "indirect", |
||||
"source_mapping": { |
||||
"start": 301, |
||||
"length": 82, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
19, |
||||
20, |
||||
21 |
||||
], |
||||
"starting_column": 5, |
||||
"ending_column": 6 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "contract", |
||||
"name": "Test", |
||||
"source_mapping": { |
||||
"start": 0, |
||||
"length": 869, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/arbitrary-send/arbitrary_send.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
1, |
||||
2, |
||||
3, |
||||
4, |
||||
5, |
||||
6, |
||||
7, |
||||
8, |
||||
9, |
||||
10, |
||||
11, |
||||
12, |
||||
13, |
||||
14, |
||||
15, |
||||
16, |
||||
17, |
||||
18, |
||||
19, |
||||
20, |
||||
21, |
||||
22, |
||||
23, |
||||
24, |
||||
25, |
||||
26, |
||||
27, |
||||
28, |
||||
29, |
||||
30, |
||||
31, |
||||
32, |
||||
33, |
||||
34, |
||||
35, |
||||
36, |
||||
37, |
||||
38, |
||||
39, |
||||
40, |
||||
41 |
||||
], |
||||
"starting_column": 1, |
||||
"ending_column": 2 |
||||
} |
||||
}, |
||||
"signature": "indirect()" |
||||
} |
||||
} |
||||
} |
||||
} |
||||
], |
||||
"description": "Test.indirect() (tests/detectors/arbitrary-send/arbitrary_send.sol#19-21) sends eth to arbitrary user\n\tDangerous calls:\n\t- destination.send(address(this).balance) (tests/detectors/arbitrary-send/arbitrary_send.sol#20)\n", |
||||
"markdown": "[Test.indirect()](tests/detectors/arbitrary-send/arbitrary_send.sol#L19-L21) sends eth to arbitrary user\n\tDangerous calls:\n\t- [destination.send(address(this).balance)](tests/detectors/arbitrary-send/arbitrary_send.sol#L20)\n", |
||||
"id": "62a25f56dfce54ce59cdf81a1821f2ea8a8eb7d12a6a794b9c4f09ba7f7bc543", |
||||
"check": "arbitrary-send", |
||||
"impact": "High", |
||||
"confidence": "Medium" |
||||
} |
||||
] |
||||
] |
@ -0,0 +1,25 @@ |
||||
contract Constant { |
||||
|
||||
uint a; |
||||
|
||||
function test_view_bug() public view{ |
||||
a = 0; |
||||
} |
||||
|
||||
function test_constant_bug() public constant{ |
||||
a = 0; |
||||
} |
||||
|
||||
function test_view_shadow() public view{ |
||||
uint a; |
||||
a = 0; |
||||
} |
||||
|
||||
function test_view() public view{ |
||||
a; |
||||
} |
||||
|
||||
function test_assembly_bug() public view{ |
||||
assembly{} |
||||
} |
||||
} |
@ -0,0 +1,20 @@ |
||||
// pragma solidity 0.5.1; |
||||
|
||||
contract Constant { |
||||
|
||||
uint a; |
||||
|
||||
|
||||
function test_view_shadow() public view{ |
||||
uint a; |
||||
a = 0; |
||||
} |
||||
|
||||
function test_view() public view{ |
||||
a; |
||||
} |
||||
|
||||
function test_assembly_bug() public view{ |
||||
assembly{} |
||||
} |
||||
} |
@ -0,0 +1,20 @@ |
||||
// pragma solidity 0.5.1; |
||||
|
||||
contract Constant { |
||||
|
||||
uint a; |
||||
|
||||
|
||||
function test_view_shadow() public view{ |
||||
uint a; |
||||
a = 0; |
||||
} |
||||
|
||||
function test_view() public view{ |
||||
a; |
||||
} |
||||
|
||||
function test_assembly_bug() public view{ |
||||
assembly{} |
||||
} |
||||
} |
@ -0,0 +1,20 @@ |
||||
// pragma solidity 0.5.1; |
||||
|
||||
contract Constant { |
||||
|
||||
uint a; |
||||
|
||||
|
||||
function test_view_shadow() public view{ |
||||
uint a; |
||||
a = 0; |
||||
} |
||||
|
||||
function test_view() public view{ |
||||
a; |
||||
} |
||||
|
||||
function test_assembly_bug() public view{ |
||||
assembly{} |
||||
} |
||||
} |
@ -1,76 +0,0 @@ |
||||
[ |
||||
[ |
||||
{ |
||||
"elements": [ |
||||
{ |
||||
"type": "struct", |
||||
"name": "test3", |
||||
"source_mapping": { |
||||
"start": 320, |
||||
"length": 36, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/naming-convention/0.4.25/naming_convention_ignore.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/naming-convention/0.4.25/naming_convention_ignore.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
18, |
||||
19, |
||||
20 |
||||
], |
||||
"starting_column": 5, |
||||
"ending_column": 6 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "contract", |
||||
"name": "naming", |
||||
"source_mapping": { |
||||
"start": 61, |
||||
"length": 299, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/naming-convention/0.4.25/naming_convention_ignore.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/naming-convention/0.4.25/naming_convention_ignore.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
4, |
||||
5, |
||||
6, |
||||
7, |
||||
8, |
||||
9, |
||||
10, |
||||
11, |
||||
12, |
||||
13, |
||||
14, |
||||
15, |
||||
16, |
||||
17, |
||||
18, |
||||
19, |
||||
20, |
||||
21, |
||||
22 |
||||
], |
||||
"starting_column": 1, |
||||
"ending_column": 2 |
||||
} |
||||
} |
||||
}, |
||||
"additional_fields": { |
||||
"target": "structure", |
||||
"convention": "CapWords" |
||||
} |
||||
} |
||||
], |
||||
"description": "Struct naming.test3 (tests/detectors/naming-convention/0.4.25/naming_convention_ignore.sol#18-20) is not in CapWords\n", |
||||
"markdown": "Struct [naming.test3](tests/detectors/naming-convention/0.4.25/naming_convention_ignore.sol#L18-L20) is not in CapWords\n", |
||||
"id": "34b66b0b5acf6c00b066dd7f5bbcdbc6f3879ab5ece850f113d00e3318eac10f", |
||||
"check": "naming-convention", |
||||
"impact": "Informational", |
||||
"confidence": "High" |
||||
} |
||||
] |
||||
] |
@ -1,76 +0,0 @@ |
||||
[ |
||||
[ |
||||
{ |
||||
"elements": [ |
||||
{ |
||||
"type": "struct", |
||||
"name": "test3", |
||||
"source_mapping": { |
||||
"start": 320, |
||||
"length": 36, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/naming-convention/0.5.16/naming_convention_ignore.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/naming-convention/0.5.16/naming_convention_ignore.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
18, |
||||
19, |
||||
20 |
||||
], |
||||
"starting_column": 5, |
||||
"ending_column": 6 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "contract", |
||||
"name": "naming", |
||||
"source_mapping": { |
||||
"start": 61, |
||||
"length": 299, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/naming-convention/0.5.16/naming_convention_ignore.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/naming-convention/0.5.16/naming_convention_ignore.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
4, |
||||
5, |
||||
6, |
||||
7, |
||||
8, |
||||
9, |
||||
10, |
||||
11, |
||||
12, |
||||
13, |
||||
14, |
||||
15, |
||||
16, |
||||
17, |
||||
18, |
||||
19, |
||||
20, |
||||
21, |
||||
22 |
||||
], |
||||
"starting_column": 1, |
||||
"ending_column": 2 |
||||
} |
||||
} |
||||
}, |
||||
"additional_fields": { |
||||
"target": "structure", |
||||
"convention": "CapWords" |
||||
} |
||||
} |
||||
], |
||||
"description": "Struct naming.test3 (tests/detectors/naming-convention/0.5.16/naming_convention_ignore.sol#18-20) is not in CapWords\n", |
||||
"markdown": "Struct [naming.test3](tests/detectors/naming-convention/0.5.16/naming_convention_ignore.sol#L18-L20) is not in CapWords\n", |
||||
"id": "34b66b0b5acf6c00b066dd7f5bbcdbc6f3879ab5ece850f113d00e3318eac10f", |
||||
"check": "naming-convention", |
||||
"impact": "Informational", |
||||
"confidence": "High" |
||||
} |
||||
] |
||||
] |
@ -1,76 +0,0 @@ |
||||
[ |
||||
[ |
||||
{ |
||||
"elements": [ |
||||
{ |
||||
"type": "struct", |
||||
"name": "test3", |
||||
"source_mapping": { |
||||
"start": 320, |
||||
"length": 36, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/naming-convention/0.6.11/naming_convention_ignore.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/naming-convention/0.6.11/naming_convention_ignore.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
18, |
||||
19, |
||||
20 |
||||
], |
||||
"starting_column": 5, |
||||
"ending_column": 6 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "contract", |
||||
"name": "naming", |
||||
"source_mapping": { |
||||
"start": 61, |
||||
"length": 299, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/naming-convention/0.6.11/naming_convention_ignore.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/naming-convention/0.6.11/naming_convention_ignore.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
4, |
||||
5, |
||||
6, |
||||
7, |
||||
8, |
||||
9, |
||||
10, |
||||
11, |
||||
12, |
||||
13, |
||||
14, |
||||
15, |
||||
16, |
||||
17, |
||||
18, |
||||
19, |
||||
20, |
||||
21, |
||||
22 |
||||
], |
||||
"starting_column": 1, |
||||
"ending_column": 2 |
||||
} |
||||
} |
||||
}, |
||||
"additional_fields": { |
||||
"target": "structure", |
||||
"convention": "CapWords" |
||||
} |
||||
} |
||||
], |
||||
"description": "Struct naming.test3 (tests/detectors/naming-convention/0.6.11/naming_convention_ignore.sol#18-20) is not in CapWords\n", |
||||
"markdown": "Struct [naming.test3](tests/detectors/naming-convention/0.6.11/naming_convention_ignore.sol#L18-L20) is not in CapWords\n", |
||||
"id": "34b66b0b5acf6c00b066dd7f5bbcdbc6f3879ab5ece850f113d00e3318eac10f", |
||||
"check": "naming-convention", |
||||
"impact": "Informational", |
||||
"confidence": "High" |
||||
} |
||||
] |
||||
] |
@ -1,76 +0,0 @@ |
||||
[ |
||||
[ |
||||
{ |
||||
"elements": [ |
||||
{ |
||||
"type": "struct", |
||||
"name": "test3", |
||||
"source_mapping": { |
||||
"start": 320, |
||||
"length": 36, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/naming-convention/0.7.6/naming_convention_ignore.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/naming-convention/0.7.6/naming_convention_ignore.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
18, |
||||
19, |
||||
20 |
||||
], |
||||
"starting_column": 5, |
||||
"ending_column": 6 |
||||
}, |
||||
"type_specific_fields": { |
||||
"parent": { |
||||
"type": "contract", |
||||
"name": "naming", |
||||
"source_mapping": { |
||||
"start": 61, |
||||
"length": 299, |
||||
"filename_used": "/GENERIC_PATH", |
||||
"filename_relative": "tests/detectors/naming-convention/0.7.6/naming_convention_ignore.sol", |
||||
"filename_absolute": "/GENERIC_PATH", |
||||
"filename_short": "tests/detectors/naming-convention/0.7.6/naming_convention_ignore.sol", |
||||
"is_dependency": false, |
||||
"lines": [ |
||||
4, |
||||
5, |
||||
6, |
||||
7, |
||||
8, |
||||
9, |
||||
10, |
||||
11, |
||||
12, |
||||
13, |
||||
14, |
||||
15, |
||||
16, |
||||
17, |
||||
18, |
||||
19, |
||||
20, |
||||
21, |
||||
22 |
||||
], |
||||
"starting_column": 1, |
||||
"ending_column": 2 |
||||
} |
||||
} |
||||
}, |
||||
"additional_fields": { |
||||
"target": "structure", |
||||
"convention": "CapWords" |
||||
} |
||||
} |
||||
], |
||||
"description": "Struct naming.test3 (tests/detectors/naming-convention/0.7.6/naming_convention_ignore.sol#18-20) is not in CapWords\n", |
||||
"markdown": "Struct [naming.test3](tests/detectors/naming-convention/0.7.6/naming_convention_ignore.sol#L18-L20) is not in CapWords\n", |
||||
"id": "34b66b0b5acf6c00b066dd7f5bbcdbc6f3879ab5ece850f113d00e3318eac10f", |
||||
"check": "naming-convention", |
||||
"impact": "Informational", |
||||
"confidence": "High" |
||||
} |
||||
] |
||||
] |
File diff suppressed because it is too large
Load Diff
Loading…
Reference in new issue