Version: 1
-Previous: c4e5c9bbb691973679c5d18c9dcbc1140a9e2c1e
-Head: d46647ae56c4018c5c0eac0cc3d4202073aeae16
+Previous: e5a37f75222abc733aef07ec3d7afd365906ffdb
+Head: a83ed3dc5802a710f1815fb07f69e60f2a389b29
Applied:
acm: 8a0c0b32f75f1b439b5665e6047713ff6ef37ef9
rs-fix: d46647ae56c4018c5c0eac0cc3d4202073aeae16
+ refresh-temp: a83ed3dc5802a710f1815fb07f69e60f2a389b29
Unapplied:
af_ib: 2e4bfa467343c57c68616c1922c01765df3ed1db
dbg-out: 4b4c0572eab77856d8fbb919b1feb8f3502a101a
--- /dev/null
+Bottom: 3fd71bbdde8064c89162f5d4672b6b5bead9703a
+Top: 30191aa638f3f574e67a71c82fa7771bcc620c52
+Author: Sean Hefty <sean.hefty@intel.com>
+Date: 2012-08-20 12:20:40 -0700
+
+Refresh of rs-fix
+
+---
+
+diff --git a/src/preload.c b/src/preload.c
+index 474287e..0645f6d 100644
+--- a/src/preload.c
++++ b/src/preload.c
+@@ -504,6 +504,13 @@ static void fork_active(int socket)
+
+ sfd = fd_getd(socket);
+
++ flags = real.fcntl(sfd, F_GETFL);
++ real.fcntl(sfd, F_SETFL, 0);
++ ret = real.recv(sfd, &msg, sizeof msg, MSG_PEEK);
++ real.fcntl(sfd, F_SETFL, flags);
++ if ((ret != sizeof msg) || msg)
++ goto err1;
++
+ len = sizeof addr;
+ ret = real.getpeername(sfd, (struct sockaddr *) &addr, &len);
+ if (ret)
+@@ -513,13 +520,6 @@ static void fork_active(int socket)
+ if (dfd < 0)
+ goto err1;
+
+- flags = real.fcntl(sfd, F_GETFL);
+- real.fcntl(sfd, F_SETFL, 0);
+- ret = real.recv(sfd, &msg, sizeof msg, MSG_PEEK);
+- real.fcntl(sfd, F_SETFL, flags);
+- if ((ret != sizeof msg) || msg)
+- goto err2;
+-
+ ret = rconnect(dfd, (struct sockaddr *) &addr, len);
+ if (ret)
+ goto err2;