1. 22 3月, 2008 2 次提交
    • P
      [NET]: NULL pointer dereference and other nasty things in /proc/net/(tcp|udp)[6] · 28518fc1
      Pavel Emelyanov 提交于
      Commits f40c81 ([NETNS][IPV4] tcp - make proc handle the network
      namespaces) and a91275 ([NETNS][IPV6] udp - make proc handle the
      network namespace) both introduced bad checks on sockets and tw
      buckets to belong to proper net namespace.
      
      I.e. when checking for socket to belong to given net and family the
      
      	do {
      		sk = sk_next(sk);
      	} while (sk && sk->sk_net != net && sk->sk_family != family);
      
      constructions were used. This is wrong, since as soon as the
      sk->sk_net fits the net the socket is immediately returned, even if it
      belongs to other family.
      
      As the result four /proc/net/(udp|tcp)[6] entries show wrong info.
      The udp6 entry even oopses when dereferencing inet6_sk(sk) pointer:
      
      static void udp6_sock_seq_show(struct seq_file *seq, struct sock *sp, int bucket)
      {
      	...
              struct ipv6_pinfo *np = inet6_sk(sp);
      	...
      
              dest  = &np->daddr; /* will be NULL for AF_INET sockets */
      	...
      	seq_printf(...
      	           dest->s6_addr32[0], dest->s6_addr32[1],
                         dest->s6_addr32[2], dest->s6_addr32[3],
      	...
      
      Fix it by converting && to ||.
      Signed-off-by: NPavel Emelyanov <xemul@openvz.org>
      Acked-by: NDaniel Lezcano <dlezcano@fr.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      28518fc1
    • S
      netlink: make socket filters work on netlink · b1153f29
      Stephen Hemminger 提交于
      Make socket filters work for netlink unicast and notifications.
      This is useful for applications like Zebra that get overrun with
      messages that are then ignored.
      
      Note: netlink messages are in host byte order, but packet filter
      state machine operations are done as network byte order.
      Signed-off-by: NStephen Hemminger <shemminger@vyatta.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b1153f29
  2. 21 3月, 2008 20 次提交
  3. 19 3月, 2008 1 次提交
  4. 18 3月, 2008 15 次提交
  5. 17 3月, 2008 2 次提交