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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ipsec_network_interface.c

?? ipsec PNE 3.3 source code, running at more than vxworks6.x version.
?? C
?? 第 1 頁 / 共 2 頁
字號:
STATUS ipsecDFBitMapi    (    WRSEC_INET_ADDR *pAddress,    int dfBitConfig    )    {    void *iterator = (void *)NULL;    IPSEC_NETWORK_INTERFACE *p_ipsec_network_interface;    STATUS return_value;    WRSEC_INET_ADDR_FAMILY wrn_inet_address_family;    DF_BIT_CONFIG df_bit_config;    if (ipsec_global_class.ipsec_enabled == FALSE)        {        return (ERROR);        }    return_value = ERROR;    p_ipsec_network_interface = NULL;    if ((dfBitConfig == 0) || (dfBitConfig == 1) || (dfBitConfig == 2))        {        df_bit_config = dfBitConfig;        }    else        {        ipsec_printf (IPSEC_ERROR_PRINTF, "IPSec: Configuration Error! %s\n", "Invalid DF Bit Configuration");        return (ERROR);        }    /*address unspecified check*/    wrn_inet_address_family = pAddress->type;    if (wrn_inet_address_family == WRSEC_AF_INET4)        {        if (WRSEC_INET4_IS_ADDR_UNSPECIFIED (((WRSEC_INET4_ADDR *)pAddress)))            {            ipsec_printf (IPSEC_ERROR_PRINTF, "IPSec: Invalid IPv4 Address\n");            return (ERROR);            }        }    else if (wrn_inet_address_family == WRSEC_AF_INET6)        {        if (WRSEC_INET6_IS_ADDR_UNSPECIFIED (((WRSEC_INET6_ADDR *)pAddress)))            {            ipsec_printf (IPSEC_ERROR_PRINTF, "IPSec: Invalid IPv6 Address\n");            return (ERROR);            }        }    else        {        ipsec_printf (IPSEC_ERROR_PRINTF, "IPsec: Invalid Address\n");        return (ERROR);        }	wrSecListScanLock( ipsec_global_class.ipsec_network_interface_list );	while ((p_ipsec_network_interface = wrSecListScan(ipsec_global_class.ipsec_network_interface_list,                                                      &iterator)) != NULL)		{		if ((pAddress->type == p_ipsec_network_interface->p_address->type) &&            wrSecInetAddrEquals(pAddress, p_ipsec_network_interface->p_address))			{			p_ipsec_network_interface->df_bit = df_bit_config;			wrSecFree (pAddress);			return_value = OK;			break;			}		}	wrSecListScanUnlock( ipsec_global_class.ipsec_network_interface_list );    return (return_value);    }/******************************************************************************** ipsecSetPMTUAgeMapi - Configures the time untill which the PMTU for a host is  *                       stored .* RETURNS: OK or ERROR* */STATUS ipsecSetPMTUAgeMapi    (    WRSEC_INET_ADDR *pAddress,    UINT minutes    )    {    void *iterator = (void *)NULL;    IPSEC_NETWORK_INTERFACE *p_ipsec_network_interface;    STATUS return_value;    WRSEC_INET_ADDR_FAMILY wrn_inet_address_family;    if (ipsec_global_class.ipsec_enabled == FALSE)        {        return (ERROR);        }    return_value = ERROR;    p_ipsec_network_interface = NULL;    /*address unspecified check*/    wrn_inet_address_family = pAddress->type;    if (wrn_inet_address_family == WRSEC_AF_INET4)        {        if (WRSEC_INET4_IS_ADDR_UNSPECIFIED (((WRSEC_INET4_ADDR *)pAddress)))            {            ipsec_printf (IPSEC_ERROR_PRINTF, "IPSec: Invalid IPv4 Address\n");            return (ERROR);            }        }    else if (wrn_inet_address_family == WRSEC_AF_INET6)        {        if (WRSEC_INET6_IS_ADDR_UNSPECIFIED (((WRSEC_INET6_ADDR *)pAddress)))            {            ipsec_printf (IPSEC_ERROR_PRINTF, "IPSec: Invalid IPv6 Address\n");            return (ERROR);            }        }    else        {        ipsec_printf (IPSEC_ERROR_PRINTF, "IPsec: Invalid Address\n");        return (ERROR);        }	wrSecListScanLock( ipsec_global_class.ipsec_network_interface_list );	while ((p_ipsec_network_interface = wrSecListScan(ipsec_global_class.ipsec_network_interface_list,                                                      &iterator)) != NULL)		{		if ((pAddress->type == p_ipsec_network_interface->p_address->type) &&            wrSecInetAddrEquals(pAddress, p_ipsec_network_interface->p_address))			{			p_ipsec_network_interface->pmtu_age = 60 * minutes;			wrSecFree (pAddress);			return_value = OK;			break;			}		}	wrSecListScanUnlock( ipsec_global_class.ipsec_network_interface_list );    return (return_value);    }/************************************************************************/UINT ipsecPmtuAgeGet    (    WRSEC_INET_ADDR *pAddress    )    {	void *iterator = (void *)NULL;    IPSEC_NETWORK_INTERFACE *p_ipsec_network_interface;    UCHAR addr_equals;    UINT return_value;    return_value = 0;    if (ipsec_global_class.ipsec_enabled == FALSE)        {        return (return_value);        }    p_ipsec_network_interface = NULL;    addr_equals = 0;	wrSecListScanLock( ipsec_global_class.ipsec_network_interface_list );	while ((p_ipsec_network_interface = wrSecListScan(ipsec_global_class.ipsec_network_interface_list,                                                      &iterator)) != NULL)		{		if ((pAddress->type == p_ipsec_network_interface->p_address->type) &&            wrSecInetAddrEquals(pAddress, p_ipsec_network_interface->p_address))			{			return_value = p_ipsec_network_interface->pmtu_age;			break;			}		}	wrSecListScanUnlock( ipsec_global_class.ipsec_network_interface_list );    if (addr_equals == 0)        {        UCHAR addr_string[50];        wrSecInetAddrToString((char *)addr_string, 50, pAddress);        ipsec_printf (IPSEC_WARNING_PRINTF, "IPSec: could not find PMTU age information for %s\n", addr_string);        }    return (return_value);    }/******************************************************************************** ipsec_get_ifnet_handle  - Finds the network interface base on the IP address* ASSUMES: that splimp() is already called before invoking this function* RETURNS: Handle to the network interface structure, otherwise NULL*/struct ifnet *ipsec_get_ifnet_handle    (    WRSEC_INET_ADDR *pAddress    )    {    struct ifnet *sptr_ifnet = (struct ifnet *)NULL;    struct in_addr ip_in_addr;    #if STACK_NAME == STACK_NAME_V4_V6 && defined (INET6)    struct ifnet *ifp;    struct ifaddr *ifa;    struct in6_addr ip_in6_addr;    struct sockaddr_in6 *sockaddr6;    UCHAR *a, *b;    UCHAR len_to_compare;    #endif    WRSEC_INET_ADDR_FAMILY wrn_inet_address_family;    wrn_inet_address_family = pAddress->type;    if (wrn_inet_address_family == WRSEC_AF_INET4)        {        ip_in_addr.s_addr = (((WRSEC_INET4_ADDR *)pAddress)->data._ula1[0]);        INADDR_TO_IFP (ip_in_addr, sptr_ifnet);        }    else if (wrn_inet_address_family == WRSEC_AF_INET6)        {        #if STACK_NAME == STACK_NAME_V4_V6 && defined (INET6)        WRSEC_INET6_SET_IN6_ADDR_A_WITH_STRUCT_B (ip_in6_addr, (*(WRSEC_INET6_ADDR *)pAddress));        for (ifp = ifnet_head.tqh_first; ifp; ifp = ifp->if_list.tqe_next)            {            for (ifa = ifp->if_addrlist.tqh_first; ifa; ifa = ifa->ifa_list.tqe_next)                {                if (ifa->ifa_addr->sa_family != AF_INET6)                    continue;                sockaddr6 = (struct sockaddr_in6 *)ifa->ifa_addr;                /* Kame implementation stores interface index in third and                  * fourth byte of address(link local).                  */                a = (UCHAR *)&sockaddr6->sin6_addr;                b = (UCHAR *)&ip_in6_addr;                len_to_compare = sizeof (struct in6_addr);                if (*a == 0xfe && *(a + 1) == 0x80 && *b == 0xfe && *(b + 1) == 0x80)                    {                    a += 4;                    b += 4;                    len_to_compare -= 4;                    }                if (memcmp (a, b, len_to_compare) == 0)                    {                    sptr_ifnet = ifp;                    }                }            }        #else        ipsec_printf (IPSEC_ERROR_PRINTF, "IPsec: Invalid IP Address format\n");        #endif        }    else        {        ipsec_printf (IPSEC_ERROR_PRINTF, "IPsec: Invalid IP Address\n");        }    return ( sptr_ifnet );    }/******************************************************************************** ipsec_find_network_interface_based_on_ip_address   * Searches for a network interface with matching IP address.* * RETURNS: pointer to IPSEC_NETWORK_INTERFACE on success or NULL on failure*/IPSEC_NETWORK_INTERFACE *ipsec_find_network_interface_based_on_ip_address    (    WRSEC_INET_ADDR *pAddress    )    {    void *iterator = (void *)NULL;    IPSEC_NETWORK_INTERFACE *p_ipsec_network_interface;    IPSEC_NETWORK_INTERFACE *p_target_network_interface;    WRSEC_INET_ADDR_FAMILY wrn_inet_address_family;    p_target_network_interface = NULL;    wrn_inet_address_family = pAddress->type;	wrSecListScanLock( ipsec_global_class.ipsec_network_interface_list );	while ((p_ipsec_network_interface = wrSecListScan(ipsec_global_class.ipsec_network_interface_list,                                                      &iterator)) != NULL)		{		if ((pAddress->type == p_ipsec_network_interface->p_address->type) &&            wrSecInetAddrEquals(pAddress, p_ipsec_network_interface->p_address))			{            p_target_network_interface = p_ipsec_network_interface;            break;			}		}	wrSecListScanUnlock( ipsec_global_class.ipsec_network_interface_list );    return (p_target_network_interface);    }/******************************************************************************/void cleanup_network_interface_container    (    WRSEC_LIST list    )    {    void *iterator = (void *)NULL;    IPSEC_NETWORK_INTERFACE *p_network_interface;	wrSecListScanLock( list );	while ((p_network_interface = wrSecListScan(list, &iterator)) != NULL)		{		if (p_network_interface->p_address != NULL)			{			wrSecFree (p_network_interface->p_address);			}		wrSecFree (p_network_interface);		}	wrSecListScanUnlock( list );    }/******************************************************************************//* Do not un-comment; NOT to be used *//*    Do not un-comment; NOT to be used        {        struct in_ifaddr* sptr_interface_address;        struct ifaddr* sptr_ifaddr;        s = splnet();        for (sptr_ifaddr = sptr_ifnet->if_addrlist; sptr_ifaddr;             sptr_ifaddr = sptr_ifaddr->ifa_next)            {            IFP_TO_IA (sptr_ifnet, sptr_interface_address);            if (sptr_interface_address == NULL)                {                continue;                }            if (sptr_interface_address->ia_addr.sin_family != AF_INET)                {                continue;                }            source = sptr_interface_address->ia_addr.sin_addr.s_addr;            p_network_interface =                 ipsec_find_network_interface_based_on_ip_address (ntohl(source));            if (p_network_interface != NULL)                {                *pp_ipsec_network_interface = p_network_interface;                found = TRUE;                break;                }            }        splx(s);        }*//******************************************************************************/

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产自产高清不卡| 91黄色小视频| 在线观看视频欧美| 欧美一区二区私人影院日本| 久久美女高清视频| 亚洲va国产天堂va久久en| 国产麻豆精品95视频| 欧美日韩二区三区| 亚洲欧洲日产国码二区| 麻豆精品视频在线观看| 在线看日韩精品电影| 久久精品亚洲乱码伦伦中文| 婷婷成人激情在线网| 99久久精品国产一区| 欧美成人video| 天天射综合影视| 色先锋久久av资源部| 欧美国产在线观看| 精品无人码麻豆乱码1区2区 | 夜夜嗨av一区二区三区中文字幕| 激情五月激情综合网| 日韩午夜小视频| 亚洲国产一二三| 色综合欧美在线视频区| 国产女主播视频一区二区| 国产中文字幕一区| 久久夜色精品一区| 久久成人麻豆午夜电影| 欧美老人xxxx18| 亚洲成a人片在线观看中文| 色婷婷综合激情| 亚洲日本在线看| 91天堂素人约啪| 国产精品久久久久久久久动漫 | 久久久久99精品国产片| 卡一卡二国产精品| 欧美一区二区福利在线| 麻豆成人在线观看| 日韩午夜激情视频| 免费看欧美女人艹b| 欧美一区二区视频在线观看 | 欧美日韩免费高清一区色橹橹 | 欧美日韩在线三区| 亚洲成av人片一区二区梦乃| 欧美三级中文字幕| 日本最新不卡在线| 精品免费国产一区二区三区四区| 日韩激情在线观看| 久久亚洲精华国产精华液 | 精品写真视频在线观看| 精品国产91久久久久久久妲己| 六月丁香综合在线视频| 久久视频一区二区| 高清成人在线观看| 亚洲欧美日韩久久精品| 在线一区二区视频| 日韩—二三区免费观看av| 欧美一区二区三区免费观看视频| 日本不卡在线视频| 久久久777精品电影网影网 | 欧美日韩久久一区二区| 久久激五月天综合精品| 久久九九国产精品| 在线观看一区二区精品视频| 日韩精品亚洲一区二区三区免费| 久久综合九色综合97_久久久| 国产麻豆欧美日韩一区| 亚洲激情图片小说视频| 欧美精品一卡两卡| 国产成a人亚洲精品| 亚洲精品欧美激情| 精品欧美乱码久久久久久 | 国产精品一区二区无线| 一区二区三区欧美日韩| 日韩一级片在线观看| 成人高清免费观看| 香蕉乱码成人久久天堂爱免费| 精品99一区二区三区| 91啦中文在线观看| 蜜臀91精品一区二区三区| 国产精品国产三级国产三级人妇| 欧美高清视频一二三区| 国产91在线|亚洲| 人人精品人人爱| 中文字幕中文在线不卡住| 日韩写真欧美这视频| 91啪九色porn原创视频在线观看| 麻豆传媒一区二区三区| 尤物视频一区二区| 久久毛片高清国产| 欧美一级黄色片| 一本大道久久精品懂色aⅴ | 国产三级精品在线| 欧美一区二区在线看| 97久久超碰国产精品| 国产一区美女在线| 日韩av不卡在线观看| 亚洲桃色在线一区| 国产精品激情偷乱一区二区∴| 日韩欧美亚洲一区二区| 欧美美女直播网站| 色综合久久综合网欧美综合网| 国产精品一二三四五| 久久超碰97中文字幕| 日本午夜精品视频在线观看| 亚洲一级二级在线| 亚洲精品国产品国语在线app| 国产精品免费人成网站| 精品91自产拍在线观看一区| 欧美一区二区不卡视频| 欧美日韩成人在线| 欧美日本一区二区三区| 欧美影视一区在线| 91久久精品网| 欧美亚洲国产一区在线观看网站| 99国产精品视频免费观看| 成av人片一区二区| 成人av中文字幕| 国产激情视频一区二区三区欧美 | 日产精品久久久久久久性色| 亚洲免费在线观看视频| 国产精品色噜噜| 91九色02白丝porn| 在线亚洲免费视频| 91亚洲国产成人精品一区二三| 国产精品一区2区| 乱中年女人伦av一区二区| 亚洲乱码国产乱码精品精小说| 亚洲三级视频在线观看| 亚洲天堂a在线| 中文字幕亚洲不卡| 国产精品乱子久久久久| 最近日韩中文字幕| 国产精品美女久久久久久| 国产欧美综合在线观看第十页| 欧美精品一区二区在线观看| 欧美一个色资源| 欧美成人乱码一区二区三区| 久久久噜噜噜久久人人看 | 日韩午夜激情电影| 在线观看日韩一区| 欧美日韩一区不卡| 欧美日韩在线综合| 精品成人一区二区三区| 精品国产乱码久久久久久闺蜜| 日韩欧美国产一区二区三区| 亚洲精品一线二线三线无人区| 日韩欧美综合在线| 久久综合五月天婷婷伊人| 中文字幕不卡在线| 中文字幕亚洲区| 午夜久久久久久电影| 久久99久国产精品黄毛片色诱| 精品一区二区成人精品| 国产一区999| eeuss鲁片一区二区三区在线看| 成人午夜av影视| 在线视频国内自拍亚洲视频| 51精品国自产在线| 久久尤物电影视频在线观看| 国产欧美综合在线观看第十页| ...中文天堂在线一区| 最新高清无码专区| 麻豆精品视频在线| heyzo一本久久综合| 在线看日韩精品电影| 日韩一级高清毛片| 亚洲福利视频导航| 国产米奇在线777精品观看| 91一区二区三区在线观看| 欧美日韩aaaaa| 国产欧美一区二区三区在线老狼| 亚洲欧美一区二区不卡| 秋霞电影一区二区| av电影天堂一区二区在线| 日韩欧美中文字幕公布| 国产精品乱码妇女bbbb| 图片区小说区区亚洲影院| 国产精品一区二区果冻传媒| 99精品偷自拍| 国产日产欧美一区二区三区| 午夜视频在线观看一区二区三区| 国产河南妇女毛片精品久久久| 欧美综合久久久| 中文字幕一区二区三区不卡 | 成人黄色a**站在线观看| 制服.丝袜.亚洲.中文.综合| 18成人在线观看| 久久成人免费日本黄色| 日韩一级片在线播放| 亚洲欧美国产三级| 国产专区综合网| 日韩一区二区在线观看视频| 天堂一区二区在线| 97精品国产露脸对白| 久久综合九色综合97婷婷女人| 日韩高清不卡一区二区| 9191国产精品| 亚洲一区二区影院| 91社区在线播放|