--- a/pppd/plugins/pppoatm/pppoatm.c +++ b/pppd/plugins/pppoatm/pppoatm.c @@ -75,13 +75,14 @@ static int setdevname_pppoatm(const char //info("PPPoATM setdevname_pppoatm: '%s'", cp); memset(&addr, 0, sizeof addr); if (text2atm(cp, (struct sockaddr *) &addr, sizeof(addr), - T2A_PVC | T2A_NAME) < 0) { - if(doit) - info("atm does not recognize: %s", cp); + T2A_PVC | T2A_NAME | T2A_WILDCARD) < 0) { + if (doit) + info("cannot parse the ATM address: %s", cp); return 0; - } - if (!doit) return 1; - //if (!dev_set_ok()) return -1; + } + if (!doit) + return 1; + memcpy(&pvcaddr, &addr, sizeof pvcaddr); strlcpy(devnam, cp, sizeof devnam); devstat.st_mode = S_IFSOCK; @@ -170,7 +171,7 @@ static void disconnect_pppoatm(void) void plugin_init(void) { -#if defined(__linux__) +#ifdef linux extern int new_style_driver; /* From sys-linux.c */ if (!ppp_available() && !new_style_driver) fatal("Kernel doesn't support ppp_generic - "