LDRA Testbed Code Review Report

LDRA Testbed ® Code Review Report

# System : Dovecot-src-dsync

Overall Result: FAIL

Report Production | Report Configuration | Analysis phases
--- | --- | ---
C/C++ LDRA Testbed Version: 8.3.0 Config. File: C:\Testbed\CCPP_830_Release\C\sate_creport.dat Produced On: Mon Aug 09 2010 at 18:28:08 Penalty File: C:\Testbed\CCPP_830_Release\c\cpen.dat | Report Level: Summary Report Procedures Reported: Fails Only Programming Standards Model: SATE 2010 L1 Plus Line Numbers refer to: Original Source File Violation Details: Violations Only Reporting Scope: Full analysis scope | Static: Yes Complexity: Yes Static Data Flow: Yes Information Flow: Yes Cross Reference: Yes

#### Contents

Overall Quality Summary

- Totals of Violations for each Standard
- Table of Procedure Results
- Table of Source Files in System
- Table of Global Basic Information

Report on Program Components

- Quality Results Global Program and Selected Procedures

## Overall Quality Summary

#### Totals for Violated Quality Standards

Number of Violations | LDRA Code | (M) Mandatory Standards | CERT Code
--- | --- | --- | ---
75 | 77 S | Macro replacement list needs parentheses. | CERT PRE02-C
49 | 78 S | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
1 | 483 S | free parameter is not heap item. | CERT MEM34-C
47 | 484 S | Attempt to use already freed object. | CERT MEM31-C
29 | 577 S | Sizeof argument is a pointer. | CERT EXP01-C
70 | 5 D | Procedure contains UR data flow anomalies. | CERT EXP33-C
436 | 45 D | Pointer not checked for null before use | CERT EXP08-C,EXP34-C
3 | 51 D | Attempt to read from freed memory. | CERT MEM30-C
14 | 57 D | Global not initialised at declaration. | CERT EXP33-C
272 | 69 D | Procedure contains UR data flow anomalies. | CERT EXP33-C
15 | 77 D | Local structure returned in function result |
19 | 1 X | Declaration types do not match across a system. | CERT ARR31-C

Number of Violations | LDRA Code | (C) Checking (Mandatory) Standards | CERT Code
--- | --- | --- | ---
32 | 76 D | Procedure not called in code analysed |

Number of Violations | LDRA Code | (O) Optional Standards | CERT Code
--- | --- | --- | ---
8 | 80 D | Potentially unused function return value. | CERT FIO04-C

Number of Mandatory Standards checked | 27
Number of Checking Standards checked | 1
Number of Optional Standards checked | 3
Total Standards checked | 31

### OVERALL RESULT: FAIL

Out of 374 program components, 158 (42.25 %) pass ( of which 0 conditionally pass ) and 216 fail ( of which 0 fail only because of insufficient comments )

#### Procedure Results

`Quality Result` |  | `Procedure` |  | `Source File` |  | `Unique Violations` |  | `Failure Density` |
`` |  |  |  |  | `(Viols/R.Line %)` |
FAIL |  | Global Program |
Pass |  | buffer_get_data |  | buffer.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | buffer_get_used_size |  | buffer.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_create_from_buffer_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
FAIL |  | array_create_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 1 | - |  | 17 | - |
Pass |  | array_free_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_is_created_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_get_pool_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_clear_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_append_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_append_array_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_insert_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_delete_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_get_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_idx_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_get_modifiable_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_append_space_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_copy |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | array_count_i |  | array.h analysed in dsync-brain-msgs-new.c |  | 0 |  | 0 |
FAIL |  | msg_get_callback |  | dsync-brain-msgs-new.c |  | 1 | - |  | 13 | - |
FAIL |  | dsync_brain_copy_callback |  | dsync-brain-msgs-new.c |  | 1 | - |  | 12 | - |
FAIL |  | dsync_brain_msg_sync_add_new_msg |  | dsync-brain-msgs-new.c |  | 1 | - |  | 7 | - |
Pass |  | dsync_brain_mai box_add_new_msgs |  | dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | dsync_brain_mai box_save_conflicts |  | dsync-brain-msgs-new.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_mailbox_retry_copies |  | dsync-brain-msgs-new.c |  | 1 | - |  | 11 | - |
FAIL |  | dsync_brain_msg_sync_add_new_msgs |  | dsync-brain-msgs-new.c |  | 1 | - |  | 4 | - |
Pass |  | dsync_worker_new_msg_output |  | dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | dsync_brain_new_msg_cmp |  | dsync-brain-msgs-new.c |  | 0 |  | 0 |
Pass |  | dsync_brain_uid_conflict_cmp |  | dsync-brain-msgs-new.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_msg_iter_sync_new_msgs |  | dsync-brain-msgs-new.c |  | 1 | - |  | 3 | - |
Pass |  | dsync_brain_msg_sync_new_msgs |  | dsync-brain-msgs-new.c |  | 0 |  | 0 |
FAIL |  | sync_iter_resolve_uid_conflicts |  | dsync-brain-msgs-new.c |  | 1 | - |  | 12 | - |
Pass |  | dsync_brain_msg sync_resolve_uid_conflicts |  | dsync-brain-msgs-new.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_guid_add |  | dsync-brain-msgs.c |  | 1 | - |  | 4 | - |
Pass |  | dsync_brain_msg_iter_next |  | dsync-brain-msgs.c |  | 0 |  | 0 |
Pass |  | dsync_brain_msg_iter_next_pair |  | dsync-brain-msgs.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_msg_sync_save |  | dsync-brain-msgs.c |  | 1 | - |  | 7 | - |
FAIL |  | dsync_brain_msg_sync_conflict |  | dsync-brain-msgs.c |  | 1 | - |  | 23 | - |
Pass |  | dsync_brain_msg_sync_existing |  | dsync-brain-msgs.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_msg_sync_pair |  | dsync-brain-msgs.c |  | 1 | - |  | 3 | - |
FAIL |  | dsync_brain_msg_sync_mailbox_end |  | dsync-brain-msgs.c |  | 1 | - |  | 13 | - |
FAIL |  | dsync_brain_msg_sync_mailbox_more |  | dsync-brain-msgs.c |  | 1 | - |  | 2 | - |
Pass |  | dsync_brain_msg_sync_finish |  | dsync-brain-msgs.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_msg_sync_more |  | dsync-brain-msgs.c |  | 1 | - |  | 8 | - |
Pass |  | dsync_worker_msg_callback |  | dsync-brain-msgs.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_msg_iter_init |  | dsync-brain-msgs.c |  | 1 | - |  | 13 | - |
Pass |  | dsync_brain_msg_iter_deinit |  | dsync-brain-msgs.c |  | 0 |  | 0 |
Pass |  | get_mailbox_guids |  | dsync-brain-msgs.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_msg_sync_init |  | dsync-brain-msgs.c |  | 1 | - |  | 27 | - |

`Quality Result` |  | `Procedure` |  | `Source File` |  | `Unique Violations` |  | `Failure Density` |
`` |  |  |  |  | `(Viols/R.Line %)` |
Pass |  | dsync_brain_msg_sync_deinit |  | dsync-brain-msgs.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_init |  | dsync-brain.c |  | 1 | - |  | 40 | - |
Pass |  | dsync_brain_fail |  | dsync-brain.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_deinit |  | dsync-brain.c |  | 1 | - |  | 5 | - |
Pass |  | dsync_brain_mai box_list_finished |  | dsync-brain.c |  | 0 |  | 0 |
FAIL |  | dsync_worker_mailbox_input |  | dsync-brain.c |  | 1 | - |  | 23 | - |
FAIL |  | dsync_brain_mailbox_list_init |  | dsync-brain.c |  | 1 | - |  | 22 | - |
Pass |  | dsync_brain_mai box_list_deinit |  | dsync-brain.c |  | 0 |  | 0 |
Pass |  | dsync_brain_subs_list_finished |  | dsync-brain.c |  | 0 |  | 0 |
Pass |  | dsync_worker_subscription_cmp |  | dsync-brain.c |  | 0 |  | 0 |
Pass |  | dsync_worker_un ubscription_cmp |  | dsync-brain.c |  | 0 |  | 0 |
FAIL |  | dsync_worker_subs_input |  | dsync-brain.c |  | 1 | - |  | 11 | - |
FAIL |  | dsync_brain_subs_list_init |  | dsync-brain.c |  | 1 | - |  | 22 | - |
Pass |  | dsync_brain_subs_list_deinit |  | dsync-brain.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_sync_mailboxes |  | dsync-brain.c |  | 1 | - |  | 4 | - |
FAIL |  | dsync_brain_sync_dirs |  | dsync-brain.c |  | 1 | - |  | 6 | - |
FAIL |  | dsync_brain_is_unsubscribed |  | dsync-brain.c |  | 1 | - |  | 12 | - |
FAIL |  | dsync_brain_sync_subscriptions |  | dsync-brain.c |  | 1 | - |  | 2 | - |
Pass |  | dsync_mailbox_has_changed_msgs |  | dsync-brain.c |  | 0 |  | 0 |
Pass |  | dsync_mailbox_has_changes |  | dsync-brain.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_get_changed_mailboxes |  | dsync-brain.c |  | 1 | - |  | 4 | - |
FAIL |  | dsync_brain_sync_msgs |  | dsync-brain.c |  | 1 | - |  | 38 | - |
Pass |  | dsync_brain_syn _rename_mailbox |  | dsync-brain.c |  | 0 |  | 0 |
Pass |  | dsync_brain_syn _update_mailboxes |  | dsync-brain.c |  | 0 |  | 0 |
FAIL |  | dsync_brain_worker_finished |  | dsync-brain.c |  | 1 | - |  | 7 | - |
Pass |  | dsync_brain_sync |  | dsync-brain.c |  | 0 |  | 0 |
Pass |  | dsync_brain_sync_all |  | dsync-brain.c |  | 0 |  | 0 |
Pass |  | dsync_brain_has unexpected_changes |  | dsync-brain.c |  | 0 |  | 0 |
FAIL |  | dsync_mailbox_dup |  | dsync-data.c |  | 1 | - |  | 11 | - |
FAIL |  | dsync_message_dup |  | dsync-data.c |  | 1 | - |  | 11 | - |
FAIL |  | dsync_mailbox_guid_cmp |  | dsync-data.c |  | 1 | - |  | 33 | - |
Pass |  | dsync_mailbox_p_guid_cmp |  | dsync-data.c |  | 0 |  | 0 |
FAIL |  | dsync_mailbox_name_sha1_cmp |  | dsync-data.c |  | 1 | - |  | 8 | - |
Pass |  | dsync_mailbox_p_name_sha1_cmp |  | dsync-data.c |  | 0 |  | 0 |
Pass |  | dsync_keyword_list_equals |  | dsync-data.c |  | 0 |  | 0 |
FAIL |  | dsync_guid_equals |  | dsync-data.c |  | 1 | - |  | 33 | - |
FAIL |  | dsync_guid_cmp |  | dsync-data.c |  | 1 | - |  | 33 | - |
Pass |  | dsync_guid_to_str |  | dsync-data.c |  | 0 |  | 0 |
FAIL |  | dsync_get_guid_128_str |  | dsync-data.c |  | 1 | - |  | 21 | - |
FAIL |  | dsync_str_sha_to_guid |  | dsync-data.c |  | 1 | - |  | 29 | - |
Pass |  | aqueue_idx |  | aqueue.h analysed in dsync-proxy-client.c |  | 0 |  | 0 |
Pass |  | proxy_client_fail |  | dsync-proxy-client.c |  | 0 |  | 0 |
Pass |  | proxy_client_worker_read_line |  | dsync-proxy-client.c |  | 0 |  | 0 |
FAIL |  | proxy_client_worker_msg_get_done |  | dsync-proxy-client.c |  | 1 | - |  | 14 | - |
Pass |  | proxy_client_worker_next_copy |  | dsync-proxy-client.c |  | 0 |  | 0 |
FAIL |  | proxy_client_worker_next_msg_get |  | dsync-proxy-client.c |  | 1 | - |  | 3 | - |
Pass |  | proxy_client_wo ker_next_finish |  | dsync-proxy-client.c |  | 0 |  | 0 |
FAIL |  | proxy_client_worker_next_reply |  | dsync-proxy-client.c |  | 1 | - |  | 9 | - |
FAIL |  | proxy_client_worker_input |  | dsync-proxy-client.c |  | 1 | - |  | 5 | - |

`Quality Result` |  | `Procedure` |  | `Source File` |  | `Unique Violations` |  | `Failure Density` |
`` |  |  |  |  | `(Viols/R.Line %)` |
Pass |  | proxy_client_worker_output |  | dsync-proxy-client.c |  | 0 |  | 0 |
Pass |  | proxy_client_worker_timeout |  | dsync-proxy-client.c |  | 0 |  | 0 |
FAIL |  | dsync_worker_init_proxy_client |  | dsync-proxy-client.c |  | 1 | - |  | 7 | - |
Pass |  | proxy_client_worker_deinit |  | dsync-proxy-client.c |  | 0 |  | 0 |
Pass |  | worker_is_output_stream_full |  | dsync-proxy-client.c |  | 0 |  | 0 |
Pass |  | proxy_client_wo ker_is_output_full |  | dsync-proxy-client.c |  | 0 |  | 0 |
FAIL |  | proxy_client_worker_output_flush |  | dsync-proxy-client.c |  | 1 | - |  | 19 | - |
FAIL |  | proxy_client_worker_mailbox_iter_init |  | dsync-proxy-client.c |  | 1 | - |  | 27 | - |
FAIL |  | proxy_client_worker_mailbox_iter_next |  | dsync-proxy-client.c |  | 1 | - |  | 8 | - |
Pass |  | proxy_client_wo ker_mailbox_iter_deinit |  | dsync-proxy-client.c |  | 0 |  | 0 |
FAIL |  | proxy_client_worker_subs_iter_init |  | dsync-proxy-client.c |  | 1 | - |  | 27 | - |
FAIL |  | proxy_client_worker_subs_iter_next_line |  | dsync-proxy-client.c |  | 1 | - |  | 9 | - |
FAIL |  | proxy_client_worker_subs_iter_next |  | dsync-proxy-client.c |  | 1 | - |  | 17 | - |
FAIL |  | proxy_client_worker_subs_iter_next_un |  | dsync-proxy-client.c |  | 1 | - |  | 14 | - |
Pass |  | proxy_client_wo ker_subs_iter_deinit |  | dsync-proxy-client.c |  | 0 |  | 0 |
FAIL |  | proxy_client_worker_set_subscribed |  | dsync-proxy-client.c |  | 1 | - |  | 10 | - |
FAIL |  | proxy_client_worker_msg_iter_init |  | dsync-proxy-client.c |  | 1 | - |  | 12 | - |
FAIL |  | proxy_client_worker_msg_iter_next |  | dsync-proxy-client.c |  | 1 | - |  | 7 | - |
Pass |  | proxy_client_wo ker_msg_iter_deinit |  | dsync-proxy-client.c |  | 0 |  | 0 |
FAIL |  | proxy_client_worker_create_mailbox |  | dsync-proxy-client.c |  | 1 | - |  | 9 | - |
FAIL |  | proxy_client_worker_delete_mailbox |  | dsync-proxy-client.c |  | 1 | - |  | 9 | - |
FAIL |  | proxy_client_worker_delete_dir |  | dsync-proxy-client.c |  | 1 | - |  | 9 | - |
FAIL |  | proxy_client_worker_rename_mailbox |  | dsync-proxy-client.c |  | 1 | - |  | 7 | - |
FAIL |  | proxy_client_worker_update_mailbox |  | dsync-proxy-client.c |  | 1 | - |  | 9 | - |
FAIL |  | proxy_client_worker_select_mailbox |  | dsync-proxy-client.c |  | 1 | - |  | 8 | - |
FAIL |  | proxy_client_worker_msg_update_metadata |  | dsync-proxy-client.c |  | 1 | - |  | 9 | - |
FAIL |  | proxy_client_worker_msg_update_uid |  | dsync-proxy-client.c |  | 1 | - |  | 6 | - |
FAIL |  | proxy_client_worker_msg_expunge |  | dsync-proxy-client.c |  | 1 | - |  | 6 | - |
FAIL |  | proxy_client_worker_msg_copy |  | dsync-proxy-client.c |  | 1 | - |  | 13 | - |
FAIL |  | proxy_client_send_stream |  | dsync-proxy-client.c |  | 1 | - |  | 4 | - |
FAIL |  | proxy_client_worker_msg_save |  | dsync-proxy-client.c |  | 1 | - |  | 8 | - |
FAIL |  | proxy_client_worker_msg_save_cancel |  | dsync-proxy-client.c |  | 1 | - |  | 13 | - |
FAIL |  | proxy_client_worker_msg_get |  | dsync-proxy-client.c |  | 1 | - |  | 14 | - |
FAIL |  | proxy_client_worker_finish |  | dsync-proxy-client.c |  | 1 | - |  | 22 | - |
Pass |  | proxy_server_is_output_full |  | dsync-proxy-server-cmd.c |  | 0 |  | 0 |
FAIL |  | cmd_box_list |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 27 | - |
FAIL |  | cmd_subs_list_subscriptions |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 15 | - |
FAIL |  | cmd_subs_list_unsubscriptions |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 14 | - |
Pass |  | cmd_subs_list |  | dsync-proxy-server-cmd.c |  | 0 |  | 0 |
Pass |  | cmd_subs_set |  | dsync-proxy-server-cmd.c |  | 0 |  | 0 |
FAIL |  | cmd_msg_list_init |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 3 | - |
FAIL |  | cmd_msg_list |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 14 | - |
FAIL |  | cmd_box_create |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 107 |
FAIL |  | cmd_box_delete |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 29 | - |
FAIL |  | cmd_dir_delete |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 25 | - |
FAIL |  | cmd_box_rename |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 29 | - |
FAIL |  | cmd_box_update |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 107 |
FAIL |  | cmd_box_select |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 19 | - |
FAIL |  | cmd_msg_update |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 8 | - |

`Quality Result` |  | `Procedure` |  | `Source File` |  | `Unique Violations` |  | `Failure Density` |
`` |  |  |  |  | `(Viols/R.Line %)` |
Pass |  | cmd_msg_uid_change |  | dsync-proxy-server-cmd.c |  | 0 |  | 0 |
Pass |  | cmd_msg_expunge |  | dsync-proxy-server-cmd.c |  | 0 |  | 0 |
FAIL |  | copy_callback |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 10 | - |
FAIL |  | cmd_msg_copy |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 27 | - |
FAIL |  | cmd_msg_save |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 23 | - |
FAIL |  | cmd_msg_get_send_more |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 8 | - |
FAIL |  | cmd_msg_get_callback |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 5 | - |
FAIL |  | cmd_msg_get |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 3 | - |
FAIL |  | cmd_finish_callback |  | dsync-proxy-server-cmd.c |  | 1 | - |  | 4 | - |
Pass |  | cmd_finish |  | dsync-proxy-server-cmd.c |  | 0 |  | 0 |
Pass |  | dsync_proxy_ser er_command_find |  | dsync-proxy-server-cmd.c |  | 0 |  | 0 |
Pass |  | proxy_server_read_line |  | dsync-proxy-server.c |  | 0 |  | 0 |
Pass |  | proxy_server_run_cmd |  | dsync-proxy-server.c |  | 0 |  | 0 |
FAIL |  | proxy_server_input_line |  | dsync-proxy-server.c |  | 1 | - |  | 4 | - |
Pass |  | proxy_server_input |  | dsync-proxy-server.c |  | 0 |  | 0 |
Pass |  | proxy_server_output |  | dsync-proxy-server.c |  | 0 |  | 0 |
Pass |  | dsync_proxy_server_timeout |  | dsync-proxy-server.c |  | 0 |  | 0 |
FAIL |  | dsync_proxy_server_init |  | dsync-proxy-server.c |  | 1 | - |  | 17 | - |
FAIL |  | dsync_proxy_server_deinit |  | dsync-proxy-server.c |  | 1 | - |  | 3 | - |
FAIL |  | dsync_proxy_strings_export |  | dsync-proxy.c |  | 1 | - |  | 4 | - |
Pass |  | dsync_proxy_msg_export |  | dsync-proxy.c |  | 0 |  | 0 |
FAIL |  | dsync_proxy_msg_parse_flags |  | dsync-proxy.c |  | 1 | - |  | 17 | - |
FAIL |  | dsync_proxy_msg_import_unescaped |  | dsync-proxy.c |  | 1 | - |  | 4 | - |
Pass |  | dsync_proxy_msg_import |  | dsync-proxy.c |  | 0 |  | 0 |
Pass |  | dsync_proxy_msg_static_export |  | dsync-proxy.c |  | 0 |  | 0 |
FAIL |  | dsync_proxy_msg_static_import_unescaped |  | dsync-proxy.c |  | 1 | - |  | 7 | - |
Pass |  | dsync_proxy_msg_static_import |  | dsync-proxy.c |  | 0 |  | 0 |
Pass |  | dsync_proxy_mailbox_export |  | dsync-proxy.c |  | 0 |  | 0 |
FAIL |  | dsync_proxy_mailbox_import_unescaped |  | dsync-proxy.c |  | 1 | - |  | 6 | - |
FAIL |  | dsync_proxy_mailbox_import |  | dsync-proxy.c |  | 1 | - |  | 5 | - |
Pass |  | dsync_proxy_mai box_guid_export |  | dsync-proxy.c |  | 0 |  | 0 |
FAIL |  | dsync_proxy_mailbox_guid_import |  | dsync-proxy.c |  | 1 | - |  | 19 | - |
Pass |  | dsync_proxy_send_dot_output |  | dsync-proxy.c |  | 0 |  | 0 |
FAIL |  | mailbox_guid_cmp |  | dsync-worker-local.c |  | 1 | - |  | 33 | - |
FAIL |  | mailbox_guid_hash |  | dsync-worker-local.c |  | 1 | - |  | 9 | - |
FAIL |  | dsync_drop_extra_namespaces |  | dsync-worker-local.c |  | 1 | - |  | 1 | - |
FAIL |  | dsync_worker_init_local |  | dsync-worker-local.c |  | 1 | - |  | 16 | - |
Pass |  | local_worker_deinit |  | dsync-worker-local.c |  | 0 |  | 0 |
Pass |  | local_worker_is_output_full |  | dsync-worker-local.c |  | 0 |  | 0 |
Pass |  | local_worker_output_flush |  | dsync-worker-local.c |  | 0 |  | 0 |
FAIL |  | dsync_worker_save_mailbox_change |  | dsync-worker-local.c |  | 1 | - |  | 6 | - |
FAIL |  | dsync_worker_save_dir_change |  | dsync-worker-local.c |  | 1 | - |  | 3 | - |
FAIL |  | dsync_worker_get_list_mailbox_log |  | dsync-worker-local.c |  | 1 | - |  | 3 | - |
FAIL |  | mailbox_log_record_hash |  | dsync-worker-local.c |  | 1 | - |  | 17 | - |
Pass |  | mailbox_log_record_cmp |  | dsync-worker-local.c |  | 0 |  | 0 |
Pass |  | dir_change_hash |  | dsync-worker-local.c |  | 0 |  | 0 |
Pass |  | dir_change_cmp |  | dsync-worker-local.c |  | 0 |  | 0 |
Pass |  | dsync_worker_get_mailbox_log |  | dsync-worker-local.c |  | 0 |  | 0 |
FAIL |  | local_worker_mailbox_iter_init |  | dsync-worker-local.c |  | 1 | - |  | 18 | - |

`Quality Result` |  | `Procedure` |  | `Source File` |  | `Unique Violations` |  | `Failure Density` |
`` |  |  |  |  | `(Viols/R.Line %)` |
FAIL |  | local_dsync_worker_add_mailbox |  | dsync-worker-local.c |  | 1 | - |  | 25 | - |
FAIL |  | iter_next_deleted |  | dsync-worker-local.c |  | 1 | - |  | 4 | - |
FAIL |  | local_worker_mailbox_iter_next |  | dsync-worker-local.c |  | 1 | - |  | 29 | - |
Pass |  | local_worker_ma lbox_iter_deinit |  | dsync-worker-local.c |  | 0 |  | 0 |
FAIL |  | local_worker_subs_iter_init |  | dsync-worker-local.c |  | 1 | - |  | 20 | - |
FAIL |  | local_worker_subs_iter_next |  | dsync-worker-local.c |  | 1 | - |  | 36 | - |
FAIL |  | local_worker_subs_iter_next_un |  | dsync-worker-local.c |  | 1 | - |  | 14 | - |
Pass |  | local_worker_subs_iter_deinit |  | dsync-worker-local.c |  | 0 |  | 0 |
FAIL |  | local_worker_set_subscribed |  | dsync-worker-local.c |  | 1 | - |  | 4 | - |
FAIL |  | local_mailbox_open |  | dsync-worker-local.c |  | 1 | - |  | 12 | - |
FAIL |  | iter_local_mailbox_open |  | dsync-worker-local.c |  | 1 | - |  | 17 | - |
FAIL |  | iter_local_mailbox_close |  | dsync-worker-local.c |  | 1 | - |  | 6 | - |
FAIL |  | local_worker_msg_iter_init |  | dsync-worker-local.c |  | 1 | - |  | 9 | - |
FAIL |  | iter_local_mailbox_next_expunge |  | dsync-worker-local.c |  | 1 | - |  | 32 | - |
FAIL |  | local_worker_msg_iter_next |  | dsync-worker-local.c |  | 1 | - |  | 6 | - |
FAIL |  | local_worker_msg_iter_deinit |  | dsync-worker-local.c |  | 1 | - |  | 10 | - |
FAIL |  | local_worker_copy_mailbox_update |  | dsync-worker-local.c |  | 1 | - |  | 29 | - |
FAIL |  | mailbox_name_convert |  | dsync-worker-local.c |  | 1 | - |  | 3 | - |
FAIL |  | mailbox_name_cleanup |  | dsync-worker-local.c |  | 1 | - |  | 4 | - |
FAIL |  | mailbox_name_force_cleanup |  | dsync-worker-local.c |  | 1 | - |  | 5 | - |
FAIL |  | local_worker_convert_mailbox_name |  | dsync-worker-local.c |  | 1 | - |  | 3 | - |
FAIL |  | local_worker_mailbox_alloc |  | dsync-worker-local.c |  | 1 | - |  | 7 | - |
FAIL |  | local_worker_create_allocated_mailbox |  | dsync-worker-local.c |  | 1 | - |  | 8 | - |
FAIL |  | local_worker_create_mailbox |  | dsync-worker-local.c |  | 1 | - |  | 8 | - |
FAIL |  | local_worker_delete_mailbox |  | dsync-worker-local.c |  | 1 | - |  | 7 | - |
FAIL |  | local_worker_delete_dir |  | dsync-worker-local.c |  | 1 | - |  | 14 | - |
FAIL |  | local_worker_rename_mailbox |  | dsync-worker-local.c |  | 1 | - |  | 9 | - |
FAIL |  | has_expected_save_uids |  | dsync-worker-local.c |  | 1 | - |  | 27 | - |
FAIL |  | local_worker_mailbox_close |  | dsync-worker-local.c |  | 1 | - |  | 6 | - |
Pass |  | local_worker_update_mailbox |  | dsync-worker-local.c |  | 0 |  | 0 |
FAIL |  | local_worker_set_cache_fields |  | dsync-worker-local.c |  | 1 | - |  | 33 | - |
FAIL |  | local_worker_select_mailbox |  | dsync-worker-local.c |  | 1 | - |  | 3 | - |
FAIL |  | local_worker_msg_update_metadata |  | dsync-worker-local.c |  | 1 | - |  | 4 | - |
Pass |  | local_worker_msg_update_uid |  | dsync-worker-local.c |  | 0 |  | 0 |
Pass |  | local_worker_msg_expunge |  | dsync-worker-local.c |  | 0 |  | 0 |
FAIL |  | local_worker_msg_save_set_metadata |  | dsync-worker-local.c |  | 1 | - |  | 3 | - |
FAIL |  | local_worker_msg_copy |  | dsync-worker-local.c |  | 1 | - |  | 14 | - |
Pass |  | dsync_worker_try_finish |  | dsync-worker-local.c |  | 0 |  | 0 |
Pass |  | local_worker_save_msg_continue |  | dsync-worker-local.c |  | 0 |  | 0 |
FAIL |  | local_worker_msg_save |  | dsync-worker-local.c |  | 1 | - |  | 3 | - |
Pass |  | local_worker_msg_save_cancel |  | dsync-worker-local.c |  | 0 |  | 0 |
Pass |  | local_worker_msg_get_done |  | dsync-worker-local.c |  | 0 |  | 0 |
FAIL |  | local_worker_msg_box_close |  | dsync-worker-local.c |  | 1 | - |  | 19 | - |
FAIL |  | local_worker_msg_get |  | dsync-worker-local.c |  | 1 | - |  | 8 | - |
Pass |  | local_worker_finish |  | dsync-worker-local.c |  | 0 |  | 0 |
Pass |  | dsync_worker_deinit |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_set_readonly |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_se _input_callback |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_is_output_full |  | dsync-worker.c |  | 0 |  | 0 |

`Quality Result` |  | `Procedure` |  | `Source File` |  | `Unique Violations` |  | `Failure Density` |
`` |  |  |  |  | `(Viols/R.Line %)` |
Pass |  | dsync_worker_se _output_callback |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_output_flush |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_mailbox_iter_init |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_mailbox_iter_next |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_ma lbox_iter_deinit |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_subs_iter_init |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_subs_iter_next |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_subs_iter_next_un |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_subs_iter_deinit |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_set_subscribed |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_msg_iter_init |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_msg_iter_next |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_msg_iter_deinit |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_create_mailbox |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_delete_mailbox |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_delete_dir |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_rename_mailbox |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_update_mailbox |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_select_mailbox |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_ms _update_metadata |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_msg_update_uid |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_msg_expunge |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_msg_copy |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_msg_save |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_msg_save_cancel |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_msg_get |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_finish |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_set_failure |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_has_failed |  | dsync-worker.c |  | 0 |  | 0 |
Pass |  | dsync_worker_ha _unexpected_changes |  | dsync-worker.c |  | 0 |  | 0 |
FAIL |  | run_cmd |  | dsync.c |  | 1 | - |  | 9 | - |
Pass |  | usage |  | dsync.c |  | 0 |  | 0 |
FAIL |  | dsync_connected |  | dsync.c |  | 1 | - |  | 33 | - |
FAIL |  | main |  | dsync.c |  | 1 | - |  | 7 | - |
FAIL |  | dsync_brain_fail |  | test-dsync-brain-msgs.c |  | 1 | - |  | 50 | - |
FAIL |  | dsync_brain_msg_sync_new_msgs |  | test-dsync-brain-msgs.c |  | 1 | - |  | 50 | - |
FAIL |  | test_box_find |  | test-dsync-brain-msgs.c |  | 1 | - |  | 4 | - |
FAIL |  | test_box_has_guid |  | test-dsync-brain-msgs.c |  | 1 | - |  | 8 | - |
FAIL |  | test_box_add |  | test-dsync-brain-msgs.c |  | 1 | - |  | 7 | - |
FAIL |  | test_msg_add |  | test-dsync-brain-msgs.c |  | 1 | - |  | 13 | - |
Pass |  | test_msg_set_modseq |  | test-dsync-brain-msgs.c |  | 0 |  | 0 |
FAIL |  | test_msg_set_flags |  | test-dsync-brain-msgs.c |  | 1 | - |  | 2 | - |
FAIL |  | test_msg_set_keywords |  | test-dsync-brain-msgs.c |  | 1 | - |  | 7 | - |
FAIL |  | test_dsync_sync_msgs |  | test-dsync-brain-msgs.c |  | 1 | - |  | 16 | - |
FAIL |  | test_dsync_brain_init |  | test-dsync-brain-msgs.c |  | 1 | - |  | 33 | - |
FAIL |  | test_dsync_brain_sync_init |  | test-dsync-brain-msgs.c |  | 1 | - |  | 32 | - |
FAIL |  | test_dsync_brain_msg_sync_box_multi |  | test-dsync-brain-msgs.c |  | 1 | - |  | 7 | - |
FAIL |  | test_dsync_brain_msg_sync_box |  | test-dsync-brain-msgs.c |  | 1 | - |  | 3 | - |
FAIL |  | test_dsync_brain_msg_sync_box_single |  | test-dsync-brain-msgs.c |  | 1 | - |  | 8 | - |

`Quality Result` |  | `Procedure` |  | `Source File` |  | `Unique Violations` |  | `Failure Density` |
`` |  |  |  |  | `(Viols/R.Line %)` |
FAIL |  | test_dsync_brain_msg_sync_existing |  | test-dsync-brain-msgs.c |  | 1 | - |  | 9 | - |
FAIL |  | test_dsync_brain_msg_sync_expunges |  | test-dsync-brain-msgs.c |  | 1 | - |  | 12 | - |
FAIL |  | test_dsync_brain_msg_sync_uid_conflicts |  | test-dsync-brain-msgs.c |  | 1 | - |  | 8 | - |
Pass |  | main |  | test-dsync-brain-msgs.c |  | 0 |  | 0 |
FAIL |  | master_service_stop |  | test-dsync-brain.c |  | 1 | - |  | 50 | - |
FAIL |  | dsync_brain_msg_sync_init |  | test-dsync-brain.c |  | 1 | - |  | 29 | - |
FAIL |  | dsync_brain_msg_sync_more |  | test-dsync-brain.c |  | 1 | - |  | 50 | - |
FAIL |  | dsync_brain_msg_sync_deinit |  | test-dsync-brain.c |  | 1 | - |  | 11 | - |
FAIL |  | dsync_brain_msg_sync_resolve_uid_conflicts |  | test-dsync-brain.c |  | 1 | - |  | 50 | - |
FAIL |  | mailboxes_set_guids |  | test-dsync-brain.c |  | 1 | - |  | 7 | - |
Pass |  | mailboxes_send_to_worker |  | test-dsync-brain.c |  | 0 |  | 0 |
Pass |  | subscriptions_send_to_worker |  | test-dsync-brain.c |  | 0 |  | 0 |
FAIL |  | test_dsync_mailbox_create_equals |  | test-dsync-brain.c |  | 1 | - |  | 11 | - |
FAIL |  | test_dsync_mailbox_delete_equals |  | test-dsync-brain.c |  | 1 | - |  | 13 | - |
FAIL |  | test_dsync_mailbox_update |  | test-dsync-brain.c |  | 1 | - |  | 5 | - |
Pass |  | dsync_brain_mailbox_name_cmp |  | test-dsync-brain.c |  | 0 |  | 0 |
FAIL |  | test_dsync_brain |  | test-dsync-brain.c |  | 1 | - |  | 6 | - |
FAIL |  | test_dsync_brain_full |  | test-dsync-brain.c |  | 1 | - |  | 8 | - |
Pass |  | main |  | test-dsync-brain.c |  | 0 |  | 0 |
Pass |  | dsync_messages_equal |  | test-dsync-common.c |  | 0 |  | 0 |
FAIL |  | dsync_mailboxes_equal |  | test-dsync-common.c |  | 1 | - |  | 5 | - |
FAIL |  | mail_generate_guid_128_hash |  | test-dsync-common.c |  | 1 | - |  | 40 | - |
Pass |  | mail_guid_128_is_empty |  | test-dsync-common.c |  | 0 |  | 0 |
Pass |  | mail_guid_128_to_string |  | test-dsync-common.c |  | 0 |  | 0 |
FAIL |  | master_service_stop |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 50 | - |
Pass |  | out_clear |  | test-dsync-proxy-server-cmd.c |  | 0 |  | 0 |
Pass |  | run_more |  | test-dsync-proxy-server-cmd.c |  | 0 |  | 0 |
FAIL |  | run_cmd |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 2 | - |
FAIL |  | test_dsync_proxy_box_list |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 4 | - |
FAIL |  | test_dsync_proxy_subs_list |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 4 | - |
FAIL |  | test_dsync_proxy_msg_list |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 8 | - |
FAIL |  | test_dsync_proxy_box_create |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 6 | - |
FAIL |  | test_dsync_proxy_box_delete |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 5 | - |
FAIL |  | test_dsync_proxy_box_rename |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 5 | - |
FAIL |  | test_dsync_proxy_box_update |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 10 | - |
FAIL |  | test_dsync_proxy_box_select |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 2 | - |
FAIL |  | test_dsync_proxy_msg_update |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 8 | - |
FAIL |  | test_dsync_proxy_msg_uid_change |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 10 | - |
FAIL |  | test_dsync_proxy_msg_expunge |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 10 | - |
FAIL |  | test_dsync_proxy_msg_copy |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 9 | - |
FAIL |  | test_dsync_proxy_msg_save |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 10 | - |
FAIL |  | dsync_proxy_server_init_test |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 40 | - |
FAIL |  | main |  | test-dsync-proxy-server-cmd.c |  | 1 | - |  | 18 | - |
FAIL |  | test_dsync_proxy_msg |  | test-dsync-proxy.c |  | 1 | - |  | 2 | - |
FAIL |  | test_dsync_proxy_mailbox |  | test-dsync-proxy.c |  | 1 | - |  | 7 | - |
FAIL |  | test_dsync_proxy_guid |  | test-dsync-proxy.c |  | 1 | - |  | 6 | - |
Pass |  | main |  | test-dsync-proxy.c |  | 0 |  | 0 |
FAIL |  | dsync_worker_init_test |  | test-dsync-worker.c |  | 1 | - |  | 12 | - |
FAIL |  | test_worker_deinit |  | test-dsync-worker.c |  | 1 | - |  | 6 | - |

