diff --git a/asn1.h b/asn1.h index 50c2e14421f6a5aab194d01bdb5ae87653e2f498..ef7e94705174eaa12a060f673e98c9a00d08a7a3 100644 --- a/asn1.h +++ b/asn1.h @@ -93,23 +93,23 @@ enum asn1_iterator_result /* Parsing DER objects. */ struct asn1_der_iterator { - unsigned buffer_length; + size_t buffer_length; const uint8_t *buffer; /* Next object to parse. */ - unsigned pos; + size_t pos; enum asn1_type type; /* Pointer to the current object */ - unsigned length; + size_t length; const uint8_t *data; }; /* Initializes the iterator. */ enum asn1_iterator_result asn1_der_iterator_first(struct asn1_der_iterator *iterator, - unsigned length, const uint8_t *input); + size_t length, const uint8_t *input); enum asn1_iterator_result asn1_der_iterator_next(struct asn1_der_iterator *iterator); diff --git a/der-iterator.c b/der-iterator.c index 2e6efd5fac85f0775e6f090f1e542cb5084c2de9..236d3cb58def85bcfdb0b66222205f88c8f7d969 100644 --- a/der-iterator.c +++ b/der-iterator.c @@ -87,7 +87,7 @@ enum { * first element. */ static void asn1_der_iterator_init(struct asn1_der_iterator *iterator, - unsigned length, const uint8_t *input) + size_t length, const uint8_t *input) { iterator->buffer_length = length; iterator->buffer = input; @@ -133,7 +133,7 @@ asn1_der_iterator_next(struct asn1_der_iterator *i) if (LEFT(i) < k) return ASN1_ITERATOR_ERROR; - if (k > sizeof(unsigned)) + if (k > sizeof(i->length)) return ASN1_ITERATOR_ERROR; i->pos += k; @@ -164,7 +164,7 @@ asn1_der_iterator_next(struct asn1_der_iterator *i) enum asn1_iterator_result asn1_der_iterator_first(struct asn1_der_iterator *i, - unsigned length, const uint8_t *input) + size_t length, const uint8_t *input) { asn1_der_iterator_init(i, length, input); return asn1_der_iterator_next(i); @@ -216,7 +216,7 @@ asn1_der_get_uint32(struct asn1_der_iterator *i, /* Big endian, two's complement, minimum number of octets (except 0, which is encoded as a single octet */ uint32_t value = 0; - unsigned length = i->length; + size_t length = i->length; unsigned k; if (!length || length > 5) diff --git a/der2dsa.c b/der2dsa.c index 023a9e742a3e5a42a8946e4a57158aa2254a143c..9d439c3e8cff8966b4dca89138db7657374beb9e 100644 --- a/der2dsa.c +++ b/der2dsa.c @@ -103,9 +103,9 @@ dsa_openssl_private_key_from_der_iterator(struct dsa_public_key *pub, int dsa_openssl_private_key_from_der(struct dsa_public_key *pub, - struct dsa_private_key *priv, - unsigned p_max_bits, - unsigned length, const uint8_t *data) + struct dsa_private_key *priv, + unsigned p_max_bits, + size_t length, const uint8_t *data) { struct asn1_der_iterator i; enum asn1_iterator_result res; diff --git a/der2rsa.c b/der2rsa.c index 3c94ea5a270b3f5b5ceaf6ee36ee70f3d659beee..30fe2e195eb64168e407f370122d741233c2296d 100644 --- a/der2rsa.c +++ b/der2rsa.c @@ -116,7 +116,7 @@ int rsa_keypair_from_der(struct rsa_public_key *pub, struct rsa_private_key *priv, unsigned limit, - unsigned length, const uint8_t *data) + size_t length, const uint8_t *data) { struct asn1_der_iterator i; enum asn1_iterator_result res; diff --git a/dsa.h b/dsa.h index 7ee26249d76eb62e09e96acef0c6ed3ac8b7c617..91d233a51d3783b84865ec74d20b1c0073f09ad2 100644 --- a/dsa.h +++ b/dsa.h @@ -268,7 +268,7 @@ int dsa_openssl_private_key_from_der(struct dsa_public_key *pub, struct dsa_private_key *priv, unsigned p_max_bits, - unsigned length, const uint8_t *data); + size_t length, const uint8_t *data); /* Internal functions. */ diff --git a/rsa.h b/rsa.h index 4226f389751f08fe35e6e18557672306139d09ce..3ad7e9ab7b602ba9839f0a85176aaa05fc074af0 100644 --- a/rsa.h +++ b/rsa.h @@ -386,7 +386,7 @@ int rsa_keypair_from_der(struct rsa_public_key *pub, struct rsa_private_key *priv, unsigned limit, - unsigned length, const uint8_t *data); + size_t length, const uint8_t *data); /* OpenPGP format. Experimental interface, subject to change. */ int