diff --git a/gatchat/ppp_cp.c b/gatchat/ppp_cp.c index 99583d36..dd56d71c 100644 --- a/gatchat/ppp_cp.c +++ b/gatchat/ppp_cp.c @@ -1284,6 +1284,11 @@ gpointer pppcp_get_data(struct pppcp_data *pppcp) return pppcp->priv; } +void pppcp_set_option_strings(struct pppcp_data *pppcp, const char **opts) +{ + pppcp->option_strings = opts; +} + struct pppcp_data *pppcp_new(GAtPPP *ppp, guint16 proto) { struct pppcp_data *data; diff --git a/gatchat/ppp_cp.h b/gatchat/ppp_cp.h index 9e74f253..5798fbeb 100644 --- a/gatchat/ppp_cp.h +++ b/gatchat/ppp_cp.h @@ -106,6 +106,8 @@ void pppcp_free(struct pppcp_data *data); void pppcp_set_data(struct pppcp_data *pppcp, gpointer data); gpointer pppcp_get_data(struct pppcp_data *pppcp); +void pppcp_set_option_strings(struct pppcp_data *pppcp, const char **opts); + void pppcp_add_config_option(struct pppcp_data *data, struct ppp_option *option); void pppcp_set_valid_codes(struct pppcp_data *data, guint16 codes); diff --git a/gatchat/ppp_ipcp.c b/gatchat/ppp_ipcp.c index e81c6b72..49cf950f 100644 --- a/gatchat/ppp_ipcp.c +++ b/gatchat/ppp_ipcp.c @@ -195,7 +195,7 @@ struct pppcp_data *ipcp_new(GAtPPP *ppp) return NULL; } - pppcp->option_strings = ipcp_option_strings; + pppcp_set_option_strings(pppcp, ipcp_option_strings); pppcp->prefix = "ipcp"; pppcp_set_valid_codes(pppcp, IPCP_SUPPORTED_CODES); diff --git a/gatchat/ppp_lcp.c b/gatchat/ppp_lcp.c index 2431aea8..8ad70d82 100644 --- a/gatchat/ppp_lcp.c +++ b/gatchat/ppp_lcp.c @@ -230,7 +230,7 @@ struct pppcp_data *lcp_new(GAtPPP *ppp) return NULL; } - pppcp->option_strings = lcp_option_strings; + pppcp_set_option_strings(pppcp, lcp_option_strings); pppcp->prefix = "lcp"; pppcp_set_valid_codes(pppcp, LCP_SUPPORTED_CODES);