review of small ASN patch

Love Hörnquist Åstrand lha at kth.se
Thu Jul 24 20:20:10 GMT 2008


The oid is indeed a primitive object PRIM(0), class should be  
UNIVersal (0).

Love


24 jul 2008 kl. 21.11 skrev Steve French:

> ASN experts ... comments on the following patch to the kernel client?
>
> From: Chris Wright <chrisw at sous-sol.org>
>
> When verifying the decoded header before decoding the object  
> identifier
> (expecting a SPNEGO pseudo-mechanism oid), the test to verify it is a
> primitive encoding is compared against the asn1 class.  Primitive is  
> not a
> class.  This brings check in line with similar check for krb/ntlmssp  
> oid.
>
> Signed-off-by: Chris Wright <chrisw at sous-sol.org>
> Cc: Steven French <sfrench at us.ibm.com>
> Signed-off-by: Andrew Morton <akpm at linux-foundation.org>
> ---
>
> fs/cifs/asn1.c |    2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff -puN fs/cifs/asn1.c~cifs-primitive-is-not-an-asn1-class fs/cifs/ 
> asn1.c
> --- a/fs/cifs/asn1.c~cifs-primitive-is-not-an-asn1-class
> +++ a/fs/cifs/asn1.c
> @@ -494,7 +494,7 @@ decode_negTokenInit(unsigned char *secur
>              /*      remember to free obj->oid */
>              rc = asn1_header_decode(&ctx, &end, &cls, &con, &tag);
>              if (rc) {
> -                       if ((tag == ASN1_OJI) && (cls == ASN1_PRI)) {
> +                       if ((tag == ASN1_OJI) && (con == ASN1_PRI)) {
>                              rc = asn1_oid_decode(&ctx, end, &oid,  
> &oidlen);
>                              if (rc) {
>                                      rc = compare_oid(oid, oidlen,
> _
>
> --
> Thanks,
>
> Steve



More information about the samba-technical mailing list