From af7238f4e769edfc3f6ed60f89fc2d7cafd64cfc Mon Sep 17 00:00:00 2001 From: Thibaut Girka Date: Mon, 3 May 2010 15:17:02 +0200 Subject: [PATCH] [Jingle] Sends bad-request when receiving jingle action on unknown content --- src/common/jingle_session.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/common/jingle_session.py b/src/common/jingle_session.py index 09c732a3e..677bf5ec0 100644 --- a/src/common/jingle_session.py +++ b/src/common/jingle_session.py @@ -459,8 +459,13 @@ class JingleSession(object): for content in jingle.iterTags('content'): name = content['name'] creator = content['creator'] - cn = self.contents[(creator, name)] - cn.on_stanza(stanza, content, error, action) + if (creator, name) not in self.contents: + text = 'Content %s (created by %s) does not exist' % (name, creator) + self.__send_error(stanza, 'bad-request', text=text, type_='_modify') + raise xmpp.NodeProcessed + else: + cn = self.contents[(creator, name)] + cn.on_stanza(stanza, content, error, action) def __on_session_terminate(self, stanza, jingle, error, action): self.connection.delete_jingle_session(self.sid)