[英]Retrieve information about a specific peer address of an SCTP-association
我試圖
檢索有關關聯的特定對等地址的信息,包括其可達性狀態,擁塞窗口和重傳計時器值。 ( RFC 6458,第82頁 )
帶有以下客戶端代碼段:
struct sctp_paddrinfo status;
socklen_t opt_len = (socklen_t)sizeof(status);
if (usrsctp_getsockopt(sock, IPPROTO_SCTP, SCTP_GET_PEER_ADDR_INFO, &status, &opt_len) < 0) {
perror("getsockopt");
}
sock
是當前的套接字描述符。 調用此函數(同時連接到echo_server )會給我這個錯誤:
getsockopt:沒有這樣的文件或目錄
[是的,我正在使用usrsctp ,但我希望sctp出現類似的錯誤。]
我究竟做錯了什么? 要么
usrsctp_getsockopt
用於獲取信息(如RTO , MTU等)的正確用法是什么?
您必須在status.spinfo_address
提供實際地址。
struct sockaddr_storage peer_address;
struct sockaddr_in *sin;
memcpy(&peer_address, sin, sizeof(struct sockaddr_in));
...
status.spinfo_address = peer_address;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.