Lines Matching refs:nat
6 * Simple PPTP transparent proxy for in-kernel use. For use with the NAT
116 ipf_p_pptp_new(void *arg, fr_info_t *fin, ap_session_t *aps, nat_t *nat)
128 np = nat->nat_ptr;
131 if (ipf_nat_outlookup(fin, 0, IPPROTO_GRE, nat->nat_osrcip,
157 * Create NAT rule against which the tunnel/transport mapping is
158 * created. This is required because the current NAT rule does not
167 ipn->in_snip = ntohl(nat->nat_nsrcaddr);
169 ipn->in_dnip = ntohl(nat->nat_ndstaddr);
170 ipn->in_ndstaddr = nat->nat_ndstaddr;
172 ipn->in_osrcaddr = nat->nat_osrcaddr;
173 ipn->in_odstaddr = nat->nat_odstaddr;
179 MUTEX_INIT(&ipn->in_lock, "pptp proxy NAT rule");
196 ipf_p_pptp_donatstate(fr_info_t *fin, nat_t *nat, pptp_pxy_t *pptp)
214 if ((nat->nat_dir == NAT_OUTBOUND && fin->fin_out) ||
215 (nat->nat_dir == NAT_INBOUND && !fin->fin_out)) {
229 fi.fin_fi.fi_saddr = nat->nat_osrcaddr;
230 fi.fin_fi.fi_daddr = nat->nat_odstaddr;
234 * Update NAT timeout/create NAT if missing.
245 NAT_SLAVE, nat->nat_dir);
262 if (nat->nat_dir == NAT_INBOUND)
281 ipf_p_pptp_nextmessage(fr_info_t *fin, nat_t *nat, pptp_pxy_t *pptp, int rev)
383 ipf_p_pptp_message(fin, nat, pptp, pptps);
402 ipf_p_pptp_message(fr_info_t *fin, nat_t *nat, pptp_pxy_t *pptp,
410 ipf_p_pptp_mctl(fin, nat, pptp, pptps);
424 ipf_p_pptp_mctl(fr_info_t *fin, nat_t *nat, pptp_pxy_t *pptp,
470 ipf_p_pptp_donatstate(fin, nat, pptp);
481 ipf_p_pptp_donatstate(fin, nat, pptp);
506 * For outgoing PPTP packets. refresh timeouts for NAT & state entries, if
510 ipf_p_pptp_inout(void *arg, fr_info_t *fin, ap_session_t *aps, nat_t *nat)
516 if ((fin->fin_out == 1) && (nat->nat_dir == NAT_INBOUND))
518 else if ((fin->fin_out == 0) && (nat->nat_dir == NAT_OUTBOUND))
531 return ipf_p_pptp_nextmessage(fin, nat, (pptp_pxy_t *)aps->aps_data,
548 * Don't bother changing any of the NAT structure details,