I would like to make os.popen() available to python scripts added via the Zope management interface [1]. Following a previous posting, people pointed me to zope/lib/python/Products/PythonScripts/README.txt and Paul Winkler added to that a URL <http://www.zopelabs.com/cookbook/1074897091>. Following the README all I need do is create an __init__.py file with the content: from Products.PythonScripts.Utility import allow_module allow_module('os.popen') in an appropriate products folder. As this got me nowhere I dug around and found that "# These have been relocated, and should be imported from AccessControl" so I modified this to: from AccessControl import allow_module allow_module('os.popen') This I've done and indeed, I have the appropriate product listed in the Control Panel. When I call my testScript, it all works fine up to: return popen(cmd_str).read() Where cmd_str is a valid string which has been run in a standalone python environment. When I uncomment this line I get endless requests for a username:password pair from the browser. Quite obviously I'm doing something wrong. At this point in time I do not understand Zope at all and the more I read, the more confused I get :-( Can someone point me in the right direction? Many thanks Simon Forster _____________________________________________________ LDML Ltd, 62 Pall Mall, London, SW1Y 5HZ, UK Tel: +44 (0)70 9230 5244 Fax: +44 (0)70 9230 5247 _____________________________________________________ [1] Actually, I don't care where I call os.popen() from. I've played with external scripts and started down the road of futzing with a product to do this. However, the simplest approach seems to be the one I following at the moment. Once I can get this working, hopefully I can progress in other areas.