1 | /* SPDX-License-Identifier: ((GPL-2.0-only WITH Linux-syscall-note) OR BSD-3-Clause) */ |
2 | /* |
3 | * linux/can/raw.h |
4 | * |
5 | * Definitions for raw CAN sockets |
6 | * |
7 | * Authors: Oliver Hartkopp <oliver.hartkopp@volkswagen.de> |
8 | * Urs Thuermann <urs.thuermann@volkswagen.de> |
9 | * Copyright (c) 2002-2007 Volkswagen Group Electronic Research |
10 | * All rights reserved. |
11 | * |
12 | * Redistribution and use in source and binary forms, with or without |
13 | * modification, are permitted provided that the following conditions |
14 | * are met: |
15 | * 1. Redistributions of source code must retain the above copyright |
16 | * notice, this list of conditions and the following disclaimer. |
17 | * 2. Redistributions in binary form must reproduce the above copyright |
18 | * notice, this list of conditions and the following disclaimer in the |
19 | * documentation and/or other materials provided with the distribution. |
20 | * 3. Neither the name of Volkswagen nor the names of its contributors |
21 | * may be used to endorse or promote products derived from this software |
22 | * without specific prior written permission. |
23 | * |
24 | * Alternatively, provided that this notice is retained in full, this |
25 | * software may be distributed under the terms of the GNU General |
26 | * Public License ("GPL") version 2, in which case the provisions of the |
27 | * GPL apply INSTEAD OF those given above. |
28 | * |
29 | * The provided data structures and external interfaces from this code |
30 | * are not restricted to be used by modules with a GPL compatible license. |
31 | * |
32 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
33 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
34 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
35 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
36 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
37 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
38 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
39 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
40 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
41 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
42 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH |
43 | * DAMAGE. |
44 | */ |
45 | |
46 | #ifndef _CAN_RAW_H |
47 | #define _CAN_RAW_H |
48 | |
49 | #include <linux/can.h> |
50 | |
51 | #define SOL_CAN_RAW (SOL_CAN_BASE + CAN_RAW) |
52 | enum { |
53 | SCM_CAN_RAW_ERRQUEUE = 1, |
54 | }; |
55 | |
56 | /* for socket options affecting the socket (not the global system) */ |
57 | |
58 | enum { |
59 | CAN_RAW_FILTER = 1, /* set 0 .. n can_filter(s) */ |
60 | CAN_RAW_ERR_FILTER, /* set filter for error frames */ |
61 | CAN_RAW_LOOPBACK, /* local loopback (default:on) */ |
62 | CAN_RAW_RECV_OWN_MSGS, /* receive my own msgs (default:off) */ |
63 | CAN_RAW_FD_FRAMES, /* allow CAN FD frames (default:off) */ |
64 | CAN_RAW_JOIN_FILTERS, /* all filters must match to trigger */ |
65 | }; |
66 | |
67 | #endif /* !_UAPI_CAN_RAW_H */ |
68 | |