From owner-freebsd-bugs@FreeBSD.ORG Thu Nov 12 03:20:01 2009 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 753C71065672 for ; Thu, 12 Nov 2009 03:20:01 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 526AC8FC1D for ; Thu, 12 Nov 2009 03:20:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id nAC3K1xO075117 for ; Thu, 12 Nov 2009 03:20:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id nAC3K1Uw075116; Thu, 12 Nov 2009 03:20:01 GMT (envelope-from gnats) Resent-Date: Thu, 12 Nov 2009 03:20:01 GMT Resent-Message-Id: <200911120320.nAC3K1Uw075116@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Jeremy Huddleston Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id EA803106566B for ; Thu, 12 Nov 2009 03:12:51 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21]) by mx1.freebsd.org (Postfix) with ESMTP id D97378FC0A for ; Thu, 12 Nov 2009 03:12:51 +0000 (UTC) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.14.3/8.14.3) with ESMTP id nAC3CprD014118 for ; Thu, 12 Nov 2009 03:12:51 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.14.3/8.14.3/Submit) id nAC3CpXY014117; Thu, 12 Nov 2009 03:12:51 GMT (envelope-from nobody) Message-Id: <200911120312.nAC3CpXY014117@www.freebsd.org> Date: Thu, 12 Nov 2009 03:12:51 GMT From: Jeremy Huddleston To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: misc/140497: Maintainance update for sscanf.c X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Nov 2009 03:20:01 -0000 >Number: 140497 >Category: misc >Synopsis: Maintainance update for sscanf.c >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Nov 12 03:20:00 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Jeremy Huddleston >Release: 8.0 >Organization: Apple >Environment: NA >Description: Make sscanf use vsscanf like similar changes to other stdio functions. >How-To-Repeat: >Fix: --- sscanf.c.bsdnew 2009-11-11 19:10:07.000000000 -0800 +++ sscanf.c 2009-11-11 19:11:21.000000000 -0800 @@ -41,37 +41,14 @@ __FBSDID("$FreeBSD: src/lib/libc/stdio/s #include #include "local.h" -static int eofread(void *, char *, int); - -/* ARGSUSED */ -static int -eofread(cookie, buf, len) - void *cookie; - char *buf; - int len; -{ - - return (0); -} - int sscanf(const char * __restrict str, char const * __restrict fmt, ...) { int ret; va_list ap; - FILE f; - f._file = -1; - f._flags = __SRD; - f._bf._base = f._p = (unsigned char *)str; - f._bf._size = f._r = strlen(str); - f._read = eofread; - f._ub._base = NULL; - f._lb._base = NULL; - f._orientation = 0; - memset(&f._mbstate, 0, sizeof(mbstate_t)); va_start(ap, fmt); - ret = __svfscanf(&f, fmt, ap); + ret = vsscanf(str, fmt, ap); va_end(ap); return (ret); } >Release-Note: >Audit-Trail: >Unformatted: