ebtables: Constify option struct
cover ebtables: Constify option struct
The struct option is generally used only to initialise fields inside certain structs and is not modified anywhere. Done using Coccinelle:
@r1 disable optional_qualifier@
identifier s,i;
position p;
@@
static struct option i@p[] ={...};
@ok1@
identifier r1.i;
expression e;
position p;
@@
e = i@p
@bad@
position p != {r1.p,ok1.p};
identifier r1.i;
@@
e@i@p
@depends on !bad disable optional_qualifier@
identifier r1.i;
@@
static
+const
struct option i[] = { ... };
Gargi Sharma (3):
ebtables: extensions: Constify option struct
ebtables: extensions: Constify option struct
ebtables: extensions: Constify option struct
extensions/ebt_802_3.c | 2 +- extensions/ebt_among.c | 2 +- extensions/ebt_arp.c | 2 +- extensions/ebt_arpreply.c | 2 +- extensions/ebt_inat.c | 4 ++-- extensions/ebt_ip.c | 2 +- extensions/ebt_limit.c | 2 +- extensions/ebt_log.c | 2 +- extensions/ebt_mark.c | 2 +- extensions/ebt_mark_m.c | 2 +- extensions/ebt_nat.c | 4 ++-- extensions/ebt_nflog.c | 2 +- extensions/ebt_pkttype.c | 2 +- extensions/ebt_redirect.c | 2 +- extensions/ebt_standard.c | 2 +- extensions/ebt_stp.c | 2 +- extensions/ebt_ulog.c | 2 +- extensions/ebt_vlan.c | 2 +- 18 files changed, 20 insertions(+), 20 deletions(-)
Signature · 1 line
2.7.4
PATCH 1/3 ebtables: extensions: Constify option struct
The struct of the type option is only used to initialise a field inside the ebt_u_watcher struct and is not modified anywhere.
--- extensions/ebt_log.c | 2 +- extensions/ebt_nflog.c | 2 +- extensions/ebt_ulog.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)
extensions/ebt_log.c +1 -1
@@ -61,7 +61,7 @@ static int name_to_loglevel(char* arg)#define LOG_IP '4'#define LOG_LOG '5'#define LOG_IP6 '6' -static struct option opts[] = +static const struct option opts[] = { {"log-prefix" , required_argument,0 ,LOG_PREFIX }, {"log-level" , required_argument,0 ,LOG_LEVEL },
extensions/ebt_nflog.c +1 -1
@@ -25,7 +25,7 @@ enum { NFLOG_NFLOG = 0x16, }; -static struct option nflog_opts[] = { +static const struct option nflog_opts[] = { {"nflog-group" , required_argument,NULL ,NFLOG_GROUP }, {"nflog-prefix" , required_argument,NULL ,NFLOG_PREFIX }, {"nflog-range" , required_argument,NULL ,NFLOG_RANGE },
extensions/ebt_ulog.c +1 -1
@@ -24,7 +24,7 @@#define ULOG_CPRANGE '3'#define ULOG_QTHRESHOLD '4'#define ULOG_ULOG '5' -static struct option opts[] = +static const struct option opts[] = { {"ulog-prefix" , required_argument,0 ,ULOG_PREFIX }, {"ulog-nlgroup" , required_argument,0 ,ULOG_NLGROUP },
Signature · 1 line
2.7.4
PATCH 2/3 ebtables: extensions: Constify option struct
In reply to Gargi SharmaThe struct of the type option is only used to initialise a field inside the ebt_u_target struct and is not modified anywhere.
--- extensions/ebt_arpreply.c | 2 +- extensions/ebt_inat.c | 4 ++-- extensions/ebt_mark.c | 2 +- extensions/ebt_nat.c | 4 ++-- extensions/ebt_redirect.c | 2 +- extensions/ebt_standard.c | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-)
extensions/ebt_arpreply.c +1 -1
@@ -19,7 +19,7 @@ static int mac_supplied;#define REPLY_MAC '1'#define REPLY_TARGET '2' -static struct option opts[] = +static const struct option opts[] = { {"arpreply-mac" , required_argument,0 ,REPLY_MAC }, {"arpreply-target" , required_argument,0 ,REPLY_TARGET },
extensions/ebt_inat.c +2 -2
@@ -23,7 +23,7 @@ static int s_sub_supplied, d_sub_supplied;#define NAT_D_SUB '2'#define NAT_S_TARGET '3'#define NAT_D_TARGET '3' -static struct option opts_s[] = +static const struct option opts_s[] = { {"isnat-list" , required_argument,0 ,NAT_S }, {"isnat-sub" , required_argument,0 ,NAT_S_SUB },
@@ -31,7 +31,7 @@ static struct option opts_s[] = { 0 } }; -static struct option opts_d[] = +static const struct option opts_d[] = { {"idnat-list" , required_argument,0 ,NAT_D }, {"idnat-sub" , required_argument,0 ,NAT_D_SUB },
extensions/ebt_mark.c +1 -1
@@ -20,7 +20,7 @@ static int mark_supplied;#define MARK_ORMARK '3'#define MARK_ANDMARK '4'#define MARK_XORMARK '5' -static struct option opts[] = +static const struct option opts[] = { {"mark-target" , required_argument,0 ,MARK_TARGET },/* an oldtime messup, we should have always used the scheme
extensions/ebt_nat.c +2 -2
@@ -21,7 +21,7 @@ static int to_source_supplied, to_dest_supplied;#define NAT_S_TARGET '2'#define NAT_D_TARGET '2'#define NAT_S_ARP '3' -static struct option opts_s[] = +static const struct option opts_s[] = { {"to-source" , required_argument,0 ,NAT_S }, {"to-src" , required_argument,0 ,NAT_S },
@@ -30,7 +30,7 @@ static struct option opts_s[] = { 0 } }; -static struct option opts_d[] = +static const struct option opts_d[] = { {"to-destination" , required_argument,0 ,NAT_D }, {"to-dst" , required_argument,0 ,NAT_D },
extensions/ebt_redirect.c +1 -1
@@ -14,7 +14,7 @@#include <linux/netfilter_bridge/ebt_redirect.h> #define REDIRECT_TARGET '1' -static struct option opts[] = +static const struct option opts[] = { {"redirect-target" , required_argument,0 ,REDIRECT_TARGET }, {0 }
extensions/ebt_standard.c +1 -1
@@ -11,7 +11,7 @@#include <getopt.h> #include "../include/ebtables_u.h" -static struct option opts[] = +static const struct option opts[] = { {0 } };
Signature · 1 line
2.7.4
PATCH 3/3 ebtables: extensions: Constify option struct
In reply to Gargi SharmaThe struct of the type option is only used to initialise a field inside the ebt_u_match struct and is not modified anywhere.
--- extensions/ebt_802_3.c | 2 +- extensions/ebt_among.c | 2 +- extensions/ebt_arp.c | 2 +- extensions/ebt_ip.c | 2 +- extensions/ebt_limit.c | 2 +- extensions/ebt_mark_m.c | 2 +- extensions/ebt_pkttype.c | 2 +- extensions/ebt_stp.c | 2 +- extensions/ebt_vlan.c | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-)
extensions/ebt_802_3.c +1 -1
@@ -17,7 +17,7 @@#define _802_3_SAP '1'#define _802_3_TYPE '2' -static struct option opts[] = +static const struct option opts[] = { {"802_3-sap" , required_argument,0 , _802_3_SAP }, {"802_3-type" , required_argument,0 , _802_3_TYPE },
extensions/ebt_among.c +1 -1
@@ -26,7 +26,7 @@#define AMONG_DST_F '3'#define AMONG_SRC_F '4' -static struct option opts[] = { +static const struct option opts[] = { {"among-dst" , required_argument,0 ,AMONG_DST }, {"among-src" , required_argument,0 ,AMONG_SRC }, {"among-dst-file" , required_argument,0 ,AMONG_DST_F },
extensions/ebt_arp.c +1 -1
@@ -24,7 +24,7 @@#define ARP_MAC_S '6'#define ARP_MAC_D '7'#define ARP_GRAT '8' -static struct option opts[] = +static const struct option opts[] = { {"arp-opcode" , required_argument,0 ,ARP_OPCODE }, {"arp-op" , required_argument,0 ,ARP_OPCODE },
extensions/ebt_ip.c +1 -1
@@ -25,7 +25,7 @@#define IP_SPORT '5'#define IP_DPORT '6' -static struct option opts[] = +static const struct option opts[] = { {"ip-source" , required_argument,0 ,IP_SOURCE }, {"ip-src" , required_argument,0 ,IP_SOURCE },
extensions/ebt_limit.c +1 -1
@@ -41,7 +41,7 @@ static int string_to_number(const char *s, unsigned int min, unsigned int max,#define ARG_LIMIT '1'#define ARG_LIMIT_BURST '2' -static struct option opts[] = +static const struct option opts[] = { {"limit" , required_argument,0 ,ARG_LIMIT }, {"limit-burst" , required_argument,0 ,ARG_LIMIT_BURST },
extensions/ebt_mark_m.c +1 -1
@@ -15,7 +15,7 @@#define MARK '1' -static struct option opts[] = +static const struct option opts[] = { {"mark" , required_argument,0 ,MARK }, {0 }
extensions/ebt_pkttype.c +1 -1
@@ -27,7 +27,7 @@ char *classes[] ="\0" }; -static struct option opts[] = +static const struct option opts[] = { {"pkttype-type" , required_argument,0 ,'1' }, {0 }
extensions/ebt_stp.c +1 -1
@@ -27,7 +27,7 @@#define STP_FWDD 'l'#define STP_NUMOPS 12 -static struct option opts[] = +static const struct option opts[] = { {"stp-type" , required_argument,0 ,STP_TYPE }, {"stp-flags" , required_argument,0 ,STP_FLAGS },
extensions/ebt_vlan.c +1 -1
@@ -25,7 +25,7 @@#define VLAN_PRIO '2'#define VLAN_ENCAP '3' -static struct option opts[] = { +static const struct option opts[] = { {"vlan-id" , required_argument,NULL ,VLAN_ID }, {"vlan-prio" , required_argument,NULL ,VLAN_PRIO }, {"vlan-encap" , required_argument,NULL ,VLAN_ENCAP },
Signature · 1 line
2.7.4
Pablo Neira Ayuso
maintainerQuoted 31 lines · Gargi Sharma
The struct option is generally used only to initialise fields inside certain structs and is not modified anywhere. Done using Coccinelle:
@r1 disable optional_qualifier@
identifier s,i;
position p;
@@static struct option i@p[] ={...};
@ok1@
identifier r1.i;
expression e;
position p;
@@
e = i@p@bad@
position p != {r1.p,ok1.p};
identifier r1.i;
@@
e@i@p@depends on !bad disable optional_qualifier@
identifier r1.i;
@@
static
+const
struct option i[] = { ... };
Quoted 4 lines
Gargi Sharma (3):
ebtables: extensions: Constify option struct
ebtables: extensions: Constify option struct
ebtables: extensions: Constify option struct
Please, collapse this patches in one single.
They are part of the same logical update and...
Quoted 11 lines
extensions/ebt_802_3.c | 2 +- extensions/ebt_among.c | 2 +- extensions/ebt_arp.c | 2 +- extensions/ebt_arpreply.c | 2 +- extensions/ebt_inat.c | 4 ++-- extensions/ebt_ip.c | 2 +- extensions/ebt_limit.c | 2 +- extensions/ebt_log.c | 2 +- extensions/ebt_mark.c | 2 +- extensions/ebt_mark_m.c | 2 +- extensions/ebt_nat.c | 4 ++--
Quoted 8 lines
extensions/ebt_nflog.c | 2 +- extensions/ebt_pkttype.c | 2 +- extensions/ebt_redirect.c | 2 +- extensions/ebt_standard.c | 2 +- extensions/ebt_stp.c | 2 +- extensions/ebt_ulog.c | 2 +- extensions/ebt_vlan.c | 2 +- 18 files changed, 20 insertions(+), 20 deletions(-)
diffstat shows this update is rather small.