Commit Graph

492 Commits

Author SHA1 Message Date
Brian Curtin 6285774f06 Implement #7566 - os.path.sameopenfile for Windows.
This uses the GetFileInformationByHandle function to return a tuple of values
to identify a file, then ntpath.sameopenfile compares file tuples, which
is exposed as os.path.sameopenfile.
2010-09-06 17:07:27 +00:00
Georg Brandl a9b51d2a0e #9747: fix copy-paste error in getresgid() doc. 2010-09-05 17:07:12 +00:00
Antoine Pitrou d3ccde8a21 Issue #7736: Release the GIL around calls to opendir() and closedir()
in the posix module.  Patch by Marcin Bachry.
2010-09-04 17:21:57 +00:00
Andrew M. Kuchling 4ea04a306f #7647: add ST_RDONLY, ST_NOSUID constants to os module.
(Also fix a name ordering in the ACKS file.)
2010-08-18 22:30:34 +00:00
Amaury Forgeot d'Arc 844807ead2 r82659 reintroduced some tab characters. Untabify again. 2010-08-16 22:16:51 +00:00
Antoine Pitrou 22e4155706 Fix other warnings under 64-bit Windows. 2010-08-15 18:07:50 +00:00
Victor Stinner e039ffe41d Issue #9605: posix.getlogin() decodes the username with file filesystem
encoding and surrogateescape error handler. Patch written by David Watson.

Reindent also posix_getlogin(), and fix a typo in the NEWS file.
2010-08-15 09:33:08 +00:00
Victor Stinner 61ec5dca2b Issue #9604: posix.initgroups() encodes the username using the fileystem
encoding and surrogateescape error handler. Patch written by David Watson.
2010-08-15 09:22:44 +00:00
Victor Stinner 5fe6de8c72 Issue #9603: posix.ttyname() and posix.ctermid() decode the terminal name
using the filesystem encoding and surrogateescape error handler. Patch
written by David Watson.
2010-08-15 09:12:51 +00:00
Benjamin Peterson d4efbf90d2 use pep 383 decoding for mknod and mkfifo #9570
Patch by David Watson.
2010-08-11 19:20:42 +00:00
Antoine Pitrou b73caab436 Issue #6915: Under Windows, os.listdir() didn't release the Global
Interpreter Lock around all system calls.  Original patch by Ryan Kelly.
2010-08-09 23:39:31 +00:00
Raymond Hettinger 0291c9ffa2 Issue 9445: Fix undefined symbols on VS8.0 build. 2010-08-01 21:10:35 +00:00
Ronald Oussoren b6ee4f5bfc This fixes issue7900 by adding code that deals
with the fact that getgroups(2) might return
more that MAX_GROUPS on OSX.

See the issue (and python-dev archives) for the
gory details. Summarized: OSX behaves rather oddly
and Apple says this is intentional.
2010-07-23 13:53:51 +00:00
Martin v. Löwis c9e1c7d97f Issue #6095: Make directory argument to os.listdir optional.
Patch by Virgil Dupras.
2010-07-23 12:16:41 +00:00
Brian Curtin 74e4561a3c Re-flow several long lines from #1578269. 2010-07-09 15:58:59 +00:00
Brian Curtin d40e6f70a5 Implement #1578269. Patch by Jason R. Coombs.
Added Windows support for os.symlink when run on Windows 6.0 or greater,
aka Vista. Previous Windows versions will raise NotImplementedError
when trying to symlink.

Includes numerous test updates and additions to test_os, including
a symlink_support module because of the fact that privilege escalation
is required in order to run the tests to ensure that the user is able
to create symlinks. By default, accounts do not have the required
privilege, so the escalation code will have to be exposed later (or
documented on how to do so). I'll be following up with that work next.

Note that the tests use ctypes, which was agreed on during the PyCon
language summit.
2010-07-08 21:39:08 +00:00
Senthil Kumaran 684760a148 Merged revisions 82047 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r82047 | senthil.kumaran | 2010-06-17 22:08:34 +0530 (Thu, 17 Jun 2010) | 3 lines

  Fix Issue4452 - Incorrect docstring of os.setpgrp
........
2010-06-17 16:48:06 +00:00
Amaury Forgeot d'Arc 0a589c9898 Remove unused variable, and fix a compilation warning on Windows. 2010-05-15 20:35:12 +00:00
Victor Stinner a45598a035 posix_listdir(), posix_readlink(): avoid temporary PyBytes object
Use directly PyUnicode_DecodeFSDefaultAndSize() instead of
PyBytes_FromStringAndSize() + PyUnicode_FromEncodedObject() if the argument is
unicode.
2010-05-14 16:35:39 +00:00
Victor Stinner 77ccd6d0c7 posix_error_with_allocated_filename() decodes the filename with
PyUnicode_DecodeFSDefaultAndSize() and call
PyErr_SetFromErrnoWithFilenameObject() instead of
PyErr_SetFromErrnoWithFilename()
2010-05-08 00:36:42 +00:00
Victor Stinner 97c18ab6a5 Replace PyUnicode_Decode(buf, strlen(buf), Py_FileSystemDefaultEncoding,
"surrogateescape") by PyUnicode_DecodeFSDefault(val).
2010-05-07 16:34:53 +00:00
Victor Stinner 84ae118006 Issue #8603: Create a bytes version of os.environ for Unix
Create os.environb mapping and os.getenvb() function, os.unsetenv() encodes str
argument to the file system encoding with the surrogateescape error handler
(instead of utf8/strict) and accepts bytes, and posix.environ keys and values
are bytes.
2010-05-06 22:05:07 +00:00
Victor Stinner 8c62be88e6 Recorded merge of revisions 80844-80845 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80844 | victor.stinner | 2010-05-06 01:33:33 +0200 (jeu., 06 mai 2010) | 5 lines

  Untabify Modules/posixmodule.c

  Run Antoine Pitrou "untabify" script + manual editions (OS/2 and some
  continuation lines).
........
  r80845 | victor.stinner | 2010-05-06 02:03:44 +0200 (jeu., 06 mai 2010) | 4 lines

  Untabify Modules/posixmodule.c (2)

  Fix some more functions by hand
........

