|
Lines 132-138
Link Here
|
| 132 |
* correctly i.e. they would not be able to send data packets. |
132 |
* correctly i.e. they would not be able to send data packets. |
| 133 |
*/ |
133 |
*/ |
| 134 |
if (!bridge->enabledPromisc && !bridge->wirelessAdapter) { |
134 |
if (!bridge->enabledPromisc && !bridge->wirelessAdapter) { |
|
|
135 |
rtnl_lock(); |
| 135 |
dev_set_promiscuity(dev, 1); |
136 |
dev_set_promiscuity(dev, 1); |
|
|
137 |
rtnl_unlock(); |
| 136 |
bridge->enabledPromisc = TRUE; |
138 |
bridge->enabledPromisc = TRUE; |
| 137 |
bridge->warnPromisc = FALSE; |
139 |
bridge->warnPromisc = FALSE; |
| 138 |
LOG(0, (KERN_NOTICE "bridge-%s: enabled promiscuous mode\n", |
140 |
LOG(0, (KERN_NOTICE "bridge-%s: enabled promiscuous mode\n", |
|
Lines 165-171
Link Here
|
| 165 |
struct net_device *dev = bridge->dev; |
167 |
struct net_device *dev = bridge->dev; |
| 166 |
|
168 |
|
| 167 |
if (bridge->enabledPromisc && !bridge->wirelessAdapter) { |
169 |
if (bridge->enabledPromisc && !bridge->wirelessAdapter) { |
|
|
170 |
rtnl_lock(); |
| 168 |
dev_set_promiscuity(dev, -1); |
171 |
dev_set_promiscuity(dev, -1); |
|
|
172 |
rtnl_unlock(); |
| 169 |
bridge->enabledPromisc = FALSE; |
173 |
bridge->enabledPromisc = FALSE; |
| 170 |
LOG(0, (KERN_NOTICE "bridge-%s: disabled promiscuous mode\n", |
174 |
LOG(0, (KERN_NOTICE "bridge-%s: disabled promiscuous mode\n", |
| 171 |
bridge->name)); |
175 |
bridge->name)); |
|
Lines 207-213
Link Here
|
| 207 |
"Your Ethernet driver is not compatible with VMware's bridged networking.\n", |
211 |
"Your Ethernet driver is not compatible with VMware's bridged networking.\n", |
| 208 |
bridge->name)); |
212 |
bridge->name)); |
| 209 |
} |
213 |
} |
|
|
214 |
rtnl_lock(); |
| 210 |
dev_set_promiscuity(dev, 0); |
215 |
dev_set_promiscuity(dev, 0); |
|
|
216 |
rtnl_unlock(); |
| 211 |
} |
217 |
} |
| 212 |
} |
218 |
} |
| 213 |
} |
219 |
} |