mongo-python-driver/pymongo
Bernie Hackett d614fa286f PYTHON-1147 - Make sockets non-inheritable if possible
This change attempts to set the close-on-exec flag on
sockets when possible. If socket.SOCK_CLOEXEC is defined
we attempt to use it, otherwise we fall back to fcntl. If
fcntl isn't available (Windows and various other platforms)
there isn't anything we can do.

Note that using fcntl is *not* atomic. It's possible that a socket
can be created and fork + execv can happen before the call to
fcntl, leaking the file descriptor anyway. CPython 3.4 implements
PEP 446, making all newly created file descriptors non-inheritable
by default. If your application needs the behavior this change
attempts to provide you should really use CPython 3.4+.

Note also, this change *does not* make PyMongo fork safe.
2016-09-14 17:12:40 -07:00
..
__init__.py Start work on 3.4 2016-07-19 16:34:20 -07:00
_cmessagemodule.c PYTHON-1025 - C extensions big endian support 2016-06-24 17:54:24 -07:00
auth.py PYTHON-750 - Kerberos SSPI support for Windows 2016-05-26 16:23:53 -07:00
bulk.py PYTHON-1113 - Index collation documentation into API docs. 2016-09-07 15:15:15 -07:00
client_options.py PYTHON-1119 - Implement the client metadata capture specification. 2016-07-26 10:35:55 -07:00
collation.py PYTHON-1113 - Small doc fixes 2016-09-07 15:32:10 -07:00
collection.py PYTHON-1113 - Index collation documentation into API docs. 2016-09-07 15:15:15 -07:00
command_cursor.py PYTHON-1071 - Use command reported namespace for getMore 2016-03-14 13:47:45 -07:00
common.py address @llvtt comments 2016-08-01 14:43:35 -04:00
cursor_manager.py PYTHON-988 - Deprecate cursor managers and kill_cursors 2016-06-17 10:08:14 -07:00
cursor.py PYTHON-1113 - Support collation per operation. 2016-09-07 13:45:41 -07:00
database.py PYTHON-1113 - Support collation per operation. 2016-09-07 13:45:41 -07:00
errors.py PYTHON-1033, PYTHON-1034 - Make protocol asserts exceptions 2016-05-19 17:18:00 -07:00
helpers.py PYTHON-1113 - Fix _first_batch helper 2016-09-07 16:17:21 -07:00
ismaster.py PYTHON-1137 - Add IsMaster.document 2016-08-31 13:46:47 -07:00
max_staleness_selectors.py PYTHON-1104 Implement maxStalenessMS. 2016-07-22 14:12:40 -04:00
message.py PYTHON-1113 - Support collation per operation. 2016-09-07 13:45:41 -07:00
mongo_client.py PYTHON-1101 - Support sending writeConcern for commands that write. 2016-08-11 14:02:22 -07:00
mongo_replica_set_client.py PYTHON-928 - Fix tests around client __repr__ to expect original seed list instead of discovered nodes. 2015-07-17 15:57:23 -07:00
monitor.py PYTHON-1141 - Always publish failed event when heartbeats fail 2016-09-02 15:35:56 -07:00
monitoring.py PYTHON-1138 - Improve SDAM monitoring documentation 2016-09-01 17:49:30 -07:00
monotonic.py PYTHON-1009 Switch from "Monotime" to "monotonic" 2015-11-18 19:32:36 -08:00
network.py PYTHON-1113 - Support collation per operation. 2016-09-07 13:45:41 -07:00
operations.py PYTHON-1113 - Support collation per operation. 2016-09-07 13:45:41 -07:00
periodic_executor.py Fix up shutdown for periodic executors 2016-07-11 13:08:36 -07:00
pool.py PYTHON-1147 - Make sockets non-inheritable if possible 2016-09-14 17:12:40 -07:00
read_concern.py PYTHON-981 - Implement ReadConcern. 2015-11-18 14:12:28 -08:00
read_preferences.py PYTHON-1104 Implement maxStalenessMS. 2016-07-22 14:12:40 -04:00
response.py PYTHON-978 - Use find/getMore commands 2015-11-18 12:57:47 -08:00
results.py PYTHON-821 - Improve docs for write result acknowledged attribute. 2015-03-18 14:00:16 -07:00
server_description.py PYTHON-1138 - Improve SDAM monitoring documentation 2016-09-01 17:49:30 -07:00
server_selectors.py PYTHON-1104 Implement maxStalenessMS. 2016-07-22 14:12:40 -04:00
server_type.py Fix up copyright dates. 2015-03-25 11:55:02 -07:00
server.py PYTHON-1113 - Support collation per operation. 2016-09-07 13:45:41 -07:00
settings.py PYTHON-1104 Implement maxStalenessMS. 2016-07-22 14:12:40 -04:00
son_manipulator.py Fix up copyright dates. 2015-03-25 11:55:02 -07:00
ssl_context.py Fix up copyright dates. 2015-03-25 11:55:02 -07:00
ssl_match_hostname.py PYTHON-1129 - Support IP addresses in match_hostname 2016-08-25 16:28:19 -07:00
ssl_support.py PYTHON-1133 - Explicitly disable TLS compression when possible 2016-08-25 16:09:38 -07:00
thread_util.py PYTHON-983 Idle monitor threads use excessive CPU. 2015-10-14 23:52:18 -04:00
topology_description.py PYTHON-1138 - Improve SDAM monitoring documentation 2016-09-01 17:49:30 -07:00
topology.py PYTHON-1139 - Document that PyMongo is not fork-safe. 2016-09-02 12:35:06 -07:00
uri_parser.py PYTHON-1059 - Make kwarg only options unknown to the URI parser 2016-03-09 12:14:18 -08:00
write_concern.py PYTHON-1101 - Support sending writeConcern for commands that write. 2016-08-11 14:02:22 -07:00