Compare commits

...

17 Commits

Author SHA1 Message Date
Andrew Yourtchenko
67d9475ae3 19.01 Release Notes
Change-Id: I43fd3aac9039c6d551fac8607374a0ebfdc6f74a
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-01-30 21:59:49 +01:00
Klement Sekera
827d4e568b ipsec: fix check support functions
Change-Id: If94c57fbb07a7376a9f2873e1489c00b28152620
Signed-off-by: Klement Sekera <ksekera@cisco.com>
(cherry picked from commit 4fd5a9d3e6abdf61f266da8400a299fe5b0eb0ed)
2019-01-30 20:36:33 +00:00
Paul Vinciguerra
b659e28219 VTL: Fix pep8 test/test_syslog.py
Change-Id: I8894a7a8f2be117a4c1cec9ce5134a1572da7ec7
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
(cherry picked from commit 776e46d77c21899874d156a48b8d89e7133d212c)
2019-01-30 19:22:58 +00:00
Andrew Yourtchenko
02da3a792c Update version (19.01) for API changes script
Change-Id: I9c39b5076d366b3455a875df32765b2cb8f3eca2
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-01-30 18:39:56 +00:00
Andrew Yourtchenko
44f14358cf Update to doxygen documentation for release 19.01
Change-Id: Id19cefc24d391f0437a0355f5328505ec21aa58a
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-01-30 18:39:20 +00:00
Damjan Marion
9124874e2e avf: fix queue enable issue
It is actually a bitmap....

Change-Id: Ie359e085df3f371512f773600f8d7460b2232b3e
Signed-off-by: Damjan Marion <damjan.marion@gmail.com>
2019-01-28 15:53:34 +01:00
Neale Ranns
b2962715e6 IP6 FIB: walk table for dump (VPP-1553)
Change-Id: Iaa57ace6df96bfacd1235c80ec7bb08e5f335530
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit 5c1f559b1bf32acd528664e7674a2d46f2aed947)
2019-01-25 15:49:05 +00:00
Steven
38befb3a53 bond: packet drops on VPP bond interface [VPP-1544]
We register callback for VNET_HW_INTERFACE_LINK_UP_DOWN_FUNCTION and
VNET_SW_INTERFACE_ADMIN_UP_DOWN_FUNCTION to add and remove the slave
interface from the bond interface accordingly. For static bonding without
lacp, one would think that it is good enough to put the slave interface into
the ective slave set as soon as it is configured. Wrong, sometimes the slave
interface is configured to be part of the bonding without ever bringing up the
hardware carrier or setting the admin state to up. In that case, we send
traffic to the "dead" slave interface.

The fix is to make sure both the carrier and admin state are up before we put
the slave into the active set for forwarding traffic.

Change-Id: I93b1c36d5481ca76cc8b87e8ca1b375ca3bd453b
Signed-off-by: Steven <sluong@cisco.com>
(cherry picked from commit e43278f75fe3188551580c7d7991958805756e2f)
2019-01-23 22:40:17 +00:00
Florin Coras
0cb68778ec ldp: add support for TCP_CONGESTION sockopts (VPP-1550)
Change-Id: I0fcf3385cc4fb96f000b84d5f880f74131c0d60f
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit 0ed24e93b207850078ca7f58cd4106cc4a906952)
2019-01-21 19:34:15 +00:00
Andrew Yourtchenko
1705599efe doxygen formatting fix: prevent stray examples appearing in the docs
The 'example' keyword triggers the creation of very out-of-context
example in the "Examples" top level of documentation. Rename the
keyword in the comment so the comment is still readable, but
does not trigger the doxygen.

