IMPLEMENT_dtls1_meth_func(dtls1_base_method,
IMPLEMENT_dtls1_meth_func(dtlsv1_base_method,
IMPLEMENT_dtls1_meth_func(dtls1_base_method,			ssl_undefined_function,			ssl_undefined_function,			ssl_bad_method)int dtls1_new(SSL *s)	{	DTLS1_STATE *d1;	if (!ssl3_new(s)) return(0);	if ((d1=OPENSSL_malloc(sizeof *d1)) == NULL) return (0);	memset(d1,0, sizeof *d1);	/* d1->handshake_epoch=0; */#if defined(OPENSSL_SYS_VMS) || defined(VMS_TEST)	d1->bitmap.length=64;#else	d1->bitmap.length=sizeof(d1->bitmap.map) * 8;#endif	pq_64bit_init(&(d1->bitmap.map));	pq_64bit_init(&(d1->bitmap.max_seq_num));		pq_64bit_init(&(d1->next_bitmap.map));	pq_64bit_init(&(d1->next_bitmap.max_seq_num));	d1->unprocessed_rcds.q=pqueue_new();	d1->processed_rcds.q=pqueue_new();	d1->buffered_messages = pqueue_new();	d1->sent_messages=pqueue_new();	if ( s->server)		{		d1->cookie_len = sizeof(s->d1->cookie);		}	if( ! d1->unprocessed_rcds.q || ! d1->processed_rcds.q         || ! d1->buffered_messages || ! d1->sent_messages)		{        if ( d1->unprocessed_rcds.q) pqueue_free(d1->unprocessed_rcds.q);        if ( d1->processed_rcds.q) pqueue_free(d1->processed_rcds.q);        if ( d1->buffered_messages) pqueue_free(d1->buffered_messages);		if ( d1->sent_messages) pqueue_free(d1->sent_messages);		OPENSSL_free(d1);		return (0);		}	s->d1=d1;	s->method->ssl_clear(s);	return(1);	}