X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fplugins%2Fpppoatm%2Fpppoatm.c;h=39d3dbdf4cab33c45434464413fe8c7a6ebfe926;hb=HEAD;hp=09cd0b8bfb0142524d12c15971f8e13844e7e6b0;hpb=cefbec14d0b11f854fecb51a6c96d7c296f0f1c6;p=ppp.git diff --git a/pppd/plugins/pppoatm/pppoatm.c b/pppd/plugins/pppoatm/pppoatm.c index 09cd0b8..39d3dbd 100644 --- a/pppd/plugins/pppoatm/pppoatm.c +++ b/pppd/plugins/pppoatm/pppoatm.c @@ -13,25 +13,27 @@ * as published by the Free Software Foundation; either version * 2 of the License, or (at your option) any later version. */ -#ifdef HAVE_CONFIG_H -#include -#endif #include #include #include -#include "pppd.h" -#include "pathnames.h" -#include "fsm.h" /* Needed for lcp.h to include cleanly */ -#include "lcp.h" #include #include #include #include #include #include +#include +#include +#include + +#include +#include +#include /* Needed for lcp.h to include cleanly */ +#include + -const char pppd_version[] = VERSION; +const char pppd_version[] = PPPD_VERSION; static struct sockaddr_atmpvc pvcaddr; static char *qosstr = NULL; @@ -42,8 +44,9 @@ static int pppoatm_max_mtu, pppoatm_max_mru; static int setdevname_pppoatm(const char *cp, const char **argv, int doit); struct channel pppoa_channel; static int pppoa_fd = -1; +static char devnam[MAXNAMELEN]; -static option_t pppoa_options[] = { +static struct option pppoa_options[] = { { "device name", o_wild, (void *) &setdevname_pppoatm, "ATM service provider IDs: VPI.VCI", OPT_DEVNAM | OPT_PRIVFIX | OPT_NOARG | OPT_A2STRVAL | OPT_STATIC, @@ -89,7 +92,8 @@ static int setdevname_pppoatm(const char *cp, const char **argv, int doit) return 1; memcpy(&pvcaddr, &addr, sizeof pvcaddr); - strlcpy(devnam, cp, sizeof devnam); + strlcpy(devnam, cp, sizeof(devnam)); + ppp_set_devnam(devnam); devstat.st_mode = S_IFSOCK; if (the_channel != &pppoa_channel) { the_channel = &pppoa_channel; @@ -163,7 +167,7 @@ static int connect_pppoatm(void) pppoatm_max_mtu = lcp_allowoptions[0].mru; pppoatm_max_mru = lcp_wantoptions[0].mru; set_line_discipline_pppoatm(fd); - strlcpy(ppp_devnam, devnam, sizeof(ppp_devnam)); + ppp_set_pppdevnam(devnam); pppoa_fd = fd; return fd; } @@ -177,13 +181,13 @@ void plugin_init(void) { #ifdef linux extern int new_style_driver; /* From sys-linux.c */ - if (!ppp_available() && !new_style_driver) + if (!ppp_check_kernel_support() && !new_style_driver) fatal("Kernel doesn't support ppp_generic - " "needed for PPPoATM"); #else fatal("No PPPoATM support on this OS"); #endif - add_options(pppoa_options); + ppp_add_options(pppoa_options); } struct channel pppoa_channel = { @@ -192,8 +196,8 @@ struct channel pppoa_channel = { .check_options = NULL, .connect = &connect_pppoatm, .disconnect = &disconnect_pppoatm, - .establish_ppp = &generic_establish_ppp, - .disestablish_ppp = &generic_disestablish_ppp, + .establish_ppp = &ppp_generic_establish, + .disestablish_ppp = &ppp_generic_disestablish, .send_config = NULL, .recv_config = NULL, .close = NULL,