asn1: Ensure asn1_tag_remaining() only ever returns -1 as an error condition.
authorJeremy Allison <jra@samba.org>
Fri, 5 Feb 2016 21:21:29 +0000 (13:21 -0800)
committerJeremy Allison <jra@samba.org>
Wed, 10 Feb 2016 00:38:03 +0000 (01:38 +0100)
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Wed Feb 10 01:38:03 CET 2016 on sn-devel-144

lib/util/asn1.c

index 029265e2b86acc5a027fe96d8347cee2008f0d7f..9d6d4164f107954923c40fb0ebae8940d603cf87 100644 (file)
@@ -721,6 +721,10 @@ int asn1_tag_remaining(struct asn1_data *data)
                data->has_error = true;
                return -1;
        }
+       if (remaining < 0) {
+               data->has_error = true;
+               return -1;
+       }
        return remaining;
 }