Change-Id: Iecbdc236918f9178a034817aa6cea7ab6b2c1654
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-01-21 16:05:28 +01:00
Florin Coras
6e5f93e70d session: add support for vrf in session unformat (VPP-1546)
Change-Id: Ic5ba751c2bd2db9af4a21d3db40cc305d1208c30
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit baee8d498830bbbf54ec76e7c0c887c6373fe985)
2019-01-20 22:57:38 +00:00
Florin Coras
a74ae5886f tcp: fix debugging without cc stats (VPP-1547)
Change-Id: I376856fcadce570bb555064435f5876eefb2befa
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit 0702554639e5149d9012cc196aa43c3c8d0d7f9b)
2019-01-20 19:21:55 +00:00
Michal Cmarada
af429cb381 fix data_length in IpSec API call (VPP-1548)
Change-Id: Idb2839f6082bd2e052be2bc5417f0ebb43d1c0a6
Signed-off-by: Michal Cmarada <mcmarada@cisco.com>
2019-01-20 15:21:48 +00:00
Neale Ranns
46da5e33a3 VOM: ip-mroute inspect register handler fix
Change-Id: I57689446005da00fa064e2938cfe55a9e1cef9fc
Signed-off-by: Neale Ranns <nranns@cisco.com>
(cherry picked from commit d870ce441272d7057c8cb2b8f9731ebe41a17f0a)
2019-01-20 10:27:57 +00:00
Florin Coras
cbb4565c88 tcp: allow data in passive open ack (VPP-1545)
Change-Id: Iceb99d3f8b7029bd1b1e9ebafb1e0b3790c573e4
Signed-off-by: Florin Coras <fcoras@cisco.com>
(cherry picked from commit 865872ebdb2bbaf3f157e2a9889405b84114d2eb)
2019-01-18 22:10:24 +00:00
Paul Vinciguerra
48872780e8 VTL: Use latest version of syslog_rfc5424_parser (0.2.0) released: 190117
Upstream changes not compatable with: https://gerrit.fd.io/r/#/c/16797/

Running tests using custom test runner
Active filters: file=test_syslog.py, class=None, function=None
Adding tests from directory tree /vpp/test
1 out of 914 tests match specified filters
Not running extended tests (some tests will be skipped)
==============================================================================
Syslog Protocol Test Cases
==============================================================================
Syslog Protocol test                                                     OK

==============================================================================
TEST RESULTS:
     Scheduled tests: 1
      Executed tests: 1
        Passed tests: 1
==============================================================================

Test run was successful

Change-Id: I42f86ae3e7f062c0343025ba16bc6e8d2c34ed50
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
(cherry picked from commit 5011c67058c3c37d344c5d83ab6046700327b7b4)
2019-01-18 17:29:57 +00:00
Andrew Yourtchenko
3e2bc759f4 Initial changes for stable/1901 branch
This patch adds an entry for the defaultbranch in .gitreview

Change-Id: I3dc45492ec51b10524b0a6d894c7e42c352f0daa
Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2019-01-16 19:26:41 +01:00
19 changed files with 499 additions and 70 deletions

View File

@ -2,3 +2,4 @@
host=gerrit.fd.io
port=29418
project=vpp
defaultbranch=stable/1901

File diff suppressed because it is too large Load Diff

View File

