Commit eb1c48be authored by Dr. Stephen Henson's avatar Dr. Stephen Henson
Browse files

Add new type ossl_ssize_t instead of ssize_t and move definitions to

e_os2.h, this should fix WIN32 compilation issues and hopefully avoid
conflicts with other headers which may workaround ssize_t in different ways.
parent 2fd9664b
Loading
Loading
Loading
Loading
+5 −0
Original line number Original line Diff line number Diff line
@@ -4,6 +4,11 @@


 Changes between 1.0.0 and 1.1.0  [xx XXX xxxx]
 Changes between 1.0.0 and 1.1.0  [xx XXX xxxx]


  *) Use type ossl_ssize_t instad of ssize_t which isn't available on
     all platforms. Move ssize_t definition from e_os.h to the public
     header file e_os2.h as it now appears in public header file cms.h
     [Steve Henson]

  *) New function OPENSSL_gmtime_diff to find the difference in days
  *) New function OPENSSL_gmtime_diff to find the difference in days
     and seconds between two tm structures. This will be used to provide
     and seconds between two tm structures. This will be used to provide
     additional functionality for ASN1_TIME.
     additional functionality for ASN1_TIME.
+9 −9
Original line number Original line Diff line number Diff line
@@ -277,10 +277,10 @@ static int bio_read(BIO *bio, char *buf, int size_)
 */
 */
/* WARNING: The non-copying interface is largely untested as of yet
/* WARNING: The non-copying interface is largely untested as of yet
 * and may contain bugs. */
 * and may contain bugs. */
static ssize_t bio_nread0(BIO *bio, char **buf)
static ossl_ssize_t bio_nread0(BIO *bio, char **buf)
	{
	{
	struct bio_bio_st *b, *peer_b;
	struct bio_bio_st *b, *peer_b;
	ssize_t num;
	ossl_ssize_t num;
	
	
	BIO_clear_retry_flags(bio);
	BIO_clear_retry_flags(bio);


@@ -315,15 +315,15 @@ static ssize_t bio_nread0(BIO *bio, char **buf)
	return num;
	return num;
	}
	}


