cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

p80211ioctl.h (3586B)


      1/* SPDX-License-Identifier: (GPL-2.0 OR MPL-1.1) */
      2/*
      3 *
      4 * Declares constants and types for the p80211 ioctls
      5 *
      6 * Copyright (C) 1999 AbsoluteValue Systems, Inc.  All Rights Reserved.
      7 * --------------------------------------------------------------------
      8 *
      9 * linux-wlan
     10 *
     11 *   The contents of this file are subject to the Mozilla Public
     12 *   License Version 1.1 (the "License"); you may not use this file
     13 *   except in compliance with the License. You may obtain a copy of
     14 *   the License at http://www.mozilla.org/MPL/
     15 *
     16 *   Software distributed under the License is distributed on an "AS
     17 *   IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
     18 *   implied. See the License for the specific language governing
     19 *   rights and limitations under the License.
     20 *
     21 *   Alternatively, the contents of this file may be used under the
     22 *   terms of the GNU Public License version 2 (the "GPL"), in which
     23 *   case the provisions of the GPL are applicable instead of the
     24 *   above.  If you wish to allow the use of your version of this file
     25 *   only under the terms of the GPL and not to allow others to use
     26 *   your version of this file under the MPL, indicate your decision
     27 *   by deleting the provisions above and replace them with the notice
     28 *   and other provisions required by the GPL.  If you do not delete
     29 *   the provisions above, a recipient may use your version of this
     30 *   file under either the MPL or the GPL.
     31 *
     32 * --------------------------------------------------------------------
     33 *
     34 * Inquiries regarding the linux-wlan Open Source project can be
     35 * made directly to:
     36 *
     37 * AbsoluteValue Systems Inc.
     38 * info@linux-wlan.com
     39 * http://www.linux-wlan.com
     40 *
     41 * --------------------------------------------------------------------
     42 *
     43 * Portions of the development of this software were funded by
     44 * Intersil Corporation as part of PRISM(R) chipset product development.
     45 *
     46 * --------------------------------------------------------------------
     47 *
     48 *  While this file is called 'ioctl' is purpose goes a little beyond
     49 *  that.  This file defines the types and contants used to implement
     50 *  the p80211 request/confirm/indicate interfaces on Linux.  The
     51 *  request/confirm interface is, in fact, normally implemented as an
     52 *  ioctl.  The indicate interface on the other hand, is implemented
     53 *  using the Linux 'netlink' interface.
     54 *
     55 *  The reason I say that request/confirm is 'normally' implemented
     56 *  via ioctl is that we're reserving the right to be able to send
     57 *  request commands via the netlink interface.  This will be necessary
     58 *  if we ever need to send request messages when there aren't any
     59 *  wlan network devices present (i.e. sending a message that only p80211
     60 *  cares about.
     61 * --------------------------------------------------------------------
     62 */
     63
     64#ifndef _P80211IOCTL_H
     65#define _P80211IOCTL_H
     66
     67/* p80211 ioctl "request" codes.  See argument 2 of ioctl(2). */
     68
     69#define P80211_IFTEST		(SIOCDEVPRIVATE + 0)
     70#define P80211_IFREQ		(SIOCDEVPRIVATE + 1)
     71
     72/*----------------------------------------------------------------*/
     73/* Magic number, a quick test to see we're getting the desired struct */
     74
     75#define P80211_IOCTL_MAGIC	(0x4a2d464dUL)
     76
     77/*----------------------------------------------------------------*/
     78/* A ptr to the following structure type is passed as the third */
     79/*  argument to the ioctl system call when issuing a request to */
     80/*  the p80211 module. */
     81
     82struct p80211ioctl_req {
     83	char name[WLAN_DEVNAMELEN_MAX];
     84	char __user *data;
     85	u32 magic;
     86	u16 len;
     87	u32 result;
     88} __packed;
     89
     90#endif /* _P80211IOCTL_H */