/* Copyright (c) 2011 The Chromium OS Authors. All rights reserved. * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. * * Stub implementations of utility functions which call their linux-specific * equivalents. */ #define _STUB_IMPLEMENTATION_ #include "utility.h" #include #include #include #include #include void error(const char *format, ...) { va_list ap; va_start(ap, format); fprintf(stderr, "ERROR: "); vfprintf(stderr, format, ap); va_end(ap); exit(1); } void debug(const char *format, ...) { va_list ap; va_start(ap, format); fprintf(stderr, "DEBUG: "); vfprintf(stderr, format, ap); va_end(ap); } void* Malloc(size_t size) { void* p = malloc(size); if (!p) { /* Fatal Error. We must abort. */ abort(); } return p; } void Free(void* ptr) { free(ptr); } int Memcmp(const void* src1, const void* src2, size_t n) { return memcmp(src1, src2, n); } void* Memcpy(void* dest, const void* src, uint64_t n) { return memcpy(dest, src, (size_t)n); } uint64_t VbGetTimer(void) { struct timeval tv; gettimeofday(&tv, NULL); return (uint64_t)tv.tv_sec * 1000000 + (uint64_t)tv.tv_usec; } uint64_t VbGetTimerMaxFreq(void) { return UINT64_C(1000000); }