I rewrote the patch for py3k from scratch using untabify + manual editions
2010-05-06 00:08:46 +00:00
Victor Stinner 13bb71c38f Issue #8391: os.execvpe() and os.getenv() supports unicode with surrogates and
bytes strings for environment keys and values
2010-04-23 21:41:56 +00:00
Victor Stinner dcb2403022 Issue #8485: PyUnicode_FSConverter() doesn't accept bytearray object anymore,
you have to convert your bytearray filenames to bytes
2010-04-22 12:08:36 +00:00
Mark Dickinson 876d7c84e6 Keep confstr entries in alphabetical order. 2010-04-16 12:47:52 +00:00
Victor Stinner 6f7adcc58e Add CS_GNU_LIBC_VERSION and CS_GNU_LIBPTHREAD_VERSION constants for constr(),
and disable test_execvpe_with_bad_program() of test_os if the libc uses
linuxthreads to avoid the "unknown signal 32" bug (see issue #4970).
2010-04-16 12:23:43 +00:00
Victor Stinner cfa72789c4 Issue #8412: os.system() now accepts bytes, bytearray and str with
surrogates.
2010-04-16 11:45:13 +00:00
Brian Curtin eb24d7498f Port #1220212 (os.kill for Win32) to py3k. 2010-04-12 17:16:38 +00:00
Gregory P. Smith 845085703c Change PARSE_PID to _Py_PARSE_PID (cleanup for r78946). 2010-03-14 18:56:11 +00:00
Gregory P. Smith fb94c5f1e5 * Replaces the internals of the subprocess module from fork through exec on
POSIX systems with a C extension module.  This is required in order for
  the subprocess module to be made thread safe.

  The pure python implementation is retained so that it can continue to be
  used if for some reason the _posixsubprocess extension module is not
  available.

  The unittest executes tests on both code paths to guarantee compatibility.

* Moves PyLong_FromPid and PyLong_AsPid from posixmodule.c into longobject.h.

Code reviewed by jeffrey.yasskin at http://codereview.appspot.com/223077/show
2010-03-14 06:49:55 +00:00
Gregory P. Smith 2a1c027544 Merged revisions 78531 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78531 | gregory.p.smith | 2010-02-28 18:31:33 -0800 (Sun, 28 Feb 2010) | 2 lines

  Fix for r78527.  It left out updating forkpty.
........
2010-03-01 17:04:45 +00:00
Gregory P. Smith 24cec9fe07 Merged revisions 78527,78550 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78527 | gregory.p.smith | 2010-02-28 17:22:39 -0800 (Sun, 28 Feb 2010) | 4 lines

  Issue #7242: On Solaris 9 and earlier calling os.fork() from within a
  thread could raise an incorrect RuntimeError about not holding the import
  lock.  The import lock is now reinitialized after fork.
........
  r78550 | gregory.p.smith | 2010-02-28 22:01:02 -0800 (Sun, 28 Feb 2010) | 2 lines

  Fix test to be skipped on windows.
........
2010-03-01 06:18:41 +00:00
Gregory P. Smith c78d79ce30 Merged revisions 78546 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78546 | gregory.p.smith | 2010-02-28 21:43:43 -0800 (Sun, 28 Feb 2010) | 3 lines

  Fixes issue #7999: os.setreuid() and os.setregid() would refuse to accept
  a -1 parameter on some platforms such as OS X.
........
2010-03-01 05:54:14 +00:00
Ronald Oussoren 755740f3ea Forward port a number of OSX bugfixes from the trunk to 3.2 2010-02-07 19:56:39 +00:00
Antoine Pitrou 1119a64916 Issue #7561: Fix crashes when using bytearray objects with the posix
module.
2010-01-17 12:16:23 +00:00
Benjamin Peterson 1baf465d27 Merged revisions 76847,76851,76869,76882,76891-76892,76924,77007,77070,77092,77096,77120,77126,77155 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r76847 | benjamin.peterson | 2009-12-14 21:25:27 -0600 (Mon, 14 Dec 2009) | 1 line

  adverb
........
  r76851 | benjamin.peterson | 2009-12-15 21:28:52 -0600 (Tue, 15 Dec 2009) | 1 line

  remove lib2to3 resource
........
  r76869 | vinay.sajip | 2009-12-17 08:52:00 -0600 (Thu, 17 Dec 2009) | 1 line

  Issue #7529: logging: Minor correction to documentation.
........
  r76882 | georg.brandl | 2009-12-19 11:30:28 -0600 (Sat, 19 Dec 2009) | 1 line

  #7527: use standard versionadded tags.
........
  r76891 | georg.brandl | 2009-12-19 12:16:31 -0600 (Sat, 19 Dec 2009) | 1 line

  #7479: add note about function availability on Unices.
........
  r76892 | georg.brandl | 2009-12-19 12:20:18 -0600 (Sat, 19 Dec 2009) | 1 line

  #7480: remove tautology.
........
  r76924 | georg.brandl | 2009-12-20 08:28:05 -0600 (Sun, 20 Dec 2009) | 1 line

  Small indentation fix.
........
  r77007 | gregory.p.smith | 2009-12-23 03:31:11 -0600 (Wed, 23 Dec 2009) | 3 lines

  Fix possible integer overflow in lchown and fchown functions.  For issue1747858.
........
  r77070 | amaury.forgeotdarc | 2009-12-27 14:06:44 -0600 (Sun, 27 Dec 2009) | 2 lines

  Fix a typo in comment
........
  r77092 | georg.brandl | 2009-12-28 02:48:24 -0600 (Mon, 28 Dec 2009) | 1 line

  #7404: remove reference to non-existing example files.
........
  r77096 | benjamin.peterson | 2009-12-28 14:51:17 -0600 (Mon, 28 Dec 2009) | 1 line

  document new fix_callable behavior
........
  r77120 | georg.brandl | 2009-12-29 15:09:17 -0600 (Tue, 29 Dec 2009) | 1 line

  #7595: fix typo in argument default constant.
........
  r77126 | amaury.forgeotdarc | 2009-12-29 17:06:17 -0600 (Tue, 29 Dec 2009) | 2 lines

  #7579: Add docstrings to the msvcrt module
........
  r77155 | georg.brandl | 2009-12-30 13:03:00 -0600 (Wed, 30 Dec 2009) | 1 line

  We only support Windows NT derivatives now.
........
2009-12-31 03:11:23 +00:00
Antoine Pitrou b7572f08f4 Merged revisions 76636 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r76636 | antoine.pitrou | 2009-12-02 21:37:54 +0100 (mer., 02 déc. 2009) | 5 lines

  Issue #7333: The `posix` module gains an `initgroups()` function providing
  access to the initgroups(3) C library call on Unix systems which implement
  it.  Patch by Jean-Paul Calderone.
........
2009-12-02 20:46:48 +00:00
Martin v. Löwis 7aed61ae46 Merged revisions 76550 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r76550 | martin.v.loewis | 2009-11-27 14:56:01 +0100 (Fr, 27 Nov 2009) | 2 lines

  Issue #6508: Add posix.{getresuid,getresgid,setresuid,setresgid}.
........
2009-11-27 14:09:49 +00:00
Benjamin Peterson 0df35a93a2 Merged revisions 74841 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r74841 | thomas.wouters | 2009-09-16 14:55:54 -0500 (Wed, 16 Sep 2009) | 23 lines


  Fix issue #1590864, multiple threads and fork() can cause deadlocks, by
  acquiring the import lock around fork() calls. This prevents other threads
  from having that lock while the fork happens, and is the recommended way of
  dealing with such issues. There are two other locks we care about, the GIL
  and the Thread Local Storage lock. The GIL is obviously held when calling
  Python functions like os.fork(), and the TLS lock is explicitly reallocated
  instead, while also deleting now-orphaned TLS data.

  This only fixes calls to os.fork(), not extension modules or embedding
  programs calling C's fork() directly. Solving that requires a new set of API
  functions, and possibly a rewrite of the Python/thread_*.c mess. Add a
  warning explaining the problem to the documentation in the mean time.

  This also changes behaviour a little on AIX. Before, AIX (but only AIX) was
  getting the import lock reallocated, seemingly to avoid this very same
  problem. This is not the right approach, because the import lock is a
  re-entrant one, and reallocating would do the wrong thing when forking while
  holding the import lock.

  Will backport to 2.6, minus the tiny AIX behaviour change.
........
2009-10-04 20:32:25 +00:00
Hirokazu Yamamoto 6fbdfdabb6 Merged revisions 73675 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r73675 | hirokazu.yamamoto | 2009-06-29 20:27:03 +0900 | 3 lines

  Issue #4856: Py_GetFileAttributesEx[AW] are not needed because GetFileAttributesEx[AW]
  won't fail with ERROR_CALL_NOT_IMPLEMENTED on win NT.
  Reviewed by Amaury Forgeot d'Arc.
........
2009-06-29 11:37:19 +00:00
Hirokazu Yamamoto 892a37aff1 Merged revisions 73603 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r73603 | hirokazu.yamamoto | 2009-06-28 19:23:00 +0900 | 1 line

  Issue #4856: Remove checks for win NT.
........
2009-06-28 11:07:03 +00:00
Martin v. Löwis c15bdef819 Issue #6012: Add cleanup support to O& argument parsing. 2009-05-29 14:47:46 +00:00
Antoine Pitrou 69f7114fc2 Make some private functions static (thanks `make smelly`) 2009-05-24 21:25:49 +00:00
Antoine Pitrou 7852c42ac2 Try to fix building under Windows (where SIZEOF_PID_T apparently doesn't exist) 2009-05-24 11:58:35 +00:00
Antoine Pitrou 971e51be7e Merged revisions 72855 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72855 | antoine.pitrou | 2009-05-23 18:06:49 +0200 (sam., 23 mai 2009) | 3 lines

  Some pid_t-expecting or producing functions were forgotten in r72852.
........
2009-05-23 16:14:27 +00:00
Antoine Pitrou c3ee166427 Merged revisions 72852 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72852 | antoine.pitrou | 2009-05-23 17:37:45 +0200 (sam., 23 mai 2009) | 5 lines

  Issue #1983: Fix functions taking or returning a process identifier to use
  the dedicated C type `pid_t` instead of a C `int`. Some platforms have
  a process identifier type wider than the standard C integer type.
........
2009-05-23 16:02:33 +00:00
Hirokazu Yamamoto 8223c24d07 Merged revisions 72698-72699 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r72698 | hirokazu.yamamoto | 2009-05-17 11:52:09 +0900 | 1 line

  Issue #3527: Removed Py_WIN_WIDE_FILENAMES which is not used any more.
........
  r72699 | hirokazu.yamamoto | 2009-05-17 11:58:36 +0900 | 1 line

  Added NEWS for r72698.
........
2009-05-17 04:21:53 +00:00
Antoine Pitrou a6bb984973 Issue #5990: fix memory leak introduced by PEP 383 commits 2009-05-10 22:27:00 +00:00
Martin v. Löwis 43c57785d3 Rename utf8b error handler to surrogateescape. 2009-05-10 08:15:24 +00:00