ETH_HLEN
printf("{l=%d,t=%hX}",s+ETH_HLEN,t);
len=s+ETH_HLEN; /* actual length of packet */
memcpy(&txb[ETH_HLEN], p, s); /* Frame data */
txd[TxPtr].buf1sz = ETH_HLEN+s;
memcpy(txp + ETH_HLEN, data, len);
len += ETH_HLEN;
memcpy(ptxb + ETH_HLEN, p, s);
s += ETH_HLEN;
tr = (struct tftp_t *)&nic.packet[ETH_HLEN];
tr = (struct tftp_t *) &nic.packet[ETH_HLEN];
#define ETH_MAX_MTU (ETH_FRAME_LEN-ETH_HLEN)
memcpy(txb + ETH_HLEN, p, s);
s += ETH_HLEN;
if (nic.packetlen < ETH_HLEN + sizeof(struct arprequest))
arpreply = (struct arprequest *)&nic.packet[ETH_HLEN];
if (nic.packetlen < ETH_HLEN + sizeof(struct arprequest))
arpreply = (struct arprequest *)&nic.packet[ETH_HLEN];
&nic.packet[ETH_HLEN + sizeof(struct iphdr) + sizeof(struct udphdr)];
len = nic.packetlen - (ETH_HLEN + sizeof(struct iphdr) +
&nic.packet[ETH_HLEN + sizeof(struct iphdr) + sizeof(struct udphdr)];
len = nic.packetlen - (ETH_HLEN + sizeof(struct iphdr) +
if (nic.packetlen >= ETH_HLEN) {
if ((ptype == IP) && (nic.packetlen >= ETH_HLEN + sizeof(struct iphdr))) {
ip = (struct iphdr *)&nic.packet[ETH_HLEN];
memmove(&nic.packet[ETH_HLEN + sizeof(struct iphdr)],
&nic.packet[ETH_HLEN + iplen],
(nic.packetlen >= ETH_HLEN + sizeof(struct iphdr) + sizeof(struct udphdr))) {
udp = (struct udphdr *)&nic.packet[ETH_HLEN + sizeof(struct iphdr)];
(nic.packetlen >= ETH_HLEN + sizeof(struct arprequest))) {
arpreply = (struct arprequest *)&nic.packet[ETH_HLEN];
memcpy(txb + ETH_HLEN, p, s);
s += ETH_HLEN;
memcpy((char *)eth_vmem+ETH_HLEN, p, s);
s += ETH_HLEN;
memcpy((char *)eth_vmem+ETH_HLEN, p, s);
s += ETH_HLEN;
eth_pio_write(p, (eth_tx_start<<8)+ETH_HLEN, s);
s += ETH_HLEN;
memcpy(ptxb + ETH_HLEN, p, s);
s += ETH_HLEN;
if ( ( ETH_HLEN + size ) >= ETH_FRAME_LEN ) {
memcpy ( tx_buffer + ETH_HLEN, data, size );
pnic_command ( nic, PNIC_CMD_XMIT, tx_buffer, ETH_HLEN + size,
memcpy(ptxb + ETH_HLEN, p, s);
s += ETH_HLEN;
memcpy(tx_buffer + ETH_HLEN, data, len);
len += ETH_HLEN;
memcpy(txb + ETH_HLEN, p, s);
s += ETH_HLEN;
memcpy(txb + ETH_HLEN, p, s);
s += ETH_HLEN;
MAC_RX_MTU_SIZE, ETH_MAX_MTU + ETH_HLEN + 8,
uint8_t data [ETH_FRAME_LEN - ETH_HLEN];
txd->len_flags = ((size + ETH_HLEN) << TXD_LEN_SHIFT) | TXD_FLAG_END;
memcpy(tail_buffer + ETH_HLEN, p, s);
s += ETH_HLEN;
memcpy(txb + ETH_HLEN, p, s);
s += ETH_HLEN;
unsigned char ehdr[ETH_HLEN]; /* buffer for ethernet header */
memcpy (tp->tx_buffs[entry] + ETH_HLEN, p, s);
s += ETH_HLEN;
*((char *) tp->tx_buffs[entry] + ETH_HLEN + (s++)) = 0;
memcpy (tx_packet + ETH_HLEN, p, s);
s += ETH_HLEN;
*((char *) tx_packet + ETH_HLEN + (s++)) = 0;