Holger Waechtler wrote:
struct dvb_atsc_parameters {
fe_modulation_t modulation;
/* anything more? maybe 8VSB or 16VSB? */
};
struct dvb_frontend_parameters {
__u32 frequency;
fe_spectral_inversion_t inversion;
union {
struct dvb_qpsk_parameters qpsk;
struct dvb_qam_parameters qam;
struct dvb_ofdm_parameters ofdm;
struct dvb_atsc_parameters atsc;
} u;
};
But you better make sure dvb_atsc_parameters isn't larger
than any of the other ones; if the size of struct
dvb_frontend_parameters changes, you'll break binary
compatibility.
are you sure? It should be safe because the extended struct fields would
only get accessed it (fe_type == FE_ATSC), not?