From 3736a265d868f29f2c22fe04292435b191efd61e Mon Sep 17 00:00:00 2001 From: Florian Westphal Date: Thu, 14 Jun 2012 10:33:15 +0200 Subject: [PATCH] psd: reduce size of struct host We can use u16, saving 8 bytes total (weight cannot exceed PSD_MAX_RATE, 10000). Also re-format comments & struct initializers. No functional changes. --- extensions/libxt_psd.c | 24 ++++++++++++------------ extensions/xt_psd.c | 7 ++++--- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/extensions/libxt_psd.c b/extensions/libxt_psd.c index e60178b..483c69a 100644 --- a/extensions/libxt_psd.c +++ b/extensions/libxt_psd.c @@ -137,19 +137,19 @@ static void psd_mt_save(const void *ip, const struct xt_entry_match *match) } static struct xtables_match psd_mt_reg = { - .name = "psd", - .version = XTABLES_VERSION, - .revision = 1, - .family = NFPROTO_IPV4, - .size = XT_ALIGN(sizeof(struct xt_psd_info)), + .name = "psd", + .version = XTABLES_VERSION, + .revision = 1, + .family = NFPROTO_IPV4, + .size = XT_ALIGN(sizeof(struct xt_psd_info)), .userspacesize = XT_ALIGN(sizeof(struct xt_psd_info)), - .help = psd_mt_help, - .init = psd_mt_init, - .parse = psd_mt_parse, - .final_check = psd_mt_final_check, - .print = psd_mt_print, - .save = psd_mt_save, - .extra_opts = psd_mt_opts, + .help = psd_mt_help, + .init = psd_mt_init, + .parse = psd_mt_parse, + .final_check = psd_mt_final_check, + .print = psd_mt_print, + .save = psd_mt_save, + .extra_opts = psd_mt_opts, }; static __attribute__((constructor)) void psd_mt_ldr(void) diff --git a/extensions/xt_psd.c b/extensions/xt_psd.c index 5f19351..f5fcca0 100644 --- a/extensions/xt_psd.c +++ b/extensions/xt_psd.c @@ -61,9 +61,9 @@ struct host { unsigned long timestamp; struct in_addr src_addr; struct in_addr dest_addr; - unsigned short src_port; - int count; - int weight; + __be16 src_port; + uint16_t count; + uint8_t weight; struct port ports[SCAN_MAX_COUNT-1]; }; @@ -77,6 +77,7 @@ static struct { spinlock_t lock; struct host list[LIST_SIZE]; struct host *hash[HASH_SIZE]; + int index; } state; /* -- 2.47.3