blob: b479fd4e097047d45efac95634f13cb489773a65 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
--- src/sysdeps/freebsd.c.orig 2014-10-14 17:46:57.000000000 -0700
+++ src/sysdeps/freebsd.c 2017-03-21 00:00:48.928710000 -0700
@@ -701,9 +701,15 @@
xig->xig_len > sizeof(struct xinpgen);
xig = (struct xinpgen *)((char *)xig + xig->xig_len))
{
+#if __FreeBSD_version >= 1200026
+ struct xtcpcb *tp = (struct xtcpcb *)xig;
+ struct xinpcb *inp = &tp->xt_inp;
+ struct xsocket *so = &inp->xi_socket;
+#else
struct tcpcb *tp = &((struct xtcpcb *)xig)->xt_tp;
struct inpcb *inp = &((struct xtcpcb *)xig)->xt_inp;
struct xsocket *so = &((struct xtcpcb *)xig)->xt_socket;
+#endif
/* Ignore sockets for protocols other than tcp. */
if (so->xso_protocol != IPPROTO_TCP)
@@ -1441,7 +1447,9 @@
struct smbcmd cmd;
bzero(&cmd, sizeof(cmd));
+#if __FreeBSD_version < 1100070
cmd.data.byte_ptr = (char *)&byte;
+#endif
cmd.slave = 0x5a;
cmd.cmd = command;
if (ioctl(iodev, SMB_READB, (caddr_t)&cmd) == -1)
@@ -1449,6 +1457,9 @@
close(iodev);
return FALSE;
}
+#if __FreeBSD_version >= 1100070
+ byte = (u_char)cmd.rdata.byte;
+#endif
}
#endif
else
|