`Quality Result` |  | `Procedure` |  | `Source File` |  | `Unique Violations` |  | `Failure Density` |
`` |  |  |  |  | `(Viols/R.Line %)` |
Pass |  | test_worker_is_output_full |  | test-dsync-worker.c |  | 0 |  | 0 |
Pass |  | test_worker_output_flush |  | test-dsync-worker.c |  | 0 |  | 0 |
Pass |  | test_worker_mailbox_iter_init |  | test-dsync-worker.c |  | 0 |  | 0 |
Pass |  | test_worker_mailbox_iter_next |  | test-dsync-worker.c |  | 0 |  | 0 |
FAIL |  | test_worker_mailbox_iter_deinit |  | test-dsync-worker.c |  | 1 | - |  | 50 | - |
Pass |  | test_worker_subs_iter_init |  | test-dsync-worker.c |  | 0 |  | 0 |
Pass |  | test_worker_subs_iter_next |  | test-dsync-worker.c |  | 0 |  | 0 |
Pass |  | test_worker_subs_iter_next_un |  | test-dsync-worker.c |  | 0 |  | 0 |
FAIL |  | test_worker_subs_iter_deinit |  | test-dsync-worker.c |  | 1 | - |  | 50 | - |
FAIL |  | test_worker_msg_iter_init |  | test-dsync-worker.c |  | 1 | - |  | 10 | - |
FAIL |  | test_worker_msg_iter_next |  | test-dsync-worker.c |  | 1 | - |  | 4 | - |
FAIL |  | test_worker_msg_iter_deinit |  | test-dsync-worker.c |  | 1 | - |  | 29 | - |
FAIL |  | test_worker_set_last_box |  | test-dsync-worker.c |  | 1 | - |  | 63 | - |
FAIL |  | test_dsync_worker_next_box_event |  | test-dsync-worker.c |  | 1 | - |  | 18 | - |
FAIL |  | test_worker_set_subscribed |  | test-dsync-worker.c |  | 1 | - |  | 7 | - |
Pass |  | test_worker_create_mailbox |  | test-dsync-worker.c |  | 0 |  | 0 |
FAIL |  | test_worker_delete_mailbox |  | test-dsync-worker.c |  | 1 | - |  | 50 | - |
FAIL |  | test_worker_delete_dir |  | test-dsync-worker.c |  | 1 | - |  | 50 | - |
FAIL |  | test_worker_rename_mailbox |  | test-dsync-worker.c |  | 1 | - |  | 44 | - |
Pass |  | test_worker_update_mailbox |  | test-dsync-worker.c |  | 0 |  | 0 |
Pass |  | test_worker_select_mailbox |  | test-dsync-worker.c |  | 0 |  | 0 |
FAIL |  | test_worker_set_last_msg |  | test-dsync-worker.c |  | 1 | - |  | 10 | - |
FAIL |  | test_dsync_worker_next_msg_event |  | test-dsync-worker.c |  | 1 | - |  | 18 | - |
FAIL |  | test_worker_msg_update_metadata |  | test-dsync-worker.c |  | 1 | - |  | 20 | - |
FAIL |  | test_worker_msg_update_uid |  | test-dsync-worker.c |  | 1 | - |  | 25 | - |
FAIL |  | test_worker_msg_expunge |  | test-dsync-worker.c |  | 1 | - |  | 29 | - |
FAIL |  | test_worker_msg_copy |  | test-dsync-worker.c |  | 1 | - |  | 18 | - |
FAIL |  | test_worker_msg_save |  | test-dsync-worker.c |  | 1 | - |  | 30 | - |
Pass |  | test_worker_msg_save_cancel |  | test-dsync-worker.c |  | 0 |  | 0 |
FAIL |  | test_worker_msg_get |  | test-dsync-worker.c |  | 1 | - |  | 10 | - |
Pass |  | test_worker_finish |  | test-dsync-worker.c |  | 0 |  | 0 |

#### Global Information

#### Source Files in System

Name | Last Modification Date
--- | ---
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\test-dsync-worker.c | Fri Jun 11 19:00:04 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\test-dsync-proxy.c | Fri Mar 26 07:16:36 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\test-dsync-proxy-server-cmd.c | Fri Mar 26 07:16:36 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\test-dsync-common.c | Fri Mar 26 07:16:36 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\test-dsync-brain.c | Fri Mar 26 07:16:36 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\test-dsync-brain-msgs.c | Fri Mar 26 07:16:36 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync.c | Thu May 27 19:00:08 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-worker.c | Fri Jun 11 19:00:04 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-worker-local.c | Fri Jun 11 19:00:04 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-proxy.c | Fri Mar 26 07:16:36 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-proxy-server.c | Fri Mar 26 07:16:36 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-proxy-server-cmd.c | Fri Jun 11 19:00:04 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-proxy-client.c | Fri Jun 11 19:00:04 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-data.c | Fri Jun 11 19:00:04 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-brain.c | Fri Jun 11 19:00:04 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-brain-msgs.c | Fri Mar 26 07:16:36 2010
C:\Code\SAMATE\SATE2010\dovecot-2.0.beta6.20100626\dovecot-2.0.beta6\src\dsync\dsync-brain-msgs-new.c | Fri Mar 26 07:16:36 2010

#### Global Basic Information

Number of procedures: | 373
Number of locally uncalled procedures: | 8
Maximum loop depth: | 2
Total Cyclomatic Complexity: | 1155
Number of reformatted executable lines: | 13662
Number of lines of comments: | 19189

## Summary Report on all Program Components which FAIL

Globals / code outside procedures - FAIL

#### Standards Violation Summary - All files

Code | File: Src Line | Violation | Standard
--- | --- | --- | ---
M | compat.h: 214 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 215 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 216 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 217 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 218 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 219 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 220 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 221 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 222 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 223 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 224 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 225 | Macro replacement list needs parentheses. | CERT PRE02-C
M | compat.h: 226 | Macro replacement list needs parentheses. | CERT PRE02-C
M | macros.h: 196 | Macro replacement list needs parentheses. | CERT PRE02-C
M | macros.h: 197 | Macro replacement list needs parentheses. | CERT PRE02-C
M | macros.h: 204 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | macros.h: 204 | Macro replacement list needs parentheses. | CERT PRE02-C
M | macros.h: 205 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | macros.h: 205 | Macro replacement list needs parentheses. | CERT PRE02-C
M | macros.h: 223 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | macros.h: 223 | Macro replacement list needs parentheses. | CERT PRE02-C
M | macros.h: 232 | Macro replacement list needs parentheses. | CERT PRE02-C
M | data-stack.h: 49 | Macro replacement list needs parentheses. | CERT PRE02-C
M | data-stack.h: 51 | Macro replacement list needs parentheses. | CERT PRE02-C
M | data-stack.h: 75 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | data-stack.h: 85 | Macro replacement list needs parentheses. | CERT PRE02-C
M | data-stack.h: 90 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | data-stack.h: 90 | Macro replacement list needs parentheses. | CERT PRE02-C
M | data-stack.h: 97 | Macro replacement list needs parentheses. | CERT PRE02-C
M | mempool.h: 84 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | mempool.h: 87 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | mempool.h: 88 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | mempool.h: 99 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | mempool.h: 99 | Macro replacement list needs parentheses. | CERT PRE02-C
M | mempool.h: 102 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | mempool.h: 102 | Macro replacement list needs parentheses. | CERT PRE02-C
M | imem.h: 8 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | imem.h: 8 | Macro replacement list needs parentheses. | CERT PRE02-C
M | imem.h: 14 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | imem.h: 14 | Macro replacement list needs parentheses. | CERT PRE02-C
M | imem.h: 15 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | imem.h: 15 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array-decl.h: 4 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array-decl.h: 4 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array-decl.h: 7 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array-decl.h: 7 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array-decl.h: 9 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array-decl.h: 9 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 35 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 35 | Macro replacement list needs parentheses. | CERT PRE02-C

Code | File: Src Line | Violation | Standard
--- | --- | --- | ---
M | array.h: 37 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 37 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 39 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 39 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 53 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 58 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 58 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 62 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 62 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 90 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 90 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 102 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 102 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 110 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 118 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 126 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 134 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 143 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 143 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 153 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 164 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 164 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 174 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 174 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 183 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 183 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 192 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 192 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 201 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 201 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 206 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 206 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 211 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 211 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 216 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 216 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 228 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 232 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 232 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 252 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 257 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 261 | Macro replacement list needs parentheses. | CERT PRE02-C
M | array.h: 266 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 279 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | array.h: 279 | Macro replacement list needs parentheses. | CERT PRE02-C
M | istream.h: 53 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | istream.h: 53 | Macro replacement list needs parentheses. | CERT PRE02-C
M | ioloop.h: 50 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | ioloop.h: 50 | Macro replacement list needs parentheses. | CERT PRE02-C
M | ioloop.h: 56 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C

Code | File: Src Line | Violation | Standard
--- | --- | --- | ---
M | ioloop.h: 75 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | ioloop.h: 75 | Macro replacement list needs parentheses. | CERT PRE02-C
M | mail-error.h: 19 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | mail-error.h: 19 | Macro replacement list needs parentheses. | CERT PRE02-C
M | mail-storage.h: 414 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | sha1.h: 71 | Macro replacement list needs parentheses. | CERT PRE02-C
M | sha1.h: 72 | Macro replacement list needs parentheses. | CERT PRE02-C
M | sha1.h: 73 | Macro replacement list needs parentheses. | CERT PRE02-C
M | ostream.h: 61 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | ostream.h: 61 | Macro replacement list needs parentheses. | CERT PRE02-C
M | settings-parser.h: 46 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | settings-parser.h: 46 | Macro replacement list needs parentheses. | CERT PRE02-C
M | settings-parser.h: 50 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | settings-parser.h: 50 | Macro replacement list needs parentheses. | CERT PRE02-C
M | settings-parser.h: 54 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | settings-parser.h: 54 | Macro replacement list needs parentheses. | CERT PRE02-C
M | settings-parser.h: 58 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | settings-parser.h: 58 | Macro replacement list needs parentheses. | CERT PRE02-C
M | settings-parser.h: 62 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | settings-parser.h: 62 | Macro replacement list needs parentheses. | CERT PRE02-C
M | mail-search.h: 115 | Macro replacement list needs parentheses. | CERT PRE02-C
M | mail-search.h: 156 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | dsync.c: 18 | Global not initialised at declaration. : brain | CERT EXP33-C
M | dsync.c: 19 | Global not initialised at declaration. : server | CERT EXP33-C
M | test-common.h: 11 | Macro parameter not in brackets. | CERT PRE01-C,PRE02-C
M | test-common.h: 11 | Macro replacement list needs parentheses. | CERT PRE02-C
M | test-dsync-brain-msgs.c: 23 | Global not initialised at declaration. : mailboxes | CERT EXP33-C
M | test-dsync-brain-msgs.c: 24 | Global not initialised at declaration. : test_dest_worker | CERT EXP33-C
M | test-dsync-brain-msgs.c: 24 | Global not initialised at declaration. : test_src_worker | CERT EXP33-C
M | test-dsync-brain.c: 10 | Global not initialised at declaration. : master_service | CERT EXP33-C
M | test-dsync-brain.c: 11 | Global not initialised at declaration. : dest_test_worker | CERT EXP33-C
M | test-dsync-brain.c: 11 | Global not initialised at declaration. : src_test_worker | CERT EXP33-C
M | test-dsync-common.c: 15 | Declaration types do not match across a system. : test_mailbox_guid2 | CERT ARR31-C
| 11 (test-dsync-common.h) |  |
M | test-dsync-proxy-server-cmd.c: 17 | Global not initialised at declaration. : master_service | CERT EXP33-C
M | test-dsync-proxy-server-cmd.c: 18 | Global not initialised at declaration. : out | CERT EXP33-C
M | test-dsync-proxy-server-cmd.c: 19 | Global not initialised at declaration. : server | CERT EXP33-C
M | test-dsync-proxy-server-cmd.c: 20 | Global not initialised at declaration. : test_worker | CERT EXP33-C
M | test-dsync-proxy-server-cmd.c: 21 | Global not initialised at declaration. : cur_cmd | CERT EXP33-C
M | test-dsync-proxy-server-cmd.c: 22 | Global not initialised at declaration. : cur_cmd_args | CERT EXP33-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

