tag | line | file | source code |
nat | 48 | include/linux/net_alias.h | struct net_alias_type *nat; /* alias type object bound */ |
nat | 122 | include/linux/net_alias.h | extern int register_net_alias_type(struct net_alias_type *nat, int type); |
nat | 123 | include/linux/net_alias.h | extern int unregister_net_alias_type(struct net_alias_type *nat); |
nat | 57 | net/core/net_alias.c | static int nat_attach_chg(struct net_alias_type *nat, int delta); |
nat | 58 | net/core/net_alias.c | static int nat_bind(struct net_alias_type *nat,struct net_alias *alias, struct sockaddr *sa); |
nat | 59 | net/core/net_alias.c | static int nat_unbind(struct net_alias_type *nat, struct net_alias *alias); |
nat | 64 | net/core/net_alias.c | static int net_alias_devsetup(struct net_alias *alias, struct net_alias_type *nat, struct sockaddr *sa); |
nat | 84 | net/core/net_alias.c | struct net_alias_type *nat; |
nat | 85 | net/core/net_alias.c | for(nat = nat_base[type & 0x0f]; nat ; nat = nat->next) |
nat | 87 | net/core/net_alias.c | if (nat->type == type) return nat; |
nat | 99 | net/core/net_alias.c | nat_addr32(struct net_alias_type *nat, struct sockaddr *sa) |
nat | 101 | net/core/net_alias.c | if (nat->get_addr32) |
nat | 102 | net/core/net_alias.c | return nat->get_addr32(nat, sa); |
nat | 130 | net/core/net_alias.c | nat_hash_key(struct net_alias_type *nat, struct sockaddr *sa) |
nat | 132 | net/core/net_alias.c | return HASH(nat_addr32(nat,sa), sa->sa_family); |
nat | 141 | net/core/net_alias.c | nat_attach_chg(struct net_alias_type *nat, int delta) |
nat | 145 | net/core/net_alias.c | if (!nat) return -1; |
nat | 148 | net/core/net_alias.c | n_at = nat->n_attach + delta; |
nat | 153 | net/core/net_alias.c | nat->type); |
nat | 156 | net/core/net_alias.c | nat->n_attach = n_at; |
nat | 167 | net/core/net_alias.c | nat_bind(struct net_alias_type *nat,struct net_alias *alias, struct sockaddr *sa) |
nat | 169 | net/core/net_alias.c | if (nat->alias_init_1) nat->alias_init_1(nat, alias, sa); |
nat | 170 | net/core/net_alias.c | return nat_attach_chg(nat, +1); |
nat | 179 | net/core/net_alias.c | nat_unbind(struct net_alias_type *nat, struct net_alias *alias) |
nat | 181 | net/core/net_alias.c | if (nat->alias_done_1) nat->alias_done_1(nat, alias); |
nat | 182 | net/core/net_alias.c | return nat_attach_chg(nat, -1); |
nat | 191 | net/core/net_alias.c | static __inline__ int nat_dev_addr_chk_1(struct net_alias_type *nat, |
nat | 194 | net/core/net_alias.c | if (nat->dev_addr_chk) |
nat | 195 | net/core/net_alias.c | return nat->dev_addr_chk(nat, dev, sa); |
nat | 235 | net/core/net_alias.c | net_alias_devsetup(struct net_alias *alias, struct net_alias_type *nat, |
nat | 329 | net/core/net_alias.c | struct net_alias_type *nat; |
nat | 348 | net/core/net_alias.c | nat = nat_getbytype(family); |
nat | 349 | net/core/net_alias.c | if (!nat) |
nat | 390 | net/core/net_alias.c | alias->nat = nat; |
nat | 399 | net/core/net_alias.c | net_alias_devsetup(alias, nat, sa); |
nat | 411 | net/core/net_alias.c | nat_bind(nat, alias, sa); |
nat | 418 | net/core/net_alias.c | addr32 = (sa)? nat_addr32(nat, sa) : alias->dev.pa_addr; |
nat | 468 | net/core/net_alias.c | struct net_alias_type *nat; |
nat | 526 | net/core/net_alias.c | nat = alias->nat; |
nat | 535 | net/core/net_alias.c | nat_unbind(nat, alias); |
nat | 586 | net/core/net_alias.c | struct net_alias_type *nat; |
nat | 626 | net/core/net_alias.c | nat = alias->nat; |
nat | 627 | net/core/net_alias.c | if (nat) |
nat | 629 | net/core/net_alias.c | nat_unbind(nat, alias); |
nat | 773 | net/core/net_alias.c | o_nat = alias->nat; |
nat | 872 | net/core/net_alias.c | struct net_alias_type *nat; |
nat | 876 | net/core/net_alias.c | for (nat = nat_base[idx]; nat ; nat = nat->next) |
nat | 879 | net/core/net_alias.c | nat->type, nat->name,nat->n_attach); |
nat | 910 | net/core/net_alias.c | struct net_alias_type *nat; |
nat | 919 | net/core/net_alias.c | nat = alias->nat; |
nat | 926 | net/core/net_alias.c | if (nat->alias_print_1) |
nat | 927 | net/core/net_alias.c | dlen += nat->alias_print_1(nat, alias, buffer+len+dlen, NET_ALIASES_RECSIZ - dlen); |
nat | 995 | net/core/net_alias.c | nat_addr_chk(struct net_alias_type *nat, struct net_alias_info *alias_info, struct sockaddr *sa, int flags_on, int flags_off) |
nat | 998 | net/core/net_alias.c | for(alias = alias_info->hash_tab[nat_hash_key(nat,sa)]; |
nat | 1008 | net/core/net_alias.c | nat_dev_addr_chk_1(nat,&alias->dev,sa)) |
nat | 1020 | net/core/net_alias.c | nat_addr_chk32(struct net_alias_type *nat, struct net_alias_info *alias_info, int family, __u32 addr32, int flags_on, int flags_off) |
nat | 1049 | net/core/net_alias.c | struct net_alias_type *nat; |
nat | 1061 | net/core/net_alias.c | nat = nat_getbytype(sa->sa_family); |
nat | 1062 | net/core/net_alias.c | if (!nat) |
nat | 1065 | net/core/net_alias.c | return nat_addr_chk(nat, alias_info, sa, flags_on, flags_off); |
nat | 1100 | net/core/net_alias.c | struct net_alias_type *nat; |
nat | 1124 | net/core/net_alias.c | if ( (nat = nat_getbytype(family)) == NULL ) return main_dev; |
nat | 1132 | net/core/net_alias.c | if (nat_dev_addr_chk_1(nat, main_dev,sa_dst)) |
nat | 1135 | net/core/net_alias.c | dev = nat_addr_chk(nat, alias_info, sa_dst, IFF_UP, 0); |
nat | 1144 | net/core/net_alias.c | if ( sa_src == NULL || nat->dev_select == NULL) return main_dev; |
nat | 1145 | net/core/net_alias.c | dev = nat->dev_select(nat, main_dev, sa_src); |
nat | 1171 | net/core/net_alias.c | struct net_alias_type *nat; |
nat | 1198 | net/core/net_alias.c | if ( (nat = nat_getbytype(family)) == NULL ) return main_dev; |
nat | 1206 | net/core/net_alias.c | dev = nat_addr_chk32(nat, alias_info, family, dst, IFF_UP, 0); |
nat | 1214 | net/core/net_alias.c | if ( src == 0 || nat->dev_select == NULL) return main_dev; |
nat | 1219 | net/core/net_alias.c | dev = nat->dev_select(nat, main_dev, (struct sockaddr *)&sin_src); |
nat | 1288 | net/core/net_alias.c | int register_net_alias_type(struct net_alias_type *nat, int type) |
nat | 1292 | net/core/net_alias.c | if (!nat) |
nat | 1297 | net/core/net_alias.c | nat->type = type; |
nat | 1298 | net/core/net_alias.c | nat->n_attach = 0; |
nat | 1299 | net/core/net_alias.c | hash = nat->type & 0x0f; |
nat | 1302 | net/core/net_alias.c | nat->next = nat_base[hash]; |
nat | 1303 | net/core/net_alias.c | nat_base[hash] = nat; |
nat | 1311 | net/core/net_alias.c | int unregister_net_alias_type(struct net_alias_type *nat) |
nat | 1317 | net/core/net_alias.c | if (!nat) |
nat | 1326 | net/core/net_alias.c | if (nat->n_attach) |
nat | 1329 | net/core/net_alias.c | nat->n_attach); |
nat | 1332 | net/core/net_alias.c | hash = nat->type & 0x0f; |
nat | 1337 | net/core/net_alias.c | if (nat==(*natp)) |
nat | 1339 | net/core/net_alias.c | *natp = nat->next; |
nat | 1345 | net/core/net_alias.c | printk("unregister_net_alias_type(type=%d): not found!\n", nat->type); |