<feed xmlns='http://www.w3.org/2005/Atom'>
<title>u-boot.git/include/net.h, branch v2019.10</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/'/>
<entry>
<title>net: make net_random_ethaddr() more random</title>
<updated>2019-09-04T16:37:19+00:00</updated>
<author>
<name>Michael Walle</name>
<email>michael@walle.cc</email>
</author>
<published>2019-08-27T08:13:52+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=12c2a310e87d4eacfd669346338e856cb3ad54c2'/>
<id>12c2a310e87d4eacfd669346338e856cb3ad54c2</id>
<content type='text'>
The net_random_ethaddr() tries to get some entropy from different
startup times of a board. The seed is initialized with get_timer() which
has only a granularity of milliseconds. We can do better if we use
get_ticks() which returns the raw timer ticks. Using this we have a
higher chance of getting different values at startup.

Signed-off-by: Michael Walle &lt;michael@walle.cc&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The net_random_ethaddr() tries to get some entropy from different
startup times of a board. The seed is initialized with get_timer() which
has only a granularity of milliseconds. We can do better if we use
get_ticks() which returns the raw timer ticks. Using this we have a
higher chance of getting different values at startup.

Signed-off-by: Michael Walle &lt;michael@walle.cc&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>env: net: Move eth_parse_enetaddr() to net.c/h</title>
<updated>2019-08-11T20:43:41+00:00</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2019-08-01T15:46:54+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=36c8b143c0c113232bcf47d6499a3982fdfaf98a'/>
<id>36c8b143c0c113232bcf47d6499a3982fdfaf98a</id>
<content type='text'>
This function fits better with the network subsystem, so move it.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Suggested-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This function fits better with the network subsystem, so move it.

Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
Suggested-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>env: Move env_set() to env.h</title>
<updated>2019-08-11T20:43:41+00:00</updated>
<author>
<name>Simon Glass</name>
<email>sjg@chromium.org</email>
</author>
<published>2019-08-01T15:46:51+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=9fb625ce05539fe6876a59ce1dcadb76b33c6f6e'/>
<id>9fb625ce05539fe6876a59ce1dcadb76b33c6f6e</id>
<content type='text'>
Move env_set() over to the new header file.

Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Move env_set() over to the new header file.

Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
Signed-off-by: Simon Glass &lt;sjg@chromium.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: unaligned copying of unsigned long</title>
<updated>2019-07-18T21:37:13+00:00</updated>
<author>
<name>Heinrich Schuchardt</name>
<email>xypron.glpk@gmx.de</email>
</author>
<published>2019-07-14T20:02:13+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=bbfc562719c463ba6e7b03125aedd5720a325d2d'/>
<id>bbfc562719c463ba6e7b03125aedd5720a325d2d</id>
<content type='text'>
The inline functions net_read_u32() and net_copy_u32() have been created to
copy unaligned u32. But this is not obvious to the compiler. GCC 9.1
introduces a check -Werror=address-of-packed-member which leads to a build
error on Travis CI:

net/bootp.c: In function ‘dhcp_send_request_packet’:
net/bootp.c:1011:27: error: taking address of packed member of
‘struct bootp_hdr’ may result in an unaligned pointer value
[-Werror=address-of-packed-member]
 1011 |  net_copy_u32(&amp;bp-&gt;bp_id, &amp;bp_offer-&gt;bp_id);

Change the type of the function parameters to void * to avoid the build
error.

Reported-by: Ramon Fried &lt;rfried.dev@gmail.com&gt;
Signed-off-by: Heinrich Schuchardt &lt;xypron.glpk@gmx.de&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The inline functions net_read_u32() and net_copy_u32() have been created to
copy unaligned u32. But this is not obvious to the compiler. GCC 9.1
introduces a check -Werror=address-of-packed-member which leads to a build
error on Travis CI:

net/bootp.c: In function ‘dhcp_send_request_packet’:
net/bootp.c:1011:27: error: taking address of packed member of
‘struct bootp_hdr’ may result in an unaligned pointer value
[-Werror=address-of-packed-member]
 1011 |  net_copy_u32(&amp;bp-&gt;bp_id, &amp;bp_offer-&gt;bp_id);

Change the type of the function parameters to void * to avoid the build
error.

Reported-by: Ramon Fried &lt;rfried.dev@gmail.com&gt;
Signed-off-by: Heinrich Schuchardt &lt;xypron.glpk@gmx.de&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: Add priv_pdata to eth_pdata</title>
<updated>2019-04-12T12:05:52+00:00</updated>
<author>
<name>Faiz Abbas</name>
<email>faiz_abbas@ti.com</email>
</author>
<published>2019-03-18T08:24:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=3c6add986f1cfca8651e5bfd5a8dbefa6d89ecc9'/>
<id>3c6add986f1cfca8651e5bfd5a8dbefa6d89ecc9</id>
<content type='text'>
Add a priv member for eth_pdata for platform specific platform data.

Signed-off-by: Faiz Abbas &lt;faiz_abbas@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a priv member for eth_pdata for platform specific platform data.

Signed-off-by: Faiz Abbas &lt;faiz_abbas@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: remove CONFIG_MCAST_TFTP</title>
<updated>2019-01-24T17:35:30+00:00</updated>
<author>
<name>Chris Packham</name>
<email>judge.packham@gmail.com</email>
</author>
<published>2018-11-26T08:00:29+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=67bb984249442378ebb6a0eb68b6b0dd67dfbe72'/>
<id>67bb984249442378ebb6a0eb68b6b0dd67dfbe72</id>
<content type='text'>
No mainline board enables CONFIG_MCAST_TFTP and there have been
compilation issues with the code for some time. Additionally, it has a
potential buffer underrun issue (reported as a side note in
CVE-2018-18439).

Remove the multicast TFTP code but keep the driver API for the future
addition of IPv6.

Cc: Simon Goldschmidt &lt;simon.k.r.goldschmidt@gmail.com&gt;
Signed-off-by: Chris Packham &lt;judge.packham@gmail.com&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
No mainline board enables CONFIG_MCAST_TFTP and there have been
compilation issues with the code for some time. Additionally, it has a
potential buffer underrun issue (reported as a side note in
CVE-2018-18439).

Remove the multicast TFTP code but keep the driver API for the future
addition of IPv6.

Cc: Simon Goldschmidt &lt;simon.k.r.goldschmidt@gmail.com&gt;
Signed-off-by: Chris Packham &lt;judge.packham@gmail.com&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: move ether_crc to tsec driver</title>
<updated>2019-01-24T17:35:29+00:00</updated>
<author>
<name>Chris Packham</name>
<email>judge.packham@gmail.com</email>
</author>
<published>2018-11-26T08:00:28+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=1a4af5c562fdb9f5a884a53f136f2b2075ffd1d8'/>
<id>1a4af5c562fdb9f5a884a53f136f2b2075ffd1d8</id>
<content type='text'>
ether_crc was added to the core net code in commit 53a5c424bf86
("multicast tftp: RFC2090") so that other drivers could use it. However
the only current user of it is tsec.c so move it there.

Signed-off-by: Chris Packham &lt;judge.packham@gmail.com&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ether_crc was added to the core net code in commit 53a5c424bf86
("multicast tftp: RFC2090") so that other drivers could use it. However
the only current user of it is tsec.c so move it there.

Signed-off-by: Chris Packham &lt;judge.packham@gmail.com&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: Consolidate UDP header functions</title>
<updated>2018-10-10T17:29:02+00:00</updated>
<author>
<name>Duncan Hare</name>
<email>DH@Synoia.com</email>
</author>
<published>2018-06-24T22:40:41+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=5d457ecbef5eba8eaeed513c65c55453de4f3975'/>
<id>5d457ecbef5eba8eaeed513c65c55453de4f3975</id>
<content type='text'>
Make it possible to add TCP versions of the same, while reusing
IP portions. This patch should not change any behavior.

