First of all, I'm using a the latest Version of a FUSD Module...for my device-driver.
I have the following situation:
I have a PPP connection over a serial (RFCOMM-)device. That works fine! But now i want to put a DeviceDriver-Module in front of the RFCOMM-Device, so that PPP uses my DeviceDriver-Module. The Module just forwards the data from PPP to the RFCOMM device - no data is changed (later the module shall filter some debug-information added to the ip-data coming from the RFCOMM-Device -> and hand the filtered data over to ppp, so that the connection works as always).
The Problem now is, that PPP needs a serial device that it can configure. I thought when i forward the ioctls to the RFCOMM device everything shall work? But it doesn't.
Computer 1 (PPP <-> DeviceDriver <-> RFCOMM) <-> processing on a uC <-> (RFCOMM <-> DeviceDriver <--> PPP) Computer 2
The DeviceDriver shall emulate the RFComm-Device to filter the traffic going through.
This is my ioctl-function...
Expand|Select|Wrap|Line Numbers
- int do_ioctl(struct fusd_file_info *file, int cmd, void *arg)
- {
- int iRetVal = 0;
- iRetVal = ioctl(iCom_Device, cmd, arg);
- return iRetVal; }
Expand|Select|Wrap|Line Numbers
- iCom_Device = open(argv[1],O_NONBLOCK | O_RDWR,0);
Expand|Select|Wrap|Line Numbers
- Aug 7 10:50:56 xxx pppd[6032]: tcgetattr: Operation not permitted (line 933)
Does anybody have an idea?
thanks a lot!!
regards,
dd