[Zope] Security on email.Message.Message

Tim Hicks tim at sitefusion.co.uk
Tue Apr 12 11:18:04 EDT 2005


Hi,

I'm trying to import and use the email.Message.Message class in a zope
'Script (Python)'.

I have the following security assertions in my product code::

  from AccessControl import allow_module, allow_class
  from AccessControl import ModuleSecurityInfo

  ModuleSecurityInfo('email.Message').declarePublic('Message')
  from email.Message import Message
  allow_class(Message)

As a result, I can successfully import like::

  from email.Message import Message

I can even create an instance and call most methods on it::

  m = Message()
  m.set_payload('read that')

However, when I try to use the mapping interface, I get an error.  For
example, the following::

  m['from'] = 'tim at example.com'

produces a traceback like::

  Traceback (innermost last):
    Module ZPublisher.Publish, line 101, in publish
    Module ZPublisher.mapply, line 88, in mapply
    Module ZPublisher.Publish, line 39, in call_object
    Module Shared.DC.Scripts.Bindings, line 306, in __call__
    Module Shared.DC.Scripts.Bindings, line 343, in _bindAndExec
    Module Products.PythonScripts.PythonScript, line 323, in _exec
    Module None, line 6, in AAA
     - <PythonScript at /test/AAA>
     - Line 6
    Module RestrictedPython.Guards, line 96, in handler
  TypeError: object does not support item or slice assignment

Does anyone have any idea what the problem is?


Tim

ps Not subscribed here, so please do cc me with replies.


More information about the Zope mailing list