diff --git src/ssl.c src/ssl.c
index 2fa6ede..bd8a744 100644
--- src/ssl.c
+++ src/ssl.c
@@ -395,24 +395,30 @@ static int meth_want(lua_State *L)
   }
   return 1;
 }
-  
+
 /**
  * Return the compression method used.
  */
 static int meth_compression(lua_State *L)
 {
+#if !defined(OPENSSL_NO_COMP)
   const COMP_METHOD *comp;
+#endif
   p_ssl ssl = (p_ssl)luaL_checkudata(L, 1, "SSL:Connection");
   if (ssl->state != LSEC_STATE_CONNECTED) {
     lua_pushnil(L);
     lua_pushstring(L, "closed");
     return 2;
   }
+#if !defined(OPENSSL_NO_COMP)
   comp = SSL_get_current_compression(ssl->ssl);
   if (comp)
     lua_pushstring(L, SSL_COMP_get_name(comp));
   else
     lua_pushnil(L);
+#else
+  lua_pushnil(L);
+#endif
   return 1;
 }
 
