From owner-freebsd-standards@FreeBSD.ORG Mon Jul 28 11:01:46 2003 Return-Path: Delivered-To: freebsd-standards@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4F5E437B401 for ; Mon, 28 Jul 2003 11:01:46 -0700 (PDT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id C9BDE43F3F for ; Mon, 28 Jul 2003 11:01:45 -0700 (PDT) (envelope-from owner-bugmaster@freebsd.org) Received: from freefall.freebsd.org (peter@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id h6SI1jUp082262 for ; Mon, 28 Jul 2003 11:01:45 -0700 (PDT) (envelope-from owner-bugmaster@freebsd.org) Received: (from peter@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id h6SI1j6I082257 for freebsd-standards@freebsd.org; Mon, 28 Jul 2003 11:01:45 -0700 (PDT) Date: Mon, 28 Jul 2003 11:01:45 -0700 (PDT) Message-Id: <200307281801.h6SI1j6I082257@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: peter set sender to owner-bugmaster@freebsd.org using -f From: FreeBSD bugmaster To: freebsd-standards@FreeBSD.org Subject: Current problem reports assigned to you X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Jul 2003 18:01:47 -0000 Current FreeBSD problem reports Critical problems Serious problems S Submitted Tracker Resp. Description ------------------------------------------------------------------------------- o [2002/02/25] bin/35307 standards standard include files are not standard c o [2003/03/05] bin/48958 standards The type 'bool' has different sizes for C s [2001/01/23] misc/24590 standards timezone function not compatible witn Sin o [2003/04/21] standards/51209standards [PATCH] add a64l()/l64a/l64a_r functions o [2003/06/05] standards/52972standards /bin/sh arithmetic not POSIX compliant o [2003/06/20] standards/53554standards interval timers not cleared in fork() o [2003/07/12] standards/54410standards one-true-awk not POSIX compliant (no exte 7 problems total. Non-critical problems S Submitted Tracker Resp. Description ------------------------------------------------------------------------------- o [2001/01/16] bin/24390 standards Replacing old dir-symlinks when using /bi o [2003/06/24] bin/53682 standards [PATCH] add fuser(1) utitity o [2000/08/10] docs/20528 standards sysconf(3) manpage doesn't mention posix. o [2002/07/09] misc/40378 standards stdlib.h gives needless warnings with -an s [2002/03/18] standards/36076standards Implementation of POSIX fuser command o [2002/06/13] standards/39256standards [v]snprintf aren't POSIX-conformant for s p [2002/07/16] standards/40669standards command command does not support `-p' opt o [2001/11/20] standards/32126standards getopt(3) not Unix-98 conformant p [2002/08/12] standards/41576standards POSIX compliance of ln(1) o [2002/10/23] standards/44425standards getcwd() succeeds even if current dir has o [2002/12/09] standards/46119standards Priority problems for SCHED_OTHER using p o [2002/12/23] standards/46504standards Warnings in headers o [2003/04/22] standards/51292standards [PATCH] add ecvt()/fcvt()/gcvt() function o [2003/06/22] standards/53613standards FreeBSD doesn't define EPROTO o [2003/07/08] standards/54223standards [PATCH] Add mlockall(), munlockall() sysc o [2003/07/19] standards/54634standards [PATCH] add posix_madvise() call to -CURR o [2003/07/24] standards/54809standards pcvt deficits o [2003/07/24] standards/54833standards more pcvt deficits o [2003/07/25] standards/54839standards pcvt deficits 19 problems total. From owner-freebsd-standards@FreeBSD.ORG Mon Jul 28 11:03:31 2003 Return-Path: Delivered-To: freebsd-standards@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5266D37B401 for ; Mon, 28 Jul 2003 11:03:31 -0700 (PDT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id C117A43FE5 for ; Mon, 28 Jul 2003 11:03:18 -0700 (PDT) (envelope-from owner-bugmaster@freebsd.org) Received: from freefall.freebsd.org (peter@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id h6SI3IUp084302 for ; Mon, 28 Jul 2003 11:03:18 -0700 (PDT) (envelope-from owner-bugmaster@freebsd.org) Received: (from peter@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id h6SI3IAF084296 for standards@freebsd.org; Mon, 28 Jul 2003 11:03:18 -0700 (PDT) Date: Mon, 28 Jul 2003 11:03:18 -0700 (PDT) Message-Id: <200307281803.h6SI3IAF084296@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: peter set sender to owner-bugmaster@freebsd.org using -f From: FreeBSD bugmaster To: standards@FreeBSD.org Subject: Current problem reports assigned to you X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Jul 2003 18:03:31 -0000 Current FreeBSD problem reports Critical problems S Submitted Tracker Resp. Description ------------------------------------------------------------------------------- o [2001/08/18] kern/29844 standards [PATCH] setpgrp does not behave as manual 1 problem total. Serious problems S Submitted Tracker Resp. Description ------------------------------------------------------------------------------- o [2001/03/05] bin/25542 standards /bin/sh: null char in quoted string 1 problem total. Non-critical problems S Submitted Tracker Resp. Description ------------------------------------------------------------------------------- o [2000/09/24] bin/21519 standards sys/dir.h should be deprecated some more f [1995/01/11] i386/105 standards Distributed libm (msun) has non-standard o [2000/12/05] kern/23304 standards POSIX clock_gettime, clock_getres return s [2001/06/18] kern/28260 standards UIO_MAXIOV needs to be made public 4 problems total. From owner-freebsd-standards@FreeBSD.ORG Mon Jul 28 21:25:11 2003 Return-Path: Delivered-To: freebsd-standards@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2017837B401; Mon, 28 Jul 2003 21:25:10 -0700 (PDT) Received: from obsecurity.dyndns.org (adsl-63-207-60-135.dsl.lsan03.pacbell.net [63.207.60.135]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0EE0743F93; Mon, 28 Jul 2003 21:25:08 -0700 (PDT) (envelope-from kris@obsecurity.org) Received: from rot13.obsecurity.org (rot13.obsecurity.org [10.0.0.5]) by obsecurity.dyndns.org (Postfix) with ESMTP id EA35C66CFA; Mon, 28 Jul 2003 21:25:06 -0700 (PDT) Received: by rot13.obsecurity.org (Postfix, from userid 1000) id A8B698CB; Mon, 28 Jul 2003 21:25:06 -0700 (PDT) Date: Mon, 28 Jul 2003 21:25:06 -0700 From: Kris Kennaway To: Mike Barcroft Message-ID: <20030729042506.GA61736@rot13.obsecurity.org> References: <20030615053705.GA15421@rot13.obsecurity.org> <20030729000206.GA92727@rot13.obsecurity.org> <20030728234338.B94307@espresso.q9media.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="RnlQjJ0d97Da+TV1" Content-Disposition: inline In-Reply-To: <20030728234338.B94307@espresso.q9media.com> User-Agent: Mutt/1.4.1i cc: standards@FreeBSD.org Subject: Re: struct timeval X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Jul 2003 04:25:11 -0000 --RnlQjJ0d97Da+TV1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Jul 28, 2003 at 11:43:38PM -0400, Mike Barcroft wrote: > Here's my copy of my reply: Thanks. I'm CC'ing it to standards@ so we can try to find a resolution. > : > I meant to bring up the time_t issue on -standard. I think we can > : > safely use time_t without binary compatibility problems. Here's the > : > cases we currently have: > : > > : > i386/ia64 time_t =3D=3D long (no change) > : > alpha/sparc64 time_t !=3D int (but struct size doesn't change because > : > suseconds_t is a long) > : > > : > Do you foresee any issues? > : > : It's not binary-compatible on sparc64's since sparc64 is big-endian. On > : alphas, there is the problem of garbage in the padding bits. If the > : type is time_t, then the padding bits may have garbage; binaries compil= ed > : when the type was long will see the garbage. I wouldn't change this. >=20 > So to properly fix it, we'd have to do new syscalls and expire the old > ones. A better fix would be to make time_t a long on all platforms. It seems to me that the bug needs to be fixed before 5.x-STABLE is branched..someone on IRC looked up the relevant part of POSIX and claimed that tv_sec is supposed to be a time_t (I cannot confirm this right now). That means that the following code is compliant, but breaks on sparc64. printf("%s\n", ctime(&tv.tv_sec)); Kris --RnlQjJ0d97Da+TV1 Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.2 (FreeBSD) iD8DBQE/JfchWry0BWjoQKURApoTAJ4j66tkteBPANKjNCN4Y0jyI59OMQCgrewz yHgUTM2GAO3Ak9FRbxa6C18= =oqBe -----END PGP SIGNATURE----- --RnlQjJ0d97Da+TV1-- From owner-freebsd-standards@FreeBSD.ORG Tue Jul 29 09:17:36 2003 Return-Path: Delivered-To: freebsd-standards@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 6180B37B401; Tue, 29 Jul 2003 09:17:36 -0700 (PDT) Received: from vexpert.dbai.tuwien.ac.at (vexpert.dbai.tuwien.ac.at [128.131.111.2]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6E28743F75; Tue, 29 Jul 2003 09:17:35 -0700 (PDT) (envelope-from pfeifer@dbai.tuwien.ac.at) Received: from [128.131.111.60] (acrux [128.131.111.60]) by vexpert.dbai.tuwien.ac.at (Postfix) with ESMTP id EE59D1378A; Tue, 29 Jul 2003 18:17:33 +0200 (CEST) Date: Tue, 29 Jul 2003 18:17:38 +0200 (CEST) From: Gerald Pfeifer To: Mike Barcroft , freebsd-standards@freebsd.org Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Subject: MFC sys/sys/socket.h, please? X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Jul 2003 16:17:36 -0000 Hi Mike/-standards, may I ask you to MFC (part of) the following patch to sys/sys/socket.h? revision 1.67 date: 2002/10/12 11:39:19; author: mike; state: Exp; lines: +100 -17 o Add typedefs for size_t and ssize_t. o Add typedefs for gid_t, off_t, pid_t, and uid_t in the non-standards case. o Add struct iovec (also defined in ). o Add visibility conditionals to avoid defining non-standard extentions in the standards case. o Change spelling of some types so they work without including (u_char -> unsigned char, u_short -> unsigned short, int64 -> __int64, caddr_t -> char *) o Add comments about missing restrict type-qualifiers and missing function. Without this, the following small program fails to compile on -STABLE: #define _POSIX_SOURCE #include #include with the following warnings/errors: /usr/include/sys/socket.h:52: syntax error before `sa_family_t' /usr/include/sys/socket.h:52: warning: data definition has no type or storage class /usr/include/sys/socket.h:163: syntax error before `u_char' /usr/include/sys/socket.h:174: syntax error before `u_short' /usr/include/sys/socket.h:188: syntax error before `u_char' : Gerald (gerald@FreeBSD.org) -- Gerald "Jerry" pfeifer@dbai.tuwien.ac.at http://www.pfeifer.com/gerald/ From owner-freebsd-standards@FreeBSD.ORG Wed Jul 30 21:52:53 2003 Return-Path: Delivered-To: freebsd-standards@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D54FE37B404; Wed, 30 Jul 2003 21:52:53 -0700 (PDT) Received: from mailman.research.att.com (H-135-207-24-32.research.att.com [135.207.24.32]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9E42243FBD; Wed, 30 Jul 2003 21:52:52 -0700 (PDT) (envelope-from fenner@research.att.com) Received: from unixmail.research.att.com (unixmail.research.att.com [135.207.26.71])h6V4iQ3j006782; Thu, 31 Jul 2003 00:44:26 -0400 Received: from windsor.research.att.com (windsor.research.att.com [135.207.26.46])h6V4qLXs026233; Thu, 31 Jul 2003 00:52:21 -0400 (EDT) From: Bill Fenner Received: (from fenner@localhost) by windsor.research.att.com (8.11.6+Sun/8.8.5) id h6V4qn402047; Wed, 30 Jul 2003 21:52:49 -0700 (PDT) Message-Id: <200307310452.h6V4qn402047@windsor.research.att.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII To: kris@obsecurity.org References: <20030615053705.GA15421@rot13.obsecurity.org> <20030729000206.GA92727@rot13.obsecurity.org> <20030728234338.B94307@espresso.q9media.com> <20030729042506.GA61736@rot13.obsecurity.org> Date: Wed, 30 Jul 2003 21:52:48 -0700 Versions: dmail (solaris) 2.5a/makemail 2.9d cc: standards@freebsd.org Subject: Re: struct timeval X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 Jul 2003 04:52:54 -0000 I think we can do this with old-binary-on-new-kernel compatability, by putting in explicit padding that can be zeroed by the kernel. new-binary-on-old-kernel should also work, since the explicit padding in the struct can put the time_t in the right place. My strawman is something like: struct timeval { #ifdef __sparc64__ uint32_t __pad; #endif time_t tv_sec; #ifdef __alpha__ uint32_t __pad; #endif suseconds_t tv_usec; } and anything that returns a timeval has to #if defined(__sparc64__) || defined(__alpha__) tv->__pad = 0; #endif POSIX 1003.1-2001 says: sys/time.h - time types #include The header shall define the timeval structure that includes at least the following members: time_t tv_sec Seconds. suseconds_t tv_usec Microseconds. so the optional padding is OK and the type of tv_sec is correct. Bill From owner-freebsd-standards@FreeBSD.ORG Thu Jul 31 05:30:13 2003 Return-Path: Delivered-To: freebsd-standards@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0931137B407 for ; Thu, 31 Jul 2003 05:30:13 -0700 (PDT) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0AE9343FE0 for ; Thu, 31 Jul 2003 05:30:07 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.9/8.12.9) with ESMTP id h6VCU6Up035966 for ; Thu, 31 Jul 2003 05:30:06 -0700 (PDT) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.9/8.12.9/Submit) id h6VCU6FX035965; Thu, 31 Jul 2003 05:30:06 -0700 (PDT) Resent-Date: Thu, 31 Jul 2003 05:30:06 -0700 (PDT) Resent-Message-Id: <200307311230.h6VCU6FX035965@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-standards@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Peter Edwards Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9FF4D37B401 for ; Thu, 31 Jul 2003 05:24:18 -0700 (PDT) Received: from sweeper.openet-telecom.com (mail.openet-telecom.com [62.17.151.60]) by mx1.FreeBSD.org (Postfix) with ESMTP id D7E9D43FAF for ; Thu, 31 Jul 2003 05:24:16 -0700 (PDT) (envelope-from petere@openet-telecom.com) Received: from mail.openet-telecom.com (unverified) by sweeper.openet-telecom.com for ; Thu, 31 Jul 2003 13:27:06 +0100 Received: from rocklobster.openet-telecom.lan (10.0.0.40) by mail.openet-telecom.com (NPlex 6.5.027) id 3F268E00000019CC for FreeBSD-gnats-submit@freebsd.org; Thu, 31 Jul 2003 13:22:54 +0100 Received: from rocklobster.openet-telecom.lan (localhost [127.0.0.1]) h6VCJpUB029390 for ; Thu, 31 Jul 2003 13:19:51 +0100 (IST) (envelope-from petere@rocklobster.openet-telecom.lan) Received: (from petere@localhost)h6VCJp3W029389; Thu, 31 Jul 2003 13:19:51 +0100 (IST) Message-Id: <200307311219.h6VCJp3W029389@rocklobster.openet-telecom.lan> Date: Thu, 31 Jul 2003 13:19:51 +0100 (IST) From: Peter Edwards To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: standards/55112: glob.h, glob_t's gl_pathc should be "size_t", not "int". X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Peter Edwards List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 31 Jul 2003 12:30:13 -0000 >Number: 55112 >Category: standards >Synopsis: glob.h, glob_t's gl_pathc should be "size_t", not "int". >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-standards >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Thu Jul 31 05:30:06 PDT 2003 >Closed-Date: >Last-Modified: >Originator: Peter Edwards >Release: FreeBSD 5.1-CURRENT i386 >Organization: >Environment: System: FreeBSD rocklobster 5.1-CURRENT FreeBSD 5.1-CURRENT #8: Wed Jul 9 12:08:31 IST 2003 nfs@archie:/pub/FreeBSD/obj/pub/FreeBSD/current/src/sys/ROCKLOBSTER i386 >Description: SUSv2 and v3 define the gl_pathc field of glob_t to be size_t. FreeBSD disagrees. Worst case scenario is annoying warnings when using glob with C++, so it's not too serious. >How-To-Repeat: Compile a construct such as this... > size_t i; > if (glob(argv[1], 0, 0, &g) == 0) > for (i = 0; i < g.gl_pathc; i++) > printf("%s\n", g.gl_pathv[i]); ... with g++, using -Wall to be warned about comparing signed and unsigned values. Solaris, HP-UX, etc, have gl_pathc as size_t. >Fix: Apart from updating the header file, the following use gl_pathc in the base system: crypto/heimdal/appl/ftp/ftp/cmds.c crypto/heimdal/appl/ftp/ftpd/ftpd.c crypto/heimdal/appl/ftp/ftpd/popen.c crypto/openssh/sftp-int.c libexec/ftpd/ftpd.c sbin/restore/interactive.c usr.bin/login/login_fbtab.c (tcsh uses its own version of glob, and there are several other copies of glob.c lying around, but the only objects that get built seem to be the system one and the csh one.) Of the above files, only interactive.c and login_fbtab.c assign or compare gl_pathc with a typed variable. Neither further expose that type outside their own translation unit, so the changes are all localised. I'll supply a patch on request: I don't fancy doing the donkey work and doing a buildworld/installworld if nothing's going to be committed. >Release-Note: >Audit-Trail: >Unformatted: