]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
Make static analyzer happier.
authorTimo Sirainen <tss@iki.fi>
Sun, 24 Jun 2012 17:52:39 +0000 (20:52 +0300)
committerTimo Sirainen <tss@iki.fi>
Sun, 24 Jun 2012 17:52:39 +0000 (20:52 +0300)
src/auth/auth-request.c
src/auth/db-ldap.c
src/auth/password-scheme.c
src/lib-index/mail-transaction-log-file.c
src/lib-index/mail-transaction-log.c
src/lib-storage/index/mbox/mbox-mail.c
src/lib-storage/index/mbox/mbox-save.c
src/plugins/fts-squat/squat-uidlist.c

index 3ef8fe03aff668e0e3e2ec05ce4e3d0937e98d52..683b97532222c3dfc0569ee191ee498f12ac1202 100644 (file)
@@ -1250,6 +1250,8 @@ void auth_request_set_field(struct auth_request *request,
        i_assert(*name != '\0');
        i_assert(value != NULL);
 
+       i_assert(request->passdb != NULL);
+
        if (strcmp(name, "password") == 0) {
                auth_request_set_password(request, value,
                                          default_scheme, FALSE);
index 770e467a848f3bd918f690b03c755c3e66149534..24899ff6b1489c5214630dcfa3deb47d0529b185 100644 (file)
@@ -866,6 +866,7 @@ int db_ldap_connect(struct ldap_connection *conn)
                ret = ldap_start_tls_s(conn->ld, NULL, NULL);
                if (ret != LDAP_SUCCESS) {
                        if (ret == LDAP_OPERATIONS_ERROR &&
+                           conn->set.uris != NULL &&
                            strncmp(conn->set.uris, "ldaps:", 6) == 0) {
                                i_fatal("LDAP: Don't use both tls=yes "
                                        "and ldaps URI");
index 40114b94fdecaa3e0759979bfd3da650a3551844..c3aa2d19ce5188a6fdfdc7c4cf384bbdb0f68209 100644 (file)
@@ -367,7 +367,7 @@ md5_verify(const char *plaintext, const char *user,
                str = password_generate_md5_crypt(plaintext, password);
                return strcmp(str, password) == 0 ? 1 : 0;
        } else if (password_decode(password, "PLAIN-MD5",
-                                  &md5_password, &md5_size, &error) < 0) {
+                                  &md5_password, &md5_size, &error) <= 0) {
                *error_r = "Not a valid MD5-CRYPT or PLAIN-MD5 password";
                return -1;
        } else {
index 49a34564f37a8ed2913f905d6a6355a07b5f7d3c..b40bdebcdc820afb91dd38631cb1e119c5656201 100644 (file)
@@ -1673,6 +1673,7 @@ int mail_transaction_log_file_map(struct mail_transaction_log_file *file,
                                file->filepath);
                        return 0;
                }
+               i_assert(file->buffer != NULL);
                return log_file_map_check_offsets(file, start_offset,
                                                  end_offset);
        }
@@ -1695,9 +1696,11 @@ int mail_transaction_log_file_map(struct mail_transaction_log_file *file,
 
        i_assert(file->buffer == NULL || file->mmap_base != NULL ||
                 file->sync_offset >= file->buffer_offset + file->buffer->used);
+       if (ret <= 0)
+               return ret;
 
-       return ret <= 0 ? ret :
-               log_file_map_check_offsets(file, start_offset, end_offset);
+       i_assert(file->buffer != NULL);
+       return log_file_map_check_offsets(file, start_offset, end_offset);
 }
 
 void mail_transaction_log_file_move_to_memory(struct mail_transaction_log_file
index 53eecff2a4c2a3bb99dbbb30ab8b996aa95f9831..f66e54421acdcfe82a7eda930aa38cf82beb896d 100644 (file)
@@ -463,6 +463,7 @@ int mail_transaction_log_lock_head(struct mail_transaction_log *log)
                /* try again */
        }
 
+       i_assert(ret < 0 || log->head != NULL);
        return ret;
 }
 
index f85b380a43efb3e178b1bf6c8f790964390dff16..392a783c3eb6869a6be24444291d236e2360f22d 100644 (file)
@@ -240,6 +240,8 @@ mbox_mail_get_next_offset(struct index_mail *mail, uoff_t *next_offset_r)
        int trailer_size;
        int ret = 1;
 
+       *next_offset_r = (uoff_t)-1;
+
        hdr = mail_index_get_header(mail->mail.mail.transaction->view);
        if (mail->mail.mail.seq > hdr->messages_count) {
                /* we're appending a new message */
@@ -341,8 +343,6 @@ static int mbox_mail_init_stream(struct index_mail *mail)
                                  mail->mail.mail.uid);
                }
        }
-       if (ret <= 0)
-               next_offset = (uoff_t)-1;
 
        raw_stream = mbox->mbox_stream;
        hdr_offset = istream_raw_mbox_get_header_offset(raw_stream);
index 09178d8ae7d45bd108206480fc21c7aff1358271..0e646c258bfb7c0bcb87908305365afb1a35a21e 100644 (file)
@@ -666,6 +666,7 @@ int mbox_save_finish(struct mail_save_context *_ctx)
 
        ctx->finished = TRUE;
        if (!ctx->failed) {
+               i_assert(ctx->output != NULL);
                T_BEGIN {
                        if (mbox_write_content_length(ctx) < 0 ||
                            mbox_append_lf(ctx) < 0)
index 6f87974ef962492607bf3e935954b9cc6aa06175..2ae141a5391c9190ea8226a4982d9212ef9d3dec 100644 (file)
@@ -1416,6 +1416,7 @@ squat_uidlist_get_offset(struct squat_uidlist *uidlist, uint32_t uid_list_idx,
                squat_uidlist_set_corrupted(uidlist, "uidlist not found");
                return -1;
        }
+       i_assert(uidlist->cur_block_end_indexes != NULL);
        if (unlikely(idx > 0 &&
                     uidlist->cur_block_end_indexes[idx-1] > uid_list_idx)) {
                squat_uidlist_set_corrupted(uidlist, "broken block list");
@@ -1430,6 +1431,7 @@ squat_uidlist_get_offset(struct squat_uidlist *uidlist, uint32_t uid_list_idx,
                return -1;
 
        /* find the uidlist inside the block */
+       i_assert(uidlist->cur_block_offsets != NULL);
        p = CONST_PTR_OFFSET(uidlist->data, uidlist->cur_block_offsets[idx]);
        end = CONST_PTR_OFFSET(uidlist->data, uidlist->data_size);