int i,n,b,bl,ret;
int n,ret; unsigned int i, b, bl;
int EVP_EncryptFinal_ex(EVP_CIPHER_CTX *ctx, unsigned char *out, int *outl)	{	int i,n,b,bl,ret;	b=ctx->cipher->block_size;	OPENSSL_assert(b <= sizeof ctx->buf);	if (b == 1)		{		*outl=0;		return 1;		}	bl=ctx->buf_len;	if (ctx->flags & EVP_CIPH_NO_PADDING)		{		if(bl)			{			EVPerr(EVP_F_EVP_ENCRYPTFINAL,EVP_R_DATA_NOT_MULTIPLE_OF_BLOCK_LENGTH);			return 0;			}		*outl = 0;		return 1;		}	n=b-bl;	for (i=bl; i<b; i++)		ctx->buf[i]=n;	ret=ctx->cipher->do_cipher(ctx,out,ctx->buf,b);	if(ret)		*outl=b;	return ret;	}