mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-17 03:25:46 +00:00
032fc7a937
hooking together multiple qemu instances into a single virtual network without needing root access. It can also be used for tunneling or other network simulation tasks. PR: ports/76874 Submitted by: Craig Boston <craig@yekse.gank.org>
35 lines
962 B
C
35 lines
962 B
C
--- port.c Sat Jan 29 15:02:08 2005
|
|
+++ port.c Sun Jan 30 11:36:03 2005
|
|
@@ -10,6 +10,9 @@
|
|
#include <syslog.h>
|
|
#include <sys/socket.h>
|
|
#include <sys/un.h>
|
|
+#ifdef __FreeBSD__
|
|
+#include <string.h>
|
|
+#endif
|
|
#include "switch.h"
|
|
#include "hash.h"
|
|
#include "port.h"
|
|
@@ -316,10 +319,19 @@
|
|
port=p->data;
|
|
//if(match_sock(p->control, fd, p->data, p->data_len, &data)) break;
|
|
if(p->data_len == sizeof(struct sock_data) &&
|
|
- !(memcmp(&(port->sock), &mine->sock, sizeof(mine->sock)))) break;
|
|
+#ifdef __FreeBSD__
|
|
+ port->sock.sun_family == mine->sock.sun_family &&
|
|
+ !(strcmp(port->sock.sun_path, mine->sock.sun_path)))
|
|
+#else
|
|
+ !(memcmp(&(port->sock), &mine->sock, sizeof(mine->sock))))
|
|
+#endif
|
|
+ break;
|
|
}
|
|
}
|
|
- handle_direct_data(p,hub,&packet,len);
|
|
+ if (i < g_nfds)
|
|
+ handle_direct_data(p,hub,&packet,len);
|
|
+ else
|
|
+ printlog(LOG_WARNING, "No port associated with descriptor %d", fd);
|
|
return 0;
|
|
}
|
|
|