lib/util: fix const warnings
authorStefan Metzmacher <metze@samba.org>
Wed, 26 Feb 2014 06:38:07 +0000 (07:38 +0100)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 2 Apr 2014 07:03:42 +0000 (09:03 +0200)
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
lib/util/parmlist.c
lib/util/tevent_debug.c
lib/util/util_runcmd.c
lib/util/util_strlist.c

index 0f2f3af8eea8f27601951c818304d937d2011c65..b3e1e9fc48e1ccb5303c9ed1f169b80742df818d 100644 (file)
@@ -74,11 +74,14 @@ const char **parmlist_get_string_list(struct parmlist *ctx, const char *name,
                                                                          const char *separator)
 {
        struct parmlist_entry *p = parmlist_get(ctx, name);
+       char **l;
 
-       if (p == NULL)
+       if (p == NULL) {
                return NULL;
+       }
 
-       return (const char **)str_list_make(ctx, p->value, separator);
+       l = str_list_make(ctx, p->value, separator);
+       return discard_const_p(const char *, l);
 }
 
 static struct parmlist_entry *parmlist_get_add(struct parmlist *ctx, const char *name)
index 3f8c649a0b6ffd99008310eb9bd4b88bddde971c..bfbaed648e5da0d6871dca454d5ef9b4f63c926e 100644 (file)
@@ -67,7 +67,8 @@ static void samba_tevent_debug(void *context,
 
 void samba_tevent_set_debug(struct tevent_context *ev, const char *name)
 {
-       tevent_set_debug(ev, samba_tevent_debug, name);
+       void *p = discard_const(name);
+       tevent_set_debug(ev, samba_tevent_debug, p);
 }
 
 struct tevent_context *samba_tevent_context_init(TALLOC_CTX *mem_ctx)
index bc5cc10a8bcd004a26c1a07a186fec4830c387f1..c8547de694ab975d5792be090d2929d8cd4eba00 100644 (file)
@@ -204,13 +204,16 @@ struct tevent_req *samba_runcmd_send(TALLOC_CTX *mem_ctx,
 
        va_start(ap, argv0);
        while (1) {
+               const char **l;
                char *arg = va_arg(ap, char *);
                if (arg == NULL) break;
-               argv = discard_const_p(char *, str_list_add((const char **)argv, arg));
-               if (!argv) {
+               l = discard_const_p(const char *, argv);
+               l = str_list_add(l, arg);
+               if (l == NULL) {
                        fprintf(stderr, "Out of memory in child\n");
                        _exit(255);
                }
+               argv = discard_const_p(char *, l);
        }
        va_end(ap);
 
index e8d2a74221803d92fdbbd47c461db342e1dde97a..8397589d747282e3f0b3bd4ea37190aec883c2f0 100644 (file)
@@ -519,6 +519,6 @@ _PUBLIC_ const char **str_list_copy_const(TALLOC_CTX *mem_ctx,
  */
 _PUBLIC_ const char **const_str_list(char **list)
 {
-       return (const char **)list;
+       return discard_const_p(const char *, list);
 }