/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to dracut-module/password-agent.c

  • Committer: teddy at recompile
  • Date: 2020-02-09 03:38:33 UTC
  • Revision ID: teddy@recompile.se-20200209033833-2la1pujrnv2m0so4
Use reallocarray() if available, or check for overflow

* dracut-module/password-agent.c (add_to_queue): Check for overflow.
  (test_add_to_queue_overflow): New test.
* plugin-runner.c (add_to_char_array, main): Use reallocarray().
* plugins.d/plymouth.c (exec_and_wait): - '' -

Show diffs side-by-side

added added

removed removed

Lines of Context:
868
868
  }
869
869
  close(pipefds[1]);
870
870
 
871
 
  if(pid == -1){
872
 
    error(0, errno, "Failed to fork()");
873
 
    close(pipefds[0]);
874
 
    return false;
875
 
  }
876
 
 
877
871
  if(not add_to_queue(queue, (task_context){
878
872
        .func=wait_for_mandos_client_exit,
879
873
        .pid=pid,
2196
2190
    }
2197
2191
    exit(EXIT_SUCCESS);
2198
2192
  }
2199
 
  if(pid == -1){
2200
 
    error(EXIT_FAILURE, errno, "Failed to fork()");
2201
 
  }
2202
 
 
2203
2193
  int status;
2204
2194
  waitpid(pid, &status, 0);
2205
2195
  if(WIFEXITED(status) and (WEXITSTATUS(status) == EXIT_SUCCESS)){
5958
5948
                                           test_fixture *fixture,
5959
5949
                                           __attribute__((unused))
5960
5950
                                           gconstpointer user_data){
5961
 
#ifndef __amd64__
5962
 
  g_test_skip("Skipping EMSGSIZE test on non-AMD64 platform");
5963
 
#else
5964
5951
  __attribute__((cleanup(cleanup_close)))
5965
5952
    const int epoll_fd = epoll_create1(EPOLL_CLOEXEC);
5966
5953
  g_assert_cmpint(epoll_fd, >=, 0);
6019
6006
  g_assert_cmpuint((unsigned int)queue->length, ==, 0);
6020
6007
  g_assert_true(string_set_contains(cancelled_filenames,
6021
6008
                                    question_filename));
6022
 
#endif
6023
6009
}
6024
6010
 
6025
6011
static void test_send_password_to_socket_retry(__attribute__((unused))