/programs/develop/libraries/menuetlibc/include/net/if.h |
---|
0,0 → 1,106 |
#ifndef _NET_IF_H |
#define _NET_IF_H |
#include <sys/cdefs.h> |
#include <sys/socket.h> |
__BEGIN_DECLS |
/* Standard interface flags. */ |
#define IFF_UP 0x1 /* interface is up */ |
#define IFF_BROADCAST 0x2 /* broadcast address valid */ |
#define IFF_DEBUG 0x4 /* turn on debugging */ |
#define IFF_LOOPBACK 0x8 /* is a loopback net */ |
#define IFF_POINTOPOINT 0x10 /* interface is has p-p link */ |
#define IFF_NOTRAILERS 0x20 /* avoid use of trailers */ |
#define IFF_RUNNING 0x40 /* resources allocated */ |
#define IFF_NOARP 0x80 /* no ARP protocol */ |
#define IFF_PROMISC 0x100 /* receive all packets */ |
#define IFF_ALLMULTI 0x200 /* receive all multicast packets*/ |
#define IFF_MASTER 0x400 /* master of a load balancer */ |
#define IFF_SLAVE 0x800 /* slave of a load balancer */ |
#define IFF_MULTICAST 0x1000 /* Supports multicast */ |
#define IFF_VOLATILE (IFF_LOOPBACK|IFF_POINTOPOINT|IFF_BROADCAST|IFF_MASTER|IFF_SLAVE|IFF_RUNNING) |
#define IFF_PORTSEL 0x2000 /* can set media type */ |
#define IFF_AUTOMEDIA 0x4000 /* auto media select active */ |
#define IFF_DYNAMIC 0x8000 /* dialup device with changing addresses*/ |
struct ifmap { |
unsigned long mem_start; |
unsigned long mem_end; |
unsigned short base_addr; |
unsigned char irq; |
unsigned char dma; |
unsigned char port; |
/* 3 bytes spare */ |
}; |
struct ifreq { |
#define IFHWADDRLEN 6 |
#define IFNAMSIZ 16 |
union |
{ |
char ifrn_name[IFNAMSIZ]; /* if name, e.g. "en0" */ |
} ifr_ifrn; |
union { |
struct sockaddr ifru_addr; |
struct sockaddr ifru_dstaddr; |
struct sockaddr ifru_broadaddr; |
struct sockaddr ifru_netmask; |
struct sockaddr ifru_hwaddr; |
short ifru_flags; |
int ifru_ivalue; |
int ifru_mtu; |
struct ifmap ifru_map; |
char ifru_slave[IFNAMSIZ]; /* Just fits the size */ |
char ifru_newname[IFNAMSIZ]; |
char* ifru_data; |
} ifr_ifru; |
}; |
#define ifr_name ifr_ifrn.ifrn_name /* interface name */ |
#define ifr_hwaddr ifr_ifru.ifru_hwaddr /* MAC address */ |
#define ifr_addr ifr_ifru.ifru_addr /* address */ |
#define ifr_dstaddr ifr_ifru.ifru_dstaddr /* other end of p-p lnk */ |
#define ifr_broadaddr ifr_ifru.ifru_broadaddr /* broadcast address */ |
#define ifr_netmask ifr_ifru.ifru_netmask /* interface net mask */ |
#define ifr_flags ifr_ifru.ifru_flags /* flags */ |
#define ifr_metric ifr_ifru.ifru_ivalue /* metric */ |
#define ifr_mtu ifr_ifru.ifru_mtu /* mtu */ |
#define ifr_map ifr_ifru.ifru_map /* device map */ |
#define ifr_slave ifr_ifru.ifru_slave /* slave device */ |
#define ifr_data ifr_ifru.ifru_data /* for use by interface */ |
#define ifr_ifindex ifr_ifru.ifru_ivalue /* interface index */ |
#define ifr_bandwidth ifr_ifru.ifru_ivalue /* link bandwidth */ |
#define ifr_qlen ifr_ifru.ifru_ivalue /* Queue length */ |
#define ifr_newname ifr_ifru.ifru_newname /* New name */ |
struct ifconf { |
int ifc_len; /* size of buffer */ |
union { |
char * ifcu_buf; |
struct ifreq *ifcu_req; |
} ifc_ifcu; |
}; |
#define ifc_buf ifc_ifcu.ifcu_buf /* buffer address */ |
#define ifc_req ifc_ifcu.ifcu_req /* array of structures */ |
unsigned int if_nametoindex (const char *ifname) __THROW; |
char *if_indextoname (unsigned int ifindex, char *ifname) __THROW; |
struct if_nameindex { |
unsigned int if_index; |
char *if_name; |
}; |
struct if_nameindex* if_nameindex(void) __THROW; |
void if_freenameindex(struct if_nameindex* ptr) __THROW; |
__END_DECLS |
#endif |
Property changes: |
Added: svn:executable |
+* |
\ No newline at end of property |
/programs/develop/libraries/menuetlibc/include/net/if_arp.h |
---|
0,0 → 1,118 |
#ifndef _NET_IF_ARP_H |
#define _NET_IF_ARP_H |
#include <sys/socket.h> |
__BEGIN_DECLS |
#define MAX_ADDR_LEN 7 |
/* ARP protocol HARDWARE identifiers. */ |
#define ARPHRD_NETROM 0 /* from KA9Q: NET/ROM pseudo */ |
#define ARPHRD_ETHER 1 /* Ethernet 10Mbps */ |
#define ARPHRD_EETHER 2 /* Experimental Ethernet */ |
#define ARPHRD_AX25 3 /* AX.25 Level 2 */ |
#define ARPHRD_PRONET 4 /* PROnet token ring */ |
#define ARPHRD_CHAOS 5 /* Chaosnet */ |
#define ARPHRD_IEEE802 6 /* IEEE 802.2 Ethernet/TR/TB */ |
#define ARPHRD_ARCNET 7 /* ARCnet */ |
#define ARPHRD_APPLETLK 8 /* APPLEtalk */ |
#define ARPHRD_DLCI 15 /* Frame Relay DLCI */ |
#define ARPHRD_ATM 19 /* ATM */ |
#define ARPHRD_METRICOM 23 /* Metricom STRIP (new IANA id) */ |
/* Dummy types for non ARP hardware */ |
#define ARPHRD_SLIP 256 |
#define ARPHRD_CSLIP 257 |
#define ARPHRD_SLIP6 258 |
#define ARPHRD_CSLIP6 259 |
#define ARPHRD_RSRVD 260 /* Notional KISS type */ |
#define ARPHRD_ADAPT 264 |
#define ARPHRD_ROSE 270 |
#define ARPHRD_X25 271 /* CCITT X.25 */ |
#define ARPHRD_HWX25 272 /* Boards with X.25 in firmware */ |
#define ARPHRD_PPP 512 |
#define ARPHRD_CISCO 513 /* Cisco HDLC */ |
#define ARPHRD_HDLC ARPHRD_CISCO |
#define ARPHRD_LAPB 516 /* LAPB */ |
#define ARPHRD_DDCMP 517 /* Digital's DDCMP protocol */ |
#define ARPHRD_RAWHDLC 518 /* Raw HDLC */ |
#define ARPHRD_TUNNEL 768 /* IPIP tunnel */ |
#define ARPHRD_TUNNEL6 769 /* IPIP6 tunnel */ |
#define ARPHRD_FRAD 770 /* Frame Relay Access Device */ |
#define ARPHRD_SKIP 771 /* SKIP vif */ |
#define ARPHRD_LOOPBACK 772 /* Loopback device */ |
#define ARPHRD_LOCALTLK 773 /* Localtalk device */ |
#define ARPHRD_FDDI 774 /* Fiber Distributed Data Interface */ |
#define ARPHRD_BIF 775 /* AP1000 BIF */ |
#define ARPHRD_SIT 776 /* sit0 device - IPv6-in-IPv4 */ |
#define ARPHRD_IPDDP 777 /* IP over DDP tunneller */ |
#define ARPHRD_IPGRE 778 /* GRE over IP */ |
#define ARPHRD_PIMREG 779 /* PIMSM register interface */ |
#define ARPHRD_HIPPI 780 /* High Performance Parallel Interface */ |
#define ARPHRD_ASH 781 /* Nexus 64Mbps Ash */ |
#define ARPHRD_ECONET 782 /* Acorn Econet */ |
#define ARPHRD_IRDA 783 /* Linux-IrDA */ |
/* ARP works differently on different FC media .. so */ |
#define ARPHRD_FCPP 784 /* Point to point fibrechannel */ |
#define ARPHRD_FCAL 785 /* Fibrechannel arbitrated loop */ |
#define ARPHRD_FCPL 786 /* Fibrechannel public loop */ |
#define ARPHRD_FCFABRIC 787 /* Fibrechannel fabric */ |
/* 787->799 reserved for fibrechannel media types */ |
#define ARPHRD_IEEE802_TR 800 /* Magic type ident for TR */ |
#define ARPHRD_IEEE80211 801 /* IEEE 802.11 */ |
#define ARPHRD_VOID 0xFFFF /* Void type, nothing is known */ |
/* ARP protocol opcodes. */ |
#define ARPOP_REQUEST 1 /* ARP request */ |
#define ARPOP_REPLY 2 /* ARP reply */ |
#define ARPOP_RREQUEST 3 /* RARP request */ |
#define ARPOP_RREPLY 4 /* RARP reply */ |
#define ARPOP_InREQUEST 8 /* InARP request */ |
#define ARPOP_InREPLY 9 /* InARP reply */ |
#define ARPOP_NAK 10 /* (ATM)ARP NAK */ |
/* ARP ioctl request. */ |
struct arpreq { |
struct sockaddr arp_pa; /* protocol address */ |
struct sockaddr arp_ha; /* hardware address */ |
int arp_flags; /* flags */ |
struct sockaddr arp_netmask; /* netmask (only for proxy arps) */ |
char arp_dev[16]; |
}; |
struct arpreq_old { |
struct sockaddr arp_pa; /* protocol address */ |
struct sockaddr arp_ha; /* hardware address */ |
int arp_flags; /* flags */ |
struct sockaddr arp_netmask; /* netmask (only for proxy arps) */ |
}; |
/* ARP Flag values. */ |
#define ATF_COM 0x02 /* completed entry (ha valid) */ |
#define ATF_PERM 0x04 /* permanent entry */ |
#define ATF_PUBL 0x08 /* publish entry */ |
#define ATF_USETRAILERS 0x10 /* has requested trailers */ |
#define ATF_NETMASK 0x20 /* want to use a netmask (only |
for proxy entries) */ |
#define ATF_DONTPUB 0x40 /* don't answer this addresses */ |
/* |
* This structure defines an ethernet arp header. |
*/ |
struct arphdr |
{ |
unsigned short ar_hrd; /* format of hardware address */ |
unsigned short ar_pro; /* format of protocol address */ |
unsigned char ar_hln; /* length of hardware address */ |
unsigned char ar_pln; /* length of protocol address */ |
unsigned short ar_op; /* ARP opcode (command) */ |
}; |
__END_DECLS |
#endif |
Property changes: |
Added: svn:executable |
+* |
\ No newline at end of property |
/programs/develop/libraries/menuetlibc/include/net/if_ether.h |
---|
0,0 → 1,80 |
#ifndef _NET_IF_ETHER_H |
#define _NET_IF_ETHER_H |
#include <sys/cdefs.h> |
__BEGIN_DECLS |
/* taken from <linux/if_ether.h> */ |
#define ETH_ALEN 6 /* Octets in one ethernet addr */ |
#define ETH_HLEN 14 /* Total octets in header. */ |
#define ETH_ZLEN 60 /* Min. octets in frame sans FCS */ |
#define ETH_DATA_LEN 1500 /* Max. octets in payload */ |
#define ETH_FRAME_LEN 1514 /* Max. octets in frame sans FCS */ |
/* |
* These are the defined Ethernet Protocol ID's. |
*/ |
#define ETH_P_LOOP 0x0060 /* Ethernet Loopback packet */ |
#define ETH_P_PUP 0x0200 /* Xerox PUP packet */ |
#define ETH_P_PUPAT 0x0201 /* Xerox PUP Addr Trans packet */ |
#define ETH_P_IP 0x0800 /* Internet Protocol packet */ |
#define ETH_P_X25 0x0805 /* CCITT X.25 */ |
#define ETH_P_ARP 0x0806 /* Address Resolution packet */ |
#define ETH_P_BPQ 0x08FF /* G8BPQ AX.25 Ethernet Packet [ NOT AN OFFICIALLY REGISTERED ID ] */ |
#define ETH_P_IEEEPUP 0x0a00 /* Xerox IEEE802.3 PUP packet */ |
#define ETH_P_IEEEPUPAT 0x0a01 /* Xerox IEEE802.3 PUP Addr Trans packet */ |
#define ETH_P_DEC 0x6000 /* DEC Assigned proto */ |
#define ETH_P_DNA_DL 0x6001 /* DEC DNA Dump/Load */ |
#define ETH_P_DNA_RC 0x6002 /* DEC DNA Remote Console */ |
#define ETH_P_DNA_RT 0x6003 /* DEC DNA Routing */ |
#define ETH_P_LAT 0x6004 /* DEC LAT */ |
#define ETH_P_DIAG 0x6005 /* DEC Diagnostics */ |
#define ETH_P_CUST 0x6006 /* DEC Customer use */ |
#define ETH_P_SCA 0x6007 /* DEC Systems Comms Arch */ |
#define ETH_P_RARP 0x8035 /* Reverse Addr Res packet */ |
#define ETH_P_ATALK 0x809B /* Appletalk DDP */ |
#define ETH_P_AARP 0x80F3 /* Appletalk AARP */ |
#define ETH_P_8021Q 0x8100 /* 802.1Q VLAN Extended Header */ |
#define ETH_P_IPX 0x8137 /* IPX over DIX */ |
#define ETH_P_IPV6 0x86DD /* IPv6 over bluebook */ |
#define ETH_P_PPP_DISC 0x8863 /* PPPoE discovery messages */ |
#define ETH_P_PPP_SES 0x8864 /* PPPoE session messages */ |
#define ETH_P_ATMMPOA 0x884c /* MultiProtocol Over ATM */ |
#define ETH_P_ATMFATE 0x8884 /* Frame-based ATM Transport over Ethernet */ |
/* |
* Non DIX types. Won't clash for 1500 types. |
*/ |
#define ETH_P_802_3 0x0001 /* Dummy type for 802.3 frames */ |
#define ETH_P_AX25 0x0002 /* Dummy protocol id for AX.25 */ |
#define ETH_P_ALL 0x0003 /* Every packet (be careful!!!) */ |
#define ETH_P_802_2 0x0004 /* 802.2 frames */ |
#define ETH_P_SNAP 0x0005 /* Internal only */ |
#define ETH_P_DDCMP 0x0006 /* DEC DDCMP: Internal only */ |
#define ETH_P_WAN_PPP 0x0007 /* Dummy type for WAN PPP frames*/ |
#define ETH_P_PPP_MP 0x0008 /* Dummy type for PPP MP frames */ |
#define ETH_P_LOCALTALK 0x0009 /* Localtalk pseudo type */ |
#define ETH_P_PPPTALK 0x0010 /* Dummy type for Atalk over PPP*/ |
#define ETH_P_TR_802_2 0x0011 /* 802.2 frames */ |
#define ETH_P_MOBITEX 0x0015 /* Mobitex (kaz@cafe.net) */ |
#define ETH_P_CONTROL 0x0016 /* Card specific control frames */ |
#define ETH_P_IRDA 0x0017 /* Linux-IrDA */ |
#define ETH_P_ECONET 0x0018 /* Acorn Econet */ |
/* |
* This is an Ethernet frame header. |
*/ |
struct ethhdr { |
unsigned char h_dest[ETH_ALEN]; /* destination eth addr */ |
unsigned char h_source[ETH_ALEN]; /* source ether addr */ |
unsigned short h_proto; /* packet type ID field */ |
}; |
__END_DECLS |
#endif |
Property changes: |
Added: svn:executable |
+* |
\ No newline at end of property |
/programs/develop/libraries/menuetlibc/include/net/route.h |
---|
0,0 → 1,54 |
#ifndef _NET_ROUTE_H |
#define _NET_ROUTE_H |
#include <inttypes.h> |
#include <netinet/in.h> |
__BEGIN_DECLS |
/* This structure gets passed by the SIOCADDRT and SIOCDELRT calls. */ |
struct rtentry { |
unsigned long rt_pad1; |
struct sockaddr rt_dst; /* target address */ |
struct sockaddr rt_gateway; /* gateway addr (RTF_GATEWAY) */ |
struct sockaddr rt_genmask; /* target network mask (IP) */ |
unsigned short rt_flags; |
short rt_pad2; |
unsigned long rt_pad3; |
void *rt_pad4; |
short rt_metric; /* +1 for binary compatibility! */ |
char *rt_dev; /* forcing the device at add */ |
unsigned long rt_mtu; /* per route MTU/Window */ |
#define rt_mss rt_mtu /* Compatibility :-( */ |
unsigned long rt_window; /* Window clamping */ |
unsigned short rt_irtt; /* Initial RTT */ |
}; |
#define RTF_UP 0x0001 /* route usable */ |
#define RTF_GATEWAY 0x0002 /* destination is a gateway */ |
#define RTF_HOST 0x0004 /* host entry (net otherwise) */ |
#define RTF_REINSTATE 0x0008 /* reinstate route after tmout */ |
#define RTF_DYNAMIC 0x0010 /* created dyn. (by redirect) */ |
#define RTF_MODIFIED 0x0020 /* modified dyn. (by redirect) */ |
#define RTF_MTU 0x0040 /* specific MTU for this route */ |
#define RTF_MSS RTF_MTU /* Compatibility :-( */ |
#define RTF_WINDOW 0x0080 /* per route window clamping */ |
#define RTF_IRTT 0x0100 /* Initial round trip time */ |
#define RTF_REJECT 0x0200 /* Reject route */ |
struct in6_rtmsg { |
struct in6_addr rtmsg_dst; |
struct in6_addr rtmsg_src; |
struct in6_addr rtmsg_gateway; |
uint32_t rtmsg_type; |
uint16_t rtmsg_dst_len; |
uint16_t rtmsg_src_len; |
uint32_t rtmsg_metric; |
unsigned long int rtmsg_info; |
uint32_t rtmsg_flags; |
int rtmsg_ifindex; |
}; |
__END_DECLS |
#endif |
Property changes: |
Added: svn:executable |
+* |
\ No newline at end of property |