nginx-0.0.1-2003-11-25-23:44:56 import
diff --git a/src/os/unix/ngx_socket.c b/src/os/unix/ngx_socket.c
index 48016cb..8b34c1c 100644
--- a/src/os/unix/ngx_socket.c
+++ b/src/os/unix/ngx_socket.c
@@ -55,6 +55,28 @@
                       (const void *) &tcp_nopush, sizeof(int));
 }
 
+#elif __linux__
+
+int ngx_tcp_nopush(ngx_socket_t s)
+{
+    int  cork;
+
+    cork = 1;
+
+    return setsockopt(s, IPPROTO_TCP, TCP_CORK,
+                      (const void *) &cork, sizeof(int));
+}
+
+int ngx_tcp_push(ngx_socket_t s)
+{
+    int  cork;
+
+    cork = 0;
+
+    return setsockopt(s, IPPROTO_TCP, TCP_CORK,
+                      (const void *) &cork, sizeof(int));
+}
+
 #else
 
 int ngx_tcp_nopush(ngx_socket_t s)