<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en">
<head>
<meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
<title>
GitLab
</title>



<style>img {
max-width: 100%; height: auto;
}
</style>
</head>
<body>
<div class="content">

<h3>
Marc-André Lureau pushed to branch master
at <a href="https://gitlab.freedesktop.org/slirp/libslirp">slirp / libslirp</a>
</h3>
<h4>
Commits:
</h4>
<ul>
<li>
<strong><a href="https://gitlab.freedesktop.org/slirp/libslirp/-/commit/d7fb54218424c3b2517aee5b391ced0f75386a5d">d7fb5421</a></strong>
<div>
<span>by Samuel Thibault</span>
<i>at 2021-06-21T09:32:38+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">dhcp: Always send DHCP_OPT_LEN bytes in options

RFC2131 suggests that the options field may be at least 312 bytes.
Some DHCP clients seem to assume that it has to be at least 312 bytes.

Fixes #51
Fixes: f13cad45b25d92760bb0ad67bec0300a4d7d5275 ("bootp: limit
vendor-specific area to input packet memory buffer")

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
</pre>
</li>
<li>
<strong><a href="https://gitlab.freedesktop.org/slirp/libslirp/-/commit/f3c5eea002a6257996319c6398beab5c63fb316b">f3c5eea0</a></strong>
<div>
<span>by Marc-André Lureau</span>
<i>at 2021-06-21T07:40:39+00:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge branch 'dhcp-fix' into 'master'

dhcp: Always send DHCP_OPT_LEN bytes in options

Closes #51

See merge request slirp/libslirp!97</pre>
</li>
</ul>
<h4>1 changed file:</h4>
<ul>
<li class="file-stats">
<a href="#960273f7f8edbac0243d4a9a304cc845f5b15ea6">
src/bootp.c
</a>
</li>
</ul>
<h4>Changes:</h4>
<li id="960273f7f8edbac0243d4a9a304cc845f5b15ea6">
<a href="https://gitlab.freedesktop.org/slirp/libslirp/-/compare/146ff910d4b62837c11c65a30c7257ab02d17d0f...f3c5eea002a6257996319c6398beab5c63fb316b#960273f7f8edbac0243d4a9a304cc845f5b15ea6"><strong>src/bootp.c</strong></a>
<hr>
<table class="code white" style="font-family: monospace; font-size: 90%;" bgcolor="#fff" width="100%" cellpadding="0" cellspacing="0">
<tr class="line_holder match" id="" style="line-height: 1.6;">
<td class="diff-line-num unfold js-unfold old_line" data-linenumber="355" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">...</td>
<td class="diff-line-num unfold js-unfold new_line" data-linenumber="355" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">...</td>
<td class="line_content match " style="padding-left: 0.5em; padding-right: 0.5em; color: rgba(0,0,0,0.3);" bgcolor="#fafafa">@@ -355,13 +355,13 @@ static void bootp_reply(Slirp *slirp,</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="355" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
355
</td>
<td class="new_line diff-line-num" data-linenumber="355" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
355
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC355" class="line" lang="c">        <span class="n" style="color: #333;">q</span> <span class="o" style="font-weight: 600;">+=</span> <span class="k" style="font-weight: 600;">sizeof</span><span class="p">(</span><span class="n" style="color: #333;">nak_msg</span><span class="p">)</span> <span class="o" style="font-weight: 600;">-</span> <span class="mi" style="color: #099;">1</span><span class="p">;</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="356" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
356
</td>
<td class="new_line diff-line-num" data-linenumber="356" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
356
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC356" class="line" lang="c">    <span class="p">}</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="357" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
357
</td>
<td class="new_line diff-line-num" data-linenumber="357" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
357
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC357" class="line" lang="c">    <span class="n" style="color: #333;">assert</span><span class="p">(</span><span class="n" style="color: #333;">q</span> <span class="o" style="font-weight: 600;"><</span> <span class="n" style="color: #333;">end</span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder old" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num old" data-linenumber="358" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #fac5cd; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#f9d7dc">
358
</td>
<td class="new_line diff-line-num old" data-linenumber="358" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #fac5cd; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#f9d7dc">
 
</td>
<td class="line_content old" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#fbe9eb">
<pre style="margin: 0;">-<span id="LC358" class="line" lang="c">    <span class="o" style="font-weight: 600;">*</span><span class="n" style="color: #333;">q</span> <span class="o" style="font-weight: 600;">=</span> <span class="n" style="color: #333;">RFC1533_END</span><span class="p">;</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num new" data-linenumber="359" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
 
</td>
<td class="new_line diff-line-num new" data-linenumber="358" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
358
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC358" class="line" lang="c">    <span class="o" style="font-weight: 600;">*</span><span class="n" style="color: #333;">q</span><span class="o" style="font-weight: 600;"><span class="idiff left right">++</span></span> <span class="o" style="font-weight: 600;">=</span> <span class="n" style="color: #333;">RFC1533_END</span><span class="p">;</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="359" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
359
</td>
<td class="new_line diff-line-num" data-linenumber="359" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
359
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC359" class="line" lang="c"></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="360" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
360
</td>
<td class="new_line diff-line-num" data-linenumber="360" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
360
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC360" class="line" lang="c">    <span class="n" style="color: #333;">daddr</span><span class="p">.</span><span class="n" style="color: #333;">sin_addr</span><span class="p">.</span><span class="n" style="color: #333;">s_addr</span> <span class="o" style="font-weight: 600;">=</span> <span class="mh" style="color: #099;">0xffffffffu</span><span class="p">;</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="361" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
361
</td>
<td class="new_line diff-line-num" data-linenumber="361" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
361
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC361" class="line" lang="c"></span>
</pre>
</td>
</tr>
<tr class="line_holder old" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num old" data-linenumber="362" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #fac5cd; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#f9d7dc">
362
</td>
<td class="new_line diff-line-num old" data-linenumber="362" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #fac5cd; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#f9d7dc">
 
</td>
<td class="line_content old" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#fbe9eb">
<pre style="margin: 0;">-<span id="LC362" class="line" lang="c">    <span class="n" style="color: #333;">assert</span><span class="idiff left"> </span><span class="p"><span class="idiff">(</span>(</span><span class="n" style="color: #333;">q</span> <span class="o" style="font-weight: 600;"><span class="idiff">-</span></span><span class="idiff"> </span><span class="n" style="color: #333;"><span class="idiff">rbp</span></span><span class="o" style="font-weight: 600;"><span class="idiff">-></span></span><span class="n" style="color: #333;"><span class="idiff">bp_vend</span></span><span class="idiff"> </span><span class="o" style="font-weight: 600;"><span class="idiff">+</span></span><span class="idiff"> </span><span class="mi" style="color: #099;"><span class="idiff">1</span></span><span class="p"><span class="idiff">)</span></span><span class="idiff"> </span><span class="o" style="font-weight: 600;"><span class="idiff"><=</span></span><span class="idiff"> </span><span class="n" style="color: #333;"><span class="idiff right">DHCP_OPT_LEN</span></span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num new" data-linenumber="363" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
 
</td>
<td class="new_line diff-line-num new" data-linenumber="362" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
362
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC362" class="line" lang="c">    <span class="n" style="color: #333;">assert</span><span class="p">(</span><span class="n" style="color: #333;">q</span> <span class="o" style="font-weight: 600;"><span class="idiff left"><=</span></span><span class="idiff"> </span><span class="n" style="color: #333;"><span class="idiff right">end</span></span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="363" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
363
</td>
<td class="new_line diff-line-num" data-linenumber="363" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
363
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC363" class="line" lang="c"></span>
</pre>
</td>
</tr>
<tr class="line_holder old" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num old" data-linenumber="364" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #fac5cd; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#f9d7dc">
364
</td>
<td class="new_line diff-line-num old" data-linenumber="364" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #fac5cd; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#f9d7dc">
 
</td>
<td class="line_content old" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#fbe9eb">
<pre style="margin: 0;">-<span id="LC364" class="line" lang="c">    <span class="n" style="color: #333;">m</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">m_len</span> <span class="o" style="font-weight: 600;">=</span> <span class="k" style="font-weight: 600;">sizeof</span><span class="p">(</span><span class="k" style="font-weight: 600;">struct</span> <span class="n" style="color: #333;">bootp_t</span><span class="p">)</span> <span class="o" style="font-weight: 600;">+</span> <span class="p">(</span><span class="n" style="color: #333;"><span class="idiff left">q</span></span> <span class="o" style="font-weight: 600;">-</span> <span class="n" style="color: #333;">rbp</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">bp_vend</span><span class="idiff"> </span><span class="o" style="font-weight: 600;"><span class="idiff">+</span></span><span class="idiff"> </span><span class="mi" style="color: #099;"><span class="idiff right">1</span></span><span class="p">)</span> <span class="o" style="font-weight: 600;">-</span> <span class="k" style="font-weight: 600;">sizeof</span><span class="p">(</span><span class="k" style="font-weight: 600;">struct</span> <span class="n" style="color: #333;">ip</span><span class="p">)</span> <span class="o" style="font-weight: 600;">-</span> <span class="k" style="font-weight: 600;">sizeof</span><span class="p">(</span><span class="k" style="font-weight: 600;">struct</span> <span class="n" style="color: #333;">udphdr</span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num new" data-linenumber="365" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
 
</td>
<td class="new_line diff-line-num new" data-linenumber="364" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
364
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC364" class="line" lang="c">    <span class="n" style="color: #333;">m</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">m_len</span> <span class="o" style="font-weight: 600;">=</span> <span class="k" style="font-weight: 600;">sizeof</span><span class="p">(</span><span class="k" style="font-weight: 600;">struct</span> <span class="n" style="color: #333;">bootp_t</span><span class="p">)</span> <span class="o" style="font-weight: 600;">+</span> <span class="p">(</span><span class="n" style="color: #333;"><span class="idiff left right">end</span></span> <span class="o" style="font-weight: 600;">-</span> <span class="n" style="color: #333;">rbp</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">bp_vend</span><span class="p">)</span> <span class="o" style="font-weight: 600;">-</span> <span class="k" style="font-weight: 600;">sizeof</span><span class="p">(</span><span class="k" style="font-weight: 600;">struct</span> <span class="n" style="color: #333;">ip</span><span class="p">)</span> <span class="o" style="font-weight: 600;">-</span> <span class="k" style="font-weight: 600;">sizeof</span><span class="p">(</span><span class="k" style="font-weight: 600;">struct</span> <span class="n" style="color: #333;">udphdr</span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="365" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
365
</td>
<td class="new_line diff-line-num" data-linenumber="365" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
365
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC365" class="line" lang="c">    <span class="n" style="color: #333;">udp_output</span><span class="p">(</span><span class="nb" style="color: #0086b3;">NULL</span><span class="p">,</span> <span class="n" style="color: #333;">m</span><span class="p">,</span> <span class="o" style="font-weight: 600;">&</span><span class="n" style="color: #333;">saddr</span><span class="p">,</span> <span class="o" style="font-weight: 600;">&</span><span class="n" style="color: #333;">daddr</span><span class="p">,</span> <span class="n" style="color: #333;">IPTOS_LOWDELAY</span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="366" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
366
</td>
<td class="new_line diff-line-num" data-linenumber="366" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
366
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC366" class="line" lang="c"><span class="p">}</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="old_line diff-line-num" data-linenumber="367" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
367
</td>
<td class="new_line diff-line-num" data-linenumber="367" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
367
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC367" class="line" lang="c"></span>
</pre>
</td>
</tr>

</table>
<br>
</li>

</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #666;">

<br>
<a href="https://gitlab.freedesktop.org/slirp/libslirp/-/compare/146ff910d4b62837c11c65a30c7257ab02d17d0f...f3c5eea002a6257996319c6398beab5c63fb316b">View it on GitLab</a>.
<br>
You're receiving this email because of your account on gitlab.freedesktop.org.
If you'd like to receive fewer emails, you can
adjust your notification settings.



</p>
</div>
</body>
</html>