Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp2720141imm; Sun, 1 Jul 2018 04:15:01 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJtr+U0oYcWwEkJ1T2JOc7WmO1n8/vhIzrbft3mOmBNWOFoaT/L0JSy/+EMbNhTuskFuFFE X-Received: by 2002:a17:902:be0b:: with SMTP id r11-v6mr22567027pls.182.1530443701198; Sun, 01 Jul 2018 04:15:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530443701; cv=none; d=google.com; s=arc-20160816; b=hGLgH4Nz8LzcjlbaUtO21Jhq2jGXShAv1MZPibM0G25wsGaof8Nkfd5zROSynW/uAK P2aEcDzWnQwwwt+A0XdfY+jsRdnb2sX2fnTZO4d6PSlZzB9k8X36KSUB04rMAZlRUbmQ tMsYJpsfU0vYBRFqvviJ1Pr3cP1snLt5GHOkt6ldragqnTKWOXGKMTHEdK6cd+2v7JHV ok1IOjQ5IpQfOtW7cp8+nASlMuF5nHFgE7Ckek+L8xss6nJgWRdh6OT0i8I5Y85L95qs DFxScc/Y6zRDlVeKStjJImdnJFZgSnOv8mNWcZ6C70AZkgUuRlUNFyZNtn9MbB07+tYZ my4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=SnBjGgHwy6bFzIRl66ufncbnlwOqkOlB2e460Qd7CIw=; b=gAPjlq5ecJslsCs/scIDudGe4yg2JbYycHulwauA7o8BuzWZQyQGTMfcMhNJRHJOlz snGHBenfEAjtZHFXUJObv+IhT1PLbgW9PdGBJV8yPAveoVsv393CGraDFVmdCfDhb5+T wkIZKjpdBBG08pYSB/t0Rzf6sxwsYymarvLPbB9L2gVjWEk7tDECnEA1QnwYNmi3xnNj gFzA1N6zDOjsyEexhiF1QP8UAkhP6TQDbvr5caRrbUi16hngbeHRYfOd3xXnng9ZyuHG OtrkDLGi0FHmQGZXK4N/okjgoeHmprJNGOw2ftbpfCATIIhsC8NeLWjgY4gnX0iVk/lz dh8A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b1-v6si12230831pgb.465.2018.07.01.04.14.39; Sun, 01 Jul 2018 04:15:01 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752751AbeGALM4 (ORCPT + 99 others); Sun, 1 Jul 2018 07:12:56 -0400 Received: from mx2.suse.de ([195.135.220.15]:47740 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752039AbeGALI7 (ORCPT ); Sun, 1 Jul 2018 07:08:59 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 7BAEDAE53; Sun, 1 Jul 2018 11:08:57 +0000 (UTC) From: =?UTF-8?q?Andreas=20F=C3=A4rber?= To: netdev@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Jian-Hong Pan , Jiri Pirko , Marcel Holtmann , "David S . Miller" , Matthias Brugger , Janus Piwek , =?UTF-8?q?Michael=20R=C3=B6der?= , Dollar Chen , Ken Yu , =?UTF-8?q?Andreas=20F=C3=A4rber?= , Paul Moore , Stephen Smalley , Eric Paris , selinux@tycho.nsa.gov Subject: [RFC net-next 01/15] net: Reserve protocol numbers for LoRa Date: Sun, 1 Jul 2018 13:07:50 +0200 Message-Id: <20180701110804.32415-2-afaerber@suse.de> X-Mailer: git-send-email 2.16.4 In-Reply-To: <20180701110804.32415-1-afaerber@suse.de> References: <20180701110804.32415-1-afaerber@suse.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org LoRa is a long-range, low-power wireless network technology by Semtech. It serves as base for LoRaWAN as well as multiple proprietary protocols. AF_LORA PF_LORA ARPHRD_LORA ETH_P_LORA Signed-off-by: Andreas Färber --- include/linux/socket.h | 4 +++- include/uapi/linux/if_arp.h | 1 + include/uapi/linux/if_ether.h | 1 + security/selinux/hooks.c | 4 +++- security/selinux/include/classmap.h | 4 +++- 5 files changed, 11 insertions(+), 3 deletions(-) diff --git a/include/linux/socket.h b/include/linux/socket.h index 7ed4713d5337..aa1e288b1659 100644 --- a/include/linux/socket.h +++ b/include/linux/socket.h @@ -208,8 +208,9 @@ struct ucred { * reuses AF_INET address family */ #define AF_XDP 44 /* XDP sockets */ +#define AF_LORA 45 /* LoRa sockets */ -#define AF_MAX 45 /* For now.. */ +#define AF_MAX 46 /* For now.. */ /* Protocol families, same as address families. */ #define PF_UNSPEC AF_UNSPEC @@ -259,6 +260,7 @@ struct ucred { #define PF_QIPCRTR AF_QIPCRTR #define PF_SMC AF_SMC #define PF_XDP AF_XDP +#define PF_LORA AF_LORA #define PF_MAX AF_MAX /* Maximum queue length specifiable by listen. */ diff --git a/include/uapi/linux/if_arp.h b/include/uapi/linux/if_arp.h index 4605527ca41b..1ed7cb3f2129 100644 --- a/include/uapi/linux/if_arp.h +++ b/include/uapi/linux/if_arp.h @@ -98,6 +98,7 @@ #define ARPHRD_NETLINK 824 /* Netlink header */ #define ARPHRD_6LOWPAN 825 /* IPv6 over LoWPAN */ #define ARPHRD_VSOCKMON 826 /* Vsock monitor header */ +#define ARPHRD_LORA 827 /* LoRa */ #define ARPHRD_VOID 0xFFFF /* Void type, nothing is known */ #define ARPHRD_NONE 0xFFFE /* zero header length */ diff --git a/include/uapi/linux/if_ether.h b/include/uapi/linux/if_ether.h index 3a45b4ad71a3..45644dcf5b39 100644 --- a/include/uapi/linux/if_ether.h +++ b/include/uapi/linux/if_ether.h @@ -147,6 +147,7 @@ #define ETH_P_MAP 0x00F9 /* Qualcomm multiplexing and * aggregation protocol */ +#define ETH_P_LORA 0x00FA /* LoRa */ /* * This is an Ethernet frame header. diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 10a5d2ce3870..b62bb0389d70 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c @@ -1473,7 +1473,9 @@ static inline u16 socket_type_to_security_class(int family, int type, int protoc return SECCLASS_SMC_SOCKET; case PF_XDP: return SECCLASS_XDP_SOCKET; -#if PF_MAX > 45 + case PF_LORA: + return SECCLASS_LORA_SOCKET; +#if PF_MAX > 46 #error New address family defined, please update this function. #endif } diff --git a/security/selinux/include/classmap.h b/security/selinux/include/classmap.h index bd5fe0d3204a..060d4bf8385e 100644 --- a/security/selinux/include/classmap.h +++ b/security/selinux/include/classmap.h @@ -242,9 +242,11 @@ struct security_class_mapping secclass_map[] = { {"map_create", "map_read", "map_write", "prog_load", "prog_run"} }, { "xdp_socket", { COMMON_SOCK_PERMS, NULL } }, + { "lora_socket", + { COMMON_SOCK_PERMS, NULL } }, { NULL } }; -#if PF_MAX > 45 +#if PF_MAX > 46 #error New address family defined, please update secclass_map. #endif -- 2.16.4