static ssize_t bio_nread(BIO *bio, char **buf, size_t num_)
static ossl_ssize_t bio_nread(BIO *bio, char **buf, size_t num_)
	{
	{
	struct bio_bio_st *b, *peer_b;
	struct bio_bio_st *b, *peer_b;
	ssize_t num, available;
	ossl_ssize_t num, available;


	if (num_ > SSIZE_MAX)
	if (num_ > SSIZE_MAX)
		num = SSIZE_MAX;
		num = SSIZE_MAX;
	else
	else
		num = (ssize_t)num_;
		num = (ossl_ssize_t)num_;


	available = bio_nread0(bio, buf);
	available = bio_nread0(bio, buf);
	if (num > available)
	if (num > available)
@@ -428,7 +428,7 @@ static int bio_write(BIO *bio, const char *buf, int num_)
 * (example usage:  bio_nwrite0(), write to buffer, bio_nwrite()
 * (example usage:  bio_nwrite0(), write to buffer, bio_nwrite()
 *  or just         bio_nwrite(), write to buffer)
 *  or just         bio_nwrite(), write to buffer)
 */
 */
static ssize_t bio_nwrite0(BIO *bio, char **buf)
static ossl_ssize_t bio_nwrite0(BIO *bio, char **buf)
	{
	{
	struct bio_bio_st *b;
	struct bio_bio_st *b;
	size_t num;
	size_t num;
@@ -476,15 +476,15 @@ static ssize_t bio_nwrite0(BIO *bio, char **buf)
	return num;
	return num;
	}
	}


static ssize_t bio_nwrite(BIO *bio, char **buf, size_t num_)
static ossl_ssize_t bio_nwrite(BIO *bio, char **buf, size_t num_)
	{
	{
	struct bio_bio_st *b;
	struct bio_bio_st *b;
	ssize_t num, space;
	ossl_ssize_t num, space;


	if (num_ > SSIZE_MAX)
	if (num_ > SSIZE_MAX)
		num = SSIZE_MAX;
		num = SSIZE_MAX;
	else
	else
		num = (ssize_t)num_;
		num = (ossl_ssize_t)num_;


	space = bio_nwrite0(bio, buf);
	space = bio_nwrite0(bio, buf);
	if (num > space)
	if (num > space)
+5 −3
Original line number Original line Diff line number Diff line
@@ -185,7 +185,7 @@ int CMS_decrypt_set1_key(CMS_ContentInfo *cms,
				unsigned char *key, size_t keylen,
				unsigned char *key, size_t keylen,
				unsigned char *id, size_t idlen);
				unsigned char *id, size_t idlen);
int CMS_decrypt_set1_password(CMS_ContentInfo *cms, 
int CMS_decrypt_set1_password(CMS_ContentInfo *cms, 
				unsigned char *pass, ssize_t passlen);
				unsigned char *pass, ossl_ssize_t passlen);


STACK_OF(CMS_RecipientInfo) *CMS_get0_RecipientInfos(CMS_ContentInfo *cms);
STACK_OF(CMS_RecipientInfo) *CMS_get0_RecipientInfos(CMS_ContentInfo *cms);
int CMS_RecipientInfo_type(CMS_RecipientInfo *ri);
int CMS_RecipientInfo_type(CMS_RecipientInfo *ri);
@@ -222,11 +222,13 @@ int CMS_RecipientInfo_kekri_id_cmp(CMS_RecipientInfo *ri,
					const unsigned char *id, size_t idlen);
					const unsigned char *id, size_t idlen);


int CMS_RecipientInfo_set0_password(CMS_RecipientInfo *ri, 
int CMS_RecipientInfo_set0_password(CMS_RecipientInfo *ri, 
					unsigned char *pass, ssize_t passlen);
					unsigned char *pass,
					ossl_ssize_t passlen);


CMS_RecipientInfo *CMS_add0_recipient_password(CMS_ContentInfo *cms,
CMS_RecipientInfo *CMS_add0_recipient_password(CMS_ContentInfo *cms,
					int iter, int wrap_nid, int pbe_nid,
					int iter, int wrap_nid, int pbe_nid,
					unsigned char *pass, ssize_t passlen,
					unsigned char *pass,
					ossl_ssize_t passlen,
					const EVP_CIPHER *kekciph);
					const EVP_CIPHER *kekciph);


int CMS_RecipientInfo_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri);
int CMS_RecipientInfo_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri);
+3 −2
Original line number Original line Diff line number Diff line
@@ -63,7 +63,7 @@
#include "asn1_locl.h"
#include "asn1_locl.h"


int CMS_RecipientInfo_set0_password(CMS_RecipientInfo *ri, 
int CMS_RecipientInfo_set0_password(CMS_RecipientInfo *ri, 
				unsigned char *pass, ssize_t passlen)
				unsigned char *pass, ossl_ssize_t passlen)
	{
	{
	CMS_PasswordRecipientInfo *pwri;
	CMS_PasswordRecipientInfo *pwri;
	if (ri->type != CMS_RECIPINFO_PASS)
	if (ri->type != CMS_RECIPINFO_PASS)
@@ -82,7 +82,8 @@ int CMS_RecipientInfo_set0_password(CMS_RecipientInfo *ri,


CMS_RecipientInfo *CMS_add0_recipient_password(CMS_ContentInfo *cms,
CMS_RecipientInfo *CMS_add0_recipient_password(CMS_ContentInfo *cms,
					int iter, int wrap_nid, int pbe_nid,
					int iter, int wrap_nid, int pbe_nid,
					unsigned char *pass, ssize_t passlen,
					unsigned char *pass,
					ossl_ssize_t passlen,
					const EVP_CIPHER *kekciph)
					const EVP_CIPHER *kekciph)
	{
	{
	CMS_RecipientInfo *ri = NULL;
	CMS_RecipientInfo *ri = NULL;
+1 −1
Original line number Original line Diff line number Diff line
@@ -682,7 +682,7 @@ int CMS_decrypt_set1_key(CMS_ContentInfo *cms,
	}
	}


int CMS_decrypt_set1_password(CMS_ContentInfo *cms, 
int CMS_decrypt_set1_password(CMS_ContentInfo *cms, 
				unsigned char *pass, ssize_t passlen)
				unsigned char *pass, ossl_ssize_t passlen)
	{
	{
	STACK_OF(CMS_RecipientInfo) *ris;
	STACK_OF(CMS_RecipientInfo) *ris;
	CMS_RecipientInfo *ri;
	CMS_RecipientInfo *ri;
Loading