⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rsvpte_if.c

📁 Linux平台下
💻 C
字号:
/* *  Copyright (C) James R. Leu 2003 *  jleu@mindspring.com * *  This software is covered under the LGPL, for more *  info check out http://www.gnu.org/copyleft/lgpl.html */#include "rsvpte_struct.h"#include "rsvpte_if.h"#include "mpls_assert.h"#include "mpls_mm_impl.h"#include "mpls_socket_impl.h"#include "mpls_timer_impl.h"#include "mpls_ifmgr_impl.h"#include "mpls_trace_impl.h"uint32_t _rsvpte_if_next_index = 1;rsvpte_if *rsvpte_if_create(){  rsvpte_if *i = (rsvpte_if *) mpls_malloc(sizeof(rsvpte_if));  if (i) {    memset(i, 0, sizeof(rsvpte_if));    MPLS_REFCNT_INIT(i, 0);    MPLS_LIST_ELEM_INIT(i, _global);    i->label_space = -1;    i->index = _rsvpte_if_get_next_index();    i->oper_state = MPLS_OPER_DOWN;    i->admin_state = MPLS_ADMIN_DISABLE;  }  return i;}void rsvpte_if_delete(rsvpte_if * i){  LDP_PRINT(g->user_data,"if delete\n");  MPLS_REFCNT_ASSERT(i, 0);  mpls_free(i);}mpls_return_enum rsvpte_if_startup(rsvpte_global * g, rsvpte_if * i){  LDP_ENTER(g->user_data, "rsvpte_if_startup");  MPLS_ASSERT(i != NULL);  i->oper_state = MPLS_OPER_UP;  i->admin_state = MPLS_ADMIN_ENABLE;  LDP_EXIT(g->user_data, "rsvpte_if_startup");  return MPLS_SUCCESS;  /*   * when a interface update comes in, it will search the global    * list of interfaces, and start up the interface then   */  i->oper_state = MPLS_OPER_DOWN;  LDP_EXIT(g->user_data, "rsvpte_if_startup-delayed");  return MPLS_SUCCESS;}mpls_return_enum rsvpte_if_shutdown(rsvpte_global * g, rsvpte_if * i){  MPLS_ASSERT(i != NULL);  LDP_ENTER(g->user_data, "rsvpte_if_shutdown");  i->oper_state = MPLS_OPER_DOWN;  i->admin_state = MPLS_ADMIN_DISABLE;  LDP_EXIT(g->user_data, "rsvpte_if_shutdown");  return MPLS_SUCCESS;}uint32_t _rsvpte_if_get_next_index(){  uint32_t retval = _rsvpte_if_next_index;  _rsvpte_if_next_index++;  if (retval > _rsvpte_if_next_index) {    _rsvpte_if_next_index = 1;  }  return retval;}mpls_bool rsvpte_if_is_active(rsvpte_if * i){  MPLS_ASSERT(i);  if (i->oper_state == MPLS_OPER_UP)    return MPLS_BOOL_TRUE;  return MPLS_BOOL_FALSE;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -