Text   |  XML   |  ReML   |   Visible Warnings:

Null Pointer Dereference  at password-scheme.c:141

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

passwd_file_verify_plain

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/auth/passdb-passwd-file.c)expand/collapse
Show more  
 63  passwd_file_verify_plain(struct auth_request *request, const char *password,
 64                           verify_plain_callback_t *callback)
 65  {
 66          struct passdb_module *_module = request->passdb->passdb;
 67          struct passwd_file_passdb_module *module =
 68                  (struct passwd_file_passdb_module *)_module;
 69          struct passwd_user *pu;
 70          const char *scheme, *crypted_pass;
 71          int ret;
 72   
 73[+]         pu = db_passwd_file_lookup(module->pwf, request);
 74          if (pu == NULL) {
 75                  callback(PASSDB_RESULT_USER_UNKNOWN, request);
 76                  return;
 77          }
 78   
 79[+]         passwd_file_save_results(request, pu, &crypted_pass, &scheme);
 80   
 81          ret = auth_request_password_verify(request, password, crypted_pass,
 82[+]                                            scheme, "passwd-file");
expand/collapse

auth_request_password_verify

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/auth/auth-request.c)expand/collapse
Show more  
 1275  int auth_request_password_verify(struct auth_request *request,
 1276                                   const char *plain_password,
 1277                                   const char *crypted_password,
 1278                                   const char *scheme, const char *subsystem)
 1279  {
 1280          const unsigned char *raw_password;
 1281          size_t raw_password_size;
 1282          int ret;
 1283   
 1284          if (request->skip_password_check) {
 1285                  /* currently this can happen only with master logins */
 1286                  i_assert(request->master_user != NULL);
 1287                  return 1;
 1288          }
 1289   
 1290          if (request->passdb->deny) {
 1291                  /* this is a deny database, we don't care about the password */
 1292                  return 0;
 1293          }
 1294   
 1295          if (request->no_password) {
 1296                  auth_request_log_info(request, subsystem, "No password");
 1297                  return 1;
 1298          }
 1299   
 1300          ret = password_decode(crypted_password, scheme,
 1301[+]                               &raw_password, &raw_password_size);
expand/collapse

password_decode

(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/auth/password-scheme.c)expand/collapse
Show more  
 129  int password_decode(const char *password, const char *scheme,
 130                      const unsigned char **raw_password_r, size_t *size_r)
 131  {
 132          const struct password_scheme *s;
 133          enum password_encoding encoding;
 134          buffer_t *buf;
 135          unsigned int len;
 136   
 137          s = password_scheme_lookup(scheme, &encoding);
 138          if (s == NULL)
 139                  return 0;
 140   
 141          len = strlen(password);
Show more  
Show more  
Show more  




Change Warning 7702.25054 : Null Pointer Dereference

Priority:
State:
Finding:
Owner:
Note: