2007-08-15 11:28:22 -03:00
|
|
|
|
|
|
|
:mod:`socket` --- Low-level networking interface
|
|
|
|
================================================
|
|
|
|
|
|
|
|
.. module:: socket
|
|
|
|
:synopsis: Low-level networking interface.
|
|
|
|
|
|
|
|
|
|
|
|
This module provides access to the BSD *socket* interface. It is available on
|
2007-08-17 09:57:41 -03:00
|
|
|
all modern Unix systems, Windows, MacOS, OS/2, and probably additional
|
2007-08-15 11:28:22 -03:00
|
|
|
platforms.
|
|
|
|
|
|
|
|
.. note::
|
|
|
|
|
|
|
|
Some behavior may be platform dependent, since calls are made to the operating
|
|
|
|
system socket APIs.
|
|
|
|
|
|
|
|
For an introduction to socket programming (in C), see the following papers: An
|
|
|
|
Introductory 4.3BSD Interprocess Communication Tutorial, by Stuart Sechrest and
|
|
|
|
An Advanced 4.3BSD Interprocess Communication Tutorial, by Samuel J. Leffler et
|
|
|
|
al, both in the UNIX Programmer's Manual, Supplementary Documents 1 (sections
|
|
|
|
PS1:7 and PS1:8). The platform-specific reference material for the various
|
|
|
|
socket-related system calls are also a valuable source of information on the
|
|
|
|
details of socket semantics. For Unix, refer to the manual pages; for Windows,
|
|
|
|
see the WinSock (or Winsock 2) specification. For IPv6-ready APIs, readers may
|
Merged revisions 60481,60485,60489-60520,60523-60527,60530-60533,60535-60538,60540-60551 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
NOTE: I blocked the following revisions:
svnmerge.py block -r 60521,60522,60528,60529,60534,60539
The new tests must be merged with lots of manual work.
........
r60493 | georg.brandl | 2008-02-01 12:59:08 +0100 (Fri, 01 Feb 2008) | 2 lines
Update IPv6 RFC number.
........
r60497 | georg.brandl | 2008-02-01 16:50:15 +0100 (Fri, 01 Feb 2008) | 2 lines
Add link checker builder, written for GHOP by Thomas Lamb.
........
r60500 | georg.brandl | 2008-02-01 19:08:09 +0100 (Fri, 01 Feb 2008) | 2 lines
Rename batch file.
........
r60504 | christian.heimes | 2008-02-01 19:49:26 +0100 (Fri, 01 Feb 2008) | 1 line
More int -> pid_t.
........
r60507 | georg.brandl | 2008-02-01 20:24:01 +0100 (Fri, 01 Feb 2008) | 2 lines
Wording nit.
........
r60510 | georg.brandl | 2008-02-01 21:45:33 +0100 (Fri, 01 Feb 2008) | 2 lines
Update for latest sphinx latex writer.
........
r60511 | raymond.hettinger | 2008-02-01 22:30:23 +0100 (Fri, 01 Feb 2008) | 1 line
Issue #1996: float.as_integer_ratio() should return fraction in lowest terms.
........
r60512 | raymond.hettinger | 2008-02-01 23:15:52 +0100 (Fri, 01 Feb 2008) | 1 line
Integer ratio should return ints instead of longs whereever possible.
........
r60513 | raymond.hettinger | 2008-02-01 23:22:50 +0100 (Fri, 01 Feb 2008) | 1 line
labs() takes a long for an input.
........
r60514 | raymond.hettinger | 2008-02-01 23:42:59 +0100 (Fri, 01 Feb 2008) | 1 line
Test round-trip on float.as_integer_ratio() and float.__truediv__().
........
r60515 | marc-andre.lemburg | 2008-02-01 23:58:17 +0100 (Fri, 01 Feb 2008) | 3 lines
Bump distutils version number to match Python version.
........
r60516 | raymond.hettinger | 2008-02-02 00:12:19 +0100 (Sat, 02 Feb 2008) | 1 line
Fix int/long typecase. Add check for non-binary floating point.
........
r60517 | raymond.hettinger | 2008-02-02 00:45:44 +0100 (Sat, 02 Feb 2008) | 1 line
Add protection from weirdness while scaling the mantissa to an integer.
........
r60518 | raymond.hettinger | 2008-02-02 06:11:40 +0100 (Sat, 02 Feb 2008) | 1 line
Simpler solution to handling non-IEEE 754 environments.
........
r60519 | raymond.hettinger | 2008-02-02 06:24:44 +0100 (Sat, 02 Feb 2008) | 1 line
Neaten-up a bit.
........
r60520 | georg.brandl | 2008-02-02 10:56:20 +0100 (Sat, 02 Feb 2008) | 2 lines
Amendments to the urllib2 docs, written for GHOP by Thomas Lamb.
........
r60525 | georg.brandl | 2008-02-02 11:49:58 +0100 (Sat, 02 Feb 2008) | 3 lines
Add email example how to send a multipart message.
Written for GHOP by Martin Matejek.
........
r60526 | georg.brandl | 2008-02-02 12:05:00 +0100 (Sat, 02 Feb 2008) | 2 lines
Rewrite test_socketserver as unittest, written for GHOP by Benjamin Petersen.
........
r60527 | georg.brandl | 2008-02-02 12:05:34 +0100 (Sat, 02 Feb 2008) | 2 lines
Add GHOP contributor.
........
r60530 | mark.dickinson | 2008-02-02 18:16:13 +0100 (Sat, 02 Feb 2008) | 2 lines
Make the Rational constructor accept '3.' and '.2' as well as '3.2'.
........
r60531 | neal.norwitz | 2008-02-02 19:52:51 +0100 (Sat, 02 Feb 2008) | 1 line
Update the leaky tests (ie, ignore these tests if they report leaks). This version has been running for a while.
........
r60533 | skip.montanaro | 2008-02-02 20:11:57 +0100 (Sat, 02 Feb 2008) | 7 lines
Split the refleak mail body into two parts, the first being those failing
tests which are deemed more important issues, the second those which are
known to have difficult to solve problems and are generally expected to
leak. Hopefully this doesn't break the script...
........
r60535 | georg.brandl | 2008-02-03 01:04:50 +0100 (Sun, 03 Feb 2008) | 3 lines
Wait for a delay before reaping children -- this should fix the
test_socketserver failures on several platforms.
........
r60536 | brett.cannon | 2008-02-03 03:07:55 +0100 (Sun, 03 Feb 2008) | 2 lines
Fix a minor typo.
........
r60537 | brett.cannon | 2008-02-03 03:08:45 +0100 (Sun, 03 Feb 2008) | 3 lines
Directories from CPPFLAGS and LDFLAGS were being added in the reverse order for
searches as to how they were listed in the environment variable.
........
r60538 | brett.cannon | 2008-02-03 03:34:14 +0100 (Sun, 03 Feb 2008) | 2 lines
Remove extra tick marks and add a missing closing parenthesis.
........
r60540 | andrew.macintyre | 2008-02-03 07:58:06 +0100 (Sun, 03 Feb 2008) | 2 lines
Update OS/2 EMX build bits for 2.6.
........
r60541 | andrew.macintyre | 2008-02-03 08:01:11 +0100 (Sun, 03 Feb 2008) | 2 lines
Rename module definition file to reflect v2.6.
........
r60542 | andrew.macintyre | 2008-02-03 08:07:31 +0100 (Sun, 03 Feb 2008) | 6 lines
The wrapper function is supposed to be for spawnvpe() so that's
what we should call [this wrapper only available on OS/2].
Backport candidate to 2.5.
........
r60544 | gregory.p.smith | 2008-02-03 08:20:53 +0100 (Sun, 03 Feb 2008) | 6 lines
Merge this fix from the pybsddb tree:
r293 | jcea | 2008-01-31 01:08:19 -0800 (Thu, 31 Jan 2008) | 4 lines
Solved memory leak when using cursors with
databases without environment.
........
r60546 | gregory.p.smith | 2008-02-03 09:01:46 +0100 (Sun, 03 Feb 2008) | 2 lines
remove a repeated occurance of a hardcoded berkeleydb library version number
........
r60549 | brett.cannon | 2008-02-03 10:59:21 +0100 (Sun, 03 Feb 2008) | 2 lines
Add an entry for r60537.
........
r60550 | georg.brandl | 2008-02-03 13:29:00 +0100 (Sun, 03 Feb 2008) | 2 lines
#2003: fix sentence.
........
r60551 | christian.heimes | 2008-02-03 15:34:18 +0100 (Sun, 03 Feb 2008) | 2 lines
Fixed paths to Windows build directories in build_ext.py
Use vsbuild instead of devenv in build.bat and _bsddb.vcproj
........
2008-02-03 12:51:08 -04:00
|
|
|
want to refer to :rfc:`3493` titled Basic Socket Interface Extensions for IPv6.
|
2007-08-15 11:28:22 -03:00
|
|
|
|
|
|
|
.. index:: object: socket
|
|
|
|
|
|
|
|
The Python interface is a straightforward transliteration of the Unix system
|
|
|
|
call and library interface for sockets to Python's object-oriented style: the
|
|
|
|
:func:`socket` function returns a :dfn:`socket object` whose methods implement
|
|
|
|
the various socket system calls. Parameter types are somewhat higher-level than
|
|
|
|
in the C interface: as with :meth:`read` and :meth:`write` operations on Python
|
|
|
|
files, buffer allocation on receive operations is automatic, and buffer length
|
|
|
|
is implicit on send operations.
|
|
|
|
|
|
|
|
Socket addresses are represented as follows: A single string is used for the
|
|
|
|
:const:`AF_UNIX` address family. A pair ``(host, port)`` is used for the
|
|
|
|
:const:`AF_INET` address family, where *host* is a string representing either a
|
|
|
|
hostname in Internet domain notation like ``'daring.cwi.nl'`` or an IPv4 address
|
|
|
|
like ``'100.50.200.5'``, and *port* is an integral port number. For
|
|
|
|
:const:`AF_INET6` address family, a four-tuple ``(host, port, flowinfo,
|
|
|
|
scopeid)`` is used, where *flowinfo* and *scopeid* represents ``sin6_flowinfo``
|
|
|
|
and ``sin6_scope_id`` member in :const:`struct sockaddr_in6` in C. For
|
|
|
|
:mod:`socket` module methods, *flowinfo* and *scopeid* can be omitted just for
|
|
|
|
backward compatibility. Note, however, omission of *scopeid* can cause problems
|
|
|
|
in manipulating scoped IPv6 addresses. Other address families are currently not
|
|
|
|
supported. The address format required by a particular socket object is
|
|
|
|
automatically selected based on the address family specified when the socket
|
|
|
|
object was created.
|
|
|
|
|
|
|
|
For IPv4 addresses, two special forms are accepted instead of a host address:
|
|
|
|
the empty string represents :const:`INADDR_ANY`, and the string
|
|
|
|
``'<broadcast>'`` represents :const:`INADDR_BROADCAST`. The behavior is not
|
|
|
|
available for IPv6 for backward compatibility, therefore, you may want to avoid
|
|
|
|
these if you intend to support IPv6 with your Python programs.
|
|
|
|
|
|
|
|
If you use a hostname in the *host* portion of IPv4/v6 socket address, the
|
|
|
|
program may show a nondeterministic behavior, as Python uses the first address
|
|
|
|
returned from the DNS resolution. The socket address will be resolved
|
|
|
|
differently into an actual IPv4/v6 address, depending on the results from DNS
|
|
|
|
resolution and/or the host configuration. For deterministic behavior use a
|
|
|
|
numeric address in *host* portion.
|
|
|
|
|
2007-09-01 10:51:09 -03:00
|
|
|
AF_NETLINK sockets are represented as pairs ``pid, groups``.
|
2007-08-15 11:28:22 -03:00
|
|
|
|
2008-01-07 13:19:16 -04:00
|
|
|
|
|
|
|
Linux-only support for TIPC is also available using the :const:`AF_TIPC`
|
|
|
|
address family. TIPC is an open, non-IP based networked protocol designed
|
|
|
|
for use in clustered computer environments. Addresses are represented by a
|
|
|
|
tuple, and the fields depend on the address type. The general tuple form is
|
|
|
|
``(addr_type, v1, v2, v3 [, scope])``, where:
|
|
|
|
|
|
|
|
- *addr_type* is one of TIPC_ADDR_NAMESEQ, TIPC_ADDR_NAME, or
|
|
|
|
TIPC_ADDR_ID.
|
|
|
|
- *scope* is one of TIPC_ZONE_SCOPE, TIPC_CLUSTER_SCOPE, and
|
|
|
|
TIPC_NODE_SCOPE.
|
|
|
|
- If *addr_type* is TIPC_ADDR_NAME, then *v1* is the server type, *v2* is
|
|
|
|
the port identifier, and *v3* should be 0.
|
|
|
|
|
|
|
|
If *addr_type* is TIPC_ADDR_NAMESEQ, then *v1* is the server type, *v2*
|
|
|
|
is the lower port number, and *v3* is the upper port number.
|
|
|
|
|
|
|
|
If *addr_type* is TIPC_ADDR_ID, then *v1* is the node, *v2* is the
|
|
|
|
reference, and *v3* should be set to 0.
|
|
|
|
|
|
|
|
|
2007-08-15 11:28:22 -03:00
|
|
|
All errors raise exceptions. The normal exceptions for invalid argument types
|
|
|
|
and out-of-memory conditions can be raised; errors related to socket or address
|
|
|
|
semantics raise the error :exc:`socket.error`.
|
|
|
|
|
|
|
|
Non-blocking mode is supported through :meth:`setblocking`. A generalization of
|
|
|
|
this based on timeouts is supported through :meth:`settimeout`.
|
|
|
|
|
|
|
|
The module :mod:`socket` exports the following constants and functions:
|
|
|
|
|
|
|
|
|
|
|
|
.. exception:: error
|
|
|
|
|
|
|
|
.. index:: module: errno
|
|
|
|
|
|
|
|
This exception is raised for socket-related errors. The accompanying value is
|
|
|
|
either a string telling what went wrong or a pair ``(errno, string)``
|
|
|
|
representing an error returned by a system call, similar to the value
|
|
|
|
accompanying :exc:`os.error`. See the module :mod:`errno`, which contains names
|
|
|
|
for the error codes defined by the underlying operating system.
|
|
|
|
|
|
|
|
|
|
|
|
.. exception:: herror
|
|
|
|
|
|
|
|
This exception is raised for address-related errors, i.e. for functions that use
|
|
|
|
*h_errno* in the C API, including :func:`gethostbyname_ex` and
|
|
|
|
:func:`gethostbyaddr`.
|
|
|
|
|
|
|
|
The accompanying value is a pair ``(h_errno, string)`` representing an error
|
|
|
|
returned by a library call. *string* represents the description of *h_errno*, as
|
|
|
|
returned by the :cfunc:`hstrerror` C function.
|
|
|
|
|
|
|
|
|
|
|
|
.. exception:: gaierror
|
|
|
|
|
|
|
|
This exception is raised for address-related errors, for :func:`getaddrinfo` and
|
|
|
|
:func:`getnameinfo`. The accompanying value is a pair ``(error, string)``
|
|
|
|
representing an error returned by a library call. *string* represents the
|
|
|
|
description of *error*, as returned by the :cfunc:`gai_strerror` C function. The
|
|
|
|
*error* value will match one of the :const:`EAI_\*` constants defined in this
|
|
|
|
module.
|
|
|
|
|
|
|
|
|
|
|
|
.. exception:: timeout
|
|
|
|
|
|
|
|
This exception is raised when a timeout occurs on a socket which has had
|
|
|
|
timeouts enabled via a prior call to :meth:`settimeout`. The accompanying value
|
|
|
|
is a string whose value is currently always "timed out".
|
|
|
|
|
|
|
|
|
|
|
|
.. data:: AF_UNIX
|
|
|
|
AF_INET
|
|
|
|
AF_INET6
|
|
|
|
|
|
|
|
These constants represent the address (and protocol) families, used for the
|
|
|
|
first argument to :func:`socket`. If the :const:`AF_UNIX` constant is not
|
|
|
|
defined then this protocol is unsupported.
|
|
|
|
|
|
|
|
|
|
|
|
.. data:: SOCK_STREAM
|
|
|
|
SOCK_DGRAM
|
|
|
|
SOCK_RAW
|
|
|
|
SOCK_RDM
|
|
|
|
SOCK_SEQPACKET
|
|
|
|
|
|
|
|
These constants represent the socket types, used for the second argument to
|
|
|
|
:func:`socket`. (Only :const:`SOCK_STREAM` and :const:`SOCK_DGRAM` appear to be
|
|
|
|
generally useful.)
|
|
|
|
|
|
|
|
|
|
|
|
.. data:: SO_*
|
|
|
|
SOMAXCONN
|
|
|
|
MSG_*
|
|
|
|
SOL_*
|
|
|
|
IPPROTO_*
|
|
|
|
IPPORT_*
|
|
|
|
INADDR_*
|
|
|
|
IP_*
|
|
|
|
IPV6_*
|
|
|
|
EAI_*
|
|
|
|
AI_*
|
|
|
|
NI_*
|
|
|
|
TCP_*
|
|
|
|
|
|
|
|
Many constants of these forms, documented in the Unix documentation on sockets
|
|
|
|
and/or the IP protocol, are also defined in the socket module. They are
|
|
|
|
generally used in arguments to the :meth:`setsockopt` and :meth:`getsockopt`
|
|
|
|
methods of socket objects. In most cases, only those symbols that are defined
|
|
|
|
in the Unix header files are defined; for a few symbols, default values are
|
|
|
|
provided.
|
|
|
|
|
Merged revisions 59703-59773 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r59704 | christian.heimes | 2008-01-04 04:15:05 +0100 (Fri, 04 Jan 2008) | 1 line
Moved include "Python.h" in front of other imports to silence a warning.
........
r59706 | raymond.hettinger | 2008-01-04 04:22:53 +0100 (Fri, 04 Jan 2008) | 10 lines
Minor fix-ups to named tuples:
* Make the _replace() method respect subclassing.
* Using property() to make _fields read-only wasn't a good idea.
It caused len(Point._fields) to fail.
* Add note to _cast() about length checking and alternative with the star-operator.
........
r59707 | jeffrey.yasskin | 2008-01-04 09:01:23 +0100 (Fri, 04 Jan 2008) | 3 lines
Make math.{floor,ceil}({int,long}) return float again for backwards
compatibility after r59671 made them return integral types.
........
r59709 | christian.heimes | 2008-01-04 14:21:07 +0100 (Fri, 04 Jan 2008) | 1 line
Bug #1713: posixpath.ismount() claims symlink to a mountpoint is a mountpoint.
........
r59712 | lars.gustaebel | 2008-01-04 15:00:33 +0100 (Fri, 04 Jan 2008) | 5 lines
Issue #1735: TarFile.extractall() now correctly sets
directory permissions and times.
(will backport to 2.5)
........
r59714 | andrew.kuchling | 2008-01-04 15:47:17 +0100 (Fri, 04 Jan 2008) | 1 line
Update links to bug/patch tracker
........
r59716 | christian.heimes | 2008-01-04 16:23:30 +0100 (Fri, 04 Jan 2008) | 1 line
Added interface to Windows' WSAIoctl and a simple example for a network sniffer.
........
r59717 | christian.heimes | 2008-01-04 16:29:00 +0100 (Fri, 04 Jan 2008) | 1 line
And here is the rest of Hirokazu Yamamoto's patch for VS6.0 support. Thanks Hiro!
........
r59719 | christian.heimes | 2008-01-04 16:34:06 +0100 (Fri, 04 Jan 2008) | 1 line
Reverted last transaction. It's the wrong branch.
........
r59721 | christian.heimes | 2008-01-04 16:48:06 +0100 (Fri, 04 Jan 2008) | 1 line
socket.ioctl is only available on Windows
........
r59722 | andrew.kuchling | 2008-01-04 19:24:41 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59723 | andrew.kuchling | 2008-01-04 19:25:05 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59725 | guido.van.rossum | 2008-01-05 01:59:59 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1725 by Mark Dickinson, fixes incorrect conversion of -1e1000
and adds errors for -0x.
........
r59726 | guido.van.rossum | 2008-01-05 02:21:57 +0100 (Sat, 05 Jan 2008) | 2 lines
Patch #1698 by Senthil: allow '@' in username when parsed by urlparse.py.
........
r59727 | raymond.hettinger | 2008-01-05 02:35:43 +0100 (Sat, 05 Jan 2008) | 1 line
Improve namedtuple's _cast() method with a docstring, new name, and error-checking.
........
r59728 | raymond.hettinger | 2008-01-05 03:17:24 +0100 (Sat, 05 Jan 2008) | 1 line
Add error-checking to namedtuple's _replace() method.
........
r59730 | fred.drake | 2008-01-05 05:38:38 +0100 (Sat, 05 Jan 2008) | 2 lines
clean up a comment
........
r59731 | jeffrey.yasskin | 2008-01-05 09:47:13 +0100 (Sat, 05 Jan 2008) | 11 lines
Continue rolling back pep-3141 changes that changed behavior from 2.5. This
round included:
* Revert round to its 2.6 behavior (half away from 0).
* Because round, floor, and ceil always return float again, it's no
longer necessary to have them delegate to __xxx___, so I've ripped
that out of their implementations and the Real ABC. This also helps
in implementing types that work in both 2.6 and 3.0: you return int
from the __xxx__ methods, and let it get enabled by the version
upgrade.
* Make pow(-1, .5) raise a ValueError again.
........
r59736 | andrew.kuchling | 2008-01-05 16:13:49 +0100 (Sat, 05 Jan 2008) | 1 line
Fix comment typo
........
r59738 | thomas.heller | 2008-01-05 18:15:44 +0100 (Sat, 05 Jan 2008) | 1 line
Add myself.
........
r59739 | georg.brandl | 2008-01-05 18:49:17 +0100 (Sat, 05 Jan 2008) | 2 lines
Fix C++-style comment.
........
r59742 | georg.brandl | 2008-01-05 20:28:16 +0100 (Sat, 05 Jan 2008) | 2 lines
Remove with_statement future imports from 2.6 docs.
........
r59743 | georg.brandl | 2008-01-05 20:29:45 +0100 (Sat, 05 Jan 2008) | 2 lines
Simplify index entries; fix #1712.
........
r59744 | georg.brandl | 2008-01-05 20:44:22 +0100 (Sat, 05 Jan 2008) | 2 lines
Doc patch #1730 from Robin Stocker; minor corrections mostly to os.rst.
........
r59749 | georg.brandl | 2008-01-05 21:29:13 +0100 (Sat, 05 Jan 2008) | 2 lines
Revert socket.rst to unix-eol.
........
r59750 | georg.brandl | 2008-01-05 21:33:46 +0100 (Sat, 05 Jan 2008) | 2 lines
Set native svn:eol-style property for text files.
........
r59752 | georg.brandl | 2008-01-05 21:46:29 +0100 (Sat, 05 Jan 2008) | 2 lines
#1719: capitalization error in "UuidCreate".
........
r59753 | georg.brandl | 2008-01-05 22:02:25 +0100 (Sat, 05 Jan 2008) | 2 lines
Repair markup.
........
r59754 | georg.brandl | 2008-01-05 22:10:50 +0100 (Sat, 05 Jan 2008) | 2 lines
Use markup.
........
r59757 | christian.heimes | 2008-01-05 22:35:52 +0100 (Sat, 05 Jan 2008) | 1 line
Final adjustments for #1601
........
r59758 | guido.van.rossum | 2008-01-05 23:19:06 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1637: fix urlparse for URLs like 'http://x.com?arg=/foo'.
Fix by John Nagle.
........
r59759 | guido.van.rossum | 2008-01-05 23:20:01 +0100 (Sat, 05 Jan 2008) | 2 lines
Add John Nagle (of issue #1637).
........
r59765 | raymond.hettinger | 2008-01-06 10:02:24 +0100 (Sun, 06 Jan 2008) | 1 line
Small code simplification. Forgot that classmethods can be called from intances.
........
r59766 | martin.v.loewis | 2008-01-06 11:09:48 +0100 (Sun, 06 Jan 2008) | 2 lines
Use vcbuild for VS 2009.
........
r59767 | martin.v.loewis | 2008-01-06 12:03:43 +0100 (Sun, 06 Jan 2008) | 2 lines
Package using VS 2008.
........
r59768 | martin.v.loewis | 2008-01-06 12:13:16 +0100 (Sun, 06 Jan 2008) | 2 lines
Don't try to package msvcr90 for the moment.
........
r59769 | georg.brandl | 2008-01-06 15:17:36 +0100 (Sun, 06 Jan 2008) | 4 lines
#1696393: don't check for '.' and '..' in ntpath.walk since
they aren't returned from os.listdir anymore.
Reported by Michael Haggerty.
........
r59770 | georg.brandl | 2008-01-06 15:27:15 +0100 (Sun, 06 Jan 2008) | 3 lines
#1742: don't raise exception on os.path.relpath("a", "a"), but return os.curdir.
Reported by Jesse Towner.
........
r59771 | georg.brandl | 2008-01-06 15:33:52 +0100 (Sun, 06 Jan 2008) | 2 lines
#1591: Clarify docstring of Popen3.
........
r59772 | georg.brandl | 2008-01-06 16:30:34 +0100 (Sun, 06 Jan 2008) | 2 lines
#1680: fix context manager example function name.
........
r59773 | georg.brandl | 2008-01-06 16:34:57 +0100 (Sun, 06 Jan 2008) | 2 lines
#1755097: document default values for [].sort() and sorted().
........
2008-01-06 12:59:19 -04:00
|
|
|
.. data:: SIO_*
|
|
|
|
RCVALL_*
|
|
|
|
|
|
|
|
Constants for Windows' WSAIoctl(). The constants are used as arguments to the
|
|
|
|
:meth:`ioctl` method of socket objects.
|
|
|
|
|
2007-08-15 11:28:22 -03:00
|
|
|
|
2008-01-07 13:19:16 -04:00
|
|
|
.. data:: TIPC_*
|
|
|
|
|
|
|
|
TIPC related constants, matching the ones exported by the C socket API. See
|
|
|
|
the TIPC documentation for more information.
|
|
|
|
|
|
|
|
|
2007-08-15 11:28:22 -03:00
|
|
|
.. data:: has_ipv6
|
|
|
|
|
|
|
|
This constant contains a boolean value which indicates if IPv6 is supported on
|
|
|
|
this platform.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: create_connection(address[, timeout])
|
|
|
|
|
|
|
|
Connects to the *address* received (as usual, a ``(host, port)`` pair), with an
|
Merged revisions 57778-58052 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r57820 | georg.brandl | 2007-08-31 08:59:27 +0200 (Fri, 31 Aug 2007) | 2 lines
Document new shorthand notation for index entries.
........
r57827 | georg.brandl | 2007-08-31 10:47:51 +0200 (Fri, 31 Aug 2007) | 2 lines
Fix subitem markup.
........
r57833 | martin.v.loewis | 2007-08-31 12:01:07 +0200 (Fri, 31 Aug 2007) | 1 line
Mark registry components as 64-bit on Win64.
........
r57854 | bill.janssen | 2007-08-31 21:02:23 +0200 (Fri, 31 Aug 2007) | 1 line
deprecate use of FakeSocket
........
r57855 | bill.janssen | 2007-08-31 21:02:46 +0200 (Fri, 31 Aug 2007) | 1 line
remove mentions of socket.ssl in comments
........
r57856 | bill.janssen | 2007-08-31 21:03:31 +0200 (Fri, 31 Aug 2007) | 1 line
remove use of non-existent SSLFakeSocket in apparently untested code
........
r57859 | martin.v.loewis | 2007-09-01 08:36:03 +0200 (Sat, 01 Sep 2007) | 3 lines
Bug #1737210: Change Manufacturer of Windows installer to PSF.
Will backport to 2.5.
........
r57865 | georg.brandl | 2007-09-01 09:51:24 +0200 (Sat, 01 Sep 2007) | 2 lines
Fix RST link (backport from Py3k).
........
r57876 | georg.brandl | 2007-09-01 17:49:49 +0200 (Sat, 01 Sep 2007) | 2 lines
Document sets' ">" and "<" operations (backport from py3k).
........
r57878 | skip.montanaro | 2007-09-01 19:40:03 +0200 (Sat, 01 Sep 2007) | 4 lines
Added a note and examples to explain that re.split does not split on an
empty pattern match. (issue 852532).
........
r57879 | walter.doerwald | 2007-09-01 20:18:09 +0200 (Sat, 01 Sep 2007) | 2 lines
Fix wrong function names.
........
r57880 | walter.doerwald | 2007-09-01 20:34:05 +0200 (Sat, 01 Sep 2007) | 2 lines
Fix typo.
........
r57889 | andrew.kuchling | 2007-09-01 22:31:59 +0200 (Sat, 01 Sep 2007) | 1 line
Markup fix
........
r57892 | andrew.kuchling | 2007-09-01 22:43:36 +0200 (Sat, 01 Sep 2007) | 1 line
Add various items
........
r57895 | andrew.kuchling | 2007-09-01 23:17:58 +0200 (Sat, 01 Sep 2007) | 1 line
Wording change
........
r57896 | andrew.kuchling | 2007-09-01 23:18:31 +0200 (Sat, 01 Sep 2007) | 1 line
Add more items
........
r57904 | ronald.oussoren | 2007-09-02 11:46:07 +0200 (Sun, 02 Sep 2007) | 3 lines
Macosx: this patch ensures that the value of MACOSX_DEPLOYMENT_TARGET used
by the Makefile is also used at configure-time.
........
r57925 | georg.brandl | 2007-09-03 09:16:46 +0200 (Mon, 03 Sep 2007) | 2 lines
Fix #883466: don't allow Unicode as arguments to quopri and uu codecs.
........
r57936 | matthias.klose | 2007-09-04 01:33:04 +0200 (Tue, 04 Sep 2007) | 2 lines
- Added support for linking the bsddb module against BerkeleyDB 4.6.x.
........
r57954 | mark.summerfield | 2007-09-04 10:16:15 +0200 (Tue, 04 Sep 2007) | 3 lines
Added cross-references plus a note about dict & list shallow copying.
........
r57958 | martin.v.loewis | 2007-09-04 11:51:57 +0200 (Tue, 04 Sep 2007) | 3 lines
Document that we rely on the OS to release the crypto
context. Fixes #1626801.
........
r57960 | martin.v.loewis | 2007-09-04 15:13:14 +0200 (Tue, 04 Sep 2007) | 3 lines
Patch #1388440: Add set_completion_display_matches_hook and
get_completion_type to readline.
........
r57961 | martin.v.loewis | 2007-09-04 16:19:28 +0200 (Tue, 04 Sep 2007) | 3 lines
Patch #1031213: Decode source line in SyntaxErrors back to its original
source encoding. Will backport to 2.5.
........
r57972 | matthias.klose | 2007-09-04 20:17:36 +0200 (Tue, 04 Sep 2007) | 3 lines
- Makefile.pre.in(buildbottest): Run an optional script pybuildbot.identify
to include some information about the build environment.
........
r57973 | matthias.klose | 2007-09-04 21:05:38 +0200 (Tue, 04 Sep 2007) | 2 lines
- Makefile.pre.in(buildbottest): Remove whitespace at eol.
........
r57975 | matthias.klose | 2007-09-04 22:46:02 +0200 (Tue, 04 Sep 2007) | 2 lines
- Fix libffi configure for hppa*-*-linux* | parisc*-*-linux*.
........
r57980 | bill.janssen | 2007-09-05 02:46:27 +0200 (Wed, 05 Sep 2007) | 1 line
SSL certificate distinguished names should be represented by tuples
........
r57985 | martin.v.loewis | 2007-09-05 08:39:17 +0200 (Wed, 05 Sep 2007) | 3 lines
Patch #1105: Explain that one needs to build the solution
to get dependencies right.
........
r57987 | armin.rigo | 2007-09-05 09:51:21 +0200 (Wed, 05 Sep 2007) | 4 lines
PyDict_GetItem() returns a borrowed reference.
There are probably a number of places that are open to attacks
such as the following one, in bltinmodule.c:min_max().
........
r57991 | martin.v.loewis | 2007-09-05 13:47:34 +0200 (Wed, 05 Sep 2007) | 3 lines
Patch #786737: Allow building in a tree of symlinks pointing to
a readonly source.
........
r57993 | georg.brandl | 2007-09-05 15:36:44 +0200 (Wed, 05 Sep 2007) | 2 lines
Backport from Py3k: Bug #1684991: explain lookup semantics for __special__ methods (new-style classes only).
........
r58004 | armin.rigo | 2007-09-06 10:30:51 +0200 (Thu, 06 Sep 2007) | 4 lines
Patch #1733973 by peaker:
ptrace_enter_call() assumes no exception is currently set.
This assumption is broken when throwing into a generator.
........
r58006 | armin.rigo | 2007-09-06 11:30:38 +0200 (Thu, 06 Sep 2007) | 4 lines
PyDict_GetItem() returns a borrowed reference.
This attack is against ceval.c:IMPORT_NAME, which calls an
object (__builtin__.__import__) without holding a reference to it.
........
r58013 | georg.brandl | 2007-09-06 16:49:56 +0200 (Thu, 06 Sep 2007) | 2 lines
Backport from 3k: #1116: fix reference to old filename.
........
r58021 | thomas.heller | 2007-09-06 22:26:20 +0200 (Thu, 06 Sep 2007) | 1 line
Fix typo: c_float represents to C float type.
........
r58022 | skip.montanaro | 2007-09-07 00:29:06 +0200 (Fri, 07 Sep 2007) | 3 lines
If this is correct for py3k branch and it's already in the release25-maint
branch, seems like it ought to be on the trunk as well.
........
r58023 | gregory.p.smith | 2007-09-07 00:59:59 +0200 (Fri, 07 Sep 2007) | 4 lines
Apply the fix from Issue1112 to make this test more robust and keep
windows happy.
........
r58031 | brett.cannon | 2007-09-07 05:17:50 +0200 (Fri, 07 Sep 2007) | 4 lines
Make uuid1 and uuid4 tests conditional on whether ctypes can be imported;
implementation of either function depends on ctypes but uuid as a whole does
not.
........
r58032 | brett.cannon | 2007-09-07 06:18:30 +0200 (Fri, 07 Sep 2007) | 6 lines
Fix a crasher where Python code managed to infinitely recurse in C code without
ever going back out to Python code in PyObject_Call(). Required introducing a
static RuntimeError instance so that normalizing an exception there is no
reliance on a recursive call that would put the exception system over the
recursion check itself.
........
r58034 | thomas.heller | 2007-09-07 08:32:17 +0200 (Fri, 07 Sep 2007) | 1 line
Add a 'c_longdouble' type to the ctypes module.
........
r58035 | thomas.heller | 2007-09-07 11:30:40 +0200 (Fri, 07 Sep 2007) | 1 line
Remove unneeded #include.
........
r58036 | thomas.heller | 2007-09-07 11:33:24 +0200 (Fri, 07 Sep 2007) | 6 lines
Backport from py3k branch:
Add a workaround for a strange bug on win64, when _ctypes is compiled
with the SDK compiler. This should fix the failing
Lib\ctypes\test\test_as_parameter.py test.
........
r58037 | georg.brandl | 2007-09-07 16:14:40 +0200 (Fri, 07 Sep 2007) | 2 lines
Fix a wrong indentation for sublists.
........
r58043 | georg.brandl | 2007-09-07 22:10:49 +0200 (Fri, 07 Sep 2007) | 2 lines
#1095: ln -f doesn't work portably, fix in Makefile.
........
r58049 | skip.montanaro | 2007-09-08 02:34:17 +0200 (Sat, 08 Sep 2007) | 1 line
be explicit about the actual location of the missing file
........
2007-09-08 14:39:28 -03:00
|
|
|
optional timeout for the connection. Especially useful for higher-level
|
2007-08-15 11:28:22 -03:00
|
|
|
protocols, it is not normally used directly from application-level code.
|
|
|
|
Passing the optional *timeout* parameter will set the timeout on the socket
|
|
|
|
instance (if it is not given or ``None``, the global default timeout setting is
|
|
|
|
used).
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: getaddrinfo(host, port[, family[, socktype[, proto[, flags]]]])
|
|
|
|
|
|
|
|
Resolves the *host*/*port* argument, into a sequence of 5-tuples that contain
|
|
|
|
all the necessary argument for the sockets manipulation. *host* is a domain
|
|
|
|
name, a string representation of IPv4/v6 address or ``None``. *port* is a string
|
|
|
|
service name (like ``'http'``), a numeric port number or ``None``.
|
|
|
|
|
|
|
|
The rest of the arguments are optional and must be numeric if specified. For
|
|
|
|
*host* and *port*, by passing either an empty string or ``None``, you can pass
|
|
|
|
``NULL`` to the C API. The :func:`getaddrinfo` function returns a list of
|
|
|
|
5-tuples with the following structure:
|
|
|
|
|
|
|
|
``(family, socktype, proto, canonname, sockaddr)``
|
|
|
|
|
|
|
|
*family*, *socktype*, *proto* are all integer and are meant to be passed to the
|
|
|
|
:func:`socket` function. *canonname* is a string representing the canonical name
|
|
|
|
of the *host*. It can be a numeric IPv4/v6 address when :const:`AI_CANONNAME` is
|
|
|
|
specified for a numeric *host*. *sockaddr* is a tuple describing a socket
|
Merged revisions 57221-57391 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r57227 | facundo.batista | 2007-08-20 17:16:21 -0700 (Mon, 20 Aug 2007) | 5 lines
Catch ProtocolError exceptions and include the header information in
test output (to make it easier to debug test failures caused by
problems in the server). [GSoC - Alan McIntyre]
........
r57229 | mark.hammond | 2007-08-20 18:04:47 -0700 (Mon, 20 Aug 2007) | 5 lines
[ 1761786 ] distutils.util.get_platform() return value on 64bit Windows
As discussed on distutils-sig: Allows the generated installer name on
64bit Windows platforms to be different than the name generated for
32bit Windows platforms.
........
r57230 | mark.hammond | 2007-08-20 18:05:16 -0700 (Mon, 20 Aug 2007) | 5 lines
[ 1761786 ] distutils.util.get_platform() return value on 64bit Windows
As discussed on distutils-sig: Allows the generated installer name on
64bit Windows platforms to be different than the name generated for
32bit Windows platforms.
........
r57253 | georg.brandl | 2007-08-20 23:01:18 -0700 (Mon, 20 Aug 2007) | 2 lines
Demand version 2.5.1 since 2.5 has a bug with codecs.open context managers.
........
r57254 | georg.brandl | 2007-08-20 23:03:43 -0700 (Mon, 20 Aug 2007) | 2 lines
Revert accidental checkins from last commit.
........
r57255 | georg.brandl | 2007-08-20 23:07:08 -0700 (Mon, 20 Aug 2007) | 2 lines
Bug #1777160: mention explicitly that e.g. -1**2 is -1.
........
r57256 | georg.brandl | 2007-08-20 23:12:19 -0700 (Mon, 20 Aug 2007) | 3 lines
Bug #1777168: replace operator names "opa"... with "op1"... and mark everything up as literal,
to enhance readability.
........
r57259 | facundo.batista | 2007-08-21 09:57:18 -0700 (Tue, 21 Aug 2007) | 8 lines
Added test for behavior of operations on an unconnected SMTP object,
and tests for NOOP, RSET, and VRFY. Corrected typo in a comment for
testNonnumericPort. Added a check for constructing SMTP objects when
non-numeric ports are included in the host name. Derived a server from
SMTPServer to test various ESMTP/SMTP capabilities. Check that a
second HELO to DebuggingServer returns an error. [GSoC - Alan McIntyre]
........
r57279 | skip.montanaro | 2007-08-22 12:02:16 -0700 (Wed, 22 Aug 2007) | 2 lines
Note that BeOS is unsupported as of Python 2.6.
........
r57280 | skip.montanaro | 2007-08-22 12:05:21 -0700 (Wed, 22 Aug 2007) | 1 line
whoops - need to check in configure as well
........
r57284 | alex.martelli | 2007-08-22 14:14:17 -0700 (Wed, 22 Aug 2007) | 5 lines
Fix compile.c so that it records 0.0 and -0.0 as separate constants in a code
object's co_consts tuple; add a test to show that the previous behavior (where
these two constants were "collapsed" into one) causes serious malfunctioning.
........
r57286 | gregory.p.smith | 2007-08-22 14:32:34 -0700 (Wed, 22 Aug 2007) | 3 lines
stop leaving log.0000001 __db.00* and xxx.db turds in developer
sandboxes when bsddb3 tests are run.
........
r57301 | jeffrey.yasskin | 2007-08-22 16:14:27 -0700 (Wed, 22 Aug 2007) | 3 lines
When setup.py fails to find the necessary bits to build some modules, have it
print a slightly more informative message.
........
r57320 | brett.cannon | 2007-08-23 07:53:17 -0700 (Thu, 23 Aug 2007) | 2 lines
Make test_runpy re-entrant.
........
r57324 | georg.brandl | 2007-08-23 10:54:11 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1768121: fix wrong/missing opcode docs.
........
r57326 | georg.brandl | 2007-08-23 10:57:05 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1766421: "return code" vs. "status code".
........
r57328 | georg.brandl | 2007-08-23 11:08:06 -0700 (Thu, 23 Aug 2007) | 2 lines
Second half of #1752175: #ifdef out references to PyImport_DynLoadFiletab if HAVE_DYNAMIC_LOADING is not defined.
........
r57331 | georg.brandl | 2007-08-23 11:11:33 -0700 (Thu, 23 Aug 2007) | 2 lines
Use try-except-finally in contextlib.
........
r57343 | georg.brandl | 2007-08-23 13:35:00 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1697820: document that the old slice protocol is still used by builtin types.
........
r57345 | georg.brandl | 2007-08-23 13:40:01 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1573854: fix docs for sqlite3 cursor rowcount attr.
........
r57347 | georg.brandl | 2007-08-23 13:50:23 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1694833: fix imp.find_module() docs wrt. packages.
........
r57348 | georg.brandl | 2007-08-23 13:53:28 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1594966: fix misleading usage example
........
r57349 | georg.brandl | 2007-08-23 13:55:44 -0700 (Thu, 23 Aug 2007) | 2 lines
Clarify wording a bit.
........
r57351 | georg.brandl | 2007-08-23 14:18:44 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1752332: httplib no longer uses socket.getaddrinfo().
........
r57352 | georg.brandl | 2007-08-23 14:21:36 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1734111: document struct.Struct.size.
........
r57353 | georg.brandl | 2007-08-23 14:27:57 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1688564: document os.path.join's absolute path behavior in the docstring.
........
r57354 | georg.brandl | 2007-08-23 14:36:05 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1625381: clarify match vs search introduction.
........
r57355 | georg.brandl | 2007-08-23 14:42:54 -0700 (Thu, 23 Aug 2007) | 2 lines
Bug #1758696: more info about descriptors.
........
r57357 | georg.brandl | 2007-08-23 14:55:57 -0700 (Thu, 23 Aug 2007) | 2 lines
Patch #1779550: remove redundant code in logging.
........
r57378 | gregory.p.smith | 2007-08-23 22:11:38 -0700 (Thu, 23 Aug 2007) | 2 lines
Fix bug 1725856.
........
r57382 | georg.brandl | 2007-08-23 23:10:01 -0700 (Thu, 23 Aug 2007) | 2 lines
uuid creation is now threadsafe, backport from py3k rev. 57375.
........
r57389 | georg.brandl | 2007-08-24 04:47:37 -0700 (Fri, 24 Aug 2007) | 2 lines
Bug #1765375: fix stripping of unwanted LDFLAGS.
........
r57391 | guido.van.rossum | 2007-08-24 07:53:14 -0700 (Fri, 24 Aug 2007) | 2 lines
Fix silly typo in test name.
........
2007-08-24 13:32:05 -03:00
|
|
|
address, as described above. See the source for :mod:`socket` and other
|
2007-08-15 11:28:22 -03:00
|
|
|
library modules for a typical usage of the function.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: getfqdn([name])
|
|
|
|
|
|
|
|
Return a fully qualified domain name for *name*. If *name* is omitted or empty,
|
|
|
|
it is interpreted as the local host. To find the fully qualified name, the
|
|
|
|
hostname returned by :func:`gethostbyaddr` is checked, then aliases for the
|
|
|
|
host, if available. The first name which includes a period is selected. In
|
|
|
|
case no fully qualified domain name is available, the hostname as returned by
|
|
|
|
:func:`gethostname` is returned.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: gethostbyname(hostname)
|
|
|
|
|
|
|
|
Translate a host name to IPv4 address format. The IPv4 address is returned as a
|
|
|
|
string, such as ``'100.50.200.5'``. If the host name is an IPv4 address itself
|
|
|
|
it is returned unchanged. See :func:`gethostbyname_ex` for a more complete
|
|
|
|
interface. :func:`gethostbyname` does not support IPv6 name resolution, and
|
|
|
|
:func:`getaddrinfo` should be used instead for IPv4/v6 dual stack support.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: gethostbyname_ex(hostname)
|
|
|
|
|
|
|
|
Translate a host name to IPv4 address format, extended interface. Return a
|
|
|
|
triple ``(hostname, aliaslist, ipaddrlist)`` where *hostname* is the primary
|
|
|
|
host name responding to the given *ip_address*, *aliaslist* is a (possibly
|
|
|
|
empty) list of alternative host names for the same address, and *ipaddrlist* is
|
|
|
|
a list of IPv4 addresses for the same interface on the same host (often but not
|
|
|
|
always a single address). :func:`gethostbyname_ex` does not support IPv6 name
|
|
|
|
resolution, and :func:`getaddrinfo` should be used instead for IPv4/v6 dual
|
|
|
|
stack support.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: gethostname()
|
|
|
|
|
|
|
|
Return a string containing the hostname of the machine where the Python
|
|
|
|
interpreter is currently executing. If you want to know the current machine's IP
|
|
|
|
address, you may want to use ``gethostbyname(gethostname())``. This operation
|
|
|
|
assumes that there is a valid address-to-host mapping for the host, and the
|
|
|
|
assumption does not always hold. Note: :func:`gethostname` doesn't always return
|
|
|
|
the fully qualified domain name; use ``getfqdn()`` (see above).
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: gethostbyaddr(ip_address)
|
|
|
|
|
|
|
|
Return a triple ``(hostname, aliaslist, ipaddrlist)`` where *hostname* is the
|
|
|
|
primary host name responding to the given *ip_address*, *aliaslist* is a
|
|
|
|
(possibly empty) list of alternative host names for the same address, and
|
|
|
|
*ipaddrlist* is a list of IPv4/v6 addresses for the same interface on the same
|
|
|
|
host (most likely containing only a single address). To find the fully qualified
|
|
|
|
domain name, use the function :func:`getfqdn`. :func:`gethostbyaddr` supports
|
|
|
|
both IPv4 and IPv6.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: getnameinfo(sockaddr, flags)
|
|
|
|
|
|
|
|
Translate a socket address *sockaddr* into a 2-tuple ``(host, port)``. Depending
|
|
|
|
on the settings of *flags*, the result can contain a fully-qualified domain name
|
|
|
|
or numeric address representation in *host*. Similarly, *port* can contain a
|
|
|
|
string port name or a numeric port number.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: getprotobyname(protocolname)
|
|
|
|
|
|
|
|
Translate an Internet protocol name (for example, ``'icmp'``) to a constant
|
|
|
|
suitable for passing as the (optional) third argument to the :func:`socket`
|
|
|
|
function. This is usually only needed for sockets opened in "raw" mode
|
|
|
|
(:const:`SOCK_RAW`); for the normal socket modes, the correct protocol is chosen
|
|
|
|
automatically if the protocol is omitted or zero.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: getservbyname(servicename[, protocolname])
|
|
|
|
|
|
|
|
Translate an Internet service name and protocol name to a port number for that
|
|
|
|
service. The optional protocol name, if given, should be ``'tcp'`` or
|
|
|
|
``'udp'``, otherwise any protocol will match.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: getservbyport(port[, protocolname])
|
|
|
|
|
|
|
|
Translate an Internet port number and protocol name to a service name for that
|
|
|
|
service. The optional protocol name, if given, should be ``'tcp'`` or
|
|
|
|
``'udp'``, otherwise any protocol will match.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: socket([family[, type[, proto]]])
|
|
|
|
|
|
|
|
Create a new socket using the given address family, socket type and protocol
|
|
|
|
number. The address family should be :const:`AF_INET` (the default),
|
|
|
|
:const:`AF_INET6` or :const:`AF_UNIX`. The socket type should be
|
|
|
|
:const:`SOCK_STREAM` (the default), :const:`SOCK_DGRAM` or perhaps one of the
|
|
|
|
other ``SOCK_`` constants. The protocol number is usually zero and may be
|
|
|
|
omitted in that case.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: socketpair([family[, type[, proto]]])
|
|
|
|
|
|
|
|
Build a pair of connected socket objects using the given address family, socket
|
|
|
|
type, and protocol number. Address family, socket type, and protocol number are
|
|
|
|
as for the :func:`socket` function above. The default family is :const:`AF_UNIX`
|
|
|
|
if defined on the platform; otherwise, the default is :const:`AF_INET`.
|
|
|
|
Availability: Unix.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: fromfd(fd, family, type[, proto])
|
|
|
|
|
|
|
|
Duplicate the file descriptor *fd* (an integer as returned by a file object's
|
|
|
|
:meth:`fileno` method) and build a socket object from the result. Address
|
|
|
|
family, socket type and protocol number are as for the :func:`socket` function
|
|
|
|
above. The file descriptor should refer to a socket, but this is not checked ---
|
|
|
|
subsequent operations on the object may fail if the file descriptor is invalid.
|
|
|
|
This function is rarely needed, but can be used to get or set socket options on
|
|
|
|
a socket passed to a program as standard input or output (such as a server
|
|
|
|
started by the Unix inet daemon). The socket is assumed to be in blocking mode.
|
|
|
|
Availability: Unix.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: ntohl(x)
|
|
|
|
|
|
|
|
Convert 32-bit positive integers from network to host byte order. On machines
|
|
|
|
where the host byte order is the same as network byte order, this is a no-op;
|
|
|
|
otherwise, it performs a 4-byte swap operation.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: ntohs(x)
|
|
|
|
|
|
|
|
Convert 16-bit positive integers from network to host byte order. On machines
|
|
|
|
where the host byte order is the same as network byte order, this is a no-op;
|
|
|
|
otherwise, it performs a 2-byte swap operation.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: htonl(x)
|
|
|
|
|
|
|
|
Convert 32-bit positive integers from host to network byte order. On machines
|
|
|
|
where the host byte order is the same as network byte order, this is a no-op;
|
|
|
|
otherwise, it performs a 4-byte swap operation.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: htons(x)
|
|
|
|
|
|
|
|
Convert 16-bit positive integers from host to network byte order. On machines
|
|
|
|
where the host byte order is the same as network byte order, this is a no-op;
|
|
|
|
otherwise, it performs a 2-byte swap operation.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: inet_aton(ip_string)
|
|
|
|
|
|
|
|
Convert an IPv4 address from dotted-quad string format (for example,
|
|
|
|
'123.45.67.89') to 32-bit packed binary format, as a string four characters in
|
|
|
|
length. This is useful when conversing with a program that uses the standard C
|
|
|
|
library and needs objects of type :ctype:`struct in_addr`, which is the C type
|
|
|
|
for the 32-bit packed binary this function returns.
|
|
|
|
|
|
|
|
If the IPv4 address string passed to this function is invalid,
|
|
|
|
:exc:`socket.error` will be raised. Note that exactly what is valid depends on
|
|
|
|
the underlying C implementation of :cfunc:`inet_aton`.
|
|
|
|
|
|
|
|
:func:`inet_aton` does not support IPv6, and :func:`getnameinfo` should be used
|
|
|
|
instead for IPv4/v6 dual stack support.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: inet_ntoa(packed_ip)
|
|
|
|
|
|
|
|
Convert a 32-bit packed IPv4 address (a string four characters in length) to its
|
|
|
|
standard dotted-quad string representation (for example, '123.45.67.89'). This
|
|
|
|
is useful when conversing with a program that uses the standard C library and
|
|
|
|
needs objects of type :ctype:`struct in_addr`, which is the C type for the
|
|
|
|
32-bit packed binary data this function takes as an argument.
|
|
|
|
|
|
|
|
If the string passed to this function is not exactly 4 bytes in length,
|
|
|
|
:exc:`socket.error` will be raised. :func:`inet_ntoa` does not support IPv6, and
|
|
|
|
:func:`getnameinfo` should be used instead for IPv4/v6 dual stack support.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: inet_pton(address_family, ip_string)
|
|
|
|
|
|
|
|
Convert an IP address from its family-specific string format to a packed, binary
|
|
|
|
format. :func:`inet_pton` is useful when a library or network protocol calls for
|
|
|
|
an object of type :ctype:`struct in_addr` (similar to :func:`inet_aton`) or
|
|
|
|
:ctype:`struct in6_addr`.
|
|
|
|
|
|
|
|
Supported values for *address_family* are currently :const:`AF_INET` and
|
|
|
|
:const:`AF_INET6`. If the IP address string *ip_string* is invalid,
|
|
|
|
:exc:`socket.error` will be raised. Note that exactly what is valid depends on
|
|
|
|
both the value of *address_family* and the underlying implementation of
|
|
|
|
:cfunc:`inet_pton`.
|
|
|
|
|
|
|
|
Availability: Unix (maybe not all platforms).
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: inet_ntop(address_family, packed_ip)
|
|
|
|
|
|
|
|
Convert a packed IP address (a string of some number of characters) to its
|
|
|
|
standard, family-specific string representation (for example, ``'7.10.0.5'`` or
|
|
|
|
``'5aef:2b::8'``) :func:`inet_ntop` is useful when a library or network protocol
|
|
|
|
returns an object of type :ctype:`struct in_addr` (similar to :func:`inet_ntoa`)
|
|
|
|
or :ctype:`struct in6_addr`.
|
|
|
|
|
|
|
|
Supported values for *address_family* are currently :const:`AF_INET` and
|
|
|
|
:const:`AF_INET6`. If the string *packed_ip* is not the correct length for the
|
|
|
|
specified address family, :exc:`ValueError` will be raised. A
|
|
|
|
:exc:`socket.error` is raised for errors from the call to :func:`inet_ntop`.
|
|
|
|
|
|
|
|
Availability: Unix (maybe not all platforms).
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: getdefaulttimeout()
|
|
|
|
|
|
|
|
Return the default timeout in floating seconds for new socket objects. A value
|
|
|
|
of ``None`` indicates that new socket objects have no timeout. When the socket
|
|
|
|
module is first imported, the default is ``None``.
|
|
|
|
|
|
|
|
|
|
|
|
.. function:: setdefaulttimeout(timeout)
|
|
|
|
|
|
|
|
Set the default timeout in floating seconds for new socket objects. A value of
|
|
|
|
``None`` indicates that new socket objects have no timeout. When the socket
|
|
|
|
module is first imported, the default is ``None``.
|
|
|
|
|
|
|
|
|
|
|
|
.. data:: SocketType
|
|
|
|
|
|
|
|
This is a Python type object that represents the socket object type. It is the
|
|
|
|
same as ``type(socket(...))``.
|
|
|
|
|
|
|
|
|
|
|
|
.. seealso::
|
|
|
|
|
|
|
|
Module :mod:`SocketServer`
|
|
|
|
Classes that simplify writing network servers.
|
|
|
|
|
|
|
|
|
|
|
|
.. _socket-objects:
|
|
|
|
|
|
|
|
Socket Objects
|
|
|
|
--------------
|
|
|
|
|
|
|
|
Socket objects have the following methods. Except for :meth:`makefile` these
|
|
|
|
correspond to Unix system calls applicable to sockets.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.accept()
|
|
|
|
|
|
|
|
Accept a connection. The socket must be bound to an address and listening for
|
|
|
|
connections. The return value is a pair ``(conn, address)`` where *conn* is a
|
|
|
|
*new* socket object usable to send and receive data on the connection, and
|
|
|
|
*address* is the address bound to the socket on the other end of the connection.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.bind(address)
|
|
|
|
|
|
|
|
Bind the socket to *address*. The socket must not already be bound. (The format
|
|
|
|
of *address* depends on the address family --- see above.)
|
|
|
|
|
|
|
|
.. note::
|
|
|
|
|
|
|
|
This method has historically accepted a pair of parameters for :const:`AF_INET`
|
|
|
|
addresses instead of only a tuple. This was never intentional and is no longer
|
|
|
|
available in Python 2.0 and later.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.close()
|
|
|
|
|
|
|
|
Close the socket. All future operations on the socket object will fail. The
|
|
|
|
remote end will receive no more data (after queued data is flushed). Sockets are
|
|
|
|
automatically closed when they are garbage-collected.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.connect(address)
|
|
|
|
|
|
|
|
Connect to a remote socket at *address*. (The format of *address* depends on the
|
|
|
|
address family --- see above.)
|
|
|
|
|
|
|
|
.. note::
|
|
|
|
|
|
|
|
This method has historically accepted a pair of parameters for :const:`AF_INET`
|
|
|
|
addresses instead of only a tuple. This was never intentional and is no longer
|
|
|
|
available in Python 2.0 and later.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.connect_ex(address)
|
|
|
|
|
|
|
|
Like ``connect(address)``, but return an error indicator instead of raising an
|
|
|
|
exception for errors returned by the C-level :cfunc:`connect` call (other
|
|
|
|
problems, such as "host not found," can still raise exceptions). The error
|
|
|
|
indicator is ``0`` if the operation succeeded, otherwise the value of the
|
|
|
|
:cdata:`errno` variable. This is useful to support, for example, asynchronous
|
|
|
|
connects.
|
|
|
|
|
|
|
|
.. note::
|
|
|
|
|
|
|
|
This method has historically accepted a pair of parameters for :const:`AF_INET`
|
|
|
|
addresses instead of only a tuple. This was never intentional and is no longer
|
|
|
|
available in Python 2.0 and later.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.fileno()
|
|
|
|
|
|
|
|
Return the socket's file descriptor (a small integer). This is useful with
|
|
|
|
:func:`select.select`.
|
|
|
|
|
|
|
|
Under Windows the small integer returned by this method cannot be used where a
|
|
|
|
file descriptor can be used (such as :func:`os.fdopen`). Unix does not have
|
|
|
|
this limitation.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.getpeername()
|
|
|
|
|
|
|
|
Return the remote address to which the socket is connected. This is useful to
|
|
|
|
find out the port number of a remote IPv4/v6 socket, for instance. (The format
|
|
|
|
of the address returned depends on the address family --- see above.) On some
|
|
|
|
systems this function is not supported.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.getsockname()
|
|
|
|
|
|
|
|
Return the socket's own address. This is useful to find out the port number of
|
|
|
|
an IPv4/v6 socket, for instance. (The format of the address returned depends on
|
|
|
|
the address family --- see above.)
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.getsockopt(level, optname[, buflen])
|
|
|
|
|
|
|
|
Return the value of the given socket option (see the Unix man page
|
|
|
|
:manpage:`getsockopt(2)`). The needed symbolic constants (:const:`SO_\*` etc.)
|
|
|
|
are defined in this module. If *buflen* is absent, an integer option is assumed
|
|
|
|
and its integer value is returned by the function. If *buflen* is present, it
|
|
|
|
specifies the maximum length of the buffer used to receive the option in, and
|
|
|
|
this buffer is returned as a string. It is up to the caller to decode the
|
|
|
|
contents of the buffer (see the optional built-in module :mod:`struct` for a way
|
|
|
|
to decode C structures encoded as strings).
|
|
|
|
|
Merged revisions 59703-59773 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r59704 | christian.heimes | 2008-01-04 04:15:05 +0100 (Fri, 04 Jan 2008) | 1 line
Moved include "Python.h" in front of other imports to silence a warning.
........
r59706 | raymond.hettinger | 2008-01-04 04:22:53 +0100 (Fri, 04 Jan 2008) | 10 lines
Minor fix-ups to named tuples:
* Make the _replace() method respect subclassing.
* Using property() to make _fields read-only wasn't a good idea.
It caused len(Point._fields) to fail.
* Add note to _cast() about length checking and alternative with the star-operator.
........
r59707 | jeffrey.yasskin | 2008-01-04 09:01:23 +0100 (Fri, 04 Jan 2008) | 3 lines
Make math.{floor,ceil}({int,long}) return float again for backwards
compatibility after r59671 made them return integral types.
........
r59709 | christian.heimes | 2008-01-04 14:21:07 +0100 (Fri, 04 Jan 2008) | 1 line
Bug #1713: posixpath.ismount() claims symlink to a mountpoint is a mountpoint.
........
r59712 | lars.gustaebel | 2008-01-04 15:00:33 +0100 (Fri, 04 Jan 2008) | 5 lines
Issue #1735: TarFile.extractall() now correctly sets
directory permissions and times.
(will backport to 2.5)
........
r59714 | andrew.kuchling | 2008-01-04 15:47:17 +0100 (Fri, 04 Jan 2008) | 1 line
Update links to bug/patch tracker
........
r59716 | christian.heimes | 2008-01-04 16:23:30 +0100 (Fri, 04 Jan 2008) | 1 line
Added interface to Windows' WSAIoctl and a simple example for a network sniffer.
........
r59717 | christian.heimes | 2008-01-04 16:29:00 +0100 (Fri, 04 Jan 2008) | 1 line
And here is the rest of Hirokazu Yamamoto's patch for VS6.0 support. Thanks Hiro!
........
r59719 | christian.heimes | 2008-01-04 16:34:06 +0100 (Fri, 04 Jan 2008) | 1 line
Reverted last transaction. It's the wrong branch.
........
r59721 | christian.heimes | 2008-01-04 16:48:06 +0100 (Fri, 04 Jan 2008) | 1 line
socket.ioctl is only available on Windows
........
r59722 | andrew.kuchling | 2008-01-04 19:24:41 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59723 | andrew.kuchling | 2008-01-04 19:25:05 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59725 | guido.van.rossum | 2008-01-05 01:59:59 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1725 by Mark Dickinson, fixes incorrect conversion of -1e1000
and adds errors for -0x.
........
r59726 | guido.van.rossum | 2008-01-05 02:21:57 +0100 (Sat, 05 Jan 2008) | 2 lines
Patch #1698 by Senthil: allow '@' in username when parsed by urlparse.py.
........
r59727 | raymond.hettinger | 2008-01-05 02:35:43 +0100 (Sat, 05 Jan 2008) | 1 line
Improve namedtuple's _cast() method with a docstring, new name, and error-checking.
........
r59728 | raymond.hettinger | 2008-01-05 03:17:24 +0100 (Sat, 05 Jan 2008) | 1 line
Add error-checking to namedtuple's _replace() method.
........
r59730 | fred.drake | 2008-01-05 05:38:38 +0100 (Sat, 05 Jan 2008) | 2 lines
clean up a comment
........
r59731 | jeffrey.yasskin | 2008-01-05 09:47:13 +0100 (Sat, 05 Jan 2008) | 11 lines
Continue rolling back pep-3141 changes that changed behavior from 2.5. This
round included:
* Revert round to its 2.6 behavior (half away from 0).
* Because round, floor, and ceil always return float again, it's no
longer necessary to have them delegate to __xxx___, so I've ripped
that out of their implementations and the Real ABC. This also helps
in implementing types that work in both 2.6 and 3.0: you return int
from the __xxx__ methods, and let it get enabled by the version
upgrade.
* Make pow(-1, .5) raise a ValueError again.
........
r59736 | andrew.kuchling | 2008-01-05 16:13:49 +0100 (Sat, 05 Jan 2008) | 1 line
Fix comment typo
........
r59738 | thomas.heller | 2008-01-05 18:15:44 +0100 (Sat, 05 Jan 2008) | 1 line
Add myself.
........
r59739 | georg.brandl | 2008-01-05 18:49:17 +0100 (Sat, 05 Jan 2008) | 2 lines
Fix C++-style comment.
........
r59742 | georg.brandl | 2008-01-05 20:28:16 +0100 (Sat, 05 Jan 2008) | 2 lines
Remove with_statement future imports from 2.6 docs.
........
r59743 | georg.brandl | 2008-01-05 20:29:45 +0100 (Sat, 05 Jan 2008) | 2 lines
Simplify index entries; fix #1712.
........
r59744 | georg.brandl | 2008-01-05 20:44:22 +0100 (Sat, 05 Jan 2008) | 2 lines
Doc patch #1730 from Robin Stocker; minor corrections mostly to os.rst.
........
r59749 | georg.brandl | 2008-01-05 21:29:13 +0100 (Sat, 05 Jan 2008) | 2 lines
Revert socket.rst to unix-eol.
........
r59750 | georg.brandl | 2008-01-05 21:33:46 +0100 (Sat, 05 Jan 2008) | 2 lines
Set native svn:eol-style property for text files.
........
r59752 | georg.brandl | 2008-01-05 21:46:29 +0100 (Sat, 05 Jan 2008) | 2 lines
#1719: capitalization error in "UuidCreate".
........
r59753 | georg.brandl | 2008-01-05 22:02:25 +0100 (Sat, 05 Jan 2008) | 2 lines
Repair markup.
........
r59754 | georg.brandl | 2008-01-05 22:10:50 +0100 (Sat, 05 Jan 2008) | 2 lines
Use markup.
........
r59757 | christian.heimes | 2008-01-05 22:35:52 +0100 (Sat, 05 Jan 2008) | 1 line
Final adjustments for #1601
........
r59758 | guido.van.rossum | 2008-01-05 23:19:06 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1637: fix urlparse for URLs like 'http://x.com?arg=/foo'.
Fix by John Nagle.
........
r59759 | guido.van.rossum | 2008-01-05 23:20:01 +0100 (Sat, 05 Jan 2008) | 2 lines
Add John Nagle (of issue #1637).
........
r59765 | raymond.hettinger | 2008-01-06 10:02:24 +0100 (Sun, 06 Jan 2008) | 1 line
Small code simplification. Forgot that classmethods can be called from intances.
........
r59766 | martin.v.loewis | 2008-01-06 11:09:48 +0100 (Sun, 06 Jan 2008) | 2 lines
Use vcbuild for VS 2009.
........
r59767 | martin.v.loewis | 2008-01-06 12:03:43 +0100 (Sun, 06 Jan 2008) | 2 lines
Package using VS 2008.
........
r59768 | martin.v.loewis | 2008-01-06 12:13:16 +0100 (Sun, 06 Jan 2008) | 2 lines
Don't try to package msvcr90 for the moment.
........
r59769 | georg.brandl | 2008-01-06 15:17:36 +0100 (Sun, 06 Jan 2008) | 4 lines
#1696393: don't check for '.' and '..' in ntpath.walk since
they aren't returned from os.listdir anymore.
Reported by Michael Haggerty.
........
r59770 | georg.brandl | 2008-01-06 15:27:15 +0100 (Sun, 06 Jan 2008) | 3 lines
#1742: don't raise exception on os.path.relpath("a", "a"), but return os.curdir.
Reported by Jesse Towner.
........
r59771 | georg.brandl | 2008-01-06 15:33:52 +0100 (Sun, 06 Jan 2008) | 2 lines
#1591: Clarify docstring of Popen3.
........
r59772 | georg.brandl | 2008-01-06 16:30:34 +0100 (Sun, 06 Jan 2008) | 2 lines
#1680: fix context manager example function name.
........
r59773 | georg.brandl | 2008-01-06 16:34:57 +0100 (Sun, 06 Jan 2008) | 2 lines
#1755097: document default values for [].sort() and sorted().
........
2008-01-06 12:59:19 -04:00
|
|
|
|
|
|
|
.. method:: socket.ioctl(control, option)
|
|
|
|
|
|
|
|
:platform: Windows
|
|
|
|
|
Merged revisions 59985-60000,60002,60005-60007,60009-60042 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r59987 | raymond.hettinger | 2008-01-15 21:52:42 +0100 (Tue, 15 Jan 2008) | 1 line
Refactor if/elif chain for clarity and speed. Remove dependency on subclasses having to implement _empty and _full.
........
r59988 | raymond.hettinger | 2008-01-15 22:22:47 +0100 (Tue, 15 Jan 2008) | 1 line
Fix-up half-written paragraph in the docs
........
r59989 | amaury.forgeotdarc | 2008-01-15 22:25:11 +0100 (Tue, 15 Jan 2008) | 3 lines
test_doctest fails since r59984.
Not sure if these are the correct values, but save_stdout has to be set before its usage...
........
r59992 | andrew.kuchling | 2008-01-16 01:32:03 +0100 (Wed, 16 Jan 2008) | 1 line
Docstring typos
........
r59993 | andrew.kuchling | 2008-01-16 04:17:25 +0100 (Wed, 16 Jan 2008) | 1 line
Add PEP 3141 section
........
r59998 | andrew.kuchling | 2008-01-16 14:01:51 +0100 (Wed, 16 Jan 2008) | 1 line
Markup fix
........
r59999 | georg.brandl | 2008-01-16 17:56:29 +0100 (Wed, 16 Jan 2008) | 2 lines
Fix MSDN library URL. (#1854)
........
r60006 | georg.brandl | 2008-01-16 21:27:56 +0100 (Wed, 16 Jan 2008) | 3 lines
Add Python-specific content to Doc dir. Update configuration file
to work with the newest Sphinx.
........
r60007 | georg.brandl | 2008-01-16 21:29:00 +0100 (Wed, 16 Jan 2008) | 2 lines
Doc build should work with 2.4 now.
........
r60009 | raymond.hettinger | 2008-01-17 00:38:16 +0100 (Thu, 17 Jan 2008) | 1 line
Minor wordsmithing.
........
r60010 | raymond.hettinger | 2008-01-17 00:40:45 +0100 (Thu, 17 Jan 2008) | 1 line
Add queues will alternative fetch orders (priority based and stack based).
........
r60011 | raymond.hettinger | 2008-01-17 00:49:35 +0100 (Thu, 17 Jan 2008) | 1 line
Add news entry.
........
r60013 | raymond.hettinger | 2008-01-17 04:02:14 +0100 (Thu, 17 Jan 2008) | 1 line
Make starmap() match its pure python definition and accept any itertable input (not just tuples).
........
r60015 | gregory.p.smith | 2008-01-17 08:43:20 +0100 (Thu, 17 Jan 2008) | 3 lines
Comply with RFC 3207.
Fixes issue 829951 - http://bugs.python.org/issue829951
........
r60018 | gregory.p.smith | 2008-01-17 09:03:17 +0100 (Thu, 17 Jan 2008) | 2 lines
entry for r60015
........
r60019 | raymond.hettinger | 2008-01-17 09:07:05 +0100 (Thu, 17 Jan 2008) | 1 line
Note versionadded.
........
r60020 | gregory.p.smith | 2008-01-17 09:35:49 +0100 (Thu, 17 Jan 2008) | 8 lines
Fixes (accepts patch) issue1339 - http://bugs.python.org/issue1339
- Factor out the duplication of EHLO/HELO in login() and sendmail() to
a new function, ehlo_or_helo_if_needed().
- Use ehlo_or_helo_if_needed() in starttls()
- Check for the starttls exception in starttls() in the same way as
login() checks for the auth extension.
Contributed by Bill Fenner.
........
r60021 | andrew.kuchling | 2008-01-17 13:00:15 +0100 (Thu, 17 Jan 2008) | 1 line
Revise 3141 section a bit; add some Windows items
........
r60022 | brett.cannon | 2008-01-17 19:45:10 +0100 (Thu, 17 Jan 2008) | 2 lines
Fix a function pointer declaration to silence the compiler.
........
r60024 | raymond.hettinger | 2008-01-17 20:31:38 +0100 (Thu, 17 Jan 2008) | 1 line
Issue #1861: Add read-only attribute listing upcoming events in the order they will be run.
........
r60025 | andrew.kuchling | 2008-01-17 20:49:24 +0100 (Thu, 17 Jan 2008) | 1 line
Correction from Jordan Lewis: halfdelay() uses tenths of a second, not milliseconds
........
r60026 | raymond.hettinger | 2008-01-17 23:27:49 +0100 (Thu, 17 Jan 2008) | 1 line
Add advice on choosing between scheduler and threading.Timer().
........
r60028 | christian.heimes | 2008-01-18 00:01:44 +0100 (Fri, 18 Jan 2008) | 2 lines
Updated new property syntax. An elaborate example for subclassing and the getter was missing.
Added comment about VS 2008 and PGO builds.
........
r60029 | raymond.hettinger | 2008-01-18 00:32:01 +0100 (Fri, 18 Jan 2008) | 1 line
Fix-up Timer() example.
........
r60030 | raymond.hettinger | 2008-01-18 00:56:56 +0100 (Fri, 18 Jan 2008) | 1 line
Fix markup
........
r60031 | raymond.hettinger | 2008-01-18 01:10:42 +0100 (Fri, 18 Jan 2008) | 1 line
clearcache() needs to remove the dict as well as clear it.
........
r60033 | andrew.kuchling | 2008-01-18 03:26:16 +0100 (Fri, 18 Jan 2008) | 1 line
Bump verson
........
r60034 | andrew.kuchling | 2008-01-18 03:42:52 +0100 (Fri, 18 Jan 2008) | 1 line
Typo fix
........
r60035 | christian.heimes | 2008-01-18 08:30:20 +0100 (Fri, 18 Jan 2008) | 3 lines
Coverity issue CID #197
var_decl: Declared variable "stm" without initializer
ninit_use_in_call: Using uninitialized value "stm" (field "stm".tm_zone uninitialized) in call to function "mktime"
........
r60036 | christian.heimes | 2008-01-18 08:45:30 +0100 (Fri, 18 Jan 2008) | 11 lines
Coverity issue CID #167
Event alloc_fn: Called allocation function "metacompile" [model]
Event var_assign: Assigned variable "gr" to storage returned from "metacompile"
gr = metacompile(n);
Event pass_arg: Variable "gr" not freed or pointed-to in function "maketables" [model]
g = maketables(gr);
translatelabels(g);
addfirstsets(g);
Event leaked_storage: Returned without freeing storage "gr"
return g;
........
r60038 | christian.heimes | 2008-01-18 09:04:57 +0100 (Fri, 18 Jan 2008) | 3 lines
Coverity issue CID #182
size_error: Allocating 1 bytes to pointer "children", which needs at least 4 bytes
........
r60041 | christian.heimes | 2008-01-18 09:47:59 +0100 (Fri, 18 Jan 2008) | 4 lines
Coverity issue CID #169
local_ptr_assign_local: Assigning address of stack variable "namebuf" to pointer "filename"
out_of_scope: Variable "namebuf" goes out of scope
use_invalid: Used "filename" pointing to out-of-scope variable "namebuf"
........
r60042 | christian.heimes | 2008-01-18 09:53:45 +0100 (Fri, 18 Jan 2008) | 2 lines
Coverity CID #168
leaked_storage: Returned without freeing storage "fp"
........
2008-01-18 05:56:22 -04:00
|
|
|
The :meth:`ioctl` method is a limited interface to the WSAIoctl system
|
Merged revisions 59703-59773 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r59704 | christian.heimes | 2008-01-04 04:15:05 +0100 (Fri, 04 Jan 2008) | 1 line
Moved include "Python.h" in front of other imports to silence a warning.
........
r59706 | raymond.hettinger | 2008-01-04 04:22:53 +0100 (Fri, 04 Jan 2008) | 10 lines
Minor fix-ups to named tuples:
* Make the _replace() method respect subclassing.
* Using property() to make _fields read-only wasn't a good idea.
It caused len(Point._fields) to fail.
* Add note to _cast() about length checking and alternative with the star-operator.
........
r59707 | jeffrey.yasskin | 2008-01-04 09:01:23 +0100 (Fri, 04 Jan 2008) | 3 lines
Make math.{floor,ceil}({int,long}) return float again for backwards
compatibility after r59671 made them return integral types.
........
r59709 | christian.heimes | 2008-01-04 14:21:07 +0100 (Fri, 04 Jan 2008) | 1 line
Bug #1713: posixpath.ismount() claims symlink to a mountpoint is a mountpoint.
........
r59712 | lars.gustaebel | 2008-01-04 15:00:33 +0100 (Fri, 04 Jan 2008) | 5 lines
Issue #1735: TarFile.extractall() now correctly sets
directory permissions and times.
(will backport to 2.5)
........
r59714 | andrew.kuchling | 2008-01-04 15:47:17 +0100 (Fri, 04 Jan 2008) | 1 line
Update links to bug/patch tracker
........
r59716 | christian.heimes | 2008-01-04 16:23:30 +0100 (Fri, 04 Jan 2008) | 1 line
Added interface to Windows' WSAIoctl and a simple example for a network sniffer.
........
r59717 | christian.heimes | 2008-01-04 16:29:00 +0100 (Fri, 04 Jan 2008) | 1 line
And here is the rest of Hirokazu Yamamoto's patch for VS6.0 support. Thanks Hiro!
........
r59719 | christian.heimes | 2008-01-04 16:34:06 +0100 (Fri, 04 Jan 2008) | 1 line
Reverted last transaction. It's the wrong branch.
........
r59721 | christian.heimes | 2008-01-04 16:48:06 +0100 (Fri, 04 Jan 2008) | 1 line
socket.ioctl is only available on Windows
........
r59722 | andrew.kuchling | 2008-01-04 19:24:41 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59723 | andrew.kuchling | 2008-01-04 19:25:05 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59725 | guido.van.rossum | 2008-01-05 01:59:59 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1725 by Mark Dickinson, fixes incorrect conversion of -1e1000
and adds errors for -0x.
........
r59726 | guido.van.rossum | 2008-01-05 02:21:57 +0100 (Sat, 05 Jan 2008) | 2 lines
Patch #1698 by Senthil: allow '@' in username when parsed by urlparse.py.
........
r59727 | raymond.hettinger | 2008-01-05 02:35:43 +0100 (Sat, 05 Jan 2008) | 1 line
Improve namedtuple's _cast() method with a docstring, new name, and error-checking.
........
r59728 | raymond.hettinger | 2008-01-05 03:17:24 +0100 (Sat, 05 Jan 2008) | 1 line
Add error-checking to namedtuple's _replace() method.
........
r59730 | fred.drake | 2008-01-05 05:38:38 +0100 (Sat, 05 Jan 2008) | 2 lines
clean up a comment
........
r59731 | jeffrey.yasskin | 2008-01-05 09:47:13 +0100 (Sat, 05 Jan 2008) | 11 lines
Continue rolling back pep-3141 changes that changed behavior from 2.5. This
round included:
* Revert round to its 2.6 behavior (half away from 0).
* Because round, floor, and ceil always return float again, it's no
longer necessary to have them delegate to __xxx___, so I've ripped
that out of their implementations and the Real ABC. This also helps
in implementing types that work in both 2.6 and 3.0: you return int
from the __xxx__ methods, and let it get enabled by the version
upgrade.
* Make pow(-1, .5) raise a ValueError again.
........
r59736 | andrew.kuchling | 2008-01-05 16:13:49 +0100 (Sat, 05 Jan 2008) | 1 line
Fix comment typo
........
r59738 | thomas.heller | 2008-01-05 18:15:44 +0100 (Sat, 05 Jan 2008) | 1 line
Add myself.
........
r59739 | georg.brandl | 2008-01-05 18:49:17 +0100 (Sat, 05 Jan 2008) | 2 lines
Fix C++-style comment.
........
r59742 | georg.brandl | 2008-01-05 20:28:16 +0100 (Sat, 05 Jan 2008) | 2 lines
Remove with_statement future imports from 2.6 docs.
........
r59743 | georg.brandl | 2008-01-05 20:29:45 +0100 (Sat, 05 Jan 2008) | 2 lines
Simplify index entries; fix #1712.
........
r59744 | georg.brandl | 2008-01-05 20:44:22 +0100 (Sat, 05 Jan 2008) | 2 lines
Doc patch #1730 from Robin Stocker; minor corrections mostly to os.rst.
........
r59749 | georg.brandl | 2008-01-05 21:29:13 +0100 (Sat, 05 Jan 2008) | 2 lines
Revert socket.rst to unix-eol.
........
r59750 | georg.brandl | 2008-01-05 21:33:46 +0100 (Sat, 05 Jan 2008) | 2 lines
Set native svn:eol-style property for text files.
........
r59752 | georg.brandl | 2008-01-05 21:46:29 +0100 (Sat, 05 Jan 2008) | 2 lines
#1719: capitalization error in "UuidCreate".
........
r59753 | georg.brandl | 2008-01-05 22:02:25 +0100 (Sat, 05 Jan 2008) | 2 lines
Repair markup.
........
r59754 | georg.brandl | 2008-01-05 22:10:50 +0100 (Sat, 05 Jan 2008) | 2 lines
Use markup.
........
r59757 | christian.heimes | 2008-01-05 22:35:52 +0100 (Sat, 05 Jan 2008) | 1 line
Final adjustments for #1601
........
r59758 | guido.van.rossum | 2008-01-05 23:19:06 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1637: fix urlparse for URLs like 'http://x.com?arg=/foo'.
Fix by John Nagle.
........
r59759 | guido.van.rossum | 2008-01-05 23:20:01 +0100 (Sat, 05 Jan 2008) | 2 lines
Add John Nagle (of issue #1637).
........
r59765 | raymond.hettinger | 2008-01-06 10:02:24 +0100 (Sun, 06 Jan 2008) | 1 line
Small code simplification. Forgot that classmethods can be called from intances.
........
r59766 | martin.v.loewis | 2008-01-06 11:09:48 +0100 (Sun, 06 Jan 2008) | 2 lines
Use vcbuild for VS 2009.
........
r59767 | martin.v.loewis | 2008-01-06 12:03:43 +0100 (Sun, 06 Jan 2008) | 2 lines
Package using VS 2008.
........
r59768 | martin.v.loewis | 2008-01-06 12:13:16 +0100 (Sun, 06 Jan 2008) | 2 lines
Don't try to package msvcr90 for the moment.
........
r59769 | georg.brandl | 2008-01-06 15:17:36 +0100 (Sun, 06 Jan 2008) | 4 lines
#1696393: don't check for '.' and '..' in ntpath.walk since
they aren't returned from os.listdir anymore.
Reported by Michael Haggerty.
........
r59770 | georg.brandl | 2008-01-06 15:27:15 +0100 (Sun, 06 Jan 2008) | 3 lines
#1742: don't raise exception on os.path.relpath("a", "a"), but return os.curdir.
Reported by Jesse Towner.
........
r59771 | georg.brandl | 2008-01-06 15:33:52 +0100 (Sun, 06 Jan 2008) | 2 lines
#1591: Clarify docstring of Popen3.
........
r59772 | georg.brandl | 2008-01-06 16:30:34 +0100 (Sun, 06 Jan 2008) | 2 lines
#1680: fix context manager example function name.
........
r59773 | georg.brandl | 2008-01-06 16:34:57 +0100 (Sun, 06 Jan 2008) | 2 lines
#1755097: document default values for [].sort() and sorted().
........
2008-01-06 12:59:19 -04:00
|
|
|
interface. Please refer to the MSDN documentation for more information.
|
|
|
|
|
2007-08-15 11:28:22 -03:00
|
|
|
|
|
|
|
.. method:: socket.listen(backlog)
|
|
|
|
|
|
|
|
Listen for connections made to the socket. The *backlog* argument specifies the
|
|
|
|
maximum number of queued connections and should be at least 1; the maximum value
|
|
|
|
is system-dependent (usually 5).
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.makefile([mode[, bufsize]])
|
|
|
|
|
|
|
|
.. index:: single: I/O control; buffering
|
|
|
|
|
|
|
|
Return a :dfn:`file object` associated with the socket. (File objects are
|
|
|
|
described in :ref:`bltin-file-objects`.) The file object
|
|
|
|
references a :cfunc:`dup`\ ped version of the socket file descriptor, so the
|
|
|
|
file object and socket object may be closed or garbage-collected independently.
|
|
|
|
The socket must be in blocking mode (it can not have a timeout). The optional
|
|
|
|
*mode* and *bufsize* arguments are interpreted the same way as by the built-in
|
Merged revisions 59605-59624 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r59606 | georg.brandl | 2007-12-29 11:57:00 +0100 (Sat, 29 Dec 2007) | 2 lines
Some cleanup in the docs.
........
r59611 | martin.v.loewis | 2007-12-29 19:49:21 +0100 (Sat, 29 Dec 2007) | 2 lines
Bug #1699: Define _BSD_SOURCE only on OpenBSD.
........
r59612 | raymond.hettinger | 2007-12-29 23:09:34 +0100 (Sat, 29 Dec 2007) | 1 line
Simpler documentation for itertools.tee(). Should be backported.
........
r59613 | raymond.hettinger | 2007-12-29 23:16:24 +0100 (Sat, 29 Dec 2007) | 1 line
Improve docs for itertools.groupby(). The use of xrange(0) to create a unique object is less obvious than object().
........
r59620 | christian.heimes | 2007-12-31 15:47:07 +0100 (Mon, 31 Dec 2007) | 3 lines
Added wininst-9.0.exe executable for VS 2008
Integrated bdist_wininst into PCBuild9 directory
........
r59621 | christian.heimes | 2007-12-31 15:51:18 +0100 (Mon, 31 Dec 2007) | 1 line
Moved PCbuild directory to PC/VS7.1
........
r59622 | christian.heimes | 2007-12-31 15:59:26 +0100 (Mon, 31 Dec 2007) | 1 line
Fix paths for build bot
........
r59623 | christian.heimes | 2007-12-31 16:02:41 +0100 (Mon, 31 Dec 2007) | 1 line
Fix paths for build bot, part 2
........
r59624 | christian.heimes | 2007-12-31 16:18:55 +0100 (Mon, 31 Dec 2007) | 1 line
Renamed PCBuild9 directory to PCBuild
........
2007-12-31 12:14:33 -04:00
|
|
|
:func:`file` function.
|
2007-08-15 11:28:22 -03:00
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.recv(bufsize[, flags])
|
|
|
|
|
|
|
|
Receive data from the socket. The return value is a string representing the
|
|
|
|
data received. The maximum amount of data to be received at once is specified
|
|
|
|
by *bufsize*. See the Unix manual page :manpage:`recv(2)` for the meaning of
|
|
|
|
the optional argument *flags*; it defaults to zero.
|
|
|
|
|
|
|
|
.. note::
|
|
|
|
|
|
|
|
For best match with hardware and network realities, the value of *bufsize*
|
|
|
|
should be a relatively small power of 2, for example, 4096.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.recvfrom(bufsize[, flags])
|
|
|
|
|
|
|
|
Receive data from the socket. The return value is a pair ``(string, address)``
|
|
|
|
where *string* is a string representing the data received and *address* is the
|
|
|
|
address of the socket sending the data. See the Unix manual page
|
|
|
|
:manpage:`recv(2)` for the meaning of the optional argument *flags*; it defaults
|
|
|
|
to zero. (The format of *address* depends on the address family --- see above.)
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.recvfrom_into(buffer[, nbytes[, flags]])
|
|
|
|
|
|
|
|
Receive data from the socket, writing it into *buffer* instead of creating a
|
|
|
|
new string. The return value is a pair ``(nbytes, address)`` where *nbytes* is
|
|
|
|
the number of bytes received and *address* is the address of the socket sending
|
|
|
|
the data. See the Unix manual page :manpage:`recv(2)` for the meaning of the
|
|
|
|
optional argument *flags*; it defaults to zero. (The format of *address*
|
|
|
|
depends on the address family --- see above.)
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.recv_into(buffer[, nbytes[, flags]])
|
|
|
|
|
|
|
|
Receive up to *nbytes* bytes from the socket, storing the data into a buffer
|
|
|
|
rather than creating a new string. If *nbytes* is not specified (or 0),
|
|
|
|
receive up to the size available in the given buffer. See the Unix manual page
|
|
|
|
:manpage:`recv(2)` for the meaning of the optional argument *flags*; it defaults
|
|
|
|
to zero.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.send(string[, flags])
|
|
|
|
|
|
|
|
Send data to the socket. The socket must be connected to a remote socket. The
|
|
|
|
optional *flags* argument has the same meaning as for :meth:`recv` above.
|
|
|
|
Returns the number of bytes sent. Applications are responsible for checking that
|
|
|
|
all data has been sent; if only some of the data was transmitted, the
|
|
|
|
application needs to attempt delivery of the remaining data.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.sendall(string[, flags])
|
|
|
|
|
|
|
|
Send data to the socket. The socket must be connected to a remote socket. The
|
|
|
|
optional *flags* argument has the same meaning as for :meth:`recv` above.
|
|
|
|
Unlike :meth:`send`, this method continues to send data from *string* until
|
|
|
|
either all data has been sent or an error occurs. ``None`` is returned on
|
|
|
|
success. On error, an exception is raised, and there is no way to determine how
|
|
|
|
much data, if any, was successfully sent.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.sendto(string[, flags], address)
|
|
|
|
|
|
|
|
Send data to the socket. The socket should not be connected to a remote socket,
|
|
|
|
since the destination socket is specified by *address*. The optional *flags*
|
|
|
|
argument has the same meaning as for :meth:`recv` above. Return the number of
|
|
|
|
bytes sent. (The format of *address* depends on the address family --- see
|
|
|
|
above.)
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.setblocking(flag)
|
|
|
|
|
|
|
|
Set blocking or non-blocking mode of the socket: if *flag* is 0, the socket is
|
|
|
|
set to non-blocking, else to blocking mode. Initially all sockets are in
|
|
|
|
blocking mode. In non-blocking mode, if a :meth:`recv` call doesn't find any
|
|
|
|
data, or if a :meth:`send` call can't immediately dispose of the data, a
|
|
|
|
:exc:`error` exception is raised; in blocking mode, the calls block until they
|
|
|
|
can proceed. ``s.setblocking(0)`` is equivalent to ``s.settimeout(0)``;
|
|
|
|
``s.setblocking(1)`` is equivalent to ``s.settimeout(None)``.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.settimeout(value)
|
|
|
|
|
|
|
|
Set a timeout on blocking socket operations. The *value* argument can be a
|
|
|
|
nonnegative float expressing seconds, or ``None``. If a float is given,
|
|
|
|
subsequent socket operations will raise an :exc:`timeout` exception if the
|
|
|
|
timeout period *value* has elapsed before the operation has completed. Setting
|
|
|
|
a timeout of ``None`` disables timeouts on socket operations.
|
|
|
|
``s.settimeout(0.0)`` is equivalent to ``s.setblocking(0)``;
|
|
|
|
``s.settimeout(None)`` is equivalent to ``s.setblocking(1)``.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.gettimeout()
|
|
|
|
|
|
|
|
Return the timeout in floating seconds associated with socket operations, or
|
|
|
|
``None`` if no timeout is set. This reflects the last call to
|
|
|
|
:meth:`setblocking` or :meth:`settimeout`.
|
|
|
|
|
|
|
|
|
|
|
|
Some notes on socket blocking and timeouts: A socket object can be in one of
|
|
|
|
three modes: blocking, non-blocking, or timeout. Sockets are always created in
|
|
|
|
blocking mode. In blocking mode, operations block until complete. In
|
|
|
|
non-blocking mode, operations fail (with an error that is unfortunately
|
|
|
|
system-dependent) if they cannot be completed immediately. In timeout mode,
|
|
|
|
operations fail if they cannot be completed within the timeout specified for the
|
|
|
|
socket. The :meth:`setblocking` method is simply a shorthand for certain
|
|
|
|
:meth:`settimeout` calls.
|
|
|
|
|
|
|
|
Timeout mode internally sets the socket in non-blocking mode. The blocking and
|
|
|
|
timeout modes are shared between file descriptors and socket objects that refer
|
|
|
|
to the same network endpoint. A consequence of this is that file objects
|
|
|
|
returned by the :meth:`makefile` method must only be used when the socket is in
|
|
|
|
blocking mode; in timeout or non-blocking mode file operations that cannot be
|
|
|
|
completed immediately will fail.
|
|
|
|
|
|
|
|
Note that the :meth:`connect` operation is subject to the timeout setting, and
|
|
|
|
in general it is recommended to call :meth:`settimeout` before calling
|
|
|
|
:meth:`connect`.
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.setsockopt(level, optname, value)
|
|
|
|
|
|
|
|
.. index:: module: struct
|
|
|
|
|
|
|
|
Set the value of the given socket option (see the Unix manual page
|
|
|
|
:manpage:`setsockopt(2)`). The needed symbolic constants are defined in the
|
|
|
|
:mod:`socket` module (:const:`SO_\*` etc.). The value can be an integer or a
|
|
|
|
string representing a buffer. In the latter case it is up to the caller to
|
|
|
|
ensure that the string contains the proper bits (see the optional built-in
|
|
|
|
module :mod:`struct` for a way to encode C structures as strings).
|
|
|
|
|
|
|
|
|
|
|
|
.. method:: socket.shutdown(how)
|
|
|
|
|
|
|
|
Shut down one or both halves of the connection. If *how* is :const:`SHUT_RD`,
|
|
|
|
further receives are disallowed. If *how* is :const:`SHUT_WR`, further sends
|
|
|
|
are disallowed. If *how* is :const:`SHUT_RDWR`, further sends and receives are
|
|
|
|
disallowed.
|
|
|
|
|
|
|
|
Note that there are no methods :meth:`read` or :meth:`write`; use :meth:`recv`
|
|
|
|
and :meth:`send` without *flags* argument instead.
|
|
|
|
|
|
|
|
Socket objects also have these (read-only) attributes that correspond to the
|
|
|
|
values given to the :class:`socket` constructor.
|
|
|
|
|
|
|
|
|
|
|
|
.. attribute:: socket.family
|
|
|
|
|
|
|
|
The socket family.
|
|
|
|
|
|
|
|
|
|
|
|
.. attribute:: socket.type
|
|
|
|
|
|
|
|
The socket type.
|
|
|
|
|
|
|
|
|
|
|
|
.. attribute:: socket.proto
|
|
|
|
|
|
|
|
The socket protocol.
|
|
|
|
|
|
|
|
|
|
|
|
.. _socket-example:
|
|
|
|
|
|
|
|
Example
|
|
|
|
-------
|
|
|
|
|
|
|
|
Here are four minimal example programs using the TCP/IP protocol: a server that
|
|
|
|
echoes all data that it receives back (servicing only one client), and a client
|
|
|
|
using it. Note that a server must perform the sequence :func:`socket`,
|
|
|
|
:meth:`bind`, :meth:`listen`, :meth:`accept` (possibly repeating the
|
|
|
|
:meth:`accept` to service more than one client), while a client only needs the
|
|
|
|
sequence :func:`socket`, :meth:`connect`. Also note that the server does not
|
|
|
|
:meth:`send`/:meth:`recv` on the socket it is listening on but on the new
|
|
|
|
socket returned by :meth:`accept`.
|
|
|
|
|
|
|
|
The first two examples support IPv4 only. ::
|
|
|
|
|
|
|
|
# Echo server program
|
|
|
|
import socket
|
|
|
|
|
|
|
|
HOST = '' # Symbolic name meaning the local host
|
|
|
|
PORT = 50007 # Arbitrary non-privileged port
|
|
|
|
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
|
|
s.bind((HOST, PORT))
|
|
|
|
s.listen(1)
|
|
|
|
conn, addr = s.accept()
|
2007-09-04 04:15:32 -03:00
|
|
|
print('Connected by', addr)
|
2007-09-09 21:49:57 -03:00
|
|
|
while True:
|
2007-08-15 11:28:22 -03:00
|
|
|
data = conn.recv(1024)
|
|
|
|
if not data: break
|
|
|
|
conn.send(data)
|
|
|
|
conn.close()
|
|
|
|
|
|
|
|
::
|
|
|
|
|
|
|
|
# Echo client program
|
|
|
|
import socket
|
|
|
|
|
|
|
|
HOST = 'daring.cwi.nl' # The remote host
|
|
|
|
PORT = 50007 # The same port as used by the server
|
|
|
|
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
|
|
|
s.connect((HOST, PORT))
|
|
|
|
s.send('Hello, world')
|
|
|
|
data = s.recv(1024)
|
|
|
|
s.close()
|
2007-09-04 04:15:32 -03:00
|
|
|
print('Received', repr(data))
|
2007-08-15 11:28:22 -03:00
|
|
|
|
|
|
|
The next two examples are identical to the above two, but support both IPv4 and
|
|
|
|
IPv6. The server side will listen to the first address family available (it
|
|
|
|
should listen to both instead). On most of IPv6-ready systems, IPv6 will take
|
|
|
|
precedence and the server may not accept IPv4 traffic. The client side will try
|
|
|
|
to connect to the all addresses returned as a result of the name resolution, and
|
|
|
|
sends traffic to the first one connected successfully. ::
|
|
|
|
|
|
|
|
# Echo server program
|
|
|
|
import socket
|
|
|
|
import sys
|
|
|
|
|
|
|
|
HOST = '' # Symbolic name meaning the local host
|
|
|
|
PORT = 50007 # Arbitrary non-privileged port
|
|
|
|
s = None
|
|
|
|
for res in socket.getaddrinfo(HOST, PORT, socket.AF_UNSPEC, socket.SOCK_STREAM, 0, socket.AI_PASSIVE):
|
|
|
|
af, socktype, proto, canonname, sa = res
|
|
|
|
try:
|
|
|
|
s = socket.socket(af, socktype, proto)
|
|
|
|
except socket.error as msg:
|
|
|
|
s = None
|
|
|
|
continue
|
|
|
|
try:
|
|
|
|
s.bind(sa)
|
|
|
|
s.listen(1)
|
|
|
|
except socket.error as msg:
|
|
|
|
s.close()
|
|
|
|
s = None
|
|
|
|
continue
|
|
|
|
break
|
|
|
|
if s is None:
|
2007-09-04 04:15:32 -03:00
|
|
|
print('could not open socket')
|
2007-08-15 11:28:22 -03:00
|
|
|
sys.exit(1)
|
|
|
|
conn, addr = s.accept()
|
2007-09-04 04:15:32 -03:00
|
|
|
print('Connected by', addr)
|
2007-09-09 21:49:57 -03:00
|
|
|
while True:
|
2007-08-15 11:28:22 -03:00
|
|
|
data = conn.recv(1024)
|
|
|
|
if not data: break
|
|
|
|
conn.send(data)
|
|
|
|
conn.close()
|
|
|
|
|
|
|
|
::
|
|
|
|
|
|
|
|
# Echo client program
|
|
|
|
import socket
|
|
|
|
import sys
|
|
|
|
|
|
|
|
HOST = 'daring.cwi.nl' # The remote host
|
|
|
|
PORT = 50007 # The same port as used by the server
|
|
|
|
s = None
|
|
|
|
for res in socket.getaddrinfo(HOST, PORT, socket.AF_UNSPEC, socket.SOCK_STREAM):
|
|
|
|
af, socktype, proto, canonname, sa = res
|
|
|
|
try:
|
|
|
|
s = socket.socket(af, socktype, proto)
|
|
|
|
except socket.error as msg:
|
|
|
|
s = None
|
|
|
|
continue
|
|
|
|
try:
|
|
|
|
s.connect(sa)
|
|
|
|
except socket.error as msg:
|
|
|
|
s.close()
|
|
|
|
s = None
|
|
|
|
continue
|
|
|
|
break
|
|
|
|
if s is None:
|
2007-09-04 04:15:32 -03:00
|
|
|
print('could not open socket')
|
2007-08-15 11:28:22 -03:00
|
|
|
sys.exit(1)
|
|
|
|
s.send('Hello, world')
|
|
|
|
data = s.recv(1024)
|
|
|
|
s.close()
|
2007-09-04 04:15:32 -03:00
|
|
|
print('Received', repr(data))
|
2007-08-15 11:28:22 -03:00
|
|
|
|
Merged revisions 59703-59773 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r59704 | christian.heimes | 2008-01-04 04:15:05 +0100 (Fri, 04 Jan 2008) | 1 line
Moved include "Python.h" in front of other imports to silence a warning.
........
r59706 | raymond.hettinger | 2008-01-04 04:22:53 +0100 (Fri, 04 Jan 2008) | 10 lines
Minor fix-ups to named tuples:
* Make the _replace() method respect subclassing.
* Using property() to make _fields read-only wasn't a good idea.
It caused len(Point._fields) to fail.
* Add note to _cast() about length checking and alternative with the star-operator.
........
r59707 | jeffrey.yasskin | 2008-01-04 09:01:23 +0100 (Fri, 04 Jan 2008) | 3 lines
Make math.{floor,ceil}({int,long}) return float again for backwards
compatibility after r59671 made them return integral types.
........
r59709 | christian.heimes | 2008-01-04 14:21:07 +0100 (Fri, 04 Jan 2008) | 1 line
Bug #1713: posixpath.ismount() claims symlink to a mountpoint is a mountpoint.
........
r59712 | lars.gustaebel | 2008-01-04 15:00:33 +0100 (Fri, 04 Jan 2008) | 5 lines
Issue #1735: TarFile.extractall() now correctly sets
directory permissions and times.
(will backport to 2.5)
........
r59714 | andrew.kuchling | 2008-01-04 15:47:17 +0100 (Fri, 04 Jan 2008) | 1 line
Update links to bug/patch tracker
........
r59716 | christian.heimes | 2008-01-04 16:23:30 +0100 (Fri, 04 Jan 2008) | 1 line
Added interface to Windows' WSAIoctl and a simple example for a network sniffer.
........
r59717 | christian.heimes | 2008-01-04 16:29:00 +0100 (Fri, 04 Jan 2008) | 1 line
And here is the rest of Hirokazu Yamamoto's patch for VS6.0 support. Thanks Hiro!
........
r59719 | christian.heimes | 2008-01-04 16:34:06 +0100 (Fri, 04 Jan 2008) | 1 line
Reverted last transaction. It's the wrong branch.
........
r59721 | christian.heimes | 2008-01-04 16:48:06 +0100 (Fri, 04 Jan 2008) | 1 line
socket.ioctl is only available on Windows
........
r59722 | andrew.kuchling | 2008-01-04 19:24:41 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59723 | andrew.kuchling | 2008-01-04 19:25:05 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59725 | guido.van.rossum | 2008-01-05 01:59:59 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1725 by Mark Dickinson, fixes incorrect conversion of -1e1000
and adds errors for -0x.
........
r59726 | guido.van.rossum | 2008-01-05 02:21:57 +0100 (Sat, 05 Jan 2008) | 2 lines
Patch #1698 by Senthil: allow '@' in username when parsed by urlparse.py.
........
r59727 | raymond.hettinger | 2008-01-05 02:35:43 +0100 (Sat, 05 Jan 2008) | 1 line
Improve namedtuple's _cast() method with a docstring, new name, and error-checking.
........
r59728 | raymond.hettinger | 2008-01-05 03:17:24 +0100 (Sat, 05 Jan 2008) | 1 line
Add error-checking to namedtuple's _replace() method.
........
r59730 | fred.drake | 2008-01-05 05:38:38 +0100 (Sat, 05 Jan 2008) | 2 lines
clean up a comment
........
r59731 | jeffrey.yasskin | 2008-01-05 09:47:13 +0100 (Sat, 05 Jan 2008) | 11 lines
Continue rolling back pep-3141 changes that changed behavior from 2.5. This
round included:
* Revert round to its 2.6 behavior (half away from 0).
* Because round, floor, and ceil always return float again, it's no
longer necessary to have them delegate to __xxx___, so I've ripped
that out of their implementations and the Real ABC. This also helps
in implementing types that work in both 2.6 and 3.0: you return int
from the __xxx__ methods, and let it get enabled by the version
upgrade.
* Make pow(-1, .5) raise a ValueError again.
........
r59736 | andrew.kuchling | 2008-01-05 16:13:49 +0100 (Sat, 05 Jan 2008) | 1 line
Fix comment typo
........
r59738 | thomas.heller | 2008-01-05 18:15:44 +0100 (Sat, 05 Jan 2008) | 1 line
Add myself.
........
r59739 | georg.brandl | 2008-01-05 18:49:17 +0100 (Sat, 05 Jan 2008) | 2 lines
Fix C++-style comment.
........
r59742 | georg.brandl | 2008-01-05 20:28:16 +0100 (Sat, 05 Jan 2008) | 2 lines
Remove with_statement future imports from 2.6 docs.
........
r59743 | georg.brandl | 2008-01-05 20:29:45 +0100 (Sat, 05 Jan 2008) | 2 lines
Simplify index entries; fix #1712.
........
r59744 | georg.brandl | 2008-01-05 20:44:22 +0100 (Sat, 05 Jan 2008) | 2 lines
Doc patch #1730 from Robin Stocker; minor corrections mostly to os.rst.
........
r59749 | georg.brandl | 2008-01-05 21:29:13 +0100 (Sat, 05 Jan 2008) | 2 lines
Revert socket.rst to unix-eol.
........
r59750 | georg.brandl | 2008-01-05 21:33:46 +0100 (Sat, 05 Jan 2008) | 2 lines
Set native svn:eol-style property for text files.
........
r59752 | georg.brandl | 2008-01-05 21:46:29 +0100 (Sat, 05 Jan 2008) | 2 lines
#1719: capitalization error in "UuidCreate".
........
r59753 | georg.brandl | 2008-01-05 22:02:25 +0100 (Sat, 05 Jan 2008) | 2 lines
Repair markup.
........
r59754 | georg.brandl | 2008-01-05 22:10:50 +0100 (Sat, 05 Jan 2008) | 2 lines
Use markup.
........
r59757 | christian.heimes | 2008-01-05 22:35:52 +0100 (Sat, 05 Jan 2008) | 1 line
Final adjustments for #1601
........
r59758 | guido.van.rossum | 2008-01-05 23:19:06 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1637: fix urlparse for URLs like 'http://x.com?arg=/foo'.
Fix by John Nagle.
........
r59759 | guido.van.rossum | 2008-01-05 23:20:01 +0100 (Sat, 05 Jan 2008) | 2 lines
Add John Nagle (of issue #1637).
........
r59765 | raymond.hettinger | 2008-01-06 10:02:24 +0100 (Sun, 06 Jan 2008) | 1 line
Small code simplification. Forgot that classmethods can be called from intances.
........
r59766 | martin.v.loewis | 2008-01-06 11:09:48 +0100 (Sun, 06 Jan 2008) | 2 lines
Use vcbuild for VS 2009.
........
r59767 | martin.v.loewis | 2008-01-06 12:03:43 +0100 (Sun, 06 Jan 2008) | 2 lines
Package using VS 2008.
........
r59768 | martin.v.loewis | 2008-01-06 12:13:16 +0100 (Sun, 06 Jan 2008) | 2 lines
Don't try to package msvcr90 for the moment.
........
r59769 | georg.brandl | 2008-01-06 15:17:36 +0100 (Sun, 06 Jan 2008) | 4 lines
#1696393: don't check for '.' and '..' in ntpath.walk since
they aren't returned from os.listdir anymore.
Reported by Michael Haggerty.
........
r59770 | georg.brandl | 2008-01-06 15:27:15 +0100 (Sun, 06 Jan 2008) | 3 lines
#1742: don't raise exception on os.path.relpath("a", "a"), but return os.curdir.
Reported by Jesse Towner.
........
r59771 | georg.brandl | 2008-01-06 15:33:52 +0100 (Sun, 06 Jan 2008) | 2 lines
#1591: Clarify docstring of Popen3.
........
r59772 | georg.brandl | 2008-01-06 16:30:34 +0100 (Sun, 06 Jan 2008) | 2 lines
#1680: fix context manager example function name.
........
r59773 | georg.brandl | 2008-01-06 16:34:57 +0100 (Sun, 06 Jan 2008) | 2 lines
#1755097: document default values for [].sort() and sorted().
........
2008-01-06 12:59:19 -04:00
|
|
|
|
|
|
|
The last example shows how to write a very simple network sniffer with raw
|
|
|
|
sockets on Windows. The example requires administrator priviliges to modify
|
|
|
|
the interface::
|
|
|
|
|
|
|
|
import socket
|
|
|
|
|
|
|
|
# the public network interface
|
|
|
|
HOST = socket.gethostbyname(socket.gethostname())
|
|
|
|
|
|
|
|
# create a raw socket and bind it to the public interface
|
|
|
|
s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_IP)
|
|
|
|
s.bind((HOST, 0))
|
|
|
|
|
|
|
|
# Include IP headers
|
|
|
|
s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
|
|
|
|
|
|
|
|
# receive all packages
|
|
|
|
s.ioctl(socket.SIO_RCVALL, socket.RCVALL_ON)
|
|
|
|
|
|
|
|
# receive a package
|
|
|
|
print s.recvfrom(65565)
|
|
|
|
|
Merged revisions 60481,60485,60489-60492,60494-60496,60498-60499,60501-60503,60505-60506,60508-60509,60523-60524,60532,60543,60545,60547-60548,60552,60554,60556-60559,60561-60562,60569,60571-60572,60574,60576-60583,60585-60586,60589,60591,60594-60595,60597-60598,60600-60601,60606-60612,60615,60617,60619-60621,60623-60625,60627-60629,60631,60633,60635,60647,60650,60652,60654,60656,60658-60659,60664-60666,60668-60670,60672,60676,60678,60680-60683,60685-60686,60688,60690,60692-60694,60697-60700,60705-60706,60708,60711,60714,60720,60724-60730,60732,60736,60742,60744,60746,60748,60750-60751,60753,60756-60757,60759-60761,60763-60764,60766,60769-60770,60774-60784,60787-60789,60793,60796,60799-60809,60812-60813,60815-60821,60823-60826,60828-60829,60831-60834,60836,60838-60839,60846-60849,60852-60854,60856-60859,60861-60870,60874-60875,60880-60881,60886,60888-60890,60892,60894-60898,60900-60931,60933-60958 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r60901 | eric.smith | 2008-02-19 14:21:56 +0100 (Tue, 19 Feb 2008) | 1 line
Added PEP 3101.
........
r60907 | georg.brandl | 2008-02-20 20:12:36 +0100 (Wed, 20 Feb 2008) | 2 lines
Fixes contributed by Ori Avtalion.
........
r60909 | eric.smith | 2008-02-21 00:34:22 +0100 (Thu, 21 Feb 2008) | 1 line
Trim leading zeros from a floating point exponent, per C99. See issue 1600. As far as I know, this only affects Windows. Add float type 'n' to PyOS_ascii_formatd (see PEP 3101 for 'n' description).
........
r60910 | eric.smith | 2008-02-21 00:39:28 +0100 (Thu, 21 Feb 2008) | 1 line
Now that PyOS_ascii_formatd supports the 'n' format, simplify the float formatting code to just call it.
........
r60918 | andrew.kuchling | 2008-02-21 15:23:38 +0100 (Thu, 21 Feb 2008) | 2 lines
Close manifest file.
This change doesn't make any difference to CPython, but is a necessary fix for Jython.
........
r60921 | guido.van.rossum | 2008-02-21 18:46:16 +0100 (Thu, 21 Feb 2008) | 2 lines
Remove news about float repr() -- issue 1580 is still in limbo.
........
r60923 | guido.van.rossum | 2008-02-21 19:18:37 +0100 (Thu, 21 Feb 2008) | 5 lines
Removed uses of dict.has_key() from distutils, and uses of
callable() from copy_reg.py, so the interpreter now starts up
without warnings when '-3' is given. More work like this needs to
be done in the rest of the stdlib.
........
r60924 | thomas.heller | 2008-02-21 19:28:48 +0100 (Thu, 21 Feb 2008) | 4 lines
configure.ac: Remove the configure check for _Bool, it is already done in the
top-level Python configure script.
configure, fficonfig.h.in: regenerated.
........
r60925 | thomas.heller | 2008-02-21 19:52:20 +0100 (Thu, 21 Feb 2008) | 3 lines
Replace 'has_key()' with 'in'.
Replace 'raise Error, stuff' with 'raise Error(stuff)'.
........
r60927 | raymond.hettinger | 2008-02-21 20:24:53 +0100 (Thu, 21 Feb 2008) | 1 line
Update more instances of has_key().
........
r60928 | guido.van.rossum | 2008-02-21 20:46:35 +0100 (Thu, 21 Feb 2008) | 3 lines
Fix a few typos and layout glitches (more work is needed).
Move 2.5 news to Misc/HISTORY.
........
r60936 | georg.brandl | 2008-02-21 21:33:38 +0100 (Thu, 21 Feb 2008) | 2 lines
#2079: typo in userdict docs.
........
r60938 | georg.brandl | 2008-02-21 21:38:13 +0100 (Thu, 21 Feb 2008) | 2 lines
Part of #2154: minimal syntax fixes in doc example snippets.
........
r60942 | raymond.hettinger | 2008-02-22 04:16:42 +0100 (Fri, 22 Feb 2008) | 1 line
First draft for itertools.product(). Docs and other updates forthcoming.
........
r60955 | nick.coghlan | 2008-02-22 11:54:06 +0100 (Fri, 22 Feb 2008) | 1 line
Try to make command line error messages from runpy easier to understand (and suppress traceback cruft from the implicitly invoked runpy machinery)
........
r60956 | georg.brandl | 2008-02-22 13:31:45 +0100 (Fri, 22 Feb 2008) | 2 lines
A lot more typo fixes by Ori Avtalion.
........
r60957 | georg.brandl | 2008-02-22 13:56:34 +0100 (Fri, 22 Feb 2008) | 2 lines
Don't reference pyshell.
........
r60958 | georg.brandl | 2008-02-22 13:57:05 +0100 (Fri, 22 Feb 2008) | 2 lines
Another fix.
........
2008-02-22 12:37:40 -04:00
|
|
|
# disabled promiscuous mode
|
Merged revisions 59703-59773 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r59704 | christian.heimes | 2008-01-04 04:15:05 +0100 (Fri, 04 Jan 2008) | 1 line
Moved include "Python.h" in front of other imports to silence a warning.
........
r59706 | raymond.hettinger | 2008-01-04 04:22:53 +0100 (Fri, 04 Jan 2008) | 10 lines
Minor fix-ups to named tuples:
* Make the _replace() method respect subclassing.
* Using property() to make _fields read-only wasn't a good idea.
It caused len(Point._fields) to fail.
* Add note to _cast() about length checking and alternative with the star-operator.
........
r59707 | jeffrey.yasskin | 2008-01-04 09:01:23 +0100 (Fri, 04 Jan 2008) | 3 lines
Make math.{floor,ceil}({int,long}) return float again for backwards
compatibility after r59671 made them return integral types.
........
r59709 | christian.heimes | 2008-01-04 14:21:07 +0100 (Fri, 04 Jan 2008) | 1 line
Bug #1713: posixpath.ismount() claims symlink to a mountpoint is a mountpoint.
........
r59712 | lars.gustaebel | 2008-01-04 15:00:33 +0100 (Fri, 04 Jan 2008) | 5 lines
Issue #1735: TarFile.extractall() now correctly sets
directory permissions and times.
(will backport to 2.5)
........
r59714 | andrew.kuchling | 2008-01-04 15:47:17 +0100 (Fri, 04 Jan 2008) | 1 line
Update links to bug/patch tracker
........
r59716 | christian.heimes | 2008-01-04 16:23:30 +0100 (Fri, 04 Jan 2008) | 1 line
Added interface to Windows' WSAIoctl and a simple example for a network sniffer.
........
r59717 | christian.heimes | 2008-01-04 16:29:00 +0100 (Fri, 04 Jan 2008) | 1 line
And here is the rest of Hirokazu Yamamoto's patch for VS6.0 support. Thanks Hiro!
........
r59719 | christian.heimes | 2008-01-04 16:34:06 +0100 (Fri, 04 Jan 2008) | 1 line
Reverted last transaction. It's the wrong branch.
........
r59721 | christian.heimes | 2008-01-04 16:48:06 +0100 (Fri, 04 Jan 2008) | 1 line
socket.ioctl is only available on Windows
........
r59722 | andrew.kuchling | 2008-01-04 19:24:41 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59723 | andrew.kuchling | 2008-01-04 19:25:05 +0100 (Fri, 04 Jan 2008) | 1 line
Fix markup
........
r59725 | guido.van.rossum | 2008-01-05 01:59:59 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1725 by Mark Dickinson, fixes incorrect conversion of -1e1000
and adds errors for -0x.
........
r59726 | guido.van.rossum | 2008-01-05 02:21:57 +0100 (Sat, 05 Jan 2008) | 2 lines
Patch #1698 by Senthil: allow '@' in username when parsed by urlparse.py.
........
r59727 | raymond.hettinger | 2008-01-05 02:35:43 +0100 (Sat, 05 Jan 2008) | 1 line
Improve namedtuple's _cast() method with a docstring, new name, and error-checking.
........
r59728 | raymond.hettinger | 2008-01-05 03:17:24 +0100 (Sat, 05 Jan 2008) | 1 line
Add error-checking to namedtuple's _replace() method.
........
r59730 | fred.drake | 2008-01-05 05:38:38 +0100 (Sat, 05 Jan 2008) | 2 lines
clean up a comment
........
r59731 | jeffrey.yasskin | 2008-01-05 09:47:13 +0100 (Sat, 05 Jan 2008) | 11 lines
Continue rolling back pep-3141 changes that changed behavior from 2.5. This
round included:
* Revert round to its 2.6 behavior (half away from 0).
* Because round, floor, and ceil always return float again, it's no
longer necessary to have them delegate to __xxx___, so I've ripped
that out of their implementations and the Real ABC. This also helps
in implementing types that work in both 2.6 and 3.0: you return int
from the __xxx__ methods, and let it get enabled by the version
upgrade.
* Make pow(-1, .5) raise a ValueError again.
........
r59736 | andrew.kuchling | 2008-01-05 16:13:49 +0100 (Sat, 05 Jan 2008) | 1 line
Fix comment typo
........
r59738 | thomas.heller | 2008-01-05 18:15:44 +0100 (Sat, 05 Jan 2008) | 1 line
Add myself.
........
r59739 | georg.brandl | 2008-01-05 18:49:17 +0100 (Sat, 05 Jan 2008) | 2 lines
Fix C++-style comment.
........
r59742 | georg.brandl | 2008-01-05 20:28:16 +0100 (Sat, 05 Jan 2008) | 2 lines
Remove with_statement future imports from 2.6 docs.
........
r59743 | georg.brandl | 2008-01-05 20:29:45 +0100 (Sat, 05 Jan 2008) | 2 lines
Simplify index entries; fix #1712.
........
r59744 | georg.brandl | 2008-01-05 20:44:22 +0100 (Sat, 05 Jan 2008) | 2 lines
Doc patch #1730 from Robin Stocker; minor corrections mostly to os.rst.
........
r59749 | georg.brandl | 2008-01-05 21:29:13 +0100 (Sat, 05 Jan 2008) | 2 lines
Revert socket.rst to unix-eol.
........
r59750 | georg.brandl | 2008-01-05 21:33:46 +0100 (Sat, 05 Jan 2008) | 2 lines
Set native svn:eol-style property for text files.
........
r59752 | georg.brandl | 2008-01-05 21:46:29 +0100 (Sat, 05 Jan 2008) | 2 lines
#1719: capitalization error in "UuidCreate".
........
r59753 | georg.brandl | 2008-01-05 22:02:25 +0100 (Sat, 05 Jan 2008) | 2 lines
Repair markup.
........
r59754 | georg.brandl | 2008-01-05 22:10:50 +0100 (Sat, 05 Jan 2008) | 2 lines
Use markup.
........
r59757 | christian.heimes | 2008-01-05 22:35:52 +0100 (Sat, 05 Jan 2008) | 1 line
Final adjustments for #1601
........
r59758 | guido.van.rossum | 2008-01-05 23:19:06 +0100 (Sat, 05 Jan 2008) | 3 lines
Patch #1637: fix urlparse for URLs like 'http://x.com?arg=/foo'.
Fix by John Nagle.
........
r59759 | guido.van.rossum | 2008-01-05 23:20:01 +0100 (Sat, 05 Jan 2008) | 2 lines
Add John Nagle (of issue #1637).
........
r59765 | raymond.hettinger | 2008-01-06 10:02:24 +0100 (Sun, 06 Jan 2008) | 1 line
Small code simplification. Forgot that classmethods can be called from intances.
........
r59766 | martin.v.loewis | 2008-01-06 11:09:48 +0100 (Sun, 06 Jan 2008) | 2 lines
Use vcbuild for VS 2009.
........
r59767 | martin.v.loewis | 2008-01-06 12:03:43 +0100 (Sun, 06 Jan 2008) | 2 lines
Package using VS 2008.
........
r59768 | martin.v.loewis | 2008-01-06 12:13:16 +0100 (Sun, 06 Jan 2008) | 2 lines
Don't try to package msvcr90 for the moment.
........
r59769 | georg.brandl | 2008-01-06 15:17:36 +0100 (Sun, 06 Jan 2008) | 4 lines
#1696393: don't check for '.' and '..' in ntpath.walk since
they aren't returned from os.listdir anymore.
Reported by Michael Haggerty.
........
r59770 | georg.brandl | 2008-01-06 15:27:15 +0100 (Sun, 06 Jan 2008) | 3 lines
#1742: don't raise exception on os.path.relpath("a", "a"), but return os.curdir.
Reported by Jesse Towner.
........
r59771 | georg.brandl | 2008-01-06 15:33:52 +0100 (Sun, 06 Jan 2008) | 2 lines
#1591: Clarify docstring of Popen3.
........
r59772 | georg.brandl | 2008-01-06 16:30:34 +0100 (Sun, 06 Jan 2008) | 2 lines
#1680: fix context manager example function name.
........
r59773 | georg.brandl | 2008-01-06 16:34:57 +0100 (Sun, 06 Jan 2008) | 2 lines
#1755097: document default values for [].sort() and sorted().
........
2008-01-06 12:59:19 -04:00
|
|
|
s.ioctl(socket.SIO_RCVALL, socket.RCVALL_OFF)
|