diff --git a/include/openssl/ssl3.h b/include/openssl/ssl3.h
index 42e2154..54e8c1e 100644
--- a/include/openssl/ssl3.h
+++ b/include/openssl/ssl3.h
@@ -338,7 +338,6 @@
 #define SSL3_CT_FORTEZZA_DMS			20
 
 
-#define SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS	0x0001
 /* TODO(davidben): This flag can probably be merged into s3->change_cipher_spec
  * to something tri-state. (Normal / Expect CCS / Between CCS and Finished). */
 #define SSL3_FLAGS_EXPECT_CCS			0x0080
diff --git a/ssl/d1_pkt.c b/ssl/d1_pkt.c
index 9356580..2f75d2f 100644
--- a/ssl/d1_pkt.c
+++ b/ssl/d1_pkt.c
@@ -954,9 +954,7 @@
 			s->msg_callback(0, s->version, SSL3_RT_HANDSHAKE, 
 				s->d1->handshake_fragment, 4, s, s->msg_callback_arg);
 
-		if (SSL_is_init_finished(s) &&
-			!(s->s3->flags & SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS) &&
-			!s->s3->renegotiate)
+		if (SSL_is_init_finished(s) && !s->s3->renegotiate)
 			{
 			s->d1->handshake_read_seq++;
 			s->new_session = 1;
@@ -1109,8 +1107,7 @@
 			goto start;
 			}
 
-		if (((s->state&SSL_ST_MASK) == SSL_ST_OK) &&
-			!(s->s3->flags & SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS))
+		if ((s->state&SSL_ST_MASK) == SSL_ST_OK)
 			{
 			s->state = s->server ? SSL_ST_ACCEPT : SSL_ST_CONNECT;
 			s->renegotiate=1;
diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c
index cbb4056..059f695 100644
--- a/ssl/s3_lib.c
+++ b/ssl/s3_lib.c
@@ -2025,13 +2025,10 @@
 int ssl3_renegotiate(SSL *s)
 	{
 	if (s->handshake_func == NULL)
-		return(1);
+		return 1;
 
-	if (s->s3->flags & SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS)
-		return(0);
-
-	s->s3->renegotiate=1;
-	return(1);
+	s->s3->renegotiate = 1;
+	return 1;
 	}
 
 int ssl3_renegotiate_check(SSL *s)
diff --git a/ssl/s3_pkt.c b/ssl/s3_pkt.c
index 3ccb0a0d..4cb7e6a 100644
--- a/ssl/s3_pkt.c
+++ b/ssl/s3_pkt.c
@@ -1133,9 +1133,7 @@
 		if (s->msg_callback)
 			s->msg_callback(0, s->version, SSL3_RT_HANDSHAKE, s->s3->handshake_fragment, 4, s, s->msg_callback_arg);
 
-		if (SSL_is_init_finished(s) &&
-			!(s->s3->flags & SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS) &&
-			!s->s3->renegotiate)
+		if (SSL_is_init_finished(s) && !s->s3->renegotiate)
 			{
 			ssl3_renegotiate(s);
 			if (ssl3_renegotiate_check(s))
@@ -1271,8 +1269,7 @@
 	/* Unexpected handshake message (Client Hello, or protocol violation) */
 	if ((s->s3->handshake_fragment_len >= 4) &&	!s->in_handshake)
 		{
-		if (((s->state&SSL_ST_MASK) == SSL_ST_OK) &&
-			!(s->s3->flags & SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS))
+		if ((s->state&SSL_ST_MASK) == SSL_ST_OK)
 			{
 			s->state = s->server ? SSL_ST_ACCEPT : SSL_ST_CONNECT;
 			s->renegotiate=1;
