Author: stsp
Date: Thu Jun 19 11:50:31 2014
New Revision: 1603841

URL: http://svn.apache.org/r1603841
Log:
On the svn-auth-x509 branch:

* subversion/libsvn_subr/x509.h,
  subversion/libsvn_subr/x509parse.c: Replace tabs with spaces.

Modified:
    subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509.h
    subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509parse.c

Modified: subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509.h
URL: 
http://svn.apache.org/viewvc/subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509.h?rev=1603841&r1=1603840&r2=1603841&view=diff
==============================================================================
--- subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509.h (original)
+++ subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509.h Thu Jun 19 
11:50:31 2014
@@ -123,50 +123,50 @@
  * Structures for parsing X.509 certificates
  */
 typedef struct _x509_buf {
-       int tag;
-       int len;
-       unsigned char *p;
+  int tag;
+  int len;
+  unsigned char *p;
 } x509_buf;
 
 typedef struct _x509_name {
-       x509_buf oid;
-       x509_buf val;
-       struct _x509_name *next;
+  x509_buf oid;
+  x509_buf val;
+  struct _x509_name *next;
 } x509_name;
 
 typedef struct _x509_time {
-       int year, mon, day;
-       int hour, min, sec;
+  int year, mon, day;
+  int hour, min, sec;
 } x509_time;
 
 typedef struct _x509_cert {
-       x509_buf raw;
-       x509_buf tbs;
+  x509_buf raw;
+  x509_buf tbs;
 
-       int version;
-       x509_buf serial;
-       x509_buf sig_oid1;
+  int version;
+  x509_buf serial;
+  x509_buf sig_oid1;
 
-       x509_buf issuer_raw;
-       x509_buf subject_raw;
+  x509_buf issuer_raw;
+  x509_buf subject_raw;
 
-       x509_name issuer;
-       x509_name subject;
+  x509_name issuer;
+  x509_name subject;
 
-       x509_time valid_from;
-       x509_time valid_to;
+  x509_time valid_from;
+  x509_time valid_to;
 
-       x509_buf pk_oid;
+  x509_buf pk_oid;
 
-       x509_buf issuer_id;
-       x509_buf subject_id;
-       x509_buf v3_ext;
+  x509_buf issuer_id;
+  x509_buf subject_id;
+  x509_buf v3_ext;
 
-       int ca_istrue;
-       int max_pathlen;
+  int ca_istrue;
+  int max_pathlen;
 
-       x509_buf sig_oid2;
-       x509_buf sig;
+  x509_buf sig_oid2;
+  x509_buf sig;
 
 } x509_cert;
 
