This commit is contained in:
Ken McMillan 2019-02-19 18:28:48 -08:00
Родитель 5d023aa742
Коммит ca6b5639e4
4 изменённых файлов: 31 добавлений и 2 удалений

Просмотреть файл

@ -1408,6 +1408,30 @@ object frame = { ...
}
}
# Stream blocked frames indicate that sender wishes to opena stream beyond current limit
# on streams of a giev kind.
#
# Requirements
#
# - Connection must be established
#
# Effects
#
# (None)
object frame = { ...
object stream_id_blocked = { ...
action handle(f:frame.stream_id_blocked,src:ip.endpoint,dst:ip.endpoint,scid:cid,dcid:cid,e:encryption_level)
around handle {
require cid_dst_to_src_set(dcid) & cid_dst_to_src(dcid) = scid;
require e = encryption_level.other & established_1rtt_keys(scid);
require num_queued_frames(scid) > 0 -> e = queued_level(scid);
...
call enqueue_frame(src,scid,f,e,false);
}
}
}
# Max data frames set the limit on the total data bytes that the source endpoint is willing
# to receive for all streams combined.
#

Просмотреть файл

@ -19,7 +19,7 @@ attribute frame.max_data.handle.weight = "0.02"
#export frame.application_close.handle
#attribute frame.application_close.handle.weight = "0.02"
export frame.stop_sending.handle
# export frame.stop_sending.handle
before frame.max_stream_data.handle(f:frame.max_stream_data,src:ip.endpoint,dst:ip.endpoint,scid:cid,dcid:cid,e:encryption_level) {
if _generating {

Просмотреть файл

@ -1,3 +1,5 @@
#lang ivy1.7
include quic_server_test
attribute frame.crypto.handle.weight = "5"

Просмотреть файл

@ -47,6 +47,7 @@ server_name = 'winquic'
getstats = False
run = True
pat = '*'
time = 100
# server_addr=0xc0a80101 client_addr=0xc0a80102
ivy_options = {'server_addr':None,'client_addr':None}
@ -75,6 +76,8 @@ for arg in sys.argv[1:]:
run = val == 'true'
elif name == 'test':
pat = val
elif name == 'time':
time = val
elif name in ivy_options:
ivy_options[name] = val
else:
@ -212,7 +215,7 @@ class Test(object):
class IvyTest(Test):
def command(self,seq):
import platform
return ' '.join(['timeout 100 ./build/{} seed={} the_cid={} server_cid={} client_port={} client_port_alt={}'.format(self.name,seq,2*seq,2*seq+1,2*seq+4987,2*seq+4988)] + extra_args)
return ' '.join(['timeout {} ./build/{} seed={} the_cid={} server_cid={} client_port={} client_port_alt={}'.format(time,self.name,seq,2*seq,2*seq+1,2*seq+4987,2*seq+4988)] + extra_args)
all_tests = []