Text   |  XML   |  ReML   |   Visible Warnings:

Null Pointer Dereference  at strfuncs.c:412

No properties have been set. | edit properties
Jump to warning location ↓ warning details...
Show Events | Options

checkpassword_lookup_child

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/auth/userdb-checkpassword.c)expand/collapse
Show more  
 105  checkpassword_lookup_child(struct auth_request *request,
 106                             struct checkpassword_userdb_module *module,
 107                             int fd_in, int fd_out)
 108  {
 109          const char *cmd, *const *args;
 110   
 111          if (dup2(fd_out, 3) < 0 || dup2(fd_in, 4) < 0) {
 112                  auth_request_log_error(request, "userdb-checkpassword",
 113                                         "dup2() failed: %m");
 114          } else {
 115                  /* We want to retrieve user data and don't do 
 116                     authorization, so we need to signalize the
 117                     checkpassword program that the password shall be
 118                     ignored by setting AUTHORIZED.  This needs a
 119                     special checkpassword program which knows how to
 120                     handle this. */
 121                  env_put("AUTHORIZED=1");
 122                  checkpassword_setup_env(request);
 123                  /* very simple argument splitting. */
 124                  cmd = t_strconcat(module->checkpassword_path, " ",
 125[+]                                   module->checkpassword_reply_path, NULL);
 126                  auth_request_log_debug(request, "userdb-checkpassword",
 127                                         "execute: %s", cmd);
 128   
 129[+]                 args = t_strsplit(cmd, " ");
expand/collapse

t_strsplit

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib/strfuncs.c)expand/collapse
Show more  
 456  const char **t_strsplit(const char *data, const char *separators)
 457  {
 458          return (const char **)split_str(unsafe_data_stack_pool, data,
 459[+]                                         separators, FALSE);
expand/collapse

split_str

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib/strfuncs.c)expand/collapse
Show more  
 398  static char **
 399  split_str(pool_t pool, const char *data, const char *separators, int spaces)
 400  {
 401          char **array;
 402          char *str;
 403          unsigned int count, alloc_count, new_alloc_count;
 404   
 405          i_assert(*separators != '\0');
 406   
 407          if (spaces) {
 408                  /* skip leading separators */
 409                  while (*data != '\0' && strchr(separators, *data) != NULL)
 410                          data++;
 411          }
 412          if (*data == '\0')
Show more  
Show more  
Show more  




Change Warning 7704.24857 : Null Pointer Dereference

Priority:
State:
Finding:
Owner:
Note: