GitHub/MotorolaMobilityLLC/kernel-slsi.git
18 years ago[SCTP]: Annotate ->supported_addrs().
Al Viro [Tue, 21 Nov 2006 01:25:49 +0000 (17:25 -0800)]
[SCTP]: Annotate ->supported_addrs().

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_association ->peer.i is a host-endian analog of sctp_inthdr.
Al Viro [Tue, 21 Nov 2006 01:25:32 +0000 (17:25 -0800)]
[SCTP]: sctp_association ->peer.i is a host-endian analog of sctp_inthdr.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Get rid of the last remnants of sin_port flipping.
Al Viro [Tue, 21 Nov 2006 01:25:15 +0000 (17:25 -0800)]
[SCTP]: Get rid of the last remnants of sin_port flipping.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Annotate ->inaddr_any().
Al Viro [Tue, 21 Nov 2006 01:24:53 +0000 (17:24 -0800)]
[SCTP]: Annotate ->inaddr_any().

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: flip_to_{h,n}() are not needed anymore.
Al Viro [Tue, 21 Nov 2006 01:24:36 +0000 (17:24 -0800)]
[SCTP]: flip_to_{h,n}() are not needed anymore.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Don't bother setting sin_port in ->from_sk().
Al Viro [Tue, 21 Nov 2006 01:24:21 +0000 (17:24 -0800)]
[SCTP]: Don't bother setting sin_port in ->from_sk().

... the only caller will overwrite immediately

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: ->a_h is gone now.
Al Viro [Tue, 21 Nov 2006 01:24:02 +0000 (17:24 -0800)]
[SCTP]: ->a_h is gone now.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: ip6_send() doesn't need fl_ip_[sd]port.
Al Viro [Tue, 21 Nov 2006 01:23:46 +0000 (17:23 -0800)]
[SCTP]: ip6_send() doesn't need fl_ip_[sd]port.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_sf_send_restart_abort() is endian-agnostic.
Al Viro [Tue, 21 Nov 2006 01:23:25 +0000 (17:23 -0800)]
[SCTP]: sctp_sf_send_restart_abort() is endian-agnostic.

... so caller can use ->ipaddr instead of ->ipaddr_h

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: We need to be careful when copying to sockaddr_storage.
Al Viro [Tue, 21 Nov 2006 01:23:01 +0000 (17:23 -0800)]
[SCTP]: We need to be careful when copying to sockaddr_storage.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Trivial ->ipaddr_h -> ->ipaddr conversions.
Al Viro [Tue, 21 Nov 2006 01:22:43 +0000 (17:22 -0800)]
[SCTP]: Trivial ->ipaddr_h -> ->ipaddr conversions.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: ->a_h is gone now.
Al Viro [Tue, 21 Nov 2006 01:22:26 +0000 (17:22 -0800)]
[SCTP]: ->a_h is gone now.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_make_asconf_update_ip() and sctp_find_unmatch_addr().
Al Viro [Tue, 21 Nov 2006 01:22:08 +0000 (17:22 -0800)]
[SCTP]: sctp_make_asconf_update_ip() and sctp_find_unmatch_addr().

... switched to taking and returning pointers to net-endian
sctp_addr resp.  Together, since the only user of sctp_find_unmatch_addr()
just passes its value to sctp_make_asconf_update_ip().
sctp_make_asconf_update_ip() is actually endian-agnostic.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Trivial parts of a_h -> a switch.
Al Viro [Tue, 21 Nov 2006 01:21:44 +0000 (17:21 -0800)]
[SCTP]: Trivial parts of a_h -> a switch.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: ->source_h is not used anymore.
Al Viro [Tue, 21 Nov 2006 01:14:23 +0000 (17:14 -0800)]
[SCTP]: ->source_h is not used anymore.

