Print this page
OS-5007 support SO_ATTACH_FILTER on ICMP sockets
Reviewed by: Cody Mello <melloc@joyent.com>
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Approved by: Jerry Jelinek <jerry.jelinek@joyent.com>
        
*** 18,27 ****
--- 18,28 ----
   *
   * CDDL HEADER END
   */
  /*
   * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
+  * Copyright 2016 Joyent, Inc.
   */
  /* Copyright (c) 1990 Mentat Inc. */
  
  #ifndef _RAWIP_IMPL_H
  #define _RAWIP_IMPL_H
*** 41,50 ****
--- 42,52 ----
  
  #include <inet/common.h>
  #include <inet/ip.h>
  #include <inet/optcom.h>
  #include <inet/tunables.h>
+ #include <inet/bpf.h>
  
  /*
   * ICMP stack instances
   */
  struct icmp_stack {
*** 82,91 ****
--- 84,97 ----
          int             icmp_delayed_error;
          kmutex_t        icmp_recv_lock;
          mblk_t          *icmp_fallback_queue_head;
          mblk_t          *icmp_fallback_queue_tail;
          struct sockaddr_storage icmp_delayed_addr;
+ 
+         krwlock_t       icmp_bpf_lock;  /* protects icmp_bpf */
+         ip_bpf_insn_t   *icmp_bpf_prog; /* SO_ATTACH_FILTER bpf */
+         uint_t          icmp_bpf_len;
  } icmp_t;
  
  /*
   * Object to represent database of options to search passed to
   * {sock,tpi}optcom_req() interface routine to take care of option