From owner-freebsd-bugs Fri May 17 16:51:48 1996 Return-Path: owner-bugs Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id QAA01731 for bugs-outgoing; Fri, 17 May 1996 16:51:48 -0700 (PDT) Received: from relay-4.mail.demon.net (relay-4.mail.demon.net [158.152.1.108]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id QAA01724 for ; Fri, 17 May 1996 16:51:46 -0700 (PDT) Received: from post.demon.co.uk ([158.152.1.72]) by relay-4.mail.demon.net id aa24689; 17 May 96 23:41 GMT Received: from jraynard.demon.co.uk ([158.152.42.77]) by relay-3.mail.demon.net id aa17253; 18 May 96 0:41 +0100 Received: (from fbugs@localhost) by jraynard.demon.co.uk (8.7.5/8.6.12) id AAA00521; Sat, 18 May 1996 00:31:54 GMT Date: Sat, 18 May 1996 00:31:54 GMT From: James Raynard Message-Id: <199605180031.AAA00521@jraynard.demon.co.uk> To: elrond2imladris.frmug.fr.net@memo.frmug.fr.net CC: freebsd-bugs@freebsd.org, roberto@keltia.freenix.fr In-reply-to: <199605152226.AAA18328@memo.frmug.fr.net> (message from Bertrand Petit on Thu, 16 May 1996 00:26:05 +0200) Subject: Re: Bug found in getrlimit for 2.1R Sender: owner-bugs@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >>>>> Bertrand Petit writes: > > I've found a bug in the getrlinit function(). Here is a small > program to demonstrate this: [snip] > printf("soft=%d\nhard=%d\n",(long)Lim.rlim_cur,Lim.rlim_max); BTW this should be printf("soft=%qd\nhard=%qd\n",Lim.rlim_cur,Lim.rlim_max); > fflush(stdout); > > This program outputs: > > ----- > soft=64 > hard=-1 According to the getrlimit manpage, An ``infinite'' value for a limit is defined as RLIM_INFINITY. and looking in /usr/include/sys/resource.h, we find:- RLIM_INFINITY (((u_quad_t)1 << 63) - 1) > And under gdb: > > ----- > Breakpoint 1, main () at toto.c:12 > (gdb) print Lim > $1 = {rlim_cur = 0x0000000000000040, rlim_max = 0x7fffffffffffffff} See above. I believe this is working as documented. > I've searched the getrlinit source code: > > But was unable to find it on my installation nor the second CD > of 2.1R! It's in /usr/src/sys/kern/kern_resource.c -- James Raynard, Edinburgh, Scotland jraynard@dial.pipex.com james@jraynard.demon.co.uk