delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2015/08/05/05:19:29

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:from:to:subject:date:message-id:references
:in-reply-to:content-type:mime-version; q=dns; s=default; b=gcea
HrYrRYg8s2TGe7MTYX8BtU17JL2XgbMCLpx46ZTxWquTOpydt/P7sVFm8bwpAP08
Atf4/XzbF0hKq3lR0WqRqPdxFlk8jATnX3fUqmy2w4kdStrhj9pQ7YZKsN8zctv6
3PAzUt4mP2J92so/SXZiikMY8CrKWmUhRsruRpA=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:from:to:subject:date:message-id:references
:in-reply-to:content-type:mime-version; s=default; bh=aWsjgIfrsY
cS41SQFq3tpHei/1k=; b=n4SLNUJmQHBcndUTFfnuKMR+t+vaBQ3Lmf4Zwnrv76
OPOJFDkF/tZr5aDO/Mj6EpxjoE+JqIsIe4wq9iEkiLsIOs0GxYXw/Hp2AAjVLVpv
eLAdSj4jUX49+d9cfNV0Q8Bl0IVbszsZ5ZGp5TAtGeT3CydvBk1sBEjV0DxCzwmH
M=
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=3.1 required=5.0 tests=AWL,BAYES_50 autolearn=ham version=3.3.2
X-HELO: mailgw-e01.its.kfa-juelich.de
From: "Kiehl, Horst" <h DOT p DOT kiehl AT fz-juelich DOT de>
To: "cygwin AT cygwin DOT com" <cygwin AT cygwin DOT com>
Subject: RE: [ANNOUNCEMENT] Updated: Cygwin 2.2.0-1
Date: Wed, 5 Aug 2015 09:19:03 +0000
Message-ID: <3f1d63803e3546f28d65e0fc7957a204@IBTEXCHMB1.ibt.kfa-juelich.de>
References: <announce DOT 20150803131950 DOT GA18878 AT calimero DOT vinschen DOT de> <55BFB64C DOT 1010802 AT towo DOT net> <20150803192940 DOT GA19315 AT calimero DOT vinschen DOT de> <loom DOT 20150804T094839-714 AT post DOT gmane DOT org> <895515CC-6BB7-41E7-AEA5-30FBBE071153 AT etr-usa DOT com> <87wpxac2bj DOT fsf AT Rainer DOT invalid> <20150805075435 DOT GP17917 AT calimero DOT vinschen DOT de>
In-Reply-To: <20150805075435.GP17917@calimero.vinschen.de>
x-ms-exchange-transport-fromentityheader: Hosted
MIME-Version: 1.0
X-IsSubscribed: yes

------=_NextPart_000_0668_01D0CF70.889ECE20
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Corinna Vinschen wrote:

> The problem the fix was *supposed* to fix (but it didn't) was to disallow
> incoming $HOME values which are non-POSIX or non-absolute paths.  These
> $HOME values should be disregarded.
>=20
> So the idea was:
>=20
>   set HOME=3Dfoo		<- ignored, set HOME from passwd DB entry
>   set HOME=3DC:/foo	<- same
>   set HOME=3D//foo/bar	<- same
>   set HOME=3D/foo/bar	<- valid, taken

The second case, IMHO, *is* an absolute path in the context of Windows:
C:/foo
So my assumption as a user would be that Cygwin would use this value for
HOME in its (cygpath-) translated form: /cygdrive/c/foo

This way I could continue to use my Windows profile directory
(%USERPROFILE%) as my Cygwin home directory (with the definition of
HOME=3D%USERPROFILE% and the symbolic link /home -> cygdrive/c/Users to
keep ssh working) as well as e.g. continue to use the Windows port of
GNU Emacs which consults the HOME variable too.

In other words, if Cygwin would continue to use HOME=3D/cygdrive/c/foo as
the conversion of HOME=3DC:/foo, this would follow the principle of least
surprise, IMHO.

(Just thinking ... would even the third case (HOME=3D//foo/bar) be a valid
scenario? Does Cygwin "technically allow" the home directory to be on
the network? If there is a POSIX-compliant translation of //foo/bar, it
might be a better choice than ignoring the value.)

> Right now, when started from a non-Cygwin process, Cygwin takes the
> value of $HOME and simply calls the Win32->POSIX conversion function.
> It does so for a long time, but is that right?  Especially if %HOME% is
> a non-absolute =3D=3D relative path, the resulting POSIX value of $HOME
> depends on the current directory when starting Cygwin.

On my (somewhat outdated) Cygwin installation, cygpath seems to
translate relative Windows paths to relative Cygwin paths. If I
understand you correctly, the conversion done by cygpath is the same
that Cygwin uses to translate the value of HOME before deciding whether
the outcome is a valid POSIX path. Wouldn't this already detect a
relative value of HOME as invalid?

> This sounds like a terrible idea to me.  Together with cases like
> https://cygwin.com/ml/cygwin/2015-07/msg00344.html, and the fact that
> $HOME has no meaning in native Windows (HOMEPATH/HOMEDRIVE instead) I'm
> inclined to think that any incoming $HOME should make sense from a POSIX
> POV, otherwise we take the value from the passwd DB as defined by
> /etc/nsswitch.conf.
>=20
> Does anybody have a *good* reason *not* to change this?

As I wrote above, a value for HOME might indeed be useful under Windows,
IMHO. So I'd vote to follow the "principle of least surprise", which
apparently would be to consider the (cygpath-) translated value of HOME
instead of ignoring it too easily.

Best regards, Horst
--=20
Horst Kiehl, Institute of Bio- and Geosciences, IBG-1: Biotechnology
Phone +49 2461 61-5131, Fax +49 2461 61-2231, E-Mail h DOT p DOT kiehl AT fz-juelich DOT de
WWW http://www.fz-juelich.de/ibg/ibg-1/DE/Forschung/Infrastruktur/Elektroni=
k_usw/_node.html
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- =
--
Forschungszentrum J=C3=BClich GmbH
52425 J=C3=BClich
Sitz der Gesellschaft: J=C3=BClich
Eingetragen im Handelsregister des Amtsgerichts D=C3=BCren Nr. HR B 3498
Vorsitzender des Aufsichtsrats: MinDir Dr. Karl Eugen Huthmacher
Gesch=C3=A4ftsf=C3=BChrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender=
),
Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt,
Prof. Dr. Sebastian M. Schmidt

------=_NextPart_000_0668_01D0CF70.889ECE20
Content-Type: application/pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"

MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEH
AQAAoIITQTCCA58wggKHoAMCAQICASYwDQYJKoZIhvcNAQEFBQAwcTELMAkG
A1UEBhMCREUxHDAaBgNVBAoTE0RldXRzY2hlIFRlbGVrb20gQUcxHzAdBgNV
BAsTFlQtVGVsZVNlYyBUcnVzdCBDZW50ZXIxIzAhBgNVBAMTGkRldXRzY2hl
IFRlbGVrb20gUm9vdCBDQSAyMB4XDTk5MDcwOTEyMTEwMFoXDTE5MDcwOTIz
NTkwMFowcTELMAkGA1UEBhMCREUxHDAaBgNVBAoTE0RldXRzY2hlIFRlbGVr
b20gQUcxHzAdBgNVBAsTFlQtVGVsZVNlYyBUcnVzdCBDZW50ZXIxIzAhBgNV
BAMTGkRldXRzY2hlIFRlbGVrb20gUm9vdCBDQSAyMIIBIjANBgkqhkiG9w0B
AQEFAAOCAQ8AMIIBCgKCAQEAqwujNeCLKRSxFIWvPBDkOW81XUqu3ephjZVJ
9G9koxpgZqSpQCKE2dSl5XiTDmgBrblNXDrO07ioQkDfz6O6gllqkhusHJra
CCslJ/lpI0fx4Ossepv1EwLQfjR8wp48AFmr9doM9TI8K6xQ2tbD3oOUyqgM
mTIOCEhWW2r72uFYWAFJX3JBPBUGAY5draq4k7TNnuun6GotUjTbOu9cdVHa
2/Mx+e5xmDLEVBVEDPmbVe2t3xgIoKOGiknuUwWPGUzV3lh5m9JqHEKrxdWn
z2gPluThYZh2YciRfNY+AOKRUIfhnQrmrZfSHcY6fcu82gM01Y5bAfVqB7cW
tm5KfwIDAQABo0IwQDAdBgNVHQ4EFgQUMcN5G7r1U9cX4Il6LRdsCrMrnTMw
DwYDVR0TBAgwBgEB/wIBBTAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQEF
BQADggEBAJRkWa05ZOcp6xP+WsOLE1fIBCTwdHfAYONn++mJpoO/loJ8btTD
Pe+egG67KbSYerE7VOs5F0d+Go4L/B8xWTEEss4X8yzHYjZV4iLYiVW0mEiq
ZPrWHDbYRHhaWiM6V5f1ejBPrp9qTEsrjqAD4z7gqdTSe9KzqOJyPK2e/4BZ
5JtFtPY7sM05GZgy5eohYZDkMSGONLH3LzVKhRDa54o3Ib5ZY+DyhYgxU9RU
FIVwefQuBncndS8fuIr5/sW62Dbkg+znZbe/Y1rzRq+BlDfUQYzWI9Yez/Vo
G0Rjolq6pzVZoeVwBZsOI1eZlAptujljKIaS8xiE2PvRzwVWZFcwggTVMIID
vaADAgECAghQTsb1PRG0ZDANBgkqhkiG9w0BAQsFADBxMQswCQYDVQQGEwJE
RTEcMBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1U
ZWxlU2VjIFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtv
bSBSb290IENBIDIwHhcNMTQwNzIyMTIwODI2WhcNMTkwNzA5MjM1OTAwWjBa
MQswCQYDVQQGEwJERTETMBEGA1UEChMKREZOLVZlcmVpbjEQMA4GA1UECxMH
REZOLVBLSTEkMCIGA1UEAxMbREZOLVZlcmVpbiBQQ0EgR2xvYmFsIC0gRzAx
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6ZvDZ4X5Da71jVTD
llA1PWLpbkztlNcAW5UidNQg6zSP1uzAMQQLmYHiphTSUqAoI4SLdIkEXlvg
4njBeMsWyyg1OXstkEXQ7aAAeny/Sg4bAMOG6VwrMRF7DPOCJEOMHDiLamgA
mu7cT3ir0sYTm3at7t4m6O8Br3QPwQmi9mvOvdPNFDBP9eXjpMhim4IaAycw
DQJlYE3t0QkjKpY1WCfTdsZxtpAdxO3/NYZ9bzOz2w/FEcKKg6GUXUFr2NIQ
9Uz9ylGs2b3vkoO72uuLFlZWQ8/h1RM9ph8nMM1JVNvJEzSacXXFbOqnC5j5
IZ0nrz6jOTlIaoytyZn7wxLyvQIDAQABo4IBhjCCAYIwDgYDVR0PAQH/BAQD
AgEGMB0GA1UdDgQWBBRJt8bP6D0ff+pEexMp9/EKcD7eZDAfBgNVHSMEGDAW
gBQxw3kbuvVT1xfgiXotF2wKsyudMzASBgNVHRMBAf8ECDAGAQH/AgECMGIG
A1UdIARbMFkwEQYPKwYBBAGBrSGCLAEBBAICMBEGDysGAQQBga0hgiwBAQQD
ADARBg8rBgEEAYGtIYIsAQEEAwEwDwYNKwYBBAGBrSGCLAEBBDANBgsrBgEE
AYGtIYIsHjA+BgNVHR8ENzA1MDOgMaAvhi1odHRwOi8vcGtpMDMzNi50ZWxl
c2VjLmRlL3JsL0RUX1JPT1RfQ0FfMi5jcmwweAYIKwYBBQUHAQEEbDBqMCwG
CCsGAQUFBzABhiBodHRwOi8vb2NzcDAzMzYudGVsZXNlYy5kZS9vY3NwcjA6
BggrBgEFBQcwAoYuaHR0cDovL3BraTAzMzYudGVsZXNlYy5kZS9jcnQvRFRf
Uk9PVF9DQV8yLmNlcjANBgkqhkiG9w0BAQsFAAOCAQEAYyAo/ZwhhnK+OUZZ
OTIlvKkBmw3Myn1BnIZtCm4ssxNZdbEzkhthJxb/w7LVNYL7hCoBSb1mu2Yv
ssIGXW4/buMBWlvKQ2NclbbhMacf1QdfTeZlgk4y+cN8ekvNTVx07iHydQLs
Uj7SyWrTkCNuSWc1vn9NVqTszC/Pt6GXqHI+ybxA1lqkCD3WvILDt7cyjrEs
jmpttzUCGc/1OURYY6ckABCwu/xOr24vOLulV0k/2G5QbyyXltwdRpplic+u
zPLl2Z9Tsz6hL5Kp2AvGhB8Exuse6J99tXulAvEkxSRjETTMWpMgKnmIOiVC
kKllO3yG0xIVIyn8LNrMOVtUFzCCBV4wggRGoAMCAQICBxekJJt5EN8wDQYJ
KoZIhvcNAQELBQAwWjELMAkGA1UEBhMCREUxEzARBgNVBAoTCkRGTi1WZXJl
aW4xEDAOBgNVBAsTB0RGTi1QS0kxJDAiBgNVBAMTG0RGTi1WZXJlaW4gUENB
IEdsb2JhbCAtIEcwMTAeFw0xNDA1MjcxNDU0MDNaFw0xOTA3MDkyMzU5MDBa
MIGDMQswCQYDVQQGEwJERTEnMCUGA1UEChMeRm9yc2NodW5nc3plbnRydW0g
SnVlbGljaCBHbWJIMSowKAYDVQQDEyFGWkogQ2VydGlmaWNhdGlvbiBBdXRo
b3JpdHkgLSBHMDIxHzAdBgkqhkiG9w0BCQEWEGNhQGZ6LWp1ZWxpY2guZGUw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCjJkgFDQw08spMsBre
CaehMMeNnMjetOXbtn+OPtrLl1gNACj6sI2FPnheE0qaHVjTQntJWNaztNYP
EbPPxg3mgrW08LanC11rshG+N3nFfEIaa5mauxVt15jvJb2uCCDbFArciFST
iQuPlirxQLBJXtmPWSZtftmyZL99Jc9Cx53YT3KXKK7AKVcOyHae41WnRdnu
6CGK0qyq6jEVY/l+rDi5ENF3S7RJsQzBww9x2qR79uBiW6d/yYBo3RJZKNTu
aKEfIQ8BzJlR0n+yglcSYw/EGk/pQlpvCJH4fRFp5ifPewZtkLWg//IgaJBA
+YvWI2Av8pWesytikQTQHywRAgMBAAGjggH9MIIB+TASBgNVHRMBAf8ECDAG
AQH/AgEBMA4GA1UdDwEB/wQEAwIBBjARBgNVHSAECjAIMAYGBFUdIAAwHQYD
VR0OBBYEFCC9cYmlySozLxHgH+WUJlYPEQIlMB8GA1UdIwQYMBaAFEm3xs/o
PR9/6kR7Eyn38QpwPt5kMBsGA1UdEQQUMBKBEGNhQGZ6LWp1ZWxpY2guZGUw
gYgGA1UdHwSBgDB+MD2gO6A5hjdodHRwOi8vY2RwMS5wY2EuZGZuLmRlL2ds
b2JhbC1yb290LWNhL3B1Yi9jcmwvY2FjcmwuY3JsMD2gO6A5hjdodHRwOi8v
Y2RwMi5wY2EuZGZuLmRlL2dsb2JhbC1yb290LWNhL3B1Yi9jcmwvY2Fjcmwu
Y3JsMIHXBggrBgEFBQcBAQSByjCBxzAzBggrBgEFBQcwAYYnaHR0cDovL29j
c3AucGNhLmRmbi5kZS9PQ1NQLVNlcnZlci9PQ1NQMEcGCCsGAQUFBzAChjto
dHRwOi8vY2RwMS5wY2EuZGZuLmRlL2dsb2JhbC1yb290LWNhL3B1Yi9jYWNl
cnQvY2FjZXJ0LmNydDBHBggrBgEFBQcwAoY7aHR0cDovL2NkcDIucGNhLmRm
bi5kZS9nbG9iYWwtcm9vdC1jYS9wdWIvY2FjZXJ0L2NhY2VydC5jcnQwDQYJ
KoZIhvcNAQELBQADggEBAGcfjE2bMmdDPtAOfYpK/o0pjafjSbtpFoWyn+Tj
m27098SbSk068ud4neDTfyDkqVKUJodGFDX4qBmr2YqzsD00pbnQEQKxToRR
ffl3dz67z4QlhLtVxQdwW2PPvP7FSABflXdEMFLGa4YcWMpcnxRBOG9ahC05
BZqP/F5YUUrfjgGKM2S/U2NjP3O0po/SNv+OmL9/LJSkUwSO4HmT9j8ptAfY
cYkJJtnG/gybaa5Hss890XJbmLZ9J3E/IS2uQCuQTn15v/sIaNCUPfAo92oF
hXOsnhbqFhe7vbm2Eenzuj3scPb6NxEZphscTof8O+D6dV1u+RskW4Etm+15
Jl0wggVfMIIER6ADAgECAgcYKQhtFeBrMA0GCSqGSIb3DQEBCwUAMIGDMQsw
CQYDVQQGEwJERTEnMCUGA1UEChMeRm9yc2NodW5nc3plbnRydW0gSnVlbGlj
aCBHbWJIMSowKAYDVQQDEyFGWkogQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg
LSBHMDIxHzAdBgkqhkiG9w0BCQEWEGNhQGZ6LWp1ZWxpY2guZGUwHhcNMTQw
OTA1MTAwNTE3WhcNMTcwOTA0MTAwNTE3WjBhMQswCQYDVQQGEwJERTEnMCUG
A1UEChMeRm9yc2NodW5nc3plbnRydW0gSnVlbGljaCBHbWJIMQ4wDAYDVQQL
EwVJQkctMTEZMBcGA1UEAxMQSG9yc3QgUGF1bCBLaWVobDCCASIwDQYJKoZI
hvcNAQEBBQADggEPADCCAQoCggEBAJwlcJLp3fOUTOC+Vtu9vLIx+dE/VFeX
XQ5RteLRGXOUO0ThM8Bnki5m+acF/TLu6rfVVGv+CzshywIhVS6HL2rbBn8J
kYVmCgwejqhO0911BFWGwnwIjm5VEIyCHr3jeruzDQ83MuNJM3dGY16I2VA3
p1sSOkIy9GoB5lydIyejB8Gju04y3O/0YVvwKaGF4+H1qpCatIFu3/mpC5ob
BSBEwG5nKhVSDCTfNFPLSloZmoLwcejmQq0wQw+Ju2dDpwxrDmWchL3uWQgZ
oUdbcAxk2jHdJbKM/gnH4Twd/Ek6vQKf/eFmV0jGuocvbTNpCsPmrou5xNat
sEscCF3gh5MCAwEAAaOCAfcwggHzMEAGA1UdIAQ5MDcwEQYPKwYBBAGBrSGC
LAEBBAMCMBEGDysGAQQBga0hgiwCAQQDATAPBg0rBgEEAYGtIYIsAQEEMAkG
A1UdEwQCMAAwCwYDVR0PBAQDAgXgMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr
BgEFBQcDBDAdBgNVHQ4EFgQULyPFXoS6s5Pl2GBidM/pfX/1vGAwHwYDVR0j
BBgwFoAUIL1xiaXJKjMvEeAf5ZQmVg8RAiUwIgYDVR0RBBswGYEXaC5wLmtp
ZWhsQGZ6LWp1ZWxpY2guZGUwewYDVR0fBHQwcjA3oDWgM4YxaHR0cDovL2Nk
cDEucGNhLmRmbi5kZS9memotY2EvcHViL2NybC9nX2NhY3JsLmNybDA3oDWg
M4YxaHR0cDovL2NkcDIucGNhLmRmbi5kZS9memotY2EvcHViL2NybC9nX2Nh
Y3JsLmNybDCBlgYIKwYBBQUHAQEEgYkwgYYwQQYIKwYBBQUHMAKGNWh0dHA6
Ly9jZHAxLnBjYS5kZm4uZGUvZnpqLWNhL3B1Yi9jYWNlcnQvZ19jYWNlcnQu
Y3J0MEEGCCsGAQUFBzAChjVodHRwOi8vY2RwMi5wY2EuZGZuLmRlL2Z6ai1j
YS9wdWIvY2FjZXJ0L2dfY2FjZXJ0LmNydDANBgkqhkiG9w0BAQsFAAOCAQEA
WRxawK6RbtRTyWt7cqCik8F+yne+pUatsWbdpTx8uIItGq2+rJpipNjoKV7t
p/FI0pUWj2Z8CVmfbguUVKmqr8cfraU1GN32JnPZRyNwCD8Bcj6CGgdN+UkD
0Y5bUFSoa6d3yviVIjX3BtWEtPCExVzS11YwF9c4mOshUAevVjHQzKlWwPul
/dtia4oy0GoIthflSg6zE7OWF/P19FoGEVaFOKMf8CI/nb1BEuNMwG0AlR/e
qkkReB31N7OteOJVS0M7sjl1BDXBbqRr3/CNL21IcZEfJAitQRZ1E+BN7Hc9
byuMovZc3I8GtoV/kxs+P8Pn9wavPy/ZhwbFQPWR/zGCBA4wggQKAgEBMIGP
MIGDMQswCQYDVQQGEwJERTEnMCUGA1UEChMeRm9yc2NodW5nc3plbnRydW0g
SnVlbGljaCBHbWJIMSowKAYDVQQDEyFGWkogQ2VydGlmaWNhdGlvbiBBdXRo
b3JpdHkgLSBHMDIxHzAdBgkqhkiG9w0BCQEWEGNhQGZ6LWp1ZWxpY2guZGUC
BxgpCG0V4GswCQYFKw4DAhoFAKCCAlMwGAYJKoZIhvcNAQkDMQsGCSqGSIb3
DQEHATAcBgkqhkiG9w0BCQUxDxcNMTUwODA1MDkxOTAyWjAjBgkqhkiG9w0B
CQQxFgQUmRqlRp7CasK19cWmW9A2BfgftHEwgaAGCSsGAQQBgjcQBDGBkjCB
jzCBgzELMAkGA1UEBhMCREUxJzAlBgNVBAoTHkZvcnNjaHVuZ3N6ZW50cnVt
IEp1ZWxpY2ggR21iSDEqMCgGA1UEAxMhRlpKIENlcnRpZmljYXRpb24gQXV0
aG9yaXR5IC0gRzAyMR8wHQYJKoZIhvcNAQkBFhBjYUBmei1qdWVsaWNoLmRl
AgcYKQhtFeBrMIGiBgsqhkiG9w0BCRACCzGBkqCBjzCBgzELMAkGA1UEBhMC
REUxJzAlBgNVBAoTHkZvcnNjaHVuZ3N6ZW50cnVtIEp1ZWxpY2ggR21iSDEq
MCgGA1UEAxMhRlpKIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IC0gRzAyMR8w
HQYJKoZIhvcNAQkBFhBjYUBmei1qdWVsaWNoLmRlAgcYKQhtFeBrMIGrBgkq
hkiG9w0BCQ8xgZ0wgZowCwYJYIZIAWUDBAEqMAsGCWCGSAFlAwQBFjAKBggq
hkiG9w0DBzALBglghkgBZQMEAQIwDgYIKoZIhvcNAwICAgCAMAcGBSsOAwIH
MA0GCCqGSIb3DQMCAgFAMA0GCCqGSIb3DQMCAgEoMAcGBSsOAwIaMAsGCWCG
SAFlAwQCAzALBglghkgBZQMEAgIwCwYJYIZIAWUDBAIBMA0GCSqGSIb3DQEB
AQUABIIBABMx11haZlduwRalm1iEyCXQiIu1bsPOrKSUP81vdWi25SIiW37N
nWUdAUAc77PJwSI9JlFPHB5Iv+qs/upLdQT41Z602Jj+9639kFSxxPZrgs0+
ZkFaXPO9UvGBKWDGmtR7rwSd9WUjhth7zBn6WHbDvANEFVrzAbXJ0f0zTWdz
m7/LkSzrKBeUXxp+qsqFmUsBUg16EEdSCqSIzO3eh33VL8MKAzIqBX/3Sjdt
PdC1W5xTE8JOLnn+S2xctVAL9grM8mfE4k1Ovc+4nVBMKoQ5oysrHJKbj7H5
oysDw9G54ZS+OGYYiSBfuRr83iqhZ6HglSRykLffo34UDi9uxYwAAAAAAAA=

------=_NextPart_000_0668_01D0CF70.889ECE20--

- Raw text -


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