1 /*---------------------------------------------------------------------------* 2 Project: Horizon 3 File: socket_Entry.autogen.h 4 5 Copyright (C)2009-2012 Nintendo Co., Ltd. All rights reserved. 6 7 These coded instructions, statements, and computer programs contain 8 proprietary information of Nintendo of America Inc. and/or Nintendo 9 Company Ltd., and are protected by Federal copyright law. They may 10 not be disclosed to third parties or copied or duplicated in any form, 11 in whole or in part, without the prior written consent of Nintendo. 12 13 $Rev: 46347 $ 14 *---------------------------------------------------------------------------*/ 15 16 #ifndef NN_SOCKET_SOCKET_ENTRY_AUTOGEN_H_ 17 #define NN_SOCKET_SOCKET_ENTRY_AUTOGEN_H_ 18 19 #include <nn/socket/socket_User.autogen.h> /* for NN_SOCKET_IP_ALEN, NN_SOCKET_ETH_ALEN */ 20 21 namespace nn { 22 namespace socket { 23 24 /* Please see man pages for details 25 26 */ 27 enum ArpState { 28 ARP_STATE_INCOMPLETE = 1, // 29 ARP_STATE_REACHABLE = 2, // 30 ARP_STATE_PROBE = 3 // 31 }; 32 33 /* Please see man pages for details 34 35 */ 36 struct ArpEntry 37 { 38 int state; // 39 u8 prAddr[NN_SOCKET_IP_ALEN]; // 40 u8 hwAddr[NN_SOCKET_ETH_ALEN]; // 41 }; 42 43 44 /* Please see man pages for details 45 46 */ 47 struct IpAddrEntry 48 { 49 u8 addr[NN_SOCKET_IP_ALEN]; // 50 u8 netMask[NN_SOCKET_IP_ALEN]; // 51 u8 bcastAddr[NN_SOCKET_IP_ALEN]; // 52 }; 53 54 enum IpRouteFlag { 55 IP_ROUTE_FLAG_G = 0x01, // 56 IP_ROUTE_FLAG_D = 0x02, // 57 IP_ROUTE_FLAG_M = 0x04 // 58 }; 59 60 /* Please see man pages for details 61 62 */ 63 struct IpRouteEntry 64 { 65 u8 dst[NN_SOCKET_IP_ALEN]; // 66 u8 netmask[NN_SOCKET_IP_ALEN]; // 67 u8 gateway[NN_SOCKET_IP_ALEN]; // 68 u32 flag; // 69 s64 time; // 70 }; 71 72 #ifdef NN_SOCKET_IP6_ENABLE 73 /* Please see man pages for details 74 75 */ 76 struct Ip6RouteEntry 77 { 78 u8 prefix[NN_SOCKET_IP6_ALEN]; // 79 u32 prefixLen; // 80 u32 flag; // 81 u32 expireTime; // 82 }; 83 84 /* Please see man pages for details 85 86 87 */ 88 struct Ip6MyAddrEntry 89 { 90 u8 addr[NN_SOCKET_IP6_ALEN]; // 91 u32 preferredTime; // 92 u32 validTime; // 93 u32 state; // 94 Bool anycast; // 95 }; 96 97 /* Please see man pages for details 98 99 100 */ 101 struct Ip6PrefixEntry 102 { 103 u8 prefix[NN_SOCKET_IP6_ALEN]; // 104 u32 prefixLen; // 105 u32 preferredTime; // 106 u32 validTime; // 107 u8 flags; // 108 }; 109 110 /* Please see man pages for details 111 112 113 */ 114 struct Ip6NeighborCacheEntry 115 { 116 u8 addr[NN_SOCKET_IP6_ALEN]; // 117 u32 state; // 118 Bool isRouter; // 119 }; 120 121 /* Please see man pages for details 122 123 124 */ 125 struct Ip6DestinationCacheEntry 126 { 127 u8 dst[NN_SOCKET_IP6_ALEN]; // 128 u8 nextHop[NN_SOCKET_IP6_ALEN]; // 129 u32 pmtu; // 130 }; 131 132 /* Please see man pages for details 133 134 135 */ 136 struct Ip6DefaultRouterEntry 137 { 138 u8 addr[NN_SOCKET_IP6_ALEN]; // 139 }; 140 141 #endif /* NN_SOCKET_IP6_ENABLE */ 142 143 /* Please see man pages for details 144 145 */ 146 struct UdpEntry 147 { 148 SockAddrStorage local; // 149 SockAddrStorage remote; // 150 }; 151 152 153 #define TCP_STATE_CLOSED 1 // 154 #define TCP_STATE_LISTEN 2 // 155 #define TCP_STATE_SYN_SENT 3 // 156 #define TCP_STATE_SYN_RECEIVED 4 // 157 #define TCP_STATE_ESTABLISHED 5 // 158 #define TCP_STATE_FINWAIT1 6 // 159 #define TCP_STATE_FINWAIT2 7 // 160 #define TCP_STATE_CLOSE_WAIT 8 // 161 #define TCP_STATE_LAST_ACK 9 // 162 #define TCP_STATE_CLOSING 10 // 163 #define TCP_STATE_TIME_WAIT 11 // 164 165 /* Please see man pages for details 166 167 */ 168 struct TcpEntry 169 { 170 s32 state; // 171 SockAddrStorage local; // 172 SockAddrStorage remote; // 173 }; 174 175 176 } // socket 177 } // nn 178 #endif /* NN_SOCKET_SOCKET_ENTRY_AUTOGEN_H_ */ 179