亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? uip_arp.h

?? MCS-51的一個Free小型操作系統,在KeilC中下編譯工作
?? H
字號:
/**
 * \addtogroup uip
 * @{
 */

/**
 * \addtogroup uiparp 
 * @{
 */
 
/**
 * \file
 * Macros and definitions for the ARP module.
 * \author Adam Dunkels <adam@dunkels.com>
 */
  

/*
 * Copyright (c) 2001-2003, Adam Dunkels.
 * All rights reserved. 
 *
 * Redistribution and use in source and binary forms, with or without 
 * modification, are permitted provided that the following conditions 
 * are met: 
 * 1. Redistributions of source code must retain the above copyright 
 *    notice, this list of conditions and the following disclaimer. 
 * 2. Redistributions in binary form must reproduce the above copyright 
 *    notice, this list of conditions and the following disclaimer in the 
 *    documentation and/or other materials provided with the distribution. 
 * 3. The name of the author may not be used to endorse or promote
 *    products derived from this software without specific prior
 *    written permission.  
 *
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
 * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
 * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  
 *
 * This file is part of the uIP TCP/IP stack.
 *
 * $Id: uip_arp.h,v 1.3.2.2 2003/10/06 15:10:22 adam Exp $
 *
 */

#ifndef __UIP_ARP_H__
#define __UIP_ARP_H__

#include "uip.h"


/**
 * Representation of a 48-bit Ethernet address.
 */
struct uip_eth_addr {
  u8_t addr[6];
} __attribute__ ((packed, aligned (1)));

extern struct uip_eth_addr uip_ethaddr;

/**
 * The Ethernet header. 
 */
struct uip_eth_hdr {
  struct uip_eth_addr dest;
  struct uip_eth_addr src;
  u16_t type;
} __attribute__ ((packed));

#define UIP_ETHTYPE_ARP 0x0806
#define UIP_ETHTYPE_IP  0x0800
#define UIP_ETHTYPE_IP6 0x86dd 


/* The uip_arp_init() function must be called before any of the other
   ARP functions. */
void uip_arp_init(void);

/* The uip_arp_ipin() function should be called whenever an IP packet
   arrives from the Ethernet. This function refreshes the ARP table or
   inserts a new mapping if none exists. The function assumes that an
   IP packet with an Ethernet header is present in the uip_buf buffer
   and that the length of the packet is in the uip_len variable. */
void uip_arp_ipin(void);

/* The uip_arp_arpin() should be called when an ARP packet is received
   by the Ethernet driver. This function also assumes that the
   Ethernet frame is present in the uip_buf buffer. When the
   uip_arp_arpin() function returns, the contents of the uip_buf
   buffer should be sent out on the Ethernet if the uip_len variable
   is > 0. */
void uip_arp_arpin(void);

/* The uip_arp_out() function should be called when an IP packet
   should be sent out on the Ethernet. This function creates an
   Ethernet header before the IP header in the uip_buf buffer. The
   Ethernet header will have the correct Ethernet MAC destination
   address filled in if an ARP table entry for the destination IP
   address (or the IP address of the default router) is present. If no
   such table entry is found, the IP packet is overwritten with an ARP
   request and we rely on TCP to retransmit the packet that was
   overwritten. In any case, the uip_len variable holds the length of
   the Ethernet frame that should be transmitted. */
void uip_arp_out(void);

/* The uip_arp_timer() function should be called every ten seconds. It
   is responsible for flushing old entries in the ARP table. */
void uip_arp_timer(void);

/** @} */

/**
 * \addtogroup uipconffunc
 * @{
 */

/**
 * Set the default router's IP address.
 *
 * \param addr A pointer to a 4-byte array containing the IP address
 * of the default router.
 *
 * \hideinitializer
 */
#define uip_setdraddr(addr) do { uip_arp_draddr[0] = addr[0]; \
                                 uip_arp_draddr[1] = addr[1]; } while(0)

/**
 * Set the netmask.
 *
 * \param addr A pointer to a 4-byte array containing the IP address
 * of the netmask.
 *
 * \hideinitializer
 */
#define uip_setnetmask(addr) do { uip_arp_netmask[0] = addr[0]; \
                                  uip_arp_netmask[1] = addr[1]; } while(0)


