aboutsummaryrefslogtreecommitdiff
path: root/pfinet
Commit message (Collapse)AuthorAgeFilesLines
* Fix pfinet device_open errno reportingSamuel Thibault2012-02-191-2/+2
| | | | | * pfinet/ethernet.c (ethernet_open): Use value saved in `file_errno', not `errno'.
* Make pfinet use BPF filter when using a devnodeSamuel Thibault2012-02-191-5/+24
| | | | | | * pfinet/ethernet.c (bpf_ether_filter, bpf_ether_filter_len): New variables. (ethernet_open): Use bpf_ether_filter and bpf_ether_filter_len for device_set_filter call in the devnode case.
* More helpful messagesSamuel Thibault2012-02-191-3/+3
|
* Merge branch 'master' of git.savannah.gnu.org:/srv/git/hurd/hurdSamuel Thibault2012-02-191-8/+27
|\
| * Make pfinet try both a filepath and kernel deviceSamuel Thibault2012-02-191-8/+27
| | | | | | | | | | pfinet/ethernet.c (ethernet_open): Try to file_name_lookup() the device as filepath before opening the Mach device.
* | Fix pfinet compilationSamuel Thibault2012-02-191-0/+3
|/ | | | | | * pfinet/ethernet.c (_HACK_ERRNO_H): Define to avoid inclusion of glue-include/linux/errno.h which undefines errno. Include <fcntl.h>.
* Fix error values on socket creationPino Toscano2011-12-061-6/+8
| | | | | | | | | On socket creation, return the correct errno values, EPROTOTYPE and EPROTONOSUPPORT, for invalid socket types and protocols. * pfinet/socket-ops.c (S_socket_create): Correctly return EPROTOTYPE and EPROTONOSUPPORT. * pflocal/pf.c (S_socket_create): Correctly return EPROTOTYPE.
* Fix select on pfinet tunnel and streamioSamuel Thibault2011-11-281-2/+1
| | | | | * pfinet/tunnel.c (trivfs_S_io_select): Do not return EINVAL on SELECT_URG. * trans/streamio.c (trivfs_S_io_select): Likewise.
* Add missing format strings for error, printk, problemPino Toscano2011-10-192-3/+3
| | | | | | | | | | | | | | | | | | | Some calls to `error', `printk', and `problem' lacked a format string, leading to build failure when compiling with stricter CFLAGS. * nfs/mount.c (mount_root): Add format string for `error' calls which lacked it. * pfinet/main.c (pfinet_bind): Likewise. * term/main.c (main): Likewise. * utils/shd.c (run): Likewise. * utils/storeinfo.c (main): Likewise. * pfinet/linux-src/include/net/tcp.h (tcp_clear_xmit_timer): Add format string for `printk' call which lacked it. (tcp_timer_is_set): Likewise. * ufs-fsck/utilities.c (punt): Add format string for `problem' call which lacked it.
* fix common misspellingsJonathan Neuschäfer2011-08-2049-66/+66
| | | | | | * Fix spelling with codespell[1] and manually review it. [1] http://git.profusion.mobi/cgit.cgi/lucas/codespell/
* pfinet/linux-src: fix a memory leakJonathan Neuschäfer2011-08-201-3/+6
| | | | | * pfinet/linux-src/net/ipv4/ip_options.c (ip_options_get): calculate the size of opt only once, free opt before returning -EFAULT.
* Fix pfinet build from make dist-generated tarballSamuel Thibault2011-04-031-23/+81
| | | | | | | | | | | | | | | | | | | | | | | | | * pfinet/Makefile (ARCHS): New variable. (LINUXSRCS): Move arch files to... (ARCHSRCS): here. (LINUXHDRS): Update. (LINUXNETHDRS): New variable. (ARCHHDRS): New variable. (FROBBEDLINUXHEADERS): Update. (ASMHEADERS): Update. (lndist-linux-inet-files, lndist-linux-files, lndist-asm-files): Remove targets. (lndist-linux-src-net-core-files, lndist-linux-src-net-ethernet-files, lndist-linux-src-net-ipv4-files, lndist-linux-src-net-ipv6-files, lndist-linux-src-asm-files, lndist-linux-src-include-asm-files, lndist-linux-src-include-linux-files, lndist-linux-src-include-net-files, lndist-glue-include-linux-files, lndist-glue-include-asm-files): New targets. (linux-src, linux-src/arch, linux-src/arch/%/lib, linux-src/include, linux-src/include/%, linux-src/net, linux-src/net/core, linux-src/net/ethernet, linux-src/net/ipv4, linux-src/net/ipv6, glue-include, glue-include/asm, glue-include/linux): New hurd-snap directory build targets. (lndist): Update target dependencies.
* Fix S_pfinet_siocgifconf given -1 as amountSamuel Thibault2011-02-221-1/+1
| | | | | | | * hurd/pfinet.defs (pfinet_siocgifconf): Document that -1 is used for "all interfaces". * pfinet/pfinet-ops.c (S_pfinet_siocgifconf): Compare amount with `(vm_size_t) -1' instead of '< 0' (which can never happen).
* Fix NULL dereferenceSamuel Thibault2010-12-251-1/+1
| | | | | * pfinet/linux-src/net/ipv6/ip6_fib.c (fib6_locate): Do not dereference fn when it is NULL.
* Fix connect(AF_UNSPEC)Samuel Thibault2010-10-302-1/+10
| | | | | | | | | | Fixes sshd startup on inet6-enabled systems. * pfinet/socket-ops.c (S_socket_create_address): Accept creating AF_UNSPEC addresses too. * pfinet/linux-src/net/ipv6/udp_ipv6.c (udpv6_connect): When address family is AF_UNSPEC, call udp_connect() and clear daddr, saddr, and rcv_saddr.
* Fix ipv6 pfinet buildSamuel Thibault2010-10-291-1/+1
| | | | | * pfinet/linux-src/net/ipv6/raw_ipv6.c (rawv6_init_sk): Replace yet-undefined raw6_sk with proper translation.
* ipv6 raw fixesAlexey Kuznetsov2010-10-291-2/+21
| | | | | | | | | | | | | - RFC2292 bis compliance: enable checksumming of ICMPv6 raw sockets by default, reject odd offsets - calculate checksum correctly when user forgets to uninitialize checksum word * net/ipv6/raw_ipv6.c (rawv6_frag_cksum): Fix offset check. Compensate for any user-provided checksum. (rawv6_setsockopt): Reject odd checkum offsets with EINVAL. (rawv6_init_sk): Enable kernel-computed checksum by default for IPPROTO_ICMPV6 sockets.
* Fix return value on `getname' errors.Pino Toscano2010-10-111-1/+1
| | | | | | | | | This fixes the errno return value for getpeername() calls on not connected sockets: the return value of the `getname' call comes from the Linux code, so it is a negative value, in case of error. * pfinet/misc.c (make_sockaddr_port): Turn negative error values returned by `getname' calls into positive values before returning it.
* Add support for setting actual device flagsSamuel Thibault2010-09-203-1/+22
| | | | | | | * pfinet/ethernet.c (ethernet_change_flags): New function. * pfinet/pfinet.h (ethernet_change_flags): New declaration. * pfinet/iioctl-ops.c (S_iioctl_siocsifflags): Also call `ethernet_change_flags' after calling `dev_change_flags'.
* Fix net_bh_wakeup useSamuel Thibault2010-09-181-4/+4
| | | | | * pfinet/sched.c (net_bh_worker): Use the net_bh_lock mutex instead of the global_lock mutex for the net_bh_wakeup condition variable.
* pfinet: check return value of mmap() in S_io_read() and S_socket_recv()Olaf Buddenhagen2010-08-012-0/+10
| | | | | * pfinet/io-ops.c (S_io_read): Check return value. * pfinet/socket-ops.c (S_socket_recv): Likewise.
* Fix memory leak on receive errorSamuel Thibault2010-06-281-1/+5
| | | | | * pfinet/io-ops.c (S_io_read): On error, free data array if it was allocated.
* Fix memory leak on schedule_timeoutSamuel Thibault2010-06-281-1/+2
| | | | | * pfinet/glue-include/linux/sched.h (schedule_timeout): Make the automatically-allocated wait_queue pointer static instead of dynamic (and lost).
* Add memory clobbers to assembly snippetsSamuel Thibault2009-09-261-2/+4
| | | | | | * pfinet/linux-src/include/asm-i386/checksum.h (ip_fast_csum): Add memory clobber to assembly snippet. (csum_ipv6_magic): Likewise.
* Fix assignment from incompatible pointer typeSamuel Thibault2009-09-221-1/+1
| | | | | * pfinet/linux-src/net/ipv4/tcp_ipv4.c (tcp_v4_connect): xchg &rt->u.dst instead of just rt with sk->dst_cache.
* Switch to the new ChangeLog style.Thomas Schwinge2009-07-111-1141/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ChangeLog: Wipe out content, and add instructions about how to get it back. * auth/ChangeLog: Remove file. * benchmarks/ChangeLog: Likewise. * boot/ChangeLog: Likewise. * bsdfsck/ChangeLog: Likewise. * config/ChangeLog: Likewise. * console-client/ChangeLog: Likewise. * console/ChangeLog: Likewise. * daemons/ChangeLog: Likewise. * defpager/ChangeLog: Likewise. * doc/ChangeLog: Likewise. * exec/ChangeLog: Likewise. * ext2fs/ChangeLog: Likewise. * fatfs/ChangeLog: Likewise. * fstests/ChangeLog: Likewise. * ftpfs/ChangeLog: Likewise. * hostmux/ChangeLog: Likewise. * hurd/ChangeLog: Likewise. * include/ChangeLog: Likewise. * init/ChangeLog: Likewise. * isofs/ChangeLog: Likewise. * libcons/ChangeLog: Likewise. * libdirmgt/ChangeLog: Likewise. * libdiskfs/ChangeLog: Likewise. * libfshelp/ChangeLog: Likewise. * libftpconn/ChangeLog: Likewise. * libhurdbugaddr/ChangeLog: Likewise. * libihash/ChangeLog: Likewise. * libiohelp/ChangeLog: Likewise. * libnetfs/ChangeLog: Likewise. * libpager/ChangeLog: Likewise. * libpipe/ChangeLog: Likewise. * libports/ChangeLog: Likewise. * libps/ChangeLog: Likewise. * libshouldbeinlibc/ChangeLog: Likewise. * libstore/ChangeLog: Likewise. * libthreads/ChangeLog: Likewise. * libtrivfs/ChangeLog: Likewise. * login/ChangeLog: Likewise. * mach-defpager/ChangeLog: Likewise. * nfs/ChangeLog: Likewise. * nfsd/ChangeLog: Likewise. * pfinet/ChangeLog: Likewise. * pflocal/ChangeLog: Likewise. * proc/ChangeLog: Likewise. * release/ChangeLog: Likewise. * serverboot/ChangeLog: Likewise. * storeio/ChangeLog: Likewise. * sutils/ChangeLog: Likewise. * term/ChangeLog: Likewise. * tmpfs/ChangeLog: Likewise. * trans/ChangeLog: Likewise. * ufs-fsck/ChangeLog: Likewise. * ufs-utils/ChangeLog: Likewise. * ufs/ChangeLog: Likewise. * usermux/ChangeLog: Likewise. * utils/ChangeLog: Likewise.
* 2009-02-24 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault2009-02-243-19/+26
| | | | | | | * linux-src/net/ipv6/addrconf.c (ipv6_addr_type): Use __in6_u.__u6_addr32 member instead of in6_u.u6_addr32. * linux-src/net/ipv6/icmpv6.c (icmpv6_rcv): Use __in6_u.__u6_addr16 member instead of in6_u.u6_addr16.
* 2008-10-02 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge2008-10-022-0/+9
| | | | | * glue-include/linux/socket.h: Revert last change. (MSG_NOSIGNAL): Guard definition and add a compile-time warning.
* * glue-include/linux/socket.h (MSG_NOSIGNAL): Remove macro.Samuel Thibault2008-08-032-1/+4
|
* * glue-include/linux/if.h (IFF_DYNAMIC): Remove macro.Samuel Thibault2008-06-102-1/+4
|
* 2007-10-14 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl2007-10-143-21/+53
| | | | | | | | | | | * options.c (ipv6_get_dflt_router) [CONFIG_IPV6]: New function. (parse_opt) [CONFIG_IPV6]: Don't delete IPv6 interface address, if it would be re-added immediately, but delete if otherwise. Do not touch inet6_ifaddr after inet6_addr_del was called. Don't purge and re-add IPv6 default router unless necessary. (trivfs_append_args) [CONFIG_IPV6]: Use ipv6_get_dflt_router. * linux-src/net/ipv6/addrconf.c (ipv6_del_addr): Call del_timer on ifp->timer.
* 2007-10-13 Marco Gerards <metgerards@student.han.nl>Thomas Schwinge2007-10-132-0/+29
| | | | * iioctl-ops.c (S_iioctl_siocgifhwaddr): New function.
* 2007-10-13 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl2007-10-136-5/+134
| | | | | | | | | | | | | | | | | | | | * linux-src/net/ipv6/af_inet6.c (inet6_getname): Initialize sin6_scope_id. * linux-src/net/ipv6/datagram_ipv6.c (ipv6_recv_error): Likewise. * linux-src/net/ipv6/tcp_ipv6.c (v6_addr2sockaddr): Likewise. * linux-src/net/ipv6/udp_ipv6.c (udpv6_recvmsg): Likewise. * linux-src/net/ipv6/raw_ipv6.c (rawv6_recvmsg): Likewise. * linux-src/net/ipv6/af_inet6.c (inet6_bind): For link-local IPv6 addresses copy sin6_scope_id to bound_dev_if and error out unless bound. * linux-src/net/ipv6/tcp_ipv6.c (tcp_v6_connect): Likewise. * linux-src/net/ipv6/udp_ipv6.c (udpv6_connect): Likewise. * linux-src/net/ipv6/raw_ipv6.c (rawv6_bind): Likewise. * linux-src/net/ipv6/raw_ipv6.c (rawv6_sendmsg): For link-local IPv6 addresses bind packet to interface specified by sin6_scope_id. * linux-src/net/ipv6/udp_ipv6.c (udpv6_sendmsg): Likewise.
* 2007-10-12 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge2007-10-122-0/+10
| | | | * README: How to find information about IPv6 support.
* 2007-10-09 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl2007-10-092-2/+16
| | | | | | * iioctl-ops.c: Include <net/sock.h>. (siocgifXaddr): Return EINVAL unless socket family is AF_INET. (siocsifXaddr): Likewise.
* Update copyright years.Thomas Schwinge2007-10-092-2/+6
|
* Add Savannah tag.Thomas Schwinge2007-10-091-3/+2
|
* fix last commit; add new stub file delay.h.Stefan Siegl2007-10-081-0/+1
|
* 2007-10-08 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl2007-10-0821-72/+742
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config.h (CONFIG_IPV6, CONFIG_IPV6_EUI64): New defines, set to 1. * Makefile (ipv6-srcs): New variable. (LINUXSRCS): Add ipv6-srcs. * ethernet.c (ethernet_demuxer): Call skb_put instead of changing skb->len directly, and thus now update skb->tail accordingly. * pfinet.h (PORTCLASS_INET, PORTCLASS_INET6): New enums. (trivfs_protid_portclasses, trivfs_protid_nportclasses) (trivfs_cntl_portclasses, trivfs_cntl_nportclasses): Declare these. (pfinet_bootstrap_portclass): New variable. (pfinet_bind): New function. * main.c: Define _HACK_ERRNO_H. Include <errno.h>. (trivfs_protid_portclasses, trivfs_cntl_portclasses): New slots for PORTCLASS_INET6. (trivfs_protid_nportclasses, trivfs_cntl_nportclasses): Set to 2. (pfinet_bootstrap_portclass): New variable. (pfinet_bind): New function. (pfinet_activate_ipv6) [CONFIG_IPV6]: New function. (main) [CONFIG_IPV6]: Call inet6_proto_init. (main): Reordered to allow pfinet to not be started as a translator, if pfinet_bind is used. If started as a translator, treat pfinet_bootstrap_portclass when calling trivfs_startup. * options.c: Include <net/sock.h>, <net/ip6_fib.h>, <net/ip6_route.h> and <net/addrconf.h>. (options): New option `ipv4'. (options) [CONFIG_IPV6]: New options `ipv6', `address6' and `gateway6'. (parse_interface) [CONFIG_IPV6]: Add address6 and gateway6. (parse_hook_add_interface) [CONFIG_IPV6]: Initialize address6 and gateway6. (parse_opt): Parse new args. * socket-ops.c (S_socket_create): Call either net_families[PF_INET]->create or net_families[PF_INET6]->create, depending on receiving master. (S_socket_create_address): Allow creation of AF_INET6 addresses. * glue-include/asm/delay.h: New stub file. * glue-include/linux/ipv6.h: Merged many bits unmodified from Linux header file. * glue-include/linux/in6.h: Likewise. (ipv6mr_ifindex): New define, glue to ipv6mr_interface. * glue-include/linux/socket.h (SOL_IPV6, SOL_ICMPV6): New defines. * linux-src/net/ipv6/addrconf.c (ipv6_find_idev, inet6_addr_add) (inet6_addr_del) [_HURD_]: Make these non-static. (addrconf_set_dstaddr, addrconf_add_ifaddr, addrconf_del_ifaddr) [_HURD_]: Don't define these functions. * linux-src/net/ipv6/route_ipv6.c (ipv6_route_ioctl) [_HURD_]: Likewise. * linux-src/net/ipv6/af_inet6.c (inet6_ioctl) [_HURD_]: Don't define the function, instead #define it to 0. (inet6_proto_init) [_HURD_]: Don't call sit_init. * linux-src/net/ipv6/udp_ipv6.c (udp_ioctl) [_HURD_]: Define to 0. (udp_v6_get_port): Put empty statement after label to silence compiler. * linux-src/net/ipv6/tcp_ipv6.c (tcp_v6_get_port, tcp_v6_rcv): Likewise. * linux-src/net/ipv6/icmpv6.c (icmpv6_rcv): Likewise. (icmpv6_init) [_HURD_]: Don't initialize i_uid and i_gid. * linux-src/net/ipv6/mcast.c (igmp6_init): Likewise. * linux-src/net/ipv6/ndisc.c (ndisc_init): Likewise. * linux-src/net/ipv6/ip6_fib.c (BUG_TRAP): Don't use __FUNCTION__ as a string but a variable, to keep gcc happy. (fib6_walker_list): Make it non-static, to keep gcc happy. * linux-src/net/ipv6/ip6_flowlabel.c (fl_create) [_HURD_]: Drop IPV6_FL_S_USER support, since current->euid is not available.
* 2007-10-08 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl2007-10-0819-0/+15536
| | | | | | | | | | | | | | | | | | | | | | | | Import a number of files from Linux 2.2.14. Renamed some of them, to have unique filenames as required by the make system. * linux-src/net/ipv6/addrconf.c: Import file. * linux-src/net/ipv6/af_inet6.c: Likewise. * linux-src/net/ipv6/exthdrs.c: Likewise. * linux-src/net/ipv6/ip6_fib.c: Likewise. * linux-src/net/ipv6/ip6_flowlabel.c: Likewise. * linux-src/net/ipv6/ip6_input.c: Likewise. * linux-src/net/ipv6/ip6_output.c: Likewise. * linux-src/net/ipv6/ipv6_sockglue.c: Likewise. * linux-src/net/ipv6/mcast.c: Likewise. * linux-src/net/ipv6/ndisc.c: Likewise. * linux-src/net/ipv6/reassembly.c: Likewise. * linux-src/net/ipv6/tcp_ipv6.c: Likewise. * linux-src/net/ipv6/datagram_ipv6.c: Import file (was datagram.c). * linux-src/net/ipv6/icmpv6.c: Import file (was icmp.c). * linux-src/net/ipv6/protocol_ipv6.c: Import file (was protocol.c). * linux-src/net/ipv6/raw_ipv6.c: Import file (was raw.c). * linux-src/net/ipv6/route_ipv6.c: Import file (was route.c). * linux-src/net/ipv6/udp_ipv6.c: Import file (was udp.c).
* 2007-07-27 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge2007-07-272-1/+10
| | | | | [bug #17124 -- ``-fno-strict-aliasing for pfinet''] * Makefile (CFLAGS): Add ``-fno-strict-aliasing''.
* 2006-07-31 Stefan Siegl <stesie@brokenpipe.de>Thomas Schwinge2006-07-312-2/+11
| | | | | * options.c (trivfs_append_args): Figure out the address of the default gateway and push the --gateway option to argz.
* 2006-04-27 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge2006-04-272-0/+10
| | | | | * ethernet.c (ether_filter) [NETF_IN]: Prefix `NETF_IN' to the actual rules.
* 2006-03-15 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge2006-03-143-2/+11
| | | | | | * glue-include/asm/system.h (xchg): Fix invalid lvalue. * linux-src/net/ipv4/tcp_ipv4.c (tcp_v4_rst_req): Don't use ?: as a lvalue.
* .Roland McGrath2004-09-101-0/+9
|
* 2004-09-03 Alfred M. Szmidt <ams@kemisten.nu>Roland McGrath2004-09-104-2/+7
| | | | | | | | | * linux-src/net/ipv4/udp.c (udp_v4_get_port): Put empty statement after label to silence compiler warning. * linux-src/net/ipv4/tcp_ipv4.c (tcp_v4_get_port, tcp_v4_connect, tcp_v4_rcv): Likewise. * linux-src/net/ipv4/route.c (ip_rt_redirect): Likewise. * linux-src/net/ipv4/arp.c (arp_constructor): Likewise.
* .Roland McGrath2004-02-111-1/+5
|
* 2004-02-10 Roland McGrath <roland@frob.com>Roland McGrath2004-02-111-3/+3
| | | | * linux-src/arch/i386/lib/checksum.S: Fix comment syntax.
* .Marcus Brinkmann2003-05-071-0/+12
|
* 2003-05-07 Ognyan Kulev <ogi@fmi.uni-sofia.bg>Marcus Brinkmann2003-05-072-43/+37
| | | | | | | | | | | | * linux-src/include/asm-i386/checksum.h (ip_fast_csum): Use string literals concatenation instead of multi-line string literal. (csum_fold): Likewise. (csum_tcpudp_nofold): Likewise. (csum_ipv6_magic): Likewise. * linux-src/include/net/sock.h (SOCK_DEBUG): Don't use ## to concatenate string literals.