Loading...
gen/disklabel.c Libc-997.90.3 Libc-262.3.2
--- Libc/Libc-997.90.3/gen/disklabel.c
+++ Libc/Libc-262.3.2/gen/disklabel.c
@@ -1,7 +1,9 @@
 /*
- * Copyright (c) 1999, 2008 Apple Inc. All rights reserved.
+ * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
  *
  * @APPLE_LICENSE_HEADER_START@
+ * 
+ * Copyright (c) 1999-2003 Apple Computer, Inc.  All Rights Reserved.
  * 
  * This file contains Original Code and/or Modifications of Original Code
  * as defined in and that are subject to the Apple Public Source License
@@ -58,9 +60,8 @@
 #include <sys/time.h>
 #define DKTYPENAMES
 #include <sys/disklabel.h>
-/* from ufs/ffs/fs.h */
-#define BBSIZE		8192
-#define SBSIZE		8192
+#include <ufs/ufs/dinode.h>
+#include <ufs/ffs/fs.h>
 
 #include <errno.h>
 #include <fcntl.h>
@@ -70,16 +71,16 @@
 #include <unistd.h>
 #include <ctype.h>
 
-#ifdef unused
-static int	error(int);
-#endif // unused
-static int	gettype(char *, char **);
+static int	error __P((int));
+static int	gettype __P((char *, char **));
 
 struct disklabel *
-getdiskbyname(const char *name)
+getdiskbyname(name)
+	const char *name;
 {
-	static struct disklabel *dp = NULL;
-	struct partition *pp;
+	static struct	disklabel disk;
+	register struct	disklabel *dp = &disk;
+	register struct partition *pp;
 	char	*buf;
 	char  	*db_array[2] = { _PATH_DISKTAB, 0 };
 	char	*cp, *cq;	/* can't be register */
@@ -90,14 +91,7 @@
 	if (cgetent(&buf, db_array, (char *) name) < 0)
 		return NULL;
 
-	if (dp == NULL) {
-		dp = malloc(sizeof(struct disklabel));
-		if (dp == NULL) {
-			return NULL;
-		}
-	}
-	memset(dp, 0, sizeof(struct disklabel));
-
+	bzero((char *)&disk, sizeof(disk));
 	/*
 	 * typename
 	 */
@@ -198,7 +192,6 @@
 	return (0);
 }
 
-#ifdef unused
 static int
 error(err)
 	int err;
@@ -212,4 +205,3 @@
 	(void)write(STDERR_FILENO, p, strlen(p));
 	(void)write(STDERR_FILENO, "\n", 1);
 }
-#endif // unused