summaryrefslogtreecommitdiffstats
path: root/gatchat/ppp_cp.h
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2010-04-07 16:40:49 -0500
committerDenis Kenzior <denkenz@gmail.com>2010-04-07 16:41:49 -0500
commit4e01f9921e527a4e360a43eff6f9b8bcda70a5c5 (patch)
treef4cba2b1ac09fb244bcefaddc06c223b50c96016 /gatchat/ppp_cp.h
parent5f361d7de979aaac9212b5dd596eaf71fbf3b557 (diff)
downloadofono-4e01f9921e527a4e360a43eff6f9b8bcda70a5c5.tar.bz2
ppp: Add rca callback
When the other side acks our options, then let us apply these options locally and start using them
Diffstat (limited to 'gatchat/ppp_cp.h')
-rw-r--r--gatchat/ppp_cp.h16
1 files changed, 9 insertions, 7 deletions
diff --git a/gatchat/ppp_cp.h b/gatchat/ppp_cp.h
index 407cbd7e..71ad1de5 100644
--- a/gatchat/ppp_cp.h
+++ b/gatchat/ppp_cp.h
@@ -49,6 +49,13 @@ enum pppcp_code {
PPPCP_CODE_TYPE_DISCARD_REQUEST
};
+struct pppcp_packet {
+ guint8 code;
+ guint8 identifier;
+ guint16 length;
+ guint8 data[0];
+} __attribute__((packed));
+
struct ppp_option_iter {
guint16 max;
guint16 pos;
@@ -63,19 +70,14 @@ struct pppcp_action {
void (*this_layer_down)(struct pppcp_data *data);
void (*this_layer_started)(struct pppcp_data *data);
void (*this_layer_finished)(struct pppcp_data *data);
+ /* Remote side acked these options, we can now use them */
+ void (*rca)(struct pppcp_data *pppcp, const struct pppcp_packet *pkt);
enum option_rval (*option_scan)(struct pppcp_data *pppcp,
struct ppp_option *option);
void (*option_process)(struct pppcp_data *data,
struct ppp_option *option);
};
-struct pppcp_packet {
- guint8 code;
- guint8 identifier;
- guint16 length;
- guint8 data[0];
-} __attribute__((packed));
-
void ppp_option_iter_init(struct ppp_option_iter *iter,
const struct pppcp_packet *packet);
gboolean ppp_option_iter_next(struct ppp_option_iter *iter);