From c55139bfaabd3e5112486716f262936e85a2fb18 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Tue, 8 Jun 2021 11:43:55 +0200 Subject: tests/mock_*.c: Mark unused function arguments as such. This resolves: mock_pam.c: In function 'fake_conv': mock_pam.c:22:20: error: unused parameter 'num_msg' [-Werror=unused-parameter] 22 | int fake_conv (int num_msg, const struct pam_message **msg, | ~~~~^~~~~~~ mock_pam.c:23:39: error: unused parameter 'appdata_ptr' [-Werror=unused-parameter] 23 | struct pam_response **resp, void *appdata_ptr) | ~~~~~~^~~~~~~~~~~ mock_pam.c: In function 'fake_conv_empty_password': mock_pam.c:51:35: error: unused parameter 'num_msg' [-Werror=unused-parameter] 51 | int fake_conv_empty_password (int num_msg, const struct pam_message **msg, | ~~~~^~~~~~~ mock_pam.c:52:39: error: unused parameter 'appdata_ptr' [-Werror=unused-parameter] 52 | struct pam_response **resp, void *appdata_ptr) | ~~~~~~^~~~~~~~~~~ cc1: all warnings being treated as errors --- tests/mock_pam.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'tests/mock_pam.c') diff --git a/tests/mock_pam.c b/tests/mock_pam.c index ce57973..e1b7324 100644 --- a/tests/mock_pam.c +++ b/tests/mock_pam.c @@ -19,8 +19,10 @@ struct pam_handle { /* note: the other fields have been omitted */ }; -int fake_conv (int num_msg, const struct pam_message **msg, - struct pam_response **resp, void *appdata_ptr) +int fake_conv (int __attribute__((unused)) num_msg, + const struct pam_message **msg, + struct pam_response **resp, + void __attribute__((unused)) *appdata_ptr) { struct pam_response *response = NULL; response = malloc (sizeof (struct pam_response)); @@ -48,8 +50,10 @@ int fake_conv (int num_msg, const struct pam_message **msg, return PAM_SUCCESS; } -int fake_conv_empty_password (int num_msg, const struct pam_message **msg, - struct pam_response **resp, void *appdata_ptr) +int fake_conv_empty_password (int __attribute__((unused)) num_msg, + const struct pam_message **msg, + struct pam_response **resp, + void __attribute__((unused)) *appdata_ptr) { struct pam_response *response = NULL; response = malloc (sizeof (struct pam_response)); -- cgit v1.2.3 From 33871cdd77a9a3f4f0146bdd9aa2d05c4618efa6 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Tue, 8 Jun 2021 15:50:50 +0200 Subject: tests/mock_pam.c: Don't leak memory pointed to by 'response'. --- tests/mock_pam.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'tests/mock_pam.c') diff --git a/tests/mock_pam.c b/tests/mock_pam.c index e1b7324..71e0f71 100644 --- a/tests/mock_pam.c +++ b/tests/mock_pam.c @@ -42,8 +42,10 @@ int fake_conv (int __attribute__((unused)) num_msg, response->resp = strdup ("password"); else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_DOMAIN) == 0) response->resp = strdup ("domain"); - else + else { + free(response); return PAM_SYMBOL_ERR; /* leaks... */ + } *resp = response; @@ -73,8 +75,10 @@ int fake_conv_empty_password (int __attribute__((unused)) num_msg, response->resp = strdup (""); else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_DOMAIN) == 0) response->resp = strdup ("domain"); - else + else { + free(response); return PAM_SYMBOL_ERR; /* leaks... */ + } *resp = response; -- cgit v1.2.3 From aa69592eff0ec4bda76c8c3d3cbbafe3149b5131 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Tue, 8 Jun 2021 15:54:38 +0200 Subject: tests/mock_pam.c: Use curly braces for all if-clauses. --- tests/mock_pam.c | 46 ++++++++++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 20 deletions(-) (limited to 'tests/mock_pam.c') diff --git a/tests/mock_pam.c b/tests/mock_pam.c index 71e0f71..f32d95f 100644 --- a/tests/mock_pam.c +++ b/tests/mock_pam.c @@ -27,22 +27,23 @@ int fake_conv (int __attribute__((unused)) num_msg, struct pam_response *response = NULL; response = malloc (sizeof (struct pam_response)); - if (response == NULL) + if (response == NULL) { return PAM_BUF_ERR; + } response->resp_retcode = 0; - if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_GUESTLOGIN) == 0) + if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_GUESTLOGIN) == 0) { response->resp = strdup ("guest"); /* IMPORTANT: this needs to be in /etc/passwd */ - else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_USER) == 0) + } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_USER) == 0) { response->resp = strdup ("ruser"); - else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_HOST) == 0) + } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_HOST) == 0) { response->resp = strdup ("protocol://rhost/dummy"); - else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_PASSWORD) == 0) + } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_PASSWORD) == 0) { response->resp = strdup ("password"); - else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_DOMAIN) == 0) + } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_DOMAIN) == 0) { response->resp = strdup ("domain"); - else { + } else { free(response); return PAM_SYMBOL_ERR; /* leaks... */ } @@ -65,17 +66,17 @@ int fake_conv_empty_password (int __attribute__((unused)) num_msg, response->resp_retcode = 0; - if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_GUESTLOGIN) == 0) + if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_GUESTLOGIN) == 0) { response->resp = strdup ("guest"); /* IMPORTANT: this needs to be in /etc/passwd */ - else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_USER) == 0) + } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_USER) == 0) { response->resp = strdup ("ruser"); - else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_HOST) == 0) + } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_HOST) == 0) { response->resp = strdup ("protocol://rhost/dummy"); - else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_PASSWORD) == 0) + } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_PASSWORD) == 0) { response->resp = strdup (""); - else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_DOMAIN) == 0) + } else if (strcmp((*msg)->msg, PAM_FREERDP2_PROMPT_DOMAIN) == 0) { response->resp = strdup ("domain"); - else { + } else { free(response); return PAM_SYMBOL_ERR; /* leaks... */ } @@ -117,20 +118,22 @@ int PAM_NONNULL((1)) pam_get_item (const pam_handle_t *pamh, int type, const voi if (pamh == NULL) return PAM_SYSTEM_ERR; - if (type == PAM_CONV) + if (type == PAM_CONV) { *value = pamh->conv; - else if (pamh->item[type] != NULL) + } else if (pamh->item[type] != NULL) { *value = pamh->item[type]; - else + } else { *value = NULL; /* will result in a prompt conversation */ + } return PAM_SUCCESS; } int PAM_NONNULL((1)) pam_set_item (pam_handle_t *pamh, int type, const void *value) { - if (pamh == NULL) + if (pamh == NULL) { return PAM_SYSTEM_ERR; + } void **slot, *tmp; size_t nsize, osize; @@ -138,10 +141,12 @@ int PAM_NONNULL((1)) pam_set_item (pam_handle_t *pamh, int type, const void *val slot = &pamh->item[type]; osize = nsize = 0; - if (*slot != NULL) + if (*slot != NULL) { osize = strlen((const char *)*slot) + 1; - if (value != NULL) + } + if (value != NULL) { nsize = strlen((const char *)value) + 1; + } if (*slot != NULL) { memset(*slot, 0xd0, osize); @@ -149,8 +154,9 @@ int PAM_NONNULL((1)) pam_set_item (pam_handle_t *pamh, int type, const void *val } if (value != NULL) { - if ((tmp = malloc(nsize)) == NULL) + if ((tmp = malloc(nsize)) == NULL) { return PAM_BUF_ERR; + } memcpy(tmp, value, nsize); } else { tmp = NULL; -- cgit v1.2.3