i've been using knoppix for a few weeks because of a class at the university. this class is basically learning how to create processes in linux using C language.
the problem i'm having is the following:
im tying to use the named pipes, known as FIFO's. the thing is, when i try to create a normal unnamed pipe, it creates it and works without any problem. however, when i want to create a FIFO, it doesn't create it.
it's not a instructional error, as i've shown this problem to my teacher.
he said it might be because simply knoppix doesn't give me permitions to create this FIFO.
any sugestions on what I should do, if in fact there is something i can do?
How are you creating this FIFO? What is the exact mkfifo invocation you're using?
sorry about the delay... no internet acess for the last few days!
the code i'm using is:
when testing this last line, it returns (-1), which means that the creation on the FIFO failed.
anyway, i hope this brings new light to someone who might be able to help me out...
Okay, include <errno.h> and <stdio.h>, then add:
after the mknod() so that you can see what the exact error was.
Ok, i'll do that.
I've been told by a friend that Knoppix really doesn't allow the creation of FIFO's, but still there could be a way...
Ok, so this is what came up:
a bit generalistic, i guess...
Operation Not Permitted
Maybe knoppix really doens allow the creation of FIFO's.
Are you root at the time?
yes,i am... any suggestions yet, or are you as lost as me?
Well according to
, "Operation not Permitted" is associated with EPERM. According to mknod(2):
What kind of filesystem are you trying this on?
EPERM mode requested creation of something other than a regular file,
FIFO (named pipe), or Unix domain socket, and the caller is not
privileged (Linux: does not have the CAP_MKNOD capability); also
returned if the filesystem containing pathname does not support
the type of node requested.