0001
0002 #ifndef __UAPI_PSAMPLE_H
0003 #define __UAPI_PSAMPLE_H
0004
0005 enum {
0006 PSAMPLE_ATTR_IIFINDEX,
0007 PSAMPLE_ATTR_OIFINDEX,
0008 PSAMPLE_ATTR_ORIGSIZE,
0009 PSAMPLE_ATTR_SAMPLE_GROUP,
0010 PSAMPLE_ATTR_GROUP_SEQ,
0011 PSAMPLE_ATTR_SAMPLE_RATE,
0012 PSAMPLE_ATTR_DATA,
0013 PSAMPLE_ATTR_GROUP_REFCOUNT,
0014 PSAMPLE_ATTR_TUNNEL,
0015
0016 PSAMPLE_ATTR_PAD,
0017 PSAMPLE_ATTR_OUT_TC,
0018 PSAMPLE_ATTR_OUT_TC_OCC,
0019 PSAMPLE_ATTR_LATENCY,
0020 PSAMPLE_ATTR_TIMESTAMP,
0021 PSAMPLE_ATTR_PROTO,
0022
0023 __PSAMPLE_ATTR_MAX
0024 };
0025
0026 enum psample_command {
0027 PSAMPLE_CMD_SAMPLE,
0028 PSAMPLE_CMD_GET_GROUP,
0029 PSAMPLE_CMD_NEW_GROUP,
0030 PSAMPLE_CMD_DEL_GROUP,
0031 };
0032
0033 enum psample_tunnel_key_attr {
0034 PSAMPLE_TUNNEL_KEY_ATTR_ID,
0035 PSAMPLE_TUNNEL_KEY_ATTR_IPV4_SRC,
0036 PSAMPLE_TUNNEL_KEY_ATTR_IPV4_DST,
0037 PSAMPLE_TUNNEL_KEY_ATTR_TOS,
0038 PSAMPLE_TUNNEL_KEY_ATTR_TTL,
0039 PSAMPLE_TUNNEL_KEY_ATTR_DONT_FRAGMENT,
0040 PSAMPLE_TUNNEL_KEY_ATTR_CSUM,
0041 PSAMPLE_TUNNEL_KEY_ATTR_OAM,
0042 PSAMPLE_TUNNEL_KEY_ATTR_GENEVE_OPTS,
0043 PSAMPLE_TUNNEL_KEY_ATTR_TP_SRC,
0044 PSAMPLE_TUNNEL_KEY_ATTR_TP_DST,
0045 PSAMPLE_TUNNEL_KEY_ATTR_VXLAN_OPTS,
0046 PSAMPLE_TUNNEL_KEY_ATTR_IPV6_SRC,
0047 PSAMPLE_TUNNEL_KEY_ATTR_IPV6_DST,
0048 PSAMPLE_TUNNEL_KEY_ATTR_PAD,
0049 PSAMPLE_TUNNEL_KEY_ATTR_ERSPAN_OPTS,
0050 PSAMPLE_TUNNEL_KEY_ATTR_IPV4_INFO_BRIDGE,
0051 __PSAMPLE_TUNNEL_KEY_ATTR_MAX
0052 };
0053
0054
0055 #define PSAMPLE_ATTR_MAX (__PSAMPLE_ATTR_MAX - 1)
0056
0057 #define PSAMPLE_NL_MCGRP_CONFIG_NAME "config"
0058 #define PSAMPLE_NL_MCGRP_SAMPLE_NAME "packets"
0059 #define PSAMPLE_GENL_NAME "psample"
0060 #define PSAMPLE_GENL_VERSION 1
0061
0062 #endif