@ -4,6 +4,7 @@ Test Framework Documentation {#test_framework_doc}
PyDoc generated documentation for the "make test" framework is available for
the following releases:
- [Test framework documentation for VPP 19.01](https://docs.fd.io/vpp/19.01/vpp_make_test/html)
- [Test framework documentation for VPP 18.10](https://docs.fd.io/vpp/18.10/vpp_make_test/html)
- [Test framework documentation for VPP 18.07](https://docs.fd.io/vpp/18.07/vpp_make_test/html)
- [Test framework documentation for VPP 18.04](https://docs.fd.io/vpp/18.04/vpp_make_test/html)

View File

@ -1,8 +1,8 @@
#!/usr/bin/env python
import os, fnmatch, subprocess
starttag = 'v18.10-rc0'
endtag = 'v18.10'
starttag = 'v19.01-rc0'
endtag = 'v19.01'
emit_md = True
apifiles = []

View File

@ -632,7 +632,8 @@ ip_mroute::dump(std::ostream& os)
ip_mroute::event_handler::event_handler()
{
OM::register_listener(this);
inspect::register_handler({ "ip-route" }, "ip route configurations", this);
inspect::register_handler({ "ip-mroute" },
"ip multicast route configurations", this);
}
void

View File

@ -653,14 +653,19 @@ clib_error_t *
avf_op_enable_queues (vlib_main_t * vm, avf_device_t * ad, u32 rx, u32 tx)
{
virtchnl_queue_select_t qs = { 0 };
int i;
int i = 0;
qs.vsi_id = ad->vsi_id;
qs.rx_queues = rx;
qs.tx_queues = tx;
for (i = 0; i < ad->n_rx_queues; i++)
while (rx)
{
avf_rxq_t *rxq = vec_elt_at_index (ad->rxqs, i);
avf_reg_write (ad, AVF_QRX_TAIL (i), rxq->n_enqueued);
if (rx & (1 << i))
{
avf_rxq_t *rxq = vec_elt_at_index (ad->rxqs, i);
avf_reg_write (ad, AVF_QRX_TAIL (i), rxq->n_enqueued);
rx &= ~(1 << i);
}
i++;
}
return avf_send_to_pf (vm, ad, VIRTCHNL_OP_ENABLE_QUEUES, &qs,
sizeof (virtchnl_queue_select_t), 0, 0);
@ -850,10 +855,8 @@ avf_device_init (vlib_main_t * vm, avf_main_t * am, avf_device_t * ad,
if ((error = avf_op_add_eth_addr (vm, ad, 1, ad->hwaddr)))
return error;
if ((error = avf_op_enable_queues (vm, ad, ad->n_rx_queues, 0)))
return error;
if ((error = avf_op_enable_queues (vm, ad, 0, ad->n_tx_queues)))
if ((error = avf_op_enable_queues (vm, ad, pow2_mask (ad->n_rx_queues),
pow2_mask (ad->n_tx_queues))))
return error;
ad->flags |= AVF_DEVICE_F_INITIALIZED;

View File

@ -1700,6 +1700,11 @@ getsockopt (int fd, int level, int optname,
else
rv = -EFAULT;
break;
case TCP_CONGESTION:
strcpy (optval, "cubic");
*optlen = strlen ("cubic");
rv = 0;
break;
default:
LDBG (0, "ERROR: fd %d: getsockopt SOL_TCP: sid %u, "
"optname %d unsupported!", fd, vlsh, optname);
@ -1808,6 +1813,10 @@ setsockopt (int fd, int level, int optname,
rv = vls_attr (vlsh, VPPCOM_ATTR_SET_TCP_KEEPINTVL,
(void *) optval, &optlen);
break;
case TCP_CONGESTION:
/* Ignore */
rv = 0;
break;
default:
LDBG (0, "ERROR: fd %d: setsockopt() SOL_TCP: vlsh %u"
"optname %d unsupported!", fd, vlsh, optname);

View File

@ -531,11 +531,13 @@ bond_enslave (vlib_main_t * vm, bond_enslave_args_t * args)
ethernet_set_rx_redirect (vnm, sif_hw, 1);
}
if ((bif->mode == BOND_MODE_LACP) && bm->lacp_enable_disable)
if (bif->mode == BOND_MODE_LACP)
{
(*bm->lacp_enable_disable) (vm, bif, sif, 1);
if (bm->lacp_enable_disable)
(*bm->lacp_enable_disable) (vm, bif, sif, 1);
}
else
else if (sif->port_enabled &&
(sif_hw->flags & VNET_HW_INTERFACE_FLAG_LINK_UP))
{
bond_enable_collecting_distributing (vm, sif);
}

View File

@ -396,19 +396,21 @@ bond_sw_interface_up_down (vnet_main_t * vnm, u32 sw_if_index, u32 flags)
if (sif)
{
sif->port_enabled = flags & VNET_SW_INTERFACE_FLAG_ADMIN_UP;
if (sif->lacp_enabled)
return 0;
if (sif->port_enabled == 0)
{
if (sif->lacp_enabled == 0)
{
bond_disable_collecting_distributing (vm, sif);
}
bond_disable_collecting_distributing (vm, sif);
}
else
{
if (sif->lacp_enabled == 0)
{
bond_enable_collecting_distributing (vm, sif);
}
vnet_main_t *vnm = vnet_get_main ();
vnet_hw_interface_t *hw =
vnet_get_sup_hw_interface (vnm, sw_if_index);
if (hw->flags & VNET_HW_INTERFACE_FLAG_LINK_UP)
bond_enable_collecting_distributing (vm, sif);
}
}
@ -429,19 +431,16 @@ bond_hw_interface_up_down (vnet_main_t * vnm, u32 hw_if_index, u32 flags)
sif = bond_get_slave_by_sw_if_index (sw->sw_if_index);
if (sif)
{
if (sif->lacp_enabled)
return 0;
if (!(flags & VNET_HW_INTERFACE_FLAG_LINK_UP))
{
if (sif->lacp_enabled == 0)
{
bond_disable_collecting_distributing (vm, sif);
}
bond_disable_collecting_distributing (vm, sif);
}
else
else if (sif->port_enabled)
{
if (sif->lacp_enabled == 0)
{
bond_enable_collecting_distributing (vm, sif);
}
bond_enable_collecting_distributing (vm, sif);
}
}

View File

@ -331,19 +331,17 @@ send_ip6_fib_details (vpe_api_main_t * am,
typedef struct apt_ip6_fib_show_ctx_t_
{
u32 fib_index;
fib_node_index_t *entries;
} api_ip6_fib_show_ctx_t;
static void
api_ip6_fib_table_put_entries (clib_bihash_kv_24_8_t * kvp, void *arg)
static fib_table_walk_rc_t
api_ip6_fib_table_put_entries (fib_node_index_t fei, void *arg)
{
api_ip6_fib_show_ctx_t *ctx = arg;
if ((kvp->key[2] >> 32) == ctx->fib_index)
{
vec_add1 (ctx->entries, kvp->value);
}
vec_add1 (ctx->entries, fei);
return (FIB_TABLE_WALK_CONTINUE);
}
static void
@ -352,18 +350,15 @@ api_ip6_fib_table_get_all (vl_api_registration_t * reg,
fib_table_t * fib_table)
{
vpe_api_main_t *am = &vpe_api_main;
ip6_main_t *im6 = &ip6_main;
fib_node_index_t *fib_entry_index;
api_ip6_fib_show_ctx_t ctx = {
.fib_index = fib_table->ft_index,
.entries = NULL,
};
fib_route_path_encode_t *api_rpaths;
const fib_prefix_t *pfx;
BV (clib_bihash_foreach_key_value_pair)
((BVT (clib_bihash) *) & im6->ip6_table[IP6_FIB_TABLE_NON_FWDING].
ip6_hash, api_ip6_fib_table_put_entries, &ctx);
ip6_fib_table_walk (fib_table->ft_index,
api_ip6_fib_table_put_entries, &ctx);
vec_sort_with_function (ctx.entries, fib_entry_cmp_for_sort);

View File

@ -533,12 +533,22 @@ ipsec_rand_seed (void)
}
static clib_error_t *
ipsec_check_support (ipsec_sa_t * sa)
ipsec_check_ah_support (ipsec_sa_t * sa)
{
if (sa->integ_alg == IPSEC_INTEG_ALG_NONE)
return clib_error_return (0, "unsupported none integ-alg");
return 0;
}
static clib_error_t *
ipsec_check_esp_support (ipsec_sa_t * sa)
{
if (sa->crypto_alg == IPSEC_CRYPTO_ALG_AES_GCM_128)
return clib_error_return (0, "unsupported aes-gcm-128 crypto-alg");
if (sa->integ_alg == IPSEC_INTEG_ALG_NONE)
return clib_error_return (0, "unsupported none integ-alg");
if (sa->crypto_alg == IPSEC_CRYPTO_ALG_AES_GCM_192)
return clib_error_return (0, "unsupported aes-gcm-192 crypto-alg");
if (sa->crypto_alg == IPSEC_CRYPTO_ALG_AES_GCM_256)
return clib_error_return (0, "unsupported aes-gcm-256 crypto-alg");
return 0;
}
@ -730,7 +740,7 @@ ipsec_init (vlib_main_t * vm)
"ah4-decrypt",
"ah6-encrypt",
"ah6-decrypt",
ipsec_check_support,
ipsec_check_ah_support,
NULL);
im->ah_default_backend = idx;
@ -743,7 +753,7 @@ ipsec_init (vlib_main_t * vm)
"esp4-decrypt",
"esp6-encrypt",
"esp6-decrypt",
ipsec_check_support, NULL);
ipsec_check_esp_support, NULL);
im->esp_default_backend = idx;
rv = ipsec_select_esp_backend (im, idx);

View File

@ -717,9 +717,10 @@ static void
#if WITH_LIBSSL > 0
vlib_main_t *vm = vlib_get_main ();
clib_error_t *error;
int data_len = ntohl (mp->data_len);
u8 *tmp = format (0, "%s", mp->name);
u8 *data = vec_new (u8, mp->data_len);
clib_memcpy (data, mp->data, mp->data_len);
u8 *data = vec_new (u8, data_len);
clib_memcpy (data, mp->data, data_len);
error = ikev2_set_profile_auth (vm, tmp, mp->auth_method, data, mp->is_hex);
vec_free (tmp);
vec_free (data);
@ -742,8 +743,9 @@ vl_api_ikev2_profile_set_id_t_handler (vl_api_ikev2_profile_set_id_t * mp)
vlib_main_t *vm = vlib_get_main ();
clib_error_t *error;
u8 *tmp = format (0, "%s", mp->name);
u8 *data = vec_new (u8, mp->data_len);
clib_memcpy (data, mp->data, mp->data_len);
int data_len = ntohl (mp->data_len);
u8 *data = vec_new (u8, data_len);
clib_memcpy (data, mp->data, data_len);
error = ikev2_set_profile_id (vm, tmp, mp->id_type, data, mp->is_local);
vec_free (tmp);
vec_free (data);

View File

@ -299,6 +299,7 @@ ipsec_add_del_tunnel_if_internal (vnet_main_t * vnm,
pool_get (im->sad, sa);
clib_memset (sa, 0, sizeof (*sa));
t->input_sa_index = sa - im->sad;
sa->protocol = IPSEC_PROTOCOL_ESP;
sa->spi = args->remote_spi;
sa->tunnel_src_addr.ip4.as_u32 = args->remote_ip.as_u32;
sa->tunnel_dst_addr.ip4.as_u32 = args->local_ip.as_u32;
@ -325,6 +326,7 @@ ipsec_add_del_tunnel_if_internal (vnet_main_t * vnm,
pool_get (im->sad, sa);
clib_memset (sa, 0, sizeof (*sa));
t->output_sa_index = sa - im->sad;
sa->protocol = IPSEC_PROTOCOL_ESP;
sa->spi = args->local_spi;
sa->tunnel_src_addr.ip4.as_u32 = args->local_ip.as_u32;
sa->tunnel_dst_addr.ip4.as_u32 = args->remote_ip.as_u32;

View File

@ -100,12 +100,14 @@ uword
unformat_stream_session_id (unformat_input_t * input, va_list * args)
{
u8 *proto = va_arg (*args, u8 *);
u32 *fib_index = va_arg (*args, u32 *);
ip46_address_t *lcl = va_arg (*args, ip46_address_t *);
ip46_address_t *rmt = va_arg (*args, ip46_address_t *);
u16 *lcl_port = va_arg (*args, u16 *);
u16 *rmt_port = va_arg (*args, u16 *);
u8 *is_ip4 = va_arg (*args, u8 *);
u8 tuple_is_set = 0;
u32 vrf = ~0;
clib_memset (lcl, 0, sizeof (*lcl));
clib_memset (rmt, 0, sizeof (*rmt));
@ -114,10 +116,16 @@ unformat_stream_session_id (unformat_input_t * input, va_list * args)
{
*proto = TRANSPORT_PROTO_TCP;
}
if (unformat (input, "udp"))
else if (unformat (input, "udp"))
{
*proto = TRANSPORT_PROTO_UDP;
}
else
return 0;
if (unformat (input, "vrf %u", &vrf))
;
if (unformat (input, "%U:%d->%U:%d", unformat_ip4_address, &lcl->ip4,
lcl_port, unformat_ip4_address, &rmt->ip4, rmt_port))
{
@ -131,6 +139,13 @@ unformat_stream_session_id (unformat_input_t * input, va_list * args)
tuple_is_set = 1;
}
if (vrf != ~0)
{
fib_protocol_t fib_proto;
fib_proto = *is_ip4 ? FIB_PROTOCOL_IP4 : FIB_PROTOCOL_IP6;
*fib_index = fib_table_find (fib_proto, vrf);
}
return tuple_is_set;
}
@ -138,14 +153,14 @@ uword
unformat_stream_session (unformat_input_t * input, va_list * args)
{
stream_session_t **result = va_arg (*args, stream_session_t **);
u32 lcl_port = 0, rmt_port = 0, fib_index = 0;
ip46_address_t lcl, rmt;
stream_session_t *s;
u8 proto = ~0;
ip46_address_t lcl, rmt;
u32 lcl_port = 0, rmt_port = 0, fib_index = 0;
u8 is_ip4 = 0;
if (!unformat (input, "%U", unformat_stream_session_id, &proto, &lcl, &rmt,
&lcl_port, &rmt_port, &is_ip4))
if (!unformat (input, "%U", unformat_stream_session_id, &proto, &fib_index,
&lcl, &rmt, &lcl_port, &rmt_port, &is_ip4))
return 0;
if (is_ip4)
@ -176,8 +191,8 @@ unformat_transport_connection (unformat_input_t * input, va_list * args)
u32 lcl_port = 0, rmt_port = 0, fib_index = 0;
u8 is_ip4 = 0;
if (!unformat (input, "%U", unformat_stream_session_id, &proto, &lcl, &rmt,
&lcl_port, &rmt_port, &is_ip4))
if (!unformat (input, "%U", unformat_stream_session_id, &fib_index, &proto,
&lcl, &rmt, &lcl_port, &rmt_port, &is_ip4))
return 0;
proto = (proto == (u8) ~ 0) ? suggested_proto : proto;

View File

@ -879,6 +879,7 @@ if (tcp_cc_time_to_print_stats (_tc)) \
}
#else
#define TCP_EVT_CC_STAT_HANDLER(_tc, ...)
#define TCP_EVT_CC_STAT_PRINT(_tc)
#endif
/*

View File

@ -359,6 +359,7 @@ tcp_segment_validate (tcp_worker_ctx_t * wrk, tcp_connection_t * tc0,
/* 4th: check the SYN bit */
if (PREDICT_FALSE (tcp_syn (th0)))
{
*error0 = tcp_ack (th0) ? TCP_ERROR_SYN_ACKS_RCVD : TCP_ERROR_SYNS_RCVD;
/* TODO implement RFC 5961 */
if (tc0->state == TCP_STATE_SYN_RCVD)
{
@ -2712,8 +2713,7 @@ tcp46_rcv_process_inline (vlib_main_t * vm, vlib_node_runtime_t * node,
}
/* Make sure the ack is exactly right */
if (tc0->rcv_nxt != vnet_buffer (b0)->tcp.seq_number || is_fin0
|| vnet_buffer (b0)->tcp.data_len)
if (tc0->rcv_nxt != vnet_buffer (b0)->tcp.seq_number || is_fin0)
{
tcp_connection_reset (tc0);
error0 = TCP_ERROR_SEGMENT_INVALID;
@ -3144,6 +3144,7 @@ tcp46_listen_inline (vlib_main_t * vm, vlib_node_runtime_t * node,
child0->snd_wl2 = vnet_buffer (b0)->tcp.ack_number;
tcp_connection_init_vars (child0);
child0->rto = TCP_RTO_MIN;
TCP_EVT_DBG (TCP_EVT_SYN_RCVD, child0, 1);
if (stream_session_accept (&child0->connection, lc0->c_s_index,

View File

@ -385,7 +385,7 @@ strncat_s (char *__restrict__ dest, rsize_t dmax,
* s1max and ptr are modified to contain the state
* null runtime constraint error or token is not found
*
* @example
* Example:
* char *str2 = " ";
* char str1[100];
* uword len;
@ -457,7 +457,7 @@ strnlen_s (const char *s, size_t maxsize)
* EINVAL runtime constraint error
* ESRCH no match
*
* @example
* Example:
* char *sub = 0;
* char *s1 = "success is not final, failure is not fatal.";
*

View File

@ -7,9 +7,7 @@ parameterized>=0.6.1 # BSD
pexpect # ISC
psutil # BSD
pycodestyle # MIT (Expat license) https://pypi.org/project/pycodestyle/
# used by syslog_rfc5424_parser
pyparsing<2.3.1 # MIT
scapy==2.4.0; python_version >= '2.7' or python_version >= '3.4' # GPL2 https://github.com/secdev/scapy/blob/master/LICENSE
six # MIT
subprocess32 # PSF
syslog_rfc5424_parser # ISC
syslog_rfc5424_parser>=0.2.0 # ISC

View File

@ -127,8 +127,8 @@ class TestSyslog(VppTestCase):
self.assertEqual(capture[0][UDP].dport, 514)
self.assert_packet_checksums_valid(capture[0], False)
except:
self.logger.error(ppp("invalid packet:", capture[0]))
raise
self.logger.error(ppp("invalid packet:", capture[0]))
raise
self.syslog_verify(capture[0][Raw].load,
SyslogFacility.local7,
SyslogSeverity.info,
@ -182,8 +182,8 @@ class TestSyslog(VppTestCase):
try:
self.assertEqual(capture[0][UDP].dport, 12345)
except:
self.logger.error(ppp("invalid packet:", capture[0]))
raise
self.logger.error(ppp("invalid packet:", capture[0]))
raise
self.syslog_verify(capture[0][Raw].load,
SyslogFacility.local5,
SyslogSeverity.err,