Signed-off-by: Duncan Hare &lt;DH@Synoia.com&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make it possible to add TCP versions of the same, while reusing
IP portions. This patch should not change any behavior.

Signed-off-by: Duncan Hare &lt;DH@Synoia.com&gt;
Acked-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: Don't overwrite waiting packets with asynchronous replies</title>
<updated>2018-10-10T17:29:01+00:00</updated>
<author>
<name>Joe Hershberger</name>
<email>joe.hershberger@ni.com</email>
</author>
<published>2018-09-26T21:49:02+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=ac3f26cc15ad7e3e9efc2b0b0e18c6e84d93af77'/>
<id>ac3f26cc15ad7e3e9efc2b0b0e18c6e84d93af77</id>
<content type='text'>
Peter originally sent a fix, but it breaks a number of other things.
This addresses the original reported issue in a different way.

That report was:

&gt; U-Boot has 1 common buffer to send Ethernet frames, pointed to by
&gt; net_tx_packet.  When sending to an IP address without knowing the MAC
&gt; address, U-Boot makes an ARP request (using the arp_tx_packet buffer)
&gt; to find out the MAC address of the IP addressr. When a matching ARP
&gt; reply is received, U-Boot continues sending the frame stored in the
&gt; net_tx_packet buffer.
&gt;
&gt; However, in the mean time, if U-Boot needs to send out any network
&gt; packets (e.g. replying ping packets or ARP requests for its own IP
&gt; address etc.), it will use the net_tx_packet buffer to prepare the
&gt; new packet. Thus this buffer is no longer the original packet meant
&gt; to be transmitted after the ARP reply. The original packet will be
&gt; lost.

This instead uses the ARP tx buffer to send async replies in the case
where we are actively waiting for an ARP reply.

Signed-off-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;

Reported-by: Tran Tien Dat &lt;peter.trantiendat@gmail.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
Tested-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Peter originally sent a fix, but it breaks a number of other things.
This addresses the original reported issue in a different way.

That report was:

&gt; U-Boot has 1 common buffer to send Ethernet frames, pointed to by
&gt; net_tx_packet.  When sending to an IP address without knowing the MAC
&gt; address, U-Boot makes an ARP request (using the arp_tx_packet buffer)
&gt; to find out the MAC address of the IP addressr. When a matching ARP
&gt; reply is received, U-Boot continues sending the frame stored in the
&gt; net_tx_packet buffer.
&gt;
&gt; However, in the mean time, if U-Boot needs to send out any network
&gt; packets (e.g. replying ping packets or ARP requests for its own IP
&gt; address etc.), it will use the net_tx_packet buffer to prepare the
&gt; new packet. Thus this buffer is no longer the original packet meant
&gt; to be transmitted after the ARP reply. The original packet will be
&gt; lost.

This instead uses the ARP tx buffer to send async replies in the case
where we are actively waiting for an ARP reply.

Signed-off-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;

Reported-by: Tran Tien Dat &lt;peter.trantiendat@gmail.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
Tested-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>net: Add an accessor to know if waiting for ARP</title>
<updated>2018-10-10T17:28:58+00:00</updated>
<author>
<name>Joe Hershberger</name>
<email>joe.hershberger@ni.com</email>
</author>
<published>2018-09-26T21:48:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/u-boot.git/commit/?id=3f02c98bd1000fc26ee2700fd5a75112cdeaca6c'/>
<id>3f02c98bd1000fc26ee2700fd5a75112cdeaca6c</id>
<content type='text'>
This single-sources the state of the ARP.

Signed-off-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This single-sources the state of the ARP.

Signed-off-by: Joe Hershberger &lt;joe.hershberger@ni.com&gt;
Reviewed-by: Simon Glass &lt;sjg@chromium.org&gt;
Reviewed-by: Bin Meng &lt;bmeng.cn@gmail.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
