2009-12-09 28 views
5

Bir POSIX ileti kuyruğu gerçekleştirdim. Dinleyici tarafında , böyle kuyruğu açıyorum:POSIX mesaj kuyrukları Linux'ta çapraz kullanıcı olarak kullanılabilir mi?

mqdes = mq_open(s_mailbox_name.c_str(), O_RDONLY | O_CREAT, S_IRWXU | S_IRWXG | S_IRWXO, NULL);

gönderen tarafında, böyle kuyruğu açıyorum:

mqdes = mq_open(m_s_mailbox_name.c_str(), O_WRONLY);

dize aynıdır her ikisinde de /foobox

Şimdi, hem gönderen hem de alıcıyı kutuda aynı kullanıcı olarak çalıştırdığımda, her şey mükemmel çalışır. Ancak gönderen ve alıcı 2 farklı kullanıcı ise, alıcı sırayı açamaz. Bunun bir problem olmayacağını düşünüyorum çünkü kuyruğu 0777 olarak açıyorum, böylece herkes RWX'e sahip olabilir.

Yanlış yapıyorum bir şey var mı? Ya da bu mümkün değildir

Teşekkür

cevap

6

Kontrol umask'ı (bu yanyana gelmesin lütfen) 'dir.

man mq_open'dan itibaren: "İzin ayarları, işlem umaskına karşı maskelenir."

+2

Sen benim kahramanımsın, teşekkürler: D, sonunda işten ayrılabilirim. – Salgar

+0

Rica ederim. İyi akşamlar. –

İlgili konular