Message279558
When binding to AF_PACKET linux kernel sockets, the interface name is not passed in when given -- it is always "". This causes problems, for example, receiving packets to a "monitor0" interface doesn't work.
diff -r a6548e230ed6 Modules/socketmodule.c
--- a/Modules/socketmodule.c Thu Oct 27 19:33:22 2016 +0300
+++ b/Modules/socketmodule.c Thu Oct 27 11:13:12 2016 -0700
@@ -1344,6 +1344,7 @@
{
struct sockaddr_ll *a = (struct sockaddr_ll *)addr;
char *ifname = "";
+ // ^^ ifname should be set to interface name passed in via sockaddr.
struct ifreq ifr;
/* need to look up interface name give index */
if (a->sll_ifindex) { |
|
Date |
User |
Action |
Args |
2016-10-27 18:14:58 | mturon | set | recipients:
+ mturon |
2016-10-27 18:14:58 | mturon | set | messageid: <1477592098.82.0.815527711646.issue28545@psf.upfronthosting.co.za> |
2016-10-27 18:14:58 | mturon | link | issue28545 messages |
2016-10-27 18:14:58 | mturon | create | |
|