--- 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 - "
