diff options
Diffstat (limited to 'include/net/sctp/user.h')
-rw-r--r-- | include/net/sctp/user.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/include/net/sctp/user.h b/include/net/sctp/user.h index 1b02d7ad453b..9a0ae091366d 100644 --- a/include/net/sctp/user.h +++ b/include/net/sctp/user.h | |||
@@ -107,6 +107,7 @@ typedef __s32 sctp_assoc_t; | |||
107 | #define SCTP_GET_LOCAL_ADDRS 109 /* Get all local address. */ | 107 | #define SCTP_GET_LOCAL_ADDRS 109 /* Get all local address. */ |
108 | #define SCTP_SOCKOPT_CONNECTX 110 /* CONNECTX requests. */ | 108 | #define SCTP_SOCKOPT_CONNECTX 110 /* CONNECTX requests. */ |
109 | #define SCTP_SOCKOPT_CONNECTX3 111 /* CONNECTX requests (updated) */ | 109 | #define SCTP_SOCKOPT_CONNECTX3 111 /* CONNECTX requests (updated) */ |
110 | #define SCTP_GET_ASSOC_STATS 112 /* Read only */ | ||
110 | 111 | ||
111 | /* | 112 | /* |
112 | * 5.2.1 SCTP Initiation Structure (SCTP_INIT) | 113 | * 5.2.1 SCTP Initiation Structure (SCTP_INIT) |
@@ -719,6 +720,32 @@ struct sctp_getaddrs { | |||
719 | __u8 addrs[0]; /*output, variable size*/ | 720 | __u8 addrs[0]; /*output, variable size*/ |
720 | }; | 721 | }; |
721 | 722 | ||
723 | /* A socket user request obtained via SCTP_GET_ASSOC_STATS that retrieves | ||
724 | * association stats. All stats are counts except sas_maxrto and | ||
725 | * sas_obs_rto_ipaddr. maxrto is the max observed rto + transport since | ||
726 | * the last call. Will return 0 when RTO was not update since last call | ||
727 | */ | ||
728 | struct sctp_assoc_stats { | ||
729 | sctp_assoc_t sas_assoc_id; /* Input */ | ||
730 | /* Transport of observed max RTO */ | ||
731 | struct sockaddr_storage sas_obs_rto_ipaddr; | ||
732 | __u64 sas_maxrto; /* Maximum Observed RTO for period */ | ||
733 | __u64 sas_isacks; /* SACKs received */ | ||
734 | __u64 sas_osacks; /* SACKs sent */ | ||
735 | __u64 sas_opackets; /* Packets sent */ | ||
736 | __u64 sas_ipackets; /* Packets received */ | ||
737 | __u64 sas_rtxchunks; /* Retransmitted Chunks */ | ||
738 | __u64 sas_outofseqtsns;/* TSN received > next expected */ | ||
739 | __u64 sas_idupchunks; /* Dups received (ordered+unordered) */ | ||
740 | __u64 sas_gapcnt; /* Gap Acknowledgements Received */ | ||
741 | __u64 sas_ouodchunks; /* Unordered data chunks sent */ | ||
742 | __u64 sas_iuodchunks; /* Unordered data chunks received */ | ||
743 | __u64 sas_oodchunks; /* Ordered data chunks sent */ | ||
744 | __u64 sas_iodchunks; /* Ordered data chunks received */ | ||
745 | __u64 sas_octrlchunks; /* Control chunks sent */ | ||
746 | __u64 sas_ictrlchunks; /* Control chunks received */ | ||
747 | }; | ||
748 | |||
722 | /* These are bit fields for msghdr->msg_flags. See section 5.1. */ | 749 | /* These are bit fields for msghdr->msg_flags. See section 5.1. */ |
723 | /* On user space Linux, these live in <bits/socket.h> as an enum. */ | 750 | /* On user space Linux, these live in <bits/socket.h> as an enum. */ |
724 | enum sctp_msg_flags { | 751 | enum sctp_msg_flags { |