[dovecot-cvs] dovecot/src/lib ioloop-poll.c,1.10,1.11 restrict-process-size.c,1.2,1.3 restrict-process-size.h,1.1,1.2
cras at procontrol.fi
cras at procontrol.fi
Sat Feb 1 04:06:14 EET 2003
Update of /home/cvs/dovecot/src/lib
In directory danu:/tmp/cvs-serv5656/src/lib
Modified Files:
ioloop-poll.c restrict-process-size.c restrict-process-size.h
Log Message:
Don't let login process fork()
Index: ioloop-poll.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib/ioloop-poll.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- ioloop-poll.c 27 Jan 2003 01:44:34 -0000 1.10
+++ ioloop-poll.c 1 Feb 2003 02:06:11 -0000 1.11
@@ -201,7 +201,7 @@
} else if (io->condition & IO_READ) {
if ((pollfd->revents & IO_POLL_INPUT) == 0)
continue;
- pollfd->revents &= ~IO_POLL_INPUT;
+ pollfd->revents &= ~IO_POLL_INPUT;
} else if (io->condition & IO_WRITE) {
if ((pollfd->revents & IO_POLL_OUTPUT) == 0)
continue;
Index: restrict-process-size.c
===================================================================
RCS file: /home/cvs/dovecot/src/lib/restrict-process-size.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- restrict-process-size.c 1 Dec 2002 21:17:59 -0000 1.2
+++ restrict-process-size.c 1 Feb 2003 02:06:11 -0000 1.3
@@ -30,10 +30,18 @@
# include <sys/resource.h>
#endif
-void restrict_process_size(unsigned int size __attr_unused__)
+void restrict_process_size(unsigned int size __attr_unused__,
+ unsigned int max_processes __attr_unused__)
{
#ifdef HAVE_SETRLIMIT
struct rlimit rlim;
+
+#ifdef HAVE_RLIMIT_NPROC
+ rlim.rlim_max = rlim.rlim_cur =
+ max_processes < INT_MAX ? max_processes : RLIM_INFINITY;
+ if (setrlimit(RLIMIT_NPROC, &rlim) < 0)
+ i_fatal("setrlimit(RLIMIT_NPROC, %u): %m", size);
+#endif
rlim.rlim_max = rlim.rlim_cur =
size > 0 && size < INT_MAX/1024/1024 ?
Index: restrict-process-size.h
===================================================================
RCS file: /home/cvs/dovecot/src/lib/restrict-process-size.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- restrict-process-size.h 1 Dec 2002 13:48:50 -0000 1.1
+++ restrict-process-size.h 1 Feb 2003 02:06:11 -0000 1.2
@@ -3,6 +3,7 @@
/* Restrict max. process size. The size is in megabytes, setting it to
(unsigned int)-1 sets it unlimited. */
-void restrict_process_size(unsigned int size);
+void restrict_process_size(unsigned int size __attr_unused__,
+ unsigned int max_processes __attr_unused__);
#endif
More information about the dovecot-cvs
mailing list