summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/inet
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/inet')
-rw-r--r--usr/src/uts/common/inet/ipf/ip_fil_solaris.c73
1 files changed, 37 insertions, 36 deletions
diff --git a/usr/src/uts/common/inet/ipf/ip_fil_solaris.c b/usr/src/uts/common/inet/ipf/ip_fil_solaris.c
index 9aeba33d30..b16fc9bf5f 100644
--- a/usr/src/uts/common/inet/ipf/ip_fil_solaris.c
+++ b/usr/src/uts/common/inet/ipf/ip_fil_solaris.c
@@ -731,6 +731,7 @@ ipf_hook_protocol_notify(hook_notify_cmd_t command, void *arg,
hook_hint_t hint;
boolean_t out;
int ret = 0;
+
const boolean_t gz = ifs->ifs_gz_controlled;
/* We currently only care about viona hooks notifications */
@@ -2438,42 +2439,6 @@ int ipf_hook6_loop_out(hook_event_token_t token, hook_data_t info, void *arg)
return ipf_hook6(info, 1, FI_NOCKSUM, arg);
}
-/* ------------------------------------------------------------------------ */
-/* Function: ipf_hookvndl3_in */
-/* Returns: int - 0 == packet ok, else problem, free packet if not done */
-/* Parameters: event(I) - pointer to event */
-/* info(I) - pointer to hook information for firewalling */
-/* */
-/* The vnd hooks are private hooks to ON. They represents a layer 2 */
-/* datapath generally used to implement virtual machines. The driver sends */
-/* along L3 packets of either type IP or IPv6. The ethertype to distinguish */
-/* them is in the upper 16 bits while the remaining bits are the */
-/* traditional packet hook flags. */
-/* */
-/* They end up calling the appropriate traditional ip hooks. */
-/* ------------------------------------------------------------------------ */
-/*ARGSUSED*/
-int ipf_hookvndl3v4_in(hook_event_token_t token, hook_data_t info, void *arg)
-{
- return ipf_hook4_in(token, info, arg);
-}
-
-int ipf_hookvndl3v6_in(hook_event_token_t token, hook_data_t info, void *arg)
-{
- return ipf_hook6_in(token, info, arg);
-}
-
-/*ARGSUSED*/
-int ipf_hookvndl3v4_out(hook_event_token_t token, hook_data_t info, void *arg)
-{
- return ipf_hook4_out(token, info, arg);
-}
-
-int ipf_hookvndl3v6_out(hook_event_token_t token, hook_data_t info, void *arg)
-{
- return ipf_hook6_out(token, info, arg);
-}
-
/* Static constants used by ipf_hook_ether */
static uint8_t ipf_eth_bcast_addr[ETHERADDRL] = {
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
@@ -2569,6 +2534,42 @@ int ipf_hook_ether(hook_event_token_t token, hook_data_t info, void *arg,
}
/* ------------------------------------------------------------------------ */
+/* Function: ipf_hookvndl3_in */
+/* Returns: int - 0 == packet ok, else problem, free packet if not done */
+/* Parameters: event(I) - pointer to event */
+/* info(I) - pointer to hook information for firewalling */
+/* */
+/* The vnd hooks are private hooks to ON. They represents a layer 2 */
+/* datapath generally used to implement virtual machines. The driver sends */
+/* along L3 packets of either type IP or IPv6. The ethertype to distinguish */
+/* them is in the upper 16 bits while the remaining bits are the */
+/* traditional packet hook flags. */
+/* */
+/* They end up calling the appropriate traditional ip hooks. */
+/* ------------------------------------------------------------------------ */
+/*ARGSUSED*/
+int ipf_hookvndl3v4_in(hook_event_token_t token, hook_data_t info, void *arg)
+{
+ return ipf_hook4_in(token, info, arg);
+}
+
+int ipf_hookvndl3v6_in(hook_event_token_t token, hook_data_t info, void *arg)
+{
+ return ipf_hook6_in(token, info, arg);
+}
+
+/*ARGSUSED*/
+int ipf_hookvndl3v4_out(hook_event_token_t token, hook_data_t info, void *arg)
+{
+ return ipf_hook4_out(token, info, arg);
+}
+
+int ipf_hookvndl3v6_out(hook_event_token_t token, hook_data_t info, void *arg)
+{
+ return ipf_hook6_out(token, info, arg);
+}
+
+/* ------------------------------------------------------------------------ */
/* Function: ipf_hookviona_{in,out} */
/* Returns: int - 0 == packet ok, else problem, free packet if not done */
/* Parameters: event(I) - pointer to event */