/*
- * Copyright (c) 2000-2002 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 2000-2005 Apple Computer, Inc. All rights reserved.
*
- * @APPLE_LICENSE_HEADER_START@
- *
- * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved.
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
*
* This file contains Original Code and/or Modifications of Original Code
* as defined in and that are subject to the Apple Public Source License
* Version 2.0 (the 'License'). You may not use this file except in
- * compliance with the License. Please obtain a copy of the License at
- * http://www.opensource.apple.com/apsl/ and read it before using this
- * file.
+ * compliance with the License. The rights granted to you under the License
+ * may not be used to create, or enable the creation or redistribution of,
+ * unlawful or unlicensed copies of an Apple operating system, or to
+ * circumvent, violate, or enable the circumvention or violation of, any
+ * terms of an Apple operating system software license agreement.
+ *
+ * Please obtain a copy of the License at
+ * http://www.opensource.apple.com/apsl/ and read it before using this file.
*
* The Original Code and all software distributed under the License are
* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
* Please see the License for the specific language governing rights and
* limitations under the License.
*
- * @APPLE_LICENSE_HEADER_END@
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
*/
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/malloc.h>
#include <sys/types.h>
+#include <pexpert/pexpert.h>
+
#include "hfs.h"
#include "hfs_dbg.h"
#include "hfscommon/headers/FileMgrInternal.h"
-
/*
* gTimeZone should only be used for HFS volumes!
* It is initialized when an HFS volume is mounted.
*
* called by the Catalog Manager when creating/updating HFS Plus records
*/
-UInt32 GetTimeUTC(void)
+u_int32_t GetTimeUTC(void)
{
- return (time.tv_sec + MAC_GMT_FACTOR);
+ struct timeval tv;
+
+ microtime(&tv);
+
+ return (tv.tv_sec + MAC_GMT_FACTOR);
}
* LocalToUTC - convert from Mac OS local time to Mac OS GMT time.
* This should only be called for HFS volumes (not for HFS Plus).
*/
-UInt32 LocalToUTC(UInt32 localTime)
+u_int32_t LocalToUTC(u_int32_t localTime)
{
- UInt32 gtime = localTime;
+ u_int32_t gtime = localTime;
if (gtime != 0) {
gtime += (gTimeZone.tz_minuteswest * 60);
* UTCToLocal - convert from Mac OS GMT time to Mac OS local time.
* This should only be called for HFS volumes (not for HFS Plus).
*/
-UInt32 UTCToLocal(UInt32 utcTime)
+u_int32_t UTCToLocal(u_int32_t utcTime)
{
- UInt32 ltime = utcTime;
+ u_int32_t ltime = utcTime;
if (ltime != 0) {
ltime -= (gTimeZone.tz_minuteswest * 60);
* to_bsd_time - convert from Mac OS time (seconds since 1/1/1904)
* to BSD time (seconds since 1/1/1970)
*/
-u_int32_t to_bsd_time(u_int32_t hfs_time)
+time_t to_bsd_time(u_int32_t hfs_time)
{
u_int32_t gmt = hfs_time;
else
gmt = 0; /* don't let date go negative! */
- return gmt;
+ return (time_t)gmt;
}
/*
* to_hfs_time - convert from BSD time (seconds since 1/1/1970)
* to Mac OS time (seconds since 1/1/1904)
*/
-u_int32_t to_hfs_time(u_int32_t bsd_time)
+u_int32_t to_hfs_time(time_t bsd_time)
{
- u_int32_t hfs_time = bsd_time;
+ u_int32_t hfs_time = (u_int32_t)bsd_time;
/* don't adjust zero - treat as uninitialzed */
if (hfs_time != 0)
}
-void DebugStr (ConstStr255Param debuggerMsg)
+void
+DebugStr(
+ const char * debuggerMsg
+ )
{
- kprintf ("*** Mac OS Debugging Message: %s\n", &debuggerMsg[1]);
+ kprintf ("*** Mac OS Debugging Message: %s\n", debuggerMsg);
DEBUG_BREAK;
}