Version: 1
-Previous: 015e9db16d79e87ef59d9fae7bc150bc3a18f049
-Head: 658de9e426dc6fbbef8370e0a31d769f597469f2
+Previous: 04d16523394b39665de0813e3a3c72c9438fa754
+Head: 91cbcbd916d5835048d140aa97741c8b7eb97c71
Applied:
transpose: 84e0beee0d2d3c217cd9703b9e438d25856cacb6
- fork: 787c3c665c26cd4f4e898649af3897b6743d271c
- refresh-temp: 658de9e426dc6fbbef8370e0a31d769f597469f2
+ fork: 91cbcbd916d5835048d140aa97741c8b7eb97c71
Unapplied:
waitall-buggy: c49c6b56c55385774065f5aa2704078e6ae0ceb8
rs-1sge: 8ec392829399dec7ed5c608b8697a482e5faa2de
Bottom: c0306f4628b14e75db3da212b4a99875f49be65f
-Top: 6fb26f02c06c27cb2b94fd21d21273260c3c4563
+Top: 3e3c89beff00570aab96ab4c0bd6a397aaae83a4
Author: Sean Hefty <sean.hefty@intel.com>
Date: 2012-07-13 15:25:53 -0700
---
diff --git a/src/preload.c b/src/preload.c
-index d2058e2..cdf1ea6 100644
+index d2058e2..00ca24e 100644
--- a/src/preload.c
+++ b/src/preload.c
@@ -46,6 +46,8 @@
return index;
}
fd_close(index, &ret);
-@@ -431,18 +450,48 @@ int accept(int socket, struct sockaddr *addr, socklen_t *addrlen)
+@@ -431,18 +450,47 @@ int accept(int socket, struct sockaddr *addr, socklen_t *addrlen)
}
fd_store(index, ret, fd_rsocket);
+static int connect_fork(int socket, const struct sockaddr *addr, socklen_t addrlen)
+{
-+ struct sockaddr_in *sin;
+ int fd, ret;
+ uint32_t msg;
+
sin = (struct sockaddr_in *) addr;
if (ntohs(sin->sin_port) > 1024) {
ret = rconnect(fd, addr, addrlen);
-@@ -754,3 +803,86 @@ int fcntl(int socket, int cmd, ... /* arg */)
+@@ -456,6 +504,9 @@ int connect(int socket, const struct sockaddr *addr, socklen_t addrlen)
+
+ rclose(fd);
+ fd = ret;
++ break;
++ default:
++ break;
+ }
+
+ return real.connect(fd, addr, addrlen);
+@@ -754,3 +805,87 @@ int fcntl(int socket, int cmd, ... /* arg */)
va_end(args);
return ret;
}
+ struct sockaddr_in6 sin6;
+ pid_t pid;
+ sem_t *sem;
-+ int lfd, sfd, dfd, ret, len, param;
++ int lfd, sfd, dfd, ret, param;
++ socklen_t len;
+ uint32_t msg;
+
+ init_preload();
+ goto out;
+
+ len = sizeof sa;
-+ ret = real.getsockname(sfd, &sa, &len);
++ ret = real.getsockname(sfd, (struct sockaddr *) &sa, &len);
+ if (ret)
+ goto out;
+ sin6.sin6_family = sa.ss_family;
+++ /dev/null
-Bottom: 6fb26f02c06c27cb2b94fd21d21273260c3c4563
-Top: 3e3c89beff00570aab96ab4c0bd6a397aaae83a4
-Author: Sean Hefty <sean.hefty@intel.com>
-Date: 2012-07-17 12:42:17 -0700
-
-Refresh of fork
-
----
-
-diff --git a/src/preload.c b/src/preload.c
-index cdf1ea6..00ca24e 100644
---- a/src/preload.c
-+++ b/src/preload.c
-@@ -460,7 +460,6 @@ int accept(int socket, struct sockaddr *addr, socklen_t *addrlen)
-
- static int connect_fork(int socket, const struct sockaddr *addr, socklen_t addrlen)
- {
-- struct sockaddr_in *sin;
- int fd, ret;
- uint32_t msg;
-
-@@ -505,6 +504,9 @@ int connect(int socket, const struct sockaddr *addr, socklen_t addrlen)
-
- rclose(fd);
- fd = ret;
-+ break;
-+ default:
-+ break;
- }
-
- return real.connect(fd, addr, addrlen);
-@@ -821,7 +823,8 @@ pid_t fork(void)
- struct sockaddr_in6 sin6;
- pid_t pid;
- sem_t *sem;
-- int lfd, sfd, dfd, ret, len, param;
-+ int lfd, sfd, dfd, ret, param;
-+ socklen_t len;
- uint32_t msg;
-
- init_preload();
-@@ -831,7 +834,7 @@ pid_t fork(void)
- goto out;
-
- len = sizeof sa;
-- ret = real.getsockname(sfd, &sa, &len);
-+ ret = real.getsockname(sfd, (struct sockaddr *) &sa, &len);
- if (ret)
- goto out;
- sin6.sin6_family = sa.ss_family;