kill it

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch all remaining users of ->saddr_h to ->saddr.
Al Viro [Tue, 21 Nov 2006 01:13:58 +0000 (17:13 -0800)]
[SCTP]: Switch all remaining users of ->saddr_h to ->saddr.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch sctp_chunk ->dest to net-endian.
Al Viro [Tue, 21 Nov 2006 01:13:38 +0000 (17:13 -0800)]
[SCTP]: Switch sctp_chunk ->dest to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_transport_route() switched to net-endian.
Al Viro [Tue, 21 Nov 2006 01:13:21 +0000 (17:13 -0800)]
[SCTP]: sctp_transport_route() switched to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Pass net-endian to ->get_dst().
Al Viro [Tue, 21 Nov 2006 01:13:01 +0000 (17:13 -0800)]
[SCTP]: Pass net-endian to ->get_dst().

all instances are actually endian-agnostic...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: ->get_saddr() switched to net-endian.
Al Viro [Tue, 21 Nov 2006 01:12:41 +0000 (17:12 -0800)]
[SCTP]: ->get_saddr() switched to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_process_init() and sctp_source() switched to net-endian.
Al Viro [Tue, 21 Nov 2006 01:12:25 +0000 (17:12 -0800)]
[SCTP]: sctp_process_init() and sctp_source() switched to net-endian.

both are done in one go since almost always we have result of
the latter immediately passed to the former.  Possibly non-obvious
note: sctp_process_param() is endian-agnostic

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_copy_one_addr() switched to net-endian.
Al Viro [Tue, 21 Nov 2006 01:12:07 +0000 (17:12 -0800)]
[SCTP]: sctp_copy_one_addr() switched to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_has_association() switched to net-endian.
Al Viro [Tue, 21 Nov 2006 01:11:50 +0000 (17:11 -0800)]
[SCTP]: sctp_has_association() switched to net-endian.

Ditto for its only caller (sctp_endpoint_is_peeled_off)

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_endpoint_lookup_assoc() switched to net-endian.
Al Viro [Tue, 21 Nov 2006 01:11:33 +0000 (17:11 -0800)]
[SCTP]: sctp_endpoint_lookup_assoc() switched to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch ->from_addr_param() to net-endian.
Al Viro [Tue, 21 Nov 2006 01:11:13 +0000 (17:11 -0800)]
[SCTP]: Switch ->from_addr_param() to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch sctp_add_bind_addr() to net-endian.
Al Viro [Tue, 21 Nov 2006 01:10:38 +0000 (17:10 -0800)]
[SCTP]: Switch sctp_add_bind_addr() to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch sctp_assoc_add_peer() to net-endian.
Al Viro [Tue, 21 Nov 2006 01:10:20 +0000 (17:10 -0800)]
[SCTP]: Switch sctp_assoc_add_peer() to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_transport_{init,new}() switched to net-endian.
Al Viro [Tue, 21 Nov 2006 01:10:03 +0000 (17:10 -0800)]
[SCTP]: sctp_transport_{init,new}() switched to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch ->from_skb() to net-endian.
Al Viro [Tue, 21 Nov 2006 01:09:40 +0000 (17:09 -0800)]
[SCTP]: Switch ->from_skb() to net-endian.

All instances switched, callers updated.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch sctp_cookie ->peer_addr to net-endian.
Al Viro [Tue, 21 Nov 2006 01:09:17 +0000 (17:09 -0800)]
[SCTP]: Switch sctp_cookie ->peer_addr to net-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_init_addrs() switched to net-endian.
Al Viro [Tue, 21 Nov 2006 01:09:01 +0000 (17:09 -0800)]
[SCTP]: sctp_init_addrs() switched to net-endian.

Caller adjusted.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch sctp_assoc_is_match to net-endian.
Al Viro [Tue, 21 Nov 2006 01:08:41 +0000 (17:08 -0800)]
[SCTP]: Switch sctp_assoc_is_match to net-endian.

Along with it, statics in input.c that end up calling it
(__sctp_lookup_association, sctp_lookup_association,
__sctp_rcv_init_lookup, __sctp_rcv_lookup).  Callers
are adjusted.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch sctp_endpoint_is_match() to net-endian.
Al Viro [Tue, 21 Nov 2006 01:08:09 +0000 (17:08 -0800)]
[SCTP]: Switch sctp_endpoint_is_match() to net-endian.

