| delorie.com/archives/browse.cgi | search |
| DMARC-Filter: | OpenDMARC Filter v1.4.2 delorie.com 58MCOw3C1459540 |
| Authentication-Results: | delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com |
| Authentication-Results: | delorie.com; spf=pass smtp.mailfrom=cygwin.com |
| DKIM-Filter: | OpenDKIM Filter v2.11.0 delorie.com 58MCOw3C1459540 |
| Authentication-Results: | delorie.com; |
| dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=Eq7mcBuG | |
| X-Recipient: | archive-cygwin AT delorie DOT com |
| DKIM-Filter: | OpenDKIM Filter v2.11.0 sourceware.org D18F7385800F |
| DKIM-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; |
| s=default; t=1758543896; | |
| bh=CCZo7h8h2g/jIGHJ3DZj9PSqJLdMOYolDwCn0/rqpQc=; | |
| h=References:In-Reply-To:Date:Subject:To:List-Id:List-Unsubscribe: | |
| List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: | |
| From; | |
| b=Eq7mcBuGYUSbEvlRDmuYvX80h8aYYFz4POG8Hmf+QTveIklMAb0nFH5yW5hEmj/UN | |
| xlYxp9FbbbVXUSOOwKRu/kvT2j4L7IiEH2KJBvMkKUx79q9dbWrs4ywGoGhNqSM4TL | |
| ib8uKiAngow2fSOVou0ioy2UBbANPMOk4UxL6NXg= | |
| X-Original-To: | cygwin AT cygwin DOT com |
| Delivered-To: | cygwin AT cygwin DOT com |
| DMARC-Filter: | OpenDMARC Filter v1.4.2 sourceware.org 83550385842B |
| ARC-Filter: | OpenARC Filter v1.0.0 sourceware.org 83550385842B |
| ARC-Seal: | i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1758543829; cv=none; |
| b=fFg9uw03EzD/O9MVIAjTsz4rIpZr+KufxvqKiNUlxiD3e7oBLego4c0HME+wqd3GcChS368sPv6WfacWSN7d8k6eyM+mY1psshn/X0LI3BSBIhwu0slBaK5ZsazRtdVgzNkv02ve//3Gqke08sKZ33bDnhJbAoKwDbkiVbvvA2U= | |
| ARC-Message-Signature: | i=1; a=rsa-sha256; d=sourceware.org; s=key; |
| t=1758543829; c=relaxed/simple; | |
| bh=dtwGmYKaO4lI7s/+merE/f6uNmr0lOOeRBLhBKs8+LA=; | |
| h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; | |
| b=Czk0XYzfR+sB/DXK+5x1jdjqFT5tZbLo7X1TkOAXVORSDrycYdxViVIjuJZNjs3xUJKfqVpG53DYDG5iZeEyJWvpYvNakjY2f5wXqK5yAMDHHMzQ3jVvmFSYoMeUgxlGUbqbBlCZ9vWWyBJr1HqvZKJtrOAzYpqQ2uObSb3nfxo= | |
| ARC-Authentication-Results: | i=1; server2.sourceware.org |
| DKIM-Filter: | OpenDKIM Filter v2.11.0 sourceware.org 83550385842B |
| X-Google-DKIM-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; |
| d=1e100.net; s=20230601; t=1758543828; x=1759148628; | |
| h=to:subject:message-id:date:from:in-reply-to:references:mime-version | |
| :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; | |
| bh=dtwGmYKaO4lI7s/+merE/f6uNmr0lOOeRBLhBKs8+LA=; | |
| b=sEpwnFA5SnvgnLDLexH2lsE5zqWBO23eOXi3kIdanSj/j1O1H+GUbuAHjXFKag4uWa | |
| qUzH9EX0a8hrmCUXMvPLbrOVfSg6Q4TTGzqu16h6kyD7L5l8GZYbe7efvYTwoMz1E4ag | |
| z3J/RakE44S/5mbeDVOikeG4mM3avjPjTj4JN2Ld0vrX1z208AN9yGpQtN17KihiL+OX | |
| VF+xXnthx6myrQNxt6NwW83VrOK/CzQxVI9gyFrUPBRpf+YAfX8XuV7EXYfQPi5TJXy2 | |
| 7Q/+iBl416oUk6joIAU5a/3+mOPQnCgfB7XQFamymU+4qCqZa4chjvuX/JZL0hEyPY62 | |
| UT6Q== | |
| X-Gm-Message-State: | AOJu0YyQaA6H5UdI025f5WnfThZW8njzlAYc/B6uqmihBVrU8E503/Sv |
| IML1N02uw0pnO8B9/T8bjbfudO8PeKaXHb92n2obUX6oo6C3hwm99eGD3LYjphsCIZJgdFlFgj7 | |
| ellkmXsTHfy6+iR2RmcRwqjULo8RfUrR6dihr | |
| X-Gm-Gg: | ASbGncv+flkv40nEWFt9CEiQQqHow9wgbjro1/3xlITNq1JE6FIdiRsNEvbYQslA64z |
| A4+G/5NAKMlvApmwptoPAAk2AooV2Q0v4bbpERmSKHD2GAbH2wMQHdWtGZtkB39gOp7Z19PZR+x | |
| abF+fB139FIR7SYIrynUhfE0Arlnm4mCVDgXobh6OMLmGyKxUM57pwtEkuH3g9aNaIubE8ZPrNk | |
| CDexUM= | |
| X-Google-Smtp-Source: | AGHT+IFofr4l0GhM7niMoyfTrOrfj5vsI3Ru6IlmgN61abIv39UjSxXiXvS0FONNagDd1lhy4XHTcXmJDZBIca6hiBs= |
| X-Received: | by 2002:a05:6402:2682:b0:633:deec:8b57 with SMTP id |
| 4fb4d7f45d1cf-633deec8ff9mr2691379a12.16.1758543827592; Mon, 22 Sep 2025 | |
| 05:23:47 -0700 (PDT) | |
| MIME-Version: | 1.0 |
| References: | <CAN0SSYzFKJoZRU7fCm4YKH5O_J3SMvCjjgfua7zUJQL4Zj3rzA AT mail DOT gmail DOT com> |
| <CAN0SSYzB77kcuM-jzRkpDhx6ncpGP0kb70W7goXF4ZHAtdzaLg AT mail DOT gmail DOT com> | |
| <GV1PR03MB80787CAF2F37B7BD610383F78D12A AT GV1PR03MB8078 DOT eurprd03 DOT prod DOT outlook DOT com> | |
| <CAPJSo4VbBtzTKqyy+oT0qp9QEUyGktxWyZtDPY1D89_cE4ximg AT mail DOT gmail DOT com> | |
| In-Reply-To: | <CAPJSo4VbBtzTKqyy+oT0qp9QEUyGktxWyZtDPY1D89_cE4ximg@mail.gmail.com> |
| Date: | Mon, 22 Sep 2025 14:23:10 +0200 |
| X-Gm-Features: | AS18NWDW2bkUdLgXdIlsfql9XKcxls1IlnlGqNqeeG0Nl7qs17tcLo2MYTewv10 |
| Message-ID: | <CAPJSo4VsfhmURL3qoXcu9_dcw6pAZQHq9bpiybPSO=v4w-Cxqg@mail.gmail.com> |
| Subject: | Re: Why does Cygwin not use MiCloneProcessAddressSpace() for fork() |
| To: | "cygwin AT cygwin DOT com" <cygwin AT cygwin DOT com> |
| X-BeenThere: | cygwin AT cygwin DOT com |
| X-Mailman-Version: | 2.1.30 |
| List-Id: | General Cygwin discussions and problem reports <cygwin.cygwin.com> |
| List-Archive: | <https://cygwin.com/pipermail/cygwin/> |
| List-Post: | <mailto:cygwin AT cygwin DOT com> |
| List-Help: | <mailto:cygwin-request AT cygwin DOT com?subject=help> |
| List-Subscribe: | <https://cygwin.com/mailman/listinfo/cygwin>, |
| <mailto:cygwin-request AT cygwin DOT com?subject=subscribe> | |
| From: | Lionel Cons via Cygwin <cygwin AT cygwin DOT com> |
| Reply-To: | Lionel Cons <lionelcons1972 AT gmail DOT com> |
| Sender: | "Cygwin" <cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com> |
--0000000000002aac74063f62e4ce Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, 22 Sept 2025 at 13:55, Lionel Cons <lionelcons1972 AT gmail DOT com> wrote= : > > On Mon, 22 Sept 2025 at 13:28, Old, Oliver via Cygwin <cygwin AT cygwin DOT com>= wrote: > > > > Mark Liam Brown wrote: > > > This is exposed to the userspace as NtCreateProcessEx() as documented= in > > > https://github.com/huntandhackett/process-cloning > > > > From the linked page: > > > Unfortunately, it doesn't matter which method we prefer because the r= esults > > > will be identically disappointing: STATUS_PROCESS_IS_TERMINATING, or,= in other > > > words, "An attempt was made to access an exiting process." The system > > > considers the cloned threadless process as waiting for deletion and, = thus, > > > refuses to create threads in it =E2=80=93 something we inevitably nee= d to execute > > > code. Sorry, but NtCreateProcessEx-based cloning is incompatible with= code > > > execution. > > > > > > > Note that it wasn't always the case. The kernel allowed creating th= reads in > > > > such processes until Windows 8.1. > > That was a bug, long fixed. UWIN added pthread support at some point, > so yes, threads and RtlCloneUserProcess() do work together. Attached is a proof that threads (in child and parent process) and RtlCloneUserProcess() work together: winforktest1.c.txt Lionel --0000000000002aac74063f62e4ce Content-Type: text/plain; charset="US-ASCII"; name="winforktest1.c.txt" Content-Disposition: attachment; filename="winforktest1.c.txt" Content-Transfer-Encoding: base64 Content-ID: <f_mfv3jddf0> X-Attachment-Id: f_mfv3jddf0 Ci8qCiAqIHdpbmZvcmt0ZXN0LmMgLSBkZW1vIGZvcmsoKSB2aWEgfFJ0bENsb25lVXNlclByb2Nl c3MoKXwKICogT3JpZ2luYWwgZnJvbSBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9wZXRyc21pZC9k OTY0NDZiZWFjODI1YzhjMGNmNWEzNTI0MGY0NDRhOAogKgogKiBybSAtZiB3aW5mb3JrdGVzdDEu ZXhlIDsgY2xhbmcgLXRhcmdldCB4ODZfNjQtcGMtd2luZG93cy1nbnUgLVdhbGwgd2luZm9ya3Rl c3QxLmMgLW8gd2luZm9ya3Rlc3QxLmV4ZQogKi8KCi8qCiAqIGZvcmsuYwogKiBFeHBlcmltZW50 YWwgZm9yaygpIG9uIFdpbmRvd3MuICBSZXF1aXJlcyBOVCA2IHN1YnN5c3RlbSBvcgogKiBuZXdl ci4KICoKICogSW1wcm92ZWQgdmVyc2lvbiB3aXRoIGZpeGVkIENvbnNvbGUKICogCiAqIENvcHly aWdodCAoYykgMjAyMyBQZXRyIFNtaWQKICogQ29weXJpZ2h0IChjKSAyMDEyIFdpbGxpYW0gUGl0 Y29jayA8bmVub2xvZEBkZXJlZmVyZW5jZWQub3JnPgogKgogKiBQZXJtaXNzaW9uIHRvIHVzZSwg Y29weSwgbW9kaWZ5LCBhbmQvb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlIGZvciBhbnkKICog cHVycG9zZSB3aXRoIG9yIHdpdGhvdXQgZmVlIGlzIGhlcmVieSBncmFudGVkLCBwcm92aWRlZCB0 aGF0IHRoZSBhYm92ZQogKiBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90 aWNlIGFwcGVhciBpbiBhbGwgY29waWVzLgogKgogKiBUaGlzIHNvZnR3YXJlIGlzIHByb3ZpZGVk ICdhcyBpcycgYW5kIHdpdGhvdXQgYW55IHdhcnJhbnR5LCBleHByZXNzIG9yCiAqIGltcGxpZWQu ICBJbiBubyBldmVudCBzaGFsbCB0aGUgYXV0aG9ycyBiZSBsaWFibGUgZm9yIGFueSBkYW1hZ2Vz IGFyaXNpbmcKICogZnJvbSB0aGUgdXNlIG9mIHRoaXMgc29mdHdhcmUuCiAqLwoKI2RlZmluZSBf V0lOMzJfV0lOTlQgMHgwNjAwCiNkZWZpbmUgV0lOMzJfTEVBTl9BTkRfTUVBTgojaW5jbHVkZSA8 d2luZG93cy5oPgojaW5jbHVkZSA8d2lubnQuaD4KI2luY2x1ZGUgPHdpbnRlcm5sLmg+CiNpbmNs dWRlIDxzdGRpby5oPgojaW5jbHVkZSA8ZXJybm8uaD4KI2luY2x1ZGUgPGFzc2VydC5oPgojaW5j bHVkZSA8cHJvY2Vzcy5oPgojaW5jbHVkZSA8cHJvY2Vzc3RocmVhZHNhcGkuaD4KI2luY2x1ZGUg PFdpbmRvd3MuaD4KCiAvKgogdHlwZWRlZiBzdHJ1Y3QgX0NMSUVOVF9JRCB7CgkgUFZPSUQgVW5p cXVlUHJvY2VzczsKCSBQVk9JRCBVbmlxdWVUaHJlYWQ7CiB9IENMSUVOVF9JRCwgKiBQQ0xJRU5U X0lEOwogKi8KCnR5cGVkZWYgc3RydWN0IF9TRUNUSU9OX0lNQUdFX0lORk9STUFUSU9OIHsKCVBW T0lEIEVudHJ5UG9pbnQ7CglVTE9ORyBTdGFja1plcm9CaXRzOwoJVUxPTkcgU3RhY2tSZXNlcnZl ZDsKCVVMT05HIFN0YWNrQ29tbWl0OwoJVUxPTkcgSW1hZ2VTdWJzeXN0ZW07CglXT1JEIFN1YlN5 c3RlbVZlcnNpb25Mb3c7CglXT1JEIFN1YlN5c3RlbVZlcnNpb25IaWdoOwoJVUxPTkcgVW5rbm93 bjE7CglVTE9ORyBJbWFnZUNoYXJhY3RlcmlzdGljczsKCVVMT05HIEltYWdlTWFjaGluZVR5cGU7 CglVTE9ORyBVbmtub3duMlszXTsKfSBTRUNUSU9OX0lNQUdFX0lORk9STUFUSU9OLCAqIFBTRUNU SU9OX0lNQUdFX0lORk9STUFUSU9OOwoKdHlwZWRlZiBzdHJ1Y3QgX1JUTF9VU0VSX1BST0NFU1Nf SU5GT1JNQVRJT04gewoJVUxPTkcgU2l6ZTsKCUhBTkRMRSBQcm9jZXNzOwoJSEFORExFIFRocmVh ZDsKCUNMSUVOVF9JRCBDbGllbnRJZDsKCVNFQ1RJT05fSU1BR0VfSU5GT1JNQVRJT04gSW1hZ2VJ bmZvcm1hdGlvbjsKfSBSVExfVVNFUl9QUk9DRVNTX0lORk9STUFUSU9OLCAqIFBSVExfVVNFUl9Q Uk9DRVNTX0lORk9STUFUSU9OOwoKI2RlZmluZSBSVExfQ0xPTkVfUFJPQ0VTU19GTEFHU19DUkVB VEVfU1VTUEVOREVECTB4MDAwMDAwMDEKI2RlZmluZSBSVExfQ0xPTkVfUFJPQ0VTU19GTEFHU19J TkhFUklUX0hBTkRMRVMJCTB4MDAwMDAwMDIKI2RlZmluZSBSVExfQ0xPTkVfUFJPQ0VTU19GTEFH U19OT19TWU5DSFJPTklaRQkJMHgwMDAwMDAwNAoKI2RlZmluZSBSVExfQ0xPTkVfUEFSRU5UCQkJ CTAKI2RlZmluZSBSVExfQ0xPTkVfQ0hJTEQJCQkJCTI5NwoKdHlwZWRlZiBEV09SRCB3aW5waWRf dDsKCnR5cGVkZWYgTlRTVEFUVVMoKlJ0bENsb25lVXNlclByb2Nlc3NfZikoVUxPTkcgUHJvY2Vz c0ZsYWdzLAoJUFNFQ1VSSVRZX0RFU0NSSVBUT1IgUHJvY2Vzc1NlY3VyaXR5RGVzY3JpcHRvciAv KiBvcHRpb25hbCAqLywKCVBTRUNVUklUWV9ERVNDUklQVE9SIFRocmVhZFNlY3VyaXR5RGVzY3Jp cHRvciAvKiBvcHRpb25hbCAqLywKCUhBTkRMRSBEZWJ1Z1BvcnQgLyogb3B0aW9uYWwgKi8sCglQ UlRMX1VTRVJfUFJPQ0VTU19JTkZPUk1BVElPTiBQcm9jZXNzSW5mb3JtYXRpb24pOwoKCmludCB3 aW5mb3JrKCkKewoJRFdPUkQgcGFyZW50X3BpZCA9IEdldEN1cnJlbnRQcm9jZXNzSWQoKTsKCglI TU9EVUxFIG1vZDsKCVJ0bENsb25lVXNlclByb2Nlc3NfZiBjbG9uZV9wOwoJUlRMX1VTRVJfUFJP Q0VTU19JTkZPUk1BVElPTiBwcm9jZXNzX2luZm87CglOVFNUQVRVUyByZXN1bHQ7CgoJbW9kID0g R2V0TW9kdWxlSGFuZGxlKCJudGRsbC5kbGwiKTsKCWlmICghbW9kKQoJCXJldHVybiAtRU5PU1lT OwoKCWNsb25lX3AgPSAoUnRsQ2xvbmVVc2VyUHJvY2Vzc19mKUdldFByb2NBZGRyZXNzKG1vZCwg IlJ0bENsb25lVXNlclByb2Nlc3MiKTsKCWlmIChjbG9uZV9wID09IE5VTEwpCgkJcmV0dXJuIC1F Tk9TWVM7CgoJLyogbGV0cyBkbyB0aGlzICovCglyZXN1bHQgPSBjbG9uZV9wKFJUTF9DTE9ORV9Q Uk9DRVNTX0ZMQUdTX0NSRUFURV9TVVNQRU5ERUQgfCBSVExfQ0xPTkVfUFJPQ0VTU19GTEFHU19J TkhFUklUX0hBTkRMRVMsIE5VTEwsIE5VTEwsIE5VTEwsICZwcm9jZXNzX2luZm8pOwoKCWlmIChy ZXN1bHQgPT0gUlRMX0NMT05FX1BBUkVOVCkKCXsKCQkvLyBIQU5ETEUgbWUgPSAwOwogICAgICAg ICAgICAgICAgSEFORExFIGhwID0gMCwgaHQgPSAwOwoJCURXT1JEIHBpLCB0aTsKCQkvLyBtZSA9 IEdldEN1cnJlbnRQcm9jZXNzKCk7CgkJcGkgPSAoRFdPUkQpcHJvY2Vzc19pbmZvLkNsaWVudElk LlVuaXF1ZVByb2Nlc3M7CgkJdGkgPSAoRFdPUkQpcHJvY2Vzc19pbmZvLkNsaWVudElkLlVuaXF1 ZVRocmVhZDsKCgkJYXNzZXJ0KGhwID0gT3BlblByb2Nlc3MoUFJPQ0VTU19BTExfQUNDRVNTLCBG QUxTRSwgcGkpKTsKCQlhc3NlcnQoaHQgPSBPcGVuVGhyZWFkKFRIUkVBRF9BTExfQUNDRVNTLCBG QUxTRSwgdGkpKTsKCgkJUmVzdW1lVGhyZWFkKGh0KTsKCQlDbG9zZUhhbmRsZShodCk7CgkJQ2xv c2VIYW5kbGUoaHApOwoKCQlyZXR1cm4gKGludClwaTsKCX0KCWVsc2UgaWYgKHJlc3VsdCA9PSBS VExfQ0xPTkVfQ0hJTEQpCgl7CgkJLyogZml4IHN0ZGlvICovCgkJRnJlZUNvbnNvbGUoKTsKCQlB dHRhY2hDb25zb2xlKHBhcmVudF9waWQpOwoKCQlyZXR1cm4gMDsKCX0KCWVsc2UKCQlyZXR1cm4g LTE7CgoJLyogTk9UUkVBQ0hFRCAqLwoJcmV0dXJuIC0xOwp9Cgp2b2lkIGNoaWxkX3RocmVhZF9v bmUodm9pZCAqZHVtbXkpCnsKICAgICh2b2lkKWR1bW15OwoKICAgIFNsZWVwKDIwMCo1KTsKICAg ICh2b2lkKXByaW50ZigiSSB0aHJlYWQgb25lIGluIHRoZSBjaGlsZC5cbiIpOwogICAgZmZsdXNo KHN0ZG91dCk7Cn0KCnZvaWQgY2hpbGRfdGhyZWFkX3R3byh2b2lkICpkdW1teSkKewogICAgKHZv aWQpZHVtbXk7CgogICAgU2xlZXAoMjAwKjQpOwogICAgKHZvaWQpcHJpbnRmKCJJIHRocmVhZCB0 d28gaW4gdGhlIGNoaWxkLlxuIik7CiAgICBmZmx1c2goc3Rkb3V0KTsKfQoKdm9pZCBwYXJlbnRf dGhyZWFkX29uZSh2b2lkICpkdW1teSkKewogICAgKHZvaWQpZHVtbXk7CgogICAgU2xlZXAoMjAw KjIpOwogICAgKHZvaWQpcHJpbnRmKCJJIHRocmVhZCBvbmUgaW4gdGhlIHBhcmVudC5cbiIpOwog ICAgZmZsdXNoKHN0ZG91dCk7Cn0KCnZvaWQgcGFyZW50X3RocmVhZF90d28odm9pZCAqZHVtbXkp CnsKICAgICh2b2lkKWR1bW15OwoKICAgIFNsZWVwKDIwMCoxKTsKICAgICh2b2lkKXByaW50Zigi SSB0aHJlYWQgdHdvIGluIHRoZSBwYXJlbnQuXG4iKTsKICAgIGZmbHVzaChzdGRvdXQpOwp9Cgpp bnQgbWFpbihpbnQgYXJnYywgY29uc3QgY2hhciogYXJndltdKQp7Cgl3aW5waWRfdCBwaWQ7Cglw aWQgPSB3aW5mb3JrKCk7CgoJc3dpdGNoIChwaWQpIHsKCWNhc2UgMDogLy9jaGlsZAoJewoJCSh2 b2lkKXByaW50ZigiSSBhbSBjaGlsZC5cbiIpOwogICAgICAgICAgICAgICAgZmZsdXNoKHN0ZG91 dCk7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIF9iZWdpbnRocmVhZChjaGlsZF90 aHJlYWRfb25lLCAwLCBOVUxMKTsKICAgICAgICAgICAgICAgIF9iZWdpbnRocmVhZChjaGlsZF90 aHJlYWRfdHdvLCAwLCBOVUxMKTsKICAgICAgICAgICAgICAgIFNsZWVwKDMwMCk7CgoJCWJyZWFr OwoJfQoJZGVmYXVsdDogLy9wYXJlbnQKICAgICAgICAgICAgICAgIFNsZWVwKDEwMCk7CgkJKHZv aWQpcHJpbnRmKCJJIGFtIHBhcmVudC4gQ2hpbGQgcHJvY2VzcyBQSUQ6ICVsZFxuIiwgKGxvbmcp cGlkKTsKICAgICAgICAgICAgICAgIGZmbHVzaChzdGRvdXQpOwoKICAgICAgICAgICAgICAgIF9i ZWdpbnRocmVhZChwYXJlbnRfdGhyZWFkX29uZSwgMCwgTlVMTCk7CiAgICAgICAgICAgICAgICBf YmVnaW50aHJlYWQocGFyZW50X3RocmVhZF90d28sIDAsIE5VTEwpOwoKCQlicmVhazsKCX0KCVNs ZWVwKDEwMDApOwoKCWV4aXQoMCk7Cn0= --0000000000002aac74063f62e4ce Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple --0000000000002aac74063f62e4ce--
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |