1From ec8dcc7faf13c57f5f6d785e4429818f1239a058 Mon Sep 17 00:00:00 2001 2From: Fabrice Fontaine <fontaine.fabrice@gmail.com> 3Date: Sun, 8 Jan 2023 20:50:18 +0100 4Subject: [PATCH] drop decnet 5 6Drop decnet as it has been removed since kernel 6.1 and 7https://github.com/torvalds/linux/commit/1202cdd665315c525b5237e96e0bedc76d7e754f 8resulting in the following build failure: 9 10net/proto-decnet.c:5:10: fatal error: linux/dn.h: No such file or directory 11 5 | #include <linux/dn.h> 12 | ^~~~~~~~~~~~ 13 14Fixes: 15 - http://autobuild.buildroot.org/results/47e0a5e0b6fcf33ab4f9848d5d8c2be9e5283950 16 17Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> 18[Upstream status: https://github.com/kernelslacker/trinity/pull/41] 19--- 20 include/net.h | 1 - 21 net/proto-decnet.c | 59 ---------------------------------------------- 22 net/proto-unix.c | 1 - 23 net/protocols.c | 1 - 24 4 files changed, 62 deletions(-) 25 delete mode 100644 net/proto-decnet.c 26 27diff --git a/include/net.h b/include/net.h 28index 99d55363..791e8090 100644 29--- a/include/net.h 30+++ b/include/net.h 31@@ -80,7 +80,6 @@ extern const struct netproto proto_atmpvc; 32 extern const struct netproto proto_atmsvc; 33 extern const struct netproto proto_x25; 34 extern const struct netproto proto_rose; 35-extern const struct netproto proto_decnet; 36 extern const struct netproto proto_llc; 37 extern const struct netproto proto_netlink; 38 extern const struct netproto proto_packet; 39diff --git a/net/proto-decnet.c b/net/proto-decnet.c 40deleted file mode 100644 41index 7711cf00..00000000 42--- a/net/proto-decnet.c 43+++ /dev/null 44@@ -1,59 +0,0 @@ 45-#include <sys/types.h> 46-#include <sys/socket.h> 47-#include <sys/un.h> 48-#include <netinet/in.h> 49-#include <linux/dn.h> 50-#include <stdlib.h> 51-#include "net.h" 52-#include "random.h" 53-#include "utils.h" // RAND_ARRAY 54-#include "compat.h" 55- 56-static void decnet_gen_sockaddr(struct sockaddr **addr, socklen_t *addrlen) 57-{ 58- struct sockaddr_dn *dn; 59- unsigned int i; 60- 61- dn = zmalloc(sizeof(struct sockaddr_dn)); 62- 63- dn->sdn_family = PF_DECnet; 64- dn->sdn_flags = rnd(); 65- dn->sdn_objnum = rnd(); 66- dn->sdn_objnamel = rnd() % 16; 67- for (i = 0; i < dn->sdn_objnamel; i++) 68- dn->sdn_objname[i] = rnd(); 69- dn->sdn_add.a_len = RAND_BOOL(); 70- dn->sdn_add.a_addr[0] = rnd(); 71- dn->sdn_add.a_addr[1] = rnd(); 72- *addr = (struct sockaddr *) dn; 73- *addrlen = sizeof(struct sockaddr_dn); 74-} 75- 76-static const unsigned int decnet_opts[] = { 77- SO_CONDATA, SO_CONACCESS, SO_PROXYUSR, SO_LINKINFO, 78- DSO_CONDATA, DSO_DISDATA, DSO_CONACCESS, DSO_ACCEPTMODE, 79- DSO_CONACCEPT, DSO_CONREJECT, DSO_LINKINFO, DSO_STREAM, 80- DSO_SEQPACKET, DSO_MAXWINDOW, DSO_NODELAY, DSO_CORK, 81- DSO_SERVICES, DSO_INFO 82-}; 83- 84-static void decnet_setsockopt(struct sockopt *so, __unused__ struct socket_triplet *triplet) 85-{ 86- so->level = SOL_DECNET; 87- so->optname = RAND_ARRAY(decnet_opts); 88- 89- // TODO: set optlen correctly 90-} 91- 92-static struct socket_triplet decnet_triplets[] = { 93- { .family = PF_DECnet, .protocol = DNPROTO_NSP, .type = SOCK_SEQPACKET }, 94- { .family = PF_DECnet, .protocol = DNPROTO_NSP, .type = SOCK_STREAM }, 95-}; 96- 97-const struct netproto proto_decnet = { 98- .name = "decnet", 99- .setsockopt = decnet_setsockopt, 100- .gen_sockaddr = decnet_gen_sockaddr, 101- .valid_triplets = decnet_triplets, 102- .nr_triplets = ARRAY_SIZE(decnet_triplets), 103-}; 104diff --git a/net/proto-unix.c b/net/proto-unix.c 105index f7427a22..119c1429 100644 106--- a/net/proto-unix.c 107+++ b/net/proto-unix.c 108@@ -2,7 +2,6 @@ 109 #include <sys/socket.h> 110 #include <sys/un.h> 111 #include <netinet/in.h> 112-#include <linux/dn.h> 113 #include <stdlib.h> 114 #include "net.h" 115 #include "random.h" 116diff --git a/net/protocols.c b/net/protocols.c 117index ea64d5f5..278f08b5 100644 118--- a/net/protocols.c 119+++ b/net/protocols.c 120@@ -18,7 +18,6 @@ const struct protoptr net_protocols[TRINITY_PF_MAX] = { 121 #ifdef USE_IPV6 122 [PF_INET6] = { .proto = &proto_inet6 }, 123 #endif 124- [PF_DECnet] = { .proto = &proto_decnet }, 125 [PF_PACKET] = { .proto = &proto_packet }, 126 #ifdef USE_NETECONET 127 [PF_ECONET] = { .proto = &proto_econet }, 128-- 1292.39.0 130 131