]> git.baikalelectronics.ru Git - kernel.git/commit
SCTP: update sctp_getsockopt helpers to allow oversized buffers
authorNeil Horman <nhorman@tuxdriver.com>
Sat, 16 Jun 2007 18:03:45 +0000 (14:03 -0400)
committerVlad Yasevich <vladislav.yasevich@hp.com>
Tue, 19 Jun 2007 13:46:34 +0000 (09:46 -0400)
commit0c2d490ba94a2f0494c905a8ba03893c6215cca1
treeee155bc07749f551247c9fbf86e39356351db49d
parent58f1644490793b0fc6752745ac34cf899b767b9a
SCTP: update sctp_getsockopt helpers to allow oversized buffers

I noted the other day while looking at a bug that was ostensibly
in some perl networking library, that we strictly avoid allowing getsockopt
operations to complete if we pass in oversized buffers.  This seems to make
libraries like Perl::NET malfunction since it seems to allocate oversized
buffers for use in several operations.  It also seems to be out of line with
the way udp, tcp and ip getsockopt routines handle buffer input (since the
*optlen pointer in both an input and an output and gets set to the length
of the data that we copy into the buffer).  This patch brings our getsockopt
helpers into line with other protocols, and allows us to accept oversized
buffers for our getsockopt operations.  Tested by me with good results.

Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
Acked-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
net/sctp/socket.c