Comment 3 for bug 1078757

Revision history for this message
liviu (cpliviu) wrote :

found sollution
i modify a file but i don't know how make a patch
+++ src/dhcp_probe.c 2013-05-23 12:01:00.927000081 +0300
@@ -708,6 +708,7 @@
        int isYiaddrInLeaseNetworksOfConcern = 0; /* boolean */
        char yiaddr_network_of_concern_addenda[STR_MAXLEN];
        int isLegalServer; /* boolean */
+ int isLegalServermac; /* boolean */

        /* fields parsed out from packet*/
        struct ether_addr ether_dhost, ether_shost;
@@ -836,6 +837,7 @@

        /* Determine if the response is from an expected server. */
        isLegalServer = 1; /* start by assuming it is expected. */
+ isLegalServermac = 1; /* start by assuming it is expected. */

        if (!isLegalServersMember(&ip_src)) {
                if (debug > 10)
@@ -846,10 +848,10 @@
        if (!isLegalServerEthersrcsMember(&ether_shost)) {
                if (debug > 10)
                        report(LOG_DEBUG, " ether_shost %s is not a legal server", ether_shost_str);
- isLegalServer = 0;
+ isLegalServermac = 0;
        }

- if (isLegalServer) {
+ if (isLegalServer || isLegalServermac) {
                if (debug > 10)
                        report(LOG_DEBUG, " this is a legal server, ignoring");
                return;