[PATCH v4 5/5] kernel32: Connect GetSystemFirmwareTable to NtQuerySystemInformation

Alex Henrie <[email protected]> Wed, 13 Jun 2018 21:41:19 -0600
Newsgroups gmane.comp.emulators.wine.patches
Message-ID <[email protected]>
U2lnbmVkLW9mZi1ieTogQWxleCBIZW5yaWUgPGFsZXhoZW5yaWUyNEBnbWFpbC5jb20+Ci0tLQog
ZGxscy9rZXJuZWwzMi9jcHUuYyAgICAgfCA0NCArKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKwogZGxscy9rZXJuZWwzMi9wcm9jZXNzLmMgfCAxMCAtLS0tLS0tLS0tCiAy
IGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDEwIGRlbGV0aW9ucygtKQoKZGlmZiAt
LWdpdCBhL2RsbHMva2VybmVsMzIvY3B1LmMgYi9kbGxzL2tlcm5lbDMyL2NwdS5jCmluZGV4IGVj
MWZkMGY5MGQuLmZjYzJhZWU1MzkgMTAwNjQ0Ci0tLSBhL2RsbHMva2VybmVsMzIvY3B1LmMKKysr
IGIvZGxscy9rZXJuZWwzMi9jcHUuYwpAQCAtNDYsNiArNDYsMjEgQEAKIAogV0lORV9ERUZBVUxU
X0RFQlVHX0NIQU5ORUwocmVnKTsKIAordHlwZWRlZiBlbnVtIF9TWVNURU1fRklSTVdBUkVfVEFC
TEVfQUNUSU9OCit7CisgICAgU3lzdGVtRmlybXdhcmVUYWJsZV9FbnVtZXJhdGUgPSAwLAorICAg
IFN5c3RlbUZpcm13YXJlVGFibGVfR2V0ID0gMQorfSBTWVNURU1fRklSTVdBUkVfVEFCTEVfQUNU
SU9OOworCit0eXBlZGVmIHN0cnVjdCBfU1lTVEVNX0ZJUk1XQVJFX1RBQkxFX0lORk9STUFUSU9O
Cit7CisgICAgVUxPTkcgUHJvdmlkZXJTaWduYXR1cmU7CisgICAgU1lTVEVNX0ZJUk1XQVJFX1RB
QkxFX0FDVElPTiBBY3Rpb247CisgICAgVUxPTkcgVGFibGVJRDsKKyAgICBVTE9ORyBUYWJsZUJ1
ZmZlckxlbmd0aDsKKyAgICBVQ0hBUiBUYWJsZUJ1ZmZlclsxXTsKK30gU1lTVEVNX0ZJUk1XQVJF
X1RBQkxFX0lORk9STUFUSU9OOworCiAjZGVmaW5lIFNIQVJFRF9EQVRBICAgICAoKEtTSEFSRURf
VVNFUl9EQVRBKikweDdmZmUwMDAwKQogCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgpAQCAtMzM2LDMg
KzM1MSwzMiBAQCBEV09SRDY0IFdJTkFQSSBHZXRFbmFibGVkWFN0YXRlRmVhdHVyZXModm9pZCkK
ICAgICBGSVhNRSgiXG4iKTsKICAgICByZXR1cm4gMDsKIH0KKworLyoqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisg
KiAgICAgICAgICAgR2V0U3lzdGVtRmlybXdhcmVUYWJsZSAoS0VSTkVMMzIuQCkKKyAqLworVUlO
VCBXSU5BUEkgR2V0U3lzdGVtRmlybXdhcmVUYWJsZShEV09SRCBwcm92aWRlciwgRFdPUkQgaWQs
IHZvaWQgKmJ1ZmZlciwgRFdPUkQgc2l6ZSkKK3sKKyAgICBVTE9ORyBidWZmZXJfc2l6ZSA9IEZJ
RUxEX09GRlNFVChTWVNURU1fRklSTVdBUkVfVEFCTEVfSU5GT1JNQVRJT04sIFRhYmxlQnVmZmVy
KSArIHNpemU7CisgICAgU1lTVEVNX0ZJUk1XQVJFX1RBQkxFX0lORk9STUFUSU9OICpzZnRpID0g
SGVhcEFsbG9jKEdldFByb2Nlc3NIZWFwKCksIDAsIGJ1ZmZlcl9zaXplKTsKKyAgICBOVFNUQVRV
UyBzdGF0dXM7CisKKyAgICBpZiAoIXNmdGkpCisgICAgeworICAgICAgICBTZXRMYXN0RXJyb3Io
RVJST1JfT1VUT0ZNRU1PUlkpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICBzZnRp
LT5Qcm92aWRlclNpZ25hdHVyZSA9IHByb3ZpZGVyOworICAgIHNmdGktPkFjdGlvbiA9IFN5c3Rl
bUZpcm13YXJlVGFibGVfR2V0OworICAgIHNmdGktPlRhYmxlSUQgPSBpZDsKKworICAgIHN0YXR1
cyA9IE50UXVlcnlTeXN0ZW1JbmZvcm1hdGlvbihTeXN0ZW1GaXJtd2FyZVRhYmxlSW5mb3JtYXRp
b24sIHNmdGksIGJ1ZmZlcl9zaXplLCAmYnVmZmVyX3NpemUpOworICAgIGJ1ZmZlcl9zaXplIC09
IEZJRUxEX09GRlNFVChTWVNURU1fRklSTVdBUkVfVEFCTEVfSU5GT1JNQVRJT04sIFRhYmxlQnVm
ZmVyKTsKKyAgICBpZiAoYnVmZmVyX3NpemUgPD0gc2l6ZSkKKyAgICAgICAgbWVtY3B5KGJ1ZmZl
ciwgc2Z0aS0+VGFibGVCdWZmZXIsIGJ1ZmZlcl9zaXplKTsKKworICAgIGlmIChzdGF0dXMpIFNl
dExhc3RFcnJvcihSdGxOdFN0YXR1c1RvRG9zRXJyb3Ioc3RhdHVzKSk7CisgICAgSGVhcEZyZWUo
R2V0UHJvY2Vzc0hlYXAoKSwgMCwgc2Z0aSk7CisgICAgcmV0dXJuIGJ1ZmZlcl9zaXplOworfQpk
aWZmIC0tZ2l0IGEvZGxscy9rZXJuZWwzMi9wcm9jZXNzLmMgYi9kbGxzL2tlcm5lbDMyL3Byb2Nl
c3MuYwppbmRleCBmZjU2ZTlhNjkyLi42YWRmMDhkMjU3IDEwMDY0NAotLS0gYS9kbGxzL2tlcm5l
bDMyL3Byb2Nlc3MuYworKysgYi9kbGxzL2tlcm5lbDMyL3Byb2Nlc3MuYwpAQCAtNDEyNiwxNiAr
NDEyNiw2IEBAIEhSRVNVTFQgV0lOQVBJIFVucmVnaXN0ZXJBcHBsaWNhdGlvblJlc3RhcnQodm9p
ZCkKICAgICByZXR1cm4gU19PSzsKIH0KIAotLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCi0gKiAgICAgICAgICAg
R2V0U3lzdGVtRmlybXdhcmVUYWJsZSAgICAgICAoS0VSTkVMMzIuQCkKLSAqLwotVUlOVCBXSU5B
UEkgR2V0U3lzdGVtRmlybXdhcmVUYWJsZShEV09SRCBwcm92aWRlciwgRFdPUkQgaWQsIFBWT0lE
IGJ1ZmZlciwgRFdPUkQgc2l6ZSkKLXsKLSAgICBGSVhNRSgiKCVkICVkICVwICVkKTpzdHViXG4i
LCBwcm92aWRlciwgaWQsIGJ1ZmZlciwgc2l6ZSk7Ci0gICAgU2V0TGFzdEVycm9yKEVSUk9SX0NB
TExfTk9UX0lNUExFTUVOVEVEKTsKLSAgICByZXR1cm4gMDsKLX0KLQogc3RydWN0IHByb2NfdGhy
ZWFkX2F0dHIKIHsKICAgICBEV09SRF9QVFIgYXR0cjsKLS0gCjIuMTcuMQoKCgo=