(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/auth/passdb-checkpassword.c) |
| |
| 127 | | | checkpassword_verify_plain_child(struct auth_request *request, |
| 128 | | | struct checkpassword_passdb_module *module, |
| 129 | | | int fd_in, int fd_out) |
| 130 | | | { |
| 131 | | | const char *cmd, *const *args; |
| 132 | | | |
| 133 | | | if (dup2(fd_out, 3) < 0 || dup2(fd_in, 4) < 0) { |
Event 1:
Taking false branch. - dup2(fd_out, 3) < 0 evaluates to false.
- dup2(fd_in, 4) < 0 evaluates to false.
hide
|
|
| 134 | | | auth_request_log_error(request, "checkpassword", |
| 135 | | | "dup2() failed: %m"); |
| 136 | | | } else { |
| 137 | | | checkpassword_setup_env(request); |
| 138 | | | |
| 139 | | | cmd = t_strconcat(module->checkpassword_path, " ", |
Event 7:
cmd is set to t_strconcat(...), which evaluates to NULL. See related event 6.
hide
|
|
| 140 | [+] | | module->checkpassword_reply_path, NULL); |
 |
| 141 | | | auth_request_log_debug(request, "checkpassword", |
| 142 | | | "execute: %s", cmd); |
| 143 | | | |
| 144 | [+] | | args = t_strsplit(cmd, " "); |
Event 8:
cmd, which evaluates to NULL, is passed to t_strsplit() as the first argument. See related event 7.
hide
|
|
 |
| |