STREAMS

STREAMS

Post by senthi.. » Fri, 14 Jan 2000 04:00:00



i am trying to insert a protocol module between IP and the network
driver for some tests. Can I use STREAMS to do this. But I am slightly
confused regarding this mechanism. please correct me if i am wrong.

In using STREAMS, the socket, TCP and IP are implimented as modules. I
can push and pop a module into this arrangement using ioclt().

can anyone clarify this. and i will deeply appreciate if anyone could
post some sample codes on haow to insert this protocol module.
Thanks

Sent via Deja.com http://www.deja.com/
Before you buy.

 
 
 

STREAMS

Post by Andrew Gabri » Fri, 14 Jan 2000 04:00:00




Quote:>i am trying to insert a protocol module between IP and the network
>driver for some tests. Can I use STREAMS to do this. But I am slightly
>confused regarding this mechanism. please correct me if i am wrong.

If you are using a streams-based Unix (SVR4 and maybe some others),
this is the only way to do it as the interface into the network
interface drivers is streams based (DLPI).

Quote:>In using STREAMS, the socket, TCP and IP are implimented as modules. I
>can push and pop a module into this arrangement using ioclt().

Yes, but I don't know of a way for a regular user program to
get access under the IP module like this, indeed given the
security implications, I'd be willing to bet its forbidden.

Quote:>can anyone clarify this. and i will deeply appreciate if anyone could
>post some sample codes on haow to insert this protocol module.

Have a look at IP-filter. That installs streams modules between
IP and the DLPI network drivers.

--
Andrew Gabriel
Consultant Software Engineer

 
 
 

1. URGENT STREAMS pseudodevice/kernel stream head question

Dear STREAMS and kernel experts,

        I got a problem with a simple pseudodevice driver programmed by me.
        Long time, anything works fine but then suddenly a deadlock occures.
        This thing is very strang because of the following:
        - the program reading the pseudo device is in a _read and blocked
        - the streams head shows mit flags $3E or 076, which tells me:
          (QWANTR) someone up (_read) needs data (indeed)
          (QWANTW) someone from below has data (indeed)
          (QFULL) block by flow control (got 6k, flow allows 5k)
          (QREADR,QUSE) ok, the normal way
        and nothing happens. So how can QWANTR and QFULL set at one time,
        i.e. how can a _read block with 6k bytes of data waiting on the
        queue? I put all the data with 'putnext' to the queue, using a
        service procedure, 'canput' and whatever UNIX likes. What can be
        wrong?

        We are running DG/UX 4.31 on a Data General AViiON 300.

Thank you in advance

                        Jochen Manns
                        Physikalisches Institut der Universitaet Bonn
                        Nussallee 12
                        5300 Bonn 1
                        (Germany)

2. x86 instalation problem

3. WANTED Streams Performance Study SVR3/SVR4 to non Streams comm SW

4. Evergreen MxPro and Linux?

5. copy/divide (video)stream into two streams

6. where to find -lndbm library

7. iosched: effect of streaming read on streaming write

8. konqueror's web text is too small

9. how do i divide/copy one stream into two streams through a named pipe???

10. Streaming Windows Media Audio IN -> Streaming MP3 Out?

11. Need source for SVR3 Streams -> SVR4 Streams changes

12. iosched: impact of streaming write on streaming read

13. Streaming Tape Cartridge - How to make them stream with cpio/tar?