From mi@corbulon.video-collage.com  Tue Nov 19 10:17:42 2002
Return-Path: <mi@corbulon.video-collage.com>
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id E0F7337B404
	for <FreeBSD-gnats-submit@freebsd.org>; Tue, 19 Nov 2002 10:17:42 -0800 (PST)
Received: from corbulon.video-collage.com (corbulon.video-collage.com [64.35.99.179])
	by mx1.FreeBSD.org (Postfix) with ESMTP id E720043E88
	for <FreeBSD-gnats-submit@freebsd.org>; Tue, 19 Nov 2002 10:17:41 -0800 (PST)
	(envelope-from mi@corbulon.video-collage.com)
Received: from corbulon.video-collage.com (localhost.video-collage.com [127.0.0.1])
	by corbulon.video-collage.com (8.12.6/8.12.6) with ESMTP id gAJIHdjJ036074
	(version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO)
	for <FreeBSD-gnats-submit@freebsd.org>; Tue, 19 Nov 2002 13:17:40 -0500 (EST)
	(envelope-from mi@corbulon.video-collage.com)
Received: (from root@localhost)
	by corbulon.video-collage.com (8.12.6/8.12.6/Submit) id gAJIHcv1036071;
	Tue, 19 Nov 2002 13:17:38 -0500 (EST)
	(envelope-from mi)
Message-Id: <200211191817.gAJIHcv1036071@corbulon.video-collage.com>
Date: Tue, 19 Nov 2002 13:17:38 -0500 (EST)
From: Mikhail Teterin <mi@aldan.algebra.com>
Reply-To: Mikhail Teterin <mi@aldan.algebra.com>
To: FreeBSD-gnats-submit@freebsd.org
Subject: sys/ipc.h refers to ushort, which may not be known
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         45488
>Category:       kern
>Synopsis:       sys/ipc.h refers to ushort, which may not be known
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Nov 19 10:20:01 PST 2002
>Closed-Date:    Thu Feb 06 16:15:23 PST 2003
>Last-Modified:  Thu Feb 06 16:15:23 PST 2003
>Originator:     Mikhail Teterin
>Release:        FreeBSD 5.0-CURRENT i386
>Organization:
Virtual Estates, Inc.
>Environment:
System: FreeBSD misha.murex.com 5.0-CURRENT FreeBSD 5.0-CURRENT #3: Wed Oct 30 09:37:57 EST 2002 mteterin@misha.murex.com:/misha/obj/misha/src/sys/Misha-g i386


>Description:

	On -current, ushort is only defined by <sys/types.h> if
	__BSD_VISIBLE is turned on. But sys/ipc.h uses ushort for
	definition of the ipc_perm structure. The most prominent
	thing broken by this is, probably, ImageMagick (on -current).

>How-To-Repeat:
	cd /usr/ports/graphics/ImageMagick
	make
	[...]
	In file included from ../magick/xwindow.h:46,
			 from dps.c:60:
	/usr/include/sys/ipc.h:80: syntax error before "ushort"
	gmake[1]: *** [dps.lo] Error 1
	gmake[1]: Leaving directory `/misha/ports/graphics/ImageMagick/work/ImageMagick-5.5.1/coders'
	gmake: *** [all-recursive] Error 1
	[...]

>Fix:

	The following helps. But the ipc_perm's definition is prepended
	with an XXX claiming most of the types are wrong... May be this
	patch will make them right or, at least, "less wrong". It definetly
	help ImageMagick build.

Index: ipc.h
===================================================================
RCS file: /home/ncvs/src/sys/sys/ipc.h,v
retrieving revision 1.21
diff -U2 -r1.21 ipc.h
--- ipc.h	14 Oct 2002 20:50:41 -0000	1.21
+++ ipc.h	19 Nov 2002 18:14:11 -0000
@@ -78,11 +78,11 @@
  */
 struct ipc_perm {
-	ushort	cuid;	/* creator user id */
-	ushort	cgid;	/* creator group id */
-	ushort	uid;	/* user id */
-	ushort	gid;	/* group id */
-	ushort	mode;	/* r/w permission */
-	ushort	seq;	/* sequence # (to generate unique msg/sem/shm id) */
-	key_t	key;	/* user specified msg/sem/shm key */
+	unsigned short	cuid;	/* creator user id */
+	unsigned short	cgid;	/* creator group id */
+	unsigned short	uid;	/* user id */
+	unsigned short	gid;	/* group id */
+	unsigned short	mode;	/* r/w permission */
+	unsigned short	seq;	/* sequence # (for unique msg/sem/shm ids) */
+	key_t		key;	/* user specified msg/sem/shm key */
 };
 
>Release-Note:
>Audit-Trail:

From: Garrett Wollman <wollman@lcs.mit.edu>
To: Mikhail Teterin <mi@aldan.algebra.com>
Cc: FreeBSD-gnats-submit@FreeBSD.ORG
Subject: bin/45488: sys/ipc.h refers to ushort, which may not be known
Date: Tue, 19 Nov 2002 15:34:07 -0500 (EST)

 <<On Tue, 19 Nov 2002 13:17:38 -0500 (EST), Mikhail Teterin <mi@aldan.algebra.com> said:
 
 > 	The following helps. But the ipc_perm's definition is prepended
 > 	with an XXX claiming most of the types are wrong... May be this
 > 	patch will make them right or, at least, "less wrong". It definetly
 > 	help ImageMagick build.
 
 This change just spells the wrong types correctly.  This interface
 was supposed to get revved to fix the types, but we dropped the ball,
 so it'll have to wait until 6.x.
 
 -GAWollman
 
State-Changed-From-To: open->analyzed 
State-Changed-By: wollman 
State-Changed-When: Wed Dec 18 18:56:12 PST 2002 
State-Changed-Why:  
Fixed in: 
$FreeBSD: src/sys/sys/ipc.h,v 1.22 2002/12/19 02:52:23 wollman Exp $ 

It's up to the RE team whether they want to get this fix into 5.0. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=45488 
State-Changed-From-To: analyzed->closed 
State-Changed-By: mike 
State-Changed-When: Thu Feb 6 16:13:47 PST 2003 
State-Changed-Why:  
5.0-RELEASE has shipped. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=45488 
>Unformatted:
