Oliver Braun wrote:
Stephan Bergmann wrote:

Erdmann, Torsten wrote:

Hi there,

i tried to connect to ooo with a named pipe on a linux system:

I started OpenOffice on a Linux System. It listens to a named Pipe.
Now i tried with java to connect to this pipe.

It only functions, if the java application, has been started as the same
systemuser as OpenOffice has been started.

Every other user (also root), can't establish a connection to this pipe.

Is there a solution for this, or are there any permission problems on my System.



The problem is that the pipe name FOOBAR at the uno-URL level

  uno;pipe,name=FOOBAR;urp

is mapped to a Unix file name like

  /tmp/OSL_PIPE_<uid>_FOOBAR

that includes the uid. That way, pipes for two different users cannot interfere (unlike sockets), but two different users cannot talk to one another, either. A somewhat broken design, I would say.


FWIW: on the system (OSL) level, this happens only if the pipe is passed a security handle when created.

So it should not be too difficult to add a new connection mode like

  uno:publicpipe,name=FOOBAR;urp

to UNO that uses publicly available pipes. Then again, using sockets instead would not be all that different (especially when OOo uses -accept=socket,host=localhost,... to restrict access at the machine level); the main difference is that your applications have to agree on a port instead of a pipe name.

-Stephan

Oliver

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to