"sa_family_t": utils.EnumerationFromDefines(""" /* * Address families. */ #define AF_UNSPEC 0 /* unspecified */ #define AF_UNIX 1 /* local to host (pipes) */ #define AF_INET 2 /* internetwork: UDP, TCP, etc. */ #define AF_IMPLINK 3 /* arpanet imp addresses */ #define AF_PUP 4 /* pup protocols: e.g. BSP */ #define AF_CHAOS 5 /* mit CHAOS protocols */ #define AF_NS 6 /* XEROX NS protocols */ #define AF_ISO 7 /* ISO protocols */ #define AF_ECMA 8 /* European computer manufacturers */ #define AF_DATAKIT 9 /* datakit protocols */ #define AF_CCITT 10 /* CCITT protocols, X.25 etc */ #define AF_SNA 11 /* IBM SNA */ #define AF_DECnet 12 /* DECnet */ #define AF_DLI 13 /* DEC Direct data link interface */ #define AF_LAT 14 /* LAT */ #define AF_HYLINK 15 /* NSC Hyperchannel */ #define AF_APPLETALK 16 /* Apple Talk */ #define AF_ROUTE 17 /* Internal Routing Protocol */ #define AF_LINK 18 /* Link layer interface */ #define pseudo_AF_XTP 19 /* eXpress Transfer Protocol (no AF) */ #define AF_COIP 20 /* connection-oriented IP, aka ST II */ #define AF_CNT 21 /* Computer Network Technology */ #define pseudo_AF_RTIP 22 /* Help Identify RTIP packets */ #define AF_IPX 23 /* Novell Internet Protocol */ #define AF_SIP 24 /* Simple Internet Protocol */ #define pseudo_AF_PIP 25 /* Help Identify PIP packets */ #define AF_NDRV 27 /* Network Driver 'raw' access */ #define AF_ISDN 28 /* Integrated Services Digital Network*/ #define pseudo_AF_KEY 29 /* Internal key-management function */ #define AF_INET6 30 /* IPv6 */ #define AF_NATM 31 /* native ATM access */ #define AF_SYSTEM 32 /* Kernel event messages */ #define AF_NETBIOS 33 /* NetBIOS */ #define AF_PPP 34 /* PPP communication protocol */ #define pseudo_AF_HDRCMPLT 35 /* Used by BPF to not rewrite headers * in interface output routine */ #define AF_AFP 36 /* Used by AFP */ #define AF_IEEE80211 37 /* IEEE 802.11 protocol */ #define AF_UTUN 38 #define AF_MULTIPATH 39 #define AF_MAX 40 """),
dict(choices=utils.EnumerationFromDefines(""" http://lxr.free-electrons.com/source/include/linux/socket.h#L140 /* Supported address families. */ 141 #define AF_UNSPEC 0 142 #define AF_UNIX 1 /* Unix domain sockets */ 143 #define AF_LOCAL 1 /* POSIX name for AF_UNIX */ 144 #define AF_INET 2 /* Internet IP Protocol */ 145 #define AF_AX25 3 /* Amateur Radio AX.25 */ 146 #define AF_IPX 4 /* Novell IPX */ 147 #define AF_APPLETALK 5 /* AppleTalk DDP */ 148 #define AF_NETROM 6 /* Amateur Radio NET/ROM */ 149 #define AF_BRIDGE 7 /* Multiprotocol bridge */ 150 #define AF_ATMPVC 8 /* ATM PVCs */ 151 #define AF_X25 9 /* Reserved for X.25 project */ 152 #define AF_INET6 10 /* IP version 6 */ 153 #define AF_ROSE 11 /* Amateur Radio X.25 PLP */ 154 #define AF_DECnet 12 /* Reserved for DECnet project */ 155 #define AF_NETBEUI 13 /* Reserved for 802.2LLC project*/ 156 #define AF_SECURITY 14 /* Security callback pseudo AF */ 157 #define AF_KEY 15 /* PF_KEY key management API */ 158 #define AF_NETLINK 16 160 #define AF_PACKET 17 /* Packet family */ 161 #define AF_ASH 18 /* Ash */ 162 #define AF_ECONET 19 /* Acorn Econet */ 163 #define AF_ATMSVC 20 /* ATM SVCs */ 164 #define AF_RDS 21 /* RDS sockets */ 165 #define AF_SNA 22 /* Linux SNA Project (nutters!) */ 166 #define AF_IRDA 23 /* IRDA sockets */ 167 #define AF_PPPOX 24 /* PPPoX sockets */ 168 #define AF_WANPIPE 25 /* Wanpipe API Sockets */ 169 #define AF_LLC 26 /* Linux LLC */ 170 #define AF_IB 27 /* Native InfiniBand address */ 171 #define AF_CAN 29 /* Controller Area Network */ 172 #define AF_TIPC 30 /* TIPC sockets */ 173 #define AF_BLUETOOTH 31 /* Bluetooth sockets */ 174 #define AF_IUCV 32 /* IUCV sockets */ 175 #define AF_RXRPC 33 /* RxRPC sockets */ 176 #define AF_ISDN 34 /* mISDN sockets */ 177 #define AF_PHONET 35 /* Phonet sockets */ 178 #define AF_IEEE802154 36 /* IEEE802154 sockets */ 179 #define AF_CAIF 37 /* CAIF sockets */ 180 #define AF_ALG 38 /* Algorithm sockets */ 181 #define AF_NFC 39 /* NFC sockets */ 182 #define AF_VSOCK 40 /* vSockets */ 183 #define AF_MAX 41 /* For now.. */ """),
MM_PROTECTION_ENUM = utils.EnumerationFromDefines(""" // 00098 // Protection Bits part of the internal memory manager Protection Mask, from: 00099 // http://reactos.org/wiki/Techwiki:Memory_management_in_the_Windows_XP_kernel 00100 // https://www.reactos.org/wiki/Techwiki:Memory_Protection_constants 00101 // and public assertions. 00102 // 00103 #define MM_ZERO_ACCESS 0 00104 #define MM_READONLY 1 00105 #define MM_EXECUTE 2 00106 #define MM_EXECUTE_READ 3 00107 #define MM_READWRITE 4 00108 #define MM_WRITECOPY 5 00109 #define MM_EXECUTE_READWRITE 6 00110 #define MM_EXECUTE_WRITECOPY 7 00111 #define MM_PROTECT_ACCESS 7 00112 00113 // 00114 // These are flags on top of the actual protection mask 00115 // 00116 #define MM_NOCACHE 0x08 00117 #define MM_GUARDPAGE 0x10 00118 #define MM_WRITECOMBINE 0x18 00119 #define MM_PROTECT_SPECIAL 0x18 00120 00121 // 00122 // These are special cases 00123 // 00124 #define MM_DECOMMIT (MM_ZERO_ACCESS | MM_GUARDPAGE) 00125 #define MM_NOACCESS (MM_ZERO_ACCESS | MM_WRITECOMBINE) 00126 #define MM_OUTSWAPPED_KSTACK (MM_EXECUTE_WRITECOPY | MM_WRITECOMBINE) 00127 #define MM_INVALID_PROTECTION 0xFFFFFFFF """)