diff options
author | ng0@n0.is <ng0@n0.is> | 2019-08-01 14:46:38 +0000 |
---|---|---|
committer | ng0@n0.is <ng0@n0.is> | 2019-08-01 14:46:38 +0000 |
commit | 3a2682463b5e81da16ea8945316770996e2dd8be (patch) | |
tree | 610a759298ca2f0f8679278e6f22175384857854 | |
parent | c30980c94fef2921bba8e1b5d3927953f38525fe (diff) | |
download | libmicrohttpd-gsoc2019-master.tar.gz libmicrohttpd-gsoc2019-master.zip |
-rw-r--r-- | syscalls.html | 184 |
1 files changed, 92 insertions, 92 deletions
diff --git a/syscalls.html b/syscalls.html index de3cc2c..03d7bd2 100644 --- a/syscalls.html +++ b/syscalls.html | |||
@@ -120,17 +120,17 @@ | |||
120 | </td> | 120 | </td> |
121 | </tr> | 121 | </tr> |
122 | <tr> | 122 | <tr> |
123 | <td> | 123 | <td> |
124 | <a href="trg.c">tiny response generation</a> | 124 | <a href="trg.c">tiny response generation</a> |
125 | (<a href="_trg/trg.c.debian.strace.log.txt">log</a>): | 125 | (<a href="_trg/trg.c.debian.strace.log.txt">log</a>): |
126 | After receiving the GET request, we see 1 | 126 | After receiving the GET request, we see 1 |
127 | setsockopt call (TCP_CORK). The header is send. | 127 | setsockopt call (TCP_CORK). The header is send. |
128 | This is followed by 6 setsockopt calls: | 128 | This is followed by 6 setsockopt calls: |
129 | TCP_CORK, TCP_NODELAY, TCP_NODELAY, TCP_CORK, | 129 | TCP_CORK, TCP_NODELAY, TCP_NODELAY, TCP_CORK, |
130 | TCP_CORK, TCP_NODELAY. The body is send. | 130 | TCP_CORK, TCP_NODELAY. The body is send. |
131 | Then we see 2 final setsockopt calls: TCP_CORK, | 131 | Then we see 2 final setsockopt calls: TCP_CORK, |
132 | TCP_NODELAY. | 132 | TCP_NODELAY. |
133 | </td> | 133 | </td> |
134 | <td> | 134 | <td> |
135 | <a href="trg.c">tiny response generation</a> | 135 | <a href="trg.c">tiny response generation</a> |
136 | (<a href="_trg/trg.c.freebsd.truss.log.txt">log</a>): | 136 | (<a href="_trg/trg.c.freebsd.truss.log.txt">log</a>): |
@@ -148,105 +148,105 @@ | |||
148 | follows a call to setsockopt. | 148 | follows a call to setsockopt. |
149 | </td> | 149 | </td> |
150 | <td> | 150 | <td> |
151 | <a href="trg.c">tiny response generation</a>: | 151 | <a href="trg.c">tiny response generation</a>: |
152 | <br> | 152 | <br> |
153 | no data | 153 | no data |
154 | </td> | 154 | </td> |
155 | <td> | 155 | <td> |
156 | <a href="trg.c">tiny response generation</a> | 156 | <a href="trg.c">tiny response generation</a> |
157 | (<a href="_trg/trg.c.strace.cygwin.windows10.log.txt">log</a>): | 157 | (<a href="_trg/trg.c.strace.cygwin.windows10.log.txt">log</a>): |
158 | We see 1 call to setsockopt. This is followed by a send of | 158 | We see 1 call to setsockopt. This is followed by a send of |
159 | the size 99 (the header). Then follows another setsockopt, | 159 | the size 99 (the header). Then follows another setsockopt, |
160 | followed by another call to send (the body). | 160 | followed by another call to send (the body). |
161 | </td> | 161 | </td> |
162 | </tr> | 162 | </tr> |
163 | <tr> | 163 | <tr> |
164 | <td> | 164 | <td> |
165 | <a href="mrg.c">modest response generation</a> | 165 | <a href="mrg.c">modest response generation</a> |
166 | (<a href="_mrg/mrg.c.debian.strace.log.txt">log</a>): | 166 | (<a href="_mrg/mrg.c.debian.strace.log.txt">log</a>): |
167 | We see 1 call to setsockopt() after receiving the GET | 167 | We see 1 call to setsockopt() after receiving the GET |
168 | request (TCP_CORK). | 168 | request (TCP_CORK). |
169 | Then we send the header. | 169 | Then we send the header. |
170 | We see 6 calls to setsockopt(): TCP_CORK, TCP_NODELAY, | 170 | We see 6 calls to setsockopt(): TCP_CORK, TCP_NODELAY, |
171 | TCP_NODELAY, TCP_CORK, TCP_CORK, TCP_NODELAY. | 171 | TCP_NODELAY, TCP_CORK, TCP_CORK, TCP_NODELAY. |
172 | Then the body is send, | 172 | Then the body is send, |
173 | We see 2 more setsockopt() calls: TCP_CORK, TCP_NODELAY. | 173 | We see 2 more setsockopt() calls: TCP_CORK, TCP_NODELAY. |
174 | </td> | 174 | </td> |
175 | <td> | 175 | <td> |
176 | <a href="mrg.c">modest response generation</a> | 176 | <a href="mrg.c">modest response generation</a> |
177 | (<a href="_mrg/mrg.c.freebsd.truss.log.txt">log</a>): | 177 | (<a href="_mrg/mrg.c.freebsd.truss.log.txt">log</a>): |
178 | After receiving the GET request, we see 1 call to | 178 | After receiving the GET request, we see 1 call to |
179 | setsockopt() (TCP_NODELAY). | 179 | setsockopt() (TCP_NODELAY). |
180 | Then the header is send. | 180 | Then the header is send. |
181 | We see 1 call to setsockopt() (TCP_NODELAY). | 181 | We see 1 call to setsockopt() (TCP_NODELAY). |
182 | Then the body is send. | 182 | Then the body is send. |
183 | </td> | 183 | </td> |
184 | <td> | 184 | <td> |
185 | <a href="mrg.c">modest response generation</a> | 185 | <a href="mrg.c">modest response generation</a> |
186 | (<a href="_mrg/mrg.c.netbsd.ktruss.log.txt">log</a>): | 186 | (<a href="_mrg/mrg.c.netbsd.ktruss.log.txt">log</a>): |
187 | After receiving the GET request, we see 1 setsockopt() call | 187 | After receiving the GET request, we see 1 setsockopt() call |
188 | which is followed by sending the header. | 188 | which is followed by sending the header. |
189 | This is followed by 2 calls to setsockopt(). | 189 | This is followed by 2 calls to setsockopt(). |
190 | After this, the body is send, followed by another call to | 190 | After this, the body is send, followed by another call to |
191 | setsockopt(). | 191 | setsockopt(). |
192 | </td> | 192 | </td> |
193 | <td> | 193 | <td> |
194 | <a href="mrg.c">modest response generation</a>: | 194 | <a href="mrg.c">modest response generation</a>: |
195 | <br> | 195 | <br> |
196 | no data. | 196 | no data. |
197 | </td> | 197 | </td> |
198 | <td> | 198 | <td> |
199 | <a href="mrg.c">modest response generation</a> | 199 | <a href="mrg.c">modest response generation</a> |
200 | (<a href="_mrg/mrg.c.cygwin.windows10.strace.log.txt">log</a>): | 200 | (<a href="_mrg/mrg.c.cygwin.windows10.strace.log.txt">log</a>): |
201 | We see 2 calls to setsockopt related to the socket we use, | 201 | We see 2 calls to setsockopt related to the socket we use, |
202 | each one of them before the respective send() is called. | 202 | each one of them before the respective send() is called. |
203 | </td> | 203 | </td> |
204 | </tr> | 204 | </tr> |
205 | <tr> | 205 | <tr> |
206 | <td> | 206 | <td> |
207 | <a href="response_generation_sendfile.c">response generation using sendfile()</a> | 207 | <a href="response_generation_sendfile.c">response generation using sendfile()</a> |
208 | (<a href="_rgs/response_generation_sendfile.c.debian.strace.log.txt">log</a>): | 208 | (<a href="_rgs/response_generation_sendfile.c.debian.strace.log.txt">log</a>): |
209 | The test had to be updated for Debian to work, so we are | 209 | The test had to be updated for Debian to work, so we are |
210 | reading a prepared file which exists, contrary to the earlier | 210 | reading a prepared file which exists, contrary to the earlier |
211 | NetBSD test. | 211 | NetBSD test. |
212 | After receiving the GET request, we see 1 call to | 212 | After receiving the GET request, we see 1 call to |
213 | setsockopt (TCP_CORK) immediately before the header is | 213 | setsockopt (TCP_CORK) immediately before the header is |
214 | send. | 214 | send. |
215 | Then we see 6 calls to setsockopt: | 215 | Then we see 6 calls to setsockopt: |
216 | TCP_CORK, TCP_NODELAY, TCP_NODELAY, TCP_CORK, TCP_CORK, | 216 | TCP_CORK, TCP_NODELAY, TCP_NODELAY, TCP_CORK, TCP_CORK, |
217 | TCP_NODELAY. sendfile is called. setsockopt is called to | 217 | TCP_NODELAY. sendfile is called. setsockopt is called to |
218 | set TCP_NODELAY. the filedescriptor is closed. setsockopt | 218 | set TCP_NODELAY. the filedescriptor is closed. setsockopt |
219 | is called with TCP_NODELAY. | 219 | is called with TCP_NODELAY. |
220 | </td> | 220 | </td> |
221 | <td> | 221 | <td> |
222 | <a href="response_generation_sendfile.c">response generation using sendfile()</a> | 222 | <a href="response_generation_sendfile.c">response generation using sendfile()</a> |
223 | (<a href="_rgs/response_generation_sendfile.c.freebsd.truss.log.txt">log</a>): | 223 | (<a href="_rgs/response_generation_sendfile.c.freebsd.truss.log.txt">log</a>): |
224 | We see 2 calls to setsockopt. One TCP_NODELAY afer | 224 | We see 2 calls to setsockopt. One TCP_NODELAY afer |
225 | receiving the GET request. One TCP_NODELAY after sending | 225 | receiving the GET request. One TCP_NODELAY after sending |
226 | the header. The last one is followed by the body being | 226 | the header. The last one is followed by the body being |
227 | send. | 227 | send. |
228 | </td> | 228 | </td> |
229 | <td> | 229 | <td> |
230 | <a href="response_generation_sendfile.c">response generation using sendfile()</a> | 230 | <a href="response_generation_sendfile.c">response generation using sendfile()</a> |
231 | (<a href="_rgs/response_generation_sendfile.c.netbsd.ktruss.log.txt">log</a>): | 231 | (<a href="_rgs/response_generation_sendfile.c.netbsd.ktruss.log.txt">log</a>): |
232 | After receiving the GET request, the file with | 232 | After receiving the GET request, the file with |
233 | the content "a" is created. | 233 | the content "a" is created. |
234 | We see 1 call to setsockopt just before the header is send. | 234 | We see 1 call to setsockopt just before the header is send. |
235 | Immediatelly after we see another setsockopt call. The file | 235 | Immediatelly after we see another setsockopt call. The file |
236 | is read, then we see another setsockopt call followed by | 236 | is read, then we see another setsockopt call followed by |
237 | a sendto of "a". | 237 | a sendto of "a". |
238 | </td> | 238 | </td> |
239 | <td> | 239 | <td> |
240 | <a href="response_generation_sendfile.c">response generation using sendfile()</a>: | 240 | <a href="response_generation_sendfile.c">response generation using sendfile()</a>: |
241 | <br> | 241 | <br> |
242 | no data. | 242 | no data. |
243 | </td> | 243 | </td> |
244 | <td> | 244 | <td> |
245 | <a href="response_generation_sendfile.c">response generation using sendfile()</a> | 245 | <a href="response_generation_sendfile.c">response generation using sendfile()</a> |
246 | (<a href="_rgs/response_generation_sendfile.c.strace.cygwin.windows10.log.txt">log</a>): | 246 | (<a href="_rgs/response_generation_sendfile.c.strace.cygwin.windows10.log.txt">log</a>): |
247 | We see 1 call to setsockopt(), followed by a send() with size 99 (the header). | 247 | We see 1 call to setsockopt(), followed by a send() with size 99 (the header). |
248 | This is followed by 1 call to setsockopt(), and one more call to send() with size 1 | 248 | This is followed by 1 call to setsockopt(), and one more call to send() with size 1 |
249 | (the body). | 249 | (the body). |
250 | </td> | 250 | </td> |
251 | </tr> | 251 | </tr> |
252 | <tr> | 252 | <tr> |