0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-25 16:22:35 +01:00

[svn] - remove get_maxrss() and all of that insecure and unsafe nonsense

This commit is contained in:
nenolod 2007-03-05 10:51:17 -08:00
parent a6a30f6f7b
commit 68ff929f3d
5 changed files with 17 additions and 47 deletions

View file

@ -1,3 +1,12 @@
nenolod 2007/03/05 18:42:24 UTC (20070305-3247)
Log:
- avoid some potential NULL dereferencing
Changes: Modified:
+1 -1 trunk/libcharybdis/commio.c (File Modified)
nenolod 2007/03/05 18:41:14 UTC (20070305-3245)
Log:
- fix a typo

View file

@ -1 +1 @@
#define SERNO "20070305-3245"
#define SERNO "20070305-3247"

View file

@ -21,7 +21,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: ircd.c 3047 2006-12-26 23:18:05Z jilles $
* $Id: ircd.c 3249 2007-03-05 18:51:17Z nenolod $
*/
#include "stdinc.h"
@ -79,39 +79,10 @@
*/
int _charybdis_data_version = CHARYBDIS_DV;
extern int ServerRunning, initialVMTop;
extern int ServerRunning;
extern struct LocalUser meLocalUser;
extern char **myargv;
/*
* get_vm_top - get the operating systems notion of the resident set size
*/
static unsigned long
get_vm_top(void)
{
/*
* NOTE: sbrk is not part of the ANSI C library or the POSIX.1 standard
* however it seems that everyone defines it. Calling sbrk with a 0
* argument will return a pointer to the top of the process virtual
* memory without changing the process size, so this call should be
* reasonably safe (sbrk returns the new value for the top of memory).
* This code relies on the notion that the address returned will be an
* offset from 0 (NULL), so the result of sbrk is cast to a size_t and
* returned. We really shouldn't be using it here but...
*/
void *vptr = sbrk(0);
return (unsigned long) vptr;
}
/*
* get_maxrss - get the operating systems notion of the resident set size
*/
unsigned long
get_maxrss(void)
{
return get_vm_top() - initialVMTop;
}
/*
* print_startup - print startup information
*/
@ -173,11 +144,10 @@ init_sys(void)
if(!getrlimit(RLIMIT_FD_MAX, &limit))
{
if(limit.rlim_max < MAXCONNECTIONS)
{
fprintf(stderr, "ircd fd table too big\n");
fprintf(stderr, "Hard Limit: %ld IRC max: %d\n",
fprintf(stderr, "ircd's bootstrap fd table is too big\n");
fprintf(stderr, "Hard Limit: %ld bootstrap size: %d\n",
(long) limit.rlim_max, MAXCONNECTIONS);
fprintf(stderr, "Fix MAXCONNECTIONS\n");
exit(-1);
@ -513,11 +483,6 @@ main(int argc, char *argv[])
*/
setup_corefile();
/*
* set initialVMTop before we allocate any memory
*/
initialVMTop = get_vm_top();
ServerRunning = 0;
/* It ain't random, but it ought to be a little harder to guess */
srand(SystemTime.tv_sec ^ (SystemTime.tv_usec | (getpid() << 20)));

View file

@ -21,7 +21,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: restart.c 486 2006-01-15 10:36:32Z nenolod $
* $Id: restart.c 3249 2007-03-05 18:51:17Z nenolod $
*/
#include "stdinc.h"
@ -46,7 +46,7 @@ restart(const char *mesg)
abort();
was_here = YES;
ilog(L_MAIN, "Restarting Server because: %s, memory data limit: %ld", mesg, get_maxrss());
ilog(L_MAIN, "Restarting Server because: %s", mesg);
server_reboot();
}

View file

@ -21,7 +21,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*
* $Id: s_stats.c 1409 2006-05-21 14:46:17Z jilles $
* $Id: s_stats.c 3249 2007-03-05 18:51:17Z nenolod $
*/
#include "stdinc.h"
@ -386,8 +386,4 @@ count_memory(struct Client *source_p)
"z :Remote client Memory in use: %ld(%ld)",
(long)remote_client_count,
(long)remote_client_memory_used);
sendto_one_numeric(source_p, RPL_STATSDEBUG,
"z :TOTAL: %d Available: Current max RSS: %lu",
(int) total_memory, get_maxrss());
}