From f36fe6a343faac550c24000eb23a2a405d4b0383 Mon Sep 17 00:00:00 2001 From: Gerrit Renker Date: Thu, 4 Oct 2007 14:39:22 -0700 Subject: [PATCH] --- yaml --- r: 66911 b: refs/heads/master c: 7c559a9e44ee61faf2f339604ce708decb345a93 h: refs/heads/master i: 66909: c61990a4ca6df7d83b6240fdbf0ce9fc98708383 66907: 7911c35b74b46db378c56f86142788e925b4944a 66903: fd68d899acb2ec327b8b04622f2539b624b10d82 66895: 4d90f81f910973cba75bbe0f506bd63ff659f981 66879: 256695430950bd28a4fa97b0576c5f1d3eac99f2 v: v3 --- [refs] | 2 +- trunk/Documentation/networking/dccp.txt | 3 +++ trunk/include/linux/dccp.h | 1 + trunk/net/dccp/proto.c | 4 ++++ 4 files changed, 9 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 624c2094c509..24968e731fcf 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bc8498721dfe3f7d537f4f75302be7dbe9c7b939 +refs/heads/master: 7c559a9e44ee61faf2f339604ce708decb345a93 diff --git a/trunk/Documentation/networking/dccp.txt b/trunk/Documentation/networking/dccp.txt index 477026ae0ffb..f9157180f7d8 100644 --- a/trunk/Documentation/networking/dccp.txt +++ b/trunk/Documentation/networking/dccp.txt @@ -41,6 +41,9 @@ the socket will fall back to 0 (which means that no meaningful service code is present). Connecting sockets set at most one service option; for listening sockets, multiple service codes can be specified. +DCCP_SOCKOPT_GET_CUR_MPS is read-only and retrieves the current maximum packet +size (application payload size) in bytes, see RFC 4340, section 14. + DCCP_SOCKOPT_SEND_CSCOV and DCCP_SOCKOPT_RECV_CSCOV are used for setting the partial checksum coverage (RFC 4340, sec. 9.2). The default is that checksums always cover the entire packet and that only fully covered application data is diff --git a/trunk/include/linux/dccp.h b/trunk/include/linux/dccp.h index 4ed82e2c9f65..0e44a3e5208d 100644 --- a/trunk/include/linux/dccp.h +++ b/trunk/include/linux/dccp.h @@ -202,6 +202,7 @@ struct dccp_so_feat { #define DCCP_SOCKOPT_SERVICE 2 #define DCCP_SOCKOPT_CHANGE_L 3 #define DCCP_SOCKOPT_CHANGE_R 4 +#define DCCP_SOCKOPT_GET_CUR_MPS 5 #define DCCP_SOCKOPT_SEND_CSCOV 10 #define DCCP_SOCKOPT_RECV_CSCOV 11 #define DCCP_SOCKOPT_CCID_RX_INFO 128 diff --git a/trunk/net/dccp/proto.c b/trunk/net/dccp/proto.c index 7e4f54a4ecaf..c0b685efe245 100644 --- a/trunk/net/dccp/proto.c +++ b/trunk/net/dccp/proto.c @@ -587,6 +587,10 @@ static int do_dccp_getsockopt(struct sock *sk, int level, int optname, case DCCP_SOCKOPT_SERVICE: return dccp_getsockopt_service(sk, len, (__be32 __user *)optval, optlen); + case DCCP_SOCKOPT_GET_CUR_MPS: + val = dp->dccps_mss_cache; + len = sizeof(val); + break; case DCCP_SOCKOPT_SEND_CSCOV: val = dp->dccps_pcslen; len = sizeof(val);