Todd C. Miller:

> This is probably the right thing to do but we should fix the warnings
> it generates.  In this new world order, passing a const char * to
> basename() or dirname() is unsafe.

FWIW, here's the list:

/usr/src/lib/libkvm/kvm.c:684:16: warning: passing 'const char *' to parameter 
of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
        uf = basename(uf);
                      ^~
/usr/src/bin/chio/parse.y:449:23: warning: passing 'const char *' to parameter 
of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                if (strcmp(basename(changer), p->name) == 0) {
                                    ^~~~~~~
/usr/src/sbin/pfctl/pfctl.c:2250:15: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                n = dirname(anchor);
                            ^~~~~~
/usr/src/sbin/pfctl/pfctl.c:2253:16: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                n = basename(anchor);
                             ^~~~~~
/usr/src/usr.bin/compress/main.c:537:19: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                name = basename(in);
                                ^~
/usr/src/usr.bin/cvs/checkout.c:398:14: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
        d = dirname(repo);
                    ^~~~
/usr/src/usr.bin/cvs/checkout.c:399:15: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
        f = basename(repo);
                     ^~~~
/usr/src/usr.bin/ftp/fetch.c:219:24: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                        savefile = basename(path);
                                            ^~~~
/usr/src/usr.bin/ftp/util.c:785:23: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                filename = basename(filename);
                                    ^~~~~~~~
/usr/src/usr.bin/patch/backupfile.c:61:34: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
        base_versions = concat(basename(file), ".~");
                                        ^~~~
/usr/src/usr.bin/patch/backupfile.c:64:16: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
        dir = dirname(file);
                      ^~~~
/usr/src/usr.bin/rcs/rlog.c:367:27: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
        if ((workfile = basename(fname)) == NULL)
                                 ^~~~~
/usr/src/usr.bin/sed/main.c:401:16: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                            dirname(fname));
                                    ^~~~~
/usr/src/usr.sbin/hotplugd/hotplugd.c:166:24: warning: passing 'const char *' 
to parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                execl(file, basename(file), strclass, name, (char *)NULL);
                                     ^~~~
/usr/src/usr.sbin/vmd/vioqcow2.c:189:15: warning: passing 'const char *' to 
parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                s = dirname(dpath);
                            ^~~~~
/usr/src/usr.sbin/vmctl/../vmd/vioqcow2.c:189:15: warning: passing 'const char 
*' to parameter of type 'char *' discards qualifiers 
[-Wincompatible-pointer-types-discards-qualifiers]
                s = dirname(dpath);
                            ^~~~~

-- 
Christian "naddy" Weisgerber                          [email protected]

Reply via email to