diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-10-03 00:49:06 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2011-10-03 00:49:06 +0200 |
commit | 14fae227e03e69df2bf8af4c1490929459727ca8 (patch) | |
tree | ec5127d92fe9d432f1b3d1d772c6e6c4245cb6ec /config.h | |
parent | 56ca2eb93d0c10fbba87b40116872ed63e3e6ad5 (diff) |
add functions for checking for config differences
Diffstat (limited to 'config.h')
-rw-r--r-- | config.h | 18 |
1 files changed, 18 insertions, 0 deletions
@@ -25,6 +25,24 @@ struct config_param_list { const struct config_param_list *next[]; }; +#ifndef BITS_PER_LONG +#define BITS_PER_LONG (8 * sizeof(unsigned long)) +#endif + +static inline void set_bit(unsigned long *bits, int bit) +{ + bits[bit / BITS_PER_LONG] |= (1UL << (bit % BITS_PER_LONG)); +} + +static inline bool test_bit(unsigned long *bits, int bit) +{ + return !!(bits[bit / BITS_PER_LONG] & (1UL << (bit % BITS_PER_LONG))); +} + void config_init_interfaces(const char *name); +bool config_check_equal(struct blob_attr *c1, struct blob_attr *c2, + const struct config_param_list *config); +bool config_diff(struct blob_attr **tb1, struct blob_attr **tb2, + const struct config_param_list *config, unsigned long *diff); #endif |