Commit 08d6ee6
sunrpc: implement rfc2203 rpcsec_gss seqnum cache
This implements a sequence number cache of the last three (right now
hardcoded) sent sequence numbers for a given XID, as suggested by the
RFC.
From RFC2203 5.3.3.1:
"Note that the sequence number algorithm requires that the client
increment the sequence number even if it is retrying a request with
the same RPC transaction identifier. It is not infrequent for
clients to get into a situation where they send two or more attempts
and a slow server sends the reply for the first attempt. With
RPCSEC_GSS, each request and reply will have a unique sequence
number. If the client wishes to improve turn around time on the RPC
call, it can cache the RPCSEC_GSS sequence number of each request it
sends. Then when it receives a response with a matching RPC
transaction identifier, it can compute the checksum of each sequence
number in the cache to try to match the checksum in the reply's
verifier."
Signed-off-by: Nikhil Jha <[email protected]>
Acked-by: Chuck Lever <[email protected]>
Signed-off-by: Anna Schumaker <[email protected]>1 parent a5806cd commit 08d6ee6
File tree
5 files changed
+57
-28
lines changed- include
- linux/sunrpc
- trace/events
- net/sunrpc
- auth_gss
5 files changed
+57
-28
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
| 33 | + | |
| 34 | + | |
33 | 35 | | |
34 | 36 | | |
35 | 37 | | |
| |||
66 | 68 | | |
67 | 69 | | |
68 | 70 | | |
69 | | - | |
| 71 | + | |
| 72 | + | |
70 | 73 | | |
71 | 74 | | |
72 | 75 | | |
| |||
119 | 122 | | |
120 | 123 | | |
121 | 124 | | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
122 | 137 | | |
123 | 138 | | |
124 | 139 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
409 | 409 | | |
410 | 410 | | |
411 | 411 | | |
412 | | - | |
| 412 | + | |
413 | 413 | | |
414 | 414 | | |
415 | 415 | | |
| |||
440 | 440 | | |
441 | 441 | | |
442 | 442 | | |
443 | | - | |
| 443 | + | |
444 | 444 | | |
445 | 445 | | |
446 | 446 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1100 | 1100 | | |
1101 | 1101 | | |
1102 | 1102 | | |
1103 | | - | |
| 1103 | + | |
1104 | 1104 | | |
1105 | 1105 | | |
1106 | 1106 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1545 | 1545 | | |
1546 | 1546 | | |
1547 | 1547 | | |
| 1548 | + | |
1548 | 1549 | | |
1549 | 1550 | | |
1550 | 1551 | | |
| |||
1556 | 1557 | | |
1557 | 1558 | | |
1558 | 1559 | | |
1559 | | - | |
| 1560 | + | |
| 1561 | + | |
1560 | 1562 | | |
1561 | | - | |
| 1563 | + | |
1562 | 1564 | | |
1563 | 1565 | | |
1564 | 1566 | | |
1565 | 1567 | | |
1566 | 1568 | | |
1567 | | - | |
| 1569 | + | |
1568 | 1570 | | |
1569 | 1571 | | |
1570 | 1572 | | |
| |||
1678 | 1680 | | |
1679 | 1681 | | |
1680 | 1682 | | |
| 1683 | + | |
| 1684 | + | |
| 1685 | + | |
| 1686 | + | |
| 1687 | + | |
| 1688 | + | |
| 1689 | + | |
| 1690 | + | |
| 1691 | + | |
| 1692 | + | |
| 1693 | + | |
| 1694 | + | |
| 1695 | + | |
| 1696 | + | |
| 1697 | + | |
| 1698 | + | |
1681 | 1699 | | |
1682 | 1700 | | |
1683 | 1701 | | |
1684 | 1702 | | |
1685 | 1703 | | |
1686 | 1704 | | |
1687 | | - | |
1688 | | - | |
1689 | | - | |
1690 | 1705 | | |
1691 | 1706 | | |
| 1707 | + | |
1692 | 1708 | | |
1693 | 1709 | | |
1694 | 1710 | | |
| |||
1705 | 1721 | | |
1706 | 1722 | | |
1707 | 1723 | | |
1708 | | - | |
1709 | | - | |
1710 | | - | |
1711 | | - | |
1712 | | - | |
1713 | | - | |
1714 | | - | |
| 1724 | + | |
| 1725 | + | |
| 1726 | + | |
| 1727 | + | |
1715 | 1728 | | |
1716 | 1729 | | |
1717 | 1730 | | |
| |||
1750 | 1763 | | |
1751 | 1764 | | |
1752 | 1765 | | |
1753 | | - | |
| 1766 | + | |
1754 | 1767 | | |
1755 | 1768 | | |
1756 | 1769 | | |
| |||
1847 | 1860 | | |
1848 | 1861 | | |
1849 | 1862 | | |
1850 | | - | |
| 1863 | + | |
1851 | 1864 | | |
1852 | 1865 | | |
1853 | 1866 | | |
| |||
2001 | 2014 | | |
2002 | 2015 | | |
2003 | 2016 | | |
2004 | | - | |
| 2017 | + | |
2005 | 2018 | | |
2006 | 2019 | | |
2007 | 2020 | | |
| |||
2045 | 2058 | | |
2046 | 2059 | | |
2047 | 2060 | | |
2048 | | - | |
| 2061 | + | |
2049 | 2062 | | |
2050 | 2063 | | |
2051 | 2064 | | |
| |||
2077 | 2090 | | |
2078 | 2091 | | |
2079 | 2092 | | |
2080 | | - | |
| 2093 | + | |
2081 | 2094 | | |
2082 | 2095 | | |
2083 | 2096 | | |
| |||
2093 | 2106 | | |
2094 | 2107 | | |
2095 | 2108 | | |
2096 | | - | |
| 2109 | + | |
2097 | 2110 | | |
2098 | 2111 | | |
2099 | 2112 | | |
| |||
2118 | 2131 | | |
2119 | 2132 | | |
2120 | 2133 | | |
2121 | | - | |
| 2134 | + | |
2122 | 2135 | | |
2123 | 2136 | | |
2124 | 2137 | | |
2125 | | - | |
| 2138 | + | |
2126 | 2139 | | |
2127 | 2140 | | |
2128 | | - | |
| 2141 | + | |
2129 | 2142 | | |
2130 | 2143 | | |
2131 | 2144 | | |
| |||
2134 | 2147 | | |
2135 | 2148 | | |
2136 | 2149 | | |
2137 | | - | |
| 2150 | + | |
2138 | 2151 | | |
2139 | 2152 | | |
2140 | 2153 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1365 | 1365 | | |
1366 | 1366 | | |
1367 | 1367 | | |
1368 | | - | |
| 1368 | + | |
1369 | 1369 | | |
1370 | 1370 | | |
1371 | 1371 | | |
| |||
1898 | 1898 | | |
1899 | 1899 | | |
1900 | 1900 | | |
| 1901 | + | |
1901 | 1902 | | |
1902 | 1903 | | |
1903 | 1904 | | |
| |||
0 commit comments