So this is my first draft of what we'd talked about at netconf. I'm not super happy with the way we have to pass the extended error struct, but I don't see a way to implement reporting any dynamic information (like error offsets) in any other way. Alexander Shishkin had a nice way of reporting static extended error data, but that isn't really suitable for reporting the offset or even reporting the broken attribute from nla_parse(). Speaking of nla_parse(), that'll be somewhat complicated to do since we'll have to track the offsets of where we're parsing, but it might be possible since the nlattrs are just pointers into the message, so (optionally?) passing the skb as well can allow us to fill the offset information. johannes