Lines Matching refs:clone
5214 nat_t *clone;
5234 KMALLOC(clone, nat_t *);
5235 if (clone == NULL)
5237 bcopy((char *)nat, (char *)clone, sizeof(*clone));
5239 MUTEX_NUKE(&clone->nat_lock);
5241 clone->nat_aps = NULL;
5245 clone->nat_tqe.tqe_pnext = NULL;
5246 clone->nat_tqe.tqe_next = NULL;
5247 clone->nat_tqe.tqe_ifq = NULL;
5248 clone->nat_tqe.tqe_parent = clone;
5250 clone->nat_flags &= ~SI_CLONE;
5251 clone->nat_flags |= SI_CLONED;
5253 if (clone->nat_hm)
5254 clone->nat_hm->hm_ref++;
5256 if (nat_insert(clone, fin->fin_rev, ifs) == -1) {
5257 KFREE(clone);
5260 np = clone->nat_ptr;
5263 nat_log(clone, (u_int)np->in_redir, ifs);
5266 fr = clone->nat_fr;
5274 * Because the clone is created outside the normal loop of things and
5278 if (clone->nat_p == IPPROTO_TCP) {
5279 (void) fr_tcp_age(&clone->nat_tqe, fin, ifs->ifs_nat_tqb,
5280 clone->nat_flags);
5283 clone->nat_sync = ipfsync_new(SMC_NAT, fin, clone);
5286 nat_log(clone, NL_CLONE, ifs);
5287 return clone;