delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2025/09/22/08:24:58

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--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019