addams013
2007-02-01 12:48:05 UTC
I'm trying to use an external USB wireless modem in a "multiplexed
mode". This means that the modem will respond to PPP commands and AT
commands at the same time, provided that they are couched in simple
packets that disambiguate them to the modem.
One packet header tells the modem that the packet is meant to be
processed as data (PPP). Another packet header informs the modem that
the packet is meant to be processed as an AT command.
This is useful because the modem is aware of certain things that it
would be useful for the Linux box to know and keep track of -- signal
strength, location, and a number of other pieces of information. That
information can be retrieved with AT commands; I'd like to get it
without having to tear down and re-establish PPP.
I'm trying to figure out which functions in Linux (kernel 2.4.32) I
will need to modify in order to do this. I'm looking at
ppp_async_push() and ppp_async_input() in ppp_async.c. Can anyone
with insight into the kind of thing I'm trying to do let me know if
I'm headed in the right direction, or let me know if there's some
other direction I should be going in, or just be willing to lend me
some friendly advice? Kernel hacking has got me a little nervous.
mode". This means that the modem will respond to PPP commands and AT
commands at the same time, provided that they are couched in simple
packets that disambiguate them to the modem.
One packet header tells the modem that the packet is meant to be
processed as data (PPP). Another packet header informs the modem that
the packet is meant to be processed as an AT command.
This is useful because the modem is aware of certain things that it
would be useful for the Linux box to know and keep track of -- signal
strength, location, and a number of other pieces of information. That
information can be retrieved with AT commands; I'd like to get it
without having to tear down and re-establish PPP.
I'm trying to figure out which functions in Linux (kernel 2.4.32) I
will need to modify in order to do this. I'm looking at
ppp_async_push() and ppp_async_input() in ppp_async.c. Can anyone
with insight into the kind of thing I'm trying to do let me know if
I'm headed in the right direction, or let me know if there's some
other direction I should be going in, or just be willing to lend me
some friendly advice? Kernel hacking has got me a little nervous.