@@ -174,19 +174,19 @@ typedef struct _x509_cert {
 extern "C" {
 #endif
 
-       /**
-        * \brief          Parse one or more certificates and add them
-        *                 to the chained list
-        *
-        * \param chain    points to the start of the chain
-        * \param buf      buffer holding the certificate data
-        * \param buflen   size of the buffer
-        *
-        * \return         0 if successful, or a specific X509 error code
-        */
-       int x509parse_crt(x509_cert * chain, const unsigned char *buf, int 
buflen);
+  /**
+   * \brief          Parse one or more certificates and add them
+   *                 to the chained list
+   *
+   * \param chain    points to the start of the chain
+   * \param buf      buffer holding the certificate data
+   * \param buflen   size of the buffer
+   *
+   * \return         0 if successful, or a specific X509 error code
+   */
+  int x509parse_crt(x509_cert * chain, const unsigned char *buf, int buflen);
 
 #ifdef __cplusplus
 }
 #endif
-#endif                         /* x509.h */
+#endif        /* x509.h */

Modified: subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509parse.c
URL: 
http://svn.apache.org/viewvc/subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509parse.c?rev=1603841&r1=1603840&r2=1603841&view=diff
==============================================================================
--- subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509parse.c 
(original)
+++ subversion/branches/svn-auth-x509/subversion/libsvn_subr/x509parse.c Thu 
Jun 19 11:50:31 2014
@@ -1,47 +1,47 @@
 /*
- *     X.509 certificate and private key decoding
+ *  X.509 certificate and private key decoding
  *
- *     Based on XySSL: Copyright (C) 2006-2008  Christophe Devine
+ *  Based on XySSL: Copyright (C) 2006-2008   Christophe Devine
  *
- *     Copyright (C) 2009      Paul Bakker <polarssl_maintainer at polarssl 
dot org>
+ *  Copyright (C) 2009  Paul Bakker <polarssl_maintainer at polarssl dot org>
  *
- *     All rights reserved.
+ *  All rights reserved.
  *
- *     Redistribution and use in source and binary forms, with or without
- *     modification, are permitted provided that the following conditions
- *     are met:
- *
- *       * Redistributions of source code must retain the above copyright
- *             notice, this list of conditions and the following disclaimer.
- *       * Redistributions in binary form must reproduce the above copyright
- *             notice, this list of conditions and the following disclaimer in 
the
- *             documentation and/or other materials provided with the 
distribution.
- *       * Neither the names of PolarSSL or XySSL nor the names of its 
contributors
- *             may be used to endorse or promote products derived from this 
software
- *             without specific prior written permission.
- *
- *     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- *     "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- *     LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- *     FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- *     OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- *     SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
- *     TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- *     PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- *     LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- *     NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- *     SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions
+ *  are met:
+ *
+ *    * Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ *    * Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *    * Neither the names of PolarSSL or XySSL nor the names of its 
contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ *  FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+ *  TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 /*
- *     The ITU-T X.509 standard defines a certificat format for PKI.
+ *  The ITU-T X.509 standard defines a certificat format for PKI.
  *
- *     http://www.ietf.org/rfc/rfc2459.txt
- *     http://www.ietf.org/rfc/rfc3279.txt
+ *  http://www.ietf.org/rfc/rfc2459.txt
+ *  http://www.ietf.org/rfc/rfc3279.txt
  *
- *     ftp://ftp.rsasecurity.com/pub/pkcs/ascii/pkcs-1v2.asc
+ *  ftp://ftp.rsasecurity.com/pub/pkcs/ascii/pkcs-1v2.asc
  *
- *     http://www.itu.int/ITU-T/studygroups/com17/languages/X.680-0207.pdf
- *     http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf
+ *  http://www.itu.int/ITU-T/studygroups/com17/languages/X.680-0207.pdf
+ *  http://www.itu.int/ITU-T/studygroups/com17/languages/X.690-0207.pdf
  */
 
 #include "x509.h"
@@ -56,362 +56,362 @@
  */
 static int asn1_get_len(unsigned char **p, const unsigned char *end, int *len)
 {
-       if ((end - *p) < 1)
-               return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
+  if ((end - *p) < 1)
+    return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
 
-       if ((**p & 0x80) == 0)
-               *len = *(*p)++;
-       else {
-               switch (**p & 0x7F) {
-               case 1:
-                       if ((end - *p) < 2)
-                               return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
-
-                       *len = (*p)[1];
-                       (*p) += 2;
-                       break;
-
-               case 2:
-                       if ((end - *p) < 3)
-                               return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
-
-                       *len = ((*p)[1] << 8) | (*p)[2];
-                       (*p) += 3;
-                       break;
-
-               default:
-                       return (TROPICSSL_ERR_ASN1_INVALID_LENGTH);
-                       break;
-               }
-       }
+  if ((**p & 0x80) == 0)
+    *len = *(*p)++;
+  else {
+    switch (**p & 0x7F) {
+    case 1:
+      if ((end - *p) < 2)
+        return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
+
+      *len = (*p)[1];
+      (*p) += 2;
+      break;
+
+    case 2:
+      if ((end - *p) < 3)
+        return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
+
+      *len = ((*p)[1] << 8) | (*p)[2];
+      (*p) += 3;
+      break;
+
+    default:
+      return (TROPICSSL_ERR_ASN1_INVALID_LENGTH);
+      break;
+    }
+  }
 
-       if (*len > (int)(end - *p))
-               return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
+  if (*len > (int)(end - *p))
+    return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
 
-       return (0);
+  return (0);
 }
 
 static int asn1_get_tag(unsigned char **p,
-                       const unsigned char *end, int *len, int tag)
+      const unsigned char *end, int *len, int tag)
 {
-       if ((end - *p) < 1)
-               return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
+  if ((end - *p) < 1)
+    return (TROPICSSL_ERR_ASN1_OUT_OF_DATA);
 
-       if (**p != tag)
-               return (TROPICSSL_ERR_ASN1_UNEXPECTED_TAG);
+  if (**p != tag)
+    return (TROPICSSL_ERR_ASN1_UNEXPECTED_TAG);
 
-       (*p)++;
+  (*p)++;
 
-       return (asn1_get_len(p, end, len));
+  return (asn1_get_len(p, end, len));
 }
 
 static int asn1_get_int(unsigned char **p, const unsigned char *end, int *val)
 {
-       int ret, len;
+  int ret, len;
 
-       if ((ret = asn1_get_tag(p, end, &len, ASN1_INTEGER)) != 0)
-               return (ret);
+  if ((ret = asn1_get_tag(p, end, &len, ASN1_INTEGER)) != 0)
+    return (ret);
 
-       if (len > (int)sizeof(int) || (**p & 0x80) != 0)
-               return (TROPICSSL_ERR_ASN1_INVALID_LENGTH);
+  if (len > (int)sizeof(int) || (**p & 0x80) != 0)
+    return (TROPICSSL_ERR_ASN1_INVALID_LENGTH);
 
-       *val = 0;
+  *val = 0;
 
-       while (len-- > 0) {
-               *val = (*val << 8) | **p;
-               (*p)++;
-       }
+  while (len-- > 0) {
+    *val = (*val << 8) | **p;
+    (*p)++;
+  }
 
-       return (0);
+  return (0);
 }
 
 /*
- *     Version  ::=  INTEGER  {  v1(0), v2(1), v3(2)  }
+ *  Version   ::=  INTEGER  {  v1(0), v2(1), v3(2)  }
  */
 static int x509_get_version(unsigned char **p, const unsigned char *end, int 
*ver)
 {
-       int ret, len;
+  int ret, len;
 
-       if ((ret = asn1_get_tag(p, end, &len,
-                               ASN1_CONTEXT_SPECIFIC | ASN1_CONSTRUCTED | 0))
-           != 0) {
-               if (ret == TROPICSSL_ERR_ASN1_UNEXPECTED_TAG)
-                       return (*ver = 0);
+  if ((ret = asn1_get_tag(p, end, &len,
+        ASN1_CONTEXT_SPECIFIC | ASN1_CONSTRUCTED | 0))
+      != 0) {
+    if (ret == TROPICSSL_ERR_ASN1_UNEXPECTED_TAG)
+      return (*ver = 0);
 
-               return (ret);
-       }
+    return (ret);
+  }
 
-       end = *p + len;
+  end = *p + len;
 
-       if ((ret = asn1_get_int(p, end, ver)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_VERSION | ret);
+  if ((ret = asn1_get_int(p, end, ver)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_VERSION | ret);
 
-       if (*p != end)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_VERSION |
-                       TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
+  if (*p != end)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_VERSION |
+      TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
 
-       return (0);
+  return (0);
 }
 
 /*
- *     CertificateSerialNumber  ::=  INTEGER
+ *  CertificateSerialNumber   ::=  INTEGER
  */
 static int x509_get_serial(unsigned char **p,
-                          const unsigned char *end, x509_buf * serial)
+         const unsigned char *end, x509_buf * serial)
 {
-       int ret;
+  int ret;
 
-       if ((end - *p) < 1)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_SERIAL |
-                       TROPICSSL_ERR_ASN1_OUT_OF_DATA);
+  if ((end - *p) < 1)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_SERIAL |
+      TROPICSSL_ERR_ASN1_OUT_OF_DATA);
 
