/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)){