Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site umcp-cs.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!umcp-cs!chris From: chris@umcp-cs.UUCP (Chris Torek) Newsgroups: net.unix-wizards Subject: Re: Does anybody have a version of SPRINTF with bounds checking and flame Message-ID: <8132@umcp-cs.UUCP> Date: Mon, 20-Aug-84 09:09:05 EDT Article-I.D.: umcp-cs.8132 Posted: Mon Aug 20 09:09:05 1984 Date-Received: Wed, 22-Aug-84 02:45:03 EDT References: <1323@wateng.UUCP> Organization: U of Maryland, Computer Science Dept., College Park, MD Lines: 29 I've already complained about that one here. Here's an ``sprintfl'' that does a counted sprintf and works on BSD Vaxen: #includechar *sprintfl (buf, len, fmt, arg) register char *buf; register int len; char *fmt; { struct _iobuf s; if (len <= 0) return; if (--len <= 0) { /* use sobgtr */ *buf = 0; return; } s._ptr = buf; s._cnt = len; s._flag = _IOSTRG; /* leave out _IOWRT! */ _doprnt (fmt, &arg, &s); buf[len] = 0; return buf; } -- In-Real-Life: Chris Torek, Univ of MD Comp Sci (301) 454-7690 UUCP: {seismo,allegra,brl-bmd}!umcp-cs!chris CSNet: chris@umcp-cs ARPA: chris@maryland