diff --git a/include/polarssl/ccm.h b/include/polarssl/ccm.h
index f1f24bd..070b39d 100644
--- a/include/polarssl/ccm.h
+++ b/include/polarssl/ccm.h
@@ -128,4 +128,4 @@
 }
 #endif
 
-#endif /* POLARSSL_CGM_H */
+#endif /* POLARSSL_CCM_H */
diff --git a/include/polarssl/check_config.h b/include/polarssl/check_config.h
index a12c302..5369d88 100644
--- a/include/polarssl/check_config.h
+++ b/include/polarssl/check_config.h
@@ -103,7 +103,7 @@
 #error "POLARSSL_HAVEGE_C defined, but not all prerequisites"
 #endif
 
-#if defined(POLARSSL_HMAC_DRBG) && !defined(POLARSSL_MD_C)
+#if defined(POLARSSL_HMAC_DRBG_C) && !defined(POLARSSL_MD_C)
 #error "POLARSSL_HMAC_DRBG_C defined, but not all prerequisites"
 #endif
 
@@ -436,7 +436,7 @@
 #if defined(POLARSSL_SSL_SESSION_TICKETS) && defined(POLARSSL_SSL_TLS_C) && \
     ( !defined(POLARSSL_AES_C) || !defined(POLARSSL_SHA256_C) ||            \
       !defined(POLARSSL_CIPHER_MODE_CBC) )
-#error "POLARSSL_SSL_SESSION_TICKETS_C defined, but not all prerequisites"
+#error "POLARSSL_SSL_SESSION_TICKETS defined, but not all prerequisites"
 #endif
 
 #if defined(POLARSSL_SSL_CBC_RECORD_SPLITTING) && \
diff --git a/include/polarssl/config.h b/include/polarssl/config.h
index 88670aa..14a9abb 100644
--- a/include/polarssl/config.h
+++ b/include/polarssl/config.h
@@ -817,7 +817,7 @@
  *
  * Enable sending of all alert messages
  */
-#define POLARSSL_SSL_ALERT_MESSAGES
+#define POLARSSL_SSL_ALL_ALERT_MESSAGES
 
 /**
  * \def POLARSSL_SSL_DEBUG_ALL
@@ -2255,7 +2255,7 @@
  *
  * Module:  library/x509_crt_write.c
  *
- * Requires: POLARSSL_CREATE_C
+ * Requires: POLARSSL_X509_CREATE_C
  *
  * This module is required for X.509 certificate creation.
  */
@@ -2268,7 +2268,7 @@
  *
  * Module:  library/x509_csr_write.c
  *
- * Requires: POLARSSL_CREATE_C
+ * Requires: POLARSSL_X509_CREATE_C
  *
  * This module is required for X.509 certificate request writing.
  */
diff --git a/include/polarssl/memory_buffer_alloc.h b/include/polarssl/memory_buffer_alloc.h
index 19abe55..128c6f3 100644
--- a/include/polarssl/memory_buffer_alloc.h
+++ b/include/polarssl/memory_buffer_alloc.h
@@ -125,7 +125,7 @@
  *          and contain sane values. Helps debug buffer-overflow errors.
  *
  *          Prints out first failure if POLARSSL_MEMORY_DEBUG is defined.
- *          Prints out full header information if POLARSSL_MEMORY_DEBUG_HEADERS
+ *          Prints out full header information if POLARSSL_MEMORY_DEBUG
  *          is defined. (Includes stack trace information for each block if
  *          POLARSSL_MEMORY_BACKTRACE is defined as well).
  *
diff --git a/include/polarssl/ssl.h b/include/polarssl/ssl.h
index dd1fbdc..8c754ff 100644
--- a/include/polarssl/ssl.h
+++ b/include/polarssl/ssl.h
@@ -328,7 +328,7 @@
 #define SSL_COMPRESSION_ADD             0
 #endif
 
