[Python-Dev] IPv6 and Windows

M.-A. Lemburg mal@lemburg.com
Sun, 24 Jun 2001 13:06:19 +0200

"Martin v. Loewis" wrote:
> After integrating the first chunk of IPv6 changes, Tim Peters quickly
> found that they won't compile on Windows - even though this was the
> least-critical part of the patch.
> Specifically, this code emulates the getaddrinfo and getnameinfo
> calls, which will be exposed to Python programs in a later patch.
> Therefore, it is essential that they are available on every system,
> either directly or through emulation.
> For Windows, one option is to use the Microsoft-provided emulation,
> which is available from
> http://msdn.microsoft.com/downloads/sdks/platform/tpipv6.asp
> To use this emulation, only the header files of the package are
> required; it is not necessary to actually install the IPv6 preview on
> the system. The MS emulation will try to load a few DLLs which are
> known to provide getaddrinfo. If neither DLL is found, the code in the
> header file falls back to an emulation. That way, the resulting
> socket.pyd would use the true API function on installations that
> provide them, and the emulation on all other systems.
> The only requirement for building Python is then that the header file
> from the technology preview is available on the build machine
> (tpipv6.h). It may be that the header file is also included in recent
> SDK releases, I haven't checked.
> Is such a requirement acceptable for building the socket module on
> Windows?

Isn't this the MS SDK that has the new "Open Source" license
clause in it ?! If yes, I very much doubt that this approach
would be feasable for Python...


Quote from a recent posting by Steven Majewski on c.l.p.:
   (c)   Open Source.  Recipients license rights to the Software are
conditioned upon Recipient (i) not distributing such Software, in whole or
in part, in conjunction with Potentially Viral Software (as defined
below); and (ii) not using Potentially Viral Software (e.g. tools) to
develop Recipient software which includes the Software, in whole or in
part.  For purposes of the foregoing, Potentially Viral Software means
software which is licensed pursuant to terms that: (x) create, or purport
to create, obligations for Microsoft with respect to the Software or
(y) grant, or purport to grant, to any third party any rights to or
immunities under Microsofts intellectual property or proprietary rights in
the Software.  By way of example but not limitation of the foregoing,
Recipient shall not distribute the Software, in whole or in part, in
conjunction with any Publicly Available Software.  Publicly Available
Software means each of (i) any software that contains, or is derived in
any manner (in whole or in part) from, any software that is distributed as
free software, open source software (e.g. Linux) or similar licensing or
distribution models; and (ii) any software that requires as a condition of
use, modification and/or distribution of such software that other software
distributed with such software (A) be disclosed or distributed in source
code form; (B) be licensed for the purpose of making derivative works; or
(C) be redistributable at no charge.  Publicly Available Software
includes, without limitation, software licensed or distributed under any
of the following licenses or distribution models, or licenses or
distribution models similar to any of the following: (A) GNUs General
Public License (GPL) or Lesser/Library GPL (LGPL), (B) The Artistic
License (e.g., PERL), (C) the Mozilla Public License, (D) the Netscape
Public License, (E) the Sun Community Source License (SCSL), and (F) the
Sun Industry Standards License (SISL).

Marc-Andre Lemburg
CEO eGenix.com Software GmbH
Company & Consulting:                           http://www.egenix.com/
Python Software:                        http://www.lemburg.com/python/