net.h Source File
Back to the index.
Go to the documentation of this file.
34 #include <netinet/in.h>
35 #include <arpa/inet.h>
44 #define NET_DEFAULT_IPV4_MASK "10.0.0.0"
45 #define NET_DEFAULT_IPV4_LEN 8
54 #define ETHERTYPE_SPRITE 0x0500
55 #define ETHERTYPE_IP 0x0800
56 #define ETHERTYPE_ARP 0x0806
57 #define ETHERTYPE_REVARP 0x8035
58 #define ETHERTYPE_IPV6 0x86DD
116 #define MAX_TCP_CONNECTIONS 100
117 #define MAX_UDP_CONNECTIONS 100
157 void send_udp(
struct in_addr *addrp,
int portnr,
unsigned char *packet,
161 void net_ip_checksum(
unsigned char *ip_header,
int chksumoffset,
int len);
163 int tcp_len,
unsigned char *srcaddr,
unsigned char *dstaddr,
166 int con_id,
int connecting,
unsigned char *
data,
int datalen,
int rst);
168 unsigned char *packet,
int len);
169 void net_ip(
struct net *
net,
void *extra,
unsigned char *packet,
int len);
178 unsigned char **packetp,
int *lenp);
180 unsigned char *packet,
int len);
184 const char *ipv4addr,
int netipv4len,
char **remote,
int n_remote,
188 #define NET_INIT_FLAG_GATEWAY 1
211 #define TCP_OUTSIDE_TRYINGTOCONNECT 1
212 #define TCP_OUTSIDE_CONNECTED 2
213 #define TCP_OUTSIDE_DISCONNECTED 3
214 #define TCP_OUTSIDE_DISCONNECTED2 4
216 #define TCP_INCOMING_BUF_LEN 2000
218 #define NET_ADDR_IPV4 1
219 #define NET_ADDR_IPV6 2
220 #define NET_ADDR_ETHERNET 3
unsigned char outside_ip_address[4]
unsigned char * incoming_buf
#define MAX_TCP_CONNECTIONS
struct tcp_connection tcp_connections[MAX_TCP_CONNECTIONS]
void net_ip_tcp_connectionreply(struct net *net, void *extra, int con_id, int connecting, unsigned char *data, int datalen, int rst)
void net_tcp_rx_avail(struct net *net, void *extra)
struct in_addr nameserver_ipv4
void net_ip_checksum(unsigned char *ip_header, int chksumoffset, int len)
int net_ethernet_rx(struct net *net, void *extra, unsigned char **packetp, int *lenp)
unsigned char inside_ip_address[4]
unsigned char ethernet_address[6]
void send_udp(struct in_addr *addrp, int portnr, unsigned char *packet, size_t len)
void net_dumpinfo(struct net *net)
unsigned char ethernet_address[6]
uint32_t inside_timestamp
struct ethernet_packet_link * first_ethernet_packet
void net_udp_rx_avail(struct net *net, void *extra)
void net_ip(struct net *net, void *extra, unsigned char *packet, int len)
void net_generate_unique_mac(struct machine *, unsigned char *macbuf)
void net_debugaddr(void *addr, int type)
void net_ethernet_tx(struct net *net, void *extra, unsigned char *packet, int len)
int64_t last_used_timestamp
void net_add_nic(struct net *net, void *extra, unsigned char *macaddr)
struct ethernet_packet_link * net_allocate_ethernet_packet_link(struct net *net, void *extra, size_t len)
int net_ethernet_rx_avail(struct net *net, void *extra)
struct ethernet_packet_link * prev
unsigned char outside_ip_address[4]
void net_ip_broadcast(struct net *net, void *extra, unsigned char *packet, int len)
#define MAX_UDP_CONNECTIONS
unsigned char inside_ip_address[4]
void net_ip_tcp_checksum(unsigned char *tcp_header, int chksumoffset, int tcp_len, unsigned char *srcaddr, unsigned char *dstaddr, int udpflag)
int64_t last_used_timestamp
struct udp_connection udp_connections[MAX_UDP_CONNECTIONS]
struct ethernet_packet_link * last_ethernet_packet
unsigned char gateway_ipv4_addr[4]
unsigned char gateway_ethernet_addr[6]
struct in_addr netmask_ipv4
struct net * net_init(struct emul *emul, int init_flags, const char *ipv4addr, int netipv4len, char **remote, int n_remote, int local_port, const char *settings_prefix)
uint32_t outside_timestamp
struct ethernet_packet_link * next
uint32_t incoming_buf_seqnr
struct remote_net * remote_nets
Generated on Tue Aug 25 2020 19:25:06 for GXemul by
1.8.18