diff --git a/gtests/net/packetdrill/parser.y b/gtests/net/packetdrill/parser.y index 569c9be58c41a998f95ebaefa548b39f728befe0..7437bc1ea8718f272bb21a07bd0b7737a6f1b4fd 100644 --- a/gtests/net/packetdrill/parser.y +++ b/gtests/net/packetdrill/parser.y @@ -3578,7 +3578,7 @@ sctp_sndrcvinfo $$->value.sctp_sndrcvinfo->sinfo_timetolive = $12; $$->value.sctp_sndrcvinfo->sinfo_tsn = $14; $$->value.sctp_sndrcvinfo->sinfo_cumtsn = $16; - $$->value.sctp_sndrcvinfo->sinfo_assoc_id = new_expression(EXPR_ELLIPSIS); + $$->value.sctp_sndrcvinfo->sinfo_assoc_id = new_integer_expression(0, "%u"); }; sinfo_pr_value diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_extrcv.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_extrcv.pkt index 68bf57d024030466d967af6b6e4818cee984feef..3609bc3178d1483ed66ca38296cf41326b284f91 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_extrcv.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_extrcv.pkt @@ -84,3 +84,25 @@ serinfo_next_ppid=htonl(9879), sinfo_assoc_id=...}}], msg_flags=MSG_EOR}, 0) = 1000 + ++0.0 < sctp: DATA[flgs=IUBE, len=1016, tsn=4, sid=2, ssn=0, ppid=9880] +* > sctp: SACK[flgs=0, cum_tsn=4, a_rwnd=..., gaps=[], dups=[]] ++0.0 recvmsg(3, {msg_name(...)=..., + msg_iov(1)=[{iov_base=..., iov_len=1000}], + msg_control(140)=[{cmsg_len=140, + cmsg_level=IPPROTO_SCTP, + cmsg_type=SCTP_EXTRCV, + cmsg_data={sinfo_stream=1, + sinfo_ssn=0, + sinfo_flags=SCTP_UNORDERED, + sinfo_ppid=htonl(9879), + sinfo_context=0, + sinfo_pr_value=0, + sinfo_tsn=3, + sinfo_cumtsn=4, + serinfo_next_flags=SCTP_NEXT_MSG_AVAIL|SCTP_NEXT_MSG_ISCOMPLETE|SCTP_NEXT_MSG_IS_UNORDERED, + serinfo_next_stream=2, + serinfo_next_aid=..., + serinfo_next_length=1000, + serinfo_next_ppid=htonl(9880)}}], + msg_flags=MSG_EOR}, 0) = 1000 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_nxtinfo.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_nxtinfo.pkt index 79f40793bfbe60b1fd8eba293fac7d98d1dbefcb..aaea9f59ae4bc3ba1f7a105d6cc79ba0f69ed211 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_nxtinfo.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_nxtinfo.pkt @@ -56,7 +56,7 @@ rcv_tsn=2, rcv_cumtsn=3, rcv_context=0, - rcv_assoc_id=...}}, + rcv_assoc_id=3}}, {cmsg_len=28, cmsg_level=IPPROTO_SCTP, cmsg_type=SCTP_NXTINFO, @@ -64,5 +64,30 @@ nxt_flags=SCTP_UNORDERED|SCTP_COMPLETE, nxt_ppid=htonl(9876), nxt_length=1000, - nxt_assoc_id=...}}], + nxt_assoc_id=3}}], + msg_flags=MSG_EOR}, 0) = 1000 + ++0.0 setsockopt(3, IPPROTO_SCTP, SCTP_RECVRCVINFO, [1], 4) = 0 ++0.0 setsockopt(3, IPPROTO_SCTP, SCTP_RECVNXTINFO, [1], 4) = 0 ++0.0 < sctp: DATA[flgs=IUBE, len=1016, tsn=4, sid=0, ssn=0, ppid=9876] +* > sctp: SACK[flgs=0, cum_tsn=4, a_rwnd=..., gaps=[], dups=[]] ++0.0 recvmsg(3, {msg_name(...)=..., + msg_iov(1)=[{iov_base=..., iov_len=1000}], + msg_control(68)=[{cmsg_len=40, + cmsg_level=IPPROTO_SCTP, + cmsg_type=SCTP_RCVINFO, + cmsg_data={rcv_sid=0, + rcv_ssn=0, + rcv_flags=SCTP_UNORDERED, + rcv_ppid=htonl(9876), + rcv_tsn=3, + rcv_cumtsn=4, + rcv_context=0}}, + {cmsg_len=28, + cmsg_level=IPPROTO_SCTP, + cmsg_type=SCTP_NXTINFO, + cmsg_data= {nxt_sid=0, + nxt_flags=SCTP_UNORDERED|SCTP_COMPLETE, + nxt_ppid=htonl(9876), + nxt_length=1000}}], msg_flags=MSG_EOR}, 0) = 1000 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_rcvinfo.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_rcvinfo.pkt index bf44947527a16a98c19550410182fff1011606e2..9d19a020045722901690e98a75f633cbd3979295 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_rcvinfo.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_rcvinfo.pkt @@ -119,50 +119,31 @@ sinfo_cumtsn=5, sinfo_assoc_id=...}}], msg_flags=MSG_EOR}, 0) = 1000 -+0.0 setsockopt(3, IPPROTO_SCTP, SCTP_USE_EXT_RCVINFO, [1], 4) = 0 -+0.0 < sctp: DATA[flgs=IBE, len=1016, tsn=6, sid=0, ssn=3, ppid=9877] + ++0.0 setsockopt(3, IPPROTO_SCTP, SCTP_RECVRCVINFO, [1], 4) = 0 ++0.0 setsockopt(3, IPPROTO_SCTP, SCTP_RECVNXTINFO, [0], 4) = 0 ++0.0 setsockopt(3, IPPROTO_SCTP, SCTP_EVENTS, {sctp_data_io_event=0, + sctp_association_event=0, + sctp_address_event=0, + sctp_send_failure_event=0, + sctp_peer_error_event=0, + sctp_shutdown_event=0, + sctp_partial_delivery_event=0, + sctp_adaptation_layer_event=0, + sctp_authentication_event=0, + sctp_sender_dry_event=0}, 11) = 0 ++0.0 < sctp: DATA[flgs=IUBE, len=1016, tsn=6, sid=0, ssn=0, ppid=9876] * > sctp: SACK[flgs=0, cum_tsn=6, a_rwnd=..., gaps=[], dups=[]] +0.0 recvmsg(3, {msg_name(...)=..., msg_iov(1)=[{iov_base=..., iov_len=1000}], - msg_control(140)=[{cmsg_len=140, - cmsg_level=IPPROTO_SCTP, - cmsg_type=SCTP_EXTRCV, - cmsg_data={sinfo_stream=0, - sinfo_ssn=3, - sinfo_flags=0, - sinfo_ppid=htonl(9877), - sinfo_context=0, - sinfo_pr_value=0, - sinfo_tsn=6, - sinfo_cumtsn=6, - serinfo_next_flags=0, - serinfo_next_stream=0, - serinfo_next_aid=0, - serinfo_next_length=0, - serinfo_next_ppid=htonl(0), - sinfo_assoc_id=...}}], - msg_flags=MSG_EOR}, 0) = 1000 -+0.0 < sctp: DATA[flgs=IBE, len=1016, tsn=7, sid=0, ssn=4, ppid=9878] -* > sctp: SACK[flgs=0, cum_tsn=7, a_rwnd=..., gaps=[], dups=[]] -+0.0 < sctp: DATA[flgs=IUBE, len=1016, tsn=8, sid=1, ssn=0, ppid=9879] -* > sctp: SACK[flgs=0, cum_tsn=8, a_rwnd=..., gaps=[], dups=[]] -+0.0 recvmsg(3, {msg_name(...)=..., - msg_iov(1)=[{iov_base=..., iov_len=1000}], - msg_control(140)=[{cmsg_len=140, - cmsg_level=IPPROTO_SCTP, - cmsg_type=SCTP_EXTRCV, - cmsg_data={sinfo_stream=0, - sinfo_ssn=4, - sinfo_flags=0, - sinfo_ppid=htonl(9878), - sinfo_context=0, - sinfo_pr_value=0, - sinfo_tsn=7, - sinfo_cumtsn=8, - serinfo_next_flags=SCTP_NEXT_MSG_AVAIL|SCTP_NEXT_MSG_ISCOMPLETE|SCTP_NEXT_MSG_IS_UNORDERED, - serinfo_next_stream=1, - serinfo_next_aid=..., - serinfo_next_length=1000, - serinfo_next_ppid=htonl(9879), - sinfo_assoc_id=...}}], + msg_control(40)=[{cmsg_len=40, + cmsg_level=IPPROTO_SCTP, + cmsg_type=SCTP_RCVINFO, + cmsg_data={rcv_sid=0, + rcv_ssn=0, + rcv_flags=SCTP_UNORDERED, + rcv_ppid=htonl(9876), + rcv_tsn=6, + rcv_cumtsn=6, + rcv_context=0}}], msg_flags=MSG_EOR}, 0) = 1000 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_sndrcv.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_sndrcv.pkt index a07716e51e2e08a19e2f8002cb546fb56f6a0078..3e1c7fc76ade256d3abffece9dd5def28b48a93f 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_sndrcv.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/recvmsg_sctp_sndrcv.pkt @@ -70,3 +70,20 @@ sinfo_cumtsn=2, sinfo_assoc_id=...}}], msg_flags=MSG_EOR}, 0) = 1000 + ++0.0 < sctp: DATA[flgs=IUBE, len=1016, tsn=3, sid=0, ssn=2, ppid=9879] +* > sctp: SACK[flgs=0, cum_tsn=3, a_rwnd=..., gaps=[], dups=[]] ++0.0 recvmsg(3, {msg_name(...)=..., + msg_iov(1)=[{iov_base=..., iov_len=1000}], + msg_control(140)=[{cmsg_len=140, + cmsg_level=IPPROTO_SCTP, + cmsg_type=SCTP_SNDRCV, + cmsg_data={sinfo_stream=0, + sinfo_ssn=2, + sinfo_flags=SCTP_UNORDERED, + sinfo_ppid=htonl(9879), + sinfo_context=0, + sinfo_timetolive=0, + sinfo_tsn=3, + sinfo_cumtsn=3}}], + msg_flags=MSG_EOR}, 0) = 1000 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/sendmsg_sctp_sndinfo.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/sendmsg_sctp_sndinfo.pkt index b0ec2423b804e0b6bfa3e78c4960e2d891409394..b773b1b2b93f64f5e5013adabf46c4614560a4e1 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/sendmsg_sctp_sndinfo.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/sendmsg_sctp_sndinfo.pkt @@ -66,6 +66,19 @@ * > sctp: DATA[flgs=BE, len=1016, tsn=3, sid=3, ssn=0, ppid=32] +0.0 < sctp: SACK[flgs=0, cum_tsn=3, a_rwnd=1500, gaps=[], dups=[]] ++0.0 sendmsg(3, {msg_name(...)=..., + msg_iov(1)=[{iov_base=..., iov_len=1000}], + msg_control(28)=[{cmsg_len=28, + cmsg_level=IPPROTO_SCTP, + cmsg_type=SCTP_SNDINFO, + cmsg_data={snd_sid=4, + snd_flags=0, + snd_ppid=htonl(33), + snd_context=2}}], + msg_flags=0}, 0) = 1000 +* > sctp: DATA[flgs=BE, len=1016, tsn=4, sid=4, ssn=0, ppid=33] ++0.0 < sctp: SACK[flgs=0, cum_tsn=4, a_rwnd=1500, gaps=[], dups=[]] + +0.0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/sendmsg_sctp_sndrcv.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/sendmsg_sctp_sndrcv.pkt index 983b51e791d3c029fecc3c86bf9eec224f319233..4485ccf4c78d65f6ef91b9977becefec768bef37 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/sendmsg_sctp_sndrcv.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/cmsgs/sendmsg_sctp_sndrcv.pkt @@ -94,6 +94,30 @@ * > sctp: DATA[flgs=BE, len=1016, tsn=3, sid=3, ssn=2, ppid=7] +0.0 < sctp: SACK[flgs=0, cum_tsn=3, a_rwnd=1500, gaps=[], dups=[]] ++0.0 sendmsg(3, {msg_name(...)=..., + msg_iov(1)=[{iov_base=..., iov_len=1000}], + msg_control(168)=[{cmsg_len=28, + cmsg_level=IPPROTO_SCTP, + cmsg_type=SCTP_SNDINFO, + cmsg_data={snd_sid=2, + snd_flags=0, + snd_ppid=htonl(6), + snd_context=2}}, + {cmsg_len=140, + cmsg_level=IPPROTO_SCTP, + cmsg_type=SCTP_SNDRCV, + cmsg_data={sinfo_stream=3, + sinfo_ssn=3, + sinfo_flags=0, + sinfo_ppid=htonl(7), + sinfo_context=0, + sinfo_timetolive=0, + sinfo_tsn=..., + sinfo_cumtsn=...}}], + msg_flags=0}, 0) = 1000 +* > sctp: DATA[flgs=BE, len=1016, tsn=4, sid=3, ssn=3, ppid=7] ++0.0 < sctp: SACK[flgs=0, cum_tsn=4, a_rwnd=1500, gaps=[], dups=[]] + +0.0 close(3) = 0 +0.0 > sctp: SHUTDOWN[flgs=0, cum_tsn=0] +0.1 < sctp: SHUTDOWN_ACK[flgs=0] diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_associnfo.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_associnfo.pkt index 9611b2fe6376602d2f2aefc8d3d60c1a363de260..114342a01093f90f6f5068057fe3022b2b1984e8 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_associnfo.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_associnfo.pkt @@ -40,5 +40,16 @@ sasoc_peer_rwnd=..., sasoc_local_rwnd=..., sasoc_cookie_life=...}, [20]) = 0 +//now test structure without associd ++0 setsockopt(3, IPPROTO_SCTP, SCTP_ASSOCINFO, {sasoc_asocmaxrxt=5, + sasoc_number_peer_destinations=2, + sasoc_peer_rwnd=1800, + sasoc_local_rwnd=2000, + sasoc_cookie_life=40000}, 20) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_ASSOCINFO, {sasoc_asocmaxrxt=5, + sasoc_number_peer_destinations=1, + sasoc_peer_rwnd=1500, + sasoc_local_rwnd=1864135, + sasoc_cookie_life=40000}, [20]) = 0 +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_active_key.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_active_key.pkt index fd4d34da183c318db0cb88956852e1b6e6f71def..e9647e1cdda162d7a82a54444d76182aebb80089 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_active_key.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_active_key.pkt @@ -13,4 +13,7 @@ +0 setsockopt(3, IPPROTO_SCTP, SCTP_AUTH_ACTIVE_KEY, {scact_assoc_id=0, scact_keynumber=123}, 6) = 0 +0 getsockopt(3, IPPROTO_SCTP, SCTP_AUTH_ACTIVE_KEY, {scact_assoc_id=0, scact_keynumber=123}, [6]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_AUTH_ACTIVE_KEY, {scact_keynumber=123}, 6) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_AUTH_ACTIVE_KEY, {scact_keynumber=123}, [6]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_deactivate_key.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_deactivate_key.pkt index 8c024610894d7c7fe857065b93810fe279ab2ab4..06103c6ba81797f4aeee310542a2dd9b50bc4392 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_deactivate_key.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_deactivate_key.pkt @@ -11,5 +11,6 @@ +0 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 +0 setsockopt(3, IPPROTO_SCTP, SCTP_AUTH_DEACTIVATE_KEY, {scact_assoc_id=..., scact_keynumber=0}, 6) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_AUTH_DEACTIVATE_KEY, {scact_keynumber=0}, 6) = 0 +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_delete_key.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_delete_key.pkt index 94bb2774362e96633ce112f00c74be6fa9e796f9..86d0fa1f4d1a62ae993270d175c603c88ab91280 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_delete_key.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_delete_key.pkt @@ -11,5 +11,6 @@ +0 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 +0 setsockopt(3, IPPROTO_SCTP, SCTP_AUTH_DELETE_KEY, {scact_assoc_id=..., scact_keynumber=0}, 8) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_AUTH_DELETE_KEY, {scact_keynumber=0}, 8) = 0 +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_key.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_key.pkt index 4f4fd4d68d1279921b382b0ed582db9b206506bd..58b63eccc76dec085f0d9740fcb2d925a622b4dd 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_key.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_auth_key.pkt @@ -11,5 +11,6 @@ +0 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 +0 setsockopt(3, IPPROTO_SCTP, SCTP_AUTH_KEY, {sca_assoc_id=..., sca_keynumber=123, sca_keylength=2, sca_key=[0x00, 0x00]}, 10) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_AUTH_KEY, {sca_keynumber=123, sca_keylength=2, sca_key=[0x00, 0x00]}, 10) = 0 +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_context.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_context.pkt index 0cde321daabbdbf3877ccc588114e5ef07f55398..c9843cc46e1744e3f7638fd0d8d49a7ed09025f6 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_context.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_context.pkt @@ -13,4 +13,7 @@ +0 setsockopt(3, IPPROTO_SCTP, SCTP_CONTEXT, {assoc_id=0, assoc_value=1200}, 8) = 0 +0 getsockopt(3, IPPROTO_SCTP, SCTP_CONTEXT, {assoc_id=0, assoc_value=1200}, [8]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_CONTEXT, {assoc_value=1200}, 8) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_CONTEXT, {assoc_value=1200}, [8]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_default_prinfo.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_default_prinfo.pkt index 2179ae512ca14a1ab2640ed8deaea8f0350d444f..86b3b89b0add8207034a0c488c786fc20465094e 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_default_prinfo.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_default_prinfo.pkt @@ -20,4 +20,9 @@ pr_value=5, pr_assoc_id=...}, [12]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_DEFAULT_PRINFO, {pr_policy=SCTP_PR_SCTP_TTL, + pr_value=5}, 12) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_DEFAULT_PRINFO, {pr_policy=SCTP_PR_SCTP_TTL, + pr_value=5}, [12]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_default_send_param.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_default_send_param.pkt index 1a97650ee93c483d28109bf428b16ef365d8851c..34811acdedd71ca8c728332f458a8bdd3ec5ee31 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_default_send_param.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_default_send_param.pkt @@ -29,4 +29,21 @@ sinfo_cumtsn=1, sinfo_assoc_id=3}, [30]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_DEFAULT_SEND_PARAM, {sinfo_stream=0, + sinfo_ssn=1, + sinfo_flags=0, + sinfo_ppid=htonl(123), + sinfo_context=0, + sinfo_timetolive=0, + sinfo_tsn=2, + sinfo_cumtsn=1}, 30) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_DEFAULT_SEND_PARAM, {sinfo_stream=0, + sinfo_ssn=1, + sinfo_flags=0, + sinfo_ppid=htonl(123), + sinfo_context=0, + sinfo_timetolive=0, + sinfo_tsn=2, + sinfo_cumtsn=1}, [30]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_delayed_sack.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_delayed_sack.pkt index 749db8fe3b0631a4a8f12d000ad1f7c63263fdae..8e344e1dcd762e0fa08bd81ed9f5e32c468a9aed 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_delayed_sack.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_delayed_sack.pkt @@ -18,4 +18,7 @@ +0 getsockopt(3, IPPROTO_SCTP, SCTP_DELAYED_SACK, {sack_assoc_id=..., sack_delay=..., sack_freq=1}, [12]) = 0 +0 getsockopt(3, IPPROTO_SCTP, SCTP_DELAYED_SACK, {sack_assoc_id=..., sack_delay=250, sack_freq=...}, [12]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_DELAYED_SACK, {sack_delay=200, sack_freq=1}, 12) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_DELAYED_SACK, {sack_delay=200, sack_freq=1}, [12]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_event.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_event.pkt index 9df570dad5713e70468418ee91363bb039030032..d817e4150f47ab2084c1e652eb89515c85f55eba 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_event.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_event.pkt @@ -14,4 +14,7 @@ +0 setsockopt(3, IPPROTO_SCTP, SCTP_EVENT, {se_assoc_id=0, se_type=SCTP_SHUTDOWN_EVENT, se_on=1}, 8) = 0 +0 getsockopt(3, IPPROTO_SCTP, SCTP_EVENT, {se_assoc_id=0, se_type=SCTP_SHUTDOWN_EVENT, se_on=1}, [8]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_EVENT, {se_type=SCTP_SHUTDOWN_EVENT, se_on=0}, 8) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_EVENT, {se_type=SCTP_SHUTDOWN_EVENT, se_on=0}, [8]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_get_peer_addr_info.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_get_peer_addr_info.pkt index 3ca931aee9c4603239c709eaa2e3c2b7d54154eb..4f765e3e2de5da4cb2b8c7e83e904e8bb836cd29 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_get_peer_addr_info.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_get_peer_addr_info.pkt @@ -80,5 +80,22 @@ spinfo_mtu=...}, [152]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_GET_PEER_ADDR_INFO, {spinfo_address={sa_family=AF_INET, + sin_port=htons(8080), + sin_addr=inet_addr("192.0.2.1")}, + spinfo_state=SCTP_ACTIVE, + spinfo_cwnd=4464, + spinfo_srtt=111, + spinfo_rto=1000, + spinfo_mtu=1468}, 152) = -1 (ENOPROTOOPT) + ++0 getsockopt(3, IPPROTO_SCTP, SCTP_GET_PEER_ADDR_INFO, {spinfo_address={sa_family=AF_INET, + sin_port=htons(8080), + sin_addr=inet_addr("192.0.2.1")}, + spinfo_state=SCTP_ACTIVE, + spinfo_cwnd=4464, + spinfo_srtt=..., + spinfo_rto=1000, + spinfo_mtu=1468}, [152]) = 0 +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_local_auth_chunks.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_local_auth_chunks.pkt index a7bc7b0134dcdffdf2c38a7a7baf7d912edc1ad0..e3c5b939186ed358384fd415cce6b580111fbe57 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_local_auth_chunks.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_local_auth_chunks.pkt @@ -14,4 +14,7 @@ gauth_number_of_chunks=..., gauth_chunks=[...]}, [10]) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_LOCAL_AUTH_CHUNKS, {gauth_number_of_chunks=..., + gauth_chunks=[...]}, [10]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_max_burst.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_max_burst.pkt index 3a744ac439e88353d4dfb93320e522a9ece0d8a5..9f3dd90242304adfd252d70b8895af41bb689850 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_max_burst.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_max_burst.pkt @@ -14,4 +14,7 @@ +0 setsockopt(3, IPPROTO_SCTP, SCTP_MAX_BURST, {assoc_id=0, assoc_value=5}, 8) = 0 +0 getsockopt(3, IPPROTO_SCTP, SCTP_MAX_BURST, {assoc_id=0, assoc_value=5}, [8]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_MAX_BURST, {assoc_value=4}, 8) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_MAX_BURST, {assoc_value=4}, [8]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_maxseg.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_maxseg.pkt index 190b91e8859fc62d0ca14630e9548ebf1203fd69..5a941be44d88d394bc0ea71646ae091fc009e81d 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_maxseg.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_maxseg.pkt @@ -14,4 +14,7 @@ +0 setsockopt(3, IPPROTO_SCTP, SCTP_MAXSEG, {assoc_id=0, assoc_value=1200}, 8) = 0 +0 getsockopt(3, IPPROTO_SCTP, SCTP_MAXSEG, {assoc_id=0, assoc_value=1200}, [8]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_MAXSEG, {assoc_value=1452}, 8) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_MAXSEG, {assoc_value=1452}, [8]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_peer_addr_params.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_peer_addr_params.pkt index fd12064a0112bd697d9e8641c1000aec79d2d5ce..3aca77e9e0d16834c76436977ee10de99cc13bb4 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_peer_addr_params.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_peer_addr_params.pkt @@ -106,4 +106,25 @@ spp_ipv6_flowlabel=0, spp_dscp=...}, [152]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_PEER_ADDR_PARAMS, {spp_address={sa_family=AF_INET, + sin_port=htons(8080), + sin_addr=inet_addr("192.0.2.1")}, + spp_hbinterval=300, + spp_pathmaxrxt=8, + spp_pathmtu=1468, + spp_flags=SPP_DSCP|SPP_HB_DISABLE, + spp_ipv6_flowlabel=0, + spp_dscp=0}, 152) = 0 + ++0 getsockopt(3, IPPROTO_SCTP, SCTP_PEER_ADDR_PARAMS, {spp_address={sa_family=AF_INET, + sin_port=htons(8080), + sin_addr=inet_addr("192.0.2.1")}, + spp_hbinterval=300, + spp_pathmaxrxt=8, + spp_pathmtu=1468, + spp_flags=SPP_DSCP|SPP_HB_DISABLE|SPP_PMTUD_ENABLE, + spp_ipv6_flowlabel=0, + spp_dscp=0}, [152]) = 0 + + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_peer_auth_chunks.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_peer_auth_chunks.pkt index 2316c7fc297bc361b7340e7315ebc2f1afb52e60..fa74d57b5b437e96adf8bc5483b87c30263c3e89 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_peer_auth_chunks.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_peer_auth_chunks.pkt @@ -12,5 +12,6 @@ //only dummy values, unimplemented in packetdrill +0 getsockopt(3, IPPROTO_SCTP, SCTP_PEER_AUTH_CHUNKS, {gauth_assoc_id=..., gauth_number_of_chunks=2, gauth_chunks=[0x00, 0x01]}, [10]) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_PEER_AUTH_CHUNKS, {gauth_number_of_chunks=2, gauth_chunks=[0x00, 0x01]}, [10]) = 0 +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_primary_addr.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_primary_addr.pkt index 350b24168a861c52c0a9ac1f6c6e0b3267ecb26f..db160a48f491c9541e8f87a8b8af24035b05e340 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_primary_addr.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_primary_addr.pkt @@ -21,4 +21,11 @@ +0 getsockopt(3, IPPROTO_SCTP, SCTP_PRIMARY_ADDR, {ssp_assoc_id=..., ssp_addr=...}, [136]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_PRIMARY_ADDR, {ssp_addr={sa_family=AF_INET, + sin_port=htons(8080), + sin_addr=inet_addr("192.0.2.1")}}, 136) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_PRIMARY_ADDR, {ssp_addr={sa_family=AF_INET, + sin_port=htons(8080), + sin_addr=inet_addr("192.0.2.1")}}, [136]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_rtoinfo.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_rtoinfo.pkt index 9538c452c945b45f56cbed34df6e958ee31b5892..554879b17acbc5504ea78c29dbef9c23f7ec236f 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_rtoinfo.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_rtoinfo.pkt @@ -31,4 +31,11 @@ srto_max=200, srto_min=...}, [16]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_RTOINFO, {srto_initial=150, + srto_max=200, + srto_min=50}, 16) = 0 ++0 getsockopt(3, IPPROTO_SCTP, SCTP_RTOINFO, {srto_initial=150, + srto_max=200, + srto_min=50}, [16]) = 0 + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_set_peer_primary_addr.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_set_peer_primary_addr.pkt index 42f74386bf8cb307fb0d51dccc050d126abcc9f8..71340f99f6c4ec364a552d2edf14cf5bdf8f5097 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_set_peer_primary_addr.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_set_peer_primary_addr.pkt @@ -11,5 +11,6 @@ +0 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 +0 setsockopt(3, IPPROTO_SCTP, SCTP_SET_PEER_PRIMARY_ADDR, {sspp_assoc_id=..., sspp={sa_family=AF_INET, sin_port=htons(8080), sin_addr=inet_addr("192.0.2.1")},}, 20) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_SET_PEER_PRIMARY_ADDR, {sspp={sa_family=AF_INET, sin_port=htons(8080), sin_addr=inet_addr("192.0.2.1")},}, 20) = 0 +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_status.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_status.pkt index 4a8748a927be2928bbee9e70670a5ca0380976ce..db00d22768e871d406143479d1e37d8411a26c45 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_status.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/getsockopt/sctp_status.pkt @@ -137,4 +137,30 @@ sstat_fragmentation_point=..., sstat_primary=...}, [176]) = 0 ++0 setsockopt(3, IPPROTO_SCTP, SCTP_STATUS, {sstat_state=..., + sstat_rwnd=..., + sstat_unackdata=..., sstat_penddata=..., + sstat_instrms=..., + sstat_outstrms=..., + sstat_fragmentation_point=..., + sstat_primary=...}, 176) = -1 + ++0 getsockopt(3, IPPROTO_SCTP, SCTP_STATUS, {sstat_state=SCTP_ESTABLISHED, + sstat_rwnd=1500, + sstat_unackdata=0, + sstat_penddata=0, + sstat_instrms=1, + sstat_outstrms=1, + sstat_fragmentation_point=1452, + sstat_primary={spinfo_assoc_id=3, + spinfo_address={sa_family=AF_INET, + sin_port=htons(8080), + sin_addr=inet_addr("192.0.2.1")}, + spinfo_state=SCTP_ACTIVE, + spinfo_cwnd=4464, + spinfo_srtt=..., + spinfo_rto=1000, + spinfo_mtu=1468}}, [176]) = 0 + + +0 close(3) = 0 diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_send/sctp_send_1.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_send/sctp_send_1.pkt index cebf395ab4024c92ae26803fab97dca2ba19db1e..ceff10fc530e27fdcb245ec691d348a3cf0c0e2d 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_send/sctp_send_1.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_send/sctp_send_1.pkt @@ -13,8 +13,16 @@ +0.0 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 -+0.0 setsockopt(3, IPPROTO_SCTP, SCTP_PEER_ADDR_PARAMS, {spp_assoc_id=..., spp_address={sa_family=AF_INET, sin_port=htons(8080), sin_addr=inet_addr("192.0.2.1")}, -spp_hbinterval=0, spp_pathmaxrxt=8, spp_pathmtu=1468, spp_flags=SPP_HB_DISABLE, spp_ipv6_flowlabel=0, spp_dscp=0}, 152) = 0 ++0.0 setsockopt(3, IPPROTO_SCTP, SCTP_PEER_ADDR_PARAMS, {spp_assoc_id=..., + spp_address={sa_family=AF_INET, + sin_port=htons(8080), + sin_addr=inet_addr("192.0.2.1")}, + spp_hbinterval=0, + spp_pathmaxrxt=8, + spp_pathmtu=1468, + spp_flags=SPP_HB_DISABLE, + spp_ipv6_flowlabel=0, + spp_dscp=0}, 152) = 0 +1.0 sctp_send(3, ..., 1000, {sinfo_stream=3, sinfo_ssn=3, diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv.pkt index 3edd869bfffb063176cf6393e5302c1a03d1c98b..8c00dcc9bd103b222e83025b4753366aa4b6ec16 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv.pkt @@ -78,6 +78,25 @@ * > sctp: DATA[flgs=BE, len=1016, tsn=10, sid=0, ssn=7, ppid=0] +0.0 < sctp: SACK[flgs=0, cum_tsn=10, a_rwnd=1500, gaps=[], dups=[]] ++0.1 sctp_sendv(3, [{..., 500}, {..., 500}], 2, ..., 1, {sendv_flags=SCTP_SEND_SNDINFO_VALID, + sendv_sndinfo={snd_sid=2, + snd_flags=0, + snd_ppid=htonl(0), + snd_context=0}, + sendv_prinfo={pr_policy=SCTP_PR_SCTP_TTL, + pr_value=10}, + sendv_authinfo={auth_keynumber=123}}, 32, SCTP_SENDV_SPA, 0) = 1000 +* > sctp: DATA[flgs=BE, len=1016, tsn=11, sid=2, ssn=1, ppid=0] ++0.0 < sctp: SACK[flgs=0, cum_tsn=11, a_rwnd=1500, gaps=[], dups=[]] + +//test with sctp_sendv_sndinfo ++0.1 sctp_sendv(3, [{iov_base=..., iov_len=1000}], 1, ..., 1, {snd_sid=1, + snd_flags=0, + snd_ppid=htonl(1234), + snd_context=0}, 16, SCTP_SENDV_SNDINFO, 0) = 1000 +* > sctp: DATA[flgs=BE, len=1016, tsn=12, sid=1, ssn=1, ppid=1234] ++0.0 < sctp: SACK[flgs=0, cum_tsn=12, a_rwnd=1500, gaps=[], dups=[]] + +0.0 close(3) = 0 +0.0 > sctp: SHUTDOWN[flgs=0, cum_tsn=0] +0.1 < sctp: SHUTDOWN_ACK[flgs=0] diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv_6.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv_6.pkt index 96442ce2d3dd15f367128e1767d38e18db598526..68fc8e3660e8a94c6c42f5807f533dd6bb7f8743 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv_6.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv_6.pkt @@ -16,13 +16,26 @@ sendv_sndinfo={snd_sid=2, snd_flags=0, snd_ppid=htonl(0), - snd_context=0, snd_assoc_id=0}, + snd_context=0, + snd_assoc_id=0}, sendv_prinfo={pr_policy=SCTP_PR_SCTP_TTL, pr_value=10}, sendv_authinfo={auth_keynumber=123}}, 32, SCTP_SENDV_SPA, 0) = 1000 * > sctp: DATA[flgs=BE, len=1016, tsn=1, sid=2, ssn=0, ppid=0] +0.0 < sctp: SACK[flgs=0, cum_tsn=1, a_rwnd=1500, gaps=[], dups=[]] +//test with all sctp_sendv_spainfo ++0.0 sctp_sendv(3, [{..., 500}, {..., 500}], 2, ..., 1, {sendv_flags=SCTP_SEND_SNDINFO_VALID, + sendv_sndinfo={snd_sid=2, + snd_flags=0, + snd_ppid=htonl(0), + snd_context=0}, + sendv_prinfo={pr_policy=SCTP_PR_SCTP_TTL, + pr_value=10}, + sendv_authinfo={auth_keynumber=123}}, 32, SCTP_SENDV_SPA, 0) = 1000 +* > sctp: DATA[flgs=BE, len=1016, tsn=2, sid=2, ssn=1, ppid=0] ++0.0 < sctp: SACK[flgs=0, cum_tsn=2, a_rwnd=1500, gaps=[], dups=[]] + +0.0 close(3) = 0 +0.0 > sctp: SHUTDOWN[flgs=0, cum_tsn=0] +0.1 < sctp: SHUTDOWN_ACK[flgs=0] diff --git a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv_7.pkt b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv_7.pkt index 5f7a4d2f44de8cd6f39bd0fdd928287ca2ed435b..2d56698428634d3326df5d5b3c4c59016927033f 100644 --- a/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv_7.pkt +++ b/gtests/net/packetdrill/tests/bsd/sctp/api_tests/sctp_sendv/sctp_sendv_7.pkt @@ -19,6 +19,13 @@ * > sctp: DATA[flgs=BE, len=1016, tsn=1, sid=1, ssn=0, ppid=1234] +0.0 < sctp: SACK[flgs=0, cum_tsn=1, a_rwnd=1500, gaps=[], dups=[]] ++0.0 sctp_sendv(3, [{iov_base=..., iov_len=1000}], 1, ..., 1, {snd_sid=1, + snd_flags=0, + snd_ppid=htonl(1234), + snd_context=0}, 16, SCTP_SENDV_SNDINFO, 0) = 1000 +* > sctp: DATA[flgs=BE, len=1016, tsn=2, sid=1, ssn=1, ppid=1234] ++0.0 < sctp: SACK[flgs=0, cum_tsn=2, a_rwnd=1500, gaps=[], dups=[]] + +0.0 close(3) = 0 +0.0 > sctp: SHUTDOWN[flgs=0, cum_tsn=0] +0.1 < sctp: SHUTDOWN_ACK[flgs=0]