| .. | .. |
|---|
| 64 | 64 | enum { |
|---|
| 65 | 65 | INET_DIAG_REQ_NONE, |
|---|
| 66 | 66 | INET_DIAG_REQ_BYTECODE, |
|---|
| 67 | + INET_DIAG_REQ_SK_BPF_STORAGES, |
|---|
| 68 | + INET_DIAG_REQ_PROTOCOL, |
|---|
| 69 | + __INET_DIAG_REQ_MAX, |
|---|
| 67 | 70 | }; |
|---|
| 68 | 71 | |
|---|
| 69 | | -#define INET_DIAG_REQ_MAX INET_DIAG_REQ_BYTECODE |
|---|
| 72 | +#define INET_DIAG_REQ_MAX (__INET_DIAG_REQ_MAX - 1) |
|---|
| 70 | 73 | |
|---|
| 71 | 74 | /* Bytecode is sequence of 4 byte commands followed by variable arguments. |
|---|
| 72 | 75 | * All the commands identified by "code" are conditional jumps forward: |
|---|
| .. | .. |
|---|
| 94 | 97 | INET_DIAG_BC_MARK_COND, |
|---|
| 95 | 98 | INET_DIAG_BC_S_EQ, |
|---|
| 96 | 99 | INET_DIAG_BC_D_EQ, |
|---|
| 100 | + INET_DIAG_BC_CGROUP_COND, /* u64 cgroup v2 ID */ |
|---|
| 97 | 101 | }; |
|---|
| 98 | 102 | |
|---|
| 99 | 103 | struct inet_diag_hostcond { |
|---|
| .. | .. |
|---|
| 153 | 157 | INET_DIAG_BBRINFO, /* request as INET_DIAG_VEGASINFO */ |
|---|
| 154 | 158 | INET_DIAG_CLASS_ID, /* request as INET_DIAG_TCLASS */ |
|---|
| 155 | 159 | INET_DIAG_MD5SIG, |
|---|
| 160 | + INET_DIAG_ULP_INFO, |
|---|
| 161 | + INET_DIAG_SK_BPF_STORAGES, |
|---|
| 162 | + INET_DIAG_CGROUP_ID, |
|---|
| 163 | + INET_DIAG_SOCKOPT, |
|---|
| 156 | 164 | __INET_DIAG_MAX, |
|---|
| 157 | 165 | }; |
|---|
| 158 | 166 | |
|---|
| 159 | 167 | #define INET_DIAG_MAX (__INET_DIAG_MAX - 1) |
|---|
| 168 | + |
|---|
| 169 | +enum { |
|---|
| 170 | + INET_ULP_INFO_UNSPEC, |
|---|
| 171 | + INET_ULP_INFO_NAME, |
|---|
| 172 | + INET_ULP_INFO_TLS, |
|---|
| 173 | + INET_ULP_INFO_MPTCP, |
|---|
| 174 | + __INET_ULP_INFO_MAX, |
|---|
| 175 | +}; |
|---|
| 176 | +#define INET_ULP_INFO_MAX (__INET_ULP_INFO_MAX - 1) |
|---|
| 160 | 177 | |
|---|
| 161 | 178 | /* INET_DIAG_MEM */ |
|---|
| 162 | 179 | |
|---|
| .. | .. |
|---|
| 167 | 184 | __u32 idiag_tmem; |
|---|
| 168 | 185 | }; |
|---|
| 169 | 186 | |
|---|
| 187 | +/* INET_DIAG_SOCKOPT */ |
|---|
| 188 | + |
|---|
| 189 | +struct inet_diag_sockopt { |
|---|
| 190 | + __u8 recverr:1, |
|---|
| 191 | + is_icsk:1, |
|---|
| 192 | + freebind:1, |
|---|
| 193 | + hdrincl:1, |
|---|
| 194 | + mc_loop:1, |
|---|
| 195 | + transparent:1, |
|---|
| 196 | + mc_all:1, |
|---|
| 197 | + nodefrag:1; |
|---|
| 198 | + __u8 bind_address_no_port:1, |
|---|
| 199 | + recverr_rfc4884:1, |
|---|
| 200 | + defer_connect:1, |
|---|
| 201 | + unused:5; |
|---|
| 202 | +}; |
|---|
| 203 | + |
|---|
| 170 | 204 | /* INET_DIAG_VEGASINFO */ |
|---|
| 171 | 205 | |
|---|
| 172 | 206 | struct tcpvegas_info { |
|---|