From owner-freebsd-bugs@FreeBSD.ORG Sun Dec 22 23:40:01 2013 Return-Path: Delivered-To: freebsd-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 980A3C5B for ; Sun, 22 Dec 2013 23:40:01 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 83ECA1235 for ; Sun, 22 Dec 2013 23:40:01 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id rBMNe1Q6058911 for ; Sun, 22 Dec 2013 23:40:01 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id rBMNe1P7058910; Sun, 22 Dec 2013 23:40:01 GMT (envelope-from gnats) Date: Sun, 22 Dec 2013 23:40:01 GMT Message-Id: <201312222340.rBMNe1P7058910@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org Cc: From: Christian Weisgerber Subject: Re: kern/185077: Sync L_cuserid with MAXLOGNAME X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list Reply-To: Christian Weisgerber List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Dec 2013 23:40:01 -0000 The following reply was made to PR kern/185077; it has been noted by GNATS. From: Christian Weisgerber To: Jilles Tjoelker Cc: bug-followup@FreeBSD.org Subject: Re: kern/185077: Sync L_cuserid with MAXLOGNAME Date: Sun, 22 Dec 2013 23:58:53 +0100 Jilles Tjoelker: > I still wonder whether it's worth it, though. What breaks if L_cuserid > != MAXLOGNAME? They are different constants, so may have different > values. If there are sufficiently long user names on a system, cuserid(buf) will truncate them on return. See lib/libcompat/4.4/cuserid.c. > This breakage should be weighed against the possible breakage resulting > from changing things about cuserid() and L_cuserid, since they are > obsolete APIs used by old crufty code. I'd say any possibility of breakage there--basically, calling cuserid(buf) with a buffer that has a fixed size but not based on L_cuserid--was already hit when L_cuserid was bumped from the original 9 to 17. > > Alternatively, for HEAD, consider completely removing cuserid(3) from > > libcompat and L_cuserid with it. > > This is an option. It looks like cuserid() is mostly used by high-level > languages to make it available to high-level language code. OpenBSD recently removed all of libcompat. The ports fallout there from cuserid was minimal and easily fixed: Two users of cuserid() (games/late, games/xpat2) and two users of L_cuserid (lang/mono, cad/chipmunk). > Parts of me, however, like the ability of compiling ancient source code, > be it with -lcompat and other strange options. gtty(), stty(), and the regexp(3) functions have already been removed from libcompat over the years. -- Christian "naddy" Weisgerber naddy@mips.inka.de