qsort(	(char *)sorted, SSL3_NUM_CIPHERS,sizeof(SSL_CIPHER *), FP_ICC ssl_cipher_ptr_id_cmp);
qsort(sorted, SSL3_NUM_CIPHERS,sizeof(SSL_CIPHER *), FP_ICC ssl_cipher_ptr_id_cmp);
SSL_CIPHER *ssl3_get_cipher_by_char(const unsigned char *p)	{	static int init=1;	static SSL_CIPHER *sorted[SSL3_NUM_CIPHERS];	SSL_CIPHER c,*cp= &c,**cpp;	unsigned long id;	int i;	if (init)		{		CRYPTO_w_lock(CRYPTO_LOCK_SSL);		for (i=0; i<SSL3_NUM_CIPHERS; i++)			sorted[i]= &(ssl3_ciphers[i]);		qsort(	(char *)sorted,			SSL3_NUM_CIPHERS,sizeof(SSL_CIPHER *),			FP_ICC ssl_cipher_ptr_id_cmp);		CRYPTO_w_unlock(CRYPTO_LOCK_SSL);		init=0;		}	id=0x03000000L|((unsigned long)p[0]<<8L)|(unsigned long)p[1];	c.id=id;	cpp=(SSL_CIPHER **)OBJ_bsearch((char *)&cp,		(char *)sorted,		SSL3_NUM_CIPHERS,sizeof(SSL_CIPHER *),		FP_ICC ssl_cipher_ptr_id_cmp);	if ((cpp == NULL) || !(*cpp)->valid)		return(NULL);	else		return(*cpp);	}