Comment 8 for bug 663651

Revision history for this message
Bob Wiegand (bob-stuffofmine) wrote :

I think I see a problem.

in ir-sysfs.c is the following:

        if (!strncasecmp(tmp, "unknown", 7)) {
                tmp += 7;
                mask = IR_TYPE_UNKNOWN;
        } else if (!strncasecmp(tmp, "rc5", 3)) {
                tmp += 3;
                mask = IR_TYPE_RC5;
        } else if (!strncasecmp(tmp, "nec", 3)) {
                tmp += 3;
                mask = IR_TYPE_NEC;
        } else if (!strncasecmp(tmp, "rc6", 3)) {
                tmp += 3;
                mask = IR_TYPE_RC6;
        } else if (!strncasecmp(tmp, "jvc", 3)) {
                tmp += 3;
                mask = IR_TYPE_JVC;
        } else if (!strncasecmp(tmp, "sony", 4)) {
                tmp += 4;
                mask = IR_TYPE_SONY;
        } else if (!strncasecmp(tmp, "rc5sz", 5)) {
                tmp += 5;
                mask = IR_TYPE_RC5_SZ;
        } else if (!strncasecmp(tmp, "lirc", 4)) {
                tmp += 4;
                mask = IR_TYPE_LIRC;
        } else {
                IR_dprintk(1, "Unknown protocol\n");
                return -EINVAL;
        }

If "rc5sz" is entered, the check for "rc5" will pass.