(/home/sate/Testcases/c/cve/dovecot-1.2.0/src/lib-storage/index/index-mail.c) |
| |
| 56 | | | static struct message_part *get_unserialized_parts(struct index_mail *mail) |
| 57 | | | { |
| 58 | | | unsigned int field_idx = |
| 59 | | | mail->ibox->cache_fields[MAIL_CACHE_MESSAGE_PARTS].idx; |
| 60 | | | struct message_part *parts; |
| 61 | | | buffer_t *part_buf; |
| 62 | | | const char *error; |
| 63 | | | int ret; |
| 64 | | | |
| 65 | | | part_buf = buffer_create_dynamic(pool_datastack_create(), 128); |
| 66 | [+] | | ret = index_mail_cache_lookup_field(mail, part_buf, field_idx); |
 |
| 67 | | | if (ret <= 0) |
Event 7:
Skipping " if". ret <= 0 evaluates to false.
hide
|
|
| 68 | | | return NULL; |
| 69 | | | |
| 70 | | | parts = message_part_deserialize(mail->data_pool, part_buf->data, |
| 71 | [+] | | part_buf->used, &error); |
Event 8:
message_part_deserialize() does not initialize error. - This may be because of a failure case or other special case for message_part_deserialize().
hide
|
|
 |
| 72 | | | if (parts == NULL) { |
Event 11:
Taking true branch. parts == (void *)0 evaluates to true.
hide
|
|
| 73 | | | mail_cache_set_corrupted(mail->ibox->cache, |
| 74 | | | "Corrupted cached message_part data (%s)", error); |
Uninitialized Variable
error was not initialized. The issue can occur if the highlighted code executes. See related event 8. Show: All events | Only primary events |
|
| |