From owner-freebsd-current@FreeBSD.ORG Tue Dec 12 05:56:09 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 355AB16A40F for ; Tue, 12 Dec 2006 05:56:09 +0000 (UTC) (envelope-from swhetzel@gmail.com) Received: from ug-out-1314.google.com (ug-out-1314.google.com [66.249.92.170]) by mx1.FreeBSD.org (Postfix) with ESMTP id D476943CBB for ; Tue, 12 Dec 2006 05:54:44 +0000 (GMT) (envelope-from swhetzel@gmail.com) Received: by ug-out-1314.google.com with SMTP id o2so1416768uge for ; Mon, 11 Dec 2006 21:56:04 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=h8f+ECuQ98zmjT2BUn2zgLaXo4r/8OQM9to2ALUdRdbgyH5NXeuR/EMKIVOAOlENQlLAv6+d7+zhcPI1crtoQyYBfKjFAhkR6r/+1OgTd/u7w9xiToXVMrJ0SkcP55V3P/3V03II3cn2mkkxmomzcdI2BRZiziIGeQpwQaC2eUs= Received: by 10.67.21.11 with SMTP id y11mr11139166ugi.1165902964454; Mon, 11 Dec 2006 21:56:04 -0800 (PST) Received: by 10.67.86.15 with HTTP; Mon, 11 Dec 2006 21:56:02 -0800 (PST) Message-ID: <790a9fff0612112156s359f1cc3w68c3d4b39661832c@mail.gmail.com> Date: Mon, 11 Dec 2006 23:56:04 -0600 From: "Scot Hetzel" To: FreeBSD-CURRENT , "Bill Paul" In-Reply-To: <790a9fff0611251051md2ef50cja84440ba3cc7942f@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <790a9fff0611251051md2ef50cja84440ba3cc7942f@mail.gmail.com> Cc: Subject: Re: Latest Broadcom NDIS driver requires 4 additional functions X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Dec 2006 05:56:09 -0000 On 11/25/06, Scot Hetzel wrote: > Unimplemented Functions: > memchr - implemented but causes "cast discards qualifiers from pointer target type" : > > Any ideas as to how to fix memchr, ... ? > I was able to fix memchr with the help of one of my college professors, he provided me with two different solutions to get rid of the cast problem. #ifdef BROKEN_MEMCHR static void *ntoskrnl_memchr(const void *, int, size_t); /* * /usr/src/sys/modules/ndis/../../compat/ndis/subr_ntoskrnl.c: In function `ntoskrnl_memchr': * /usr/src/sys/modules/ndis/../../compat/ndis/subr_ntoskrnl.c:465: warning: cast discards qualifiers from pointer target type * *** Error code 1 */ static void * ntoskrnl_memchr(buf, ch, len) const void *buf; unsigned char ch; size_t len; { if (len != 0) { const unsigned char *p = buf; do { if (*p++ == ch) { return ((void *)(p - 1)); /* error occurs here */ } } while (--len != 0); } return (NULL); } #endif #ifdef FIX1_MEMCHR static void *ntoskrnl_memchr(void *, int, size_t); static void * ntoskrnl_memchr(buf, ch, len) void *buf; unsigned char ch; size_t len; { if (len != 0) { unsigned char *p = buf; do { if (*p++ == ch) { return ((void *)(p - 1)); } } while (--len != 0); } return (NULL); } #endif #ifdef FIX2_MEMCHR static const void *ntoskrnl_memchr(const void *, int, size_t); static const void * ntoskrnl_memchr(buf, ch, len) const void *buf; unsigned char ch; size_t len; { if (len != 0) { const unsigned char *p = buf; do { if (*p++ == ch) { return ((const void *)(p - 1)); } } while (--len != 0); } return (NULL); } #endif Which version should I use as a follow up to PR 106131. http://www.freebsd.org/cgi/query-pr.cgi?pr=106131 Scot -- DISCLAIMER: No electrons were mamed while sending this message. Only slightly bruised.