Bugs item #1521375, was opened at 2006-07-12 20:22 Message generated for change (Comment added) made by theller You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1521375&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: Extension Modules Group: Python 2.5 >Status: Closed >Resolution: Fixed Priority: 5 Submitted By: Scot Doyle (scotdoyle) Assigned to: Thomas Heller (theller) Summary: ctypes test overwrites /dev/null Initial Comment: Steps to reproduce on Debian Sarge: 1. ls -l /dev/null 2. wget http://www.python.org/ftp/python/2.5/Python-2.5b2.tgz 3. tar xvzf Pyth* 4. cd Pyth* 5. ./configure 6. make 7. su 8. make test 9. ls -l /dev/null /dev/null goes from being a special character device to a normal file of length zero. The following command can be used instead of step 8 above to delete /dev/null ./python -c 'import ctypes.test.test_find' To recreate /dev/null: 1. su 2. rm /dev/null 3. mknod -m 666 /dev/null c 1 3 4. chown root:root /dev/null ---------------------------------------------------------------------- >Comment By: Thomas Heller (theller) Date: 2006-07-13 19:44 Message: Logged In: YES user_id=11105 Thanks. Commited as r50619. ---------------------------------------------------------------------- Comment By: Scot Doyle (scotdoyle) Date: 2006-07-13 15:56 Message: Logged In: YES user_id=1554504 Yes, not executing the command was one way to fix the bug :-) Thanks for catching that. I verified the new patch to work. ---------------------------------------------------------------------- Comment By: Thomas Heller (theller) Date: 2006-07-13 10:28 Message: Logged In: YES user_id=11105 Scot, your patch is not correct because 'cmd' is never executed. However, I was able to reproduce the overwriting of /dev/null by calling 'ctypes.util.find_library' for a shared lib that does not exist. Attached is a new patch 'util.diff' which fixes the problem for me. Can you please verify that it also works for you? Thanks for finding the bug and locating the problem! ---------------------------------------------------------------------- Comment By: Scot Doyle (scotdoyle) Date: 2006-07-13 00:17 Message: Logged In: YES user_id=1554504 Hey Thomas, that pointer is just what I needed :-) /dev/null was being deleted by gcc. Discussion at http://www.cs.helsinki.fi/linux/linux-kernel/2001-38/1503.html The attached patch fixed the problem on Debian Sarge and Ubuntu 6.06. ---------------------------------------------------------------------- Comment By: Thomas Heller (theller) Date: 2006-07-12 20:53 Message: Logged In: YES user_id=11105 Now, that is an 'interesting' bug. ctypes.util.find_library does execute shell commands that happen to have '/dev/null' in them, but it is completely unclear to me how one can overwrite /dev/null (even if root). Can you see anything that's wrong there (That code is not from me, and I'm not at all an expert in linux programming)? BTW, I cannot reproduce this on ubuntu with 'sudo ./python -c "import ctypes.test.test_find"'. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1521375&group_id=5470 _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com