Displaying 2 results from an estimated 2 matches for "net_raw_fd_init".
2009 Nov 02
0
[PATCHv4 3/6] qemu/net: add raw backend
...ed(__OpenBSD__)
#include <util.h>
#endif
@@ -1870,6 +1873,158 @@ static TAPState *net_tap_init(VLANState *vlan, const char *model,
#endif /* !_WIN32 */
+typedef struct RAWState {
+ VLANClientState *vc;
+ int fd;
+ uint8_t buf[4096];
+ int promisc;
+} RAWState;
+
+static int net_raw_fd_init(Monitor *mon, const char *ifname, int promisc)
+{
+ int fd, ret;
+ struct ifreq req;
+ struct sockaddr_ll lladdr;
+
+ fd = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL));
+ if (fd < 0)
+ fprintf(stderr, "packet socket failed\n");
+
+ memset(&req, 0, sizeof(req));
+ strncpy(req.ifr_...
2009 Nov 02
0
[PATCHv4 3/6] qemu/net: add raw backend
...ed(__OpenBSD__)
#include <util.h>
#endif
@@ -1870,6 +1873,158 @@ static TAPState *net_tap_init(VLANState *vlan, const char *model,
#endif /* !_WIN32 */
+typedef struct RAWState {
+ VLANClientState *vc;
+ int fd;
+ uint8_t buf[4096];
+ int promisc;
+} RAWState;
+
+static int net_raw_fd_init(Monitor *mon, const char *ifname, int promisc)
+{
+ int fd, ret;
+ struct ifreq req;
+ struct sockaddr_ll lladdr;
+
+ fd = socket(PF_PACKET, SOCK_RAW, htons(ETH_P_ALL));
+ if (fd < 0)
+ fprintf(stderr, "packet socket failed\n");
+
+ memset(&req, 0, sizeof(req));
+ strncpy(req.ifr_...