diff options
-rw-r--r-- | gatchat/gatppp.c | 10 | ||||
-rw-r--r-- | gatchat/gatppp.h | 7 | ||||
-rw-r--r-- | gatchat/ppp.c | 2 | ||||
-rw-r--r-- | gatchat/ppp.h | 2 |
4 files changed, 11 insertions, 10 deletions
diff --git a/gatchat/gatppp.c b/gatchat/gatppp.c index 7afff531..556387ae 100644 --- a/gatchat/gatppp.c +++ b/gatchat/gatppp.c @@ -59,11 +59,13 @@ void g_at_ppp_set_connect_function(GAtPPP *ppp, GAtPPPConnectFunc func, ppp->connect_data = user_data; } -void g_at_ppp_set_disconnect_function(GAtPPP *ppp, - GAtPPPDisconnectFunc callback, - gpointer user_data) +void g_at_ppp_set_disconnect_function(GAtPPP *ppp, GAtDisconnectFunc func, + gpointer user_data) { - ppp->disconnect_cb = callback; + if (func == NULL) + return; + + ppp->disconnect_cb = func; ppp->disconnect_data = user_data; } diff --git a/gatchat/gatppp.h b/gatchat/gatppp.h index 41aadcad..b37f74d5 100644 --- a/gatchat/gatppp.h +++ b/gatchat/gatppp.h @@ -26,6 +26,8 @@ extern "C" { #endif +#include "gat.h" + struct _GAtPPP; typedef struct _GAtPPP GAtPPP; @@ -39,14 +41,11 @@ typedef void (*GAtPPPConnectFunc)(GAtPPPConnectStatus success, const char *dns1, const char *dns2, gpointer user_data); -typedef void (*GAtPPPDisconnectFunc)(GAtPPP *ppp, gpointer user_data); - GAtPPP * g_at_ppp_new(GIOChannel *modem); void g_at_ppp_open(GAtPPP *ppp); void g_at_ppp_set_connect_function(GAtPPP *ppp, GAtPPPConnectFunc callback, gpointer user_data); -void g_at_ppp_set_disconnect_function(GAtPPP *ppp, - GAtPPPDisconnectFunc callback, +void g_at_ppp_set_disconnect_function(GAtPPP *ppp, GAtDisconnectFunc func, gpointer user_data); void g_at_ppp_shutdown(GAtPPP *ppp); void g_at_ppp_ref(GAtPPP *ppp); diff --git a/gatchat/ppp.c b/gatchat/ppp.c index 7755791c..99af49a3 100644 --- a/gatchat/ppp.c +++ b/gatchat/ppp.c @@ -383,7 +383,7 @@ static void ppp_dead(GAtPPP *ppp) { /* notify interested parties */ if (ppp->disconnect_cb) - ppp->disconnect_cb(ppp, ppp->disconnect_data); + ppp->disconnect_cb(ppp->disconnect_data); if (g_atomic_int_get(&ppp->ref_count)) return; diff --git a/gatchat/ppp.h b/gatchat/ppp.h index 6797603d..9a9eab2b 100644 --- a/gatchat/ppp.h +++ b/gatchat/ppp.h @@ -133,7 +133,7 @@ struct _GAtPPP { GQueue *recv_queue; GAtPPPConnectFunc connect_cb; gpointer connect_data; - GAtPPPDisconnectFunc disconnect_cb; + GAtDisconnectFunc disconnect_cb; gpointer disconnect_data; gint modem_watch; }; |