X-Git-Url: http://developer.intra2net.com/git/?p=ipt_ACCOUNT;a=blobdiff_plain;f=linux%2Finclude%2Flinux%2Fnetfilter_ipv4%2Fipt_ACCOUNT.h;h=3d5924144ff3cd368ccc10f1587c2545609bd23c;hp=9c362387ef43245543d4d9452e064b74741cc256;hb=bea3921ba41eb9294b02462de2fe9856c05530e5;hpb=3e722f3c32742ad4fb61bf5a7d6fc10fff6965ef diff --git a/linux/include/linux/netfilter_ipv4/ipt_ACCOUNT.h b/linux/include/linux/netfilter_ipv4/ipt_ACCOUNT.h index 9c36238..3d59241 100644 --- a/linux/include/linux/netfilter_ipv4/ipt_ACCOUNT.h +++ b/linux/include/linux/netfilter_ipv4/ipt_ACCOUNT.h @@ -17,20 +17,29 @@ struct ipt_account_info { struct ipt_account_table { char name[ACCOUNT_TABLE_NAME_LEN]; /* name of the table */ - unsigned int ip; /* base IP of network (-a option) */ - unsigned char netmask; /* netmask of the network (-a option) */ + unsigned int ip; /* base IP of network */ + unsigned int netmask; /* netmask of the network */ + unsigned char depth; /* size of network: 0: 8 bit, 1: 16bit, 2: 24 bit */ unsigned int refcount; /* refcount of this table. if zero, destroy it */ unsigned int itemcount; /* number of IPs in this table */ void *data; /* pointer to the actual data, depending on netmask */ }; -/* Handle structure for communication with the userspace library */ +/* Internal handle structure */ struct ipt_account_handle { - unsigned int ip; /* base IP of network */ - unsigned char netmask; /* netmask of the network */ + unsigned int ip; /* base IP of network. Used for caculating the final IP during get_data() */ + unsigned char depth; /* size of network. See above for details */ unsigned int itemcount; /* number of IPs in this table */ - void *data; /* pointer to the actual data, depending on netmask */ + void *data; /* pointer to the actual data, depending on size */ +}; + +/* Handle structure for communication with the userspace library */ +struct ipt_account_handle_sockopt +{ + unsigned int handle_nr; /* Used for HANDLE_FREE */ + char name[ACCOUNT_TABLE_NAME_LEN]; /* Used for HANDLE_PREPARE_READ/READ_FLUSH */ + unsigned int itemcount; /* Used for HANDLE_PREPARE_READ/READ_FLUSH */ }; /* Used for every IP entry */ @@ -66,7 +75,7 @@ struct ipt_account_mask_24 struct ipt_account_ip ip[256]; }; -struct iptt_account_mask_16 +struct ipt_account_mask_16 { struct ipt_account_mask_24 *mask_24[256]; };