projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PATCH] Improve git-rev-list memory usage further
[git.git]
/
daemon.c
diff --git
a/daemon.c
b/daemon.c
index
fb3f25c
..
5100cf2
100644
(file)
--- a/
daemon.c
+++ b/
daemon.c
@@
-80,11
+80,11
@@
static unsigned int children_deleted = 0;
static struct child {
pid_t pid;
static struct child {
pid_t pid;
-
socklen_
t addrlen;
+
in
t addrlen;
struct sockaddr_storage address;
} live_child[MAX_CHILDREN];
struct sockaddr_storage address;
} live_child[MAX_CHILDREN];
-static void add_child(int idx, pid_t pid, struct sockaddr *addr,
socklen_
t addrlen)
+static void add_child(int idx, pid_t pid, struct sockaddr *addr,
in
t addrlen)
{
live_child[idx].pid = pid;
live_child[idx].addrlen = addrlen;
{
live_child[idx].pid = pid;
live_child[idx].addrlen = addrlen;
@@
-178,7
+178,7
@@
static void check_max_connections(void)
}
}
}
}
-static void handle(int incoming, struct sockaddr *addr,
socklen_
t addrlen)
+static void handle(int incoming, struct sockaddr *addr,
in
t addrlen)
{
pid_t pid = fork();
{
pid_t pid = fork();
@@
-308,7
+308,7
@@
static int serve(int port)
if (FD_ISSET(sockfd, &fds)) {
struct sockaddr_storage ss;
if (FD_ISSET(sockfd, &fds)) {
struct sockaddr_storage ss;
-
socklen_
t sslen = sizeof(ss);
+
in
t sslen = sizeof(ss);
int incoming = accept(sockfd, (struct sockaddr *)&ss, &sslen);
if (incoming < 0) {
switch (errno) {
int incoming = accept(sockfd, (struct sockaddr *)&ss, &sslen);
if (incoming < 0) {
switch (errno) {
@@
-353,8
+353,10
@@
int main(int argc, char **argv)
usage(daemon_usage);
}
usage(daemon_usage);
}
- if (inetd_mode)
+ if (inetd_mode) {
+ fclose(stderr); //FIXME: workaround
return execute();
return execute();
+ }
return serve(port);
}
return serve(port);
}