linux/include/net/netfilter/nf_nat_helper.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef _NF_NAT_HELPER_H
   3#define _NF_NAT_HELPER_H
   4/* NAT protocol helper routines. */
   5
   6#include <net/netfilter/nf_conntrack.h>
   7
   8struct sk_buff;
   9
  10/* These return true or false. */
  11bool __nf_nat_mangle_tcp_packet(struct sk_buff *skb, struct nf_conn *ct,
  12                                enum ip_conntrack_info ctinfo,
  13                                unsigned int protoff, unsigned int match_offset,
  14                                unsigned int match_len, const char *rep_buffer,
  15                                unsigned int rep_len, bool adjust);
  16
  17static inline bool nf_nat_mangle_tcp_packet(struct sk_buff *skb,
  18                                            struct nf_conn *ct,
  19                                            enum ip_conntrack_info ctinfo,
  20                                            unsigned int protoff,
  21                                            unsigned int match_offset,
  22                                            unsigned int match_len,
  23                                            const char *rep_buffer,
  24                                            unsigned int rep_len)
  25{
  26        return __nf_nat_mangle_tcp_packet(skb, ct, ctinfo, protoff,
  27                                          match_offset, match_len,
  28                                          rep_buffer, rep_len, true);
  29}
  30
  31bool nf_nat_mangle_udp_packet(struct sk_buff *skb, struct nf_conn *ct,
  32                              enum ip_conntrack_info ctinfo,
  33                              unsigned int protoff, unsigned int match_offset,
  34                              unsigned int match_len, const char *rep_buffer,
  35                              unsigned int rep_len);
  36
  37/* Setup NAT on this expected conntrack so it follows master, but goes
  38 * to port ct->master->saved_proto. */
  39void nf_nat_follow_master(struct nf_conn *ct, struct nf_conntrack_expect *this);
  40
  41#endif
  42