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=d0976dc01f75c9437467f54c2064c098434c84c4;hb=bea3921ba41eb9294b02462de2fe9856c05530e5;hpb=4068e14da426a68677d3562c619b54dcfff2cc5d diff --git a/linux/include/linux/netfilter_ipv4/ipt_ACCOUNT.h b/linux/include/linux/netfilter_ipv4/ipt_ACCOUNT.h index d0976dc..3d59241 100644 --- a/linux/include/linux/netfilter_ipv4/ipt_ACCOUNT.h +++ b/linux/include/linux/netfilter_ipv4/ipt_ACCOUNT.h @@ -19,19 +19,27 @@ struct ipt_account_table char name[ACCOUNT_TABLE_NAME_LEN]; /* name of the table */ 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 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 */