Externe SV-Objekt nur fuer nicht-EM+ fragen.

Das SV-Objekt wird gefragt, ob der Zugriff erlaubt ist.
Dieses erfolgt fuer EM+ aber nur, wenn der CHANNELD selber
das SV-Objekt ist, damit nicht beliebige SV-Objekt EMs den
Zugriff verweigern koennen. Ebenen mit CHANNELD als SV
koennen aber natuerlich auch EM+ Zugriff verweigern.

Change-Id: I479ed28c69cbfd554eaf0f557ab10e6d89ef2c8e
diff --git a/p/daemon/channeld.c b/p/daemon/channeld.c
index 122f37a..3ada61c 100644
--- a/p/daemon/channeld.c
+++ b/p/daemon/channeld.c
@@ -716,6 +716,14 @@
   if (!ACC_CLOSURE(ch))
     return 1;
 
+  // Das SV-Objekt wird gefragt, ob der Zugriff erlaubt ist. Dieses erfolgt
+  // fuer EM+ aber nur, wenn der CHANNELD selber das SV-Objekt ist, damit
+  // nicht beliebige SV-Objekt EMs den Zugriff verweigern koennen. Ebenen mit
+  // CHANNELD als SV koennen aber natuerlich auch EM+ Zugriff verweigern.
+  if (IS_ARCH(previous_object(1))
+      && find_object(MASTER_OB(ch)) != this_object())
+    return 1;
+
   return funcall(ACC_CLOSURE(ch), ch, pl, cmd, &txt);
 }