Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Make the authentication method configurable, CHAP or PAP, defaulting to
CHAP (i.e.: previous behaviour).
Implementation details:
o If PAP is configured, we NAK the CHAP authentication protocol option
in LCP configuration requests and suggest PAP instead. This works
around the amusing requirement of 3GPP TS 29.061 that modems must
send a forced positive acknowledgement of the authentication method
tried (i.e.: the modem will successfully accept any CHAP handshake,
but if the network only supports PAP, the modem will hang up
when it tries and fails to activate the PDP context)
o The PAP Authenticate-Request is resent a hard-coded three times at
ten-second intervals. This may be a bit too persistent. Chances
are if it doesn't work the first time, it'll never work, but the
RFC insists that we MUST retry.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In case it was set before calling these functions
|
|
Remove the series of constructors which take a GIOChannel directly.
These weren't used.
This change also allows the construction of the PPP object and filling
in various pertinent information without starting the HDLC processing.
The client must now use g_at_ppp_open() for the client side or
g_at_ppp_listen() for the server side to start the true PPP session.
The previous owner of the GAtIO object must be suspended beforehand.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In situations where the PPP stream can be suspended by the peer, e.g. in
the server role using '+++'
|
|
|
|
Delay signaling of ppp_down until we exit the GAtHDLC read handler.
Otherwise exchanging the read handler on GAtIO might lead to funny
double consumption problems.
|
|
|
|
In the case where we're going down, but have a pending terminate ack,
delay signaling the upper layers until the ack has been put on the wire.
|
|
This patch was generated by the following semantic patch
(http://coccinelle.lip6.fr/)
// <smpl>
@fix disable is_null,isnt_null1@
expression *E;
@@
- !E
+ E == NULL
// </smpl>
|
|
Fix common misspellings by using the list available at
http://en.wikipedia.org/wiki/Wikipedia:Lists_of_common_misspellings/For_machines
From the list cited above, the substitution script found the following
misspellings:
priviledge->privilege
succeded->succeeded
|
|
Unset IO disconnect function when we try to destroy GAtPPP instance.
After freeing the instance, the IO disconnect function should not be
invoked.
|
|
|
|
The biggest update here is that the server needs to be in dormant mode
by default, so as not to send a Configure-Req to the peer until the peer
is ready. This requires adding special constructor for LCP to
initialize it to Stopped state instead of initial state.
Along with this, we pass the server local IP directly to the ppp server
constructor.
|
|
|
|
|
|
1. Add interface to set PPP server info by g_at_ppp_set_server_info.
2. Pass local and peer address through IPCP handshaking.
|
|
|
|
|
|
|
|
|
|
Before sending to hdlc, set the address and control field.
Fix hardcode of ppp header size.
|
|
Transition to DEAD when lcp is finished and ignore any io
disconnects if we are already dead.
|
|
Right now it is very hard to figure out whether we should be calling the
connect callback or the disconnect callback. So refactor as follows:
- Connect callback is only called once the net is actually up
- Disconnect callback is called once ppp is down, with a reason
for why it is so.
|
|
This function simply didn't have the context of why the phase was being
entered. Instead have each protocol notify GAtPPP as to what is
happening. We already had this more or less for IPCP and AUTH events,
this just now formalizes it for LCP as well.
|
|
|
|
|
|
|
|
remove call to signal_close for lcp object, it is redundent. If
our io is destroyed we are dead, so transition the ppp phase to
DEAD so our disconnect callback can be called.
|
|
Marcel: recording right now only works for PPP, so we'd need some sort
of multi-protocol support.
So for now expose set_recording to be used through the main PPP object.
HDLC object recording support needs to be extended.
|
|
|
|
|
|
|
|
|