Ich habe eine POSIX-Nachrichtenwarteschlange implementiert. Auf der Zuhörerseite öffne ich die Warteschlange wie folgt:
mqdes = mq_open(s_mailbox_name.c_str(), O_RDONLY | O_CREAT, S_IRWXU | S_IRWXG | S_IRWXO, NULL);
Auf der Absenderseite öffne ich die Warteschlange wie folgt:
mqdes = mq_open(m_s_mailbox_name.c_str(), O_WRONLY);
Die Zeichenfolge ist in beiden Fällen die gleiche, nennen wir sie /foobox
Wenn ich nun sowohl den Sender als auch den Empfänger als denselben Benutzer auf der Box laufen lasse, funktioniert alles einwandfrei. Wenn jedoch Sender und Empfänger zwei verschiedene Benutzer sind, kann der Empfänger die Warteschlange nicht öffnen. Ich würde denken, dass dies kein Problem darstellt, da ich die Warteschlange als 0777 öffne, so dass jeder RWX nutzen kann.
Gibt es etwas, das ich offensichtlich falsch mache? Oder ist dies nicht möglich (Bitte lassen Sie es nicht dieses sein)
Gracias