On Mon, Nov 15, 2010 at 03:21:07PM -0500, Stephen Gallagher wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Fixes https://fedorahosted.org/sssd/ticket/656
> 
> These warnings appear on gcc-4.5.1-4.fc14.x86_64 with -Wcast-qual

The warnings are gone and all tests pass.

ACK

bye,
Sumit

> 
> - -- 
> Stephen Gallagher
> RHCE 804006346421761
> 
> Delivering value year after year.
> Red Hat ranks #1 in value among software vendors.
> http://www.redhat.com/promo/vendor/
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.11 (GNU/Linux)
> Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/
> 
> iEYEARECAAYFAkzhljMACgkQeiVVYja6o6Pu5ACeMP6GL7RsN6cTup6boBIJQlGQ
> onQAn1y4vFMo60DoDeu0vrVkme4+W39U
> =UePw
> -----END PGP SIGNATURE-----

> From 609e275eecdf1597ada32252ed02da3ad546d53b Mon Sep 17 00:00:00 2001
> From: Stephen Gallagher <sgall...@redhat.com>
> Date: Mon, 15 Nov 2010 14:30:29 -0500
> Subject: [PATCH 1/7] Fix cast warning for pam_sss.c
> 
> ---
>  src/sss_client/pam_sss.c |   19 +++++++++++--------
>  1 files changed, 11 insertions(+), 8 deletions(-)
> 
> diff --git a/src/sss_client/pam_sss.c b/src/sss_client/pam_sss.c
> index 
> 644073f5bb03f369c9a579ae1add24af320628e0..b0669271436780a95ecf9ec606b74f980ce6aa09
>  100644
> --- a/src/sss_client/pam_sss.c
> +++ b/src/sss_client/pam_sss.c
> @@ -310,7 +310,8 @@ static int do_pam_conversation(pam_handle_t *pamh, const 
> int msg_style,
>      int ret;
>      int state = SSS_PAM_CONV_STD;
>      struct pam_conv *conv;
> -    struct pam_message *mesg[1];
> +    const struct pam_message *mesg[1];
> +    struct pam_message *pam_msg;
>      struct pam_response *resp=NULL;
>  
>      if ((msg_style == PAM_TEXT_INFO || msg_style == PAM_ERROR_MSG) &&
> @@ -330,22 +331,24 @@ static int do_pam_conversation(pam_handle_t *pamh, 
> const int msg_style,
>      if (ret != PAM_SUCCESS) return ret;
>  
>      do {
> -        mesg[0] = malloc(sizeof(struct pam_message));
> -        if (mesg[0] == NULL) {
> +        pam_msg = malloc(sizeof(struct pam_message));
> +        if (pam_msg == NULL) {
>              D(("Malloc failed."));
>              return PAM_SYSTEM_ERR;
>          }
>  
> -        mesg[0]->msg_style = msg_style;
> +        pam_msg->msg_style = msg_style;
>          if (state == SSS_PAM_CONV_REENTER) {
> -            mesg[0]->msg = reenter_msg;
> +            pam_msg->msg = reenter_msg;
>          } else {
> -            mesg[0]->msg = msg;
> +            pam_msg->msg = msg;
>          }
>  
> -        ret=conv->conv(1, (const struct pam_message **) mesg, &resp,
> +        mesg[0] = (const struct pam_message *) pam_msg;
> +
> +        ret=conv->conv(1, mesg, &resp,
>                         conv->appdata_ptr);
> -        free(mesg[0]);
> +        free(pam_msg);
>          if (ret != PAM_SUCCESS) {
>              D(("Conversation failure: %s.",  pam_strerror(pamh,ret)));
>              return ret;
> -- 
> 1.7.3.2
> 

> From c5fbb483bcf7db9915157dd03aae4e515514620d Mon Sep 17 00:00:00 2001
> From: Stephen Gallagher <sgall...@redhat.com>
> Date: Mon, 15 Nov 2010 14:41:33 -0500
> Subject: [PATCH 2/7] Fix const cast warning for sysdb_update_members
> 
> ---
>  src/db/sysdb.h                           |    4 ++--
>  src/db/sysdb_ops.c                       |    4 ++--
>  src/providers/ldap/sdap_async_accounts.c |   12 ++++++------
>  src/tests/sysdb-tests.c                  |    8 ++++----
>  4 files changed, 14 insertions(+), 14 deletions(-)
> 
> diff --git a/src/db/sysdb.h b/src/db/sysdb.h
> index 
> fde27b93e95774ff5d2cf16609981e739ec2f2fe..f93f34e626245b61243385814e3b6c0abccb593a
>  100644
> --- a/src/db/sysdb.h
> +++ b/src/db/sysdb.h
> @@ -548,8 +548,8 @@ errno_t sysdb_update_members(struct sysdb_ctx *sysdb,
>                               struct sss_domain_info *domain,
>                               const char *member,
>                               enum sysdb_member_type type,
> -                             const char **add_groups,
> -                             const char **del_groups);
> +                             const char *const *add_groups,
> +                             const char *const *del_groups);
>  
>  errno_t sysdb_add_netgroup_tuple(struct sysdb_ctx *sysdb,
>                                   struct sss_domain_info *domain,
> diff --git a/src/db/sysdb_ops.c b/src/db/sysdb_ops.c
> index 
> 7158da3770af84c19a5267db24d26fcee58a56da..19f43c6c02dcd729b7a540a6ec1f2d7db2a0052b
>  100644
> --- a/src/db/sysdb_ops.c
> +++ b/src/db/sysdb_ops.c
> @@ -2573,8 +2573,8 @@ errno_t sysdb_update_members(struct sysdb_ctx *sysdb,
>                               struct sss_domain_info *domain,
>                               const char *member,
>                               enum sysdb_member_type type,
> -                             const char **add_groups,
> -                             const char **del_groups)
> +                             const char *const *add_groups,
> +                             const char *const *del_groups)
>  {
>      errno_t ret;
>      int i;
> diff --git a/src/providers/ldap/sdap_async_accounts.c 
> b/src/providers/ldap/sdap_async_accounts.c
> index 
> a4d15d677b68f0a9b190fb1a0c5a1e4b30db38cd..9856e75488b977cd2951d9871bf0e21cc816a1bd
>  100644
> --- a/src/providers/ldap/sdap_async_accounts.c
> +++ b/src/providers/ldap/sdap_async_accounts.c
> @@ -2023,8 +2023,8 @@ static void sdap_initgr_rfc2307_process(struct 
> tevent_req *subreq)
>  
>      ret = sysdb_update_members(state->sysdb, state->dom, state->name,
>                                 SYSDB_MEMBER_USER,
> -                               (const char **)add_groups,
> -                               (const char **)del_groups);
> +                               (const char *const *)add_groups,
> +                               (const char *const *)del_groups);
>      if (ret != EOK) {
>          tevent_req_error(req, ret);
>          return;
> @@ -3350,8 +3350,8 @@ errno_t save_rfc2307bis_user_memberships(
>  
>      ret = sysdb_update_members(state->sysdb, state->dom, state->name,
>                                 SYSDB_MEMBER_USER,
> -                               (const char **)add_groups,
> -                               (const char **)del_groups);
> +                               (const char *const *)add_groups,
> +                               (const char *const *)del_groups);
>      if (ret != EOK) {
>          goto error;
>      }
> @@ -3821,8 +3821,8 @@ static errno_t rfc2307bis_nested_groups_update_sysdb(
>  
>      ret = sysdb_update_members(state->sysdb, state->dom, name,
>                                 SYSDB_MEMBER_GROUP,
> -                               (const char **)add_groups,
> -                               (const char **)del_groups);
> +                               (const char *const *)add_groups,
> +                               (const char *const *)del_groups);
>      if (ret != EOK) {
>          goto error;
>      }
> diff --git a/src/tests/sysdb-tests.c b/src/tests/sysdb-tests.c
> index 
> f8710a1c52ce8ead9a3382ebceb4b4c5e9b3a2c1..77409c3efafcc503b1f7e64c9fdc475cac7d9cae
>  100644
> --- a/src/tests/sysdb-tests.c
> +++ b/src/tests/sysdb-tests.c
> @@ -2220,7 +2220,7 @@ START_TEST (test_sysdb_update_members)
>  
>      ret = sysdb_update_members(test_ctx->sysdb, test_ctx->domain, user,
>                                 SYSDB_MEMBER_USER,
> -                               (const char **)add_groups, NULL);
> +                               (const char *const *)add_groups, NULL);
>      fail_unless(ret == EOK, "Could not add groups");
>      talloc_zfree(add_groups);
>  
> @@ -2234,8 +2234,8 @@ START_TEST (test_sysdb_update_members)
>  
>      ret = sysdb_update_members(test_ctx->sysdb, test_ctx->domain, user,
>                                 SYSDB_MEMBER_USER,
> -                               (const char **)add_groups,
> -                               (const char **)del_groups);
> +                               (const char *const *)add_groups,
> +                               (const char *const *)del_groups);
>      fail_unless(ret == EOK, "Group replace failed");
>      talloc_zfree(add_groups);
>      talloc_zfree(del_groups);
> @@ -2249,7 +2249,7 @@ START_TEST (test_sysdb_update_members)
>      ret = sysdb_update_members(test_ctx->sysdb, test_ctx->domain,
>                                 user, SYSDB_MEMBER_USER,
>                                 NULL,
> -                               (const char **)del_groups);
> +                               (const char *const *)del_groups);
>      fail_unless(ret == EOK, "Could not remove groups");
>  
>      talloc_zfree(test_ctx);
> -- 
> 1.7.3.2
> 

> From 5948f94ac5961069a73a1cf6f915635add449a12 Mon Sep 17 00:00:00 2001
> From: Stephen Gallagher <sgall...@redhat.com>
> Date: Mon, 15 Nov 2010 14:44:08 -0500
> Subject: [PATCH 3/7] Fix const cast warning in build_attrs_from_map
> 
> ---
>  src/providers/ldap/sdap.c |    6 +++---
>  1 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/src/providers/ldap/sdap.c b/src/providers/ldap/sdap.c
> index 
> 047562f781be8132bfc92c0774ae36521ade5702..1a065cc804c2e8dec840c17d91acc658d6b12aa9
>  100644
> --- a/src/providers/ldap/sdap.c
> +++ b/src/providers/ldap/sdap.c
> @@ -530,10 +530,10 @@ int build_attrs_from_map(TALLOC_CTX *memctx,
>                           struct sdap_attr_map *map,
>                           size_t size, const char ***_attrs)
>  {
> -    char **attrs;
> +    const char **attrs;
>      int i, j;
>  
> -    attrs = talloc_array(memctx, char *, size + 1);
> +    attrs = talloc_array(memctx, const char *, size + 1);
>      if (!attrs) return ENOMEM;
>  
>      /* first attribute is "objectclass" not the specifc one */
> @@ -549,7 +549,7 @@ int build_attrs_from_map(TALLOC_CTX *memctx,
>      }
>      attrs[j] = NULL;
>  
> -    *_attrs = (const char **)attrs;
> +    *_attrs = attrs;
>  
>      return EOK;
>  }
> -- 
> 1.7.3.2
> 

> From 4d09a76db390ae92248cd69629a06d852d71c033 Mon Sep 17 00:00:00 2001
> From: Stephen Gallagher <sgall...@redhat.com>
> Date: Mon, 15 Nov 2010 14:51:11 -0500
> Subject: [PATCH 4/7] Fix const cast issue with sysdb_attrs_users_from_str_list
> 
> ---
>  src/db/sysdb.c                 |    2 +-
>  src/db/sysdb.h                 |    2 +-
>  src/providers/proxy/proxy_id.c |   18 +++++++++---------
>  3 files changed, 11 insertions(+), 11 deletions(-)
> 
> diff --git a/src/db/sysdb.c b/src/db/sysdb.c
> index 
> ab6377470ab388a6556dbf71981f4b18686be698..ace31a46c8c715aacb7148a9ee265d2fdb363e11
>  100644
> --- a/src/db/sysdb.c
> +++ b/src/db/sysdb.c
> @@ -466,7 +466,7 @@ int sysdb_attrs_add_time_t(struct sysdb_attrs *attrs,
>  int sysdb_attrs_users_from_str_list(struct sysdb_attrs *attrs,
>                                      const char *attr_name,
>                                      const char *domain,
> -                                    const char **list)
> +                                    const char *const *list)
>  {
>      struct ldb_message_element *el = NULL;
>      struct ldb_val *vals;
> diff --git a/src/db/sysdb.h b/src/db/sysdb.h
> index 
> f93f34e626245b61243385814e3b6c0abccb593a..ed100b69967f19543b6c70f8d349ac239f24a6a1
>  100644
> --- a/src/db/sysdb.h
> +++ b/src/db/sysdb.h
> @@ -205,7 +205,7 @@ int sysdb_attrs_replace_name(struct sysdb_attrs *attrs, 
> const char *oldname,
>  int sysdb_attrs_users_from_str_list(struct sysdb_attrs *attrs,
>                                      const char *attr_name,
>                                      const char *domain,
> -                                    const char **list);
> +                                    const char *const *list);
>  int sysdb_attrs_users_from_ldb_vals(struct sysdb_attrs *attrs,
>                                      const char *attr_name,
>                                      const char *domain,
> diff --git a/src/providers/proxy/proxy_id.c b/src/providers/proxy/proxy_id.c
> index 
> 35fc9c4929b42edfab43ec88244846532859b252..71541386fd0bbd48b0cc2f17afb1cd2bb7f4436b
>  100644
> --- a/src/providers/proxy/proxy_id.c
> +++ b/src/providers/proxy/proxy_id.c
> @@ -502,9 +502,9 @@ again:
>                  ret = ENOMEM;
>                  goto done;
>              }
> -            ret = sysdb_attrs_users_from_str_list(members, SYSDB_MEMBER,
> -                                                  dom->name,
> -                                                  (const char 
> **)grp->gr_mem);
> +            ret = sysdb_attrs_users_from_str_list(
> +                    members, SYSDB_MEMBER, dom->name,
> +                    (const char *const *)grp->gr_mem);
>              if (ret) {
>                  goto done;
>              }
> @@ -653,9 +653,9 @@ again:
>                  ret = ENOMEM;
>                  goto done;
>              }
> -            ret = sysdb_attrs_users_from_str_list(members, SYSDB_MEMBER,
> -                                                  dom->name,
> -                                                  (const char 
> **)grp->gr_mem);
> +            ret = sysdb_attrs_users_from_str_list(
> +                    members, SYSDB_MEMBER, dom->name,
> +                    (const char *const *)grp->gr_mem);
>              if (ret) {
>                  goto done;
>              }
> @@ -808,9 +808,9 @@ again:
>                  ret = ENOMEM;
>                  goto done;
>              }
> -            ret = sysdb_attrs_users_from_str_list(members, SYSDB_MEMBER,
> -                                                  dom->name,
> -                                                  (const char 
> **)grp->gr_mem);
> +            ret = sysdb_attrs_users_from_str_list(
> +                    members, SYSDB_MEMBER, dom->name,
> +                    (const char *const *)grp->gr_mem);
>              if (ret) {
>                  goto done;
>              }
> -- 
> 1.7.3.2
> 

> From 65ab873f5d7736a682579c0bf5904e41a8777a16 Mon Sep 17 00:00:00 2001
> From: Stephen Gallagher <sgall...@redhat.com>
> Date: Mon, 15 Nov 2010 14:58:17 -0500
> Subject: [PATCH 5/7] Fix const cast warning in confdb_create_ldif
> 
> ---
>  src/confdb/confdb_setup.c |    8 ++++----
>  1 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/src/confdb/confdb_setup.c b/src/confdb/confdb_setup.c
> index 
> f98a69772f13edc3d493d448151479b018a1eaca..6c68461faf1e14270a03dc979c4b9c21c0374af2
>  100644
> --- a/src/confdb/confdb_setup.c
> +++ b/src/confdb/confdb_setup.c
> @@ -128,7 +128,7 @@ int confdb_create_base(struct confdb_ctx *cdb)
>  
>  static int confdb_create_ldif(TALLOC_CTX *mem_ctx,
>                                struct collection_item *sssd_config,
> -                              char **config_ldif)
> +                              const char **config_ldif)
>  {
>      int ret, i, j;
>      char *ldif;
> @@ -260,7 +260,7 @@ static int confdb_create_ldif(TALLOC_CTX *mem_ctx,
>  
>      free_section_list(sections);
>  
> -    *config_ldif = ldif;
> +    *config_ldif = (const char *)ldif;
>      talloc_free(tmp_ctx);
>      return EOK;
>  
> @@ -276,7 +276,7 @@ int confdb_init_db(const char *config_file, struct 
> confdb_ctx *cdb)
>      struct collection_item *sssd_config = NULL;
>      struct collection_item *error_list = NULL;
>      struct collection_item *item = NULL;
> -    char *config_ldif;
> +    const char *config_ldif;
>      struct ldb_ldif *ldif;
>      TALLOC_CTX *tmp_ctx;
>      char *lasttimestr, timestr[21];
> @@ -395,7 +395,7 @@ int confdb_init_db(const char *config_file, struct 
> confdb_ctx *cdb)
>  
>      DEBUG(7, ("LDIF file to import: \n%s", config_ldif));
>  
> -    while ((ldif = ldb_ldif_read_string(cdb->ldb, (const char 
> **)&config_ldif))) {
> +    while ((ldif = ldb_ldif_read_string(cdb->ldb, &config_ldif))) {
>          ret = ldb_add(cdb->ldb, ldif->msg);
>          if (ret != LDB_SUCCESS) {
>              DEBUG(0, ("Failed to initialize DB (%d,[%s]), aborting!\n",
> -- 
> 1.7.3.2
> 

> From 4701c7eb31d717e153e7750e1149b68727cf6e5f Mon Sep 17 00:00:00 2001
> From: Stephen Gallagher <sgall...@redhat.com>
> Date: Mon, 15 Nov 2010 15:14:37 -0500
> Subject: [PATCH 6/7] Fix const cast warnings in tests
> 
> ---
>  src/tests/files-tests.c |    2 +-
>  src/tests/sysdb-tests.c |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/tests/files-tests.c b/src/tests/files-tests.c
> index 
> bd2de545dd9cad6c3101d313e30403a52aea8a19..7f6b41ed16159fecec8bb75f5fa316c446d48192
>  100644
> --- a/src/tests/files-tests.c
> +++ b/src/tests/files-tests.c
> @@ -297,7 +297,7 @@ static Suite *files_suite(void)
>      return s;
>  }
>  
> -int main(int argc, char *argv[])
> +int main(int argc, const char *argv[])
>  {
>      int number_failed;
>      int opt;
> diff --git a/src/tests/sysdb-tests.c b/src/tests/sysdb-tests.c
> index 
> 77409c3efafcc503b1f7e64c9fdc475cac7d9cae..797b18d63f482ba3cf9dcf0e8d0d6cb676b37312
>  100644
> --- a/src/tests/sysdb-tests.c
> +++ b/src/tests/sysdb-tests.c
> @@ -2720,7 +2720,7 @@ START_TEST(test_odd_characters)
>      struct sysdb_test_ctx *test_ctx;
>      struct ldb_result *res;
>      struct ldb_message *msg;
> -    struct ldb_val *val;
> +    const struct ldb_val *val;
>      const char odd_username[] = "*(odd)\\user,name";
>      const char odd_groupname[] = "*(odd\\*)\\group,name";
>      const char odd_netgroupname[] = "*(odd\\*)\\netgroup,name";
> -- 
> 1.7.3.2
> 







> _______________________________________________
> sssd-devel mailing list
> sssd-devel@lists.fedorahosted.org
> https://fedorahosted.org/mailman/listinfo/sssd-devel

_______________________________________________
sssd-devel mailing list
sssd-devel@lists.fedorahosted.org
https://fedorahosted.org/mailman/listinfo/sssd-devel

Reply via email to