Print this page
OS-7667 IPFilter needs to keep and report state for cloud firewall logging
Portions contributed by: Mike Gerdts <mike.gerdts@joyent.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/cmd/ipf/tools/ippool_y.y
          +++ new/usr/src/cmd/ipf/tools/ippool_y.y
   1    1  %{
   2    2  /*
   3    3   * Copyright (C) 2003 by Darren Reed.
   4    4   *
   5    5   * See the IPFILTER.LICENCE file for details on licencing.
   6    6   *
   7    7   * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
   8    8   * Use is subject to license terms.
        9 + * Copyright 2019 Joyent, Inc.
   9   10   */
  10   11  
  11   12  #pragma ident   "%Z%%M% %I%     %E% SMI"
  12   13  
  13   14  #include <sys/types.h>
  14   15  #include <sys/time.h>
  15   16  #include <sys/param.h>
  16   17  #include <sys/socket.h>
  17   18  #if defined(BSD) && (BSD >= 199306)
  18   19  # include <sys/cdefs.h>
↓ open down ↓ 8 lines elided ↑ open up ↑
  27   28  
  28   29  #include <arpa/inet.h>
  29   30  
  30   31  #include <stdio.h>
  31   32  #include <fcntl.h>
  32   33  #include <stdlib.h>
  33   34  #include <string.h>
  34   35  #include <netdb.h>
  35   36  #include <ctype.h>
  36   37  #include <unistd.h>
       38 +#include <uuid/uuid.h>
  37   39  
  38   40  #include "ipf.h"
  39   41  #include "netinet/ip_lookup.h"
  40   42  #include "netinet/ip_pool.h"
  41   43  #include "netinet/ip_htable.h"
  42   44  #include "ippool_l.h"
  43   45  #include "kmem.h"
  44   46  
  45   47  #define YYDEBUG 1
  46   48  
↓ open down ↓ 12 lines elided ↑ open up ↑
  59   61  
  60   62  %union  {
  61   63          char    *str;
  62   64          u_32_t  num;
  63   65          struct  in_addr addr;
  64   66          struct  alist_s *alist;
  65   67          union   i6addr  adrmsk[2];
  66   68          iphtent_t       *ipe;
  67   69          ip_pool_node_t  *ipp;
  68   70          union   i6addr  ip6;
       71 +        uuid_t  uuid;
  69   72  }
  70   73  
  71   74  %token  <num>   YY_NUMBER YY_HEX
  72   75  %token  <str>   YY_STR
  73   76  %token    YY_COMMENT 
  74   77  %token    YY_CMP_EQ YY_CMP_NE YY_CMP_LE YY_CMP_GE YY_CMP_LT YY_CMP_GT
  75   78  %token    YY_RANGE_OUT YY_RANGE_IN
  76   79  %token  <ip6>   YY_IPV6
       80 +%token  <uuid>  YY_UUID
  77   81  
  78   82  %token  IPT_IPF IPT_NAT IPT_COUNT IPT_AUTH IPT_IN IPT_OUT
  79   83  %token  IPT_TABLE IPT_GROUPMAP IPT_HASH
  80   84  %token  IPT_ROLE IPT_TYPE IPT_TREE
  81   85  %token  IPT_GROUP IPT_SIZE IPT_SEED IPT_NUM IPT_NAME
  82   86  %type   <num> role table inout
  83   87  %type   <ipp> ipftree range addrlist
  84   88  %type   <adrmsk> addrmask
  85   89  %type   <ipe> ipfgroup ipfhash hashlist hashentry
  86   90  %type   <ipe> groupentry setgrouplist grouplist
↓ open down ↓ 399 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX