@@ -55,88 +55,18 @@ Table I \
55
55
Summary of exploit mitigations supported by the Rust compiler when building
56
56
programs for the Linux operating system on the AMD64 architecture and
57
57
equivalent.
58
- <table class =" table " >
59
- <tr >
60
- <td ><strong >Exploit mitigation</strong >
61
- </td >
62
- <td ><strong >Supported and enabled by default</strong >
63
- </td >
64
- <td ><strong >Since</strong >
65
- </td >
66
- </tr >
67
- <tr >
68
- <td >Position-independent executable
69
- </td >
70
- <td >Yes
71
- </td >
72
- <td >0.12.0 (2014-10-09)
73
- </td >
74
- </tr >
75
- <tr >
76
- <td >Integer overflow checks
77
- </td >
78
- <td >Yes (enabled when debug assertions are enabled, and disabled when debug assertions are disabled)
79
- </td >
80
- <td >1.1.0 (2015-06-25)
81
- </td >
82
- </tr >
83
- <tr >
84
- <td >Non-executable memory regions
85
- </td >
86
- <td >Yes
87
- </td >
88
- <td >1.8.0 (2016-04-14)
89
- </td >
90
- </tr >
91
- <tr >
92
- <td >Stack clashing protection
93
- </td >
94
- <td >Yes
95
- </td >
96
- <td >1.20.0 (2017-08-31)
97
- </td >
98
- </tr >
99
- <tr >
100
- <td >Read-only relocations and immediate binding
101
- </td >
102
- <td >Yes
103
- </td >
104
- <td >1.21.0 (2017-10-12)
105
- </td >
106
- </tr >
107
- <tr >
108
- <td >Heap corruption protection
109
- </td >
110
- <td >Yes
111
- </td >
112
- <td >1.32.0 (2019-01-17) (via operating system default or specified allocator)
113
- </td >
114
- </tr >
115
- <tr >
116
- <td >Stack smashing protection
117
- </td >
118
- <td >Yes
119
- </td >
120
- <td >Nightly
121
- </td >
122
- </tr >
123
- <tr >
124
- <td >Forward-edge control flow protection
125
- </td >
126
- <td >Yes
127
- </td >
128
- <td >Nightly
129
- </td >
130
- </tr >
131
- <tr >
132
- <td >Backward-edge control flow protection (e.g., shadow and safe stack)
133
- </td >
134
- <td >No
135
- </td >
136
- <td >
137
- </td >
138
- </tr >
139
- </table >
58
+
59
+ | Exploit mitigation | Supported and enabled by default | Since |
60
+ | - | - | - |
61
+ | Position-independent executable | Yes | 0.12.0 (2014-10-09) |
62
+ | Integer overflow checks | Yes (enabled when debug assertions are enabled, and disabled when debug assertions are disabled) | 1.1.0 (2015-06-25) |
63
+ | Non-executable memory regions | Yes | 1.8.0 (2016-04-14) |
64
+ | Stack clashing protection | Yes | 1.20.0 (2017-08-31) |
65
+ | Read-only relocations and immediate binding | Yes | 1.21.0 (2017-10-12) |
66
+ | Heap corruption protection | Yes | 1.32.0 (2019-01-17) (via operating system default or specified allocator) |
67
+ | Stack smashing protection | Yes | Nightly |
68
+ | Forward-edge control flow protection | Yes | Nightly |
69
+ | Backward-edge control flow protection (e.g., shadow and safe stack) | No | |
140
70
141
71
<small id =" fn:1 " >1\. See
142
72
< https://github.com/rust-lang/rust/tree/master/compiler/rustc_target/src/spec >
0 commit comments