1 /* Copyright (C) 1996, 1997, 1998, 2003 Free Software Foundation, Inc. 2 This file is part of the GNU C Library. 3 4 The GNU C Library is free software; you can redistribute it and/or 5 modify it under the terms of the GNU Lesser General Public 6 License as published by the Free Software Foundation; either 7 version 2.1 of the License, or (at your option) any later version. 8 9 The GNU C Library is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 Lesser General Public License for more details. 13 14 You should have received a copy of the GNU Lesser General Public 15 License along with the GNU C Library; if not, write to the Free 16 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 17 02111-1307 USA. */ 18 19 #ifndef _SYS_IOCTL_H 20 # error "Never use <bits/ioctls.h> directly; include <sys/ioctl.h> instead." 21 #endif 22 23 /* Use the definitions from the kernel header files. */ 24 #include <asm/ioctls.h> 25 26 /* Routing table calls. */ 27 #define SIOCADDRT 0x890B /* add routing table entry */ 28 #define SIOCDELRT 0x890C /* delete routing table entry */ 29 #define SIOCRTMSG 0x890D /* call to routing system */ 30 31 /* Socket configuration controls. */ 32 #define SIOCGIFNAME 0x8910 /* get iface name */ 33 #define SIOCSIFLINK 0x8911 /* set iface channel */ 34 #define SIOCGIFCONF 0x8912 /* get iface list */ 35 #define SIOCGIFFLAGS 0x8913 /* get flags */ 36 #define SIOCSIFFLAGS 0x8914 /* set flags */ 37 #define SIOCGIFADDR 0x8915 /* get PA address */ 38 #define SIOCSIFADDR 0x8916 /* set PA address */ 39 #define SIOCGIFDSTADDR 0x8917 /* get remote PA address */ 40 #define SIOCSIFDSTADDR 0x8918 /* set remote PA address */ 41 #define SIOCGIFBRDADDR 0x8919 /* get broadcast PA address */ 42 #define SIOCSIFBRDADDR 0x891a /* set broadcast PA address */ 43 #define SIOCGIFNETMASK 0x891b /* get network PA mask */ 44 #define SIOCSIFNETMASK 0x891c /* set network PA mask */ 45 #define SIOCGIFMETRIC 0x891d /* get metric */ 46 #define SIOCSIFMETRIC 0x891e /* set metric */ 47 #define SIOCGIFMEM 0x891f /* get memory address (BSD) */ 48 #define SIOCSIFMEM 0x8920 /* set memory address (BSD) */ 49 #define SIOCGIFMTU 0x8921 /* get MTU size */ 50 #define SIOCSIFMTU 0x8922 /* set MTU size */ 51 #define SIOCSIFNAME 0x8923 /* set interface name */ 52 #define SIOCSIFHWADDR 0x8924 /* set hardware address */ 53 #define SIOCGIFENCAP 0x8925 /* get/set encapsulations */ 54 #define SIOCSIFENCAP 0x8926 55 #define SIOCGIFHWADDR 0x8927 /* Get hardware address */ 56 #define SIOCGIFSLAVE 0x8929 /* Driver slaving support */ 57 #define SIOCSIFSLAVE 0x8930 58 #define SIOCADDMULTI 0x8931 /* Multicast address lists */ 59 #define SIOCDELMULTI 0x8932 60 #define SIOCGIFINDEX 0x8933 /* name -> if_index mapping */ 61 #define SIOGIFINDEX SIOCGIFINDEX /* misprint compatibility :-) */ 62 #define SIOCSIFPFLAGS 0x8934 /* set/get extended flags set */ 63 #define SIOCGIFPFLAGS 0x8935 64 #define SIOCDIFADDR 0x8936 /* delete PA address */ 65 #define SIOCSIFHWBROADCAST 0x8937 /* set hardware broadcast addr */ 66 #define SIOCGIFCOUNT 0x8938 /* get number of devices */ 67 68 #define SIOCGIFBR 0x8940 /* Bridging support */ 69 #define SIOCSIFBR 0x8941 /* Set bridging options */ 70 71 #define SIOCGIFTXQLEN 0x8942 /* Get the tx queue length */ 72 #define SIOCSIFTXQLEN 0x8943 /* Set the tx queue length */ 73 74 75 /* ARP cache control calls. */ 76 /* 0x8950 - 0x8952 * obsolete calls, don't re-use */ 77 #define SIOCDARP 0x8953 /* delete ARP table entry */ 78 #define SIOCGARP 0x8954 /* get ARP table entry */ 79 #define SIOCSARP 0x8955 /* set ARP table entry */ 80 81 /* RARP cache control calls. */ 82 #define SIOCDRARP 0x8960 /* delete RARP table entry */ 83 #define SIOCGRARP 0x8961 /* get RARP table entry */ 84 #define SIOCSRARP 0x8962 /* set RARP table entry */ 85 86 /* Driver configuration calls */ 87 88 #define SIOCGIFMAP 0x8970 /* Get device parameters */ 89 #define SIOCSIFMAP 0x8971 /* Set device parameters */ 90 91 /* DLCI configuration calls */ 92 93 #define SIOCADDDLCI 0x8980 /* Create new DLCI device */ 94 #define SIOCDELDLCI 0x8981 /* Delete DLCI device */ 95 96 /* Device private ioctl calls. */ 97 98 /* These 16 ioctls are available to devices via the do_ioctl() device 99 vector. Each device should include this file and redefine these 100 names as their own. Because these are device dependent it is a good 101 idea _NOT_ to issue them to random objects and hope. */ 102 103 #define SIOCDEVPRIVATE 0x89F0 /* to 89FF */ 104 105 /* 106 * These 16 ioctl calls are protocol private 107 */ 108 109 #define SIOCPROTOPRIVATE 0x89E0 /* to 89EF */ 110