1
1
"""NAPALM Cisco IOS Handler."""
2
+
2
3
# Copyright 2015 Spotify AB. All rights reserved.
3
4
#
4
5
# The contents of this file are licensed under the Apache License, Version 2.0
@@ -2100,46 +2101,54 @@ def get_bgp_neighbors_detail(self, neighbor_address=""):
2100
2101
"up" : neigh ["up" ] != "never" ,
2101
2102
"local_as" : napalm .base .helpers .as_number (neigh ["local_as" ]),
2102
2103
"remote_as" : napalm .base .helpers .as_number (neigh ["remote_as" ]),
2103
- "router_id" : napalm .base .helpers .ip (bgp_neigh ["router_id" ])
2104
- if bgp_neigh ["router_id" ]
2105
- else "" ,
2106
- "local_address" : napalm .base .helpers .ip (bgp_neigh ["local_address" ])
2107
- if bgp_neigh ["local_address" ]
2108
- else "" ,
2104
+ "router_id" : (
2105
+ napalm .base .helpers .ip (bgp_neigh ["router_id" ])
2106
+ if bgp_neigh ["router_id" ]
2107
+ else ""
2108
+ ),
2109
+ "local_address" : (
2110
+ napalm .base .helpers .ip (bgp_neigh ["local_address" ])
2111
+ if bgp_neigh ["local_address" ]
2112
+ else ""
2113
+ ),
2109
2114
"local_address_configured" : False ,
2110
- "local_port" : napalm .base .helpers .as_number (bgp_neigh ["local_port" ])
2111
- if bgp_neigh ["local_port" ]
2112
- else 0 ,
2115
+ "local_port" : (
2116
+ napalm .base .helpers .as_number (bgp_neigh ["local_port" ])
2117
+ if bgp_neigh ["local_port" ]
2118
+ else 0
2119
+ ),
2113
2120
"routing_table" : bgp_neigh ["vrf" ] if bgp_neigh ["vrf" ] else "global" ,
2114
2121
"remote_address" : napalm .base .helpers .ip (bgp_neigh ["neighbor" ]),
2115
- "remote_port" : napalm .base .helpers .as_number (bgp_neigh ["remote_port" ])
2116
- if bgp_neigh ["remote_port" ]
2117
- else 0 ,
2122
+ "remote_port" : (
2123
+ napalm .base .helpers .as_number (bgp_neigh ["remote_port" ])
2124
+ if bgp_neigh ["remote_port" ]
2125
+ else 0
2126
+ ),
2118
2127
"multihop" : False ,
2119
2128
"multipath" : False ,
2120
2129
"remove_private_as" : False ,
2121
2130
"import_policy" : "" ,
2122
2131
"export_policy" : "" ,
2123
- "input_messages" : napalm . base . helpers . as_number (
2124
- bgp_neigh ["msg_total_in" ]
2125
- )
2126
- if bgp_neigh [ "msg_total_in" ]
2127
- else 0 ,
2128
- "output_messages" : napalm . base . helpers . as_number (
2129
- bgp_neigh ["msg_total_out" ]
2130
- )
2131
- if bgp_neigh [ "msg_total_out" ]
2132
- else 0 ,
2133
- "input_updates" : napalm . base . helpers . as_number (
2134
- bgp_neigh ["msg_update_in" ]
2135
- )
2136
- if bgp_neigh [ "msg_update_in" ]
2137
- else 0 ,
2138
- "output_updates" : napalm . base . helpers . as_number (
2139
- bgp_neigh ["msg_update_out" ]
2140
- )
2141
- if bgp_neigh [ "msg_update_out" ]
2142
- else 0 ,
2132
+ "input_messages" : (
2133
+ napalm . base . helpers . as_number ( bgp_neigh ["msg_total_in" ])
2134
+ if bgp_neigh [ "msg_total_in" ]
2135
+ else 0
2136
+ ) ,
2137
+ "output_messages" : (
2138
+ napalm . base . helpers . as_number ( bgp_neigh ["msg_total_out" ])
2139
+ if bgp_neigh [ "msg_total_out" ]
2140
+ else 0
2141
+ ) ,
2142
+ "input_updates" : (
2143
+ napalm . base . helpers . as_number ( bgp_neigh ["msg_update_in" ])
2144
+ if bgp_neigh [ "msg_update_in" ]
2145
+ else 0
2146
+ ) ,
2147
+ "output_updates" : (
2148
+ napalm . base . helpers . as_number ( bgp_neigh ["msg_update_out" ])
2149
+ if bgp_neigh [ "msg_update_out" ]
2150
+ else 0
2151
+ ) ,
2143
2152
"messages_queued_out" : napalm .base .helpers .as_number (neigh ["out_q" ]),
2144
2153
"connection_state" : bgp_neigh ["bgp_state" ],
2145
2154
"previous_connection_state" : "" ,
@@ -2150,13 +2159,17 @@ def get_bgp_neighbors_detail(self, neighbor_address=""):
2150
2159
else False
2151
2160
),
2152
2161
"local_as_prepend" : False ,
2153
- "holdtime" : napalm .base .helpers .as_number (bgp_neigh ["holdtime" ])
2154
- if bgp_neigh ["holdtime" ]
2155
- else 0 ,
2162
+ "holdtime" : (
2163
+ napalm .base .helpers .as_number (bgp_neigh ["holdtime" ])
2164
+ if bgp_neigh ["holdtime" ]
2165
+ else 0
2166
+ ),
2156
2167
"configured_holdtime" : 0 ,
2157
- "keepalive" : napalm .base .helpers .as_number (bgp_neigh ["keepalive" ])
2158
- if bgp_neigh ["keepalive" ]
2159
- else 0 ,
2168
+ "keepalive" : (
2169
+ napalm .base .helpers .as_number (bgp_neigh ["keepalive" ])
2170
+ if bgp_neigh ["keepalive" ]
2171
+ else 0
2172
+ ),
2160
2173
"configured_keepalive" : 0 ,
2161
2174
"active_prefix_count" : 0 ,
2162
2175
"received_prefix_count" : 0 ,
@@ -3209,10 +3222,10 @@ def get_route_to(self, destination="", protocol="", longer=False):
3209
3222
# was not specified
3210
3223
if protocol == "" or protocol == route_entry ["protocol" ]:
3211
3224
if route_proto == "bgp" :
3212
- route_entry [
3213
- "protocol_attributes"
3214
- ] = self . _get_bgp_route_attr (
3215
- destination , _vrf , nh , ip_version
3225
+ route_entry ["protocol_attributes" ] = (
3226
+ self . _get_bgp_route_attr (
3227
+ destination , _vrf , nh , ip_version
3228
+ )
3216
3229
)
3217
3230
nh_line_found = (
3218
3231
False # for next RT entry processing ...
@@ -3305,12 +3318,16 @@ def get_users(self):
3305
3318
output = self ._send_command (command )
3306
3319
for match in re .finditer (username_regex , output , re .M ):
3307
3320
users [match .groupdict ()["username" ]] = {
3308
- "level" : int (match .groupdict ()["priv_level" ])
3309
- if match .groupdict ()["priv_level" ]
3310
- else 1 ,
3311
- "password" : match .groupdict ()["pwd_hash" ]
3312
- if match .groupdict ()["pwd_hash" ]
3313
- else "" ,
3321
+ "level" : (
3322
+ int (match .groupdict ()["priv_level" ])
3323
+ if match .groupdict ()["priv_level" ]
3324
+ else 1
3325
+ ),
3326
+ "password" : (
3327
+ match .groupdict ()["pwd_hash" ]
3328
+ if match .groupdict ()["pwd_hash" ]
3329
+ else ""
3330
+ ),
3314
3331
"sshkeys" : [],
3315
3332
}
3316
3333
for match in re .finditer (pub_keychain_regex , output , re .M ):
0 commit comments