-       if (**p != (ASN1_CONTEXT_SPECIFIC | ASN1_PRIMITIVE | 2) &&
-           **p != ASN1_INTEGER)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_SERIAL |
-                       TROPICSSL_ERR_ASN1_UNEXPECTED_TAG);
+  if (**p != (ASN1_CONTEXT_SPECIFIC | ASN1_PRIMITIVE | 2) &&
+      **p != ASN1_INTEGER)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_SERIAL |
+      TROPICSSL_ERR_ASN1_UNEXPECTED_TAG);
 
-       serial->tag = *(*p)++;
+  serial->tag = *(*p)++;
 
-       if ((ret = asn1_get_len(p, end, &serial->len)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_SERIAL | ret);
+  if ((ret = asn1_get_len(p, end, &serial->len)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_SERIAL | ret);
 
-       serial->p = *p;
-       *p += serial->len;
+  serial->p = *p;
+  *p += serial->len;
 
-       return (0);
+  return (0);
 }
 
 /*
- *     AlgorithmIdentifier      ::=  SEQUENCE  {
- *              algorithm                               OBJECT IDENTIFIER,
- *              parameters                              ANY DEFINED BY 
algorithm OPTIONAL      }
+ *  AlgorithmIdentifier   ::=  SEQUENCE  {
+ *     algorithm         OBJECT IDENTIFIER,
+ *     parameters         ANY DEFINED BY algorithm OPTIONAL  }
  */
 static int x509_get_alg(unsigned char **p, const unsigned char *end, x509_buf 
* alg)
 {
-       int ret, len;
+  int ret, len;
 
-       if ((ret = asn1_get_tag(p, end, &len,
-                               ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_ALG | ret);
+  if ((ret = asn1_get_tag(p, end, &len,
+        ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_ALG | ret);
 
-       end = *p + len;
-       alg->tag = **p;
+  end = *p + len;
+  alg->tag = **p;
 
-       if ((ret = asn1_get_tag(p, end, &alg->len, ASN1_OID)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_ALG | ret);
+  if ((ret = asn1_get_tag(p, end, &alg->len, ASN1_OID)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_ALG | ret);
 
-       alg->p = *p;
-       *p += alg->len;
+  alg->p = *p;
+  *p += alg->len;
 
-       if (*p == end)
-               return (0);
+  if (*p == end)
+    return (0);
 
-       /*
-        * assume the algorithm parameters must be NULL
-        */
-       if ((ret = asn1_get_tag(p, end, &len, ASN1_NULL)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_ALG | ret);
+  /*
+   * assume the algorithm parameters must be NULL
+   */
+  if ((ret = asn1_get_tag(p, end, &len, ASN1_NULL)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_ALG | ret);
 
-       if (*p != end)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_ALG |
-                       TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
+  if (*p != end)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_ALG |
+      TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
 
-       return (0);
+  return (0);
 }
 
 /*
- *     RelativeDistinguishedName ::=
- *       SET OF AttributeTypeAndValue
+ *  RelativeDistinguishedName ::=
+ *    SET OF AttributeTypeAndValue
  *
- *     AttributeTypeAndValue ::= SEQUENCE {
- *       type     AttributeType,
- *       value    AttributeValue }
+ *  AttributeTypeAndValue ::= SEQUENCE {
+ *    type     AttributeType,
+ *    value     AttributeValue }
  *
- *     AttributeType ::= OBJECT IDENTIFIER
+ *  AttributeType ::= OBJECT IDENTIFIER
  *
- *     AttributeValue ::= ANY DEFINED BY AttributeType
+ *  AttributeValue ::= ANY DEFINED BY AttributeType
  */
 static int x509_get_name(unsigned char **p, const unsigned char *end, 
x509_name * cur)
 {
-       int ret, len;
-       const unsigned char *end2;
-       x509_buf *oid;
-       x509_buf *val;
+  int ret, len;
+  const unsigned char *end2;
+  x509_buf *oid;
+  x509_buf *val;
 
-       if ((ret = asn1_get_tag(p, end, &len,
-                               ASN1_CONSTRUCTED | ASN1_SET)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_NAME | ret);
+  if ((ret = asn1_get_tag(p, end, &len,
+        ASN1_CONSTRUCTED | ASN1_SET)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_NAME | ret);
 
-       end2 = end;
-       end = *p + len;
+  end2 = end;
+  end = *p + len;
 
-       if ((ret = asn1_get_tag(p, end, &len,
-                               ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_NAME | ret);
+  if ((ret = asn1_get_tag(p, end, &len,
+        ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_NAME | ret);
 
-       if (*p + len != end)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_NAME |
-                       TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
+  if (*p + len != end)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_NAME |
+      TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
 
-       oid = &cur->oid;
-       oid->tag = **p;
+  oid = &cur->oid;
+  oid->tag = **p;
 
-       if ((ret = asn1_get_tag(p, end, &oid->len, ASN1_OID)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_NAME | ret);
+  if ((ret = asn1_get_tag(p, end, &oid->len, ASN1_OID)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_NAME | ret);
 
-       oid->p = *p;
-       *p += oid->len;
+  oid->p = *p;
+  *p += oid->len;
 
-       if ((end - *p) < 1)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_NAME |
-                       TROPICSSL_ERR_ASN1_OUT_OF_DATA);
+  if ((end - *p) < 1)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_NAME |
+      TROPICSSL_ERR_ASN1_OUT_OF_DATA);
 
-       if (**p != ASN1_BMP_STRING && **p != ASN1_UTF8_STRING &&
-           **p != ASN1_T61_STRING && **p != ASN1_PRINTABLE_STRING &&
-           **p != ASN1_IA5_STRING && **p != ASN1_UNIVERSAL_STRING)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_NAME |
-                       TROPICSSL_ERR_ASN1_UNEXPECTED_TAG);
+  if (**p != ASN1_BMP_STRING && **p != ASN1_UTF8_STRING &&
+      **p != ASN1_T61_STRING && **p != ASN1_PRINTABLE_STRING &&
+      **p != ASN1_IA5_STRING && **p != ASN1_UNIVERSAL_STRING)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_NAME |
+      TROPICSSL_ERR_ASN1_UNEXPECTED_TAG);
 
-       val = &cur->val;
-       val->tag = *(*p)++;
+  val = &cur->val;
+  val->tag = *(*p)++;
 
-       if ((ret = asn1_get_len(p, end, &val->len)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_NAME | ret);
+  if ((ret = asn1_get_len(p, end, &val->len)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_NAME | ret);
 
-       val->p = *p;
-       *p += val->len;
+  val->p = *p;
+  *p += val->len;
 
-       cur->next = NULL;
+  cur->next = NULL;
 
-       if (*p != end)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_NAME |
-                       TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
+  if (*p != end)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_NAME |
+      TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
 
-       /*
-        * recurse until end of SEQUENCE is reached
-        */
-       if (*p == end2)
-               return (0);
+  /*
+   * recurse until end of SEQUENCE is reached
+   */
+  if (*p == end2)
+    return (0);
 
-       cur->next = (x509_name *) malloc(sizeof(x509_name));
+  cur->next = (x509_name *) malloc(sizeof(x509_name));
 
-       if (cur->next == NULL)
-               return (1);
+  if (cur->next == NULL)
+    return (1);
 
-       return (x509_get_name(p, end2, cur->next));
+  return (x509_get_name(p, end2, cur->next));
 }
 
 /*
- *     Validity ::= SEQUENCE {
- *              notBefore              Time,
- *              notAfter               Time }
- *
- *     Time ::= CHOICE {
- *              utcTime                UTCTime,
- *              generalTime    GeneralizedTime }
+ *  Validity ::= SEQUENCE {
+ *     notBefore    Time,
+ *     notAfter    Time }
+ *
+ *  Time ::= CHOICE {
+ *     utcTime    UTCTime,
+ *     generalTime  GeneralizedTime }
  */
 static int x509_get_dates(unsigned char **p,
-                         const unsigned char *end, x509_time * from, x509_time 
* to)
+        const unsigned char *end, x509_time * from, x509_time * to)
 {
-       int ret, len;
-       char date[64];
+  int ret, len;
+  char date[64];
 
-       if ((ret = asn1_get_tag(p, end, &len,
-                               ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_DATE | ret);
+  if ((ret = asn1_get_tag(p, end, &len,
+        ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_DATE | ret);
 
-       end = *p + len;
+  end = *p + len;
 
-       /*
-        * TODO: also handle GeneralizedTime
-        */
-       if ((ret = asn1_get_tag(p, end, &len, ASN1_UTC_TIME)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_DATE | ret);
+  /*
+   * TODO: also handle GeneralizedTime
+   */
+  if ((ret = asn1_get_tag(p, end, &len, ASN1_UTC_TIME)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_DATE | ret);
 
-       memset(date, 0, sizeof(date));
-       memcpy(date, *p, (len < (int)sizeof(date) - 1) ?
-              len : (int)sizeof(date) - 1);
+  memset(date, 0, sizeof(date));
+  memcpy(date, *p, (len < (int)sizeof(date) - 1) ?
+         len : (int)sizeof(date) - 1);
 
-       if (sscanf(date, "%2d%2d%2d%2d%2d%2d",
-                  &from->year, &from->mon, &from->day,
-                  &from->hour, &from->min, &from->sec) < 5)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_DATE);
+  if (sscanf(date, "%2d%2d%2d%2d%2d%2d",
+       &from->year, &from->mon, &from->day,
+       &from->hour, &from->min, &from->sec) < 5)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_DATE);
 
-       from->year += 100 * (from->year < 90);
-       from->year += 1900;
+  from->year += 100 * (from->year < 90);
+  from->year += 1900;
 
-       *p += len;
+  *p += len;
 
-       if ((ret = asn1_get_tag(p, end, &len, ASN1_UTC_TIME)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_DATE | ret);
+  if ((ret = asn1_get_tag(p, end, &len, ASN1_UTC_TIME)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_DATE | ret);
 
-       memset(date, 0, sizeof(date));
-       memcpy(date, *p, (len < (int)sizeof(date) - 1) ?
-              len : (int)sizeof(date) - 1);
+  memset(date, 0, sizeof(date));
+  memcpy(date, *p, (len < (int)sizeof(date) - 1) ?
+         len : (int)sizeof(date) - 1);
 
-       if (sscanf(date, "%2d%2d%2d%2d%2d%2d",
-                  &to->year, &to->mon, &to->day,
-                  &to->hour, &to->min, &to->sec) < 5)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_DATE);
+  if (sscanf(date, "%2d%2d%2d%2d%2d%2d",
+       &to->year, &to->mon, &to->day,
+       &to->hour, &to->min, &to->sec) < 5)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_DATE);
 
-       to->year += 100 * (to->year < 90);
-       to->year += 1900;
+  to->year += 100 * (to->year < 90);
+  to->year += 1900;
 
-       *p += len;
+  *p += len;
 
-       if (*p != end)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_DATE |
-                       TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
+  if (*p != end)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_DATE |
+      TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
 
-       return (0);
+  return (0);
 }
 
 static int x509_get_sig(unsigned char **p, const unsigned char *end, x509_buf 
* sig)
 {
-       int ret, len;
+  int ret, len;
 
-       sig->tag = **p;
+  sig->tag = **p;
 
-       if ((ret = asn1_get_tag(p, end, &len, ASN1_BIT_STRING)) != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_SIGNATURE | ret);
+  if ((ret = asn1_get_tag(p, end, &len, ASN1_BIT_STRING)) != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_SIGNATURE | ret);
 
-       if (--len < 1 || *(*p)++ != 0)
-               return (TROPICSSL_ERR_X509_CERT_INVALID_SIGNATURE);
+  if (--len < 1 || *(*p)++ != 0)
+    return (TROPICSSL_ERR_X509_CERT_INVALID_SIGNATURE);
 
-       sig->len = len;
-       sig->p = *p;
+  sig->len = len;
+  sig->p = *p;
 
-       *p += len;
+  *p += len;
 
-       return (0);
+  return (0);
 }
 
 /*
  * X.509 v2/v3 unique identifier (not parsed)
  */
 static int x509_get_uid(unsigned char **p,
-                       const unsigned char *end, x509_buf * uid, int n)
+      const unsigned char *end, x509_buf * uid, int n)
 {
-       int ret;
+  int ret;
 
-       if (*p == end)
-               return (0);
+  if (*p == end)
+    return (0);
 
-       uid->tag = **p;
+  uid->tag = **p;
 
-       if ((ret = asn1_get_tag(p, end, &uid->len,
-                               ASN1_CONTEXT_SPECIFIC | ASN1_CONSTRUCTED | n))
-           != 0) {
-               if (ret == TROPICSSL_ERR_ASN1_UNEXPECTED_TAG)
-                       return (0);
+  if ((ret = asn1_get_tag(p, end, &uid->len,
+        ASN1_CONTEXT_SPECIFIC | ASN1_CONSTRUCTED | n))
+      != 0) {
+    if (ret == TROPICSSL_ERR_ASN1_UNEXPECTED_TAG)
+      return (0);
 
-               return (ret);
-       }
+    return (ret);
+  }
 
-       uid->p = *p;
-       *p += uid->len;
+  uid->p = *p;
+  *p += uid->len;
 
-       return (0);
+  return (0);
 }
 
 /*
@@ -419,191 +419,191 @@ static int x509_get_uid(unsigned char **
  */
 static int _x509parse_crt_1(x509_cert * chain, unsigned char *buf, int buflen)
 {
-       int ret, len;
-       unsigned char *p;
-       const unsigned char *end;
-       x509_cert *crt;
-
-       crt = chain;
-
-       /*
-        * Copy the raw DER data.
-        */
-       p = (unsigned char *)malloc(len = buflen);
-
-       if (p == NULL)
-               return (1);
-
-       memcpy(p, buf, buflen);
-
-       buflen = 0;
-
-       crt->raw.p = p;
-       crt->raw.len = len;
-       end = p + len;
-
-       /*
-        * Certificate  ::=      SEQUENCE  {
-        *              tbsCertificate           TBSCertificate,
-        *              signatureAlgorithm       AlgorithmIdentifier,
-        *              signatureValue           BIT STRING      }
-        */
-       if ((ret = asn1_get_tag(&p, end, &len,
-                               ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
-               return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT);
-       }
-
-       if (len != (int)(end - p)) {
-               return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT |
-                       TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
-       }
-
-       /*
-        * TBSCertificate  ::=  SEQUENCE  {
-        */
-       crt->tbs.p = p;
-
-       if ((ret = asn1_get_tag(&p, end, &len,
-                               ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
-               return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT | ret);
-       }
-
-       end = p + len;
-       crt->tbs.len = end - crt->tbs.p;
-
-       /*
-        * Version      ::=      INTEGER  {      v1(0), v2(1), v3(2)  }
-        *
-        * CertificateSerialNumber      ::=      INTEGER
-        *
-        * signature                    AlgorithmIdentifier
-        */
-       if ((ret = x509_get_version(&p, end, &crt->version)) != 0 ||
-           (ret = x509_get_serial(&p, end, &crt->serial)) != 0 ||
-           (ret = x509_get_alg(&p, end, &crt->sig_oid1)) != 0) {
-               return (ret);
-       }
-
-       crt->version++;
-
-       if (crt->version > 3) {
-               return (TROPICSSL_ERR_X509_CERT_UNKNOWN_VERSION);
-       }
-
-       if (crt->sig_oid1.len != 9 ||
-           memcmp(crt->sig_oid1.p, OID_PKCS1, 8) != 0) {
-               return (TROPICSSL_ERR_X509_CERT_UNKNOWN_SIG_ALG);
-       }
-
-       if (crt->sig_oid1.p[8] < 2 || crt->sig_oid1.p[8] > 5) {
-               return (TROPICSSL_ERR_X509_CERT_UNKNOWN_SIG_ALG);
-       }
-
-       /*
-        * issuer                               Name
-        */
-       crt->issuer_raw.p = p;
-
-       if ((ret = asn1_get_tag(&p, end, &len,
-                               ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
-               return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT | ret);
-       }
-
-       if ((ret = x509_get_name(&p, p + len, &crt->issuer)) != 0) {
-               return (ret);
-       }
-
-       crt->issuer_raw.len = p - crt->issuer_raw.p;
-
-       /*
-        * Validity ::= SEQUENCE {
-        *              notBefore          Time,
-        *              notAfter           Time }
-        *
-        */
-       if ((ret = x509_get_dates(&p, end, &crt->valid_from,
-                                 &crt->valid_to)) != 0) {
-               return (ret);
-       }
-
-       /*
-        * subject                              Name
-        */
-       crt->subject_raw.p = p;
-
-       if ((ret = asn1_get_tag(&p, end, &len,
-                               ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
-               return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT | ret);
-       }
-
-       if ((ret = x509_get_name(&p, p + len, &crt->subject)) != 0) {
-               return (ret);
-       }
-
-       crt->subject_raw.len = p - crt->subject_raw.p;
-
-       /*
-        * SubjectPublicKeyInfo  ::=  SEQUENCE
-        *              algorithm                        AlgorithmIdentifier,
-        *              subjectPublicKey         BIT STRING      }
-        */
-       if ((ret = asn1_get_tag(&p, end, &len,
-                               ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
-               return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT | ret);
-       }
+  int ret, len;
+  unsigned char *p;
+  const unsigned char *end;
+  x509_cert *crt;
+
+  crt = chain;
+
+  /*
+   * Copy the raw DER data.
+   */
+  p = (unsigned char *)malloc(len = buflen);
+
+  if (p == NULL)
+    return (1);
+
+  memcpy(p, buf, buflen);
+
+  buflen = 0;
+
+  crt->raw.p = p;
+  crt->raw.len = len;
+  end = p + len;
+
+  /*
+   * Certificate  ::=      SEQUENCE  {
+   *              tbsCertificate           TBSCertificate,
+   *              signatureAlgorithm       AlgorithmIdentifier,
+   *              signatureValue           BIT STRING      }
+   */
+  if ((ret = asn1_get_tag(&p, end, &len,
+        ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
+    return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT);
+  }
+
+  if (len != (int)(end - p)) {
+    return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT |
+      TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
+  }
+
+  /*
+   * TBSCertificate  ::=  SEQUENCE  {
+   */
+  crt->tbs.p = p;
+
+  if ((ret = asn1_get_tag(&p, end, &len,
+        ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
+    return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT | ret);
+  }
+
+  end = p + len;
+  crt->tbs.len = end - crt->tbs.p;
+
+  /*
+   * Version      ::=      INTEGER  {      v1(0), v2(1), v3(2)  }
+   *
+   * CertificateSerialNumber      ::=      INTEGER
+   *
+   * signature                    AlgorithmIdentifier
+   */
+  if ((ret = x509_get_version(&p, end, &crt->version)) != 0 ||
+      (ret = x509_get_serial(&p, end, &crt->serial)) != 0 ||
+      (ret = x509_get_alg(&p, end, &crt->sig_oid1)) != 0) {
+    return (ret);
+  }
+
+  crt->version++;
+
+  if (crt->version > 3) {
+    return (TROPICSSL_ERR_X509_CERT_UNKNOWN_VERSION);
+  }
+
+  if (crt->sig_oid1.len != 9 ||
+      memcmp(crt->sig_oid1.p, OID_PKCS1, 8) != 0) {
+    return (TROPICSSL_ERR_X509_CERT_UNKNOWN_SIG_ALG);
+  }
+
+  if (crt->sig_oid1.p[8] < 2 || crt->sig_oid1.p[8] > 5) {
+    return (TROPICSSL_ERR_X509_CERT_UNKNOWN_SIG_ALG);
+  }
+
+  /*
+   * issuer                               Name
+   */
+  crt->issuer_raw.p = p;
+
+  if ((ret = asn1_get_tag(&p, end, &len,
+        ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
+    return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT | ret);
+  }
+
+  if ((ret = x509_get_name(&p, p + len, &crt->issuer)) != 0) {
+    return (ret);
+  }
+
+  crt->issuer_raw.len = p - crt->issuer_raw.p;
+
+  /*
+   * Validity ::= SEQUENCE {
+   *              notBefore          Time,
+   *              notAfter           Time }
+   *
+   */
+  if ((ret = x509_get_dates(&p, end, &crt->valid_from,
+          &crt->valid_to)) != 0) {
+    return (ret);
+  }
+
+  /*
+   * subject                              Name
+   */
+  crt->subject_raw.p = p;
+
+  if ((ret = asn1_get_tag(&p, end, &len,
+        ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
+    return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT | ret);
+  }
+
+  if ((ret = x509_get_name(&p, p + len, &crt->subject)) != 0) {
+    return (ret);
+  }
+
+  crt->subject_raw.len = p - crt->subject_raw.p;
+
+  /*
+   * SubjectPublicKeyInfo  ::=  SEQUENCE
+   *              algorithm                        AlgorithmIdentifier,
+   *              subjectPublicKey         BIT STRING      }
+   */
+  if ((ret = asn1_get_tag(&p, end, &len,
+        ASN1_CONSTRUCTED | ASN1_SEQUENCE)) != 0) {
+    return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT | ret);
+  }
 
   /* Skip pubkey. */
   p += len;
 
-       /*
-        *      issuerUniqueID  [1]      IMPLICIT UniqueIdentifier OPTIONAL,
-        *                                               -- If present, version 
shall be v2 or v3
-        *      subjectUniqueID [2]      IMPLICIT UniqueIdentifier OPTIONAL,
-        *                                               -- If present, version 
shall be v2 or v3
-        *      extensions              [3]      EXPLICIT Extensions OPTIONAL
-        *                                               -- If present, version 
shall be v3
-        */
-       if (crt->version == 2 || crt->version == 3) {
-               ret = x509_get_uid(&p, end, &crt->issuer_id, 1);
-               if (ret != 0) {
-                       return (ret);
-               }
-       }
-
-       if (crt->version == 2 || crt->version == 3) {
-               ret = x509_get_uid(&p, end, &crt->subject_id, 2);
-               if (ret != 0) {
-                       return (ret);
-               }
-       }
-
-       if (p != end) {
-               return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT |
-                       TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
-       }
-
-       end = crt->raw.p + crt->raw.len;
-
-       /*
-        *      signatureAlgorithm       AlgorithmIdentifier,
-        *      signatureValue           BIT STRING
-        */
-       if ((ret = x509_get_alg(&p, end, &crt->sig_oid2)) != 0) {
-               return (ret);
-       }
-
-       if (memcmp(crt->sig_oid1.p, crt->sig_oid2.p, 9) != 0) {
-               return (TROPICSSL_ERR_X509_CERT_SIG_MISMATCH);
-       }
-
-       if ((ret = x509_get_sig(&p, end, &crt->sig)) != 0) {
-               return (ret);
-       }
-
-       if (p != end) {
-               return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT |
-                       TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
-       }
+  /*
+   *      issuerUniqueID  [1]      IMPLICIT UniqueIdentifier OPTIONAL,
+   *                                               -- If present, version 
shall be v2 or v3
+   *      subjectUniqueID [2]      IMPLICIT UniqueIdentifier OPTIONAL,
+   *                                               -- If present, version 
shall be v2 or v3
+   *      extensions              [3]      EXPLICIT Extensions OPTIONAL
+   *                                               -- If present, version 
shall be v3
+   */
+  if (crt->version == 2 || crt->version == 3) {
+    ret = x509_get_uid(&p, end, &crt->issuer_id, 1);
+    if (ret != 0) {
+      return (ret);
+    }
+  }
+
+  if (crt->version == 2 || crt->version == 3) {
+    ret = x509_get_uid(&p, end, &crt->subject_id, 2);
+    if (ret != 0) {
+      return (ret);
+    }
+  }
+
+  if (p != end) {
+    return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT |
+      TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
+  }
+
+  end = crt->raw.p + crt->raw.len;
+
+  /*
+   *      signatureAlgorithm       AlgorithmIdentifier,
+   *      signatureValue           BIT STRING
+   */
+  if ((ret = x509_get_alg(&p, end, &crt->sig_oid2)) != 0) {
+    return (ret);
+  }
+
+  if (memcmp(crt->sig_oid1.p, crt->sig_oid2.p, 9) != 0) {
+    return (TROPICSSL_ERR_X509_CERT_SIG_MISMATCH);
+  }
+
+  if ((ret = x509_get_sig(&p, end, &crt->sig)) != 0) {
+    return (ret);
+  }
+
+  if (p != end) {
+    return (TROPICSSL_ERR_X509_CERT_INVALID_FORMAT |
+      TROPICSSL_ERR_ASN1_LENGTH_MISMATCH);
+  }
 
-       return (0);
+  return (0);
 }


Reply via email to