/**
 * Get the default router's IP address.
 *
 * \param addr A pointer to a 4-byte array that will be filled in with
 * the IP address of the default router.
 *
 * \hideinitializer
 */
#define uip_getdraddr(addr) do { addr[0] = uip_arp_draddr[0]; \
                                 addr[1] = uip_arp_draddr[1]; } while(0)

/**
 * Get the netmask.
 *
 * \param addr A pointer to a 4-byte array that will be filled in with
 * the value of the netmask.
 *
 * \hideinitializer
 */
#define uip_getnetmask(addr) do { addr[0] = uip_arp_netmask[0]; \
                                  addr[1] = uip_arp_netmask[1]; } while(0)


/**
 * Specifiy the Ethernet MAC address.
 *
 * The ARP code needs to know the MAC address of the Ethernet card in
 * order to be able to respond to ARP queries and to generate working
 * Ethernet headers.
 *
 * \note This macro only specifies the Ethernet MAC address to the ARP
 * code. It cannot be used to change the MAC address of the Ethernet
 * card.
 *
 * \param eaddr A pointer to a struct uip_eth_addr containing the
 * Ethernet MAC address of the Ethernet card.
 *
 * \hideinitializer
 */
#define uip_setethaddr(eaddr) do {uip_ethaddr.addr[0] = eaddr.addr[0]; \
                              uip_ethaddr.addr[1] = eaddr.addr[1];\
                              uip_ethaddr.addr[2] = eaddr.addr[2];\
                              uip_ethaddr.addr[3] = eaddr.addr[3];\
                              uip_ethaddr.addr[4] = eaddr.addr[4];\
                              uip_ethaddr.addr[5] = eaddr.addr[5];} while(0)

/** @} */

/**
 * \internal Internal variables that are set using the macros
 * uip_setdraddr and uip_setnetmask.
 */
extern u16_t uip_arp_draddr[2], uip_arp_netmask[2];
#endif /* __UIP_ARP_H__ */


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品sm捆绑视频| 韩国女主播一区| 欧美日韩精品欧美日韩精品| 亚洲精品一二三四区| 色欧美乱欧美15图片| 亚洲大型综合色站| 欧美一区二区三区爱爱| 蜜桃久久久久久久| 久久精品夜色噜噜亚洲a∨| 国产精品99久久久久久似苏梦涵 | 伊人色综合久久天天人手人婷| 国产精品久久久久婷婷二区次| 777午夜精品免费视频| 亚洲乱码中文字幕| 欧美性猛交一区二区三区精品| 国产精品69毛片高清亚洲| 蜜臀国产一区二区三区在线播放| 亚洲精品老司机| 亚洲婷婷在线视频| 欧美国产国产综合| 中文字幕精品三区| 色婷婷久久99综合精品jk白丝| 一区二区三区欧美激情| 欧美日韩一区中文字幕| 奇米精品一区二区三区在线观看| 日韩三级视频中文字幕| 成人h动漫精品| 亚洲夂夂婷婷色拍ww47 | 日韩欧美国产一二三区| 狠狠色丁香久久婷婷综| 亚洲日本一区二区| 日韩欧美视频在线| 91最新地址在线播放| 日韩成人一级大片| 日韩一区欧美一区| 日韩精品一区二区三区在线| 99久久久精品免费观看国产蜜| 亚洲成人精品一区| 久久精品视频免费观看| 91精品国产综合久久精品图片| 国产成人精品综合在线观看 | 亚洲va欧美va人人爽午夜 | 国产精品不卡一区| 综合久久久久久| 国产精品传媒视频| 亚洲摸摸操操av| 亚洲一区二区三区视频在线| 亚洲成人精品一区| 亚洲成年人影院| 亚洲国产精品久久人人爱蜜臀| 三级欧美韩日大片在线看| 日韩高清一区在线| 免费观看在线综合| 久久精品国产成人一区二区三区 | 中文字幕欧美三区| 亚洲视频在线观看一区| 亚洲国产欧美在线| 久久se这里有精品| 91网站黄www| 欧美一区二区三区小说| 欧美激情在线免费观看| 亚洲视频一二区| 免费看欧美女人艹b| 成人国产精品免费观看视频| 欧美日韩电影一区| 久久久久88色偷偷免费| 亚洲国产精品影院| 粗大黑人巨茎大战欧美成人| 欧美日韩aaaaa| 自拍偷自拍亚洲精品播放| 日韩一区精品视频| 一本色道a无线码一区v| 国产午夜精品一区二区三区视频| 亚洲愉拍自拍另类高清精品| 国产精品99久久久| 亚洲国产sm捆绑调教视频| 亚洲激情网站免费观看| 成人午夜视频福利| 亚洲另类春色国产| 91麻豆精品国产自产在线| 三级欧美在线一区| 国产视频一区二区在线| av欧美精品.com| 日韩中文字幕av电影| 国产日韩精品视频一区| 成人av免费观看| 欧美一区2区视频在线观看| 一区二区三区在线免费视频| 一本一道久久a久久精品| 国产精品成人网| 99精品桃花视频在线观看| 国产精品理伦片| 91黄视频在线观看| 偷拍与自拍一区| 日韩三级.com| 高清国产一区二区| 国产精品午夜在线| 色94色欧美sute亚洲线路一ni| 亚洲尤物视频在线| 日韩手机在线导航| 91色在线porny| 天天影视网天天综合色在线播放| 欧美日高清视频| 风间由美中文字幕在线看视频国产欧美 | 欧美在线观看18| 国产老女人精品毛片久久| 久久午夜羞羞影院免费观看| 国产一区二区h| 亚洲日本va午夜在线影院| 欧美日韩成人高清| 免费欧美高清视频| 国产精品私人影院| 欧美午夜精品久久久久久超碰 | 精品av久久707| 成年人国产精品| 亚洲精品国产高清久久伦理二区| 99免费精品视频| 亚洲在线观看免费| ww久久中文字幕| 在线观看亚洲a| 美女视频黄久久| 一区二区三区在线视频免费| 日韩欧美一卡二卡| 99精品视频在线免费观看| 天堂一区二区在线| 国产精品国产三级国产aⅴ中文| 欧美精品欧美精品系列| 91在线精品一区二区| 日本三级韩国三级欧美三级| 国产精品久线观看视频| 欧美一二三区在线观看| 欧美综合欧美视频| 丁香五精品蜜臀久久久久99网站 | 国产99久久久国产精品潘金| 亚洲免费av高清| 中文字幕亚洲区| 久久久国际精品| 51精品视频一区二区三区| 91免费看视频| 成人在线综合网| 麻豆成人久久精品二区三区小说| 亚洲第一av色| 亚洲成人一区在线| 日韩电影在线免费观看| 亚洲香肠在线观看| 亚洲观看高清完整版在线观看| 亚洲男人的天堂在线观看| 亚洲精品久久7777| 亚洲欧美欧美一区二区三区| 亚洲激情图片qvod| 亚洲一二三区在线观看| 亚洲图片欧美色图| 日日嗨av一区二区三区四区| 蜜臀精品一区二区三区在线观看 | 国产精品午夜电影| 中文字幕一区二| 三级影片在线观看欧美日韩一区二区 | 精品国精品自拍自在线| 国产女人水真多18毛片18精品视频 | 日韩一区二区不卡| 精品福利在线导航| 一区二区三区影院| 激情偷乱视频一区二区三区| 在线看不卡av| 国产日产欧美一区二区视频| 午夜精品久久久久久| 成人午夜视频在线| 精品美女在线观看| 久久久久久日产精品| 在线不卡中文字幕| 日韩一区二区三区视频| 9191国产精品| 国产精品卡一卡二| 婷婷国产在线综合| 免费成人结看片| 99精品国产热久久91蜜凸| 欧美日韩免费观看一区二区三区| 欧美偷拍一区二区| www日韩大片| 亚洲精品国产成人久久av盗摄| 久久精品二区亚洲w码| 99re这里都是精品| 欧美精品一区二区三区在线| 亚洲欧洲综合另类在线 | 日韩一区二区在线观看| 亚洲国产精品t66y| 久久草av在线| 日韩一区二区三区三四区视频在线观看| 国产午夜精品一区二区三区视频| 性久久久久久久久| 日本久久电影网| 国产精品乱码久久久久久| 韩国女主播一区| 91福利国产成人精品照片| 国产精品免费观看视频| 精品一区免费av| 久久精品亚洲精品国产欧美kt∨ | 亚洲精品在线观| 国产综合久久久久久久久久久久| 日韩一区二区免费电影|