On Sunday 06 July 2008 13:31, Vladimir Dronnikov wrote:
> Exactly. And the use of fnmatch() is definitely required, or we loose
> many modules, particularly PCI.

Like this?

                /* "modname alias1 symbol:sym1 alias2 symbol:sym2 " */
                desc = xstrdup(modinfo[i].desc);
                /* Does matching substring exist? */
                replace(desc, ' ', '\0');
                for (s = desc; *s; s += strlen(s) + 1) {
                        /* aliases in module bodies can be defined with
                         * shell patterns. Example:
                         * "pci:v000010DEd000000D9sv*sd*bc*sc*i*".
                         * Plain strcmp() won't catch that */
                        if (fnmatch(s, alias, 0) == 0) {
                                free(desc);
                                dbg1_error_msg("found alias '%s' in module 
'%s'",
                                                alias, modinfo[i].pathname);
                                return &modinfo[i];
                        }
                }
--
vda
_______________________________________________
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox

Reply via email to