-#if defined(POLARSSL_RC4_C) || defined(POLARSSL_CIPHER_MODE_CBC)
+#if defined(POLARSSL_ARC4_C) || defined(POLARSSL_CIPHER_MODE_CBC)
 /* Ciphersuites using HMAC */
 #if defined(POLARSSL_SHA512_C)
 #define SSL_MAC_ADD                 48  /* SHA-384 used for HMAC */
@@ -1389,7 +1389,7 @@
  *                 many bogus packets.
  */
 void ssl_set_dtls_badmac_limit( ssl_context *ssl, unsigned limit );
-#endif /* POLARSSL_DTLS_BADMAC_LIMIT */
+#endif /* POLARSSL_SSL_DTLS_BADMAC_LIMIT */
 
 #if defined(POLARSSL_SSL_PROTO_DTLS)
 /**
diff --git a/include/polarssl/threading.h b/include/polarssl/threading.h
index 293da38..a60dc3d 100644
--- a/include/polarssl/threading.h
+++ b/include/polarssl/threading.h
@@ -64,7 +64,7 @@
                        int (*mutex_free)( threading_mutex_t * ),
                        int (*mutex_lock)( threading_mutex_t * ),
                        int (*mutex_unlock)( threading_mutex_t * ) );
-#endif /* POLARSSL_THREADING_ALT_C */
+#endif /* POLARSSL_THREADING_ALT */
 
 /*
  * The function pointers for mutex_init, mutex_free, mutex_ and mutex_unlock
diff --git a/include/polarssl/x509_crt.h b/include/polarssl/x509_crt.h
index fe27007..fe1d97f 100644
--- a/include/polarssl/x509_crt.h
+++ b/include/polarssl/x509_crt.h
@@ -174,7 +174,7 @@
  *                 correctly, the first error is returned.
  *
  * \warning        This function is NOT thread-safe unless
- *                 POLARSSL_THREADING_PTHREADS is defined. If you're using an
+ *                 POLARSSL_THREADING_PTHREAD is defined. If you're using an
  *                 alternative threading implementation, you should either use
  *                 this function only in the main thread, or mutex it.
  *
diff --git a/library/ssl_tls.c b/library/ssl_tls.c
index 2341f05..5e9df52 100644
--- a/library/ssl_tls.c
+++ b/library/ssl_tls.c
@@ -3485,7 +3485,7 @@
 #endif
         {
             /* Error out (and send alert) on invalid records */
-#if defined(POLARSSL_SSL_ALERT_MESSAGES)
+#if defined(POLARSSL_SSL_ALL_ALERT_MESSAGES)
             if( ret == POLARSSL_ERR_SSL_INVALID_MAC )
             {
                 ssl_send_alert_message( ssl,
diff --git a/library/threading.c b/library/threading.c
index fa745af..5d48516 100644
--- a/library/threading.c
+++ b/library/threading.c
@@ -105,6 +105,6 @@
 
     return( 0 );
 }
-#endif /* POLARSSL_THREADING_ALT_C */
+#endif /* POLARSSL_THREADING_ALT */
 
 #endif /* POLARSSL_THREADING_C */
diff --git a/library/version_features.c b/library/version_features.c
index b970ee1..fcda595 100644
--- a/library/version_features.c
+++ b/library/version_features.c
@@ -279,9 +279,9 @@
 #if defined(POLARSSL_SSL_AEAD_RANDOM_IV)
     "POLARSSL_SSL_AEAD_RANDOM_IV",
 #endif /* POLARSSL_SSL_AEAD_RANDOM_IV */
-#if defined(POLARSSL_SSL_ALERT_MESSAGES)
-    "POLARSSL_SSL_ALERT_MESSAGES",
-#endif /* POLARSSL_SSL_ALERT_MESSAGES */
+#if defined(POLARSSL_SSL_ALL_ALERT_MESSAGES)
+    "POLARSSL_SSL_ALL_ALERT_MESSAGES",
+#endif /* POLARSSL_SSL_ALL_ALERT_MESSAGES */
 #if defined(POLARSSL_SSL_DEBUG_ALL)
     "POLARSSL_SSL_DEBUG_ALL",
 #endif /* POLARSSL_SSL_DEBUG_ALL */
