• Joel Granados's avatar
    ax.25: x.25: Remove the now superfluous sentinel elements from ctl_table array · 78a7b5db
    Joel Granados authored
    This commit comes at the tail end of a greater effort to remove the
    empty elements at the end of the ctl_table arrays (sentinels) which will
    reduce the overall build time size of the kernel and run time memory
    bloat by ~64 bytes per sentinel (further information Link :
    https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/)
    
    Avoid a buffer overflow when traversing the ctl_table by ensuring that
    AX25_MAX_VALUES is the same as the size of ax25_param_table. This is
    done with a BUILD_BUG_ON where ax25_param_table is defined and a
    CONFIG_AX25_DAMA_SLAVE guard in the unnamed enum definition as well as
    in the ax25_dev_device_up and ax25_ds_set_timer functions.
    
    The overflow happened when the sentinel was removed from
    ax25_param_table. The sentinel's data element was changed when
    CONFIG_AX25_DAMA_SLAVE was undefined. This had no adverse effects as it
    still stopped on the sentinel's null procname but needed to be addressed
    once the sentinel was removed.
    Signed-off-by: default avatarJoel Granados <j.granados@samsung.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    78a7b5db
ax25_ds_timer.c 5.67 KB