Vladimir Serbinenko
63034d3261
arp, icmp: Fix handling in case of oversized or invalid packets.
...
This restrict ARP handling to MAC and IP addresses but in practice we need
only this case anyway and other cases are very rar if exist at all. It makes
code much simpler and less error-prone.
2015-03-27 12:18:25 +01:00
Andrey Borzenkov
954fe77163
cleanup: grub_cpu_to_XXX_compile_time for constants
...
This tries to catch all cases where grub_cpu_to_XXX was used for constant
expressions (including sizeof).
2014-09-22 20:47:10 +04:00
Paulo Flabiano Smorigo
6f65e36cc4
increase network try interval gradually
...
* grub-core/net/arp.c (grub_net_arp_send_request): Increase network try
interval gradually.
* grub-core/net/icmp6.c (grub_net_icmp6_send_request): Likewise.
* grub-core/net/net.c (grub_net_fs_read_real): Likewise.
* grub-core/net/tftp.c (tftp_open): Likewise.
* include/grub/net.h (GRUB_NET_INTERVAL_ADDITION): New define.
2014-01-21 11:06:35 -02:00
Vladimir Serbinenko
7e47e27bd8
Add gcc_struct to all packed structures when compiling with mingw.
...
Just "packed" doesn't always pack the way we expect.
2013-12-15 14:14:30 +01:00
Vladimir 'phcoder' Serbinenko
28153eb87a
* grub-core/net/arp.c: Remove variable length arrays.
...
* grub-core/net/bootp.c: Likewise.
* grub-core/net/dns.c: Likewise.
* grub-core/net/icmp6.c: Likewise.
* grub-core/net/net.c: Likewise.
2013-10-20 17:40:21 +02:00
Vladimir 'phcoder' Serbinenko
96f7e60eae
Stop polling as soon as we have the packet we were waiting for.
...
* include/grub/net.h (grub_net_poll_cards): New argument stop_condition.
All users updated.
* grub-core/net/arp.c (have_pending): New var.
(pending_req): Likewise.
(grub_net_arp_send_request): Fill pending_req and use have_pending as
stop indicator.
(grub_net_arp_receive): Set have_pending.
* grub-core/net/dns.c (recv_data): New field stop.
(recv_hook): Set stop.
(grub_net_dns_lookup): Init stop and use as stop condition.
* grub-core/net/http.c (http_establish): Use headers_recv as stop
condition.
* grub-core/net/net.c (grub_net_poll_cards): New argument
stop_condition. Stop when it goes true.
* grub-core/net/tcp.c (grub_net_tcp_open): Use `established' as stop
indicator.
* grub-core/net/tftp.c (tftp_open): Use `have_oack' as stop indicator.
2012-06-09 11:06:55 +02:00
Vladimir 'phcoder' Serbinenko
9c4b5c13e6
Improve gettext support. Stylistic fixes and error handling fixes while
...
on it.
2012-02-08 19:26:01 +01:00
Vladimir 'phcoder' Serbinenko
da1b289afc
IPv6. Apparently working. At least I could retrieve a file with http6
2011-10-13 01:22:56 +02:00
Vladimir 'phcoder' Serbinenko
7c006811f8
more ipv6 code. Now ipv6 ping succeeds
2011-10-12 23:15:02 +02:00
Vladimir 'phcoder' Serbinenko
9aad3cd91d
IPv6 support. Several fixes and unifications
2011-10-05 22:15:30 +02:00
Vladimir 'phcoder' Serbinenko
fecdbd6b17
support ip fragmentation
2011-07-09 00:27:27 +02:00
Vladimir 'phcoder' Serbinenko
7e0c2d162a
Restructurisations, cleanups and few bugfixes
2011-07-02 22:13:33 +02:00
Vladimir 'phcoder' Serbinenko
a057797f18
merge mine and abranches' branches. Fix several issues
2011-06-24 21:51:57 +02:00
Vladimir 'phcoder' Serbinenko
8b51fd98b9
bootp support
2011-06-24 20:35:25 +02:00
Manoel R. Abranches
d855fbcf37
Add error verification in netbuff operations.
2011-06-18 20:20:53 -03:00
Manoel Rebelo Abranches
4700d08bb4
Run indent on files.
2011-06-07 21:59:53 -03:00
Vladimir 'phcoder' Serbinenko
eea841440d
fix several bugs
2011-05-19 15:39:34 +02:00
Manoel Rebelo Abranches
25f1579b43
Adapt protocols to new network struct.
2011-04-01 05:42:34 -03:00
Vladimir 'phcoder' Serbinenko
04d22dddd9
Fix a bunch of net issues
2010-09-23 00:45:39 +02:00
Vladimir 'phcoder' Serbinenko
ce3a2ec025
Remove some dead code
2010-09-22 20:34:20 +02:00
Manoel R. Abranches
7bb47706c9
Merge grub_net into net. Compiles but is broken right now.
2010-09-16 21:57:31 +02:00