ping > > To set up a listening socket usually you call in sequence: > - socket; > - bind; > - listen. > Usually if you try to listen to a post already in listening state > the bind will fail. However is possible that the listen will fail, > like in this sequence: > - socket 1; > - bind 1; > - socket 2; > - bind 2; > - listen 1; > - listen 2 <-- failure. > Our tests may attempt to reuse the port however we handle this problem > trying to detect bind errors. Catch also listen errors to avoid the > sequence above to trigger the problem. This happened some commit ago > in our CI. > > Signed-off-by: Frediano Ziglio <fziglio@xxxxxxxxxx> > --- > server/tests/test-display-base.c | 13 +++++++------ > 1 file changed, 7 insertions(+), 6 deletions(-) > > diff --git a/server/tests/test-display-base.c > b/server/tests/test-display-base.c > index ea3a23ba..f58f76d3 100644 > --- a/server/tests/test-display-base.c > +++ b/server/tests/test-display-base.c > @@ -894,10 +894,10 @@ void test_set_command_list(Test *test, Command > *commands, int num_commands) > test->num_commands = num_commands; > } > > -static gboolean ignore_bind_failures(const gchar *log_domain, > - GLogLevelFlags log_level, > - const gchar *message, > - gpointer user_data) > +static gboolean ignore_in_use_failures(const gchar *log_domain, > + GLogLevelFlags log_level, > + const gchar *message, > + gpointer user_data) > { > if (!g_str_equal (log_domain, G_LOG_DOMAIN)) { > return true; > @@ -905,7 +905,8 @@ static gboolean ignore_bind_failures(const gchar > *log_domain, > if ((log_level & G_LOG_LEVEL_WARNING) == 0) { > return true; > } > - if (strstr(message, "reds_init_socket: binding socket to ") == NULL) { > + if (strstr(message, "reds_init_socket: binding socket to ") == NULL || > // bind failure > + strstr(message, "reds_init_socket: listen: ") == NULL) { // listen > failure > g_print("XXX [%s]\n", message); > return true; > } > @@ -929,7 +930,7 @@ Test* test_new(SpiceCoreInterface* core) > // some common initialization for all display tests > port = BASE_PORT; > > - g_test_log_set_fatal_handler(ignore_bind_failures, NULL); > + g_test_log_set_fatal_handler(ignore_in_use_failures, NULL); > for (port = BASE_PORT; port < BASE_PORT + 10; port++) { > SpiceServer* server = spice_server_new(); > spice_server_set_noauth(server); > -- > 2.17.2 > > _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel