From owner-freebsd-questions@FreeBSD.ORG Thu Dec 23 16:45:00 2004 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C623E16A4CE for ; Thu, 23 Dec 2004 16:45:00 +0000 (GMT) Received: from smtp14.ha-net.ptd.net (smtp14.ha-net.ptd.net [207.44.96.76]) by mx1.FreeBSD.org (Postfix) with ESMTP id 08D2443D39 for ; Thu, 23 Dec 2004 16:45:00 +0000 (GMT) (envelope-from whaynes@ptd.net) Received: (qmail 30555 invoked by uid 50005); 23 Dec 2004 16:44:59 -0000 Received: from whaynes@ptd.net by smtp14.ha-net.ptd.net by uid 50002 with qmail-scanner-1.20 Clear:RC:1(66.152.128.82):. Processed in 2.174207 secs); 23 Dec 2004 16:44:59 -0000 Received: from 66.152.128.82.res-pit.ptd.net (HELO walt) ([66.152.128.82]) (envelope-sender ) by smtp14.ha-net.ptd.net (qmail-ldap-1.03) with SMTP for ; 23 Dec 2004 16:44:56 -0000 Message-ID: <000701c4e90e$b7593fb0$52809842@walt> From: "Walt Haynes" To: "freebsd questions" Date: Thu, 23 Dec 2004 11:44:37 -0500 MIME-Version: 1.0 X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2720.3000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2739.300 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.1 Subject: "max one 'fat' allowed as child of whole" X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Dec 2004 16:45:00 -0000 I found the following as the result of a search for the string "max = one 'fat' allowed" at the following URL: http://www.watson.org/~arr/sri-audit/src/lib/libdisk/rules.c /* * = -------------------------------------------------------------------------= --- * "THE BEER-WARE LICENSE" (Revision 42): * wrote this file. As long as you retain this = notice you * can do whatever you want with this stuff. If we meet some day, and you = think * this stuff is worth it, you can buy me a beer in return. = Poul-Henning Kamp * = -------------------------------------------------------------------------= --- * * $FreeBSD$ * */ #include #include #include #include #include #include #include #include #include "libdisk.h" int Track_Aligned(struct disk *d, u_long offset) { if (!d->bios_sect) return 1; if (offset % d->bios_sect) return 0; return 1; } u_long Prev_Track_Aligned(struct disk *d, u_long offset) { if (!d->bios_sect) return offset; return (offset / d->bios_sect) * d->bios_sect; } u_long Next_Track_Aligned(struct disk *d, u_long offset) { if (!d->bios_sect) return offset; return Prev_Track_Aligned(d,offset + d->bios_sect-1); } int Cyl_Aligned(struct disk *d, u_long offset) { if (!d->bios_sect || !d->bios_hd) return 1; if (offset % (d->bios_sect * d->bios_hd)) return 0; return 1; } u_long Prev_Cyl_Aligned(struct disk *d, u_long offset) { if (!d->bios_sect || !d->bios_hd) return offset; return (offset / (d->bios_sect*d->bios_hd)) * d->bios_sect * d->bios_hd; } u_long Next_Cyl_Aligned(struct disk *d, u_long offset) { if (!d->bios_sect || !d->bios_hd) return offset; return Prev_Cyl_Aligned(d,offset + (d->bios_sect * d->bios_hd)-1); } /* /* * Rule#2: * Max one 'fat' as child of 'whole' */ void Rule_002(struct disk *d, struct chunk *c, char *msg) { int i; struct chunk *c1; if (c->type !=3D whole) return; for (i=3D0, c1=3Dc->part; c1; c1=3Dc1->next) { if (c1->type !=3D fat) continue; i++; } if (i > 1) { sprintf(msg+strlen(msg), "Max one 'fat' allowed as child of 'whole'\n"); } } /* I don't understand what this means; does it imply that you can't have a = multiple operating system with a non-FreeBSD OS ? I have Windows XP = Professional in primary partition 1 of 4 primary partitions on my hard = drive. Partitions 2 and 4 are available to accept FreeBSD but won't = because of that "max one 'fat' allowed as child of whole" message. Is = there a circumvention to this problem ?