Home | History | Annotate | Download | only in linux
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ***   To edit the content of this header, modify the corresponding
     11  ***   source file (e.g. under external/kernel-headers/original/) then
     12  ***   run bionic/libc/kernel/tools/update_all.py
     13  ***
     14  ***   Any manual change here will be lost the next time this script will
     15  ***   be run. You've been warned!
     16  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef _UAPI_SCTP_H
     20 #define _UAPI_SCTP_H
     21 #include <linux/types.h>
     22 #include <linux/socket.h>
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24 typedef __s32 sctp_assoc_t;
     25 #define SCTP_RTOINFO 0
     26 #define SCTP_ASSOCINFO 1
     27 #define SCTP_INITMSG 2
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29 #define SCTP_NODELAY 3
     30 #define SCTP_AUTOCLOSE 4
     31 #define SCTP_SET_PEER_PRIMARY_ADDR 5
     32 #define SCTP_PRIMARY_ADDR 6
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34 #define SCTP_ADAPTATION_LAYER 7
     35 #define SCTP_DISABLE_FRAGMENTS 8
     36 #define SCTP_PEER_ADDR_PARAMS 9
     37 #define SCTP_DEFAULT_SEND_PARAM 10
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39 #define SCTP_EVENTS 11
     40 #define SCTP_I_WANT_MAPPED_V4_ADDR 12
     41 #define SCTP_MAXSEG 13
     42 #define SCTP_STATUS 14
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44 #define SCTP_GET_PEER_ADDR_INFO 15
     45 #define SCTP_DELAYED_ACK_TIME 16
     46 #define SCTP_DELAYED_ACK SCTP_DELAYED_ACK_TIME
     47 #define SCTP_DELAYED_SACK SCTP_DELAYED_ACK_TIME
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 #define SCTP_CONTEXT 17
     50 #define SCTP_FRAGMENT_INTERLEAVE 18
     51 #define SCTP_PARTIAL_DELIVERY_POINT 19
     52 #define SCTP_MAX_BURST 20
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54 #define SCTP_AUTH_CHUNK 21
     55 #define SCTP_HMAC_IDENT 22
     56 #define SCTP_AUTH_KEY 23
     57 #define SCTP_AUTH_ACTIVE_KEY 24
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59 #define SCTP_AUTH_DELETE_KEY 25
     60 #define SCTP_PEER_AUTH_CHUNKS 26
     61 #define SCTP_LOCAL_AUTH_CHUNKS 27
     62 #define SCTP_GET_ASSOC_NUMBER 28
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64 #define SCTP_GET_ASSOC_ID_LIST 29
     65 #define SCTP_AUTO_ASCONF 30
     66 #define SCTP_PEER_ADDR_THLDS 31
     67 #define SCTP_SOCKOPT_BINDX_ADD 100
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69 #define SCTP_SOCKOPT_BINDX_REM 101
     70 #define SCTP_SOCKOPT_PEELOFF 102
     71 #define SCTP_SOCKOPT_CONNECTX_OLD 107
     72 #define SCTP_GET_PEER_ADDRS 108
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74 #define SCTP_GET_LOCAL_ADDRS 109
     75 #define SCTP_SOCKOPT_CONNECTX 110
     76 #define SCTP_SOCKOPT_CONNECTX3 111
     77 #define SCTP_GET_ASSOC_STATS 112
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79 struct sctp_initmsg {
     80  __u16 sinit_num_ostreams;
     81  __u16 sinit_max_instreams;
     82  __u16 sinit_max_attempts;
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84  __u16 sinit_max_init_timeo;
     85 };
     86 struct sctp_sndrcvinfo {
     87  __u16 sinfo_stream;
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89  __u16 sinfo_ssn;
     90  __u16 sinfo_flags;
     91  __u32 sinfo_ppid;
     92  __u32 sinfo_context;
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94  __u32 sinfo_timetolive;
     95  __u32 sinfo_tsn;
     96  __u32 sinfo_cumtsn;
     97  sctp_assoc_t sinfo_assoc_id;
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99 };
    100 enum sctp_sinfo_flags {
    101  SCTP_UNORDERED = 1,
    102  SCTP_ADDR_OVER = 2,
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104  SCTP_ABORT=4,
    105  SCTP_SACK_IMMEDIATELY = 8,
    106  SCTP_EOF=MSG_FIN,
    107 };
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109 typedef union {
    110  __u8 raw;
    111  struct sctp_initmsg init;
    112  struct sctp_sndrcvinfo sndrcv;
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114 } sctp_cmsg_data_t;
    115 typedef enum sctp_cmsg_type {
    116  SCTP_INIT,
    117 #define SCTP_INIT SCTP_INIT
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119  SCTP_SNDRCV,
    120 #define SCTP_SNDRCV SCTP_SNDRCV
    121 } sctp_cmsg_t;
    122 struct sctp_assoc_change {
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124  __u16 sac_type;
    125  __u16 sac_flags;
    126  __u32 sac_length;
    127  __u16 sac_state;
    128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    129  __u16 sac_error;
    130  __u16 sac_outbound_streams;
    131  __u16 sac_inbound_streams;
    132  sctp_assoc_t sac_assoc_id;
    133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    134  __u8 sac_info[0];
    135 };
    136 enum sctp_sac_state {
    137  SCTP_COMM_UP,
    138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    139  SCTP_COMM_LOST,
    140  SCTP_RESTART,
    141  SCTP_SHUTDOWN_COMP,
    142  SCTP_CANT_STR_ASSOC,
    143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    144 };
    145 struct sctp_paddr_change {
    146  __u16 spc_type;
    147  __u16 spc_flags;
    148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    149  __u32 spc_length;
    150  struct sockaddr_storage spc_aaddr;
    151  int spc_state;
    152  int spc_error;
    153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    154  sctp_assoc_t spc_assoc_id;
    155 } __attribute__((packed, aligned(4)));
    156 enum sctp_spc_state {
    157  SCTP_ADDR_AVAILABLE,
    158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    159  SCTP_ADDR_UNREACHABLE,
    160  SCTP_ADDR_REMOVED,
    161  SCTP_ADDR_ADDED,
    162  SCTP_ADDR_MADE_PRIM,
    163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    164  SCTP_ADDR_CONFIRMED,
    165 };
    166 struct sctp_remote_error {
    167  __u16 sre_type;
    168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    169  __u16 sre_flags;
    170  __u32 sre_length;
    171  __u16 sre_error;
    172  sctp_assoc_t sre_assoc_id;
    173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    174  __u8 sre_data[0];
    175 };
    176 struct sctp_send_failed {
    177  __u16 ssf_type;
    178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    179  __u16 ssf_flags;
    180  __u32 ssf_length;
    181  __u32 ssf_error;
    182  struct sctp_sndrcvinfo ssf_info;
    183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    184  sctp_assoc_t ssf_assoc_id;
    185  __u8 ssf_data[0];
    186 };
    187 enum sctp_ssf_flags {
    188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    189  SCTP_DATA_UNSENT,
    190  SCTP_DATA_SENT,
    191 };
    192 struct sctp_shutdown_event {
    193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    194  __u16 sse_type;
    195  __u16 sse_flags;
    196  __u32 sse_length;
    197  sctp_assoc_t sse_assoc_id;
    198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    199 };
    200 struct sctp_adaptation_event {
    201  __u16 sai_type;
    202  __u16 sai_flags;
    203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    204  __u32 sai_length;
    205  __u32 sai_adaptation_ind;
    206  sctp_assoc_t sai_assoc_id;
    207 };
    208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    209 struct sctp_pdapi_event {
    210  __u16 pdapi_type;
    211  __u16 pdapi_flags;
    212  __u32 pdapi_length;
    213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    214  __u32 pdapi_indication;
    215  sctp_assoc_t pdapi_assoc_id;
    216 };
    217 enum { SCTP_PARTIAL_DELIVERY_ABORTED=0, };
    218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    219 struct sctp_authkey_event {
    220  __u16 auth_type;
    221  __u16 auth_flags;
    222  __u32 auth_length;
    223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    224  __u16 auth_keynumber;
    225  __u16 auth_altkeynumber;
    226  __u32 auth_indication;
    227  sctp_assoc_t auth_assoc_id;
    228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    229 };
    230 enum { SCTP_AUTH_NEWKEY = 0, };
    231 struct sctp_sender_dry_event {
    232  __u16 sender_dry_type;
    233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    234  __u16 sender_dry_flags;
    235  __u32 sender_dry_length;
    236  sctp_assoc_t sender_dry_assoc_id;
    237 };
    238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    239 struct sctp_event_subscribe {
    240  __u8 sctp_data_io_event;
    241  __u8 sctp_association_event;
    242  __u8 sctp_address_event;
    243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    244  __u8 sctp_send_failure_event;
    245  __u8 sctp_peer_error_event;
    246  __u8 sctp_shutdown_event;
    247  __u8 sctp_partial_delivery_event;
    248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    249  __u8 sctp_adaptation_layer_event;
    250  __u8 sctp_authentication_event;
    251  __u8 sctp_sender_dry_event;
    252 };
    253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    254 union sctp_notification {
    255  struct {
    256  __u16 sn_type;
    257  __u16 sn_flags;
    258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    259  __u32 sn_length;
    260  } sn_header;
    261  struct sctp_assoc_change sn_assoc_change;
    262  struct sctp_paddr_change sn_paddr_change;
    263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    264  struct sctp_remote_error sn_remote_error;
    265  struct sctp_send_failed sn_send_failed;
    266  struct sctp_shutdown_event sn_shutdown_event;
    267  struct sctp_adaptation_event sn_adaptation_event;
    268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    269  struct sctp_pdapi_event sn_pdapi_event;
    270  struct sctp_authkey_event sn_authkey_event;
    271  struct sctp_sender_dry_event sn_sender_dry_event;
    272 };
    273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    274 enum sctp_sn_type {
    275  SCTP_SN_TYPE_BASE = (1<<15),
    276  SCTP_ASSOC_CHANGE,
    277 #define SCTP_ASSOC_CHANGE SCTP_ASSOC_CHANGE
    278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    279  SCTP_PEER_ADDR_CHANGE,
    280 #define SCTP_PEER_ADDR_CHANGE SCTP_PEER_ADDR_CHANGE
    281  SCTP_SEND_FAILED,
    282 #define SCTP_SEND_FAILED SCTP_SEND_FAILED
    283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    284  SCTP_REMOTE_ERROR,
    285 #define SCTP_REMOTE_ERROR SCTP_REMOTE_ERROR
    286  SCTP_SHUTDOWN_EVENT,
    287 #define SCTP_SHUTDOWN_EVENT SCTP_SHUTDOWN_EVENT
    288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    289  SCTP_PARTIAL_DELIVERY_EVENT,
    290 #define SCTP_PARTIAL_DELIVERY_EVENT SCTP_PARTIAL_DELIVERY_EVENT
    291  SCTP_ADAPTATION_INDICATION,
    292 #define SCTP_ADAPTATION_INDICATION SCTP_ADAPTATION_INDICATION
    293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    294  SCTP_AUTHENTICATION_EVENT,
    295 #define SCTP_AUTHENTICATION_INDICATION SCTP_AUTHENTICATION_EVENT
    296  SCTP_SENDER_DRY_EVENT,
    297 #define SCTP_SENDER_DRY_EVENT SCTP_SENDER_DRY_EVENT
    298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    299 };
    300 typedef enum sctp_sn_error {
    301  SCTP_FAILED_THRESHOLD,
    302  SCTP_RECEIVED_SACK,
    303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    304  SCTP_HEARTBEAT_SUCCESS,
    305  SCTP_RESPONSE_TO_USER_REQ,
    306  SCTP_INTERNAL_ERROR,
    307  SCTP_SHUTDOWN_GUARD_EXPIRES,
    308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    309  SCTP_PEER_FAULTY,
    310 } sctp_sn_error_t;
    311 struct sctp_rtoinfo {
    312  sctp_assoc_t srto_assoc_id;
    313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    314  __u32 srto_initial;
    315  __u32 srto_max;
    316  __u32 srto_min;
    317 };
    318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    319 struct sctp_assocparams {
    320  sctp_assoc_t sasoc_assoc_id;
    321  __u16 sasoc_asocmaxrxt;
    322  __u16 sasoc_number_peer_destinations;
    323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    324  __u32 sasoc_peer_rwnd;
    325  __u32 sasoc_local_rwnd;
    326  __u32 sasoc_cookie_life;
    327 };
    328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    329 struct sctp_setpeerprim {
    330  sctp_assoc_t sspp_assoc_id;
    331  struct sockaddr_storage sspp_addr;
    332 } __attribute__((packed, aligned(4)));
    333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    334 struct sctp_prim {
    335  sctp_assoc_t ssp_assoc_id;
    336  struct sockaddr_storage ssp_addr;
    337 } __attribute__((packed, aligned(4)));
    338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    339 #define sctp_setprim sctp_prim
    340 struct sctp_setadaptation {
    341  __u32 ssb_adaptation_ind;
    342 };
    343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    344 enum sctp_spp_flags {
    345  SPP_HB_ENABLE = 1<<0,
    346  SPP_HB_DISABLE = 1<<1,
    347  SPP_HB = SPP_HB_ENABLE | SPP_HB_DISABLE,
    348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    349  SPP_HB_DEMAND = 1<<2,
    350  SPP_PMTUD_ENABLE = 1<<3,
    351  SPP_PMTUD_DISABLE = 1<<4,
    352  SPP_PMTUD = SPP_PMTUD_ENABLE | SPP_PMTUD_DISABLE,
    353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    354  SPP_SACKDELAY_ENABLE = 1<<5,
    355  SPP_SACKDELAY_DISABLE = 1<<6,
    356  SPP_SACKDELAY = SPP_SACKDELAY_ENABLE | SPP_SACKDELAY_DISABLE,
    357  SPP_HB_TIME_IS_ZERO = 1<<7,
    358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    359 };
    360 struct sctp_paddrparams {
    361  sctp_assoc_t spp_assoc_id;
    362  struct sockaddr_storage spp_address;
    363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    364  __u32 spp_hbinterval;
    365  __u16 spp_pathmaxrxt;
    366  __u32 spp_pathmtu;
    367  __u32 spp_sackdelay;
    368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    369  __u32 spp_flags;
    370 } __attribute__((packed, aligned(4)));
    371 struct sctp_authchunk {
    372  __u8 sauth_chunk;
    373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    374 };
    375 enum {
    376  SCTP_AUTH_HMAC_ID_SHA1 = 1,
    377  SCTP_AUTH_HMAC_ID_SHA256 = 3,
    378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    379 };
    380 struct sctp_hmacalgo {
    381  __u32 shmac_num_idents;
    382  __u16 shmac_idents[];
    383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    384 };
    385 #define shmac_number_of_idents shmac_num_idents
    386 struct sctp_authkey {
    387  sctp_assoc_t sca_assoc_id;
    388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    389  __u16 sca_keynumber;
    390  __u16 sca_keylength;
    391  __u8 sca_key[];
    392 };
    393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    394 struct sctp_authkeyid {
    395  sctp_assoc_t scact_assoc_id;
    396  __u16 scact_keynumber;
    397 };
    398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    399 struct sctp_sack_info {
    400  sctp_assoc_t sack_assoc_id;
    401  uint32_t sack_delay;
    402  uint32_t sack_freq;
    403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    404 };
    405 struct sctp_assoc_value {
    406  sctp_assoc_t assoc_id;
    407  uint32_t assoc_value;
    408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    409 };
    410 struct sctp_paddrinfo {
    411  sctp_assoc_t spinfo_assoc_id;
    412  struct sockaddr_storage spinfo_address;
    413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    414  __s32 spinfo_state;
    415  __u32 spinfo_cwnd;
    416  __u32 spinfo_srtt;
    417  __u32 spinfo_rto;
    418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    419  __u32 spinfo_mtu;
    420 } __attribute__((packed, aligned(4)));
    421 enum sctp_spinfo_state {
    422  SCTP_INACTIVE,
    423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    424  SCTP_PF,
    425  SCTP_ACTIVE,
    426  SCTP_UNCONFIRMED,
    427  SCTP_UNKNOWN = 0xffff
    428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    429 };
    430 struct sctp_status {
    431  sctp_assoc_t sstat_assoc_id;
    432  __s32 sstat_state;
    433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    434  __u32 sstat_rwnd;
    435  __u16 sstat_unackdata;
    436  __u16 sstat_penddata;
    437  __u16 sstat_instrms;
    438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    439  __u16 sstat_outstrms;
    440  __u32 sstat_fragmentation_point;
    441  struct sctp_paddrinfo sstat_primary;
    442 };
    443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    444 struct sctp_authchunks {
    445  sctp_assoc_t gauth_assoc_id;
    446  __u32 gauth_number_of_chunks;
    447  uint8_t gauth_chunks[];
    448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    449 };
    450 #define guth_number_of_chunks gauth_number_of_chunks
    451 enum sctp_sstat_state {
    452  SCTP_EMPTY = 0,
    453 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    454  SCTP_CLOSED = 1,
    455  SCTP_COOKIE_WAIT = 2,
    456  SCTP_COOKIE_ECHOED = 3,
    457  SCTP_ESTABLISHED = 4,
    458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    459  SCTP_SHUTDOWN_PENDING = 5,
    460  SCTP_SHUTDOWN_SENT = 6,
    461  SCTP_SHUTDOWN_RECEIVED = 7,
    462  SCTP_SHUTDOWN_ACK_SENT = 8,
    463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    464 };
    465 struct sctp_assoc_ids {
    466  __u32 gaids_number_of_ids;
    467  sctp_assoc_t gaids_assoc_id[];
    468 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    469 };
    470 struct sctp_getaddrs_old {
    471  sctp_assoc_t assoc_id;
    472  int addr_num;
    473 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    474  struct sockaddr *addrs;
    475 };
    476 struct sctp_getaddrs {
    477  sctp_assoc_t assoc_id;
    478 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    479  __u32 addr_num;
    480  __u8 addrs[0];
    481 };
    482 struct sctp_assoc_stats {
    483 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    484  sctp_assoc_t sas_assoc_id;
    485  struct sockaddr_storage sas_obs_rto_ipaddr;
    486  __u64 sas_maxrto;
    487  __u64 sas_isacks;
    488 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    489  __u64 sas_osacks;
    490  __u64 sas_opackets;
    491  __u64 sas_ipackets;
    492  __u64 sas_rtxchunks;
    493 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    494  __u64 sas_outofseqtsns;
    495  __u64 sas_idupchunks;
    496  __u64 sas_gapcnt;
    497  __u64 sas_ouodchunks;
    498 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    499  __u64 sas_iuodchunks;
    500  __u64 sas_oodchunks;
    501  __u64 sas_iodchunks;
    502  __u64 sas_octrlchunks;
    503 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    504  __u64 sas_ictrlchunks;
    505 };
    506 enum sctp_msg_flags {
    507  MSG_NOTIFICATION = 0x8000,
    508 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    509 #define MSG_NOTIFICATION MSG_NOTIFICATION
    510 };
    511 #define SCTP_BINDX_ADD_ADDR 0x01
    512 #define SCTP_BINDX_REM_ADDR 0x02
    513 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    514 typedef struct {
    515  sctp_assoc_t associd;
    516  int sd;
    517 } sctp_peeloff_arg_t;
    518 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    519 struct sctp_paddrthlds {
    520  sctp_assoc_t spt_assoc_id;
    521  struct sockaddr_storage spt_address;
    522  __u16 spt_pathmaxrxt;
    523 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    524  __u16 spt_pathpfthld;
    525 };
    526 #endif
    527