Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge branch 'pending' of master.kernel.org:/pub/scm/linux/kernel/git/vxy/lksctp-dev

+190 -172
+2 -2
include/linux/sctp.h
··· 10 10 * 11 11 * Various protocol defined structures. 12 12 * 13 - * The SCTP reference implementation is free software; 13 + * This SCTP implementation is free software; 14 14 * you can redistribute it and/or modify it under the terms of 15 15 * the GNU General Public License as published by 16 16 * the Free Software Foundation; either version 2, or (at your option) 17 17 * any later version. 18 18 * 19 - * The SCTP reference implementation is distributed in the hope that it 19 + * This SCTP implementation is distributed in the hope that it 20 20 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 21 21 * ************************ 22 22 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
include/net/sctp/auth.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright 2007 Hewlett-Packard Development Company, L.P. 3 3 * 4 - * This file is part of the SCTP kernel reference Implementation 4 + * This file is part of the SCTP kernel implementation 5 5 * 6 - * The SCTP reference implementation is free software; 6 + * This SCTP implementation is free software; 7 7 * you can redistribute it and/or modify it under the terms of 8 8 * the GNU General Public License as published by 9 9 * the Free Software Foundation; either version 2, or (at your option) 10 10 * any later version. 11 11 * 12 - * The SCTP reference implementation is distributed in the hope that it 12 + * This SCTP implementation is distributed in the hope that it 13 13 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 14 14 * ************************ 15 15 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
include/net/sctp/command.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel Implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (C) 1999-2001 Cisco, Motorola 4 4 * 5 - * This file is part of the SCTP kernel reference Implementation 5 + * This file is part of the SCTP kernel implementation 6 6 * 7 7 * These are the definitions needed for the command object. 8 8 * 9 - * The SCTP reference implementation is free software; 9 + * This SCTP implementation is free software; 10 10 * you can redistribute it and/or modify it under the terms of 11 11 * the GNU General Public License as published by 12 12 * the Free Software Foundation; either version 2, or (at your option) 13 13 * any later version. 14 14 * 15 - * the SCTP reference implementation is distributed in the hope that it 15 + * This SCTP implementation is distributed in the hope that it 16 16 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 17 17 * ************************ 18 18 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
include/net/sctp/constants.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 - * The SCTP reference implementation is free software; 9 + * This SCTP implementation is free software; 10 10 * you can redistribute it and/or modify it under the terms of 11 11 * the GNU General Public License as published by 12 12 * the Free Software Foundation; either version 2, or (at your option) 13 13 * any later version. 14 14 * 15 - * The SCTP reference implementation is distributed in the hope that it 15 + * This SCTP implementation is distributed in the hope that it 16 16 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 17 17 * ************************ 18 18 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
include/net/sctp/sctp.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001-2003 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 9 * The base lksctp header. 10 10 * 11 - * The SCTP reference implementation is free software; 11 + * This SCTP implementation is free software; 12 12 * you can redistribute it and/or modify it under the terms of 13 13 * the GNU General Public License as published by 14 14 * the Free Software Foundation; either version 2, or (at your option) 15 15 * any later version. 16 16 * 17 - * The SCTP reference implementation is distributed in the hope that it 17 + * This SCTP implementation is distributed in the hope that it 18 18 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 19 19 * ************************ 20 20 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
include/net/sctp/sm.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 9 * These are definitions needed by the state machine. 10 10 * 11 - * The SCTP reference implementation is free software; 11 + * This SCTP implementation is free software; 12 12 * you can redistribute it and/or modify it under the terms of 13 13 * the GNU General Public License as published by 14 14 * the Free Software Foundation; either version 2, or (at your option) 15 15 * any later version. 16 16 * 17 - * The SCTP reference implementation is distributed in the hope that it 17 + * This SCTP implementation is distributed in the hope that it 18 18 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 19 19 * ************************ 20 20 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
include/net/sctp/structs.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 - * The SCTP reference implementation is free software; 9 + * This SCTP implementation is free software; 10 10 * you can redistribute it and/or modify it under the terms of 11 11 * the GNU General Public License as published by 12 12 * the Free Software Foundation; either version 2, or (at your option) 13 13 * any later version. 14 14 * 15 - * The SCTP reference implementation is distributed in the hope that it 15 + * This SCTP implementation is distributed in the hope that it 16 16 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 17 17 * ************************ 18 18 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
include/net/sctp/tsnmap.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 9 * These are the definitions needed for the tsnmap type. The tsnmap is used 10 10 * to track out of order TSNs received. 11 11 * 12 - * The SCTP reference implementation is free software; 12 + * This SCTP implementation is free software; 13 13 * you can redistribute it and/or modify it under the terms of 14 14 * the GNU General Public License as published by 15 15 * the Free Software Foundation; either version 2, or (at your option) 16 16 * any later version. 17 17 * 18 - * The SCTP reference implementation is distributed in the hope that it 18 + * This SCTP implementation is distributed in the hope that it 19 19 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 20 20 * ************************ 21 21 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
include/net/sctp/ulpevent.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. ··· 10 10 * sctp_ulpevent type is used to carry information from the state machine 11 11 * upwards to the ULP. 12 12 * 13 - * This file is part of the SCTP kernel reference Implementation 13 + * This file is part of the SCTP kernel implementation 14 14 * 15 - * The SCTP reference implementation is free software; 15 + * This SCTP implementation is free software; 16 16 * you can redistribute it and/or modify it under the terms of 17 17 * the GNU General Public License as published by 18 18 * the Free Software Foundation; either version 2, or (at your option) 19 19 * any later version. 20 20 * 21 - * The SCTP reference implementation is distributed in the hope that it 21 + * This SCTP implementation is distributed in the hope that it 22 22 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 23 23 * ************************ 24 24 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+3 -3
include/net/sctp/ulpqueue.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. ··· 11 11 * and the core SCTP state machine. This is the component which handles 12 12 * reassembly and ordering. 13 13 * 14 - * The SCTP reference implementation is free software; 14 + * This SCTP implementation is free software; 15 15 * you can redistribute it and/or modify it under the terms of 16 16 * the GNU General Public License as published by 17 17 * the Free Software Foundation; either version 2, or (at your option) 18 18 * any later version. 19 19 * 20 - * the SCTP reference implementation is distributed in the hope that it 20 + * This SCTP implementation is distributed in the hope that it 21 21 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 22 22 * ************************ 23 23 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
include/net/sctp/user.h
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2002 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 9 * This header represents the structures and constants needed to support 10 10 * the SCTP Extension to the Sockets API. 11 11 * 12 - * The SCTP reference implementation is free software; 12 + * This SCTP implementation is free software; 13 13 * you can redistribute it and/or modify it under the terms of 14 14 * the GNU General Public License as published by 15 15 * the Free Software Foundation; either version 2, or (at your option) 16 16 * any later version. 17 17 * 18 - * The SCTP reference implementation is distributed in the hope that it 18 + * This SCTP implementation is distributed in the hope that it 19 19 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 20 20 * ************************ 21 21 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+7 -7
net/sctp/associola.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001 Intel Corp. 6 6 * Copyright (c) 2001 La Monte H.P. Yarroll 7 7 * 8 - * This file is part of the SCTP kernel reference Implementation 8 + * This file is part of the SCTP kernel implementation 9 9 * 10 10 * This module provides the abstraction for an SCTP association. 11 11 * 12 - * The SCTP reference implementation is free software; 12 + * This SCTP implementation is free software; 13 13 * you can redistribute it and/or modify it under the terms of 14 14 * the GNU General Public License as published by 15 15 * the Free Software Foundation; either version 2, or (at your option) 16 16 * any later version. 17 17 * 18 - * The SCTP reference implementation is distributed in the hope that it 18 + * This SCTP implementation is distributed in the hope that it 19 19 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 20 20 * ************************ 21 21 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ··· 1525 1525 const struct sctp_association *asoc, 1526 1526 __be32 serial) 1527 1527 { 1528 - struct sctp_chunk *ack = NULL; 1528 + struct sctp_chunk *ack; 1529 1529 1530 1530 /* Walk through the list of cached ASCONF-ACKs and find the 1531 1531 * ack chunk whose serial number matches that of the request. ··· 1533 1533 list_for_each_entry(ack, &asoc->asconf_ack_list, transmitted_list) { 1534 1534 if (ack->subh.addip_hdr->serial == serial) { 1535 1535 sctp_chunk_hold(ack); 1536 - break; 1536 + return ack; 1537 1537 } 1538 1538 } 1539 1539 1540 - return ack; 1540 + return NULL; 1541 1541 }
+4 -4
net/sctp/auth.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright 2007 Hewlett-Packard Development Company, L.P. 3 3 * 4 - * This file is part of the SCTP kernel reference Implementation 4 + * This file is part of the SCTP kernel implementation 5 5 * 6 - * The SCTP reference implementation is free software; 6 + * This SCTP implementation is free software; 7 7 * you can redistribute it and/or modify it under the terms of 8 8 * the GNU General Public License as published by 9 9 * the Free Software Foundation; either version 2, or (at your option) 10 10 * any later version. 11 11 * 12 - * The SCTP reference implementation is distributed in the hope that it 12 + * This SCTP implementation is distributed in the hope that it 13 13 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 14 14 * ************************ 15 15 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/bind_addr.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2003 3 3 * Copyright (c) Cisco 1999,2000 4 4 * Copyright (c) Motorola 1999,2000,2001 5 5 * Copyright (c) La Monte H.P. Yarroll 2001 6 6 * 7 - * This file is part of the SCTP kernel reference implementation. 7 + * This file is part of the SCTP kernel implementation. 8 8 * 9 9 * A collection class to handle the storage of transport addresses. 10 10 * 11 - * The SCTP reference implementation is free software; 11 + * This SCTP implementation is free software; 12 12 * you can redistribute it and/or modify it under the terms of 13 13 * the GNU General Public License as published by 14 14 * the Free Software Foundation; either version 2, or (at your option) 15 15 * any later version. 16 16 * 17 - * The SCTP reference implementation is distributed in the hope that it 17 + * This SCTP implementation is distributed in the hope that it 18 18 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 19 19 * ************************ 20 20 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/chunk.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2003, 2004 3 3 * 4 - * This file is part of the SCTP kernel reference Implementation 4 + * This file is part of the SCTP kernel implementation 5 5 * 6 6 * This file contains the code relating the chunk abstraction. 7 7 * 8 - * The SCTP reference implementation is free software; 8 + * This SCTP implementation is free software; 9 9 * you can redistribute it and/or modify it under the terms of 10 10 * the GNU General Public License as published by 11 11 * the Free Software Foundation; either version 2, or (at your option) 12 12 * any later version. 13 13 * 14 - * The SCTP reference implementation is distributed in the hope that it 14 + * This SCTP implementation is distributed in the hope that it 15 15 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 16 16 * ************************ 17 17 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/command.c
··· 1 - /* SCTP kernel reference Implementation Copyright (C) 1999-2001 1 + /* SCTP kernel implementation Copyright (C) 1999-2001 2 2 * Cisco, Motorola, and IBM 3 3 * Copyright 2001 La Monte H.P. Yarroll 4 4 * 5 - * This file is part of the SCTP kernel reference Implementation 5 + * This file is part of the SCTP kernel implementation 6 6 * 7 7 * These functions manipulate sctp command sequences. 8 8 * 9 - * The SCTP reference implementation is free software; 9 + * This SCTP implementation is free software; 10 10 * you can redistribute it and/or modify it under the terms of 11 11 * the GNU General Public License as published by 12 12 * the Free Software Foundation; either version 2, or (at your option) 13 13 * any later version. 14 14 * 15 - * The SCTP reference implementation is distributed in the hope that it 15 + * This SCTP implementation is distributed in the hope that it 16 16 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 17 17 * ************************ 18 18 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -8
net/sctp/debug.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 8 - * 9 - * This file is part of the implementation of the add-IP extension, 10 - * based on <draft-ietf-tsvwg-addip-sctp-02.txt> June 29, 2001, 11 - * for the SCTP kernel reference Implementation. 7 + * This file is part of the SCTP kernel implementation 12 8 * 13 9 * This file converts numerical ID value to alphabetical names for SCTP 14 10 * terms such as chunk type, parameter time, event type, etc. 15 11 * 16 - * The SCTP reference implementation is free software; 12 + * This SCTP implementation is free software; 17 13 * you can redistribute it and/or modify it under the terms of 18 14 * the GNU General Public License as published by 19 15 * the Free Software Foundation; either version 2, or (at your option) 20 16 * any later version. 21 17 * 22 - * The SCTP reference implementation is distributed in the hope that it 18 + * This SCTP implementation is distributed in the hope that it 23 19 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 24 20 * ************************ 25 21 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -8
net/sctp/endpointola.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * Copyright (c) 1999-2000 Cisco, Inc. 3 3 * Copyright (c) 1999-2001 Motorola, Inc. 4 4 * Copyright (c) 2001-2002 International Business Machines, Corp. ··· 6 6 * Copyright (c) 2001 Nokia, Inc. 7 7 * Copyright (c) 2001 La Monte H.P. Yarroll 8 8 * 9 - * This file is part of the SCTP kernel reference Implementation 9 + * This file is part of the SCTP kernel implementation 10 10 * 11 11 * This abstraction represents an SCTP endpoint. 12 12 * 13 - * This file is part of the implementation of the add-IP extension, 14 - * based on <draft-ietf-tsvwg-addip-sctp-02.txt> June 29, 2001, 15 - * for the SCTP kernel reference Implementation. 16 - * 17 - * The SCTP reference implementation is free software; 13 + * The SCTP implementation is free software; 18 14 * you can redistribute it and/or modify it under the terms of 19 15 * the GNU General Public License as published by 20 16 * the Free Software Foundation; either version 2, or (at your option) 21 17 * any later version. 22 18 * 23 - * The SCTP reference implementation is distributed in the hope that it 19 + * The SCTP implementation is distributed in the hope that it 24 20 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 25 21 * ************************ 26 22 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/input.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * Copyright (c) 1999-2000 Cisco, Inc. 3 3 * Copyright (c) 1999-2001 Motorola, Inc. 4 4 * Copyright (c) 2001-2003 International Business Machines, Corp. ··· 6 6 * Copyright (c) 2001 Nokia, Inc. 7 7 * Copyright (c) 2001 La Monte H.P. Yarroll 8 8 * 9 - * This file is part of the SCTP kernel reference Implementation 9 + * This file is part of the SCTP kernel implementation 10 10 * 11 11 * These functions handle all input from the IP layer into SCTP. 12 12 * 13 - * The SCTP reference implementation is free software; 13 + * This SCTP implementation is free software; 14 14 * you can redistribute it and/or modify it under the terms of 15 15 * the GNU General Public License as published by 16 16 * the Free Software Foundation; either version 2, or (at your option) 17 17 * any later version. 18 18 * 19 - * The SCTP reference implementation is distributed in the hope that it 19 + * This SCTP implementation is distributed in the hope that it 20 20 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 21 21 * ************************ 22 22 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/inqueue.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * Copyright (c) 1999-2000 Cisco, Inc. 3 3 * Copyright (c) 1999-2001 Motorola, Inc. 4 4 * Copyright (c) 2002 International Business Machines, Corp. 5 5 * 6 - * This file is part of the SCTP kernel reference Implementation 6 + * This file is part of the SCTP kernel implementation 7 7 * 8 8 * These functions are the methods for accessing the SCTP inqueue. 9 9 * ··· 11 11 * (which might be bundles or fragments of chunks) and out of which you 12 12 * pop SCTP whole chunks. 13 13 * 14 - * The SCTP reference implementation is free software; 14 + * This SCTP implementation is free software; 15 15 * you can redistribute it and/or modify it under the terms of 16 16 * the GNU General Public License as published by 17 17 * the Free Software Foundation; either version 2, or (at your option) 18 18 * any later version. 19 19 * 20 - * The SCTP reference implementation is distributed in the hope that it 20 + * This SCTP implementation is distributed in the hope that it 21 21 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 22 22 * ************************ 23 23 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/ipv6.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2002, 2004 3 3 * Copyright (c) 2001 Nokia, Inc. 4 4 * Copyright (c) 2001 La Monte H.P. Yarroll 5 5 * Copyright (c) 2002-2003 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 9 * SCTP over IPv6. 10 10 * 11 - * The SCTP reference implementation is free software; 11 + * This SCTP implementation is free software; 12 12 * you can redistribute it and/or modify it under the terms of 13 13 * the GNU General Public License as published by 14 14 * the Free Software Foundation; either version 2, or (at your option) 15 15 * any later version. 16 16 * 17 - * The SCTP reference implementation is distributed in the hope that it 17 + * This SCTP implementation is distributed in the hope that it 18 18 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 19 19 * ************************ 20 20 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/objcnt.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * 4 - * This file is part of the SCTP kernel reference Implementation 4 + * This file is part of the SCTP kernel implementation 5 5 * 6 6 * Support for memory object debugging. This allows one to monitor the 7 7 * object allocations/deallocations for types instrumented for this 8 8 * via the proc fs. 9 9 * 10 - * The SCTP reference implementation is free software; 10 + * This SCTP implementation is free software; 11 11 * you can redistribute it and/or modify it under the terms of 12 12 * the GNU General Public License as published by 13 13 * the Free Software Foundation; either version 2, or (at your option) 14 14 * any later version. 15 15 * 16 - * The SCTP reference implementation is distributed in the hope that it 16 + * This SCTP implementation is distributed in the hope that it 17 17 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 18 18 * ************************ 19 19 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/output.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * 6 - * This file is part of the SCTP kernel reference Implementation 6 + * This file is part of the SCTP kernel implementation 7 7 * 8 8 * These functions handle output processing. 9 9 * 10 - * The SCTP reference implementation is free software; 10 + * This SCTP implementation is free software; 11 11 * you can redistribute it and/or modify it under the terms of 12 12 * the GNU General Public License as published by 13 13 * the Free Software Foundation; either version 2, or (at your option) 14 14 * any later version. 15 15 * 16 - * The SCTP reference implementation is distributed in the hope that it 16 + * This SCTP implementation is distributed in the hope that it 17 17 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 18 18 * ************************ 19 19 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+7 -5
net/sctp/outqueue.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001-2003 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 9 * These functions implement the sctp_outq class. The outqueue handles 10 10 * bundling and queueing of outgoing SCTP chunks. 11 11 * 12 - * The SCTP reference implementation is free software; 12 + * This SCTP implementation is free software; 13 13 * you can redistribute it and/or modify it under the terms of 14 14 * the GNU General Public License as published by 15 15 * the Free Software Foundation; either version 2, or (at your option) 16 16 * any later version. 17 17 * 18 - * The SCTP reference implementation is distributed in the hope that it 18 + * This SCTP implementation is distributed in the hope that it 19 19 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 20 20 * ************************ 21 21 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ··· 1179 1179 tchunk = list_entry(lchunk, struct sctp_chunk, 1180 1180 transmitted_list); 1181 1181 tsn = ntohl(tchunk->subh.data_hdr->tsn); 1182 - if (TSN_lte(tsn, ctsn)) 1182 + if (TSN_lte(tsn, ctsn)) { 1183 + list_del_init(&tchunk->transmitted_list); 1183 1184 sctp_chunk_free(tchunk); 1185 + } 1184 1186 } 1185 1187 1186 1188 /* ii) Set rwnd equal to the newly received a_rwnd minus the
+4 -4
net/sctp/primitive.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * Copyright (c) 1999-2000 Cisco, Inc. 3 3 * Copyright (c) 1999-2001 Motorola, Inc. 4 4 * 5 - * This file is part of the SCTP kernel reference Implementation 5 + * This file is part of the SCTP kernel implementation 6 6 * 7 7 * These functions implement the SCTP primitive functions from Section 10. 8 8 * ··· 10 10 * functions--this file is the functions which populate the struct proto 11 11 * for SCTP which is the BOTTOM of the sockets interface. 12 12 * 13 - * The SCTP reference implementation is free software; 13 + * This SCTP implementation is free software; 14 14 * you can redistribute it and/or modify it under the terms of 15 15 * the GNU General Public License as published by 16 16 * the Free Software Foundation; either version 2, or (at your option) 17 17 * any later version. 18 18 * 19 - * The SCTP reference implementation is distributed in the hope that it 19 + * This SCTP implementation is distributed in the hope that it 20 20 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 21 21 * ************************ 22 22 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/proc.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * Copyright (c) 2003 International Business Machines, Corp. 3 3 * 4 - * This file is part of the SCTP kernel reference Implementation 4 + * This file is part of the SCTP kernel implementation 5 5 * 6 - * The SCTP reference implementation is free software; 6 + * This SCTP implementation is free software; 7 7 * you can redistribute it and/or modify it under the terms of 8 8 * the GNU General Public License as published by 9 9 * the Free Software Foundation; either version 2, or (at your option) 10 10 * any later version. 11 11 * 12 - * The SCTP reference implementation is distributed in the hope that it 12 + * This SCTP implementation is distributed in the hope that it 13 13 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 14 14 * ************************ 15 15 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/protocol.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. ··· 6 6 * Copyright (c) 2001 Nokia, Inc. 7 7 * Copyright (c) 2001 La Monte H.P. Yarroll 8 8 * 9 - * This file is part of the SCTP kernel reference Implementation 9 + * This file is part of the SCTP kernel implementation 10 10 * 11 11 * Initialization/cleanup for SCTP protocol support. 12 12 * 13 - * The SCTP reference implementation is free software; 13 + * This SCTP implementation is free software; 14 14 * you can redistribute it and/or modify it under the terms of 15 15 * the GNU General Public License as published by 16 16 * the Free Software Foundation; either version 2, or (at your option) 17 17 * any later version. 18 18 * 19 - * The SCTP reference implementation is distributed in the hope that it 19 + * This SCTP implementation is distributed in the hope that it 20 20 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 21 21 * ************************ 22 22 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+5 -4
net/sctp/sm_make_chunk.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001-2002 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 9 * These functions work with the state functions in sctp_sm_statefuns.c 10 10 * to implement the state operations. These functions implement the 11 11 * steps which require modifying existing data structures. 12 12 * 13 - * The SCTP reference implementation is free software; 13 + * This SCTP implementation is free software; 14 14 * you can redistribute it and/or modify it under the terms of 15 15 * the GNU General Public License as published by 16 16 * the Free Software Foundation; either version 2, or (at your option) 17 17 * any later version. 18 18 * 19 - * The SCTP reference implementation is distributed in the hope that it 19 + * This SCTP implementation is distributed in the hope that it 20 20 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 21 21 * ************************ 22 22 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ··· 3224 3224 } 3225 3225 3226 3226 /* Free the cached last sent asconf chunk. */ 3227 + list_del_init(&asconf->transmitted_list); 3227 3228 sctp_chunk_free(asconf); 3228 3229 asoc->addip_last_asconf = NULL; 3229 3230
+4 -4
net/sctp/sm_sideeffect.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * 6 - * This file is part of the SCTP kernel reference Implementation 6 + * This file is part of the SCTP kernel implementation 7 7 * 8 8 * These functions work with the state functions in sctp_sm_statefuns.c 9 9 * to implement that state operations. These functions implement the 10 10 * steps which require modifying existing data structures. 11 11 * 12 - * The SCTP reference implementation is free software; 12 + * This SCTP implementation is free software; 13 13 * you can redistribute it and/or modify it under the terms of 14 14 * the GNU General Public License as published by 15 15 * the Free Software Foundation; either version 2, or (at your option) 16 16 * any later version. 17 17 * 18 - * The SCTP reference implementation is distributed in the hope that it 18 + * This SCTP implementation is distributed in the hope that it 19 19 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 20 20 * ************************ 21 21 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -6
net/sctp/sm_statefuns.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001-2002 Intel Corp. 6 6 * Copyright (c) 2002 Nokia Corp. 7 7 * 8 - * This file is part of the SCTP kernel reference Implementation 9 - * 10 - * This is part of the SCTP Linux Kernel Reference Implementation. 8 + * This is part of the SCTP Linux Kernel Implementation. 11 9 * 12 10 * These are the state functions for the state machine. 13 11 * 14 - * The SCTP reference implementation is free software; 12 + * This SCTP implementation is free software; 15 13 * you can redistribute it and/or modify it under the terms of 16 14 * the GNU General Public License as published by 17 15 * the Free Software Foundation; either version 2, or (at your option) 18 16 * any later version. 19 17 * 20 - * The SCTP reference implementation is distributed in the hope that it 18 + * This SCTP implementation is distributed in the hope that it 21 19 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 22 20 * ************************ 23 21 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/sm_statetable.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001 Intel Corp. 6 6 * Copyright (c) 2001 Nokia, Inc. 7 7 * 8 - * This file is part of the SCTP kernel reference Implementation 8 + * This file is part of the SCTP kernel implementation 9 9 * 10 10 * These are the state tables for the SCTP state machine. 11 11 * 12 - * The SCTP reference implementation is free software; 12 + * This SCTP implementation is free software; 13 13 * you can redistribute it and/or modify it under the terms of 14 14 * the GNU General Public License as published by 15 15 * the Free Software Foundation; either version 2, or (at your option) 16 16 * any later version. 17 17 * 18 - * The SCTP reference implementation is distributed in the hope that it 18 + * This SCTP implementation is distributed in the hope that it 19 19 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 20 20 * ************************ 21 21 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+12 -5
net/sctp/socket.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. ··· 6 6 * Copyright (c) 2001-2002 Nokia, Inc. 7 7 * Copyright (c) 2001 La Monte H.P. Yarroll 8 8 * 9 - * This file is part of the SCTP kernel reference Implementation 9 + * This file is part of the SCTP kernel implementation 10 10 * 11 11 * These functions interface with the sockets layer to implement the 12 12 * SCTP Extensions for the Sockets API. ··· 15 15 * functions--this file is the functions which populate the struct proto 16 16 * for SCTP which is the BOTTOM of the sockets interface. 17 17 * 18 - * The SCTP reference implementation is free software; 18 + * This SCTP implementation is free software; 19 19 * you can redistribute it and/or modify it under the terms of 20 20 * the GNU General Public License as published by 21 21 * the Free Software Foundation; either version 2, or (at your option) 22 22 * any later version. 23 23 * 24 - * The SCTP reference implementation is distributed in the hope that it 24 + * This SCTP implementation is distributed in the hope that it 25 25 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 26 26 * ************************ 27 27 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ··· 1911 1911 * rwnd by that amount. If all the data in the skb is read, 1912 1912 * rwnd is updated when the event is freed. 1913 1913 */ 1914 - sctp_assoc_rwnd_increase(event->asoc, copied); 1914 + if (!sctp_ulpevent_is_notification(event)) 1915 + sctp_assoc_rwnd_increase(event->asoc, copied); 1915 1916 goto out; 1916 1917 } else if ((event->msg_flags & MSG_NOTIFICATION) || 1917 1918 (event->msg_flags & MSG_EOR)) ··· 4315 4314 (AF_INET6 == addr->a.sa.sa_family)) 4316 4315 continue; 4317 4316 memcpy(&temp, &addr->a, sizeof(temp)); 4317 + if (!temp.v4.sin_port) 4318 + temp.v4.sin_port = htons(port); 4319 + 4318 4320 sctp_get_pf_specific(sk->sk_family)->addr_v4map(sctp_sk(sk), 4319 4321 &temp); 4320 4322 addrlen = sctp_get_af_specific(temp.sa.sa_family)->sockaddr_len; ··· 4350 4346 (AF_INET6 == addr->a.sa.sa_family)) 4351 4347 continue; 4352 4348 memcpy(&temp, &addr->a, sizeof(temp)); 4349 + if (!temp.v4.sin_port) 4350 + temp.v4.sin_port = htons(port); 4351 + 4353 4352 sctp_get_pf_specific(sk->sk_family)->addr_v4map(sctp_sk(sk), 4354 4353 &temp); 4355 4354 addrlen = sctp_get_af_specific(temp.sa.sa_family)->sockaddr_len;
+4 -4
net/sctp/ssnmap.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * Copyright (c) 2003 International Business Machines, Corp. 3 3 * 4 - * This file is part of the SCTP kernel reference Implementation 4 + * This file is part of the SCTP kernel implementation 5 5 * 6 6 * These functions manipulate sctp SSN tracker. 7 7 * 8 - * The SCTP reference implementation is free software; 8 + * This SCTP implementation is free software; 9 9 * you can redistribute it and/or modify it under the terms of 10 10 * the GNU General Public License as published by 11 11 * the Free Software Foundation; either version 2, or (at your option) 12 12 * any later version. 13 13 * 14 - * The SCTP reference implementation is distributed in the hope that it 14 + * This SCTP implementation is distributed in the hope that it 15 15 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 16 16 * ************************ 17 17 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/sysctl.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2002, 2004 3 3 * Copyright (c) 2002 Intel Corp. 4 4 * 5 - * This file is part of the SCTP kernel reference Implementation 5 + * This file is part of the SCTP kernel implementation 6 6 * 7 7 * Sysctl related interfaces for SCTP. 8 8 * 9 - * The SCTP reference implementation is free software; 9 + * This SCTP implementation is free software; 10 10 * you can redistribute it and/or modify it under the terms of 11 11 * the GNU General Public License as published by 12 12 * the Free Software Foundation; either version 2, or (at your option) 13 13 * any later version. 14 14 * 15 - * The SCTP reference implementation is distributed in the hope that it 15 + * This SCTP implementation is distributed in the hope that it 16 16 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 17 17 * ************************ 18 18 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/transport.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * Copyright (c) 1999-2000 Cisco, Inc. 3 3 * Copyright (c) 1999-2001 Motorola, Inc. 4 4 * Copyright (c) 2001-2003 International Business Machines Corp. 5 5 * Copyright (c) 2001 Intel Corp. 6 6 * Copyright (c) 2001 La Monte H.P. Yarroll 7 7 * 8 - * This file is part of the SCTP kernel reference Implementation 8 + * This file is part of the SCTP kernel implementation 9 9 * 10 10 * This module provides the abstraction for an SCTP tranport representing 11 11 * a remote transport address. For local transport addresses, we just use 12 12 * union sctp_addr. 13 13 * 14 - * The SCTP reference implementation is free software; 14 + * This SCTP implementation is free software; 15 15 * you can redistribute it and/or modify it under the terms of 16 16 * the GNU General Public License as published by 17 17 * the Free Software Foundation; either version 2, or (at your option) 18 18 * any later version. 19 19 * 20 - * The SCTP reference implementation is distributed in the hope that it 20 + * This SCTP implementation is distributed in the hope that it 21 21 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 22 22 * ************************ 23 23 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -4
net/sctp/tsnmap.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. 5 5 * Copyright (c) 2001 Intel Corp. 6 6 * 7 - * This file is part of the SCTP kernel reference Implementation 7 + * This file is part of the SCTP kernel implementation 8 8 * 9 9 * These functions manipulate sctp tsn mapping array. 10 10 * 11 - * The SCTP reference implementation is free software; 11 + * This SCTP implementation is free software; 12 12 * you can redistribute it and/or modify it under the terms of 13 13 * the GNU General Public License as published by 14 14 * the Free Software Foundation; either version 2, or (at your option) 15 15 * any later version. 16 16 * 17 - * The SCTP reference implementation is distributed in the hope that it 17 + * This SCTP implementation is distributed in the hope that it 18 18 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 19 19 * ************************ 20 20 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+4 -3
net/sctp/ulpevent.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. ··· 8 8 * 9 9 * These functions manipulate an sctp event. The struct ulpevent is used 10 10 * to carry notifications and data to the ULP (sockets). 11 - * The SCTP reference implementation is free software; 11 + * 12 + * This SCTP implementation is free software; 12 13 * you can redistribute it and/or modify it under the terms of 13 14 * the GNU General Public License as published by 14 15 * the Free Software Foundation; either version 2, or (at your option) 15 16 * any later version. 16 17 * 17 - * The SCTP reference implementation is distributed in the hope that it 18 + * This SCTP implementation is distributed in the hope that it 18 19 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 19 20 * ************************ 20 21 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+30 -13
net/sctp/ulpqueue.c
··· 1 - /* SCTP kernel reference Implementation 1 + /* SCTP kernel implementation 2 2 * (C) Copyright IBM Corp. 2001, 2004 3 3 * Copyright (c) 1999-2000 Cisco, Inc. 4 4 * Copyright (c) 1999-2001 Motorola, Inc. ··· 8 8 * 9 9 * This abstraction carries sctp events to the ULP (sockets). 10 10 * 11 - * The SCTP reference implementation is free software; 11 + * This SCTP implementation is free software; 12 12 * you can redistribute it and/or modify it under the terms of 13 13 * the GNU General Public License as published by 14 14 * the Free Software Foundation; either version 2, or (at your option) 15 15 * any later version. 16 16 * 17 - * The SCTP reference implementation is distributed in the hope that it 17 + * This SCTP implementation is distributed in the hope that it 18 18 * will be useful, but WITHOUT ANY WARRANTY; without even the implied 19 19 * ************************ 20 20 * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ··· 283 283 /* 2nd Level Abstractions */ 284 284 285 285 /* Helper function to store chunks that need to be reassembled. */ 286 - static inline void sctp_ulpq_store_reasm(struct sctp_ulpq *ulpq, 286 + static void sctp_ulpq_store_reasm(struct sctp_ulpq *ulpq, 287 287 struct sctp_ulpevent *event) 288 288 { 289 289 struct sk_buff *pos; ··· 405 405 /* Helper function to check if an incoming chunk has filled up the last 406 406 * missing fragment in a SCTP datagram and return the corresponding event. 407 407 */ 408 - static inline struct sctp_ulpevent *sctp_ulpq_retrieve_reassembled(struct sctp_ulpq *ulpq) 408 + static struct sctp_ulpevent *sctp_ulpq_retrieve_reassembled(struct sctp_ulpq *ulpq) 409 409 { 410 410 struct sk_buff *pos; 411 411 struct sctp_ulpevent *cevent; ··· 512 512 } 513 513 514 514 /* Retrieve the next set of fragments of a partial message. */ 515 - static inline struct sctp_ulpevent *sctp_ulpq_retrieve_partial(struct sctp_ulpq *ulpq) 515 + static struct sctp_ulpevent *sctp_ulpq_retrieve_partial(struct sctp_ulpq *ulpq) 516 516 { 517 517 struct sk_buff *pos, *last_frag, *first_frag; 518 518 struct sctp_ulpevent *cevent; ··· 606 606 } 607 607 608 608 /* Retrieve the first part (sequential fragments) for partial delivery. */ 609 - static inline struct sctp_ulpevent *sctp_ulpq_retrieve_first(struct sctp_ulpq *ulpq) 609 + static struct sctp_ulpevent *sctp_ulpq_retrieve_first(struct sctp_ulpq *ulpq) 610 610 { 611 611 struct sk_buff *pos, *last_frag, *first_frag; 612 612 struct sctp_ulpevent *cevent; ··· 735 735 /* Helper function to gather skbs that have possibly become 736 736 * ordered by an an incoming chunk. 737 737 */ 738 - static inline void sctp_ulpq_retrieve_ordered(struct sctp_ulpq *ulpq, 738 + static void sctp_ulpq_retrieve_ordered(struct sctp_ulpq *ulpq, 739 739 struct sctp_ulpevent *event) 740 740 { 741 741 struct sk_buff_head *event_list; ··· 779 779 } 780 780 781 781 /* Helper function to store chunks needing ordering. */ 782 - static inline void sctp_ulpq_store_ordered(struct sctp_ulpq *ulpq, 782 + static void sctp_ulpq_store_ordered(struct sctp_ulpq *ulpq, 783 783 struct sctp_ulpevent *event) 784 784 { 785 785 struct sk_buff *pos; ··· 867 867 /* Helper function to gather skbs that have possibly become 868 868 * ordered by forward tsn skipping their dependencies. 869 869 */ 870 - static inline void sctp_ulpq_reap_ordered(struct sctp_ulpq *ulpq, __u16 sid) 870 + static void sctp_ulpq_reap_ordered(struct sctp_ulpq *ulpq, __u16 sid) 871 871 { 872 872 struct sk_buff *pos, *tmp; 873 873 struct sctp_ulpevent *cevent; 874 874 struct sctp_ulpevent *event; 875 875 struct sctp_stream *in; 876 876 struct sk_buff_head temp; 877 + struct sk_buff_head *lobby = &ulpq->lobby; 877 878 __u16 csid, cssn; 878 879 879 880 in = &ulpq->asoc->ssnmap->in; ··· 882 881 /* We are holding the chunks by stream, by SSN. */ 883 882 skb_queue_head_init(&temp); 884 883 event = NULL; 885 - sctp_skb_for_each(pos, &ulpq->lobby, tmp) { 884 + sctp_skb_for_each(pos, lobby, tmp) { 886 885 cevent = (struct sctp_ulpevent *) pos->cb; 887 886 csid = cevent->stream; 888 887 cssn = cevent->ssn; ··· 896 895 continue; 897 896 898 897 /* see if this ssn has been marked by skipping */ 899 - if (!SSN_lte(cssn, sctp_ssn_peek(in, csid))) 898 + if (!SSN_lt(cssn, sctp_ssn_peek(in, csid))) 900 899 break; 901 900 902 - __skb_unlink(pos, &ulpq->lobby); 901 + __skb_unlink(pos, lobby); 903 902 if (!event) 904 903 /* Create a temporary list to collect chunks on. */ 905 904 event = sctp_skb2event(pos); 906 905 907 906 /* Attach all gathered skbs to the event. */ 908 907 __skb_queue_tail(&temp, pos); 908 + } 909 + 910 + /* If we didn't reap any data, see if the next expected SSN 911 + * is next on the queue and if so, use that. 912 + */ 913 + if (event == NULL && pos != (struct sk_buff *)lobby) { 914 + cevent = (struct sctp_ulpevent *) pos->cb; 915 + csid = cevent->stream; 916 + cssn = cevent->ssn; 917 + 918 + if (csid == sid && cssn == sctp_ssn_peek(in, csid)) { 919 + sctp_ssn_next(in, csid); 920 + __skb_unlink(pos, lobby); 921 + __skb_queue_tail(&temp, pos); 922 + event = sctp_skb2event(pos); 923 + } 909 924 } 910 925 911 926 /* Send event to the ULP. 'event' is the sctp_ulpevent for