i=ssl2_read(s,(char *)&(p[s->init_num]), (unsigned int)s->s2->challenge_length-s->init_num); if (i < ((int)s->s2->challenge_length-s->init_num))
len = 1 + s->s2->challenge_length; n =  len - s->init_num; i = ssl2_read(s,(char *)&(p[s->init_num]),n); if (i < n)
static int get_server_verify(SSL *s)	{	unsigned char *p;	int i;	p=(unsigned char *)s->init_buf->data;	if (s->state == SSL2_ST_GET_SERVER_VERIFY_A)		{		i=ssl2_read(s,(char *)&(p[s->init_num]),1-s->init_num);		if (i < (1-s->init_num)) 			return(ssl2_part_read(s,SSL_F_GET_SERVER_VERIFY,i));		s->state= SSL2_ST_GET_SERVER_VERIFY_B;		s->init_num=0;		if (*p != SSL2_MT_SERVER_VERIFY)			{			if (p[0] != SSL2_MT_ERROR)				{				ssl2_return_error(s,SSL2_PE_UNDEFINED_ERROR);				SSLerr(SSL_F_GET_SERVER_VERIFY,					SSL_R_READ_WRONG_PACKET_TYPE);				}			else				SSLerr(SSL_F_GET_SERVER_VERIFY,					SSL_R_PEER_ERROR);			return(-1);			}		}		p=(unsigned char *)s->init_buf->data;	i=ssl2_read(s,(char *)&(p[s->init_num]),		(unsigned int)s->s2->challenge_length-s->init_num);	if (i < ((int)s->s2->challenge_length-s->init_num))		return(ssl2_part_read(s,SSL_F_GET_SERVER_VERIFY,i));	if (memcmp(p,s->s2->challenge,(unsigned int)s->s2->challenge_length) != 0)		{		ssl2_return_error(s,SSL2_PE_UNDEFINED_ERROR);		SSLerr(SSL_F_GET_SERVER_VERIFY,SSL_R_CHALLENGE_IS_DIFFERENT);		return(-1);		}	return(1);	}