From a6e7fa3af9888d8e288283976cfab5795c0bbe70 Mon Sep 17 00:00:00 2001 From: aj Date: Mon, 28 Apr 2003 16:29:57 +0000 Subject: [PATCH] Nils fixed asn1 code to detect two byte "file name" versus longer real paths. git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1077 c6295689-39f2-0310-b995-f0e70906c6a9 --- src/libopensc/asn1.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libopensc/asn1.c b/src/libopensc/asn1.c index 5ae413a5..fe188373 100644 --- a/src/libopensc/asn1.c +++ b/src/libopensc/asn1.c @@ -731,7 +731,10 @@ static int asn1_decode_path(struct sc_context *ctx, const u8 *in, size_t len, r = asn1_decode(ctx, asn1_path, in, len, NULL, NULL, 0, depth + 1); if (r) return r; - path->type = SC_PATH_TYPE_PATH; + if (path->len == 2) + path->type = SC_PATH_TYPE_FILE_ID; + else + path->type = SC_PATH_TYPE_PATH; if ((asn1_path[1].flags & SC_ASN1_PRESENT) && (asn1_path[2].flags & SC_ASN1_PRESENT)) { path->index = idx;