while(SSL_CTX_has_matching_session_id(ssl->ctx, id, *id_len) &&
while(SSL_has_matching_session_id(ssl, id, *id_len) &&
static int def_generate_session_id(const SSL *ssl, unsigned char *id,				unsigned int *id_len){	unsigned int retry = 0;	do		RAND_pseudo_bytes(id, *id_len);	while(SSL_CTX_has_matching_session_id(ssl->ctx, id, *id_len) &&		(++retry < MAX_SESS_ID_ATTEMPTS));	if(retry < MAX_SESS_ID_ATTEMPTS)		return 1;	/* else - woops a session_id match */	/* XXX We should also check the external cache --	 * but the probability of a collision is negligible, and	 * we could not prevent the concurrent creation of sessions	 * with identical IDs since we currently don't have means	 * to atomically check whether a session ID already exists	 * and make a reservation for it if it does not	 * (this problem applies to the internal cache as well).	 */	return 0;}