strlcpy(ppp_devnam, devnam, sizeof(ppp_devnam));
--- a/pppd/plugins/rp-pppoe/pppoe-discovery.c
+++ b/pppd/plugins/rp-pppoe/pppoe-discovery.c
-@@ -344,7 +344,7 @@ packetIsForMe(PPPoEConnection *conn, PPP
+@@ -348,7 +348,7 @@ packetIsForMe(PPPoEConnection *conn, PPP
if (memcmp(packet->ethHdr.h_dest, conn->myEth, ETH_ALEN)) return 0;
/* If we're not using the Host-Unique tag, then accept the packet */
parsePacket(packet, parseForHostUniq, &forMe);
return forMe;
-@@ -470,16 +470,12 @@ sendPADI(PPPoEConnection *conn)
+@@ -474,16 +474,12 @@ sendPADI(PPPoEConnection *conn)
cursor += namelen + TAG_HDR_SIZE;
/* If we're using Host-Uniq, copy it over */
}
packet.length = htons(plen);
-@@ -641,7 +637,7 @@ int main(int argc, char *argv[])
+@@ -645,7 +641,7 @@ int main(int argc, char *argv[])
memset(conn, 0, sizeof(PPPoEConnection));
switch(opt) {
case 'S':
conn->serviceName = xstrdup(optarg);
-@@ -650,7 +646,23 @@ int main(int argc, char *argv[])
+@@ -654,7 +650,23 @@ int main(int argc, char *argv[])
conn->acName = xstrdup(optarg);
break;
case 'U':
/* How do we access raw Ethernet devices? */
#undef USE_LINUX_PACKET
-@@ -224,7 +226,7 @@ typedef struct PPPoEConnectionStruct {
+@@ -217,7 +219,7 @@ typedef struct PPPoEConnectionStruct {
char *serviceName; /* Desired service name, if any */
char *acName; /* Desired AC name, if any */
int synchronous; /* Use synchronous PPP */
int printACNames; /* Just print AC names */
FILE *debugFile; /* Debug file for dumping packets */
int numPADOs; /* Number of PADO packets received */
-@@ -280,6 +282,33 @@ void pppoe_printpkt(PPPoEPacket *packet,
+@@ -273,6 +275,33 @@ void pppoe_printpkt(PPPoEPacket *packet,
void (*printer)(void *, char *, ...), void *arg);
void pppoe_log_packet(const char *prefix, PPPoEPacket *packet);