SecBSD's official ports repository
This commit is contained in:
commit
2c0afcbbf3
64331 changed files with 5339189 additions and 0 deletions
77
net/mac-telnet/patches/patch-src_interfaces_c
Normal file
77
net/mac-telnet/patches/patch-src_interfaces_c
Normal file
|
@ -0,0 +1,77 @@
|
|||
Index: src/interfaces.c
|
||||
--- src/interfaces.c.orig
|
||||
+++ src/interfaces.c
|
||||
@@ -28,7 +28,7 @@
|
||||
#include <sys/socket.h>
|
||||
#include <sys/types.h>
|
||||
#include <ifaddrs.h>
|
||||
-#if defined(__FreeBSD__) || defined(__APPLE__)
|
||||
+#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__OpenBSD__)
|
||||
#include <netinet/in.h>
|
||||
#endif
|
||||
#include <netinet/ip.h>
|
||||
@@ -37,6 +37,11 @@
|
||||
#include <net/ethernet.h>
|
||||
#define ETH_FRAME_LEN (ETHER_MAX_LEN - ETHER_CRC_LEN)
|
||||
#define ETH_ALEN ETHER_ADDR_LEN
|
||||
+#elif defined(__OpenBSD__)
|
||||
+#include <net/if.h>
|
||||
+#include <netinet/if_ether.h>
|
||||
+#define ETH_FRAME_LEN (ETHER_MAX_LEN - ETHER_CRC_LEN)
|
||||
+#define ETH_ALEN ETHER_ADDR_LEN
|
||||
#else
|
||||
#include <netinet/ether.h>
|
||||
#endif
|
||||
@@ -298,7 +303,7 @@ int net_send_udp(const int fd, struct net_interface *i
|
||||
*/
|
||||
static unsigned char stackbuf[ETH_FRAME_LEN];
|
||||
void* buffer = (void*)&stackbuf;
|
||||
-#if defined(__FreeBSD__) || defined(__APPLE__)
|
||||
+#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__OpenBSD__)
|
||||
struct ether_header *eh = (struct ether_header *)buffer;
|
||||
struct ip *ip = (struct ip *)(buffer + 14);
|
||||
#else
|
||||
@@ -325,7 +330,7 @@ int net_send_udp(const int fd, struct net_interface *i
|
||||
}
|
||||
|
||||
/* Init ethernet header */
|
||||
-#if defined(__FreeBSD__) || defined(__APPLE__)
|
||||
+#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__OpenBSD__)
|
||||
memcpy(eh->ether_shost, sourcemac, ETH_ALEN);
|
||||
memcpy(eh->ether_dhost, destmac, ETH_ALEN);
|
||||
eh->ether_type = htons(ETHERTYPE_IP);
|
||||
@@ -350,7 +355,7 @@ int net_send_udp(const int fd, struct net_interface *i
|
||||
#endif
|
||||
|
||||
/* Init IP Header */
|
||||
-#if defined(__FreeBSD__) || defined(__APPLE__)
|
||||
+#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__OpenBSD__)
|
||||
ip->ip_v = 4;
|
||||
ip->ip_hl = 5;
|
||||
ip->ip_tos = 0x10;
|
||||
@@ -377,14 +382,14 @@ int net_send_udp(const int fd, struct net_interface *i
|
||||
#endif
|
||||
|
||||
/* Calculate checksum for IP header */
|
||||
-#if defined(__FreeBSD__) || defined(__APPLE__)
|
||||
+#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__OpenBSD__)
|
||||
ip->ip_sum = in_cksum((unsigned short *)ip, sizeof(struct ip));
|
||||
#else
|
||||
ip->check = in_cksum((unsigned short *)ip, sizeof(struct iphdr));
|
||||
#endif
|
||||
|
||||
/* Init UDP Header */
|
||||
-#if defined(__FreeBSD__) || defined(__APPLE__)
|
||||
+#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__OpenBSD__)
|
||||
udp->uh_sport = htons(sourceport);
|
||||
udp->uh_dport = htons(destport);
|
||||
udp->uh_ulen = htons(sizeof(struct udphdr) + datalen);
|
||||
@@ -400,7 +405,7 @@ int net_send_udp(const int fd, struct net_interface *i
|
||||
memcpy(rest, data, datalen);
|
||||
|
||||
/* Add UDP checksum */
|
||||
-#if defined(__FreeBSD__) || defined(__APPLE__)
|
||||
+#if defined(__FreeBSD__) || defined(__APPLE__) || defined(__OpenBSD__)
|
||||
udp->uh_sum = udp_sum_calc((unsigned char *)&(ip->ip_src.s_addr),
|
||||
(unsigned char *)&(ip->ip_dst.s_addr),
|
||||
(unsigned char *)udp,
|
Loading…
Add table
Add a link
Reference in a new issue