1 /************************************************************************
2 * RSTP library - Rapid Spanning Tree (802.1t, 802.1w)
3 * Copyright (C) 2001-2003 Optical Access
6 * This file is part of RSTP library.
8 * RSTP library is free software; you can redistribute it and/or modify it
9 * under the terms of the GNU Lesser General Public License as published by the
10 * Free Software Foundation; version 2.1
12 * RSTP library is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
15 * General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public License
18 * along with RSTP library; see the file COPYING. If not, write to the Free
19 * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
21 **********************************************************************/
23 /* This file contains prototypes for system dependent API
24 from the RSTP to an operation system */
29 /* In the best case: clean all Learning entries with
30 the vlan_id and the port (if 'exclude'=0) or for all ports,
31 exclude the port (if ''exclude'=1). If 'port'=0, delete all
32 entries with the vlan_id, don't care to 'exclude' */
34 LT_FLASH_ALL_PORTS_EXCLUDE_THIS
,
35 LT_FLASH_ONLY_THE_PORT
39 STP_OUT_flush_lt (IN
int port_index
, IN
int vlan_id
,
40 IN LT_FLASH_TYPE_T type
, IN
char* reason
);
42 void /* for bridge id calculation */
43 STP_OUT_get_port_mac (IN
int port_index
, OUT
unsigned char* mac
);
46 STP_OUT_get_port_oper_speed (IN
unsigned int portNo
);
48 int /* 1- Up, 0- Down */
49 STP_OUT_get_port_link_status (IN
int port_index
);
51 int /* 1- Full, 0- Half */
52 STP_OUT_get_duplex (IN
int port_index
);
54 #ifdef STRONGLY_SPEC_802_1W
56 STP_OUT_set_learning (IN
int port_index
, IN
int vlan_id
, IN
int enable
);
59 STP_OUT_set_forwarding (IN
int port_index
, IN
int vlan_id
, IN
int enable
);
62 * In many kinds of hardware the state of ports may
63 * be changed with another method
66 STP_OUT_set_port_state (IN
int port_index
, IN
int vlan_id
, IN RSTP_PORT_STATE state
);
70 STP_OUT_set_hardware_mode (int vlan_id
, UID_STP_MODE_T mode
);
73 STP_OUT_tx_bpdu (IN
int port_index
, IN
int vlan_id
,
74 IN
unsigned char* bpdu
,
78 STP_OUT_get_port_name (IN
int port_index
);
81 STP_OUT_get_init_stpm_cfg (IN
int vlan_id
,
82 INOUT UID_STP_CFG_T
* cfg
);
86 STP_OUT_get_init_port_cfg (IN
int vlan_id
,
88 INOUT UID_STP_PORT_CFG_T
* cfg
);
91 #endif /* _STP_OUT_H__ */