1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-12 07:27:57 +00:00

Add an extra patch for support/ethertalk/bpfiltp.c to allow Columbia

Appletalk to run on FreeBSD 3.0 and up. The mechanism used to add a
non-IP multicast group via SIOCADDMULTI changed between 2.2.x and 3.0,
but bpfiltp.c:pi_addmulti() was not changed to match. Without this
patch, the port will compile but aarpd will not run. (This kind of messes
up everything since the port is built to use Ethertalk Phase 2, and
none of that works without aarpd.)
This commit is contained in:
Bill Paul 1999-02-01 21:39:13 +00:00
parent a602d58e6b
commit c4cc48c41f
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=16467

29
net/cap/files/patch-ai Normal file
View File

@ -0,0 +1,29 @@
--- support/ethertalk/bpfiltp.c.orig Mon Feb 1 10:09:12 1999
+++ support/ethertalk/bpfiltp.c Mon Feb 1 10:07:12 1999
@@ -47,6 +47,8 @@
#endif
#if __FreeBSD_version >= 300000
#include <net/if_var.h>
+#include <net/if_dl.h>
+#include <net/ethernet.h>
#endif
#endif /*__FreeBSD__*/
#include <netinet/if_ether.h>
@@ -347,9 +349,17 @@
struct ifreq *ifr;
{
int sock;
+#if defined(__FreeBSD__) && __FreeBSD_version >= 300000
+ struct sockaddr_dl *sdl;
+ sdl = (struct sockaddr_dl *)&ifr->ifr_addr;
+ sdl->sdl_len = sizeof(struct sockaddr_dl);
+ sdl->sdl_family = AF_LINK;
+ bcopy(multi, LLADDR(sdl), ETHER_ADDR_LEN);
+#else
ifr->ifr_addr.sa_family = AF_UNSPEC;
bcopy(multi, ifr->ifr_addr.sa_data, EHRD);
+#endif
/*
* open a socket, temporarily, to use for SIOC* ioctls
*