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>
        
*** 19,28 ****
--- 19,29 ----
   * CDDL HEADER END
   */
  /*
   * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
   * Use is subject to license terms.
+  * Copyright 2016 Joyent, Inc.
   */
  
  #include <sys/types.h>
  #include <sys/stream.h>
  #define _SUN_TPI_VERSION 2
*** 39,48 ****
--- 40,50 ----
  
  #include <netinet/tcp.h>
  #include <netinet/ip_mroute.h>
  #include <inet/optcom.h>
  #include <inet/rawip_impl.h>
+ #include <net/bpf.h>
  
  /*
   * Table of all known options handled on a ICMP protocol stack.
   *
   * Note: This table contains options processed by both ICMP and IP levels
*** 84,93 ****
--- 86,99 ----
  
  { SO_ALLZONES, SOL_SOCKET, OA_R, OA_RW, OP_CONFIG, 0, sizeof (int),
          0 },
  { SO_DOMAIN,    SOL_SOCKET, OA_R, OA_R, OP_NP, 0, sizeof (int), 0 },
  
+ { SO_ATTACH_FILTER,     SOL_SOCKET, OA_W, OA_W, OP_NP, 0,
+         sizeof (struct bpf_program), 0 },
+ { SO_DETACH_FILTER,     SOL_SOCKET, OA_W, OA_W, OP_NP, 0, 0, 0 },
+ 
  { IP_OPTIONS,   IPPROTO_IP, OA_RW, OA_RW, OP_NP,
          (OP_VARLEN|OP_NODEFAULT),
          IP_MAX_OPT_LENGTH + IP_ADDR_LEN, -1 /* not initialized */ },
  { T_IP_OPTIONS, IPPROTO_IP, OA_RW, OA_RW, OP_NP,
          (OP_VARLEN|OP_NODEFAULT),