Search Linux Wireless

Re: [PATCH 2/2] at76c50x-usb: set firmware and hardware version in wiphy

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Sep 24, 2009 at 2:13 PM, Joerg Albert <jal2@xxxxxx> wrote:
> On 09/24/2009 08:02 PM, Kalle Valo wrote:
>
>> +     len = sizeof(wiphy->fw_version);
>> +     snprintf(wiphy->fw_version, len, "%d.%d.%d-%d",
>> +              priv->fw_version.major, priv->fw_version.minor,
>> +              priv->fw_version.patch, priv->fw_version.build);
>> +
>> +     len = sizeof(wiphy->hw_version);
>> +     snprintf(wiphy->hw_version, len, "%d", priv->board_type);
>> +
>> +     /* null terminate the strings in case they were truncated */
>> +     wiphy->fw_version[len - 1] = '\0';
>> +     wiphy->hw_version[len - 1] = '\0';
>
> This only works as long as sizeof(wiphy->fw_version) == sizeof(wiphy->hw_version) - which is currently the case.
> For sizeof(wiphy->fw_version) < sizeof(wiphy_hw_version) it overwrites memory behind wiphy->fw_version.

Good point, thanks for catching that.

> IMHO this is more robust against changes in the lengths of the char arrays:
>
> +       wiphy->fw_version[sizeof(wiphy->fw_version) - 1] = '\0';
> +       wiphy->hw_version[sizeof(wiphy->hw_version) - 1] = '\0';

Actually Christian pointed out that snprintf() always null terminates
the string and all this unnecessary. So I'll just remove this in v2.

Kalle
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux