diff options
author | Kenneth R Westerback <krw@cvs.openbsd.org> | 2016-01-15 16:42:03 +0000 |
---|---|---|
committer | Kenneth R Westerback <krw@cvs.openbsd.org> | 2016-01-15 16:42:03 +0000 |
commit | 4025096a6343f9534935796b8c03b38d7ed2b000 (patch) | |
tree | 2924d0167e1f814e6ada5505e48c1af05696645f /sbin/pdisk | |
parent | f88347846e7a8f9ba5ff8c37ce15575d9f4fff08 (diff) |
Two more for the attic.
Diffstat (limited to 'sbin/pdisk')
-rw-r--r-- | sbin/pdisk/bitfield.c | 103 | ||||
-rw-r--r-- | sbin/pdisk/bitfield.h | 74 |
2 files changed, 0 insertions, 177 deletions
diff --git a/sbin/pdisk/bitfield.c b/sbin/pdisk/bitfield.c deleted file mode 100644 index fa4fdb8b072..00000000000 --- a/sbin/pdisk/bitfield.c +++ /dev/null @@ -1,103 +0,0 @@ -/* $OpenBSD: bitfield.c,v 1.4 2016/01/11 07:54:07 jasper Exp $ */ - -// -// bitfield.c - extract and set bit fields -// -// Written by Eryk Vershen -// -// See comments in bitfield.h -// - -/* - * Copyright 1996, 1997 by Apple Computer, Inc. - * All Rights Reserved - * - * Permission to use, copy, modify, and distribute this software and - * its documentation for any purpose and without fee is hereby granted, - * provided that the above copyright notice appears in all copies and - * that both the copyright notice and this permission notice appear in - * supporting documentation. - * - * APPLE COMPUTER DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE. - * - * IN NO EVENT SHALL APPLE COMPUTER BE LIABLE FOR ANY SPECIAL, INDIRECT, OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN ACTION OF CONTRACT, - * NEGLIGENCE, OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION - * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#include "bitfield.h" - - -// -// Defines -// - - -// -// Types -// - - -// -// Global Constants -// -const unsigned long masks[] = { - 0x00000000, - 0x00000001, 0x00000003, 0x00000007, 0x0000000F, - 0x0000001F, 0x0000003F, 0x0000007F, 0x000000FF, - 0x000001FF, 0x000003FF, 0x000007FF, 0x00000FFF, - 0x00001FFF, 0x00003FFF, 0x00007FFF, 0x0000FFFF, - 0x0001FFFF, 0x0003FFFF, 0x0007FFFF, 0x000FFFFF, - 0x001FFFFF, 0x003FFFFF, 0x007FFFFF, 0x00FFFFFF, - 0x01FFFFFF, 0x03FFFFFF, 0x07FFFFFF, 0x0FFFFFFF, - 0x1FFFFFFF, 0x3FFFFFFF, 0x7FFFFFFF, 0xFFFFFFFF -}; - - -// -// Global Variables -// - - -// -// Forward declarations -// - - -// -// Routines -// -unsigned long -bitfield_set(unsigned long *bf, int base, int length, unsigned long value) -{ - unsigned long t; - unsigned long m; - int s; - - // compute shift & mask, coerce value to correct number of bits, - // zap the old bits and stuff the new value - // return the masked value in case someone wants it. - s = (base + 1) - length; - m = masks[length]; - t = value & m; - *bf = (*bf & ~(m << s)) | (t << s); - return t; -} - - -unsigned long -bitfield_get(unsigned long bf, int base, int length) -{ - unsigned long m; - int s; - - // compute shift & mask - // return the correct number of bits (shifted to low end) - s = (base + 1) - length; - m = masks[length]; - return ((bf >> s) & m); -} diff --git a/sbin/pdisk/bitfield.h b/sbin/pdisk/bitfield.h deleted file mode 100644 index 7f61ddae9dd..00000000000 --- a/sbin/pdisk/bitfield.h +++ /dev/null @@ -1,74 +0,0 @@ -/* $OpenBSD: bitfield.h,v 1.4 2016/01/11 07:54:07 jasper Exp $ */ - -// -// bitfield.h - extract and set bit fields -// -// Written by Eryk Vershen -// -// Bitfields are not particularly transportable between big and little -// endian machines. Big endian machines lay out bitfields starting -// from the most significant bit of the (one, two or four byte) number, -// whereas little endian machines lay out bitfields starting from the -// least signifcant bit. -// -// These routines were written to support some bitfields in a disk -// data structure (partition map) whose original definition was on -// a big-endian machine. -// -// They only work on 32-bit values because I didn't need 16-bit support. -// The bits in the long word are numbered from 0 (least significant) to -// 31 (most significant). -// - -/* - * Copyright 1996,1998 by Apple Computer, Inc. - * All Rights Reserved - * - * Permission to use, copy, modify, and distribute this software and - * its documentation for any purpose and without fee is hereby granted, - * provided that the above copyright notice appears in all copies and - * that both the copyright notice and this permission notice appear in - * supporting documentation. - * - * APPLE COMPUTER DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE. - * - * IN NO EVENT SHALL APPLE COMPUTER BE LIABLE FOR ANY SPECIAL, INDIRECT, OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM - * LOSS OF USE, DATA OR PROFITS, WHETHER IN ACTION OF CONTRACT, - * NEGLIGENCE, OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION - * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - -#ifndef __bitfield__ -#define __bitfield__ - - -// -// Defines -// - - -// -// Types -// - - -// -// Global Constants -// - - -// -// Global Variables -// - - -// -// Forward declarations -// -unsigned long bitfield_set(unsigned long *bf, int base, int length, unsigned long value); -unsigned long bitfield_get(unsigned long bf, int base, int length); - -#endif /* __bitfield__ */ |