| /* |
| * DO NOT EDIT THIS FILE. It was generated from linux/if.h. |
| * |
| * Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| /* |
| * INET An implementation of the TCP/IP protocol suite for the LINUX |
| * operating system. INET is implemented using the BSD Socket |
| * interface as the means of communication with the user level. |
| * |
| * Global definitions for the INET interface module. |
| * |
| * Version: @(#)if.h 1.0.2 04/18/93 |
| * |
| * Authors: Original taken from Berkeley UNIX 4.3, (c) UCB 1982-1988 |
| * Ross Biro |
| * Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG> |
| * |
| * This program is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU General Public License |
| * as published by the Free Software Foundation; either version |
| * 2 of the License, or (at your option) any later version. |
| */ |
| |
| #include <Python.h> |
| #include <sys/ioctl.h> |
| #include <netinet/in.h> |
| #include <linux/if.h> |
| |
| void _init_linux_if_h(PyObject *m) { |
| PyModule_AddIntMacro(m, IFNAMSIZ); |
| PyModule_AddIntMacro(m, IFALIASZ); |
| |
| /* Standard interface flags (netdevice->flags). */ |
| PyModule_AddIntMacro(m, IFF_UP); |
| PyModule_AddIntMacro(m, IFF_BROADCAST); |
| PyModule_AddIntMacro(m, IFF_DEBUG); |
| PyModule_AddIntMacro(m, IFF_LOOPBACK); |
| PyModule_AddIntMacro(m, IFF_POINTOPOINT); |
| PyModule_AddIntMacro(m, IFF_NOTRAILERS); |
| PyModule_AddIntMacro(m, IFF_RUNNING); |
| PyModule_AddIntMacro(m, IFF_NOARP); |
| PyModule_AddIntMacro(m, IFF_PROMISC); |
| PyModule_AddIntMacro(m, IFF_ALLMULTI); |
| |
| PyModule_AddIntMacro(m, IFF_MASTER); |
| PyModule_AddIntMacro(m, IFF_SLAVE); |
| |
| PyModule_AddIntMacro(m, IFF_MULTICAST); |
| |
| PyModule_AddIntMacro(m, IFF_PORTSEL); |
| PyModule_AddIntMacro(m, IFF_AUTOMEDIA); |
| PyModule_AddIntMacro(m, IFF_DYNAMIC); |
| |
| PyModule_AddIntMacro(m, IFF_LOWER_UP); |
| PyModule_AddIntMacro(m, IFF_DORMANT); |
| |
| PyModule_AddIntMacro(m, IFF_ECHO); |
| |
| PyModule_AddIntMacro(m, IFF_VOLATILE); |
| |
| /* Private (from user) interface flags (netdevice->priv_flags). */ |
| PyModule_AddIntMacro(m, IFF_802_1Q_VLAN); |
| PyModule_AddIntMacro(m, IFF_EBRIDGE); |
| PyModule_AddIntMacro(m, IFF_SLAVE_INACTIVE); |
| PyModule_AddIntMacro(m, IFF_MASTER_8023AD); |
| PyModule_AddIntMacro(m, IFF_MASTER_ALB); |
| PyModule_AddIntMacro(m, IFF_BONDING); |
| PyModule_AddIntMacro(m, IFF_SLAVE_NEEDARP); |
| PyModule_AddIntMacro(m, IFF_ISATAP); |
| PyModule_AddIntMacro(m, IFF_MASTER_ARPMON); |
| PyModule_AddIntMacro(m, IFF_WAN_HDLC); |
| PyModule_AddIntMacro(m, IFF_XMIT_DST_RELEASE); |
| PyModule_AddIntMacro(m, IFF_DONT_BRIDGE); |
| PyModule_AddIntMacro(m, IFF_DISABLE_NETPOLL); |
| PyModule_AddIntMacro(m, IFF_MACVLAN_PORT); |
| PyModule_AddIntMacro(m, IFF_BRIDGE_PORT); |
| PyModule_AddIntMacro(m, IFF_OVS_DATAPATH); |
| PyModule_AddIntMacro(m, IFF_TX_SKB_SHARING); |
| PyModule_AddIntMacro(m, IFF_UNICAST_FLT); |
| PyModule_AddIntMacro(m, IFF_TEAM_PORT); |
| PyModule_AddIntMacro(m, IFF_SUPP_NOFCS); |
| |
| PyModule_AddIntMacro(m, IF_GET_IFACE); |
| PyModule_AddIntMacro(m, IF_GET_PROTO); |
| |
| /* For definitions see hdlc.h */ |
| PyModule_AddIntMacro(m, IF_IFACE_V35); |
| PyModule_AddIntMacro(m, IF_IFACE_V24); |
| PyModule_AddIntMacro(m, IF_IFACE_X21); |
| PyModule_AddIntMacro(m, IF_IFACE_T1); |
| PyModule_AddIntMacro(m, IF_IFACE_E1); |
| PyModule_AddIntMacro(m, IF_IFACE_SYNC_SERIAL); |
| PyModule_AddIntMacro(m, IF_IFACE_X21D); |
| |
| /* For definitions see hdlc.h */ |
| PyModule_AddIntMacro(m, IF_PROTO_HDLC); |
| PyModule_AddIntMacro(m, IF_PROTO_PPP); |
| PyModule_AddIntMacro(m, IF_PROTO_CISCO); |
| PyModule_AddIntMacro(m, IF_PROTO_FR); |
| PyModule_AddIntMacro(m, IF_PROTO_FR_ADD_PVC); |
| PyModule_AddIntMacro(m, IF_PROTO_FR_DEL_PVC); |
| PyModule_AddIntMacro(m, IF_PROTO_X25); |
| PyModule_AddIntMacro(m, IF_PROTO_HDLC_ETH); |
| PyModule_AddIntMacro(m, IF_PROTO_FR_ADD_ETH_PVC); |
| PyModule_AddIntMacro(m, IF_PROTO_FR_DEL_ETH_PVC); |
| PyModule_AddIntMacro(m, IF_PROTO_FR_PVC); |
| PyModule_AddIntMacro(m, IF_PROTO_FR_ETH_PVC); |
| PyModule_AddIntMacro(m, IF_PROTO_RAW); |
| |
| /* RFC 2863 operational status */ |
| PyModule_AddIntMacro(m, IF_OPER_UNKNOWN); |
| PyModule_AddIntMacro(m, IF_OPER_NOTPRESENT); |
| PyModule_AddIntMacro(m, IF_OPER_DOWN); |
| PyModule_AddIntMacro(m, IF_OPER_LOWERLAYERDOWN); |
| PyModule_AddIntMacro(m, IF_OPER_TESTING); |
| PyModule_AddIntMacro(m, IF_OPER_DORMANT); |
| PyModule_AddIntMacro(m, IF_OPER_UP); |
| |
| /* link modes */ |
| PyModule_AddIntMacro(m, IF_LINK_MODE_DEFAULT); |
| PyModule_AddIntMacro(m, IF_LINK_MODE_DORMANT); |
| } |