process_string: Objektcalls mit gleicher UID

Aufrufe zwischen Objekte mit derselben UID sind auch erlaubt.

Change-Id: I2678939e66442d8b5a6de574bbe5bf1ffd123a6d
diff --git a/secure/simul_efun/simul_efun.c b/secure/simul_efun/simul_efun.c
index 1a7a013..acb73db 100644
--- a/secure/simul_efun/simul_efun.c
+++ b/secure/simul_efun/simul_efun.c
@@ -798,8 +798,9 @@
   if (!ob)
     return 0;
   // Es gibt ein Objekt. Jetzt wird es spannend. Erlaubt sind calls zwischen
-  // Objekten, welche vom gleichen Magier stammen.
-  if (REAL_UID(ob) == REAL_UID(previous_object()))
+  // Objekten, welche dieselbe UID haben oder vom gleichen Magier stammen.
+  if (getuid(ob) == getuid(previous_object()) ||
+      REAL_UID(ob) == REAL_UID(previous_object()))
     return 0;
   // Alles andere ist nicht erlaubt
   return 1;
diff --git a/secure/simul_efun/spare/simul_efun.c b/secure/simul_efun/spare/simul_efun.c
index 1a7a013..acb73db 100644
--- a/secure/simul_efun/spare/simul_efun.c
+++ b/secure/simul_efun/spare/simul_efun.c
@@ -798,8 +798,9 @@
   if (!ob)
     return 0;
   // Es gibt ein Objekt. Jetzt wird es spannend. Erlaubt sind calls zwischen
-  // Objekten, welche vom gleichen Magier stammen.
-  if (REAL_UID(ob) == REAL_UID(previous_object()))
+  // Objekten, welche dieselbe UID haben oder vom gleichen Magier stammen.
+  if (getuid(ob) == getuid(previous_object()) ||
+      REAL_UID(ob) == REAL_UID(previous_object()))
     return 0;
   // Alles andere ist nicht erlaubt
   return 1;