]> git.ozlabs.org Git - ppp.git/blobdiff - pppd/plugins/pppoe/plugin.c
pppoe: Fix sending of PADT on connection termination (#470)
[ppp.git] / pppd / plugins / pppoe / plugin.c
index c7ace96f18a43112699e5644aac65a760c799f9e..7d4709ecf6fbd69068fefc919d579bb4c99885a3 100644 (file)
@@ -310,6 +310,9 @@ PPPOEDisconnectDevice(void)
                sizeof(struct sockaddr_pppox)) < 0 && errno != EALREADY)
        error("Failed to disconnect PPPoE socket: %d %m", errno);
     close(conn->sessionSocket);
+    if (conn->discoverySocket < 0)
+       conn->discoverySocket =
+            openInterface(conn->ifName, Eth_PPPOE_Discovery, NULL);
     if (conn->discoverySocket >= 0) {
         sendPADT(conn, NULL);
        close(conn->discoverySocket);