@@ -22,6 +22,7 @@ use super::{
2222 util:: { read_unicode_string, read_unicode_string_dtb, read_virtual_dtb} ,
2323} ;
2424
25+ #[ allow( clippy:: large_enum_variant) ]
2526pub enum WindowsKpcr {
2627 Windows10_0_10240_16384 {
2728 kpcr : windows_10_0_10240_16384_x64:: _KPCR ,
@@ -81,12 +82,14 @@ impl WindowsKpcr {
8182 let kpcr =
8283 read_virtual :: < windows_10_0_10240_16384_x64:: _KPCR > ( processor, kpcr_address) ?;
8384 ensure ! (
84- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
85- == kpcr_address as * mut _,
85+ std:: ptr:: eq(
86+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
87+ kpcr_address as * mut _
88+ ) ,
8689 "Invalid KPCR: Self != KPCR address"
8790 ) ;
8891 ensure ! (
89- kpcr. IdtBase == sim_idtr_base as * mut _,
92+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
9093 "Invalid KPCR: IdtBase != IDTR base"
9194 ) ;
9295
@@ -96,12 +99,14 @@ impl WindowsKpcr {
9699 let kpcr =
97100 read_virtual :: < windows_10_0_10586_0_x64:: _KPCR > ( processor, kpcr_address) ?;
98101 ensure ! (
99- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
100- == kpcr_address as * mut _,
102+ std:: ptr:: eq(
103+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
104+ kpcr_address as * mut _
105+ ) ,
101106 "Invalid KPCR: Self != KPCR address"
102107 ) ;
103108 ensure ! (
104- kpcr. IdtBase == sim_idtr_base as * mut _,
109+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
105110 "Invalid KPCR: IdtBase != IDTR base"
106111 ) ;
107112
@@ -111,12 +116,14 @@ impl WindowsKpcr {
111116 let kpcr =
112117 read_virtual :: < windows_10_0_14393_0_x64:: _KPCR > ( processor, kpcr_address) ?;
113118 ensure ! (
114- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
115- == kpcr_address as * mut _,
119+ std:: ptr:: eq(
120+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
121+ kpcr_address as * mut _
122+ ) ,
116123 "Invalid KPCR: Self != KPCR address"
117124 ) ;
118125 ensure ! (
119- kpcr. IdtBase == sim_idtr_base as * mut _,
126+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
120127 "Invalid KPCR: IdtBase != IDTR base"
121128 ) ;
122129
@@ -126,12 +133,14 @@ impl WindowsKpcr {
126133 let kpcr =
127134 read_virtual :: < windows_10_0_15063_0_x64:: _KPCR > ( processor, kpcr_address) ?;
128135 ensure ! (
129- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
130- == kpcr_address as * mut _,
136+ std:: ptr:: eq(
137+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
138+ kpcr_address as * mut _
139+ ) ,
131140 "Invalid KPCR: Self != KPCR address"
132141 ) ;
133142 ensure ! (
134- kpcr. IdtBase == sim_idtr_base as * mut _,
143+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
135144 "Invalid KPCR: IdtBase != IDTR base"
136145 ) ;
137146
@@ -141,12 +150,14 @@ impl WindowsKpcr {
141150 let kpcr =
142151 read_virtual :: < windows_10_0_16299_15_x64:: _KPCR > ( processor, kpcr_address) ?;
143152 ensure ! (
144- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
145- == kpcr_address as * mut _,
153+ std:: ptr:: eq(
154+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
155+ kpcr_address as * mut _
156+ ) ,
146157 "Invalid KPCR: Self != KPCR address"
147158 ) ;
148159 ensure ! (
149- kpcr. IdtBase == sim_idtr_base as * mut _,
160+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
150161 "Invalid KPCR: IdtBase != IDTR base"
151162 ) ;
152163
@@ -156,12 +167,14 @@ impl WindowsKpcr {
156167 let kpcr =
157168 read_virtual :: < windows_10_0_17134_1_x64:: _KPCR > ( processor, kpcr_address) ?;
158169 ensure ! (
159- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
160- == kpcr_address as * mut _,
170+ std:: ptr:: eq(
171+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
172+ kpcr_address as * mut _
173+ ) ,
161174 "Invalid KPCR: Self != KPCR address"
162175 ) ;
163176 ensure ! (
164- kpcr. IdtBase == sim_idtr_base as * mut _,
177+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
165178 "Invalid KPCR: IdtBase != IDTR base"
166179 ) ;
167180
@@ -171,12 +184,14 @@ impl WindowsKpcr {
171184 let kpcr =
172185 read_virtual :: < windows_10_0_17763_107_x64:: _KPCR > ( processor, kpcr_address) ?;
173186 ensure ! (
174- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
175- == kpcr_address as * mut _,
187+ std:: ptr:: eq(
188+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
189+ kpcr_address as * mut _
190+ ) ,
176191 "Invalid KPCR: Self != KPCR address"
177192 ) ;
178193 ensure ! (
179- kpcr. IdtBase == sim_idtr_base as * mut _,
194+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
180195 "Invalid KPCR: IdtBase != IDTR base"
181196 ) ;
182197
@@ -186,12 +201,14 @@ impl WindowsKpcr {
186201 let kpcr =
187202 read_virtual :: < windows_10_0_18362_418_x64:: _KPCR > ( processor, kpcr_address) ?;
188203 ensure ! (
189- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
190- == kpcr_address as * mut _,
204+ std:: ptr:: eq(
205+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
206+ kpcr_address as * mut _
207+ ) ,
191208 "Invalid KPCR: Self != KPCR address"
192209 ) ;
193210 ensure ! (
194- kpcr. IdtBase == sim_idtr_base as * mut _,
211+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
195212 "Invalid KPCR: IdtBase != IDTR base"
196213 ) ;
197214
@@ -201,12 +218,14 @@ impl WindowsKpcr {
201218 let kpcr =
202219 read_virtual :: < windows_10_0_19041_1288_x64:: _KPCR > ( processor, kpcr_address) ?;
203220 ensure ! (
204- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
205- == kpcr_address as * mut _,
221+ std:: ptr:: eq(
222+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
223+ kpcr_address as * mut _
224+ ) ,
206225 "Invalid KPCR: Self != KPCR address"
207226 ) ;
208227 ensure ! (
209- kpcr. IdtBase == sim_idtr_base as * mut _,
228+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
210229 "Invalid KPCR: IdtBase != IDTR base"
211230 ) ;
212231
@@ -216,12 +235,14 @@ impl WindowsKpcr {
216235 let kpcr =
217236 read_virtual :: < windows_10_0_19045_2965_x64:: _KPCR > ( processor, kpcr_address) ?;
218237 ensure ! (
219- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
220- == kpcr_address as * mut _,
238+ std:: ptr:: eq(
239+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
240+ kpcr_address as * mut _
241+ ) ,
221242 "Invalid KPCR: Self != KPCR address"
222243 ) ;
223244 ensure ! (
224- kpcr. IdtBase == sim_idtr_base as * mut _,
245+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
225246 "Invalid KPCR: IdtBase != IDTR base"
226247 ) ;
227248
@@ -231,12 +252,14 @@ impl WindowsKpcr {
231252 let kpcr =
232253 read_virtual :: < windows_10_0_22000_194_x64:: _KPCR > ( processor, kpcr_address) ?;
233254 ensure ! (
234- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
235- == kpcr_address as * mut _,
255+ std:: ptr:: eq(
256+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
257+ kpcr_address as * mut _
258+ ) ,
236259 "Invalid KPCR: Self != KPCR address"
237260 ) ;
238261 ensure ! (
239- kpcr. IdtBase == sim_idtr_base as * mut _,
262+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
240263 "Invalid KPCR: IdtBase != IDTR base"
241264 ) ;
242265
@@ -246,12 +269,14 @@ impl WindowsKpcr {
246269 let kpcr =
247270 read_virtual :: < windows_10_0_22621_382_x64:: _KPCR > ( processor, kpcr_address) ?;
248271 ensure ! (
249- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
250- == kpcr_address as * mut _,
272+ std:: ptr:: eq(
273+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
274+ kpcr_address as * mut _
275+ ) ,
251276 "Invalid KPCR: Self != KPCR address"
252277 ) ;
253278 ensure ! (
254- kpcr. IdtBase == sim_idtr_base as * mut _,
279+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
255280 "Invalid KPCR: IdtBase != IDTR base"
256281 ) ;
257282
@@ -261,12 +286,14 @@ impl WindowsKpcr {
261286 let kpcr =
262287 read_virtual :: < windows_10_0_22631_2428_x64:: _KPCR > ( processor, kpcr_address) ?;
263288 ensure ! (
264- unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_
265- == kpcr_address as * mut _,
289+ std:: ptr:: eq(
290+ unsafe { kpcr. __bindgen_anon_1. __bindgen_anon_1 } . Self_ ,
291+ kpcr_address as * mut _
292+ ) ,
266293 "Invalid KPCR: Self != KPCR address"
267294 ) ;
268295 ensure ! (
269- kpcr. IdtBase == sim_idtr_base as * mut _,
296+ std :: ptr :: eq ( kpcr. IdtBase , sim_idtr_base as * mut _) ,
270297 "Invalid KPCR: IdtBase != IDTR base"
271298 ) ;
272299
@@ -321,6 +348,7 @@ impl WindowsKpcr {
321348 }
322349}
323350
351+ #[ allow( clippy:: large_enum_variant) ]
324352pub enum WindowsKprcb {
325353 Windows10_0_10240_16384 {
326354 kprcb : windows_10_0_10240_16384_x64:: _KPRCB ,
@@ -2878,7 +2906,7 @@ impl WindowsEProcess {
28782906
28792907 list_entry = ldr_data_entry. in_load_order_links ( ) ;
28802908
2881- if list_entry. Flink == last_entry {
2909+ if std :: ptr :: eq ( list_entry. Flink , last_entry) {
28822910 break ;
28832911 }
28842912 }
0 commit comments