mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Add support for the send/recvmsg API to the socket module. Patch by David Watson and Heiko Wundram. (Closes #6560)
This commit is contained in:
parent
8983729dc0
commit
96fe56abec
7 changed files with 3167 additions and 0 deletions
24
Lib/ssl.py
24
Lib/ssl.py
|
@ -355,6 +355,14 @@ class SSLSocket(socket):
|
|||
else:
|
||||
return socket.sendto(self, data, flags_or_addr, addr)
|
||||
|
||||
def sendmsg(self, *args, **kwargs):
|
||||
self._checkClosed()
|
||||
if self._sslobj:
|
||||
raise ValueError("sendmsg not allowed on instances of %s" %
|
||||
self.__class__)
|
||||
else:
|
||||
return socket.sendmsg(self, *args, **kwargs)
|
||||
|
||||
def sendall(self, data, flags=0):
|
||||
self._checkClosed()
|
||||
if self._sslobj:
|
||||
|
@ -413,6 +421,22 @@ class SSLSocket(socket):
|
|||
else:
|
||||
return socket.recvfrom_into(self, buffer, nbytes, flags)
|
||||
|
||||
def recvmsg(self, *args, **kwargs):
|
||||
self._checkClosed()
|
||||
if self._sslobj:
|
||||
raise ValueError("recvmsg not allowed on instances of %s" %
|
||||
self.__class__)
|
||||
else:
|
||||
return socket.recvmsg(self, *args, **kwargs)
|
||||
|
||||
def recvmsg_into(self, *args, **kwargs):
|
||||
self._checkClosed()
|
||||
if self._sslobj:
|
||||
raise ValueError("recvmsg_into not allowed on instances of %s" %
|
||||
self.__class__)
|
||||
else:
|
||||
return socket.recvmsg_into(self, *args, **kwargs)
|
||||
|
||||
def pending(self):
|
||||
self._checkClosed()
|
||||
if self._sslobj:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue