1*1c60b9acSAndroid Build Coastguard Worker# lws minimal secure streams 2*1c60b9acSAndroid Build Coastguard Worker 3*1c60b9acSAndroid Build Coastguard WorkerThe application goes to https://warmcat.com and reads index.html there. 4*1c60b9acSAndroid Build Coastguard Worker 5*1c60b9acSAndroid Build Coastguard WorkerIt does it using Secure Streams... the main code in minimal-secure-streams.c 6*1c60b9acSAndroid Build Coastguard Workerjust sets up the context and opens a secure stream of type "mintest". 7*1c60b9acSAndroid Build Coastguard Worker 8*1c60b9acSAndroid Build Coastguard WorkerThe handler for state changes and payloads for "mintest" is in ss-myss.c 9*1c60b9acSAndroid Build Coastguard Worker 10*1c60b9acSAndroid Build Coastguard WorkerThe information about how a "mintest" stream should connect and the 11*1c60b9acSAndroid Build Coastguard Workerprotocol it uses is kept separated in policy-database.c 12*1c60b9acSAndroid Build Coastguard Worker 13*1c60b9acSAndroid Build Coastguard Worker## build 14*1c60b9acSAndroid Build Coastguard Worker 15*1c60b9acSAndroid Build Coastguard Worker``` 16*1c60b9acSAndroid Build Coastguard Worker $ cmake . && make 17*1c60b9acSAndroid Build Coastguard Worker``` 18*1c60b9acSAndroid Build Coastguard Worker 19*1c60b9acSAndroid Build Coastguard Worker## usage 20*1c60b9acSAndroid Build Coastguard Worker 21*1c60b9acSAndroid Build Coastguard WorkerCommandline option|Meaning 22*1c60b9acSAndroid Build Coastguard Worker---|--- 23*1c60b9acSAndroid Build Coastguard Worker-d <loglevel>|Debug verbosity in decimal, eg, -d15 24*1c60b9acSAndroid Build Coastguard Worker-f| Force connecting to the wrong endpoint to check backoff retry flow 25*1c60b9acSAndroid Build Coastguard Worker-p| Run as proxy server for clients to connect to over unix domain socket 26*1c60b9acSAndroid Build Coastguard Worker--force-portal|Force the SS Captive Portal Detection to feel it's behind a portal 27*1c60b9acSAndroid Build Coastguard Worker--force-no-internet|Force the SS Captive Portal Detection to feel it can't reach the internet 28*1c60b9acSAndroid Build Coastguard Worker--blob|Download a 50MiB blob from warmact.com, using flow control at the proxy 29*1c60b9acSAndroid Build Coastguard Worker 30*1c60b9acSAndroid Build Coastguard Worker``` 31*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:11:0045] USR: LWS minimal secure streams [-d<verbosity>] [-f] 32*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:12:6102] USR: myss_state: LWSSSCS_CREATING, ord 0x0 33*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:12:6107] USR: myss_state: LWSSSCS_POLL, ord 0x0 34*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:12:6117] N: lws_ss_client_connect: connecting h1get warmcat.com / 35*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:12:6118] USR: myss_state: LWSSSCS_CONNECTING, ord 0x0 36*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4171] USR: myss_state: LWSSSCS_CONNECTED, ord 0x0 37*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4222] USR: myss_rx: len 1024, flags: 1 38*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4243] USR: myss_rx: len 1024, flags: 0 39*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4244] USR: myss_rx: len 1024, flags: 0 40*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4244] USR: myss_rx: len 1024, flags: 0 41*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4245] USR: myss_rx: len 1024, flags: 0 42*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4246] USR: myss_rx: len 1024, flags: 0 43*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4247] USR: myss_rx: len 1024, flags: 0 44*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4252] USR: myss_rx: len 1015, flags: 0 45*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4264] USR: myss_rx: len 1024, flags: 0 46*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4265] USR: myss_rx: len 1024, flags: 0 47*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4266] USR: myss_rx: len 1024, flags: 0 48*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4267] USR: myss_rx: len 1024, flags: 0 49*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4268] USR: myss_rx: len 1024, flags: 0 50*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4268] USR: myss_rx: len 1024, flags: 0 51*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4269] USR: myss_rx: len 1024, flags: 0 52*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4270] USR: myss_rx: len 1015, flags: 0 53*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4278] USR: myss_rx: len 1024, flags: 0 54*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4279] USR: myss_rx: len 1024, flags: 0 55*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4280] USR: myss_rx: len 1024, flags: 0 56*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4281] USR: myss_rx: len 1024, flags: 0 57*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4282] USR: myss_rx: len 1024, flags: 0 58*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4283] USR: myss_rx: len 1024, flags: 0 59*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4283] USR: myss_rx: len 1024, flags: 0 60*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4284] USR: myss_rx: len 1015, flags: 0 61*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4287] USR: myss_rx: len 1024, flags: 0 62*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4288] USR: myss_rx: len 947, flags: 0 63*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4293] USR: myss_rx: len 0, flags: 2 64*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4399] USR: myss_state: LWSSSCS_DISCONNECTED, ord 0x0 65*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4761] USR: myss_state: LWSSSCS_DESTROYING, ord 0x0 66*1c60b9acSAndroid Build Coastguard Worker[2019/08/12 07:16:13:4781] USR: Completed: OK 67*1c60b9acSAndroid Build Coastguard Worker``` 68