diff --git a/common/network/Socket.h b/common/network/Socket.h
index 874a59c..7a30cac 100644
--- a/common/network/Socket.h
+++ b/common/network/Socket.h
@@ -50,6 +50,7 @@
     // if shutdown() is overridden then the override MUST call on to here
     virtual void shutdown() {isShutdown_ = true;}
     bool isShutdown() const {return isShutdown_;}
+    virtual bool cork(bool enable) = 0;
 
     // information about this end of the socket
     virtual int getMyPort() = 0;
diff --git a/common/network/TcpSocket.cxx b/common/network/TcpSocket.cxx
index cf03c10..9603c38 100644
--- a/common/network/TcpSocket.cxx
+++ b/common/network/TcpSocket.cxx
@@ -349,12 +349,12 @@
   return true;
 }
 
-bool TcpSocket::cork(int sock, bool enable) {
+bool TcpSocket::cork(bool enable) {
 #ifndef TCP_CORK
   return false;
 #else
   int one = enable ? 1 : 0;
-  if (setsockopt(sock, IPPROTO_TCP, TCP_CORK, (char *)&one, sizeof(one)) < 0)
+  if (setsockopt(getFd(), IPPROTO_TCP, TCP_CORK, (char *)&one, sizeof(one)) < 0)
     return false;
   return true;
 #endif
diff --git a/common/network/TcpSocket.h b/common/network/TcpSocket.h
index a97e683..c1b142f 100644
--- a/common/network/TcpSocket.h
+++ b/common/network/TcpSocket.h
@@ -62,9 +62,9 @@
     virtual bool sameMachine();
 
     virtual void shutdown();
+    virtual bool cork(bool enable);
 
     static bool enableNagles(int sock, bool enable);
-    static bool cork(int sock, bool enable);
     static bool isListening(int sock);
     static int getSockPort(int sock);
   private:
