Mail Archives: cygwin/2005/01/30/19:23:41
--------------030007000501030602010703
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit
Dan Ch schrieb:
> Thank you for providing some information. But I do not understand
> what types of objects require read permission in order to successfully
> open with SYNCHRONIZE access. On Windows XP Professional SP2, using
> CreateFile(...,GENERIC_WRITE | SYNCHRONIZE, ...) to open an ordinary
> file on a local drive that has write-only permissions does not seem
> to be a problem. I am primarily interested in the "buggy behavior"
> that a user would experience if CreateFile() was used instead
> of NtCreateFile().
Special filenames in subdirs like con,prn,aux,nul,lpt1 et al do not work
with CreateFile(), but do work as plain files with NtCreateFile().
See attached test.
--
Reini Urban
http://xarch.tu-graz.ac.at/home/rurban/
--------------030007000501030602010703
Content-Type: application/x-CleverContent20;
name="testcreate.cc"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="testcreate.cc"
Ly8gYysrIC1JLi4vc3JjL3dpbnN1cC9jeWd3aW4gLW8gdGVzdGNyZWF0ZSB0
ZXN0Y3JlYXRlLmNjIC1sbnRkbGwgCiNpbmNsdWRlICJ3aW5zdXAuaCIKI2lu
Y2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxudGRlZi5oPgojaW5jbHVkZSAi
bnRkbGwuaCIKCi8vI2RlZmluZSBOVENSRUFURQojdW5kZWYgTlRDUkVBVEUK
Ck5UU1RBVFVTIAogIE50Q3JlYXRlRGlyZWN0b3J5T2JqZWN0KAogICAgT1VU
IFBIQU5ETEUgIERpcmVjdG9yeUhhbmRsZSwKICAgIElOIEFDQ0VTU19NQVNL
ICBEZXNpcmVkQWNjZXNzLAogICAgSU4gUE9CSkVDVF9BVFRSSUJVVEVTICBP
YmplY3RBdHRyaWJ1dGVzCiAgICApOwoKI2lmbmRlZiBOVENSRUFURQpzdGF0
aWMgSEFORExFCmNyZWF0ZSAoY2hhciAqcGF0aCkKewogIEhBTkRMRSBoRmls
ZTsgCiAgY2hhciBwd2RbQ1lHX01BWF9QQVRIXSwgZGV2W0NZR19NQVhfUEFU
SF07CiAgaW50IGxlbjsKCiAgLy9jcmVhdGUgKCJcXFxcLlxcYzpcXGNvbiIp
OwogIGlmIChsZW4gPSBHZXRDdXJyZW50RGlyZWN0b3J5QSAoQ1lHX01BWF9Q
QVRILCBwd2QpKSB7CiAgICBzdHJjcHkoZGV2LCAiXFxcXC5cXCIpOwogICAg
c3RyY2F0KGRldiwgcHdkKTsKICAgIHN0cmNhdChkZXYsICJcXCIpOwogICAg
c3RyY2F0KGRldiwgcGF0aCk7CiAgfQogIGhGaWxlID0gQ3JlYXRlRmlsZShk
ZXYsICAgICAvLyBmaWxlIHRvIGNyZWF0ZQoJCSAgICAgR0VORVJJQ19XUklU
RSwgICAgICAgICAgLy8gb3BlbiBmb3Igd3JpdGluZwoJCSAgICAgMCwgICAg
ICAgICAgICAgICAgICAgICAgLy8gZG8gbm90IHNoYXJlCgkJICAgICBOVUxM
LCAgICAgICAgICAgICAgICAgICAvLyBkZWZhdWx0IHNlY3VyaXR5CgkJICAg
ICBDUkVBVEVfQUxXQVlTLCAgICAgICAgICAvLyBvdmVyd3JpdGUgZXhpc3Rp
bmcKCQkgICAgIEZJTEVfQVRUUklCVVRFX05PUk1BTCB8IC8vIG5vcm1hbCBm
aWxlCgkJICAgICBGSUxFX0ZMQUdfT1ZFUkxBUFBFRCwgICAvLyBhc3luY2hy
b25vdXMgSS9PCgkJICAgICBOVUxMKTsgICAgICAgICAgICAgICAgICAvLyBu
byBhdHRyLiB0ZW1wbGF0ZQogIGlmIChoRmlsZSA9PSBJTlZBTElEX0hBTkRM
RV9WQUxVRSkgcmV0dXJuIDA7CiAgcHJpbnRmKCIlcyBjcmVhdGVkXG4iLCBw
YXRoKTsKICBDbG9zZUhhbmRsZShoRmlsZSk7CiAgcmV0dXJuIGhGaWxlOwp9
CgojZWxzZQpzdGF0aWMgSEFORExFCm50X2NyZWF0ZSAoV0NIQVIgKndwYXRo
KQp7CiAgV0NIQVIgcHdkWzIqQ1lHX01BWF9QQVRIXTsKICBVTklDT0RFX1NU
UklORyB1cGF0aCA9IHswLCBzaXplb2YgKHdwYXRoKSwgd3BhdGh9OwogIC8v
VU5JQ09ERV9TVFJJTkcgY3BhdGggPSB7MCwgMiwgTCIuIn07CgogIGludCBs
ZW47CiAgSEFORExFIHgsIHJvb3QgPSBOVUxMOwogIE9CSkVDVF9BVFRSSUJV
VEVTIGF0dHI7CiAgSU9fU1RBVFVTX0JMT0NLIGlvOwogIE5UU1RBVFVTIHN0
YXR1czsKICAKICBpZiAobGVuID0gR2V0Q3VycmVudERpcmVjdG9yeVcgKDIq
Q1lHX01BWF9QQVRILCBwd2QpKSB7CiAgICBVTklDT0RFX1NUUklORyB1cHdk
ID0gezAsIHNpemVvZiAocHdkKSwgcHdkfTsKICAgIEluaXRpYWxpemVPYmpl
Y3RBdHRyaWJ1dGVzICgmYXR0ciwgJnVwd2QsIE9CSl9DQVNFX0lOU0VOU0lU
SVZFLCBOVUxMLCBOVUxMKTsKICAgIE50T3BlbkZpbGUoJnJvb3QsIFNUQU5E
QVJEX1JJR0hUU19BTEwsICZhdHRyLCAmaW8sIDAsIDApOwogIH0KICBJbml0
aWFsaXplT2JqZWN0QXR0cmlidXRlcyAoJmF0dHIsICZ1cGF0aCwgT0JKX0NB
U0VfSU5TRU5TSVRJVkUsIHJvb3QsIE5VTEwpOwogIC8vIGh0dHA6Ly9tc2Ru
Lm1pY3Jvc29mdC5jb20vbGlicmFyeS9kZWZhdWx0LmFzcD91cmw9L2xpYnJh
cnkvZW4tdXMvZGV2bm90ZXMvd2lucHJvZy9udGNyZWF0ZWZpbGUuYXNwCiAg
c3RhdHVzID0gTnRDcmVhdGVGaWxlICgmeCwgU1RBTkRBUkRfUklHSFRTX0FM
TCwgJmF0dHIsICZpbywgTlVMTCwgRklMRV9BVFRSSUJVVEVfTk9STUFMLCAK
ICAgICAgICAgICAgICAgICAgICAgICAgIEZJTEVfU0hBUkVfUkVBRCwgRklM
RV9PUEVOLCBGSUxFX0RFTEVURV9PTl9DTE9TRSwgTlVMTCwgMCk7CiAgaWYg
KCFOVF9TVUNDRVNTIChzdGF0dXMpKQogICAgewogICAgICBwcmludGYoImVy
cm9yIGNyZWF0aW5nICVsc1xuIiwgd3BhdGgpOwogICAgICByZXR1cm4gMDsK
ICAgIH0KICBlbHNlIHsKICAgIENsb3NlSGFuZGxlKHgpOwogICAgcmV0dXJu
IHg7CiAgfQp9CiNlbmRpZgoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIqKiBh
cmd2KQp7CiNpZm5kZWYgTlRDUkVBVEUKICBjcmVhdGUgKCJjb24iKTsKICBj
cmVhdGUgKCJjb20iKTsKICBjcmVhdGUgKCJudWwiKTsKICBjcmVhdGUgKCJh
dXgiKTsKICBjcmVhdGUgKCJwcm4iKTsKICBjcmVhdGUgKCJscHQxIik7CiAg
Y3JlYXRlICgiLi4uIik7CiNlbHNlCiAgbnRfY3JlYXRlIChMImNvbiIpOwog
IG50X2NyZWF0ZSAoTCJudWwiKTsKICBudF9jcmVhdGUgKEwiYXV4Iik7CiAg
bnRfY3JlYXRlIChMInBybiIpOwogIG50X2NyZWF0ZSAoTCJscHQxIik7CiAg
bnRfY3JlYXRlIChMIi4uLnR4dCIpOwojZW5kaWYKICByZXR1cm4oMCk7Cn0K
--------------030007000501030602010703
Content-Type: text/plain; charset=us-ascii
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
--------------030007000501030602010703--
- Raw text -