summaryrefslogtreecommitdiff
path: root/pfinet
AgeCommit message (Collapse)Author
2012-02-19Fix pfinet device_open errno reportingSamuel Thibault
* pfinet/ethernet.c (ethernet_open): Use value saved in `file_errno', not `errno'.
2012-02-19Make pfinet use BPF filter when using a devnodeSamuel Thibault
* 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.
2012-02-19More helpful messagesSamuel Thibault
2012-02-19Merge branch 'master' of git.savannah.gnu.org:/srv/git/hurd/hurdSamuel Thibault
2012-02-19Fix pfinet compilationSamuel Thibault
* pfinet/ethernet.c (_HACK_ERRNO_H): Define to avoid inclusion of glue-include/linux/errno.h which undefines errno. Include <fcntl.h>.
2012-02-19Make pfinet try both a filepath and kernel deviceSamuel Thibault
pfinet/ethernet.c (ethernet_open): Try to file_name_lookup() the device as filepath before opening the Mach device.
2011-12-06Fix error values on socket creationPino Toscano
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.
2011-11-28Fix select on pfinet tunnel and streamioSamuel Thibault
* pfinet/tunnel.c (trivfs_S_io_select): Do not return EINVAL on SELECT_URG. * trans/streamio.c (trivfs_S_io_select): Likewise.
2011-10-19Add missing format strings for error, printk, problemPino Toscano
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.
2011-08-20fix common misspellingsJonathan Neuschäfer
* Fix spelling with codespell[1] and manually review it. [1] http://git.profusion.mobi/cgit.cgi/lucas/codespell/
2011-08-20pfinet/linux-src: fix a memory leakJonathan Neuschäfer
* pfinet/linux-src/net/ipv4/ip_options.c (ip_options_get): calculate the size of opt only once, free opt before returning -EFAULT.
2011-04-03Fix pfinet build from make dist-generated tarballSamuel Thibault
* 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.
2011-02-22Fix S_pfinet_siocgifconf given -1 as amountSamuel Thibault
* 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).
2010-12-25Fix NULL dereferenceSamuel Thibault
* pfinet/linux-src/net/ipv6/ip6_fib.c (fib6_locate): Do not dereference fn when it is NULL.
2010-10-30Fix connect(AF_UNSPEC)Samuel Thibault
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.
2010-10-29Fix ipv6 pfinet buildSamuel Thibault
* pfinet/linux-src/net/ipv6/raw_ipv6.c (rawv6_init_sk): Replace yet-undefined raw6_sk with proper translation.
2010-10-29ipv6 raw fixesAlexey Kuznetsov
- 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.
2010-10-11Fix return value on `getname' errors.Pino Toscano
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.
2010-09-20Add support for setting actual device flagsSamuel Thibault
* 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'.
2010-09-18Fix net_bh_wakeup useSamuel Thibault
* 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.
2010-08-01pfinet: check return value of mmap() in S_io_read() and S_socket_recv()Olaf Buddenhagen
* pfinet/io-ops.c (S_io_read): Check return value. * pfinet/socket-ops.c (S_socket_recv): Likewise.
2010-06-28Fix memory leak on receive errorSamuel Thibault
* pfinet/io-ops.c (S_io_read): On error, free data array if it was allocated.
2010-06-28Fix memory leak on schedule_timeoutSamuel Thibault
* pfinet/glue-include/linux/sched.h (schedule_timeout): Make the automatically-allocated wait_queue pointer static instead of dynamic (and lost).
2009-09-26Add memory clobbers to assembly snippetsSamuel Thibault
* pfinet/linux-src/include/asm-i386/checksum.h (ip_fast_csum): Add memory clobber to assembly snippet. (csum_ipv6_magic): Likewise.
2009-09-22Fix assignment from incompatible pointer typeSamuel Thibault
* pfinet/linux-src/net/ipv4/tcp_ipv4.c (tcp_v4_connect): xchg &rt->u.dst instead of just rt with sk->dst_cache.
2009-07-11Switch to the new ChangeLog style.Thomas Schwinge
* 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-242009-02-24 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* 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-022008-10-02 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
* glue-include/linux/socket.h: Revert last change. (MSG_NOSIGNAL): Guard definition and add a compile-time warning.
2008-08-03 * glue-include/linux/socket.h (MSG_NOSIGNAL): Remove macro.Samuel Thibault
2008-06-10 * glue-include/linux/if.h (IFF_DYNAMIC): Remove macro.Samuel Thibault
2007-10-142007-10-14 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl
* 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-132007-10-13 Marco Gerards <metgerards@student.han.nl>Thomas Schwinge
* iioctl-ops.c (S_iioctl_siocgifhwaddr): New function.
2007-10-132007-10-13 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl
* 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-122007-10-12 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
* README: How to find information about IPv6 support.
2007-10-092007-10-09 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl
* iioctl-ops.c: Include <net/sock.h>. (siocgifXaddr): Return EINVAL unless socket family is AF_INET. (siocsifXaddr): Likewise.
2007-10-09Update copyright years.Thomas Schwinge
2007-10-09Add Savannah tag.Thomas Schwinge
2007-10-08fix last commit; add new stub file delay.h.Stefan Siegl
2007-10-082007-10-08 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl
* 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-082007-10-08 Stefan Siegl <stesie@brokenpipe.de>Stefan Siegl
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-272007-07-27 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
[bug #17124 -- ``-fno-strict-aliasing for pfinet''] * Makefile (CFLAGS): Add ``-fno-strict-aliasing''.
2006-07-312006-07-31 Stefan Siegl <stesie@brokenpipe.de>Thomas Schwinge
* options.c (trivfs_append_args): Figure out the address of the default gateway and push the --gateway option to argz.
2006-04-272006-04-27 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
* ethernet.c (ether_filter) [NETF_IN]: Prefix `NETF_IN' to the actual rules.
2006-03-142006-03-15 Thomas Schwinge <tschwinge@gnu.org>Thomas Schwinge
* 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.
2004-09-10.Roland McGrath
2004-09-102004-09-03 Alfred M. Szmidt <ams@kemisten.nu>Roland McGrath
* 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.
2004-02-11.Roland McGrath
2004-02-112004-02-10 Roland McGrath <roland@frob.com>Roland McGrath
* linux-src/arch/i386/lib/checksum.S: Fix comment syntax.
2003-05-07.Marcus Brinkmann
2003-05-072003-05-07 Ognyan Kulev <ogi@fmi.uni-sofia.bg>Marcus Brinkmann
* 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.