ax25: add link layer header validation function
[pandora-kernel.git] / net / ax25 / ax25_ip.c
index cf0c47a..a0c9956 100644 (file)
@@ -232,9 +232,24 @@ int ax25_rebuild_header(struct sk_buff *skb)
 
 #endif
 
+static bool ax25_validate_header(const char *header, unsigned int len)
+{
+       ax25_digi digi;
+
+       if (!len)
+               return false;
+
+       if (header[0])
+               return true;
+
+       return ax25_addr_parse(header + 1, len - 1, NULL, NULL, &digi, NULL,
+                              NULL);
+}
+
 const struct header_ops ax25_header_ops = {
        .create = ax25_hard_header,
        .rebuild = ax25_rebuild_header,
+       .validate = ax25_validate_header,
 };
 
 EXPORT_SYMBOL(ax25_hard_header);