diff options
author | David S. Miller <davem@davemloft.net> | 2017-04-13 13:58:23 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-04-13 13:58:23 -0400 |
commit | c3f5671e4e10b111c9078d02ec39cab0bc722a25 (patch) | |
tree | 36d737d67f023666a00f419679628d40d996ec6d | |
parent | 69ef4995da43c512ffa7d4e57d5124489a0b417f (diff) | |
parent | 39885b013cc77559219b7f9efd4dd3aa90b0c3f4 (diff) | |
download | linux-crypto-c3f5671e4e10b111c9078d02ec39cab0bc722a25.tar.gz linux-crypto-c3f5671e4e10b111c9078d02ec39cab0bc722a25.zip |
Merge branch 'netlink_ext_ACK'
Johannes Berg says:
====================
netlink extended ACK reporting
Changes since v4:
* use __NLMSGERR_ATTR_MAX instead of NUM_NLMSGERR_ATTRS
Changes since v3:
* Add NLM_F_CAPPED and NLM_F_ACK_TLVS flags, to allow entirely
stateless parsing of the ACK messages by looking at the new
flags. Need to check NLM_F_ACK_TLVS first, since capping can
be done in kernels before this patchset without setting the
flag.
* Remove "missing_attr" functionality - this can obviously be
added back rather easily, but I'd rather have more discussion
about the nesting problem there.
* Improve documentation of NLMSGERR_ATTR_OFFS
* Improve message structure documentation, documenting that the
request message is always capped for success cases
* fix nlmsg_len of the outer message by calling nlmsg_end()
* fix memcpy() of the request in success cases, going back to
the original code that I'd changed before due to the payload
adjustments that I reverted when introducing tlvlen
Changes since v2:
* add NUM_NLMSGERR_ATTRS, NLMSGERR_ATTR_MAX
* fix cookie length to 20 (sha-1 length)
* move struct members for cookie to patch 3 where they should be
* another cleanup suggested by David Ahern
Changes since v1:
* credit Pablo and Jamal
* incorporate suggestion from David Ahern
* fix compilation in decnet
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
-rw-r--r-- | crypto/crypto_user.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/crypto/crypto_user.c b/crypto/crypto_user.c index a90404a0..b5758768 100644 --- a/crypto/crypto_user.c +++ b/crypto/crypto_user.c @@ -483,7 +483,8 @@ static const struct crypto_link { [CRYPTO_MSG_DELRNG - CRYPTO_MSG_BASE] = { .doit = crypto_del_rng }, }; -static int crypto_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh) +static int crypto_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh, + struct netlink_ext_ack *extack) { struct nlattr *attrs[CRYPTOCFGA_MAX+1]; const struct crypto_link *link; @@ -522,7 +523,7 @@ static int crypto_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh) } err = nlmsg_parse(nlh, crypto_msg_min[type], attrs, CRYPTOCFGA_MAX, - crypto_policy); + crypto_policy, extack); if (err < 0) return err; |