The only caller (__sctp_rcv_lookup_endpoint()) also switched,
its caller adjusted

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch sctp_del_bind_addr() to net-endian.
Al Viro [Tue, 21 Nov 2006 01:07:48 +0000 (17:07 -0800)]
[SCTP]: Switch sctp_del_bind_addr() to net-endian.

Callers adjusted.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch address inside the heartbeat opaque data to net-endian.
Al Viro [Tue, 21 Nov 2006 01:07:25 +0000 (17:07 -0800)]
[SCTP]: Switch address inside the heartbeat opaque data to net-endian.

Its only use happens on the same host, when it gets quoted back to
us.  So we are free to flip to net-endian and avoid extra PITA.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch sctp_assoc_lookup_paddr() to net-endian.
Al Viro [Tue, 21 Nov 2006 01:07:06 +0000 (17:07 -0800)]
[SCTP]: Switch sctp_assoc_lookup_paddr() to net-endian.

Callers updated.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_assoc_del_peer() switched to net-endian.
Al Viro [Tue, 21 Nov 2006 01:06:45 +0000 (17:06 -0800)]
[SCTP]: sctp_assoc_del_peer() switched to net-endian.

Callers adjusted.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Annotate ->dst_saddr()
Al Viro [Tue, 21 Nov 2006 01:06:24 +0000 (17:06 -0800)]
[SCTP]: Annotate ->dst_saddr()

switched to taking a pointer to net-endian sctp_addr
and a net-endian port number.  Instances and callers
adjusted; interestingly enough, the only calls are
direct calls of specific instances - the method is not
used at all.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch ->primary_addr to net-endian.
Al Viro [Tue, 21 Nov 2006 01:06:04 +0000 (17:06 -0800)]
[SCTP]: Switch ->primary_addr to net-endian.

Users adjusted.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch sctp_bind_addr_match() to net-endian.
Al Viro [Tue, 21 Nov 2006 01:05:43 +0000 (17:05 -0800)]
[SCTP]: Switch sctp_bind_addr_match() to net-endian.

Callers adjusted.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Switch ->cmp_addr() and sctp_cmp_addr_exact() to net-endian.
Al Viro [Tue, 21 Nov 2006 01:05:23 +0000 (17:05 -0800)]
[SCTP]: Switch ->cmp_addr() and sctp_cmp_addr_exact() to net-endian.

instances of ->cmp_addr() are fine with switching both arguments
to net-endian; callers other than in sctp_cmp_addr_exact() (both
as ->cmp_addr(...) and direct calls of instances) adjusted;
sctp_cmp_addr_exact() switched to net-endian itself and adjustment
is done in its callers

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Pass net-endian to ->seq_dump_addr()
Al Viro [Tue, 21 Nov 2006 01:04:59 +0000 (17:04 -0800)]
[SCTP]: Pass net-endian to ->seq_dump_addr()

No actual modifications of method instances are needed -
they don't look at port numbers.  Switch callers...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP] embedded sctp_addr: net-endian mirrors
Al Viro [Tue, 21 Nov 2006 01:04:42 +0000 (17:04 -0800)]
[SCTP] embedded sctp_addr: net-endian mirrors

Add sctp_chunk->source, sctp_sockaddr_entry->a, sctp_transport->ipaddr
and sctp_transport->saddr, maintain them as net-endian mirrors of
their host-endian counterparts.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Beginning of conversion to net-endian for embedded sctp_addr.
Al Viro [Tue, 21 Nov 2006 01:04:10 +0000 (17:04 -0800)]
[SCTP]: Beginning of conversion to net-endian for embedded sctp_addr.

Part 1: rename sctp_chunk->source, sctp_sockaddr_entry->a,
sctp_transport->ipaddr and sctp_transport->saddr (to ..._h)

The next patch will reintroduce these fields and keep them as
net-endian mirrors of the original (renamed) ones.  Split in
two patches to make sure that we hadn't forgotten any instanes.

Later in the series we'll eliminate uses of host-endian variants
(basically switching users to net-endian counterparts as we
progress through that mess).  Then host-endian ones will die.

Other embedded host-endian sctp_addr will be easier to switch
directly, so we leave them alone for now.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP] bug: endianness problem in sctp_getsockopt_sctp_status()
Al Viro [Tue, 21 Nov 2006 01:03:18 +0000 (17:03 -0800)]
[SCTP] bug: endianness problem in sctp_getsockopt_sctp_status()

Again, invalid sockaddr passed to userland - host-endiand sin_port.
Potential leak, again, but less dramatic than in previous case.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP] bug: sctp_assoc_control_transport() breakage
Al Viro [Tue, 21 Nov 2006 01:03:01 +0000 (17:03 -0800)]
[SCTP] bug: sctp_assoc_control_transport() breakage

a) struct sockaddr_storage * passed to sctp_ulpevent_make_peer_addr_change()
actually points at union sctp_addr field in a structure.  Then that sucker
gets copied to userland, with whatever junk we might have there.

b) it's actually having host-endian sin_port.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP] bug: sctp_find_unmatch_addr() compares net-endian to host-endian
Al Viro [Tue, 21 Nov 2006 01:02:40 +0000 (17:02 -0800)]
[SCTP] bug: sctp_find_unmatch_addr() compares net-endian to host-endian

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP] bug: sctp_assoc_lookup_laddr() is broken with ipv6.
Al Viro [Tue, 21 Nov 2006 01:02:22 +0000 (17:02 -0800)]
[SCTP] bug: sctp_assoc_lookup_laddr() is broken with ipv6.

It expects (and gets) laddr with net-endian sin_port.  And then it calls
sctp_bind_addr_match(), which *does* care about port numbers in case of
ipv6 and expects them to be host-endian.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Beginning of sin_port fixes.
Al Viro [Tue, 21 Nov 2006 01:02:01 +0000 (17:02 -0800)]
[SCTP]: Beginning of sin_port fixes.

That's going to be a long series.  Introduced temporary helpers
doing copy-and-convert for sctp_addr; they are used to kill
flip-in-place in global data structures and will be used
to gradually push host-endian uses of sctp_addr out of existence.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Trivial sctp endianness annotations.
Al Viro [Tue, 21 Nov 2006 01:01:42 +0000 (17:01 -0800)]
[SCTP]: Trivial sctp endianness annotations.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Annotate tsn_dups.
Al Viro [Tue, 21 Nov 2006 01:01:23 +0000 (17:01 -0800)]
[SCTP]: Annotate tsn_dups.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: SCTP_CMD_ASSOC_FAILED annotations.
Al Viro [Tue, 21 Nov 2006 01:01:06 +0000 (17:01 -0800)]
[SCTP]: SCTP_CMD_ASSOC_FAILED annotations.

also always get __be16 protocol error; switch to SCTP_PERR()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: SCTP_CMD_INIT_FAILED annotations.
Al Viro [Tue, 21 Nov 2006 01:00:44 +0000 (17:00 -0800)]
[SCTP]: SCTP_CMD_INIT_FAILED annotations.

argument stored for SCTP_CMD_INIT_FAILED is always __be16
(protocol error).  Introduced new field and accessor for
it (SCTP_PERR()); switched to their use (from SCTP_U32() and
.u32)

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_stop_t1_and_abort() annotations.
Al Viro [Tue, 21 Nov 2006 01:00:25 +0000 (17:00 -0800)]
[SCTP]: sctp_stop_t1_and_abort() annotations.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: sctp_make_op_error() annotations.
Al Viro [Tue, 21 Nov 2006 01:00:05 +0000 (17:00 -0800)]
[SCTP]: sctp_make_op_error() annotations.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Annotate sctp_init_cause().
Al Viro [Tue, 21 Nov 2006 00:59:45 +0000 (16:59 -0800)]
[SCTP]: Annotate sctp_init_cause().

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SCTP]: Annotate SCTP headers.
Al Viro [Tue, 21 Nov 2006 00:59:12 +0000 (16:59 -0800)]
[SCTP]: Annotate SCTP headers.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IPV6] net/ipv6/sit.c: make 2 functions static
Adrian Bunk [Tue, 21 Nov 2006 00:56:48 +0000 (16:56 -0800)]
[IPV6] net/ipv6/sit.c: make 2 functions static

This patch makes two needlessly global functions static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[XFRM]: Make copy_to_user_policy_type take a type
Jamal Hadi Salim [Tue, 21 Nov 2006 00:51:22 +0000 (16:51 -0800)]
[XFRM]: Make copy_to_user_policy_type take a type

Make copy_to_user_policy_type take a type instead a policy and
fix its users to pass the type

Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BRIDGE] netlink: Convert bridge netlink code to new netlink interface
Thomas Graf [Tue, 21 Nov 2006 00:20:22 +0000 (16:20 -0800)]
[BRIDGE] netlink: Convert bridge netlink code to new netlink interface

Removes dependency on buggy rta_buf, fixes a memory corruption bug due to
a unvalidated netlink attribute, and simplifies the code.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[DCCP]: Adds the tx buffer sysctls
Ian McDonald [Mon, 20 Nov 2006 21:19:32 +0000 (19:19 -0200)]
[DCCP]: Adds the tx buffer sysctls

This one got lost on the way from Ian to Gerrit to me, fix it.

Signed-off-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
18 years ago[DCCP] CCID3: Remove non-referenced variable
Ian McDonald [Mon, 20 Nov 2006 20:44:03 +0000 (18:44 -0200)]
[DCCP] CCID3: Remove non-referenced variable

This removes a non-referenced variable.

Signed-off-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
18 years ago[DCCP]: Update Documentation
Ian McDonald [Mon, 20 Nov 2006 20:42:45 +0000 (18:42 -0200)]
[DCCP]: Update Documentation

This patch just updates DCCP documentation a bit.

Signed-off-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
18 years ago[DCCP]: Make dccp_probe more portable
Ian McDonald [Mon, 20 Nov 2006 20:41:37 +0000 (18:41 -0200)]
[DCCP]: Make dccp_probe more portable

This makes the code of the dccp_probe module more portable.

Signed-off-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
18 years ago[CCID 3]: Add annotations for socket structures
Gerrit Renker [Mon, 20 Nov 2006 20:40:42 +0000 (18:40 -0200)]
[CCID 3]: Add annotations for socket structures

This adds documentation to the CCID 3 rx/tx socket fields, plus some
minor re-formatting.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
18 years ago[DCCP]: Simplified conditions due to use of enum:8 states
Gerrit Renker [Mon, 20 Nov 2006 20:39:23 +0000 (18:39 -0200)]
[DCCP]: Simplified conditions due to use of enum:8 states

This reaps the benefit of the earlier patch, which changed the type of
CCID 3 states to use enums, in that many conditions are now simplified
and the number of possible (unexpected) values is greatly reduced.

In a few instances, this also allowed to simplify pre-conditions; where
care has been taken to retain logical equivalence.

[DCCP]: Introduce a consistent BUG/WARN message scheme

This refines the existing set of DCCP messages so that
 * BUG(), BUG_ON(), WARN_ON() have meaningful DCCP-specific counterparts
 * DCCP_CRIT (for severe warnings) is not rate-limited
 * DCCP_WARN() is introduced as rate-limited wrapper

Using these allows a faster and cleaner transition to their original
counterparts once the code has matured into a full DCCP implementation.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
18 years ago[DCCP]: Set TX Queue Length Bounds via Sysctl
Ian McDonald [Mon, 20 Nov 2006 20:30:17 +0000 (18:30 -0200)]
[DCCP]: Set TX Queue Length Bounds via Sysctl

Previously the transmit queue was unbounded.

This patch:
* puts a limit on transmit queue length
  and sends back EAGAIN if the buffer is full
* sets the TX queue length to a sensible default
* implements tx buffer sysctls for DCCP

Signed-off-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
18 years ago[DCCP]: Add CCID3 debug support to Kconfig
Gerrit Renker [Mon, 20 Nov 2006 20:28:09 +0000 (18:28 -0200)]
[DCCP]: Add CCID3 debug support to Kconfig

This adds a CCID3 debug option to the configuration menu
which is missing in Kconfig, but already used by the code.

CCID 2 already provides such an entry.

To enable debugging, set CONFIG_IP_DCCP_CCID3_DEBUG=y

NOTE: The use of ccid3_{t,r}x_state_name is safe, since
      now only enum values can appear.

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
18 years ago[DCCP]: enable debug messages also for static builds
Gerrit Renker [Mon, 20 Nov 2006 20:26:03 +0000 (18:26 -0200)]
[DCCP]: enable debug messages also for static builds

This patch
  * makes debugging (when configured) work both for static / module build
  * provides generic debugging macros for use in other DCCP / CCID modules
  * adds missing information about debug parameters to Kconfig
  * performs some code tidy-up

Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
18 years ago[BNX2]: Update version and rel date.
Michael Chan [Sun, 19 Nov 2006 22:15:31 +0000 (14:15 -0800)]
[BNX2]: Update version and rel date.

Update version to 1.5.1.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Add 5709 PCI ID.
Michael Chan [Sun, 19 Nov 2006 22:15:05 +0000 (14:15 -0800)]
[BNX2]: Add 5709 PCI ID.

Add PCI ID and detection for 5709 copper and SerDes chips.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Download 5709 firmware.
Michael Chan [Sun, 19 Nov 2006 22:14:35 +0000 (14:14 -0800)]
[BNX2]: Download 5709 firmware.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: New firmware to support 5709 (part 4).
Michael Chan [Sun, 19 Nov 2006 22:13:52 +0000 (14:13 -0800)]
[BNX2]: New firmware to support 5709 (part 4).

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: New firmware to support 5709 (part 3).
Michael Chan [Sun, 19 Nov 2006 22:13:23 +0000 (14:13 -0800)]
[BNX2]: New firmware to support 5709 (part 3).

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: New firmware to support 5709 (part 2).
Michael Chan [Sun, 19 Nov 2006 22:12:55 +0000 (14:12 -0800)]
[BNX2]: New firmware to support 5709 (part 2).

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: New firmware to support 5709 (part 1).
Michael Chan [Sun, 19 Nov 2006 22:12:28 +0000 (14:12 -0800)]
[BNX2]: New firmware to support 5709 (part 1).

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Add 5709 reset and runtime code.
Michael Chan [Sun, 19 Nov 2006 22:11:41 +0000 (14:11 -0800)]
[BNX2]: Add 5709 reset and runtime code.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Add 5709 init code.
Michael Chan [Sun, 19 Nov 2006 22:10:45 +0000 (14:10 -0800)]
[BNX2]: Add 5709 init code.

Add basic support to initialize the 5709 chip.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Add new 5709 registers (part 2).
Michael Chan [Sun, 19 Nov 2006 22:10:12 +0000 (14:10 -0800)]
[BNX2]: Add new 5709 registers (part 2).

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Add new 5709 registers (part 1).
Michael Chan [Sun, 19 Nov 2006 22:09:48 +0000 (14:09 -0800)]
[BNX2]: Add new 5709 registers (part 1).

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Re-organize firmware structures.
Michael Chan [Sun, 19 Nov 2006 22:09:25 +0000 (14:09 -0800)]
[BNX2]: Re-organize firmware structures.

Re-organize the firmware handling code and declarations a bit to make
the code more compact.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Remove udelay() in copper PHY code.
Michael Chan [Sun, 19 Nov 2006 22:08:56 +0000 (14:08 -0800)]
[BNX2]: Remove udelay() in copper PHY code.

Change a long udelay() in bnx2_setup_copper_phy() to msleep().

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Add 5708S parallel detection.
Michael Chan [Sun, 19 Nov 2006 22:08:29 +0000 (14:08 -0800)]
[BNX2]: Add 5708S parallel detection.

Add code to parallel detect 1Gbps and 2.5Gbps link speeds.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Add bnx2_5706_serdes_timer().
Michael Chan [Sun, 19 Nov 2006 22:08:00 +0000 (14:08 -0800)]
[BNX2]: Add bnx2_5706_serdes_timer().

Separate the 5706S SerDes handling code in bnx2_timer() and put it
in a new function.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Improve SerDes handling.
Michael Chan [Sun, 19 Nov 2006 22:07:28 +0000 (14:07 -0800)]
[BNX2]: Improve SerDes handling.

1. Add support for 2.5Gbps forced speed setting.
2. Remove a long udelay() loop and change to msleep().
3. Other misc. SerDes fixes.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[BNX2]: Fix Xen problem.
Michael Chan [Sun, 19 Nov 2006 22:06:40 +0000 (14:06 -0800)]
[BNX2]: Fix Xen problem.

This fixes the problem of not receiving packets in the Xen bridging
environment.  The Xen script sets the device's MAC address to
FE:FF:FF:FF:FF:FF and puts the device in promiscuous mode.  The
firmware had problem receiving all packets in this configuration.

New firmware and setting the PROM_VLAN bit when in promiscuous mode
will fix this problem.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoCompile fix for "peer secid consolidation for external network labeling"
James Morris [Sat, 18 Nov 2006 04:01:03 +0000 (23:01 -0500)]
Compile fix for "peer secid consolidation for external network labeling"

Use a forward declaration instead of dragging in skbuff.h and
related junk.

Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: honor the audit_enabled flag
Paul Moore [Fri, 17 Nov 2006 22:38:55 +0000 (17:38 -0500)]
NetLabel: honor the audit_enabled flag

The audit_enabled flag is used to signal when syscall auditing is to be
performed.  While NetLabel uses a Netlink interface instead of syscalls, it is
reasonable to consider the NetLabel Netlink interface as a form of syscall so
pay attention to the audit_enabled flag when generating audit messages in
NetLabel.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoSELinux: peer secid consolidation for external network labeling
Paul Moore [Fri, 17 Nov 2006 22:38:54 +0000 (17:38 -0500)]
SELinux: peer secid consolidation for external network labeling

Now that labeled IPsec makes use of the peer_sid field in the
sk_security_struct we can remove a lot of the special cases between labeled
IPsec and NetLabel.  In addition, create a new function,
security_skb_extlbl_sid(), which we can use in several places to get the
security context of the packet's external label which allows us to further
simplify the code in a few places.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: SELinux cleanups
Paul Moore [Fri, 17 Nov 2006 22:38:53 +0000 (17:38 -0500)]
NetLabel: SELinux cleanups

This patch does a lot of cleanup in the SELinux NetLabel support code.  A
summary of the changes include:

* Use RCU locking for the NetLabel state variable in the skk_security_struct
  instead of using the inode_security_struct mutex.
* Remove unnecessary parameters in selinux_netlbl_socket_post_create().
* Rename selinux_netlbl_sk_clone_security() to
  selinux_netlbl_sk_security_clone() to better fit the other NetLabel
  sk_security functions.
* Improvements to selinux_netlbl_inode_permission() to help reduce the cost of
  the common case.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: use cipso_v4_doi_search() for local CIPSOv4 functions
Paul Moore [Fri, 17 Nov 2006 22:38:52 +0000 (17:38 -0500)]
NetLabel: use cipso_v4_doi_search() for local CIPSOv4 functions

The cipso_v4_doi_search() function behaves the same as cipso_v4_doi_getdef()
but is a local, static function so use it whenever possibile in the CIPSOv4
code base.

Signed-of-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: use the correct CIPSOv4 MLS label limits
Paul Moore [Fri, 17 Nov 2006 22:38:51 +0000 (17:38 -0500)]
NetLabel: use the correct CIPSOv4 MLS label limits

The CIPSOv4 engine currently has MLS label limits which are slightly larger
than what the draft allows.  This is not a major problem due to the current
implementation but we should fix this so it doesn't bite us later.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: return the correct error for translated CIPSOv4 tags
Paul Moore [Fri, 17 Nov 2006 22:38:50 +0000 (17:38 -0500)]
NetLabel: return the correct error for translated CIPSOv4 tags

The CIPSOv4 translated tag #1 mapping does not always return the correct error
code if the desired mapping does not exist; instead of returning -EPERM it
returns -ENOSPC indicating that the buffer is not large enough to hold the
translated value.  This was caused by failing to check a specific error
condition.  This patch fixes this so that unknown mappings return
-EPERM which is consistent with the rest of the related CIPSOv4 code.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: fixup the handling of CIPSOv4 tags to allow for multiple tag types
Paul Moore [Fri, 17 Nov 2006 22:38:49 +0000 (17:38 -0500)]
NetLabel: fixup the handling of CIPSOv4 tags to allow for multiple tag types

While the original CIPSOv4 code had provisions for multiple tag types the
implementation was not as great as it could be, pushing a lot of non-tag
specific processing into the tag specific code blocks.  This patch fixes that
issue making it easier to support multiple tag types in the future.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: add tag verification when adding new CIPSOv4 DOI definitions
Paul Moore [Fri, 17 Nov 2006 22:38:48 +0000 (17:38 -0500)]
NetLabel: add tag verification when adding new CIPSOv4 DOI definitions

Currently the CIPSOv4 engine does not do any sort of checking when a new DOI
definition is added.  The tags are still verified but only as a side effect of
normal NetLabel operation (packet processing, socket labeling, etc.) which
would cause application errors due to the faulty configuration.  This patch
adds tag checking when new DOI definition are added allowing us to catch these
configuration problems when they happen.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: check for a CIPSOv4 option before we do call into the CIPSOv4 layer
Paul Moore [Fri, 17 Nov 2006 22:38:47 +0000 (17:38 -0500)]
NetLabel: check for a CIPSOv4 option before we do call into the CIPSOv4 layer

Right now the NetLabel code always jumps into the CIPSOv4 layer to determine if
a CIPSO IP option is present.  However, we can do this check directly in the
NetLabel code by making use of the CIPSO_V4_OPTEXIST() macro which should save
us a function call in the common case of not having a CIPSOv4 option present.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: make netlbl_lsm_secattr struct easier/quicker to understand
Paul Moore [Fri, 17 Nov 2006 22:38:46 +0000 (17:38 -0500)]
NetLabel: make netlbl_lsm_secattr struct easier/quicker to understand

The existing netlbl_lsm_secattr struct required the LSM to check all of the
fields to determine if any security attributes were present resulting in a lot
of work in the common case of no attributes.  This patch adds a 'flags' field
which is used to indicate which attributes are present in the structure; this
should allow the LSM to do a quick comparison to determine if the structure
holds any security attributes.

Example:

 if (netlbl_lsm_secattr->flags)
/* security attributes present */
 else
/* NO security attributes present */

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: change netlbl_secattr_init() to return void
Paul Moore [Fri, 17 Nov 2006 22:38:45 +0000 (17:38 -0500)]
NetLabel: change netlbl_secattr_init() to return void

The netlbl_secattr_init() function would always return 0 making it pointless
to have a return value.  This patch changes the function to return void.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: convert the unlabeled accept flag to use RCU
Paul Moore [Fri, 17 Nov 2006 22:38:44 +0000 (17:38 -0500)]
NetLabel: convert the unlabeled accept flag to use RCU

Currently the NetLabel unlabeled packet accept flag is an atomic type and it
is checked for every non-NetLabel packet which comes into the system but rarely
ever changed.  This patch changes this flag to a normal integer and protects it
with RCU locking.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>
18 years agoNetLabel: use gfp_t instead of int where it makes sense
Paul Moore [Fri, 17 Nov 2006 22:38:43 +0000 (17:38 -0500)]
NetLabel: use gfp_t instead of int where it makes sense

There were a few places in the NetLabel code where the int type was being used
instead of the gfp_t type, this patch corrects this mistake.

Signed-off-by: Paul Moore <paul.moore@hp.com>
Signed-off-by: James Morris <jmorris@namei.org>