Bugs item #1747858, was opened at 2007-07-04 10:21 Message generated for change (Comment added) made by owsla You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1747858&group_id=5470
Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Python Library Group: Python 2.5 Status: Open Resolution: None Priority: 5 Private: No Submitted By: Neal D. Becker (nbecker) Assigned to: Nobody/Anonymous (nobody) Summary: chown broken on 64bit Initial Comment: python-2.5 on fedora fc7 x86_64: os.stat returns uid > 32bit: os.stat ('shit') (33204, 4420723, 64768L, 1, 4294967294, 500, 0, 1183558507, 1183558507, 1183558517) os.chown doesn't like that: os.chown ('shit', 4294967294, 4294967294) Traceback (most recent call last): File "<stdin>", line 1, in <module> OverflowError: signed integer is greater than maximum ---------------------------------------------------------------------- Comment By: Andrew Ferguson (owsla) Date: 2007-07-04 11:04 Message: Logged In: YES user_id=19094 Originator: NO Indeed, in Modules/posixmodule.c::posix_chown(), the uid and gid variables are defined as type 'int'. They should be of type 'uid_t' and 'gid_t' which are mapped to 'unsigned int' on at least some Unix platforms (I haven't checked extensively.) The wrinkle here is that chown() needs to be able to handle the case of uid/gid set to -1, which means to leave them as is. Therefore, os.chown(-1, -1) is valid, but so is os.chown(4294967294, 4294967294). ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1747858&group_id=5470 _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com