# HG changeset patch # User Markus Bröker # Date 1239879039 -7200 # Node ID d549894aa6a921d2bb01fc496a6ed99478acf9a3 # Parent abe63a276a36759cc52ff1d15f627416ed936f2f Trivial Changes I have made trivial changes to the fts component and renamed the set_limit function to set_proc_limit. It makes it clear that we are dealing with LIMIT_NPROC and not LIMIT_AS settings. committer: Markus Bröker diff --git a/ddos/Makefile b/ddos/Makefile --- a/ddos/Makefile +++ b/ddos/Makefile @@ -6,7 +6,7 @@ TARGET += server SOBJECTS = server.o -SOBJECTS += set_limit.o +SOBJECTS += set_proc_limit.o COBJECTS = client.o diff --git a/ddos/server.c b/ddos/server.c --- a/ddos/server.c +++ b/ddos/server.c @@ -13,7 +13,7 @@ #include #include -int set_limit (int); +int set_proc_limit (int); int main (int argc, char **argv) { @@ -61,7 +61,7 @@ */ signal (SIGCHLD, SIG_IGN); - if (set_limit (500) != 0) { + if (set_proc_limit (200) != 0) { printf ("Cannot limit the process limit\n"); return EXIT_FAILURE; } diff --git a/ddos/set_limit.c b/ddos/set_limit.c deleted file mode 100644 --- a/ddos/set_limit.c +++ /dev/null @@ -1,16 +0,0 @@ -/** - * test/demos/ddos/set_limit.c - * Copyright (C) 2008 Markus Broeker - */ - -#include - -int set_limit (int processes) -{ - struct rlimit rlim; - - rlim.rlim_cur = processes; - rlim.rlim_max = processes + 24; - - return setrlimit (RLIMIT_NPROC, &rlim); -} diff --git a/ddos/set_proc_limit.c b/ddos/set_proc_limit.c new file mode 100644 --- /dev/null +++ b/ddos/set_proc_limit.c @@ -0,0 +1,16 @@ +/** + * test/demos/ddos/set_limit.c + * Copyright (C) 2008 Markus Broeker + */ + +#include + +int set_proc_limit (int processes) +{ + struct rlimit rlim; + + rlim.rlim_cur = processes; + rlim.rlim_max = processes + 24; + + return setrlimit (RLIMIT_NPROC, &rlim); +} diff --git a/fts.c b/fts.c --- a/fts.c +++ b/fts.c @@ -9,6 +9,7 @@ #include #include +#include int compare (const FTSENT ** a, const FTSENT ** b) { @@ -46,7 +47,8 @@ } while ((current = fts_read (fts)) != NULL) { - printf ("%s/%s\n", current->fts_path, current->fts_name); + if (!errno) + printf ("%s/%s\n", current->fts_path, current->fts_name); } if (fts_close (fts) < 0)