array_create_i (93 to 101 array.h analysed in dsync-brain-msgs-new.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 100 | Pointer not checked for null before use : buffer | CERT EXP08-C,EXP34-C
| 99 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

msg_get_callback (24 to 54 dsync-brain-msgs-new.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 53 | Pointer not checked for null before use : ctx | CERT EXP08-C,EXP34-C
| 52 |  |
M | 37 | Pointer not checked for null before use : mailbox | CERT EXP08-C,EXP34-C
| 32 |  |
M | 47 | Pointer not checked for null before use : mailbox | CERT EXP08-C,EXP34-C
| 32 |  |
M | 41 | Pointer not checked for null before use : input | CERT EXP08-C,EXP34-C
| 39 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_copy_callback (56 to 72 dsync-brain-msgs-new.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 71 | Pointer not checked for null before use : ctx | CERT EXP08-C,EXP34-C
| 70 |  |
M | 65 | Pointer not checked for null before use : msg | CERT EXP08-C,EXP34-C
| 64 |  |
M | 66 | Pointer not checked for null before use : inst | CERT EXP08-C,EXP34-C
| 65 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_add_new_msg (74 to 123 dsync-brain-msgs-new.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 94 | Pointer not checked for null before use : copy_ctx | CERT EXP08-C,EXP34-C
| 92 |  |
M | 97 | Pointer not checked for null before use : inst_box | CERT EXP08-C,EXP34-C
| 89 |  |
M | 109 | Pointer not checked for null before use : save_ctx | CERT EXP08-C,EXP34-C
| 107 |  |
M | 107 | Pointer not checked for null before use : src_iter | CERT EXP08-C,EXP34-C
| 103 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_mailbox_retry_copies (177 to 220 dsync-brain-msgs-new.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 193 | Pointer not checked for null before use : guid_str | CERT EXP08-C,EXP34-C
| 192 |  |
M | 192 | Pointer not checked for null before use : indexes | CERT EXP08-C,EXP34-C
| 190 |  |
M | 192 | Pointer not checked for null before use : msgs | CERT EXP08-C,EXP34-C
| 189 |  |
M | 183 | Procedure contains UR data flow anomalies. : idx_count | CERT EXP33-C
| 191 |  |
M | 186 | Procedure contains UR data flow anomalies. : orig_key | CERT EXP33-C
| 193 |  |
M | 186 | Procedure contains UR data flow anomalies. : orig_value | CERT EXP33-C
| 193 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-brain-msgs-new.c | 183 | dsync-brain-msgs-new.c | 191 | idx_count
dsync-brain-msgs-new.c | 186 | dsync-brain-msgs-new.c | 193 | orig_key
dsync-brain-msgs-new.c | 186 | dsync-brain-msgs-new.c | 193 | orig_value

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_add_new_msgs (222 to 276 dsync-brain-msgs-new.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 241 | Pointer not checked for null before use : mailbox_guid | CERT EXP08-C,EXP34-C
| 230 |  |
M | 230 | Pointer not checked for null before use : mailbox | CERT EXP08-C,EXP34-C
| 229 |  |
M | 265 | Pointer not checked for null before use : NULL | CERT EXP08-C,EXP34-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_iter_sync_new_msgs (316 to 328 dsync-brain-msgs-new.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 324 | Pointer not checked for null before use : NULL | CERT EXP08-C,EXP34-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

sync_iter_resolve_uid_conflicts (336 to 351 dsync-brain-msgs-new.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 346 | Pointer not checked for null before use : conflicts | CERT EXP08-C,EXP34-C
| 344 |  |
M | 346 | Pointer not checked for null before use : mailboxes | CERT EXP08-C,EXP34-C
| 343 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_guid_add (9 to 29 dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 17 | Pointer not checked for null before use : inst | CERT EXP08-C,EXP34-C
| 16 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_save (60 to 74 dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 71 | Pointer not checked for null before use : new_msg | CERT EXP08-C,EXP34-C
| 70 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_conflict (76 to 100 dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 88 | Pointer not checked for null before use : brain_box | CERT EXP08-C,EXP34-C
| 86 |  |
M | 91 | Pointer not checked for null before use : conflict | CERT EXP08-C,EXP34-C
| 90 |  |
M | 96 | Pointer not checked for null before use : new_msg | CERT EXP08-C,EXP34-C
| 95 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_pair (119 to 216 dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 185 | Pointer not checked for null before use : src_guid | CERT EXP08-C,EXP34-C
| 134 |  |
M | 185 | Pointer not checked for null before use : dest_guid | CERT EXP08-C,EXP34-C
| 135 |  |
M | 124 | Procedure contains UR data flow anomalies. : guid_128_data | CERT EXP33-C
| 135 |  |
M | 161 | Procedure contains UR data flow anomalies. : sync.guid | CERT EXP33-C

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-brain-msgs.c | 124 | dsync-brain-msgs.c | 135 | guid_128_data
dsync-brain-msgs.c | 124 | dsync-brain-msgs.c | 139 | guid_128_data

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_mailbox_end (218 to 229 dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 226 | Procedure contains UR data flow anomalies. : (iter1)->msg.guid | CERT EXP33-C

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-brain-msgs.c | 226 | dsync-brain-msgs.c | 223 | (iter1)->msg.guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_mailbox_more (231 to 260 dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-brain-msgs.c | 161 | dsync-brain-msgs.c | 237 | sync.guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_more (272 to 291 dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 286 | Pointer not checked for null before use : mailboxes | CERT EXP08-C,EXP34-C
| 277 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-brain-msgs.c | 161 | dsync-brain-msgs.c | 278 | sync.guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_iter_init (300 to 331 dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 330 | Local structure returned in function result : iter |
M | 309 | Pointer not checked for null before use : iter | CERT EXP08-C,EXP34-C
| 308 |  |
M | 328 | Pointer not checked for null before use : first | CERT EXP08-C,EXP34-C
| 327 |  |
M | 314 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 314) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_init (355 to 388 dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 387 | Local structure returned in function result : sync |
M | 363 | Pointer not checked for null before use : pool | CERT EXP08-C,EXP34-C
| 362 |  |
M | 364 | Pointer not checked for null before use : sync | CERT EXP08-C,EXP34-C
| 363 |  |
M | 370 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 369 |  |
M | 372 | Procedure contains UR data flow anomalies. : guids_arr.arr.buffer | CERT EXP33-C
| 376 |  |
M | 372 | Procedure contains UR data flow anomalies. : guids_arr.arr.element_size | CERT EXP33-C
| 376 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-brain-msgs.c | 372 | dsync-brain-msgs.c | 376 | guids_arr.arr.buffer
dsync-brain-msgs.c | 372 | dsync-brain-msgs.c | 376 | guids_arr.arr.element_size

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_init (15 to 29 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 28 | Local structure returned in function result : brain |
M | 23 | Pointer not checked for null before use : brain | CERT EXP08-C,EXP34-C
| 22 |  |
M | 22 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 315) |  |
M | 20 | Declaration types do not match across a system. : brain | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_deinit (37 to 69 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 67 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| 66 |  |
M | 67 | Attempt to read from freed memory. : default_pool | CERT MEM30-C
M | 67 | Pointer not checked for null before use : (brain)->mailbox | CERT EXP08-C,EXP34-C
| 66 |  |
M | 39 | Declaration types do not match across a system. : brain | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_worker_mailbox_input (82 to 108 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 90 | Attempt to use already freed object. | CERT MEM31-C
M | 95 | Pointer not checked for null before use : dup_box | CERT EXP08-C,EXP34-C
| 94 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.arr.buffer | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.arr.element_size | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.v | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.v_modifiable | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.flags | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.highest_modseq | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.last_change | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.mailbox_guid.guid | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.name | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.name_sep | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.name_sha1.guid | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.uid_next | CERT EXP33-C
| 88 |  |
M | 85 | Procedure contains UR data flow anomalies. : dsync_box.uid_validity | CERT EXP33-C
| 88 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.cache_fields.arr.buffer
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.cache_fields.arr.element_size
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.cache_fields.v
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.cache_fields.v_modifiable
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.flags
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.highest_modseq
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.last_change
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.mailbox_guid.guid
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.name
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.name_sep
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.name_sha1.guid
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.uid_next
dsync-brain.c | 85 | dsync-brain.c | 88 | dsync_box.uid_validity

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_mailbox_list_init (110 to 128 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 127 | Local structure returned in function result : list |
M | 118 | Pointer not checked for null before use : pool | CERT EXP08-C,EXP34-C
| 117 |  |
M | 119 | Pointer not checked for null before use : list | CERT EXP08-C,EXP34-C
| 118 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_worker_subs_input (171 to 205 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 179 | Pointer not checked for null before use : subs.ns_prefix | CERT EXP08-C,EXP34-C
| 178 |  |
M | 179 | Pointer not checked for null before use : subs.storage_name | CERT EXP08-C,EXP34-C
| 178 |  |
M | 179 | Pointer not checked for null before use : subs.vname | CERT EXP08-C,EXP34-C
| 178 |  |
M | 189 | Pointer not checked for null before use : unsubs.ns_prefix | CERT EXP08-C,EXP34-C
| 188 |  |
M | 183 | Pointer not checked for null before use : subs.ns_prefix | CERT EXP08-C,EXP34-C
| 182 |  |
M | 183 | Pointer not checked for null before use : subs.storage_name | CERT EXP08-C,EXP34-C
| 181 |  |
M | 183 | Pointer not checked for null before use : subs.vname | CERT EXP08-C,EXP34-C
| 180 |  |
M | 192 | Pointer not checked for null before use : unsubs.ns_prefix | CERT EXP08-C,EXP34-C
| 191 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_subs_list_init (207 to 224 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 223 | Local structure returned in function result : list |
M | 215 | Pointer not checked for null before use : pool | CERT EXP08-C,EXP34-C
| 214 |  |
M | 216 | Pointer not checked for null before use : list | CERT EXP08-C,EXP34-C
| 215 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_sync_mailboxes (238 to 314 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 262 | Pointer not checked for null before use : new_box | CERT EXP08-C,EXP34-C
| 261 |  |
M | 272 | Pointer not checked for null before use : new_box | CERT EXP08-C,EXP34-C
| 271 |  |
M | 300 | Pointer not checked for null before use : new_box | CERT EXP08-C,EXP34-C
| 299 |  |
M | 310 | Pointer not checked for null before use : new_box | CERT EXP08-C,EXP34-C
| 309 |  |
M | 252 | Pointer not checked for null before use : src_boxes | CERT EXP08-C,EXP34-C
| 249 |  |
M | 254 | Pointer not checked for null before use : dest_boxes | CERT EXP08-C,EXP34-C
| 250 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_sync_dirs (316 to 384 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 333 | Sizeof argument is a pointer. | CERT EXP01-C
M | 340 | Pointer not checked for null before use : new_box | CERT EXP08-C,EXP34-C
| 339 |  |
M | 348 | Pointer not checked for null before use : new_box | CERT EXP08-C,EXP34-C
| 347 |  |
M | 374 | Pointer not checked for null before use : new_box | CERT EXP08-C,EXP34-C
| 373 |  |
M | 382 | Pointer not checked for null before use : new_box | CERT EXP08-C,EXP34-C
| 381 |  |
M | 329 | Pointer not checked for null before use : src_boxes | CERT EXP08-C,EXP34-C
| 326 |  |
M | 331 | Pointer not checked for null before use : dest_boxes | CERT EXP08-C,EXP34-C
| 327 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_is_unsubscribed (386 to 408 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 396 | Pointer not checked for null before use : lookup.ns_prefix | CERT EXP08-C,EXP34-C
| 394 |  |
M | 396 | Pointer not checked for null before use : lookup.ns_prefix | CERT EXP08-C,EXP34-C
| 394 |  |
M | 392 | Procedure contains UR data flow anomalies. : lookup.last_change | CERT EXP33-C
| 396 |  |
M | 392 | Procedure contains UR data flow anomalies. : lookup.name_sha1.guid | CERT EXP33-C
| 395 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-brain.c | 392 | dsync-brain.c | 396 | lookup.last_change
dsync-brain.c | 392 | dsync-brain.c | 395 | lookup.name_sha1.guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_sync_subscriptions (410 to 466 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 428 | Pointer not checked for null before use : dest_subs | CERT EXP08-C,EXP34-C
| 419 |  |
M | 428 | Pointer not checked for null before use : src_subs | CERT EXP08-C,EXP34-C
| 418 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_get_changed_mailboxes (508 to 595 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 535 | Pointer not checked for null before use : brain_box | CERT EXP08-C,EXP34-C
| 534 |  |
M | 551 | Pointer not checked for null before use : brain_box | CERT EXP08-C,EXP34-C
| 550 |  |
M | 563 | Pointer not checked for null before use : brain_box | CERT EXP08-C,EXP34-C
| 562 |  |
M | 579 | Pointer not checked for null before use : brain_box | CERT EXP08-C,EXP34-C
| 578 |  |
M | 590 | Pointer not checked for null before use : brain_box | CERT EXP08-C,EXP34-C
| 589 |  |
M | 523 | Pointer not checked for null before use : src_boxes | CERT EXP08-C,EXP34-C
| 519 |  |
M | 525 | Pointer not checked for null before use : dest_boxes | CERT EXP08-C,EXP34-C
| 520 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_sync_msgs (597 to 609 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 603 | Pointer not checked for null before use : pool | CERT EXP08-C,EXP34-C
| 602 |  |
M | 599 | Procedure contains UR data flow anomalies. : mailboxes.arr.buffer | CERT EXP33-C
| 604 |  |
M | 599 | Procedure contains UR data flow anomalies. : mailboxes.arr.element_size | CERT EXP33-C
| 604 |  |
M | 599 | Procedure contains UR data flow anomalies. : mailboxes.v | CERT EXP33-C
| 606 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-brain.c | 599 | dsync-brain.c | 604 | mailboxes.arr.buffer
dsync-brain.c | 599 | dsync-brain.c | 606 | mailboxes.arr.buffer
dsync-brain.c | 599 | dsync-brain.c | 604 | mailboxes.arr.element_size
dsync-brain.c | 599 | dsync-brain.c | 606 | mailboxes.arr.element_size
dsync-brain.c | 599 | dsync-brain.c | 606 | mailboxes.v

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_worker_finished (641 to 660 dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 652 | Attempt to use already freed object. | CERT MEM31-C
M | 643 | Declaration types do not match across a system. : brain | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_mailbox_dup (9 to 30 dsync-data.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 29 | Local structure returned in function result : dest |
M | 17 | Pointer not checked for null before use : dest | CERT EXP08-C,EXP34-C
| 16 |  |
M | 26 | Pointer not checked for null before use : dup | CERT EXP08-C,EXP34-C
| 25 |  |
M | 25 | Pointer not checked for null before use : cache_fields | CERT EXP08-C,EXP34-C
| 21 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_message_dup (32 to 50 dsync-data.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 49 | Local structure returned in function result : dest |
M | 40 | Pointer not checked for null before use : dest | CERT EXP08-C,EXP34-C
| 39 |  |
M | 47 | Pointer not checked for null before use : keywords | CERT EXP08-C,EXP34-C
| 44 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_mailbox_guid_cmp (52 to 57 dsync-data.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 55 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_mailbox_name_sha1_cmp (65 to 76 dsync-data.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 70 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_guid_equals (104 to 108 dsync-data.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 107 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_guid_cmp (110 to 113 dsync-data.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 112 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_get_guid_128_str (120 to 134 dsync-data.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 133 | Local structure returned in function result : guid_128_buf |
M | 124 | Procedure contains UR data flow anomalies. : guid_128_buf.data | CERT EXP33-C
| 127 |  |
M | 124 | Procedure contains UR data flow anomalies. : guid_128_buf.priv | CERT EXP33-C
| 127 |  |
M | 124 | Procedure contains UR data flow anomalies. : guid_128_buf.used | CERT EXP33-C
| 127 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-data.c | 124 | dsync-data.c | 127 | guid_128_buf.data
dsync-data.c | 124 | dsync-data.c | 127 | guid_128_buf.priv
dsync-data.c | 124 | dsync-data.c | 127 | guid_128_buf.used

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_str_sha_to_guid (136 to 142 dsync-data.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 141 | Sizeof argument is a pointer. | CERT EXP01-C
M | 141 | Sizeof argument is a pointer. | CERT EXP01-C
M | 138 | Procedure contains UR data flow anomalies. : sha | CERT EXP33-C
| 140 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-data.c | 138 | dsync-data.c | 140 | sha

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_get_done (121 to 138 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 125 | Procedure contains UR data flow anomalies. : data | CERT EXP33-C
| 136 |  |
M | 126 | Procedure contains UR data flow anomalies. : size | CERT EXP33-C
| 136 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-client.c | 125 | dsync-proxy-client.c | 136 | data
dsync-proxy-client.c | 126 | dsync-proxy-client.c | 136 | size

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_next_msg_get (169 to 225 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 187 | Pointer not checked for null before use : line | CERT EXP08-C,EXP34-C
| 185 |  |
M | 199 | Pointer not checked for null before use : line | CERT EXP08-C,EXP34-C
| 190 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_next_reply (242 to 273 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 257 | Pointer not checked for null before use : requests | CERT EXP08-C,EXP34-C
| 256 |  |
M | 262 | Pointer not checked for null before use : request.context | CERT EXP08-C,EXP34-C
| 257 |  |
M | 265 | Pointer not checked for null before use : request.context | CERT EXP08-C,EXP34-C
| 257 |  |
M | 269 | Pointer not checked for null before use : request.context | CERT EXP08-C,EXP34-C
| 257 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_input (275 to 294 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 277 | Procedure contains UR data flow anomalies. : line | CERT EXP33-C
| 287 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-client.c | 277 | dsync-proxy-client.c | 287 | line

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_worker_init_proxy_client (323 to 349 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 328 | Pointer not checked for null before use : worker | CERT EXP08-C,EXP34-C
| 327 |  |
M | 327 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 317) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_output_flush (392 to 405 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 397 | Attempt to use already freed object. | CERT MEM31-C
M | 400 | Attempt to use already freed object. | CERT MEM31-C
M | 401 | Attempt to use already freed object. | CERT MEM31-C
M | 403 | Attempt to use already freed object. | CERT MEM31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_mailbox_iter_init (407 to 420 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 417 | Attempt to use already freed object. | CERT MEM31-C
M | 415 | Pointer not checked for null before use : iter | CERT EXP08-C,EXP34-C
| 414 |  |
M | 414 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 317) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_mailbox_iter_next (422 to 454 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 433 | Attempt to use already freed object. | CERT MEM31-C
M | 430 | Procedure contains UR data flow anomalies. : line | CERT EXP33-C
| 439 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-client.c | 430 | dsync-proxy-client.c | 439 | line

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_subs_iter_init (468 to 481 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 478 | Attempt to use already freed object. | CERT MEM31-C
M | 476 | Pointer not checked for null before use : iter | CERT EXP08-C,EXP34-C
| 475 |  |
M | 475 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 317) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_subs_iter_next_line (483 to 516 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 494 | Attempt to use already freed object. | CERT MEM31-C
M | 509 | Pointer not checked for null before use : args | CERT EXP08-C,EXP34-C
| 508 |  |
M | 490 | Procedure contains UR data flow anomalies. : line | CERT EXP33-C
| 500 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-client.c | 490 | dsync-proxy-client.c | 500 | line

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_subs_iter_next (518 to 536 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 531 | Pointer not checked for null before use : args | CERT EXP08-C,EXP34-C
| 527 |  |
M | 524 | Procedure contains UR data flow anomalies. : args | CERT EXP33-C
| 531 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-client.c | 524 | dsync-proxy-client.c | 531 | args

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_subs_iter_next_un (538 to 561 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 552 | Pointer not checked for null before use : args | CERT EXP08-C,EXP34-C
| 547 |  |
M | 552 | Pointer not checked for null before use : rec_r | CERT EXP08-C,EXP34-C
| 551 |  |
M | 544 | Procedure contains UR data flow anomalies. : args | CERT EXP33-C
| 552 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-client.c | 544 | dsync-proxy-client.c | 552 | args

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_set_subscribed (575 to 592 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 590 | Attempt to use already freed object. | CERT MEM31-C
M | 586 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 584 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_iter_init (600 to 627 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 622 | Attempt to use already freed object. | CERT MEM31-C
M | 612 | Pointer not checked for null before use : iter | CERT EXP08-C,EXP34-C
| 611 |  |
M | 616 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 615 |  |
M | 611 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 317) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_iter_next (629 to 677 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 644 | Attempt to use already freed object. | CERT MEM31-C
M | 659 | Pointer not checked for null before use : line | CERT EXP08-C,EXP34-C
| 661 |  |
M | 671 | Pointer not checked for null before use : line | CERT EXP08-C,EXP34-C
| 668 |  |
M | 638 | Procedure contains UR data flow anomalies. : line | CERT EXP33-C
| 650 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-client.c | 638 | dsync-proxy-client.c | 650 | line

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_create_mailbox (691 to 708 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 706 | Attempt to use already freed object. | CERT MEM31-C
M | 703 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 701 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_delete_mailbox (710 to 727 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 725 | Attempt to use already freed object. | CERT MEM31-C
M | 722 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 720 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_delete_dir (729 to 746 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 744 | Attempt to use already freed object. | CERT MEM31-C
M | 741 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 739 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_rename_mailbox (748 to 772 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 770 | Attempt to use already freed object. | CERT MEM31-C
M | 762 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 760 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_update_mailbox (774 to 791 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 789 | Attempt to use already freed object. | CERT MEM31-C
M | 786 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 784 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_select_mailbox (793 to 817 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 803 | Attempt to use already freed object. | CERT MEM31-C
M | 815 | Attempt to use already freed object. | CERT MEM31-C
M | 810 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 808 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_update_metadata (819 to 837 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 835 | Attempt to use already freed object. | CERT MEM31-C
M | 831 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 829 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_update_uid (839 to 853 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 849 | Attempt to use already freed object. | CERT MEM31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_expunge (855 to 867 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 864 | Attempt to use already freed object. | CERT MEM31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_copy (869 to 900 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 891 | Attempt to use already freed object. | CERT MEM31-C
M | 899 | Attempt to use already freed object. | CERT MEM31-C
M | 886 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 884 |  |
M | 899 | Pointer not checked for null before use : request.context | CERT EXP08-C,EXP34-C
| 897 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_send_stream (902 to 945 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 904 | Procedure contains UR data flow anomalies. : data | CERT EXP33-C
| 908 |  |
M | 905 | Procedure contains UR data flow anomalies. : size | CERT EXP33-C
| 908 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-client.c | 904 | dsync-proxy-client.c | 908 | data
dsync-proxy-client.c | 905 | dsync-proxy-client.c | 908 | size

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_save (947 to 973 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 965 | Attempt to use already freed object. | CERT MEM31-C
M | 971 | Attempt to use already freed object. | CERT MEM31-C
M | 960 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 958 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_save_cancel (975 to 985 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 982 | Attempt to use already freed object. | CERT MEM31-C
M | 984 | Attempt to use already freed object. | CERT MEM31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_msg_get (987 to 1014 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1005 | Attempt to use already freed object. | CERT MEM31-C
M | 1013 | Attempt to use already freed object. | CERT MEM31-C
M | 1002 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 1000 |  |
M | 1013 | Pointer not checked for null before use : request.context | CERT EXP08-C,EXP34-C
| 1011 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_client_worker_finish (1016 to 1035 dsync-proxy-client.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1027 | Attempt to use already freed object. | CERT MEM31-C
M | 1028 | Attempt to use already freed object. | CERT MEM31-C
M | 1034 | Attempt to use already freed object. | CERT MEM31-C
M | 1034 | Pointer not checked for null before use : request.context | CERT EXP08-C,EXP34-C
| 1033 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_box_list (28 to 63 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 44 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 41 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.arr.buffer | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.arr.element_size | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.v | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.v_modifiable | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.flags | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.highest_modseq | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.last_change | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.mailbox_guid.guid | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.name | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.name_sep | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.name_sha1.guid | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.uid_next | CERT EXP33-C
| 42 |  |
M | 32 | Procedure contains UR data flow anomalies. : dsync_box.uid_validity | CERT EXP33-C
| 42 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.cache_fields.arr.buffer
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.cache_fields.arr.element_size
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.cache_fields.v
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.cache_fields.v_modifiable
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.flags
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.highest_modseq
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.last_change
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.mailbox_guid.guid
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.name
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.name_sep
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.name_sha1.guid
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.uid_next
dsync-proxy-server-cmd.c | 32 | dsync-proxy-server-cmd.c | 42 | dsync_box.uid_validity

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_subs_list_subscriptions (65 to 91 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 74 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 71 |  |
M | 67 | Procedure contains UR data flow anomalies. : rec.last_change | CERT EXP33-C
| 72 |  |
M | 67 | Procedure contains UR data flow anomalies. : rec.ns_prefix | CERT EXP33-C
| 72 |  |
M | 67 | Procedure contains UR data flow anomalies. : rec.storage_name | CERT EXP33-C
| 72 |  |
M | 67 | Procedure contains UR data flow anomalies. : rec.vname | CERT EXP33-C
| 72 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 67 | dsync-proxy-server-cmd.c | 72 | rec.last_change
dsync-proxy-server-cmd.c | 67 | dsync-proxy-server-cmd.c | 72 | rec.ns_prefix
dsync-proxy-server-cmd.c | 67 | dsync-proxy-server-cmd.c | 72 | rec.storage_name
dsync-proxy-server-cmd.c | 67 | dsync-proxy-server-cmd.c | 72 | rec.vname

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_subs_list_unsubscriptions (93 to 117 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 102 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 99 |  |
M | 95 | Procedure contains UR data flow anomalies. : rec.last_change | CERT EXP33-C
| 100 |  |
M | 95 | Procedure contains UR data flow anomalies. : rec.name_sha1.guid | CERT EXP33-C
| 100 |  |
M | 95 | Procedure contains UR data flow anomalies. : rec.ns_prefix | CERT EXP33-C
| 100 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 95 | dsync-proxy-server-cmd.c | 100 | rec.last_change
dsync-proxy-server-cmd.c | 95 | dsync-proxy-server-cmd.c | 100 | rec.name_sha1.guid
dsync-proxy-server-cmd.c | 95 | dsync-proxy-server-cmd.c | 100 | rec.ns_prefix

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_msg_list_init (165 to 188 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 176 | Pointer not checked for null before use : mailboxes | CERT EXP08-C,EXP34-C
| 173 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_msg_list (190 to 226 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 206 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 203 |  |
M | 193 | Procedure contains UR data flow anomalies. : mailbox_idx | CERT EXP33-C
| 204 |  |
M | 194 | Procedure contains UR data flow anomalies. : msg.flags | CERT EXP33-C
| 204 |  |
M | 194 | Procedure contains UR data flow anomalies. : msg.guid | CERT EXP33-C
| 204 |  |
M | 194 | Procedure contains UR data flow anomalies. : msg.keywords | CERT EXP33-C
| 204 |  |
M | 194 | Procedure contains UR data flow anomalies. : msg.modseq | CERT EXP33-C
| 204 |  |
M | 194 | Procedure contains UR data flow anomalies. : msg.save_date | CERT EXP33-C
| 204 |  |
M | 194 | Procedure contains UR data flow anomalies. : msg.uid | CERT EXP33-C
| 204 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 193 | dsync-proxy-server-cmd.c | 204 | mailbox_idx
dsync-proxy-server-cmd.c | 194 | dsync-proxy-server-cmd.c | 204 | msg.flags
dsync-proxy-server-cmd.c | 194 | dsync-proxy-server-cmd.c | 204 | msg.guid
dsync-proxy-server-cmd.c | 194 | dsync-proxy-server-cmd.c | 204 | msg.keywords
dsync-proxy-server-cmd.c | 194 | dsync-proxy-server-cmd.c | 204 | msg.modseq
dsync-proxy-server-cmd.c | 194 | dsync-proxy-server-cmd.c | 204 | msg.save_date
dsync-proxy-server-cmd.c | 194 | dsync-proxy-server-cmd.c | 204 | msg.uid

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_box_create (228 to 242 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.arr.buffer | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.arr.element_size | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.v | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.v_modifiable | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.flags | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.highest_modseq | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.last_change | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.mailbox_guid.guid | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.name | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.name_sep | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.name_sha1.guid | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.uid_next | CERT EXP33-C
| 240 |  |
M | 231 | Procedure contains UR data flow anomalies. : dsync_box.uid_validity | CERT EXP33-C
| 240 |  |
M | 232 | Procedure contains UR data flow anomalies. : error | CERT EXP33-C
| 237 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.cache_fields.arr.buffer
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.cache_fields.arr.element_size
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.cache_fields.v
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.cache_fields.v_modifiable
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.flags
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.highest_modseq
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.last_change
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.mailbox_guid.guid
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.name
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.name_sep
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.name_sha1.guid
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.uid_next
dsync-proxy-server-cmd.c | 231 | dsync-proxy-server-cmd.c | 240 | dsync_box.uid_validity
dsync-proxy-server-cmd.c | 232 | dsync-proxy-server-cmd.c | 237 | error

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_box_delete (244 to 262 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 260 | Pointer not checked for null before use : dsync_box.cache_fields.v_modifiable | CERT EXP08-C,EXP34-C
| 257 |  |
M | 260 | Pointer not checked for null before use : dsync_box.cache_fields.v | CERT EXP08-C,EXP34-C
| 257 |  |
M | 260 | Pointer not checked for null before use : dsync_box.cache_fields.arr.buffer | CERT EXP08-C,EXP34-C
| 257 |  |
M | 260 | Pointer not checked for null before use : dsync_box.name | CERT EXP08-C,EXP34-C
| 257 |  |
M | 247 | Procedure contains UR data flow anomalies. : guid.guid | CERT EXP33-C
| 258 |  |
M | 247 | Declaration types do not match across a system. : guid | CERT ARR31-C

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 247 | dsync-proxy-server-cmd.c | 258 | guid.guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_dir_delete (264 to 277 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 275 | Pointer not checked for null before use : dsync_box.cache_fields.v_modifiable | CERT EXP08-C,EXP34-C
| 272 |  |
M | 275 | Pointer not checked for null before use : dsync_box.cache_fields.v | CERT EXP08-C,EXP34-C
| 272 |  |
M | 275 | Pointer not checked for null before use : dsync_box.cache_fields.arr.buffer | CERT EXP08-C,EXP34-C
| 272 |  |
M | 275 | Pointer not checked for null before use : dsync_box.name | CERT EXP08-C,EXP34-C
| 273 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_box_rename (279 to 297 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 295 | Pointer not checked for null before use : dsync_box.cache_fields.v_modifiable | CERT EXP08-C,EXP34-C
| 292 |  |
M | 295 | Pointer not checked for null before use : dsync_box.cache_fields.v | CERT EXP08-C,EXP34-C
| 292 |  |
M | 295 | Pointer not checked for null before use : dsync_box.cache_fields.arr.buffer | CERT EXP08-C,EXP34-C
| 292 |  |
M | 295 | Pointer not checked for null before use : dsync_box.name | CERT EXP08-C,EXP34-C
| 293 |  |
M | 282 | Procedure contains UR data flow anomalies. : guid.guid | CERT EXP33-C
| 295 |  |
M | 282 | Declaration types do not match across a system. : guid | CERT ARR31-C

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 282 | dsync-proxy-server-cmd.c | 295 | guid.guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_box_update (299 to 313 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.arr.buffer | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.arr.element_size | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.v | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.cache_fields.v_modifiable | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.flags | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.highest_modseq | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.last_change | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.mailbox_guid.guid | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.name | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.name_sep | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.name_sha1.guid | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.uid_next | CERT EXP33-C
| 311 |  |
M | 302 | Procedure contains UR data flow anomalies. : dsync_box.uid_validity | CERT EXP33-C
| 311 |  |
M | 303 | Procedure contains UR data flow anomalies. : error | CERT EXP33-C
| 308 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.cache_fields.arr.buffer
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.cache_fields.arr.element_size
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.cache_fields.v
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.cache_fields.v_modifiable
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.flags
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.highest_modseq
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.last_change
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.mailbox_guid.guid
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.name
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.name_sep
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.name_sha1.guid
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.uid_next
dsync-proxy-server-cmd.c | 302 | dsync-proxy-server-cmd.c | 311 | dsync_box.uid_validity
dsync-proxy-server-cmd.c | 303 | dsync-proxy-server-cmd.c | 308 | error

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_box_select (315 to 335 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 329 | Pointer not checked for null before use : args | CERT EXP08-C,EXP34-C
| 327 |  |
M | 333 | Pointer not checked for null before use : box.cache_fields.v_modifiable | CERT EXP08-C,EXP34-C
| 321 |  |
M | 333 | Pointer not checked for null before use : box.cache_fields.v | CERT EXP08-C,EXP34-C
| 321 |  |
M | 333 | Pointer not checked for null before use : box.cache_fields.arr.buffer | CERT EXP08-C,EXP34-C
| 321 |  |
M | 333 | Pointer not checked for null before use : box.name | CERT EXP08-C,EXP34-C
| 321 |  |
M | 332 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 330 |  |
M | 332 | Pointer not checked for null before use : (arr)->element_size | CERT EXP08-C,EXP34-C
| 330 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_msg_update (337 to 355 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 353 | Pointer not checked for null before use : msg.keywords | CERT EXP08-C,EXP34-C
| 346 |  |
M | 353 | Pointer not checked for null before use : msg.guid | CERT EXP08-C,EXP34-C
| 346 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

copy_callback (379 to 388 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 387 | Pointer not checked for null before use : reply | CERT EXP08-C,EXP34-C
| 386 |  |
M | 381 | Declaration types do not match across a system. : server | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_msg_copy (390 to 417 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 396 | Procedure contains UR data flow anomalies. : error | CERT EXP33-C
| 410 |  |
M | 395 | Procedure contains UR data flow anomalies. : msg.flags | CERT EXP33-C
| 413 |  |
M | 395 | Procedure contains UR data flow anomalies. : msg.guid | CERT EXP33-C
| 413 |  |
M | 395 | Procedure contains UR data flow anomalies. : msg.keywords | CERT EXP33-C
| 413 |  |
M | 395 | Procedure contains UR data flow anomalies. : msg.modseq | CERT EXP33-C
| 413 |  |
M | 395 | Procedure contains UR data flow anomalies. : msg.save_date | CERT EXP33-C
| 413 |  |
M | 395 | Procedure contains UR data flow anomalies. : msg.uid | CERT EXP33-C
| 413 |  |
M | 393 | Procedure contains UR data flow anomalies. : src_mailbox_guid.guid | CERT EXP33-C
| 413 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 396 | dsync-proxy-server-cmd.c | 410 | error
dsync-proxy-server-cmd.c | 395 | dsync-proxy-server-cmd.c | 413 | msg.flags
dsync-proxy-server-cmd.c | 395 | dsync-proxy-server-cmd.c | 413 | msg.guid
dsync-proxy-server-cmd.c | 395 | dsync-proxy-server-cmd.c | 413 | msg.keywords
dsync-proxy-server-cmd.c | 395 | dsync-proxy-server-cmd.c | 413 | msg.modseq
dsync-proxy-server-cmd.c | 395 | dsync-proxy-server-cmd.c | 413 | msg.save_date
dsync-proxy-server-cmd.c | 395 | dsync-proxy-server-cmd.c | 413 | msg.uid
dsync-proxy-server-cmd.c | 393 | dsync-proxy-server-cmd.c | 413 | src_mailbox_guid.guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_msg_save (419 to 448 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 442 | Pointer not checked for null before use : data.input | CERT EXP08-C,EXP34-C
| 432 |  |
M | 423 | Procedure contains UR data flow anomalies. : data.pop3_uidl | CERT EXP33-C
| 442 |  |
M | 423 | Procedure contains UR data flow anomalies. : data.received_date | CERT EXP33-C
| 442 |  |
M | 424 | Procedure contains UR data flow anomalies. : error | CERT EXP33-C
| 429 |  |
M | 422 | Procedure contains UR data flow anomalies. : msg.flags | CERT EXP33-C
| 442 |  |
M | 422 | Procedure contains UR data flow anomalies. : msg.guid | CERT EXP33-C
| 442 |  |
M | 422 | Procedure contains UR data flow anomalies. : msg.keywords | CERT EXP33-C
| 442 |  |
M | 422 | Procedure contains UR data flow anomalies. : msg.modseq | CERT EXP33-C
| 442 |  |
M | 422 | Procedure contains UR data flow anomalies. : msg.save_date | CERT EXP33-C
| 442 |  |
M | 422 | Procedure contains UR data flow anomalies. : msg.uid | CERT EXP33-C
| 442 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 423 | dsync-proxy-server-cmd.c | 442 | data.pop3_uidl
dsync-proxy-server-cmd.c | 423 | dsync-proxy-server-cmd.c | 442 | data.received_date
dsync-proxy-server-cmd.c | 424 | dsync-proxy-server-cmd.c | 429 | error
dsync-proxy-server-cmd.c | 422 | dsync-proxy-server-cmd.c | 442 | msg.flags
dsync-proxy-server-cmd.c | 422 | dsync-proxy-server-cmd.c | 442 | msg.guid
dsync-proxy-server-cmd.c | 422 | dsync-proxy-server-cmd.c | 442 | msg.keywords
dsync-proxy-server-cmd.c | 422 | dsync-proxy-server-cmd.c | 442 | msg.modseq
dsync-proxy-server-cmd.c | 422 | dsync-proxy-server-cmd.c | 442 | msg.save_date
dsync-proxy-server-cmd.c | 422 | dsync-proxy-server-cmd.c | 442 | msg.uid

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_msg_get_send_more (450 to 474 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 452 | Procedure contains UR data flow anomalies. : data | CERT EXP33-C
| 457 |  |
M | 453 | Procedure contains UR data flow anomalies. : size | CERT EXP33-C
| 457 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 452 | dsync-proxy-server-cmd.c | 457 | data
dsync-proxy-server-cmd.c | 453 | dsync-proxy-server-cmd.c | 457 | size

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_msg_get_callback (476 to 505 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 497 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 496 |  |
M | 480 | Declaration types do not match across a system. : server | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_msg_get (507 to 537 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 510 | Procedure contains UR data flow anomalies. : mailbox_guid.guid | CERT EXP33-C
| 530 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy-server-cmd.c | 510 | dsync-proxy-server-cmd.c | 530 | mailbox_guid.guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

cmd_finish_callback (539 to 553 dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 541 | Declaration types do not match across a system. : server | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

proxy_server_input_line (63 to 96 dsync-proxy-server.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 85 | Pointer not checked for null before use : args | CERT EXP08-C,EXP34-C
| 84 |  |
M | 93 | Pointer not checked for null before use : cmd_args | CERT EXP08-C,EXP34-C
| 87 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_server_init (159 to 181 dsync-proxy-server.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 180 | Local structure returned in function result : server |
M | 165 | Pointer not checked for null before use : server | CERT EXP08-C,EXP34-C
| 164 |  |
M | 164 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 319) |  |
M | 162 | Declaration types do not match across a system. : server | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_server_deinit (183 to 203 dsync-proxy-server.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 185 | Declaration types do not match across a system. : server | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_strings_export (16 to 30 dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 28 | Pointer not checked for null before use : fields | CERT EXP08-C,EXP34-C
| 25 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_msg_parse_flags (44 to 70 dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 56 | Pointer not checked for null before use : kw | CERT EXP08-C,EXP34-C
| 55 |  |
M | 53 | Pointer not checked for null before use : args | CERT EXP08-C,EXP34-C
| 53 |  |
M | 56 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 52 |  |
M | 56 | Pointer not checked for null before use : (arr)->element_size | CERT EXP08-C,EXP34-C
| 52 |  |
M | 47 | Procedure contains UR data flow anomalies. : keywords.arr.buffer | CERT EXP33-C
| 52 |  |
M | 47 | Procedure contains UR data flow anomalies. : keywords.arr.element_size | CERT EXP33-C
| 52 |  |
M | 47 | Procedure contains UR data flow anomalies. : keywords.v | CERT EXP33-C
| 52 |  |
M | 47 | Procedure contains UR data flow anomalies. : keywords.v_modifiable | CERT EXP33-C
| 52 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-proxy.c | 47 | dsync-proxy.c | 52 | keywords.arr.buffer
dsync-proxy.c | 47 | dsync-proxy.c | 52 | keywords.arr.element_size
dsync-proxy.c | 47 | dsync-proxy.c | 52 | keywords.v
dsync-proxy.c | 47 | dsync-proxy.c | 52 | keywords.v_modifiable

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_msg_import_unescaped (72 to 92 dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 83 | Pointer not checked for null before use : msg_r | CERT EXP08-C,EXP34-C
| 82 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_msg_static_import_unescaped (119 to 134 dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 131 | Pointer not checked for null before use : msg_r | CERT EXP08-C,EXP34-C
| 130 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_mailbox_import_unescaped (181 to 255 dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 207 | Pointer not checked for null before use : p | CERT EXP08-C,EXP34-C
| 206 |  |
M | 212 | Pointer not checked for null before use : p | CERT EXP08-C,EXP34-C
| 211 |  |
M | 252 | Pointer not checked for null before use : field_name | CERT EXP08-C,EXP34-C
| 251 |  |
M | 251 | Pointer not checked for null before use : args | CERT EXP08-C,EXP34-C
| 247 |  |
M | 197 | Pointer not checked for null before use : box_r | CERT EXP08-C,EXP34-C
| 188 |  |
M | 241 | Pointer not checked for null before use : p | CERT EXP08-C,EXP34-C
| 235 |  |
M | 252 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 249 |  |
M | 252 | Pointer not checked for null before use : (arr)->element_size | CERT EXP08-C,EXP34-C
| 249 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_mailbox_import (257 to 273 dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 268 | Pointer not checked for null before use : args | CERT EXP08-C,EXP34-C
| 267 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_mailbox_guid_import (281 to 291 dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 285 | Sizeof argument is a pointer. | CERT EXP01-C
M | 287 | Sizeof argument is a pointer. | CERT EXP01-C
M | 289 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

mailbox_guid_cmp (110 to 115 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 114 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

mailbox_guid_hash (117 to 131 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 123 | Sizeof argument is a pointer. | CERT EXP01-C
M | 119 | Declaration types do not match across a system. : guid | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_drop_extra_namespaces (133 to 166 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 147 | Pointer not checked for null before use : ns_unset | CERT EXP08-C,EXP34-C
| 143 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_worker_init_local (168 to 187 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 177 | Pointer not checked for null before use : pool | CERT EXP08-C,EXP34-C
| 176 |  |
M | 178 | Pointer not checked for null before use : worker | CERT EXP08-C,EXP34-C
| 177 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_worker_save_mailbox_change (217 to 247 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 228 | Sizeof argument is a pointer. | CERT EXP01-C
M | 228 | Pointer not checked for null before use : change | CERT EXP08-C,EXP34-C
| 227 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_worker_save_dir_change (249 to 294 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 263 | Pointer not checked for null before use : new_change.list | CERT EXP08-C,EXP34-C
| 258 |  |
M | 266 | Pointer not checked for null before use : change | CERT EXP08-C,EXP34-C
| 265 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_worker_get_list_mailbox_log (296 to 320 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 305 | Pointer not checked for null before use : log | CERT EXP08-C,EXP34-C
| 304 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

mailbox_log_record_hash (322 to 330 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 324 | Declaration types do not match across a system. : guid | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_mailbox_iter_init (381 to 402 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 394 | Pointer not checked for null before use : iter | CERT EXP08-C,EXP34-C
| 393 |  |
M | 393 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 321) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_dsync_worker_add_mailbox (404 to 418 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 414 | Sizeof argument is a pointer. | CERT EXP01-C
M | 413 | Pointer not checked for null before use : lbox | CERT EXP08-C,EXP34-C
| 412 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

iter_next_deleted (420 to 464 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 425 | Procedure contains UR data flow anomalies. : key | CERT EXP33-C
| 431 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 425 | dsync-worker-local.c | 431 | key

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_mailbox_iter_next (466 to 556 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 537 | Sizeof argument is a pointer. | CERT EXP01-C
M | 496 | Pointer not checked for null before use : storage_name | CERT EXP08-C,EXP34-C
| 495 |  |
M | 501 | Pointer not checked for null before use : change_lookup.list | CERT EXP08-C,EXP34-C
| 499 |  |
M | 517 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 516 |  |
M | 522 | Pointer not checked for null before use : storage | CERT EXP08-C,EXP34-C
| 519 |  |
M | 549 | Pointer not checked for null before use : field_name | CERT EXP08-C,EXP34-C
| 547 |  |
M | 490 | Pointer not checked for null before use : dsync_box_r | CERT EXP08-C,EXP34-C
| 486 |  |
M | 492 | Pointer not checked for null before use : dsync_box_r | CERT EXP08-C,EXP34-C
| 486 |  |
M | 547 | Pointer not checked for null before use : fields | CERT EXP08-C,EXP34-C
| 544 |  |
M | 549 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 545 |  |
M | 549 | Pointer not checked for null before use : (arr)->element_size | CERT EXP08-C,EXP34-C
| 545 |  |
M | 482 | Procedure contains UR data flow anomalies. : change_lookup.deleted_dir | CERT EXP33-C
| 501 |  |
M | 482 | Procedure contains UR data flow anomalies. : change_lookup.last_delete | CERT EXP33-C
| 501 |  |
M | 482 | Procedure contains UR data flow anomalies. : change_lookup.last_rename | CERT EXP33-C
| 501 |  |
M | 482 | Procedure contains UR data flow anomalies. : change_lookup.last_subs_change | CERT EXP33-C
| 501 |  |
M | 482 | Procedure contains UR data flow anomalies. : change_lookup.unsubscribed | CERT EXP33-C
| 501 |  |
M | 480 | Procedure contains UR data flow anomalies. : mailbox_guid | CERT EXP33-C
| 518 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.first_unseen_seq | CERT EXP33-C
| 528 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.highest_modseq | CERT EXP33-C
| 528 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.keywords | CERT EXP33-C
| 528 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.messages | CERT EXP33-C
| 528 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.nonpermanent_modseqs | CERT EXP33-C
| 528 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.recent | CERT EXP33-C
| 528 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.uidnext | CERT EXP33-C
| 528 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.uidvalidity | CERT EXP33-C
| 528 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.unseen | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
| 528 |  |
M | 479 | Procedure contains UR data flow anomalies. : status.virtual_size | CERT EXP33-C
| 528 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 482 | dsync-worker-local.c | 501 | change_lookup.deleted_dir
dsync-worker-local.c | 482 | dsync-worker-local.c | 501 | change_lookup.last_delete
dsync-worker-local.c | 482 | dsync-worker-local.c | 501 | change_lookup.last_rename
dsync-worker-local.c | 482 | dsync-worker-local.c | 501 | change_lookup.last_subs_change
dsync-worker-local.c | 482 | dsync-worker-local.c | 501 | change_lookup.unsubscribed
dsync-worker-local.c | 480 | dsync-worker-local.c | 518 | mailbox_guid
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.first_unseen_seq
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.highest_modseq
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.keywords
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.messages
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.nonpermanent_modseqs
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.recent
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.uidnext
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.uidvalidity
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.unseen
dsync-worker-local.c | 479 | dsync-worker-local.c | 528 | status.virtual_size

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_subs_iter_init (572 to 592 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 585 | Pointer not checked for null before use : iter | CERT EXP08-C,EXP34-C
| 584 |  |
M | 584 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 321) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_subs_iter_next (594 to 628 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 613 | Pointer not checked for null before use : storage_name | CERT EXP08-C,EXP34-C
| 612 |  |
M | 616 | Pointer not checked for null before use : change_lookup.list | CERT EXP08-C,EXP34-C
| 614 |  |
M | 622 | Pointer not checked for null before use : rec_r | CERT EXP08-C,EXP34-C
| 606 |  |
M | 602 | Procedure contains UR data flow anomalies. : change_lookup.deleted_dir | CERT EXP33-C
| 616 |  |
M | 602 | Procedure contains UR data flow anomalies. : change_lookup.last_delete | CERT EXP33-C
| 616 |  |
M | 602 | Procedure contains UR data flow anomalies. : change_lookup.last_rename | CERT EXP33-C
| 616 |  |
M | 602 | Procedure contains UR data flow anomalies. : change_lookup.last_subs_change | CERT EXP33-C
| 616 |  |
M | 602 | Procedure contains UR data flow anomalies. : change_lookup.name_sha1.guid | CERT EXP33-C
| 613 |  |
M | 602 | Procedure contains UR data flow anomalies. : change_lookup.unsubscribed | CERT EXP33-C
| 616 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 602 | dsync-worker-local.c | 616 | change_lookup.deleted_dir
dsync-worker-local.c | 602 | dsync-worker-local.c | 616 | change_lookup.last_delete
dsync-worker-local.c | 602 | dsync-worker-local.c | 616 | change_lookup.last_rename
dsync-worker-local.c | 602 | dsync-worker-local.c | 616 | change_lookup.last_subs_change
dsync-worker-local.c | 602 | dsync-worker-local.c | 613 | change_lookup.name_sha1.guid
dsync-worker-local.c | 602 | dsync-worker-local.c | 616 | change_lookup.unsubscribed

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_subs_iter_next_un (630 to 660 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 652 | Pointer not checked for null before use : rec_r | CERT EXP08-C,EXP34-C
| 651 |  |
M | 653 | Pointer not checked for null before use : ns | CERT EXP08-C,EXP34-C
| 649 |  |
M | 638 | Procedure contains UR data flow anomalies. : key | CERT EXP33-C
| 644 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 638 | dsync-worker-local.c | 644 | key

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_set_subscribed (675 to 698 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 685 | Pointer not checked for null before use : storage_name | CERT EXP08-C,EXP34-C
| 684 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_mailbox_open (700 to 736 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 727 | Sizeof argument is a pointer. | CERT EXP01-C
M | 717 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 716 |  |
M | 722 | Pointer not checked for null before use : storage | CERT EXP08-C,EXP34-C
| 719 |  |
M | 707 | Procedure contains UR data flow anomalies. : mailbox_guid | CERT EXP33-C
| 718 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 707 | dsync-worker-local.c | 718 | mailbox_guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

iter_local_mailbox_open (738 to 768 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 761 | Pointer not checked for null before use : search_args | CERT EXP08-C,EXP34-C
| 760 |  |
M | 764 | Pointer not checked for null before use : trans | CERT EXP08-C,EXP34-C
| 763 |  |
M | 743 | Procedure contains UR data flow anomalies. : box | CERT EXP33-C
| 753 |  |
M | 742 | Declaration types do not match across a system. : guid | CERT ARR31-C

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 743 | dsync-worker-local.c | 753 | box

[ | Top of Report | | | Procedure Table | | | Contents | ]

iter_local_mailbox_close (770 to 788 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 783 | Pointer not checked for null before use : storage | CERT EXP08-C,EXP34-C
| 779 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_msg_iter_init (790 to 811 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 804 | Sizeof argument is a pointer. | CERT EXP01-C
M | 799 | Pointer not checked for null before use : iter | CERT EXP08-C,EXP34-C
| 798 |  |
M | 798 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 321) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

iter_local_mailbox_next_expunge (813 to 859 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 829 | Pointer not checked for null before use : expunges | CERT EXP08-C,EXP34-C
| 823 |  |
M | 832 | Pointer not checked for null before use : msg_r | CERT EXP08-C,EXP34-C
| 827 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.cache_fields | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.first_unseen_seq | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.highest_modseq | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.keywords | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.messages | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.nonpermanent_modseqs | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.recent | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.uidnext | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.uidvalidity | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.unseen | CERT EXP33-C
| 843 |  |
M | 818 | Procedure contains UR data flow anomalies. : status.virtual_size | CERT EXP33-C
| 843 |  |
M | 850 | Procedure contains UR data flow anomalies. : uids_filter.arr.buffer | CERT EXP33-C
| 853 |  |
M | 850 | Procedure contains UR data flow anomalies. : uids_filter.arr.element_size | CERT EXP33-C
| 853 |  |
M | 850 | Procedure contains UR data flow anomalies. : uids_filter.v | CERT EXP33-C
| 853 |  |
M | 850 | Procedure contains UR data flow anomalies. : uids_filter.v_modifiable | CERT EXP33-C
| 853 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.cache_fields
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.first_unseen_seq
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.highest_modseq
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.keywords
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.messages
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.nonpermanent_modseqs
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.recent
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.uidnext
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.uidvalidity
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.unseen
dsync-worker-local.c | 818 | dsync-worker-local.c | 843 | status.virtual_size
dsync-worker-local.c | 850 | dsync-worker-local.c | 853 | uids_filter.arr.buffer
dsync-worker-local.c | 850 | dsync-worker-local.c | 853 | uids_filter.arr.element_size
dsync-worker-local.c | 850 | dsync-worker-local.c | 853 | uids_filter.v
dsync-worker-local.c | 850 | dsync-worker-local.c | 853 | uids_filter.v_modifiable

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_msg_iter_next (861 to 908 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 894 | Pointer not checked for null before use : storage | CERT EXP08-C,EXP34-C
| 890 |  |
M | 902 | Pointer not checked for null before use : msg_r | CERT EXP08-C,EXP34-C
| 901 |  |
M | 868 | Procedure contains UR data flow anomalies. : guid | CERT EXP33-C
| 888 |  |
M | 868 | Declaration types do not match across a system. : guid | CERT ARR31-C

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 868 | dsync-worker-local.c | 888 | guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_msg_iter_deinit (910 to 924 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 921 | free parameter is not heap item. | CERT MEM34-C
M | 922 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| 921 |  |
M | 922 | Attempt to read from freed memory. : default_pool | CERT MEM30-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_copy_mailbox_update (926 to 936 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 931 | Sizeof argument is a pointer. | CERT EXP01-C
M | 931 | Pointer not checked for null before use : update_r | CERT EXP08-C,EXP34-C
| 930 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

mailbox_name_convert (938 to 952 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 945 | Pointer not checked for null before use : dest_name | CERT EXP08-C,EXP34-C
| 944 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

mailbox_name_cleanup (954 to 966 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 960 | Pointer not checked for null before use : output | CERT EXP08-C,EXP34-C
| 959 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

mailbox_name_force_cleanup (968 to 978 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 973 | Pointer not checked for null before use : output | CERT EXP08-C,EXP34-C
| 972 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_convert_mailbox_name (980 to 1006 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 998 | Pointer not checked for null before use : name | CERT EXP08-C,EXP34-C
| 995 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_mailbox_alloc (1008 to 1035 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1024 | Pointer not checked for null before use : name | CERT EXP08-C,EXP34-C
| 1023 |  |
M | 1032 | Pointer not checked for null before use : name | CERT EXP08-C,EXP34-C
| 1030 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_create_allocated_mailbox (1037 to 1070 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1061 | Pointer not checked for null before use : errstr | CERT EXP08-C,EXP34-C
| 1049 |  |
M | 1044 | Procedure contains UR data flow anomalies. : error | CERT EXP33-C
| 1049 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 1044 | dsync-worker-local.c | 1049 | error

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_create_mailbox (1072 to 1108 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1103 | Pointer not checked for null before use : ns | CERT EXP08-C,EXP34-C
| 1100 |  |
M | 1103 | Pointer not checked for null before use : new_name | CERT EXP08-C,EXP34-C
| 1097 |  |
M | 1106 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 1105 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_delete_mailbox (1110 to 1140 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1131 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 1130 |  |
M | 1135 | Pointer not checked for null before use : storage | CERT EXP08-C,EXP34-C
| 1132 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_delete_dir (1142 to 1161 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1152 | Pointer not checked for null before use : storage_name | CERT EXP08-C,EXP34-C
| 1151 |  |
M | 1154 | Pointer not checked for null before use : ns | CERT EXP08-C,EXP34-C
| 1152 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_rename_mailbox (1163 to 1207 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1186 | Pointer not checked for null before use : newname | CERT EXP08-C,EXP34-C
| 1184 |  |
M | 1195 | Pointer not checked for null before use : new_box | CERT EXP08-C,EXP34-C
| 1194 |  |
M | 1199 | Pointer not checked for null before use : storage | CERT EXP08-C,EXP34-C
| 1196 |  |
M | 1192 | Pointer not checked for null before use : list | CERT EXP08-C,EXP34-C
| 1183 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

has_expected_save_uids (1209 to 1225 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1216 | Procedure contains UR data flow anomalies. : expected_count | CERT EXP33-C
| 1224 |  |
M | 1213 | Procedure contains UR data flow anomalies. : iter.array | CERT EXP33-C
| 1219 |  |
M | 1213 | Procedure contains UR data flow anomalies. : iter.prev_idx | CERT EXP33-C
| 1219 |  |
M | 1213 | Procedure contains UR data flow anomalies. : iter.prev_n | CERT EXP33-C
| 1219 |  |
M | 1215 | Procedure contains UR data flow anomalies. : uid | CERT EXP33-C
| 1220 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 1216 | dsync-worker-local.c | 1224 | expected_count
dsync-worker-local.c | 1213 | dsync-worker-local.c | 1219 | iter.array
dsync-worker-local.c | 1213 | dsync-worker-local.c | 1219 | iter.prev_idx
dsync-worker-local.c | 1213 | dsync-worker-local.c | 1219 | iter.prev_n
dsync-worker-local.c | 1215 | dsync-worker-local.c | 1220 | uid

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_mailbox_close (1227 to 1262 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1234 | Sizeof argument is a pointer. | CERT EXP01-C
M | 1230 | Procedure contains UR data flow anomalies. : changes.ignored_modseq_changes | CERT EXP33-C
| 1250 |  |
M | 1230 | Procedure contains UR data flow anomalies. : changes.ignored_uid_changes | CERT EXP33-C
| 1249 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 1230 | dsync-worker-local.c | 1250 | changes.ignored_modseq_changes
dsync-worker-local.c | 1230 | dsync-worker-local.c | 1249 | changes.ignored_uid_changes

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_set_cache_fields (1301 to 1316 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1311 | Pointer not checked for null before use : fields | CERT EXP08-C,EXP34-C
| 1309 |  |
M | 1314 | Pointer not checked for null before use : new_fields | CERT EXP08-C,EXP34-C
| 1311 |  |
M | 1315 | Pointer not checked for null before use : update.cache_fields | CERT EXP08-C,EXP34-C
| 1314 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_select_mailbox (1318 to 1349 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1347 | Pointer not checked for null before use : trans | CERT EXP08-C,EXP34-C
| 1346 |  |
M | 1348 | Pointer not checked for null before use : ext_trans | CERT EXP08-C,EXP34-C
| 1343 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_msg_update_metadata (1351 to 1375 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1371 | Pointer not checked for null before use : keywords | CERT EXP08-C,EXP34-C
| 1369 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_msg_save_set_metadata (1399 to 1422 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1414 | Pointer not checked for null before use : keywords | CERT EXP08-C,EXP34-C
| 1412 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_msg_copy (1424 to 1459 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1444 | Pointer not checked for null before use : src_trans | CERT EXP08-C,EXP34-C
| 1443 |  |
M | 1449 | Pointer not checked for null before use : save_ctx | CERT EXP08-C,EXP34-C
| 1448 |  |
M | 1443 | Pointer not checked for null before use : src_box | CERT EXP08-C,EXP34-C
| 1438 |  |
M | 1432 | Procedure contains UR data flow anomalies. : src_box | CERT EXP33-C
| 1438 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 1432 | dsync-worker-local.c | 1438 | src_box

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_msg_save (1509 to 1537 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1521 | Pointer not checked for null before use : save_ctx | CERT EXP08-C,EXP34-C
| 1520 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_msg_box_close (1559 to 1574 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1573 | Sizeof argument is a pointer. | CERT EXP01-C
M | 1571 | Pointer not checked for null before use : trans | CERT EXP08-C,EXP34-C
| 1568 |  |
M | 1572 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 1567 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

local_worker_msg_get (1576 to 1623 dsync-worker-local.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 1598 | Pointer not checked for null before use : trans | CERT EXP08-C,EXP34-C
| 1597 |  |
M | 1607 | Pointer not checked for null before use : data.pop3_uidl | CERT EXP08-C,EXP34-C
| 1606 |  |
M | 1618 | Pointer not checked for null before use : data.input | CERT EXP08-C,EXP34-C
| 1617 |  |
M | 1610 | Pointer not checked for null before use : data.input | CERT EXP08-C,EXP34-C
| 1606 |  |
M | 1617 | Pointer not checked for null before use : data.input | CERT EXP08-C,EXP34-C
| 1606 |  |
M | 1585 | Procedure contains UR data flow anomalies. : box | CERT EXP33-C
| 1591 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync-worker-local.c | 1585 | dsync-worker-local.c | 1591 | box

[ | Top of Report | | | Procedure Table | | | Contents | ]

run_cmd (21 to 56 dsync.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 46 | Pointer not checked for null before use : args | CERT EXP08-C,EXP34-C
| 45 |  |
M | 24 | Procedure contains UR data flow anomalies. : fd_in | CERT EXP33-C
| 26 |  |
M | 24 | Procedure contains UR data flow anomalies. : fd_out | CERT EXP33-C
| 26 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
dsync.c | 24 | dsync.c | 26 | fd_in
dsync.c | 24 | dsync.c | 26 | fd_out

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_connected (69 to 73 dsync.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 69 | Procedure not called in code analysed : dsync_connected |

[ | Top of Report | | | Procedure Table | | | Contents | ]

main (75 to 250 dsync.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 184 | Pointer not checked for null before use : set_line | CERT EXP08-C,EXP34-C
| 180 |  |
M | 193 | Pointer not checked for null before use : worker2 | CERT EXP08-C,EXP34-C
| 190 |  |
M | 196 | Pointer not checked for null before use : brain | CERT EXP08-C,EXP34-C
| 193 |  |
M | 214 | Pointer not checked for null before use : worker2 | CERT EXP08-C,EXP34-C
| 213 |  |
M | 217 | Pointer not checked for null before use : brain | CERT EXP08-C,EXP34-C
| 214 |  |
M | 230 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| 227 |  |
M | 175 | Attempt to read from freed memory. : default_pool | CERT MEM30-C
M | 234 | Pointer not checked for null before use : worker2 | CERT EXP08-C,EXP34-C
| 203 |  |
M | 193 | Pointer not checked for null before use : worker1 | CERT EXP08-C,EXP34-C
| 175 |  |
M | 201 | Pointer not checked for null before use : worker1 | CERT EXP08-C,EXP34-C
| 175 |  |
M | 156 | Pointer not checked for null before use : username | CERT EXP08-C,EXP34-C
| 97 |  |
M | 193 | Pointer not checked for null before use : mailbox | CERT EXP08-C,EXP34-C
| 111 |  |
M | 214 | Pointer not checked for null before use : mailbox | CERT EXP08-C,EXP34-C
| 111 |  |
M | 202 | Procedure contains UR data flow anomalies. : (default_pool)->v | CERT EXP33-C
M | 86 | Procedure contains UR data flow anomalies. : error | CERT EXP33-C
| 160 |  |
M | 84 | Procedure contains UR data flow anomalies. : mail_user2 | CERT EXP33-C
| 186 |  |
M | 195 | Procedure contains UR data flow anomalies. : server | CERT EXP33-C
| 19 |  |
M | 216 | Procedure contains UR data flow anomalies. : server | CERT EXP33-C
| 19 |  |
M | 82 | Procedure contains UR data flow anomalies. : service_user | CERT EXP33-C
| 160 |  |
M | 203 | Procedure contains UR data flow anomalies. : worker2 | CERT EXP33-C
| 85 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
[external declaration] |  | dsync.c | 202 | (default_pool)->v
dsync.c | 86 | dsync.c | 160 | error
dsync.c | 84 | dsync.c | 186 | mail_user2
dsync.c | 84 | dsync.c | 190 | mail_user2
dsync.c | 195 | dsync.c | 229 | server
dsync.c | 216 | dsync.c | 229 | server
dsync.c | 82 | dsync.c | 160 | service_user
dsync.c | 203 | dsync.c | 233 | worker2
dsync.c | 203 | dsync.c | 234 | worker2

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_fail (26 to 26 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 26 | Procedure not called in code analysed : dsync_brain_fail |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_new_msgs (27 to 27 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 27 | Procedure not called in code analysed : dsync_brain_msg_sync_new_msgs |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_box_find (29 to 40 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 37 | Local structure returned in function result : boxes |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_box_has_guid (42 to 51 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 49 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_box_add (53 to 93 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 92 | Local structure returned in function result : tbox |
M | 62 | Pointer not checked for null before use : tbox | CERT EXP08-C,EXP34-C
| 61 |  |
M | 67 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 66 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_msg_add (95 to 130 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 112 | Pointer not checked for null before use : msg.keywords | CERT EXP08-C,EXP34-C
| 102 |  |
M | 117 | Pointer not checked for null before use : msg.keywords | CERT EXP08-C,EXP34-C
| 102 |  |
M | 124 | Pointer not checked for null before use : msg.keywords | CERT EXP08-C,EXP34-C
| 102 |  |
M | 112 | Pointer not checked for null before use : msg.guid | CERT EXP08-C,EXP34-C
| 103 |  |
M | 117 | Pointer not checked for null before use : msg.guid | CERT EXP08-C,EXP34-C
| 103 |  |
M | 124 | Pointer not checked for null before use : msg.guid | CERT EXP08-C,EXP34-C
| 103 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_msg_set_flags (162 to 203 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 166 | Procedure contains UR data flow anomalies. : guid_128_data | CERT EXP33-C
| 177 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-brain-msgs.c | 166 | test-dsync-brain-msgs.c | 177 | guid_128_data
test-dsync-brain-msgs.c | 166 | test-dsync-brain-msgs.c | 193 | guid_128_data

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_msg_set_keywords (205 to 248 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 216 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 215 |  |
M | 216 | Pointer not checked for null before use : (arr)->element_size | CERT EXP08-C,EXP34-C
| 215 |  |
M | 213 | Procedure contains UR data flow anomalies. : keywords.arr.buffer | CERT EXP33-C
| 215 |  |
M | 213 | Procedure contains UR data flow anomalies. : keywords.arr.element_size | CERT EXP33-C
| 215 |  |
M | 213 | Procedure contains UR data flow anomalies. : keywords.v | CERT EXP33-C
| 215 |  |
M | 213 | Procedure contains UR data flow anomalies. : keywords.v_modifiable | CERT EXP33-C
| 215 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-brain-msgs.c | 213 | test-dsync-brain-msgs.c | 215 | keywords.arr.buffer
test-dsync-brain-msgs.c | 213 | test-dsync-brain-msgs.c | 215 | keywords.arr.element_size
test-dsync-brain-msgs.c | 213 | test-dsync-brain-msgs.c | 215 | keywords.v
test-dsync-brain-msgs.c | 213 | test-dsync-brain-msgs.c | 215 | keywords.v_modifiable

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_sync_msgs (250 to 272 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 265 | Pointer not checked for null before use : test_msg.msg.keywords | CERT EXP08-C,EXP34-C
| 263 |  |
M | 265 | Pointer not checked for null before use : test_msg.msg.guid | CERT EXP08-C,EXP34-C
| 263 |  |
M | 260 | Pointer not checked for null before use : boxes | CERT EXP08-C,EXP34-C
| 258 |  |
M | 263 | Pointer not checked for null before use : msgs | CERT EXP08-C,EXP34-C
| 260 |  |
M | 256 | Procedure contains UR data flow anomalies. : box_count | CERT EXP33-C
| 259 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-brain-msgs.c | 256 | test-dsync-brain-msgs.c | 259 | box_count

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain_init (274 to 285 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 284 | Local structure returned in function result : brain |
M | 279 | Pointer not checked for null before use : brain | CERT EXP08-C,EXP34-C
| 278 |  |
M | 276 | Declaration types do not match across a system. : brain | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain_sync_init (287 to 305 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 301 | Pointer not checked for null before use : sync | CERT EXP08-C,EXP34-C
| 300 |  |
M | 302 | Pointer not checked for null before use : test_dest_worker | CERT EXP08-C,EXP34-C
| 300 |  |
M | 303 | Pointer not checked for null before use : test_src_worker | CERT EXP08-C,EXP34-C
| 300 |  |
M | 298 | Pointer not checked for null before use : tboxes | CERT EXP08-C,EXP34-C
| 295 |  |
M | 298 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 296 |  |
M | 298 | Pointer not checked for null before use : (arr)->element_size | CERT EXP08-C,EXP34-C
| 296 |  |
M | 290 | Procedure contains UR data flow anomalies. : brain_boxes.arr.buffer | CERT EXP33-C
| 300 |  |
M | 290 | Procedure contains UR data flow anomalies. : brain_boxes.arr.element_size | CERT EXP33-C
| 300 |  |
M | 290 | Procedure contains UR data flow anomalies. : brain_boxes.v | CERT EXP33-C
| 300 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-brain-msgs.c | 290 | test-dsync-brain-msgs.c | 300 | brain_boxes.arr.buffer
test-dsync-brain-msgs.c | 290 | test-dsync-brain-msgs.c | 300 | brain_boxes.arr.element_size
test-dsync-brain-msgs.c | 290 | test-dsync-brain-msgs.c | 300 | brain_boxes.v

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain_msg_sync_box_multi (307 to 351 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 320 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 319 |  |
M | 322 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 321 |  |
M | 323 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 322 |  |
M | 325 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 324 |  |
M | 327 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 326 |  |
M | 338 | Pointer not checked for null before use : sync | CERT EXP08-C,EXP34-C
| 329 |  |
M | 311 | Procedure contains UR data flow anomalies. : msg_event.mailbox.guid | CERT EXP33-C
| 333 |  |
M | 311 | Procedure contains UR data flow anomalies. : msg_event.msg.flags | CERT EXP33-C
| 335 |  |
M | 311 | Procedure contains UR data flow anomalies. : msg_event.msg.uid | CERT EXP33-C
| 334 |  |
M | 311 | Procedure contains UR data flow anomalies. : msg_event.type | CERT EXP33-C
| 332 |  |
C | 307 | Procedure not called in code analysed : test_dsync_brain_msg_sync_box_multi |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-brain-msgs.c | 311 | test-dsync-brain-msgs.c | 333 | msg_event.mailbox.guid
test-dsync-brain-msgs.c | 311 | test-dsync-brain-msgs.c | 335 | msg_event.msg.flags
test-dsync-brain-msgs.c | 311 | test-dsync-brain-msgs.c | 334 | msg_event.msg.uid
test-dsync-brain-msgs.c | 311 | test-dsync-brain-msgs.c | 332 | msg_event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain_msg_sync_box (353 to 380 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 363 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 362 |  |
M | 365 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 364 |  |
M | 371 | Pointer not checked for null before use : sync | CERT EXP08-C,EXP34-C
| 367 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain_msg_sync_box_single (382 to 391 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 382 | Procedure not called in code analysed : test_dsync_brain_msg_sync_box_single |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain_msg_sync_existing (393 to 472 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 403 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 402 |  |
M | 404 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 403 |  |
M | 404 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 403 |  |
M | 405 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 404 |  |
M | 405 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 404 |  |
M | 406 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 405 |  |
M | 406 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 405 |  |
M | 407 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 406 |  |
M | 407 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 406 |  |
M | 408 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 407 |  |
M | 408 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 407 |  |
M | 414 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 411 |  |
M | 415 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 414 |  |
M | 420 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 419 |  |
M | 423 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 420 |  |
M | 424 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 423 |  |
M | 427 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 424 |  |
M | 427 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 424 |  |
M | 430 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 427 |  |
M | 430 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 427 |  |
M | 431 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 430 |  |
M | 432 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 431 |  |
M | 436 | Pointer not checked for null before use : sync | CERT EXP08-C,EXP34-C
| 435 |  |
M | 436 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 401 |  |
M | 436 | Pointer not checked for null before use : (arr)->element_size | CERT EXP08-C,EXP34-C
| 401 |  |

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 397 | Procedure contains UR data flow anomalies. : msg_event.msg.flags | CERT EXP33-C
| 442 |  |
M | 397 | Procedure contains UR data flow anomalies. : msg_event.msg.keywords | CERT EXP33-C
| 458 |  |
M | 397 | Procedure contains UR data flow anomalies. : msg_event.msg.uid | CERT EXP33-C
| 441 |  |
M | 397 | Procedure contains UR data flow anomalies. : msg_event.type | CERT EXP33-C
| 440 |  |
C | 393 | Procedure not called in code analysed : test_dsync_brain_msg_sync_existing |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-brain-msgs.c | 397 | test-dsync-brain-msgs.c | 442 | msg_event.msg.flags
test-dsync-brain-msgs.c | 397 | test-dsync-brain-msgs.c | 458 | msg_event.msg.keywords
test-dsync-brain-msgs.c | 397 | test-dsync-brain-msgs.c | 441 | msg_event.msg.uid
test-dsync-brain-msgs.c | 397 | test-dsync-brain-msgs.c | 440 | msg_event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain_msg_sync_expunges (474 to 528 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 486 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 483 |  |
M | 488 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 486 |  |
M | 488 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 486 |  |
M | 490 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 488 |  |
M | 490 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 488 |  |
M | 493 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 491 |  |
M | 493 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 491 |  |
M | 493 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 491 |  |
M | 496 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 494 |  |
M | 496 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 494 |  |
M | 496 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 494 |  |
M | 499 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 497 |  |
M | 499 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 497 |  |
M | 499 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 497 |  |
M | 502 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 500 |  |
M | 502 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 500 |  |
M | 502 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 500 |  |
M | 506 | Pointer not checked for null before use : sync | CERT EXP08-C,EXP34-C
| 505 |  |
M | 506 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 482 |  |
M | 506 | Pointer not checked for null before use : (arr)->element_size | CERT EXP08-C,EXP34-C
| 482 |  |
M | 478 | Procedure contains UR data flow anomalies. : msg_event.msg.uid | CERT EXP33-C
| 511 |  |
M | 478 | Procedure contains UR data flow anomalies. : msg_event.type | CERT EXP33-C
| 510 |  |
C | 474 | Procedure not called in code analysed : test_dsync_brain_msg_sync_expunges |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-brain-msgs.c | 478 | test-dsync-brain-msgs.c | 511 | msg_event.msg.uid
test-dsync-brain-msgs.c | 478 | test-dsync-brain-msgs.c | 510 | msg_event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain_msg_sync_uid_conflicts (530 to 613 test-dsync-brain-msgs.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 545 | Pointer not checked for null before use : box | CERT EXP08-C,EXP34-C
| 544 |  |
M | 546 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 545 |  |
M | 546 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 545 |  |
M | 549 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 546 |  |
M | 549 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 546 |  |
M | 551 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 549 |  |
M | 551 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 549 |  |
M | 553 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 551 |  |
M | 553 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 551 |  |
M | 556 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 553 |  |
M | 556 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 553 |  |
M | 557 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 556 |  |
M | 557 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 556 |  |
M | 561 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 558 |  |
M | 561 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 558 |  |
M | 561 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 558 |  |
M | 563 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 562 |  |
M | 563 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 562 |  |
M | 563 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 562 |  |
M | 566 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 563 |  |
M | 566 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 563 |  |
M | 568 | Pointer not checked for null before use : (box)->box.box.highest_modseq | CERT EXP08-C,EXP34-C
| 567 |  |
M | 568 | Pointer not checked for null before use : (box)->box.src.highest_modseq | CERT EXP08-C,EXP34-C
| 567 |  |
M | 568 | Pointer not checked for null before use : (box)->box.dest.highest_modseq | CERT EXP08-C,EXP34-C
| 567 |  |
M | 573 | Pointer not checked for null before use : sync | CERT EXP08-C,EXP34-C
| 571 |  |

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 530 | Procedure not called in code analysed : test_dsync_brain_msg_sync_uid_conflicts |

[ | Top of Report | | | Procedure Table | | | Contents | ]

master_service_stop (13 to 15 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 13 | Procedure not called in code analysed : master_service_stop |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_init (17 to 28 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 27 | Local structure returned in function result : sync |
M | 24 | Pointer not checked for null before use : sync | CERT EXP08-C,EXP34-C
| 23 |  |
M | 26 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 25 |  |
C | 17 | Procedure not called in code analysed : dsync_brain_msg_sync_init |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_more (29 to 29 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 29 | Procedure not called in code analysed : dsync_brain_msg_sync_more |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_deinit (31 to 35 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 31 | Procedure not called in code analysed : dsync_brain_msg_sync_deinit |

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_brain_msg_sync_resolve_uid_conflicts (37 to 37 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 37 | Procedure not called in code analysed : dsync_brain_msg_sync_resolve_uid_conflicts |

[ | Top of Report | | | Procedure Table | | | Contents | ]

mailboxes_set_guids (39 to 46 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 41 | Pointer not checked for null before use : boxes | CERT EXP08-C,EXP34-C
| 41 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_mailbox_create_equals (68 to 79 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 73 | Sizeof argument is a pointer. | CERT EXP01-C
M | 75 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_mailbox_delete_equals (81 to 88 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 85 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_mailbox_update (90 to 104 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 94 | Procedure contains UR data flow anomalies. : dest_event.type | CERT EXP33-C
| 98 |  |
M | 94 | Procedure contains UR data flow anomalies. : src_event.type | CERT EXP33-C
| 98 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-brain.c | 94 | test-dsync-brain.c | 98 | dest_event.type
test-dsync-brain.c | 94 | test-dsync-brain.c | 98 | src_event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain (113 to 221 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 152 | Pointer not checked for null before use : src_worker | CERT EXP08-C,EXP34-C
| 150 |  |
M | 153 | Pointer not checked for null before use : dest_worker | CERT EXP08-C,EXP34-C
| 151 |  |
M | 155 | Pointer not checked for null before use : NULL | CERT EXP08-C,EXP34-C
M | 156 | Pointer not checked for null before use : brain | CERT EXP08-C,EXP34-C
| 155 |  |
M | 159 | Pointer not checked for null before use : src_test_worker | CERT EXP08-C,EXP34-C
| 152 |  |
M | 160 | Pointer not checked for null before use : dest_test_worker | CERT EXP08-C,EXP34-C
| 153 |  |
M | 205 | Pointer not checked for null before use : brain_boxes | CERT EXP08-C,EXP34-C
| 194 |  |
M | 141 | Procedure contains UR data flow anomalies. : box_event.box.highest_modseq | CERT EXP33-C
| 178 |  |
M | 141 | Procedure contains UR data flow anomalies. : box_event.box.last_change | CERT EXP33-C
| 170 |  |
M | 141 | Procedure contains UR data flow anomalies. : box_event.box.mailbox_guid.guid | CERT EXP33-C
| 170 |  |
M | 141 | Procedure contains UR data flow anomalies. : box_event.box.name | CERT EXP33-C
| 178 |  |
M | 141 | Procedure contains UR data flow anomalies. : box_event.box.name_sha1.guid | CERT EXP33-C
| 178 |  |
M | 141 | Procedure contains UR data flow anomalies. : box_event.box.uid_next | CERT EXP33-C
| 178 |  |
M | 141 | Procedure contains UR data flow anomalies. : box_event.box.uid_validity | CERT EXP33-C
| 178 |  |
M | 141 | Procedure contains UR data flow anomalies. : box_event.type | CERT EXP33-C
| 169 |  |
C | 113 | Procedure not called in code analysed : test_dsync_brain |
M | 139 | Declaration types do not match across a system. : brain | CERT ARR31-C

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-brain.c | 141 | test-dsync-brain.c | 178 | box_event.box.highest_modseq
test-dsync-brain.c | 141 | test-dsync-brain.c | 170 | box_event.box.last_change
test-dsync-brain.c | 141 | test-dsync-brain.c | 170 | box_event.box.mailbox_guid.guid
test-dsync-brain.c | 141 | test-dsync-brain.c | 178 | box_event.box.name
test-dsync-brain.c | 141 | test-dsync-brain.c | 178 | box_event.box.name_sha1.guid
test-dsync-brain.c | 141 | test-dsync-brain.c | 178 | box_event.box.uid_next
test-dsync-brain.c | 141 | test-dsync-brain.c | 178 | box_event.box.uid_validity
test-dsync-brain.c | 141 | test-dsync-brain.c | 169 | box_event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_brain_full (223 to 278 test-dsync-brain.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 241 | Pointer not checked for null before use : src_worker | CERT EXP08-C,EXP34-C
| 239 |  |
M | 242 | Pointer not checked for null before use : dest_worker | CERT EXP08-C,EXP34-C
| 240 |  |
M | 244 | Pointer not checked for null before use : NULL | CERT EXP08-C,EXP34-C
M | 246 | Pointer not checked for null before use : brain | CERT EXP08-C,EXP34-C
| 244 |  |
M | 249 | Pointer not checked for null before use : src_test_worker | CERT EXP08-C,EXP34-C
| 241 |  |
M | 250 | Pointer not checked for null before use : dest_test_worker | CERT EXP08-C,EXP34-C
| 242 |  |
M | 268 | Pointer not checked for null before use : brain_boxes | CERT EXP08-C,EXP34-C
| 264 |  |
C | 223 | Procedure not called in code analysed : test_dsync_brain_full |
M | 229 | Declaration types do not match across a system. : brain | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_mailboxes_equal (44 to 70 test-dsync-common.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 52 | Sizeof argument is a pointer. | CERT EXP01-C
M | 66 | Pointer not checked for null before use : f1 | CERT EXP08-C,EXP34-C
| 60 |  |
M | 66 | Pointer not checked for null before use : f2 | CERT EXP08-C,EXP34-C
| 62 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

mail_generate_guid_128_hash (72 to 79 test-dsync-common.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 75 | Procedure contains UR data flow anomalies. : sha1_sum | CERT EXP33-C
| 77 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-common.c | 75 | test-dsync-common.c | 77 | sha1_sum

[ | Top of Report | | | Procedure Table | | | Contents | ]

master_service_stop (24 to 24 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 24 | Procedure not called in code analysed : master_service_stop |

[ | Top of Report | | | Procedure Table | | | Contents | ]

run_cmd (44 to 64 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 55 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_box_list (66 to 112 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 81 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 72 |  |
M | 96 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 81 |  |
M | 107 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 96 |  |
C | 66 | Procedure not called in code analysed : test_dsync_proxy_box_list |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_subs_list (114 to 161 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 131 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 122 |  |
M | 140 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 131 |  |
M | 150 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 140 |  |
M | 156 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 150 |  |
C | 114 | Procedure not called in code analysed : test_dsync_proxy_subs_list |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_msg_list (163 to 212 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 182 | Pointer not checked for null before use : msg.keywords | CERT EXP08-C,EXP34-C
| 175 |  |
M | 184 | Pointer not checked for null before use : test_msg.msg.keywords | CERT EXP08-C,EXP34-C
| 182 |  |
M | 184 | Pointer not checked for null before use : test_msg.msg.guid | CERT EXP08-C,EXP34-C
| 182 |  |
M | 199 | Pointer not checked for null before use : test_msg.msg.keywords | CERT EXP08-C,EXP34-C
| 197 |  |
M | 199 | Pointer not checked for null before use : test_msg.msg.guid | CERT EXP08-C,EXP34-C
| 197 |  |
M | 185 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 173 |  |
M | 200 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 185 |  |
M | 207 | Pointer not checked for null before use : cur_cmd | CERT EXP08-C,EXP34-C
| 200 |  |
C | 163 | Procedure not called in code analysed : test_dsync_proxy_msg_list |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_box_create (214 to 245 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 216 | Procedure contains UR data flow anomalies. : event.box.flags | CERT EXP33-C
| 227 |  |
M | 216 | Procedure contains UR data flow anomalies. : event.box.highest_modseq | CERT EXP33-C
| 241 |  |
M | 216 | Procedure contains UR data flow anomalies. : event.box.last_change | CERT EXP33-C
| 226 |  |
M | 216 | Procedure contains UR data flow anomalies. : event.box.mailbox_guid.guid | CERT EXP33-C
| 237 |  |
M | 216 | Procedure contains UR data flow anomalies. : event.box.name | CERT EXP33-C
| 224 |  |
M | 216 | Procedure contains UR data flow anomalies. : event.box.name_sep | CERT EXP33-C
| 225 |  |
M | 216 | Procedure contains UR data flow anomalies. : event.box.uid_next | CERT EXP33-C
| 240 |  |
M | 216 | Procedure contains UR data flow anomalies. : event.box.uid_validity | CERT EXP33-C
| 228 |  |
M | 216 | Procedure contains UR data flow anomalies. : event.type | CERT EXP33-C
| 223 |  |
C | 214 | Procedure not called in code analysed : test_dsync_proxy_box_create |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy-server-cmd.c | 216 | test-dsync-proxy-server-cmd.c | 227 | event.box.flags
test-dsync-proxy-server-cmd.c | 216 | test-dsync-proxy-server-cmd.c | 241 | event.box.highest_modseq
test-dsync-proxy-server-cmd.c | 216 | test-dsync-proxy-server-cmd.c | 226 | event.box.last_change
test-dsync-proxy-server-cmd.c | 216 | test-dsync-proxy-server-cmd.c | 237 | event.box.mailbox_guid.guid
test-dsync-proxy-server-cmd.c | 216 | test-dsync-proxy-server-cmd.c | 224 | event.box.name
test-dsync-proxy-server-cmd.c | 216 | test-dsync-proxy-server-cmd.c | 225 | event.box.name_sep
test-dsync-proxy-server-cmd.c | 216 | test-dsync-proxy-server-cmd.c | 240 | event.box.uid_next
test-dsync-proxy-server-cmd.c | 216 | test-dsync-proxy-server-cmd.c | 228 | event.box.uid_validity
test-dsync-proxy-server-cmd.c | 216 | test-dsync-proxy-server-cmd.c | 223 | event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_box_delete (247 to 266 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 249 | Procedure contains UR data flow anomalies. : event.box.last_change | CERT EXP33-C
| 257 |  |
M | 249 | Procedure contains UR data flow anomalies. : event.box.mailbox_guid.guid | CERT EXP33-C
| 256 |  |
M | 249 | Procedure contains UR data flow anomalies. : event.type | CERT EXP33-C
| 255 |  |
C | 247 | Procedure not called in code analysed : test_dsync_proxy_box_delete |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy-server-cmd.c | 249 | test-dsync-proxy-server-cmd.c | 257 | event.box.last_change
test-dsync-proxy-server-cmd.c | 249 | test-dsync-proxy-server-cmd.c | 256 | event.box.mailbox_guid.guid
test-dsync-proxy-server-cmd.c | 249 | test-dsync-proxy-server-cmd.c | 255 | event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_box_rename (268 to 289 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 270 | Procedure contains UR data flow anomalies. : event.box.mailbox_guid.guid | CERT EXP33-C
| 277 |  |
M | 270 | Procedure contains UR data flow anomalies. : event.box.name | CERT EXP33-C
| 278 |  |
M | 270 | Procedure contains UR data flow anomalies. : event.box.name_sep | CERT EXP33-C
| 279 |  |
M | 270 | Procedure contains UR data flow anomalies. : event.type | CERT EXP33-C
| 276 |  |
C | 268 | Procedure not called in code analysed : test_dsync_proxy_box_rename |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy-server-cmd.c | 270 | test-dsync-proxy-server-cmd.c | 277 | event.box.mailbox_guid.guid
test-dsync-proxy-server-cmd.c | 270 | test-dsync-proxy-server-cmd.c | 278 | event.box.name
test-dsync-proxy-server-cmd.c | 270 | test-dsync-proxy-server-cmd.c | 279 | event.box.name_sep
test-dsync-proxy-server-cmd.c | 270 | test-dsync-proxy-server-cmd.c | 276 | event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_box_update (291 to 312 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 293 | Procedure contains UR data flow anomalies. : event.box.flags | CERT EXP33-C
| 305 |  |
M | 293 | Procedure contains UR data flow anomalies. : event.box.highest_modseq | CERT EXP33-C
| 308 |  |
M | 293 | Procedure contains UR data flow anomalies. : event.box.last_change | CERT EXP33-C
| 309 |  |
M | 293 | Procedure contains UR data flow anomalies. : event.box.mailbox_guid.guid | CERT EXP33-C
| 304 |  |
M | 293 | Procedure contains UR data flow anomalies. : event.box.name | CERT EXP33-C
| 302 |  |
M | 293 | Procedure contains UR data flow anomalies. : event.box.name_sep | CERT EXP33-C
| 303 |  |
M | 293 | Procedure contains UR data flow anomalies. : event.box.uid_next | CERT EXP33-C
| 307 |  |
M | 293 | Procedure contains UR data flow anomalies. : event.box.uid_validity | CERT EXP33-C
| 306 |  |
M | 293 | Procedure contains UR data flow anomalies. : event.type | CERT EXP33-C
| 301 |  |
C | 291 | Procedure not called in code analysed : test_dsync_proxy_box_update |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy-server-cmd.c | 293 | test-dsync-proxy-server-cmd.c | 305 | event.box.flags
test-dsync-proxy-server-cmd.c | 293 | test-dsync-proxy-server-cmd.c | 308 | event.box.highest_modseq
test-dsync-proxy-server-cmd.c | 293 | test-dsync-proxy-server-cmd.c | 309 | event.box.last_change
test-dsync-proxy-server-cmd.c | 293 | test-dsync-proxy-server-cmd.c | 304 | event.box.mailbox_guid.guid
test-dsync-proxy-server-cmd.c | 293 | test-dsync-proxy-server-cmd.c | 302 | event.box.name
test-dsync-proxy-server-cmd.c | 293 | test-dsync-proxy-server-cmd.c | 303 | event.box.name_sep
test-dsync-proxy-server-cmd.c | 293 | test-dsync-proxy-server-cmd.c | 307 | event.box.uid_next
test-dsync-proxy-server-cmd.c | 293 | test-dsync-proxy-server-cmd.c | 306 | event.box.uid_validity
test-dsync-proxy-server-cmd.c | 293 | test-dsync-proxy-server-cmd.c | 301 | event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_box_select (314 to 325 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
C | 314 | Procedure not called in code analysed : test_dsync_proxy_box_select |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_msg_update (327 to 345 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 329 | Procedure contains UR data flow anomalies. : event.msg.flags | CERT EXP33-C
| 339 |  |
M | 329 | Procedure contains UR data flow anomalies. : event.msg.keywords | CERT EXP33-C
| 340 |  |
M | 329 | Procedure contains UR data flow anomalies. : event.msg.modseq | CERT EXP33-C
| 338 |  |
M | 329 | Procedure contains UR data flow anomalies. : event.msg.uid | CERT EXP33-C
| 337 |  |
M | 329 | Procedure contains UR data flow anomalies. : event.type | CERT EXP33-C
| 336 |  |
C | 327 | Procedure not called in code analysed : test_dsync_proxy_msg_update |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy-server-cmd.c | 329 | test-dsync-proxy-server-cmd.c | 339 | event.msg.flags
test-dsync-proxy-server-cmd.c | 329 | test-dsync-proxy-server-cmd.c | 340 | event.msg.keywords
test-dsync-proxy-server-cmd.c | 329 | test-dsync-proxy-server-cmd.c | 338 | event.msg.modseq
test-dsync-proxy-server-cmd.c | 329 | test-dsync-proxy-server-cmd.c | 337 | event.msg.uid
test-dsync-proxy-server-cmd.c | 329 | test-dsync-proxy-server-cmd.c | 336 | event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_msg_uid_change (347 to 360 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 349 | Procedure contains UR data flow anomalies. : event.msg.modseq | CERT EXP33-C
| 357 |  |
M | 349 | Procedure contains UR data flow anomalies. : event.msg.uid | CERT EXP33-C
| 356 |  |
M | 349 | Procedure contains UR data flow anomalies. : event.type | CERT EXP33-C
| 355 |  |
C | 347 | Procedure not called in code analysed : test_dsync_proxy_msg_uid_change |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy-server-cmd.c | 349 | test-dsync-proxy-server-cmd.c | 357 | event.msg.modseq
test-dsync-proxy-server-cmd.c | 349 | test-dsync-proxy-server-cmd.c | 356 | event.msg.uid
test-dsync-proxy-server-cmd.c | 349 | test-dsync-proxy-server-cmd.c | 355 | event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_msg_expunge (362 to 374 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 364 | Procedure contains UR data flow anomalies. : event.msg.uid | CERT EXP33-C
| 371 |  |
M | 364 | Procedure contains UR data flow anomalies. : event.type | CERT EXP33-C
| 370 |  |
C | 362 | Procedure not called in code analysed : test_dsync_proxy_msg_expunge |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy-server-cmd.c | 364 | test-dsync-proxy-server-cmd.c | 371 | event.msg.uid
test-dsync-proxy-server-cmd.c | 364 | test-dsync-proxy-server-cmd.c | 370 | event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_msg_copy (376 to 398 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 378 | Procedure contains UR data flow anomalies. : msg_event.copy_src_mailbox.guid | CERT EXP33-C
| 387 |  |
M | 378 | Procedure contains UR data flow anomalies. : msg_event.copy_src_uid | CERT EXP33-C
| 388 |  |
M | 378 | Procedure contains UR data flow anomalies. : msg_event.msg.flags | CERT EXP33-C
| 392 |  |
M | 378 | Procedure contains UR data flow anomalies. : msg_event.msg.guid | CERT EXP33-C
| 389 |  |
M | 378 | Procedure contains UR data flow anomalies. : msg_event.msg.keywords | CERT EXP33-C
| 393 |  |
M | 378 | Procedure contains UR data flow anomalies. : msg_event.msg.modseq | CERT EXP33-C
| 391 |  |
M | 378 | Procedure contains UR data flow anomalies. : msg_event.msg.save_date | CERT EXP33-C
| 395 |  |
M | 378 | Procedure contains UR data flow anomalies. : msg_event.msg.uid | CERT EXP33-C
| 390 |  |
M | 378 | Procedure contains UR data flow anomalies. : msg_event.type | CERT EXP33-C
| 386 |  |
C | 376 | Procedure not called in code analysed : test_dsync_proxy_msg_copy |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy-server-cmd.c | 378 | test-dsync-proxy-server-cmd.c | 387 | msg_event.copy_src_mailbox.guid
test-dsync-proxy-server-cmd.c | 378 | test-dsync-proxy-server-cmd.c | 388 | msg_event.copy_src_uid
test-dsync-proxy-server-cmd.c | 378 | test-dsync-proxy-server-cmd.c | 392 | msg_event.msg.flags
test-dsync-proxy-server-cmd.c | 378 | test-dsync-proxy-server-cmd.c | 389 | msg_event.msg.guid
test-dsync-proxy-server-cmd.c | 378 | test-dsync-proxy-server-cmd.c | 393 | msg_event.msg.keywords
test-dsync-proxy-server-cmd.c | 378 | test-dsync-proxy-server-cmd.c | 391 | msg_event.msg.modseq
test-dsync-proxy-server-cmd.c | 378 | test-dsync-proxy-server-cmd.c | 395 | msg_event.msg.save_date
test-dsync-proxy-server-cmd.c | 378 | test-dsync-proxy-server-cmd.c | 390 | msg_event.msg.uid
test-dsync-proxy-server-cmd.c | 378 | test-dsync-proxy-server-cmd.c | 386 | msg_event.type

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_msg_save (400 to 433 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 429 | Pointer not checked for null before use : data | CERT EXP08-C,EXP34-C
| 428 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.msg.flags | CERT EXP33-C
| 423 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.msg.guid | CERT EXP33-C
| 420 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.msg.keywords | CERT EXP33-C
| 424 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.msg.modseq | CERT EXP33-C
| 422 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.msg.save_date | CERT EXP33-C
| 426 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.msg.uid | CERT EXP33-C
| 421 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.save_body | CERT EXP33-C
| 418 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.save_data.pop3_uidl | CERT EXP33-C
| 417 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.save_data.received_date | CERT EXP33-C
| 416 |  |
M | 403 | Procedure contains UR data flow anomalies. : event.type | CERT EXP33-C
| 415 |  |
M | 405 | Procedure contains UR data flow anomalies. : size | CERT EXP33-C
| 428 |  |
C | 400 | Procedure not called in code analysed : test_dsync_proxy_msg_save |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 423 | event.msg.flags
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 420 | event.msg.guid
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 424 | event.msg.keywords
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 422 | event.msg.modseq
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 426 | event.msg.save_date
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 421 | event.msg.uid
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 418 | event.save_body
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 417 | event.save_data.pop3_uidl
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 416 | event.save_data.received_date
test-dsync-proxy-server-cmd.c | 403 | test-dsync-proxy-server-cmd.c | 415 | event.type
test-dsync-proxy-server-cmd.c | 405 | test-dsync-proxy-server-cmd.c | 428 | size

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_proxy_server_init_test (435 to 448 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 447 | Local structure returned in function result : server |
M | 441 | Pointer not checked for null before use : server | CERT EXP08-C,EXP34-C
| 440 |  |
M | 438 | Declaration types do not match across a system. : server | CERT ARR31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

main (450 to 477 test-dsync-proxy-server-cmd.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 472 | Pointer not checked for null before use : out | CERT EXP08-C,EXP34-C
| 471 |  |
M | 473 | Pointer not checked for null before use : server | CERT EXP08-C,EXP34-C
| 472 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_msg (10 to 84 test-dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 33 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 24 |  |
M | 33 | Pointer not checked for null before use : msg_in.keywords | CERT EXP08-C,EXP34-C
| 20 |  |
M | 34 | Pointer not checked for null before use : pool | CERT EXP08-C,EXP34-C
| 23 |  |
C | 10 | Procedure not called in code analysed : test_dsync_proxy_msg |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_mailbox (86 to 149 test-dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 107 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 99 |  |
M | 107 | Pointer not checked for null before use : box_in.cache_fields.v_modifiable | CERT EXP08-C,EXP34-C
| 95 |  |
M | 107 | Pointer not checked for null before use : box_in.cache_fields.v | CERT EXP08-C,EXP34-C
| 95 |  |
M | 107 | Pointer not checked for null before use : box_in.cache_fields.arr.buffer | CERT EXP08-C,EXP34-C
| 95 |  |
M | 108 | Pointer not checked for null before use : pool | CERT EXP08-C,EXP34-C
| 98 |  |
M | 138 | Pointer not checked for null before use : (arr)->buffer | CERT EXP08-C,EXP34-C
| 137 |  |
M | 138 | Pointer not checked for null before use : (arr)->element_size | CERT EXP08-C,EXP34-C
| 137 |  |
C | 86 | Procedure not called in code analysed : test_dsync_proxy_mailbox |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_proxy_guid (151 to 170 test-dsync-proxy.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 160 | Pointer not checked for null before use : str | CERT EXP08-C,EXP34-C
| 158 |  |
M | 153 | Procedure contains UR data flow anomalies. : guid_out.guid | CERT EXP33-C
| 162 |  |
C | 151 | Procedure not called in code analysed : test_dsync_proxy_guid |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-proxy.c | 153 | test-dsync-proxy.c | 162 | guid_out.guid

[ | Top of Report | | | Procedure Table | | | Contents | ]

dsync_worker_init_test (11 to 23 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 16 | Pointer not checked for null before use : worker | CERT EXP08-C,EXP34-C
| 15 |  |
M | 15 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 329) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_deinit (25 to 35 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 34 | Pointer not checked for null before use : default_pool | CERT EXP08-C,EXP34-C
| Ref. Line -1101 (Module 329) |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_mailbox_iter_deinit (73 to 81 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 79 | Attempt to use already freed object. | CERT MEM31-C
M | 79 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_subs_iter_deinit (124 to 132 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 130 | Attempt to use already freed object. | CERT MEM31-C
M | 130 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_msg_iter_init (134 to 152 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 144 | Attempt to use already freed object. | CERT MEM31-C
M | 145 | Attempt to use already freed object. | CERT MEM31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_msg_iter_next (154 to 170 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 167 | Pointer not checked for null before use : msg | CERT EXP08-C,EXP34-C
| 166 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_msg_iter_deinit (172 to 181 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 179 | Attempt to use already freed object. | CERT MEM31-C
M | 179 | Sizeof argument is a pointer. | CERT EXP01-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_set_last_box (183 to 196 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 194 | Attempt to use already freed object. | CERT MEM31-C
M | 195 | Pointer not checked for null before use : event.box.cache_fields.v_modifiable | CERT EXP08-C,EXP34-C
| 193 |  |
M | 195 | Pointer not checked for null before use : event.box.cache_fields.v | CERT EXP08-C,EXP34-C
| 193 |  |
M | 195 | Pointer not checked for null before use : event.box.cache_fields.arr.buffer | CERT EXP08-C,EXP34-C
| 193 |  |
M | 195 | Pointer not checked for null before use : event.box.name | CERT EXP08-C,EXP34-C
| 194 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_worker_next_box_event (198 to 211 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 208 | Pointer not checked for null before use : events | CERT EXP08-C,EXP34-C
| 204 |  |
M | 202 | Procedure contains UR data flow anomalies. : count | CERT EXP33-C
| 205 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-worker.c | 202 | test-dsync-worker.c | 205 | count

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_set_subscribed (213 to 225 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 222 | Pointer not checked for null before use : dsync_box.name | CERT EXP08-C,EXP34-C
| 220 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_delete_mailbox (234 to 246 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 245 | Pointer not checked for null before use : event.box.cache_fields.v_modifiable | CERT EXP08-C,EXP34-C
| 244 |  |
M | 245 | Pointer not checked for null before use : event.box.cache_fields.v | CERT EXP08-C,EXP34-C
| 244 |  |
M | 245 | Pointer not checked for null before use : event.box.cache_fields.arr.buffer | CERT EXP08-C,EXP34-C
| 244 |  |
M | 245 | Pointer not checked for null before use : event.box.name | CERT EXP08-C,EXP34-C
| 244 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_delete_dir (248 to 260 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 259 | Pointer not checked for null before use : event.box.cache_fields.v_modifiable | CERT EXP08-C,EXP34-C
| 258 |  |
M | 259 | Pointer not checked for null before use : event.box.cache_fields.v | CERT EXP08-C,EXP34-C
| 258 |  |
M | 259 | Pointer not checked for null before use : event.box.cache_fields.arr.buffer | CERT EXP08-C,EXP34-C
| 258 |  |
M | 259 | Pointer not checked for null before use : event.box.name | CERT EXP08-C,EXP34-C
| 258 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_rename_mailbox (262 to 276 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 275 | Pointer not checked for null before use : event.box.cache_fields.v_modifiable | CERT EXP08-C,EXP34-C
| 273 |  |
M | 275 | Pointer not checked for null before use : event.box.cache_fields.v | CERT EXP08-C,EXP34-C
| 273 |  |
M | 275 | Pointer not checked for null before use : event.box.cache_fields.arr.buffer | CERT EXP08-C,EXP34-C
| 273 |  |
M | 275 | Pointer not checked for null before use : event.box.name | CERT EXP08-C,EXP34-C
| 273 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_set_last_msg (300 to 324 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 323 | Local structure returned in function result : event |
M | 310 | Pointer not checked for null before use : event | CERT EXP08-C,EXP34-C
| 309 |  |
M | 321 | Pointer not checked for null before use : keywords | CERT EXP08-C,EXP34-C
| 316 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_dsync_worker_next_msg_event (326 to 339 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 336 | Pointer not checked for null before use : events | CERT EXP08-C,EXP34-C
| 332 |  |
M | 330 | Procedure contains UR data flow anomalies. : count | CERT EXP33-C
| 333 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-worker.c | 330 | test-dsync-worker.c | 333 | count

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_msg_update_metadata (341 to 348 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 347 | Attempt to use already freed object. | CERT MEM31-C

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_msg_update_uid (350 to 361 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 360 | Attempt to use already freed object. | CERT MEM31-C
M | 360 | Pointer not checked for null before use : msg.guid | CERT EXP08-C,EXP34-C
| 357 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_msg_expunge (363 to 371 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 370 | Attempt to use already freed object. | CERT MEM31-C
M | 370 | Pointer not checked for null before use : msg.guid | CERT EXP08-C,EXP34-C
| 368 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_msg_copy (373 to 386 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 382 | Attempt to use already freed object. | CERT MEM31-C
M | 383 | Pointer not checked for null before use : event | CERT EXP08-C,EXP34-C
| 382 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_msg_save (388 to 411 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Violation | Standard
--- | --- | ---
M | Procedure contains UR data flow anomalies. | CERT EXP33-C

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 400 | Attempt to use already freed object. | CERT MEM31-C
M | 401 | Attempt to use already freed object. | CERT MEM31-C
M | 410 | Attempt to use already freed object. | CERT MEM31-C
M | 401 | Pointer not checked for null before use : event | CERT EXP08-C,EXP34-C
| 400 |  |
M | 406 | Pointer not checked for null before use : body | CERT EXP08-C,EXP34-C
| 404 |  |
M | 395 | Procedure contains UR data flow anomalies. : d | CERT EXP33-C
| 405 |  |
M | 396 | Procedure contains UR data flow anomalies. : size | CERT EXP33-C
| 405 |  |

#### Possible UR Anomalies

The following variables may be referenced before being given a value

File | Undefine | File | Reference | Variable
--- | --- | --- | --- | ---
test-dsync-worker.c | 395 | test-dsync-worker.c | 405 | d
test-dsync-worker.c | 396 | test-dsync-worker.c | 405 | size

[ | Top of Report | | | Procedure Table | | | Contents | ]

test_worker_msg_get (418 to 433 test-dsync-worker.c) - FAIL

#### Standards Violation Summary

Code | Line | Violation | Standard
--- | --- | --- | ---
M | 431 | Pointer not checked for null before use : data.input | CERT EXP08-C,EXP34-C
| 430 |  |

[ | Top of Report | | | Procedure Table | | | Contents | ]

### End of Code Review Report

###

### Copyright © 2010 Liverpool Data Research Associates