/* @func int32 | rtl865x_addNxtHop |add a nexthop entry @parm uint32 | attr | attribute. NEXTHOP_L3/NEXTHOP_REDIRECT. @parm void* | ref_ptr | entry pointer who refer this nexthop entry. @parm rtl865x_netif_local_t* | netif | network interface. @parm uint32 | nexthop | nexthop. ip address when linktype is ethernet, session id when linktype is ppp session based. @rvalue SUCCESS | success. @rvalue FAILED | failed. @comm */ int32 rtl865x_addNxtHop(uint32 attr, void *ref_ptr, rtl865x_netif_local_t *netif, uint32 nexthop,uint32 srcIp) { int32 ret = FAILED; unsigned long flags=0; //rtl_down_interruptible(&nxthop_sem); SMP_LOCK_ETH_HW(flags); ret = _rtl865x_addNxtHop(attr,ref_ptr,netif,nexthop,srcIp); //rtl_up(&nxthop_sem); SMP_UNLOCK_ETH_HW(flags); return ret; }
/* @func int32 | rtl865x_addNxtHop |add a nexthop entry @parm uint32 | attr | attribute. NEXTHOP_L3/NEXTHOP_REDIRECT. @parm void* | ref_ptr | entry pointer who refer this nexthop entry. @parm rtl865x_netif_local_t* | netif | network interface. @parm uint32 | nexthop | nexthop. ip address when linktype is ethernet, session id when linktype is ppp session based. @rvalue SUCCESS | success. @rvalue FAILED | failed. @comm */ int32 rtl865x_addNxtHop(uint32 attr, void *ref_ptr, rtl865x_netif_local_t *netif, uint32 nexthop,uint32 srcIp) { int32 ret = FAILED; unsigned long flags; //rtl_down_interruptible(&nxthop_sem); local_irq_save(flags); ret = _rtl865x_addNxtHop(attr,ref_ptr,netif,nexthop,srcIp); //rtl_up(&nxthop_sem); local_irq_restore(flags); return ret; }